Browse Source

add send otp feature to receiver edit module

new_design
Mukesh Dhungana 3 years ago
parent
commit
0561b41322
  1. 13
      app/src/main/java/com/remit/jmecustomer/features/recipientmanagement/presenter/recipientaddeditV3/RecipientAddEditBaseV3ViewModel.java
  2. 15
      app/src/main/java/com/remit/jmecustomer/features/recipientmanagement/presenter/recipientaddeditV3/edit/RecipientEditV3ViewModel.java
  3. 12
      app/src/main/java/com/remit/jmecustomer/features/recipientmanagement/view/recipientaddeditV3/BeneficiaryAddEditV3TermsFragment.java
  4. 1
      app/src/main/java/com/remit/jmecustomer/utils/Constants.java

13
app/src/main/java/com/remit/jmecustomer/features/recipientmanagement/presenter/recipientaddeditV3/RecipientAddEditBaseV3ViewModel.java

@ -29,6 +29,7 @@ import io.reactivex.android.schedulers.AndroidSchedulers;
import io.reactivex.disposables.CompositeDisposable;
import io.reactivex.schedulers.Schedulers;
import static com.remit.jmecustomer.utils.Constants.REQUEST_FOR_REC_EDIT_VALUE;
import static com.remit.jmecustomer.utils.Constants.REQUEST_FOR_REC_VALUE;
@ -40,6 +41,7 @@ public abstract class RecipientAddEditBaseV3ViewModel extends BaseViewModel impl
protected String receiverId = null;
protected SendMoneyRequiredDataV3 sendMoneyRequiredDataV3;
protected CompositeDisposable compositeDisposable;
protected String requestFor = REQUEST_FOR_REC_VALUE;
public RecipientAddEditBaseV3ViewModel(
@ -59,7 +61,10 @@ public abstract class RecipientAddEditBaseV3ViewModel extends BaseViewModel impl
receiverInfoV3Model.getNativeCountryCode());
onNativeCountryServiceSelected(nativeCountry);
}
if (receiverInfoV3Model != null && receiverInfoV3Model.getReceiverId() != null) {
this.receiverId = receiverInfoV3Model.getReceiverId();
this.requestFor = REQUEST_FOR_REC_EDIT_VALUE;
}
}
@Override
@ -324,7 +329,7 @@ public abstract class RecipientAddEditBaseV3ViewModel extends BaseViewModel impl
validator.getGateway().getBasicAuth(view.getContext()),
validator.getGateway().getUserID(),
OTP,
Constants.REQUEST_FOR_REC_VALUE,
requestFor,
receiverId)
.doOnSubscribe(subs -> view.showProgressBar(true, ""))
.subscribeOn(Schedulers.io())
@ -340,7 +345,7 @@ public abstract class RecipientAddEditBaseV3ViewModel extends BaseViewModel impl
validator.getGateway().getBasicAuth(view.getContext()),
validator.getGateway().getUserID(),
"",
REQUEST_FOR_REC_VALUE,
requestFor,
receiverId)
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
@ -360,7 +365,7 @@ public abstract class RecipientAddEditBaseV3ViewModel extends BaseViewModel impl
return true;
} else {
if (!TextUtils.isEmpty(view.getRecipientAddEditV3ContractInterface().getPayoutCountryView().getText()) &&
!TextUtils.isEmpty(view.getRecipientAddEditV3ContractInterface().getSelectedServiceView().getText())
!TextUtils.isEmpty(view.getRecipientAddEditV3ContractInterface().getSelectedServiceView().getText())
) {
validator.validateFieldsExplicitly1();
} else {

15
app/src/main/java/com/remit/jmecustomer/features/recipientmanagement/presenter/recipientaddeditV3/edit/RecipientEditV3ViewModel.java

@ -120,11 +120,14 @@ public class RecipientEditV3ViewModel extends RecipientAddEditBaseV3ViewModel {
public void onSubmitBtnPressed() {
if (validator.requiresAccountValidation())
performAccountValidation(validator.getRecipientDetail().getAgent().getAccountNo());
else
updateRecipientInfo();
else {
requestForOtp();
//updateRecipientInfo();
}
}
private void updateRecipientInfo() {
public void updateRecipientInfo() {
if (validator.getRecipientDetail().getMobile() != null && validator.getRecipientDetail().getMobile().length() > 0) {
validator.clearMobileNumberPrefixAndUpdate();
@ -161,6 +164,7 @@ public class RecipientEditV3ViewModel extends RecipientAddEditBaseV3ViewModel {
.subscribeWith(new CountryServiceObserver())
);
}
@Override
public void getDynamicValidationAndDropDownList(String countryId, String serviceType) {
compositeDisposable.add(
@ -435,18 +439,19 @@ public class RecipientEditV3ViewModel extends RecipientAddEditBaseV3ViewModel {
successMessage = t.getMsg() + " \n " + getStringfromStringId(R.string.recipient_add_success_message_text).replace("xxx", getReceiverName(t.getData()));
receiverId = t.getData().getReceiverId();
sendMoneyRequiredDataV3 = new SendMoneyRequiredDataV3(t.getData());
if(sendMoneyRequiredDataV3.getRecipientInfoModel().getHasVerifiedOTP()){
if (sendMoneyRequiredDataV3.getRecipientInfoModel().getHasVerifiedOTP()) {
view.getRecipientAddEditV3ContractInterface().promptToSendMoney(new GenericPromptDialog.GenericDialogPromptListener() {
@Override
public void onNegativeBtnPressed() {
view.onEditSuccess(receiverId);
}
@Override
public void onPositiveBtnPressed() {
view.getRecipientAddEditV3ContractInterface().redirectToSendMoney(sendMoneyRequiredDataV3);
}
}, successMessage);
}else{
} else {
view.showTermsAndConditionScreen();
}

12
app/src/main/java/com/remit/jmecustomer/features/recipientmanagement/view/recipientaddeditV3/BeneficiaryAddEditV3TermsFragment.java

@ -25,6 +25,7 @@ import static com.remit.jmecustomer.utils.Constants.JME_BENEFICIARY_TERMS;
public class BeneficiaryAddEditV3TermsFragment extends WebBrowserFragmentV2 implements RecipientAddV3ContractInterface.RecipientTermsAndConditionsContract, GenericEditTextPromptDialog.GenericEditTextPromptListener {
private RecipientAddEditBaseV3ViewModel viewModel;
private RecipientEditV3ViewModel editViewModel;
private ReceiverInfoV3Model recipientToBeEdited;
private static String TAG = BeneficiaryAddEditV3TermsFragment.class.getSimpleName();
private String currentLoadedUrl = "";
@ -60,12 +61,13 @@ public class BeneficiaryAddEditV3TermsFragment extends WebBrowserFragmentV2 impl
if (recipientToBeEdited != null) {
RecipientEditV3ViewModelFactory recipientEditViewModelFactory = new RecipientEditV3ViewModelFactory((RecipientAddV3ContractInterface) getActivity(), recipientToBeEdited);
viewModel = new ViewModelProvider(requireActivity(), recipientEditViewModelFactory).get(RecipientEditV3ViewModel.class);
editViewModel = new ViewModelProvider(requireActivity(), recipientEditViewModelFactory).get(RecipientEditV3ViewModel.class);
} else {
RecipientAddV3ViewModelFactory recipientAddViewModelFactory = new RecipientAddV3ViewModelFactory((RecipientAddV3ContractInterface) getActivity(), recipientToBeEdited);
viewModel = new ViewModelProvider(requireActivity(), recipientAddViewModelFactory).get(RecipientAddV3ViewModel.class);
}
showAcceptOption(true);
WebRequestModel webRequestModel = new WebRequestModel("",JME_BENEFICIARY_TERMS, null);
WebRequestModel webRequestModel = new WebRequestModel("", JME_BENEFICIARY_TERMS, null);
setWebRequestData(webRequestModel);
loadWebView();
@ -83,7 +85,11 @@ public class BeneficiaryAddEditV3TermsFragment extends WebBrowserFragmentV2 impl
@Override
public void onEmailVerifySuccess() {
viewModel.proceedToAddSuccess();
if (recipientToBeEdited != null) {
editViewModel.updateRecipientInfo();
} else
viewModel.proceedToAddSuccess();
}
@Override
@ -93,6 +99,6 @@ public class BeneficiaryAddEditV3TermsFragment extends WebBrowserFragmentV2 impl
@Override
public void onEmailCodePositiveBtnPressed(String emailCode) {
viewModel.verifyEmailCode(emailCode);
viewModel.verifyEmailCode(emailCode);
}
}

1
app/src/main/java/com/remit/jmecustomer/utils/Constants.java

@ -64,6 +64,7 @@ public class Constants {
public static String REQUEST_FOR_KEY="requestFor";
public static String REQUEST_FOR_REG_VALUE="REGISTER";
public static String REQUEST_FOR_REC_VALUE="RECEIVER";
public static String REQUEST_FOR_REC_EDIT_VALUE="RECEIVER_EDIT";
public static String RECEIVER_ID_KEY="receiverId";
public static String CANCEL="Cancel";
public static String PAID="Paid";

Loading…
Cancel
Save