diff --git a/app/src/main/java/com/gmeremit/online/gmeremittance_native/kycV3/presenter/KYCV3PresenterInterface.java b/app/src/main/java/com/gmeremit/online/gmeremittance_native/kycV3/presenter/KYCV3PresenterInterface.java index ccfa4541..19139c81 100644 --- a/app/src/main/java/com/gmeremit/online/gmeremittance_native/kycV3/presenter/KYCV3PresenterInterface.java +++ b/app/src/main/java/com/gmeremit/online/gmeremittance_native/kycV3/presenter/KYCV3PresenterInterface.java @@ -33,6 +33,8 @@ public interface KYCV3PresenterInterface extends BasePresenterInterface { LiveData getAlternateImageLiveData(); LiveData getAlternateIdIssueDateRequireLiveData(); LiveData getAlternateIdExpiryDateRequireLiveData(); + LiveData getIsCustomerKoreanLiveData(); + LiveData getPennyTestMessageLiveData(); diff --git a/app/src/main/java/com/gmeremit/online/gmeremittance_native/kycV3/presenter/KYCV3ViewModel.java b/app/src/main/java/com/gmeremit/online/gmeremittance_native/kycV3/presenter/KYCV3ViewModel.java index ef922093..0d3a6cf0 100644 --- a/app/src/main/java/com/gmeremit/online/gmeremittance_native/kycV3/presenter/KYCV3ViewModel.java +++ b/app/src/main/java/com/gmeremit/online/gmeremittance_native/kycV3/presenter/KYCV3ViewModel.java @@ -76,6 +76,7 @@ public class KYCV3ViewModel extends BaseViewModel implements KYCV3PresenterInter private MutableLiveData anotherIdExpDateLiveData; private MutableLiveData anotherIdIssuedDateLiveData; + private MutableLiveData customerKoreanLiveData; private final CompositeDisposable compositeDisposable; @@ -124,6 +125,7 @@ public class KYCV3ViewModel extends BaseViewModel implements KYCV3PresenterInter anotherIdPictureLabeliveData = new MutableLiveData<>(); anotherIdExpDateLiveData = new MutableLiveData<>(); anotherIdIssuedDateLiveData = new MutableLiveData<>(); + customerKoreanLiveData = new MutableLiveData<>(); this.penntestReferenceSubmissionLiveData = new MutableLiveData<>(); this.penntestReferenceErrorMessageLiveData = new MutableLiveData<>(); @@ -170,6 +172,9 @@ public class KYCV3ViewModel extends BaseViewModel implements KYCV3PresenterInter })); this.customerDetailViewSubscriptions.add(this.view.getCustomerDetailViewContract().getForm2ViewBindings().getReferralCodeChangeEvent().subscribe(val -> validator.validateReferralCode(val))); + customerKoreanLiveData.setValue(true); + + new Handler().postDelayed(()->customerKoreanLiveData.setValue(false),5000); } @@ -408,6 +413,11 @@ public class KYCV3ViewModel extends BaseViewModel implements KYCV3PresenterInter return alternateIDExpiryDateVisibilityLiveData; } + @Override + public LiveData getIsCustomerKoreanLiveData() { + return customerKoreanLiveData; + } + @Override public LiveData getPennyTestMessageLiveData() { return pennyTestMessageLiveData; diff --git a/app/src/main/java/com/gmeremit/online/gmeremittance_native/kycV3/view/personal/CustomerDetailFragment.java b/app/src/main/java/com/gmeremit/online/gmeremittance_native/kycV3/view/personal/CustomerDetailFragment.java index 0e2353dd..c760ca7d 100644 --- a/app/src/main/java/com/gmeremit/online/gmeremittance_native/kycV3/view/personal/CustomerDetailFragment.java +++ b/app/src/main/java/com/gmeremit/online/gmeremittance_native/kycV3/view/personal/CustomerDetailFragment.java @@ -62,7 +62,6 @@ import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; import java.util.Locale; -import java.util.concurrent.TimeUnit; import butterknife.BindView; import butterknife.ButterKnife; @@ -76,6 +75,7 @@ import io.reactivex.schedulers.Schedulers; import io.reactivex.subjects.PublishSubject; import static android.app.Activity.RESULT_OK; +import static android.view.View.GONE; public class CustomerDetailFragment extends BaseFragment implements KYCV3PresenterInterface.KYCV3ViewContractInterface.KYCV3CustomerDetailViewContractInterface { @@ -152,6 +152,9 @@ public class CustomerDetailFragment extends BaseFragment implements KYCV3Present @BindView(R.id.primaryAccountWrapper) TextInputLayout primaryAccountWrapper; + @BindView(R.id.txt_passport_label) + TextView txt_passport_label; + @BindView(R.id.ed_passportId) EditText ed_passportId; @BindView(R.id.passportIdWrapper) @@ -160,13 +163,24 @@ public class CustomerDetailFragment extends BaseFragment implements KYCV3Present @BindView(R.id.ed_passportIdIssueDate) EditText ed_passportIdIssueDate; @BindView(R.id.passportIdIssueDateWrapper) - TextInputLayout passportIdIssueDateContainer; + TextInputLayout passportIdIssueDateWrapper; + @BindView(R.id.passportIdIssueDateContainer) + View passportIdIssueDateContainer; @BindView(R.id.ed_passportIdExpiryDate) EditText ed_passportIdExpiryDate; @BindView(R.id.passportIdExpiryDateWrapper) TextInputLayout passportIdExpiryDateWrapper; + @BindView(R.id.passportIdExpiryDateContainer) + View passportIdExpiryDateContainer; + + + + @BindView(R.id.txt_another_id_label) + TextView txt_another_id_label; + @BindView(R.id.txt_another_id_clear) + TextView txt_another_id_clear; @BindView(R.id.ed_idType) EditText ed_idType; @@ -206,9 +220,13 @@ public class CustomerDetailFragment extends BaseFragment implements KYCV3Present @BindView(R.id.iv_passport_id) ImageView iv_passport_id; + @BindView(R.id.passportImageViewContainer) + View passportImageViewContainer; @BindView(R.id.iv_alternate_id) ImageView iv_alternate_id; + @BindView(R.id.alternateIDImageViewContainer) + View alternateIDImageViewContainer; @BindView(R.id.anotherIdPictureLabel) @@ -262,8 +280,8 @@ public class CustomerDetailFragment extends BaseFragment implements KYCV3Present } private void performDefaultAction(Bundle savedInstance) { - form2.setVisibility(View.GONE); - form3.setVisibility(View.GONE); + form2.setVisibility(GONE); + form3.setVisibility(GONE); KYCV3ViewModel kycv3ViewModel = ViewModelProviders.of(getActivity()).get(KYCV3ViewModel.class); @@ -315,7 +333,7 @@ public class CustomerDetailFragment extends BaseFragment implements KYCV3Present if (val.getPrimaryInformation() != null) { //Hide Form 1 Button and Show Form 2 - btnSubmit1.setVisibility(View.GONE); + btnSubmit1.setVisibility(GONE); form2.setVisibility(View.VISIBLE); IDTextDTO selectedPrimaryBank = val.getSelectedBankFromBankId(val.getPrimaryInformation().getBankId()); @@ -363,7 +381,7 @@ public class CustomerDetailFragment extends BaseFragment implements KYCV3Present //Hide Form 2 Button and Show Form 3 - btnSubmit2.setVisibility(View.GONE); + btnSubmit2.setVisibility(GONE); form3.setVisibility(View.VISIBLE); Glide.with(iv_passport_id.getContext()) @@ -421,14 +439,14 @@ public class CustomerDetailFragment extends BaseFragment implements KYCV3Present if (action) anotherIdIssueDateContainer.setVisibility(View.VISIBLE); else - anotherIdIssueDateContainer.setVisibility(View.GONE); + anotherIdIssueDateContainer.setVisibility(GONE); }); kycv3ViewModel.getAlternateIdExpiryDateRequireLiveData().observe(getViewLifecycleOwner(), action -> { if (action) anotherIdExpiryDateContainer.setVisibility(View.VISIBLE); else - anotherIdExpiryDateContainer.setVisibility(View.GONE); + anotherIdExpiryDateContainer.setVisibility(GONE); }); @@ -462,6 +480,33 @@ public class CustomerDetailFragment extends BaseFragment implements KYCV3Present } }); + kycv3ViewModel.getIsCustomerKoreanLiveData().observe(getViewLifecycleOwner(), action -> { + if (action) { + txt_passport_label.setVisibility(GONE); + passportIdWrapper.setVisibility(GONE); + passportIdExpiryDateContainer.setVisibility(GONE); + passportIdIssueDateContainer.setVisibility(GONE); + passportImageViewContainer.setVisibility(GONE); + + txt_another_id_clear.setVisibility(View.GONE); + txt_another_id_label.setText("ID Type"); + } + else + { + txt_passport_label.setVisibility(View.VISIBLE); + passportIdWrapper.setVisibility(View.VISIBLE); + passportIdExpiryDateContainer.setVisibility(View.VISIBLE); + passportIdIssueDateContainer.setVisibility(View.VISIBLE); + passportImageViewContainer.setVisibility(View.VISIBLE); + + txt_another_id_clear.setVisibility(View.VISIBLE); + txt_another_id_label.setText("Another Id Information(Optional)"); + + } + }); + + + } @@ -476,7 +521,7 @@ public class CustomerDetailFragment extends BaseFragment implements KYCV3Present kycv3ViewModel.getCustomerDetailRelatedFormErrorLiveData().getBankNameErrorLiveData().observe(getViewLifecycleOwner(), error -> primaryBankListWrapper.setError(error)); kycv3ViewModel.getCustomerDetailRelatedFormErrorLiveData().getBankAccounNoErrorLiveData().observe(getViewLifecycleOwner(), error -> primaryAccountWrapper.setError(error)); kycv3ViewModel.getCustomerDetailRelatedFormErrorLiveData().getPassportNoErrorLiveData().observe(getViewLifecycleOwner(), error -> passportIdWrapper.setError(error)); - kycv3ViewModel.getCustomerDetailRelatedFormErrorLiveData().getPassportIssuedDateErrorLiveData().observe(getViewLifecycleOwner(), error -> passportIdIssueDateContainer.setError(error)); + kycv3ViewModel.getCustomerDetailRelatedFormErrorLiveData().getPassportIssuedDateErrorLiveData().observe(getViewLifecycleOwner(), error -> passportIdIssueDateWrapper.setError(error)); kycv3ViewModel.getCustomerDetailRelatedFormErrorLiveData().getPassportExpiryDateErrorLiveData().observe(getViewLifecycleOwner(), error -> passportIdExpiryDateWrapper.setError(error)); kycv3ViewModel.getCustomerDetailRelatedFormErrorLiveData().getAnotherIdTypeErrorLiveData().observe(getViewLifecycleOwner(), error -> ed_anotherId.setError(error)); kycv3ViewModel.getCustomerDetailRelatedFormErrorLiveData().getAnotherIdNumberErrorLiveData().observe(getViewLifecycleOwner(), error -> anotherIdWrapper.setError(error)); @@ -899,7 +944,7 @@ public class CustomerDetailFragment extends BaseFragment implements KYCV3Present @Override public void showForm2() { TransitionManager.beginDelayedTransition(rootView, new AutoTransition()); - btnSubmit1.setVisibility(View.GONE); + btnSubmit1.setVisibility(GONE); form2.setVisibility(View.VISIBLE); scrollView.postDelayed(() -> { ObjectAnimator.ofInt(scrollView, "scrollY", form2.getTop()).setDuration(600).start(); @@ -909,7 +954,7 @@ public class CustomerDetailFragment extends BaseFragment implements KYCV3Present @Override public void showForm3() { TransitionManager.beginDelayedTransition(rootView, new AutoTransition()); - btnSubmit2.setVisibility(View.GONE); + btnSubmit2.setVisibility(GONE); form3.setVisibility(View.VISIBLE); scrollView.postDelayed(() -> { ObjectAnimator.ofInt(scrollView, "scrollY", form3.getTop()).setDuration(600).start(); diff --git a/app/src/main/res/layout/fragment_kyc_customer_detail.xml b/app/src/main/res/layout/fragment_kyc_customer_detail.xml index 43d7b7d9..f956e74f 100644 --- a/app/src/main/res/layout/fragment_kyc_customer_detail.xml +++ b/app/src/main/res/layout/fragment_kyc_customer_detail.xml @@ -343,6 +343,7 @@