From df77832363450bcd3a989c6b64aea75e49e20c28 Mon Sep 17 00:00:00 2001 From: Preyea Regmi Date: Tue, 2 Oct 2018 23:19:13 +0545 Subject: [PATCH] KYC notice updated --- .../homeV2/presenter/HomeV2Presenter.java | 19 +++++++--- .../presenter/HomeV2PresenterInterface.java | 2 ++ .../homeV2/view/HomeFragmentV2.java | 35 +++++++++++++++---- .../kycV2/presenter/KYCV2Presenter.java | 2 +- .../presenter/KYCV2PresenterInterface.java | 2 ++ .../kycV2/view/KYCFormV2Activity.java | 12 +++++++ app/src/main/res/layout/fragment_home_v2.xml | 2 +- 7 files changed, 62 insertions(+), 12 deletions(-) diff --git a/app/src/main/java/com/gmeremit/online/gmeremittance_native/homeV2/presenter/HomeV2Presenter.java b/app/src/main/java/com/gmeremit/online/gmeremittance_native/homeV2/presenter/HomeV2Presenter.java index cdc3dc4f..07c2232a 100644 --- a/app/src/main/java/com/gmeremit/online/gmeremittance_native/homeV2/presenter/HomeV2Presenter.java +++ b/app/src/main/java/com/gmeremit/online/gmeremittance_native/homeV2/presenter/HomeV2Presenter.java @@ -57,6 +57,13 @@ public class HomeV2Presenter extends BasePresenter implements HomeV2PresenterInt this.gateway.clearAllUserData(); } + @Override + public void manuallyUpdateKYCForStatusToSubmitted() { + String message="Your registration request is in approval process. You will soon be able to use GME services."; + String title="Verification in Process"; + view.showKYCVerifiedIfRequired(true,message,title,true); + } + private Observable getDataFromServerAndCacheIt() { return this.gateway.getUserRelatedData(this.gateway.getAuth(),this.gateway.getUserID()).flatMap(userInfoV2DataApiResponse -> { if (userInfoV2DataApiResponse.getErrorCode().equalsIgnoreCase(Constants.SUCCESS_CODE_V2)) @@ -86,19 +93,23 @@ public class HomeV2Presenter extends BasePresenter implements HomeV2PresenterInt String message=""; String title=""; +// userInfoModelV2.setKyc(false); +// userInfoModelV2.setVerified(false); + boolean disableKYCViewClick=userInfoModelV2.getKyc()&&!userInfoModelV2.getVerified(); boolean shouldShowKYCView=false; if(!userInfoModelV2.getKyc()) { shouldShowKYCView=true; - title="Fillup KYC form"; - message="KYC form is required to perform Transaction"; + title="Verify your Account"; + message="Kindly complete your registration process with us to start using GME services."; } else if(!userInfoModelV2.getVerified()) { shouldShowKYCView=true; - title="KYC Form Pending"; - message="KYC form is in pending State"; + + title="Verification in Process"; + message="Your registration request is in approval process. You will soon be able to use GME services."; } view.showKYCVerifiedIfRequired(shouldShowKYCView,message,title,disableKYCViewClick); } diff --git a/app/src/main/java/com/gmeremit/online/gmeremittance_native/homeV2/presenter/HomeV2PresenterInterface.java b/app/src/main/java/com/gmeremit/online/gmeremittance_native/homeV2/presenter/HomeV2PresenterInterface.java index f4535baf..a0d878c4 100644 --- a/app/src/main/java/com/gmeremit/online/gmeremittance_native/homeV2/presenter/HomeV2PresenterInterface.java +++ b/app/src/main/java/com/gmeremit/online/gmeremittance_native/homeV2/presenter/HomeV2PresenterInterface.java @@ -12,6 +12,8 @@ public interface HomeV2PresenterInterface extends BasePresenterInterface { void clearAllData(); + void manuallyUpdateKYCForStatusToSubmitted(); + interface HomeV2ContractInterface extends BaseContractInterface { void showInfoInDrawer(String fullname, String email, String balance, String walletNumber, String bankName, String contact); diff --git a/app/src/main/java/com/gmeremit/online/gmeremittance_native/homeV2/view/HomeFragmentV2.java b/app/src/main/java/com/gmeremit/online/gmeremittance_native/homeV2/view/HomeFragmentV2.java index 7bd8e9fa..22a27944 100644 --- a/app/src/main/java/com/gmeremit/online/gmeremittance_native/homeV2/view/HomeFragmentV2.java +++ b/app/src/main/java/com/gmeremit/online/gmeremittance_native/homeV2/view/HomeFragmentV2.java @@ -1,5 +1,6 @@ package com.gmeremit.online.gmeremittance_native.homeV2.view; +import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.support.annotation.Nullable; @@ -25,8 +26,11 @@ import java.util.List; import butterknife.BindView; import butterknife.ButterKnife; +import static com.gmeremit.online.gmeremittance_native.kycV2.view.KYCFormV2Activity.KYC_RESULT_STATUS_BUNDLE_KEY; + public class HomeFragmentV2 extends BaseFragment implements HomeMenuRvAdapterV2.HomeMenuClickListenerV2, View.OnClickListener { + private static final int KYC_FORM_REQUEST_FROM_HOME = 45432; @BindView(R.id.menuRecyclerView) RecyclerView menuRecyclerView; @@ -171,13 +175,33 @@ public class HomeFragmentV2 extends BaseFragment implements HomeMenuRvAdapterV2. public void onClick(View v) { switch (v.getId()) { case R.id.user_status_layout_nonverified: - Intent startKycIntent = new Intent(getActivity(), KYCFormV2Activity.class); - startActivity(startKycIntent); + if(!disableKYCViewClick) { + Intent startKycIntent = new Intent(getActivity(), KYCFormV2Activity.class); + startActivityForResult(startKycIntent,KYC_FORM_REQUEST_FROM_HOME); + } break; } } + @Override + public void onActivityResult(int requestCode, int resultCode, Intent data) { + super.onActivityResult(requestCode, resultCode, data); + if (requestCode == KYC_FORM_REQUEST_FROM_HOME) { + if(resultCode == Activity.RESULT_OK){ + boolean result=data.getBooleanExtra(KYC_RESULT_STATUS_BUNDLE_KEY,false); + if(result) + { + HomeParentViewContractV2 parentView= ((HomeParentViewContractV2)getActivity()); + if(parentView!=null) + parentView.getPresenter().manuallyUpdateKYCForStatusToSubmitted(); + } + + } + + } + } + public void showKYCVerifiedIfRequired(boolean shouldShowView, String message, String title, boolean disableKYCViewClick) { if(isUIReady()) { @@ -185,7 +209,7 @@ public class HomeFragmentV2 extends BaseFragment implements HomeMenuRvAdapterV2. { this.disableKYCViewClick=disableKYCViewClick; kycVerificationBody.setText(message); - kycVerificationBody.setText(title); + kycTitleLabel.setText(title); if(kyc_notice_view.getVisibility()!=View.VISIBLE) Utils.expand(kyc_notice_view,null,200); } @@ -207,7 +231,7 @@ public class HomeFragmentV2 extends BaseFragment implements HomeMenuRvAdapterV2. { this.disableKYCViewClick=disableKYCViewClick; kycVerificationBody.setText(message); - kycVerificationBody.setText(title); + kycTitleLabel.setText(title); if(kyc_notice_view.getVisibility()!=View.VISIBLE) Utils.expand(kyc_notice_view,null,200); } @@ -216,8 +240,7 @@ public class HomeFragmentV2 extends BaseFragment implements HomeMenuRvAdapterV2. if(kyc_notice_view.getVisibility()!=View.GONE) Utils.collapse(kyc_notice_view,()->{ - kycVerificationBody.setText(message); - kycVerificationBody.setText(title); + },200); } diff --git a/app/src/main/java/com/gmeremit/online/gmeremittance_native/kycV2/presenter/KYCV2Presenter.java b/app/src/main/java/com/gmeremit/online/gmeremittance_native/kycV2/presenter/KYCV2Presenter.java index 0a828d61..42ea1f51 100644 --- a/app/src/main/java/com/gmeremit/online/gmeremittance_native/kycV2/presenter/KYCV2Presenter.java +++ b/app/src/main/java/com/gmeremit/online/gmeremittance_native/kycV2/presenter/KYCV2Presenter.java @@ -537,7 +537,7 @@ public class KYCV2Presenter extends BasePresenter implements KYCV2PresenterInter view.showPopUpMessage(kycRegistrationDataResponse.getMsg(), CustomAlertDialog.AlertType.SUCCESS, new CustomAlertDialog.CustomDialogActionListener() { @Override public void onCutomDialogActionPressed(CustomAlertDialog.AlertType alertType) { - view.exitView(); + view.closeViewWithSucess(); } }); } diff --git a/app/src/main/java/com/gmeremit/online/gmeremittance_native/kycV2/presenter/KYCV2PresenterInterface.java b/app/src/main/java/com/gmeremit/online/gmeremittance_native/kycV2/presenter/KYCV2PresenterInterface.java index 04f85d55..d9fac7ef 100644 --- a/app/src/main/java/com/gmeremit/online/gmeremittance_native/kycV2/presenter/KYCV2PresenterInterface.java +++ b/app/src/main/java/com/gmeremit/online/gmeremittance_native/kycV2/presenter/KYCV2PresenterInterface.java @@ -62,6 +62,8 @@ public interface KYCV2PresenterInterface extends BasePresenterInterface { //Context is passed to create file only. It is not stored in presenter Context getContext(); + void closeViewWithSucess(); + /** * First KYC Form Contract */ diff --git a/app/src/main/java/com/gmeremit/online/gmeremittance_native/kycV2/view/KYCFormV2Activity.java b/app/src/main/java/com/gmeremit/online/gmeremittance_native/kycV2/view/KYCFormV2Activity.java index 787679f6..f345aa2f 100644 --- a/app/src/main/java/com/gmeremit/online/gmeremittance_native/kycV2/view/KYCFormV2Activity.java +++ b/app/src/main/java/com/gmeremit/online/gmeremittance_native/kycV2/view/KYCFormV2Activity.java @@ -1,6 +1,8 @@ package com.gmeremit.online.gmeremittance_native.kycV2.view; +import android.app.Activity; import android.content.Context; +import android.content.Intent; import android.os.Bundle; import android.support.design.widget.TabLayout; import android.support.v4.app.Fragment; @@ -51,6 +53,8 @@ public class KYCFormV2Activity extends BaseActivity implements KYCV2ActionListen private static Interpolator interpolator = new AccelerateDecelerateInterpolator(); + public static final String KYC_RESULT_STATUS_BUNDLE_KEY="kycStatusBundleKey"; + KYCV2PresenterInterface presenter; @@ -239,4 +243,12 @@ public class KYCFormV2Activity extends BaseActivity implements KYCV2ActionListen public Context getContext() { return getApplicationContext(); } + + @Override + public void closeViewWithSucess() { + Intent returnIntent = new Intent(); + returnIntent.putExtra(KYC_RESULT_STATUS_BUNDLE_KEY,true); + setResult(Activity.RESULT_OK,returnIntent); + finish(); + } } diff --git a/app/src/main/res/layout/fragment_home_v2.xml b/app/src/main/res/layout/fragment_home_v2.xml index 0b4c3d4e..bc999426 100644 --- a/app/src/main/res/layout/fragment_home_v2.xml +++ b/app/src/main/res/layout/fragment_home_v2.xml @@ -148,7 +148,7 @@ android:layout_marginEnd="6dp" android:background="@drawable/ic_rectangle_white_corners" android:padding="8dp" - android:visibility="visible"> + android:visibility="gone">