diff --git a/app/src/main/java/com/swifttech/remit/android/features/home/view/HomeFragmentV2.java b/app/src/main/java/com/swifttech/remit/android/features/home/view/HomeFragmentV2.java index 461fc983..1f29ace2 100644 --- a/app/src/main/java/com/swifttech/remit/android/features/home/view/HomeFragmentV2.java +++ b/app/src/main/java/com/swifttech/remit/android/features/home/view/HomeFragmentV2.java @@ -260,9 +260,9 @@ public class HomeFragmentV2 extends BaseFragment implements private void showKYCScreen() { if (true) { - KYCV3Activity.startActivity(getActivity(), false, "", ""); - } else { ExistingKYCV3Activity.startActivity(getActivity(), false, "", ""); + } else { + KYCV3Activity.startActivity(getActivity(), false, "", ""); } } diff --git a/app/src/main/java/com/swifttech/remit/android/features/kyc/existingCustomer/gateway/ExistingExistingKYCV3Gateway.java b/app/src/main/java/com/swifttech/remit/android/features/kyc/existingCustomer/gateway/ExistingExistingKYCV3Gateway.java index 60460dca..edb182e0 100644 --- a/app/src/main/java/com/swifttech/remit/android/features/kyc/existingCustomer/gateway/ExistingExistingKYCV3Gateway.java +++ b/app/src/main/java/com/swifttech/remit/android/features/kyc/existingCustomer/gateway/ExistingExistingKYCV3Gateway.java @@ -82,7 +82,7 @@ public class ExistingExistingKYCV3Gateway extends PrivilegedGateway implements E sideIdImageFile = requestBody.getPictures().getSideIdImageFile(); } - return HttpClientV2.getInstance().uploadExistingtomerKYCV3(auth, map, + return HttpClientV2.getInstance().submitExistingCustomerKYC(auth, map, createImageUploadFieldFromFile("idFront", frontIdImageFile), createImageUploadFieldFromFile("idBack", backIdImageFile), createImageUploadFieldFromFile("idSide", sideIdImageFile) diff --git a/app/src/main/java/com/swifttech/remit/android/features/kyc/existingCustomer/presenter/ExistingKYCV3PresenterInterface.java b/app/src/main/java/com/swifttech/remit/android/features/kyc/existingCustomer/presenter/ExistingKYCV3PresenterInterface.java index 43c66395..3fbb1455 100644 --- a/app/src/main/java/com/swifttech/remit/android/features/kyc/existingCustomer/presenter/ExistingKYCV3PresenterInterface.java +++ b/app/src/main/java/com/swifttech/remit/android/features/kyc/existingCustomer/presenter/ExistingKYCV3PresenterInterface.java @@ -21,6 +21,7 @@ public interface ExistingKYCV3PresenterInterface extends BasePresenterInterface void getKycRelatedData(); + List getSourceOfFundList(); List getMonthlyIncomeList(); List getBusinessTypeList(); diff --git a/app/src/main/java/com/swifttech/remit/android/features/kyc/existingCustomer/presenter/ExistingKYCV3ViewModel.java b/app/src/main/java/com/swifttech/remit/android/features/kyc/existingCustomer/presenter/ExistingKYCV3ViewModel.java index 00f47d39..fc43836e 100644 --- a/app/src/main/java/com/swifttech/remit/android/features/kyc/existingCustomer/presenter/ExistingKYCV3ViewModel.java +++ b/app/src/main/java/com/swifttech/remit/android/features/kyc/existingCustomer/presenter/ExistingKYCV3ViewModel.java @@ -403,7 +403,7 @@ public class ExistingKYCV3ViewModel extends BaseViewModel implements ExistingKYC ); compositeDisposable.add( - this.gateway.getKycRelatedData(gateway.getBasicAuth(view.getContext()), gateway.getUserID(), "kyc") + this.gateway.getKycRelatedData(gateway.getBasicAuth(view.getContext()), gateway.getUserID(), "kycExistingCustomer") .doOnSubscribe(sub -> view.showProgressBar(true, "")) .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()) @@ -487,14 +487,14 @@ public class ExistingKYCV3ViewModel extends BaseViewModel implements ExistingKYC @Override protected void onSuccess(GenericResponseDataModel t) { if (t.getErrorCode().equalsIgnoreCase(Constants.SUCCESS_CODE_V2)) { - /* onReceivingKycRelatedData(t.getData()); + onReceivingKycRelatedData(t.getData()); view.lazyLoadForms(); if (t.getData().areAnyPicturesAvailableFromServer()) - view.showDocumentDetailForm();*/ - onReceivingKycRelatedData(gateway.getMockedData()); + view.showDocumentDetailForm(); + /* onReceivingKycRelatedData(gateway.getMockedData()); view.lazyLoadForms(); if (true) - view.showDocumentDetailForm(); + view.showDocumentDetailForm();*/ } else{ onReceivingKycRelatedData(gateway.getMockedData()); @@ -660,6 +660,7 @@ public class ExistingKYCV3ViewModel extends BaseViewModel implements ExistingKYC existingKycRelatedDataDTO.getPersonalInformation().setEmployeerName(data != null ? data.toString() : null); if (existingKycRelatedDataDTO.getPersonalInformation().isEmployerNameValid()) { + customerDetailLiveData.getEmployerNameLiveData().setValue(new FormInputStateDTO<>(true, null, null)); return true; } else { customerDetailLiveData.getEmployerNameLiveData().setValue(new FormInputStateDTO<>(false, "Invalid Employer Name", null)); @@ -723,7 +724,7 @@ public class ExistingKYCV3ViewModel extends BaseViewModel implements ExistingKYC protected void onSuccess(GenericResponseDataModel t) { if (t.getErrorCode().equalsIgnoreCase(Constants.SUCCESS_CODE_V2)) { - if (formSubmissionType.equalsIgnoreCase("2")) { + if (formSubmissionType.equalsIgnoreCase("1")) { //Sender ID may be changed after kyc submission success so need to update locally and refresh auth token if ((userId != null && userId.length() > 0) && userPwd != null && userPwd.length() > 0) getNewAccessToken(task); diff --git a/app/src/main/java/com/swifttech/remit/android/features/kyc/existingCustomer/view/ExistingKYCV3Activity.java b/app/src/main/java/com/swifttech/remit/android/features/kyc/existingCustomer/view/ExistingKYCV3Activity.java index 57012d09..b615dba1 100644 --- a/app/src/main/java/com/swifttech/remit/android/features/kyc/existingCustomer/view/ExistingKYCV3Activity.java +++ b/app/src/main/java/com/swifttech/remit/android/features/kyc/existingCustomer/view/ExistingKYCV3Activity.java @@ -19,6 +19,7 @@ import com.swifttech.remit.android.base.BaseActivity; import com.swifttech.remit.android.common.customwidgets.GenericViewPagerAdapter; import com.swifttech.remit.android.common.customwidgets.GmeTextView; import com.swifttech.remit.android.features.customersupport.view.CustomerSupportFragment; +import com.swifttech.remit.android.features.home.view.HomeActivityV2; import com.swifttech.remit.android.features.kyc.existingCustomer.ExistingKYCV3ViewModelFactory; import com.swifttech.remit.android.features.kyc.existingCustomer.presenter.ExistingKYCV3PresenterInterface; import com.swifttech.remit.android.features.kyc.existingCustomer.presenter.ExistingKYCV3ViewModel; @@ -37,7 +38,8 @@ public class ExistingKYCV3Activity extends BaseActivity implements ExistingKYCV3 private static final String SHOULD_REDIRECT_TO_PENNY_TEST_BUNDLE_KEY = "SHOULD_REDIRECT_TO_PENNY_TEST_BUNDLE_KEY"; private static final String USER_ID_BUNDLE_KEY = "USER_ID_BUNDLE_KEY"; private static final String USER_PWD_BUNDLE_KEY = "USER_PWD_BUNDLE_KEY"; - public static final int KYC_FORM_REQUEST_CODE = 4211; + public static final int KYC_EXISTING_FORM_REQUEST_CODE = 4212; + @BindView(R.id.kycFormViewPager) ViewPager kycFormViewPager; @@ -64,7 +66,7 @@ public class ExistingKYCV3Activity extends BaseActivity implements ExistingKYCV3 intent.putExtra(SHOULD_REDIRECT_TO_PENNY_TEST_BUNDLE_KEY, shouldRedirectToPennyTestScreen); intent.putExtra(USER_ID_BUNDLE_KEY, userId); intent.putExtra(USER_PWD_BUNDLE_KEY, userPwd); - context.startActivityForResult(intent, KYC_FORM_REQUEST_CODE); + context.startActivityForResult(intent, KYC_EXISTING_FORM_REQUEST_CODE); } public static void startActivity(Activity context, boolean shouldRedirectToPennyTestScreen,String userId,String userPwd) { @@ -210,7 +212,6 @@ public class ExistingKYCV3Activity extends BaseActivity implements ExistingKYCV3 return existingCustomerDetailFragment; } - @Override public void onKYCFormSubmittedSuccessfully() { Intent returnIntent = new Intent(); diff --git a/app/src/main/java/com/swifttech/remit/android/features/registerv2/existingcustomer/presenter/ExistingCustomerRegisterV2Presenter.java b/app/src/main/java/com/swifttech/remit/android/features/registerv2/existingcustomer/presenter/ExistingCustomerRegisterV2Presenter.java index 2d70d5e7..473de10f 100644 --- a/app/src/main/java/com/swifttech/remit/android/features/registerv2/existingcustomer/presenter/ExistingCustomerRegisterV2Presenter.java +++ b/app/src/main/java/com/swifttech/remit/android/features/registerv2/existingcustomer/presenter/ExistingCustomerRegisterV2Presenter.java @@ -188,6 +188,11 @@ public class ExistingCustomerRegisterV2Presenter extends BaseViewModel implement registerUser(); } + @Override + public void setSessionEnabled() { + loginGateway.setSession("HOME"); + } + private void bindSubmitView(ExistingCustomerRegistrationSubmitLiveData.ExistingCustomerRegistrationSubmitViewBindings viewBindings) { this.submitViewEventCompositeDisposable.add( @@ -419,20 +424,21 @@ public class ExistingCustomerRegisterV2Presenter extends BaseViewModel implement public void onComplete() { remitAuthManager.turnOfBiometric(true); view.showPopUpMessage(registrationSuccessMessage, CustomAlertDialog.AlertType.SUCCESS, alertType -> { - view.redirectToDashboard(); + setSessionEnabled(); + view.redirectToTermsAndConditionScreen(); }); } @Override public void onError(Throwable e) { view.showPopUpMessage(registrationSuccessMessage, CustomAlertDialog.AlertType.SUCCESS, alertType -> { - view.redirectToDashboard(); + view.redirectToTermsAndConditionScreen(); }); } }); } else view.showPopUpMessage(registrationSuccessMessage, CustomAlertDialog.AlertType.SUCCESS, alertType -> { - view.redirectToDashboard(); + view.redirectToTermsAndConditionScreen(); }); diff --git a/app/src/main/java/com/swifttech/remit/android/features/registerv2/existingcustomer/presenter/ExistingCustomerRegisterV2PresenterInterface.java b/app/src/main/java/com/swifttech/remit/android/features/registerv2/existingcustomer/presenter/ExistingCustomerRegisterV2PresenterInterface.java index d7abedd1..393a4732 100644 --- a/app/src/main/java/com/swifttech/remit/android/features/registerv2/existingcustomer/presenter/ExistingCustomerRegisterV2PresenterInterface.java +++ b/app/src/main/java/com/swifttech/remit/android/features/registerv2/existingcustomer/presenter/ExistingCustomerRegisterV2PresenterInterface.java @@ -13,6 +13,7 @@ public interface ExistingCustomerRegisterV2PresenterInterface extends BasePresen void requestForRegistration(); void proceedToRegistration(); + void setSessionEnabled(); String getLastRegisteredUserId(); diff --git a/app/src/main/java/com/swifttech/remit/android/features/registerv2/existingcustomer/view/ExistingCustomerRegisterV2Activity.java b/app/src/main/java/com/swifttech/remit/android/features/registerv2/existingcustomer/view/ExistingCustomerRegisterV2Activity.java index 5f9670cd..aaf18a0e 100644 --- a/app/src/main/java/com/swifttech/remit/android/features/registerv2/existingcustomer/view/ExistingCustomerRegisterV2Activity.java +++ b/app/src/main/java/com/swifttech/remit/android/features/registerv2/existingcustomer/view/ExistingCustomerRegisterV2Activity.java @@ -3,6 +3,7 @@ package com.swifttech.remit.android.features.registerv2.existingcustomer.view; import android.content.Intent; import android.os.Bundle; +import androidx.annotation.Nullable; import androidx.fragment.app.Fragment; import androidx.fragment.app.FragmentManager; import androidx.lifecycle.ViewModelProvider; @@ -17,6 +18,7 @@ import com.swifttech.remit.android.features.kyc.newCustomer.view.KYCV3Activity; import com.swifttech.remit.android.features.registerv2.existingcustomer.ExistingCustomerRegisterViewModelFactory; import com.swifttech.remit.android.features.registerv2.existingcustomer.presenter.ExistingCustomerRegisterV2Presenter; import com.swifttech.remit.android.features.registerv2.existingcustomer.presenter.ExistingCustomerRegisterV2PresenterInterface; +import com.swifttech.remit.android.features.termsandcondition.view.TermsAndConditionAcitivity; import java.util.ArrayList; @@ -24,6 +26,9 @@ import butterknife.BindView; import butterknife.ButterKnife; import butterknife.OnClick; +import static com.swifttech.remit.android.features.kyc.existingCustomer.view.ExistingKYCV3Activity.KYC_EXISTING_FORM_REQUEST_CODE; +import static com.swifttech.remit.android.features.kyc.newCustomer.view.KYCV3Activity.KYC_FORM_REQUEST_CODE; + public class ExistingCustomerRegisterV2Activity extends BaseActivity implements ExistingCustomerRegisterV2PresenterInterface.ExistingRegisterV2ContractInterface { @@ -86,6 +91,25 @@ public class ExistingCustomerRegisterV2Activity extends BaseActivity implements private void performDefaultAction(Bundle savedInstanceState) { } + @Override + protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) { + super.onActivityResult(requestCode, resultCode, data); + if (requestCode == TermsAndConditionAcitivity.REQUEST_TO_AGREE_TO_TERMS_AND_CONDITION) { + if (resultCode == RESULT_OK) { + String userId = presenter.getLastRegisteredUserId(); + String userPwd = presenter.getLastRegisteredUserPwd(); + KYCV3Activity.startActivityForResult(this, false, userId, userPwd); + } else if (resultCode == RESULT_CANCELED) + redirectToSplash(); + } else if (requestCode == KYC_EXISTING_FORM_REQUEST_CODE) { + if (resultCode == RESULT_OK) + redirectToDashboard(); + else + redirectToSplash(); + + } + } + @OnClick(R.id.iv_back) public void onBackButtonPressed() @@ -110,6 +134,7 @@ public class ExistingCustomerRegisterV2Activity extends BaseActivity implements viewPager.setCurrentItem(1); } + @Override public void redirectToDashboard() { Intent redirectIntent = new Intent(this, HomeActivityV2.class); diff --git a/app/src/main/java/com/swifttech/remit/android/features/registerv2/newcustomer/view/NewRegisterV2Activity.java b/app/src/main/java/com/swifttech/remit/android/features/registerv2/newcustomer/view/NewRegisterV2Activity.java index 03d7b600..162bf890 100644 --- a/app/src/main/java/com/swifttech/remit/android/features/registerv2/newcustomer/view/NewRegisterV2Activity.java +++ b/app/src/main/java/com/swifttech/remit/android/features/registerv2/newcustomer/view/NewRegisterV2Activity.java @@ -306,6 +306,7 @@ public class NewRegisterV2Activity extends BaseActivity implements NewRegisterV2 String userId = presenter.getLastRegisteredUserId(); String userPwd = presenter.getLastRegisteredUserPwd(); KYCV3Activity.startActivityForResult(this, false, userId, userPwd); + } } diff --git a/app/src/main/java/com/swifttech/remit/android/utils/https/API_URL.java b/app/src/main/java/com/swifttech/remit/android/utils/https/API_URL.java index a2855fea..1221dda9 100644 --- a/app/src/main/java/com/swifttech/remit/android/utils/https/API_URL.java +++ b/app/src/main/java/com/swifttech/remit/android/utils/https/API_URL.java @@ -78,6 +78,7 @@ public class API_URL { public static final String INBOUND_ACC_DELETE = BuildConfig.API_VERSION + "/inbound/mobile/deleteInboundAccount/{userId}/{account}"; public static final String VALIDATE_DOCUMENT_ID = "v3/validation"; public static final String UPLOAD_KYC_V3 = "v1/mobile/RegisterKyc"; + public static final String UPLOAD_EXISTING_KYC_V3 = "v1/mobile/RegisterKycExistingCustomer"; public static final String KYC_RELATED_DATA_V3 = "v4/mobile/loadform/{customer}/{type}"; public static final String FETCH_AUTO_DEBIT_DATA_V4 ="v4/GetKftcParameters/{userId}"; diff --git a/app/src/main/java/com/swifttech/remit/android/utils/https/ApiEndpoints.java b/app/src/main/java/com/swifttech/remit/android/utils/https/ApiEndpoints.java index 8f1fd69d..06bef3b5 100644 --- a/app/src/main/java/com/swifttech/remit/android/utils/https/ApiEndpoints.java +++ b/app/src/main/java/com/swifttech/remit/android/utils/https/ApiEndpoints.java @@ -211,8 +211,8 @@ public interface ApiEndpoints { @Part MultipartBody.Part additionalIdImageFile); @Multipart - @POST(API_URL.UPLOAD_KYC_V3) - Observable uploadExistingtomerKYCV3(@Header("Authorization") String token, + @POST(API_URL.UPLOAD_EXISTING_KYC_V3) + Observable submitExistingCustomerKYC(@Header("Authorization") String token, @PartMap() Map partMap, @Part MultipartBody.Part frontIdImageFile, @Part MultipartBody.Part backIdImageFile,