Browse Source

Balance Transfer fixes

new_design
Preyea Regmi 4 years ago
parent
commit
1c653b7ab3
  1. 32
      app/src/main/AndroidManifest.xml
  2. 13
      app/src/main/java/com/swifttech/remit/android/features/balancerequest/gateway/BalanceRequestGateway.java
  3. 31
      app/src/main/java/com/swifttech/remit/android/features/balancerequest/model/BalanceRequestDTO.java
  4. 5
      app/src/main/java/com/swifttech/remit/android/features/balancerequest/presenter/BalanceRequestGatewayInterface.java
  5. 65
      app/src/main/java/com/swifttech/remit/android/features/balancerequest/presenter/BalanceRequestPresenter.java
  6. 25
      app/src/main/java/com/swifttech/remit/android/features/balancesend/gateway/BalanceSendGateway.java
  7. 60
      app/src/main/java/com/swifttech/remit/android/features/balancesend/model/BalanceSendConfirmDTO.java
  8. 7
      app/src/main/java/com/swifttech/remit/android/features/balancesend/presenter/BalanceSendGatewayInterface.java
  9. 112
      app/src/main/java/com/swifttech/remit/android/features/balancesend/presenter/BalanceSendPresenter.java
  10. 1
      app/src/main/java/com/swifttech/remit/android/features/balancesend/presenter/BalanceSendPresenterInterface.java
  11. 14
      app/src/main/java/com/swifttech/remit/android/features/balancesend/view/BalanceSendVerificationFragment.java
  12. 16
      app/src/main/java/com/swifttech/remit/android/features/balancesend/view/BalanceSendVerificationLiveData.java
  13. 3
      app/src/main/java/com/swifttech/remit/android/utils/https/API_URL.java
  14. 13
      app/src/main/java/com/swifttech/remit/android/utils/https/ApiEndpoints.java
  15. 1
      app/src/main/res/layout/fragment_balance_request_amount_prompt.xml
  16. 6
      app/src/main/res/layout/fragment_balance_request_qr_view.xml
  17. 54
      app/src/main/res/layout/fragment_balance_send_verification.xml

32
app/src/main/AndroidManifest.xml

@ -46,16 +46,16 @@
android:screenOrientation="portrait"
android:theme="@style/AppTheme.NoActionBar"
android:windowSoftInputMode="stateAlwaysHidden">
<!-- <intent-filter>-->
<!-- <action android:name="HOME" />-->
<intent-filter>
<action android:name="HOME" />
<!-- <category android:name="android.intent.category.DEFAULT" />-->
<!-- </intent-filter>-->
<!-- <intent-filter>-->
<!-- <action android:name="android.intent.action.MAIN" />-->
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<!-- <category android:name="android.intent.category.LAUNCHER" />-->
<!-- </intent-filter>-->
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name="com.swifttech.remit.android.features.termsandcondition.view.TermsAndConditionAcitivity"
@ -68,16 +68,16 @@
android:screenOrientation="portrait"
android:theme="@style/AppTheme.NoActionBar"
android:windowSoftInputMode="stateAlwaysHidden">
<intent-filter>
<action android:name="HOME" />
<!-- <intent-filter>-->
<!-- <action android:name="HOME" />-->
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<!-- <category android:name="android.intent.category.DEFAULT" />-->
<!-- </intent-filter>-->
<!-- <intent-filter>-->
<!-- <action android:name="android.intent.action.MAIN" />-->
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<!-- <category android:name="android.intent.category.LAUNCHER" />-->
<!-- </intent-filter>-->
</activity>

13
app/src/main/java/com/swifttech/remit/android/features/balancerequest/gateway/BalanceRequestGateway.java

@ -1,7 +1,20 @@
package com.swifttech.remit.android.features.balancerequest.gateway;
import com.google.gson.JsonObject;
import com.swifttech.remit.android.base.PrivilegedGateway;
import com.swifttech.remit.android.features.balancerequest.presenter.BalanceRequestGatewayInterface;
import com.swifttech.remit.android.utils.https.HttpClientV2;
import io.reactivex.Observable;
import okhttp3.ResponseBody;
public class BalanceRequestGateway extends PrivilegedGateway implements BalanceRequestGatewayInterface {
@Override
public Observable<ResponseBody> initBalanceTransferRequest(String auth, String userId, String amount) {
JsonObject jsonObject=new JsonObject();
jsonObject.addProperty("amount",amount);
jsonObject.addProperty("userId",userId);
return HttpClientV2.getInstance().initBalanceRequest(auth,jsonObject);
}
}

31
app/src/main/java/com/swifttech/remit/android/features/balancerequest/model/BalanceRequestDTO.java

@ -0,0 +1,31 @@
package com.swifttech.remit.android.features.balancerequest.model;
import com.google.gson.annotations.Expose;
import com.google.gson.annotations.SerializedName;
public class BalanceRequestDTO {
@Expose
@SerializedName("checksum")
private String checkSum;
@Expose
@SerializedName("reqData")
private String reqData;
public String getCheckSum() {
return checkSum;
}
public void setCheckSum(String checkSum) {
this.checkSum = checkSum;
}
public String getReqData() {
return reqData;
}
public void setReqData(String reqData) {
this.reqData = reqData;
}
}

5
app/src/main/java/com/swifttech/remit/android/features/balancerequest/presenter/BalanceRequestGatewayInterface.java

@ -2,5 +2,10 @@ package com.swifttech.remit.android.features.balancerequest.presenter;
import com.swifttech.remit.android.base.PrivilegedGatewayInterface;
import io.reactivex.Observable;
import okhttp3.ResponseBody;
public interface BalanceRequestGatewayInterface extends PrivilegedGatewayInterface {
Observable<ResponseBody> initBalanceTransferRequest(String auth,String userId,String amount);
}

65
app/src/main/java/com/swifttech/remit/android/features/balancerequest/presenter/BalanceRequestPresenter.java

@ -5,13 +5,23 @@ import android.graphics.Bitmap;
import androidx.lifecycle.LiveData;
import androidx.lifecycle.MutableLiveData;
import com.google.gson.reflect.TypeToken;
import com.google.zxing.WriterException;
import com.swifttech.remit.android.base.BaseViewModel;
import com.swifttech.remit.android.common.customwidgets.CustomAlertDialog;
import com.swifttech.remit.android.features.balancerequest.model.BalanceRequestDTO;
import com.swifttech.remit.android.utils.Constants;
import com.swifttech.remit.android.utils.Utils;
import com.swifttech.remit.android.utils.https.GenericApiObserverResponseV2;
import com.swifttech.remit.android.utils.https.GenericResponseDataModel;
import java.lang.reflect.Type;
import io.reactivex.Observable;
import io.reactivex.android.schedulers.AndroidSchedulers;
import io.reactivex.disposables.CompositeDisposable;
import io.reactivex.observers.DisposableObserver;
import io.reactivex.schedulers.Schedulers;
public class BalanceRequestPresenter extends BaseViewModel implements BalanceRequestPresenterInterface {
@ -80,16 +90,65 @@ public class BalanceRequestPresenter extends BaseViewModel implements BalanceReq
@Override
public void proceedToGenerateBalanceRequestQR() {
generateQR();
useCaseSubs.add(
this.gateway.initBalanceTransferRequest(gateway.getAuth(), gateway.getUserID(), this.requestedAmount.toString())
.doOnSubscribe(subs -> view.showProgressBar(true, ""))
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.doFinally(() -> view.showProgressBar(false, ""))
.subscribeWith(new RequestBalanceObserver())
);
}
private void generateQR() {
private void generateQR(String data) {
try {
generatedQrLiveData.setValue(Utils.createQr("Hello", 250, 250));
generatedQrLiveData.setValue(Utils.createQr(data, 500, 500));
view.showQRView();
} catch (WriterException e) {
view.showToastMessage("Unable to generate QR");
}
}
public class RequestBalanceObserver extends GenericApiObserverResponseV2<BalanceRequestDTO> {
@Override
protected Type getDataType() {
return TypeToken.getParameterized(BalanceRequestDTO.class).getType();
}
@Override
protected void onSuccess(GenericResponseDataModel<BalanceRequestDTO> t) {
if (Constants.SUCCESS_CODE_V2.equalsIgnoreCase(t.getErrorCode())) {
generateQR(t.getData().getReqData());
} else {
showDummyResponse();
// view.showPopUpMessage(t.getMsg(), CustomAlertDialog.AlertType.FAILED, null);
}
}
@Override
public void onFailed(String message) {
showDummyResponse();
// view.showPopUpMessage(message, CustomAlertDialog.AlertType.FAILED, null);
}
@Override
protected void onConnectionNotEstablished(String message) {
showDummyResponse();
// view.showPopUpMessage(message, CustomAlertDialog.AlertType.FAILED, null);
}
@Override
protected void unauthorizedAccess(String message) {
gateway.clearAllUserData();
view.showPopUpMessage(message, CustomAlertDialog.AlertType.ALERT, alertType -> view.logout());
}
private void showDummyResponse()
{
generateQR("Hello");
}
}
}

25
app/src/main/java/com/swifttech/remit/android/features/balancesend/gateway/BalanceSendGateway.java

@ -1,7 +1,32 @@
package com.swifttech.remit.android.features.balancesend.gateway;
import com.google.gson.JsonObject;
import com.swifttech.remit.android.base.PrivilegedGateway;
import com.swifttech.remit.android.features.balancesend.presenter.BalanceSendGatewayInterface;
import com.swifttech.remit.android.utils.https.HttpClientV2;
import io.reactivex.Observable;
import okhttp3.ResponseBody;
public class BalanceSendGateway extends PrivilegedGateway implements BalanceSendGatewayInterface {
@Override
public Observable<ResponseBody> confirmBalanceSend(String auth, String userId, String reqData) {
JsonObject jsonObject=new JsonObject();
jsonObject.addProperty("userId",userId);
jsonObject.addProperty("reqData",reqData);
return HttpClientV2.getInstance().balanceSendConfirm(auth,jsonObject);
}
@Override
public Observable<ResponseBody> performBalanceSend(String auth, String userId, String reqUserId, String confirmedAmount, String referenceId, String txnPin) {
JsonObject jsonObject=new JsonObject();
jsonObject.addProperty("userId",userId);
jsonObject.addProperty("reqUserID",userId);
jsonObject.addProperty("confirmedAmount",confirmedAmount);
jsonObject.addProperty("referenceID",referenceId);
jsonObject.addProperty("txnPin",txnPin);
return HttpClientV2.getInstance().balanceSendProceed(auth,jsonObject);
}
}

60
app/src/main/java/com/swifttech/remit/android/features/balancesend/model/BalanceSendConfirmDTO.java

@ -0,0 +1,60 @@
package com.swifttech.remit.android.features.balancesend.model;
import com.google.gson.annotations.Expose;
import com.google.gson.annotations.SerializedName;
public class BalanceSendConfirmDTO {
@Expose
@SerializedName("reqAmount")
private String reqAmount;
@Expose
@SerializedName("reqUserName")
private String reqUserName;
@Expose
@SerializedName("reqUserId")
private String reqUserId;
@Expose
@SerializedName("referenceID")
private String referenceID;
public BalanceSendConfirmDTO(String reqAmount, String reqUserName, String reqUserId, String referenceID) {
this.reqAmount = reqAmount;
this.reqUserName = reqUserName;
this.reqUserId = reqUserId;
this.referenceID = referenceID;
}
public String getReqAmount() {
return reqAmount;
}
public void setReqAmount(String reqAmount) {
this.reqAmount = reqAmount;
}
public String getReqUserName() {
return reqUserName;
}
public void setReqUserName(String reqUserName) {
this.reqUserName = reqUserName;
}
public String getReqUserId() {
return reqUserId;
}
public void setReqUserId(String reqUserId) {
this.reqUserId = reqUserId;
}
public String getReferenceID() {
return referenceID;
}
public void setReferenceID(String referenceID) {
this.referenceID = referenceID;
}
}

7
app/src/main/java/com/swifttech/remit/android/features/balancesend/presenter/BalanceSendGatewayInterface.java

@ -2,5 +2,12 @@ package com.swifttech.remit.android.features.balancesend.presenter;
import com.swifttech.remit.android.base.PrivilegedGatewayInterface;
import io.reactivex.Observable;
import okhttp3.ResponseBody;
public interface BalanceSendGatewayInterface extends PrivilegedGatewayInterface {
Observable<ResponseBody> confirmBalanceSend(String auth,String userId,String reqData);
Observable<ResponseBody> performBalanceSend(String auth,String userId,String reqUserId,String confirmedAmount,String referenceId,String txnPin);
}

112
app/src/main/java/com/swifttech/remit/android/features/balancesend/presenter/BalanceSendPresenter.java

@ -5,14 +5,22 @@ import androidx.lifecycle.MutableLiveData;
import com.google.android.gms.vision.barcode.Barcode;
import com.swifttech.remit.android.base.BaseViewModel;
import com.swifttech.remit.android.common.customwidgets.CustomAlertDialog;
import com.swifttech.remit.android.features.balancesend.model.BalanceSendConfirmDTO;
import com.swifttech.remit.android.features.balancesend.view.BalanceSendVerificationLiveData;
import com.swifttech.remit.android.utils.Constants;
import com.swifttech.remit.android.utils.https.GenericApiObserverResponseV2;
import com.swifttech.remit.android.utils.https.GenericResponseDataModel;
import com.swifttech.remit.android.utils.https.MessageResponseDataModel;
import java.util.concurrent.TimeUnit;
import io.reactivex.Observable;
import io.reactivex.ObservableSource;
import io.reactivex.android.schedulers.AndroidSchedulers;
import io.reactivex.disposables.CompositeDisposable;
import io.reactivex.observers.DisposableObserver;
import io.reactivex.schedulers.Schedulers;
public class BalanceSendPresenter extends BaseViewModel implements BalanceSendPresenterInterface {
@ -23,8 +31,11 @@ public class BalanceSendPresenter extends BaseViewModel implements BalanceSendPr
private final CompositeDisposable useCaseSubs;
private final BalanceSendVerificationLiveData balanceSendVerificationLiveData;
private String reqAmount = "1000";
private String confirmedAmount;
private Barcode scannedQR;
private BalanceSendConfirmDTO balanceConfirmData;
public BalanceSendPresenter(BalanceSendContractInterface view, BalanceSendGatewayInterface balanceSendGateway) {
this.view = view;
@ -48,11 +59,11 @@ public class BalanceSendPresenter extends BaseViewModel implements BalanceSendPr
@Override
public void subscribeToQRScanEvent(Observable<Barcode> qrText) {
viewSubs.add(qrText.throttleLatest(2,TimeUnit.SECONDS).map(this::validateScannedQr).subscribeWith(new DisposableObserver<Boolean>() {
viewSubs.add(qrText.throttleLatest(2, TimeUnit.SECONDS).map(this::validateScannedQr).subscribeWith(new DisposableObserver<Boolean>() {
@Override
public void onNext(Boolean aBoolean) {
//TODO
view.showVerificationScreen();
if (aBoolean)
confirmBalanceSend();
}
@Override
@ -69,8 +80,8 @@ public class BalanceSendPresenter extends BaseViewModel implements BalanceSendPr
}
private boolean validateScannedQr(Barcode barcode) {
this.scannedQR = barcode;
return true;
}
@ -98,7 +109,25 @@ public class BalanceSendPresenter extends BaseViewModel implements BalanceSendPr
@Override
public void proceedToTransferBalance() {
useCaseSubs.add(
this.gateway.performBalanceSend(gateway.getAuth(), gateway.getUserID(), "", confirmedAmount, "123", "1234")
.doOnSubscribe(subs -> view.showProgressBar(true, ""))
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.doFinally(() -> view.showProgressBar(false, ""))
.subscribeWith(new BalanceSendProceedObserver())
);
}
private void confirmBalanceSend() {
useCaseSubs.add(
this.gateway.confirmBalanceSend(gateway.getAuth(), gateway.getUserID(), scannedQR.displayValue)
.doOnSubscribe(subs -> view.showProgressBar(true, ""))
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.doFinally(() -> view.showProgressBar(false, ""))
.subscribeWith(new BalanceSendConfirmObserver())
);
}
private boolean validateConfirmedAmount(CharSequence confirmedAmount) {
@ -110,4 +139,79 @@ public class BalanceSendPresenter extends BaseViewModel implements BalanceSendPr
return false;
}
}
public class BalanceSendConfirmObserver extends GenericApiObserverResponseV2<BalanceSendConfirmDTO> {
@Override
protected void onSuccess(GenericResponseDataModel<BalanceSendConfirmDTO> t) {
if (Constants.SUCCESS_CODE_V2.equalsIgnoreCase(t.getErrorCode())) {
balanceConfirmData=t.getData();
balanceSendVerificationLiveData.setBalanceSendConfirmLiveData(t.getData());
view.showVerificationScreen();
} else {
showDummyResponse();
// view.showPopUpMessage(t.getMsg(), CustomAlertDialog.AlertType.FAILED, null);
}
}
@Override
public void onFailed(String message) {
showDummyResponse();
// view.showPopUpMessage(message, CustomAlertDialog.AlertType.FAILED, null);
}
@Override
protected void onConnectionNotEstablished(String message) {
showDummyResponse();
// view.showPopUpMessage(message, CustomAlertDialog.AlertType.FAILED, null);
}
@Override
protected void unauthorizedAccess(String message) {
gateway.clearAllUserData();
view.showPopUpMessage(message, CustomAlertDialog.AlertType.ALERT, alertType -> view.logout());
}
private void showDummyResponse() {
BalanceSendConfirmDTO dummData = new BalanceSendConfirmDTO("1000", "Dummy User", "1234", "1234");
balanceConfirmData=dummData;
balanceSendVerificationLiveData.setBalanceSendConfirmLiveData(dummData);
//TODO
view.showVerificationScreen();
}
}
public class BalanceSendProceedObserver extends GenericApiObserverResponseV2<MessageResponseDataModel> {
@Override
protected void onSuccess(GenericResponseDataModel<MessageResponseDataModel> t) {
if (Constants.SUCCESS_CODE_V2.equalsIgnoreCase(t.getErrorCode())) {
view.showPopUpMessage(t.getMsg(), CustomAlertDialog.AlertType.FAILED, alertType -> view.exitView());
} else {
view.showPopUpMessage(t.getMsg(), CustomAlertDialog.AlertType.FAILED, null);
}
}
@Override
public void onFailed(String message) {
view.showPopUpMessage(message, CustomAlertDialog.AlertType.FAILED, null);
}
@Override
protected void onConnectionNotEstablished(String message) {
view.showPopUpMessage(message, CustomAlertDialog.AlertType.FAILED, null);
}
@Override
protected void unauthorizedAccess(String message) {
gateway.clearAllUserData();
view.showPopUpMessage(message, CustomAlertDialog.AlertType.ALERT, alertType -> view.logout());
}
}
}

1
app/src/main/java/com/swifttech/remit/android/features/balancesend/presenter/BalanceSendPresenterInterface.java

@ -5,6 +5,7 @@ import androidx.lifecycle.LiveData;
import com.google.android.gms.vision.barcode.Barcode;
import com.swifttech.remit.android.base.BaseContractInterface;
import com.swifttech.remit.android.base.BasePresenterInterface;
import com.swifttech.remit.android.features.balancesend.model.BalanceSendConfirmDTO;
import com.swifttech.remit.android.features.balancesend.view.BalanceSendVerificationLiveData;
import com.zoyi.channel.plugin.android.contract.BasePresenter;

14
app/src/main/java/com/swifttech/remit/android/features/balancesend/view/BalanceSendVerificationFragment.java

@ -6,6 +6,7 @@ import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import androidx.annotation.Nullable;
import androidx.lifecycle.ViewModelProvider;
@ -13,6 +14,7 @@ import androidx.lifecycle.ViewModelProvider;
import com.jakewharton.rxbinding3.widget.RxTextView;
import com.swifttech.remit.android.R;
import com.swifttech.remit.android.base.BaseFragment;
import com.swifttech.remit.android.features.balancesend.model.BalanceSendConfirmDTO;
import com.swifttech.remit.android.features.balancesend.presenter.BalanceSendPresenter;
import com.swifttech.remit.android.features.balancesend.presenter.BalanceSendPresenterInterface;
@ -25,6 +27,12 @@ public class BalanceSendVerificationFragment extends BaseFragment {
private BalanceSendPresenterInterface viewModel;
@BindView(R.id.txt_firstName)
TextView txt_firstName;
@BindView(R.id.txt_req_amount)
TextView txt_req_amount;
@BindView(R.id.amount_edTxt)
EditText amount_edTxt;
@ -53,9 +61,15 @@ public class BalanceSendVerificationFragment extends BaseFragment {
private void performDefaultAction(Bundle savedInstanceState) {
BalanceSendVerificationLiveData balanceSendVerificationLiveData= viewModel.subscribeConfirmedAmountValid(RxTextView.textChanges(amount_edTxt));
balanceSendVerificationLiveData.getAllFormValidLiveData().observe(getViewLifecycleOwner(),btn_submit::setEnabled);
balanceSendVerificationLiveData.getBalanceSendConfirmLiveData().observe(getViewLifecycleOwner(),this::onBalanceVerificationDataReceived);
}
private void onBalanceVerificationDataReceived(BalanceSendConfirmDTO balanceSendConfirmDTO) {
txt_firstName.setText(balanceSendConfirmDTO.getReqUserName());
txt_req_amount.setText(balanceSendConfirmDTO.getReqAmount());
}
@Override

16
app/src/main/java/com/swifttech/remit/android/features/balancesend/view/BalanceSendVerificationLiveData.java

@ -1,24 +1,28 @@
package com.swifttech.remit.android.features.balancesend.view;
import androidx.lifecycle.LiveData;
import androidx.lifecycle.MutableLiveData;
import com.swifttech.remit.android.common.model.FormInputStateDTO;
import com.swifttech.remit.android.features.balancesend.model.BalanceSendConfirmDTO;
public class BalanceSendVerificationLiveData {
private MutableLiveData<FormInputStateDTO<String>> amountInputLiveData;
private MutableLiveData<BalanceSendConfirmDTO> balanceSendConfirmLiveData;
private MutableLiveData<Boolean> allFormValidLiveData;
public BalanceSendVerificationLiveData() {
this.amountInputLiveData = new MutableLiveData<>();
this.allFormValidLiveData = new MutableLiveData<>();
this.balanceSendConfirmLiveData = new MutableLiveData<>();
}
public MutableLiveData<FormInputStateDTO<String>> getAmountInputLiveData() {
public LiveData<FormInputStateDTO<String>> getAmountInputLiveData() {
return amountInputLiveData;
}
public MutableLiveData<Boolean> getAllFormValidLiveData() {
public LiveData<Boolean> getAllFormValidLiveData() {
return allFormValidLiveData;
}
@ -30,4 +34,12 @@ public class BalanceSendVerificationLiveData {
{
this.allFormValidLiveData.setValue(result);
}
public LiveData<BalanceSendConfirmDTO> getBalanceSendConfirmLiveData() {
return balanceSendConfirmLiveData;
}
public void setBalanceSendConfirmLiveData(BalanceSendConfirmDTO balanceSendConfirmLiveData) {
this.balanceSendConfirmLiveData.setValue(balanceSendConfirmLiveData);
}
}

3
app/src/main/java/com/swifttech/remit/android/utils/https/API_URL.java

@ -92,5 +92,8 @@ public class API_URL {
public static final String PROFILE_OTP_VERIFY =BuildConfig.API_VERSION +"/mobile/ValidationOTP";
public static final String PROFILE_PERSONAL_INFO =BuildConfig.API_VERSION +"/mobile/ProfilepersonalInformation";
public static final String UPDATE_PROFILE =BuildConfig.API_VERSION +"/mobile/ChangeInformation";
public static final String BALANCE_REQ_INIT = BuildConfig.API_VERSION +"initBalanaceTransfer ";
public static final String BALANCE_SEND_CONFIRM = BuildConfig.API_VERSION +"confirmBalanceTransferRequest";
public static final String BALANCE_SEND_PERFORM = BuildConfig.API_VERSION +"performBalanceTransferRequest";
}

13
app/src/main/java/com/swifttech/remit/android/utils/https/ApiEndpoints.java

@ -231,6 +231,19 @@ public interface ApiEndpoints {
Observable<ResponseBody> profileOTPResend(@Header("Authorization") String token, @Body()JsonObject requestBody);
@POST(API_URL.BALANCE_REQ_INIT)
@Headers("Content-Type: application/json")
Observable<ResponseBody> initBalanceRequest(@Header("Authorization") String token, @Body()JsonObject requestBody);
@POST(API_URL.BALANCE_SEND_CONFIRM)
@Headers("Content-Type: application/json")
Observable<ResponseBody> balanceSendConfirm(@Header("Authorization") String token, @Body()JsonObject requestBody);
@POST(API_URL.BALANCE_REQ_INIT)
@Headers("Content-Type: application/json")
Observable<ResponseBody> balanceSendProceed(@Header("Authorization") String token, @Body()JsonObject requestBody);
}

1
app/src/main/res/layout/fragment_balance_request_amount_prompt.xml

@ -24,6 +24,7 @@
<com.swifttech.remit.android.common.view.MTextInputEditText
android:inputType="number"
android:id="@+id/amount_edTxt"
android:imeOptions="actionDone"
style="@style/MTextInputEditText"/>
</com.swifttech.remit.android.common.view.MTextInputLayout>

6
app/src/main/res/layout/fragment_balance_request_qr_view.xml

@ -10,12 +10,12 @@
<ImageView
android:id="@+id/qrImageView"
android:layout_width="@dimen/_150sdp"
android:layout_height="@dimen/_150sdp"
android:layout_width="@dimen/_250sdp"
android:layout_height="@dimen/_250sdp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.18" />
app:layout_constraintVertical_bias="0.19" />
</androidx.constraintlayout.widget.ConstraintLayout>

54
app/src/main/res/layout/fragment_balance_send_verification.xml

@ -53,12 +53,12 @@
android:layout_height="wrap_content"
android:gravity="start"
android:paddingTop="@dimen/_8sdp"
android:text="@string/address_text"
android:text="Requested Amount"
android:textColor="@color/dark_gray"
android:textSize="@dimen/_11ssp" />
<com.swifttech.remit.android.common.customwidgets.GmeTextView
android:id="@+id/txt_address"
android:id="@+id/txt_req_amount"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
@ -68,55 +68,6 @@
app:txtfontName="@string/semibold" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<com.swifttech.remit.android.common.customwidgets.GmeTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="start"
android:paddingTop="@dimen/_8sdp"
android:text="@string/country_text"
android:textColor="@color/dark_gray"
android:textSize="@dimen/_11ssp" />
<com.swifttech.remit.android.common.customwidgets.GmeTextView
android:id="@+id/txt_country"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="end"
android:textColor="@color/black"
android:textSize="@dimen/_11ssp"
app:txtfontName="@string/semibold" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<com.swifttech.remit.android.common.customwidgets.GmeTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="start"
android:paddingTop="@dimen/_8sdp"
android:text="@string/mobile_text"
android:textColor="@color/dark_gray"
android:textSize="@dimen/_11ssp" />
<com.swifttech.remit.android.common.customwidgets.GmeTextView
android:id="@+id/txt_mobile"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="end"
android:textColor="@color/black"
android:textSize="@dimen/_11ssp"
app:txtfontName="@string/semibold" />
</LinearLayout>
<com.swifttech.remit.android.common.customwidgets.GmeTextView
android:layout_marginTop="@dimen/form_initial_input_margin_top"
@ -132,6 +83,7 @@
<com.swifttech.remit.android.common.view.MTextInputEditText
android:id="@+id/amount_edTxt"
style="@style/MTextInputEditText"
android:imeOptions="actionDone"
android:inputType="number" />
</com.swifttech.remit.android.common.view.MTextInputLayout>

Loading…
Cancel
Save