Browse Source

Rx validation implemented in KYC

master
Preyea Regmi 5 years ago
parent
commit
5f54096671
  1. 274
      app/src/main/java/com/gmeremit/online/gmeremittance_native/kycV2/presenter/kyc/KYCV2Presenter.java
  2. 27
      app/src/main/java/com/gmeremit/online/gmeremittance_native/kycV2/presenter/kyc/KYCV2PresenterInterface.java
  3. 12
      app/src/main/java/com/gmeremit/online/gmeremittance_native/kycV2/view/KYCFormV2Activity.java
  4. 18
      app/src/main/java/com/gmeremit/online/gmeremittance_native/kycV2/view/view1/KYCView1VModel.java
  5. 13
      app/src/main/java/com/gmeremit/online/gmeremittance_native/kycV2/view/view2/KYCView2VModel.java
  6. 1
      app/src/main/java/com/gmeremit/online/gmeremittance_native/kycV2/view/view3/KYCView3Fragment.java
  7. 1
      app/src/main/res/layout/fragment_kyc_view3_v2.xml

274
app/src/main/java/com/gmeremit/online/gmeremittance_native/kycV2/presenter/kyc/KYCV2Presenter.java

@ -1,6 +1,7 @@
package com.gmeremit.online.gmeremittance_native.kycV2.presenter.kyc;
import android.graphics.Bitmap;
import android.os.Handler;
import android.util.Log;
import com.gmeremit.online.gmeremittance_native.R;
@ -46,18 +47,6 @@ public class KYCV2Presenter extends BasePresenter implements KYCV2PresenterInter
CompositeDisposable compositeDisposable;
private final KYCV2GatewayInterface gateway;
// private Bitmap selfie = null;
// private Bitmap front_doc = null;
// private Bitmap back_doc = null;
// private Bitmap passbook = null;
// private Bitmap passport = null;
//
// private File selfieFile = null;
// private File frontdocFile = null;
// private File backdocFile = null;
// private File passbookFile = null;
// private File passportFile = null;
public static final String ISSUE_DATE_KEY = "docIssueDate";
public static final String EXPIRY_DATE_KEY = "docExpiryDate";
@ -65,9 +54,6 @@ public class KYCV2Presenter extends BasePresenter implements KYCV2PresenterInter
private final KYCForm2Validator kycForm2Validator;
private final KYCForm3Validator kycForm3Validator;
private final KYCView1VModel kycForm1DataModel;
private final KYCView2VModel kycForm2DataModel;
public KYCV2Presenter(KYCV2PresenterInterface.KYCV2ContractInterface view, int height, int width) {
this.view = view;
@ -78,68 +64,10 @@ public class KYCV2Presenter extends BasePresenter implements KYCV2PresenterInter
this.kycForm1Validator = new KYCForm1Validator(this);
this.kycForm2Validator = new KYCForm2Validator(this);
this.kycForm3Validator = new KYCForm3Validator(this);
this.kycForm1DataModel = new KYCView1VModel();
this.kycForm2DataModel = new KYCView2VModel();
}
@Override
public boolean validateKYCView1(KYCView1VModel data) {
boolean isValid = true;
if (checkIfEmptyOrNull(data.getFirstName())) {
this.view.getView1Contract().setErrorOnFirstName(getStringfromStringId(R.string.kyc_first_name_error));
isValid = false;
} else
this.view.getView1Contract().setErrorOnFirstName(null);
// if (!returnFalseIfMobileNoIsNotValid(data.getMobileNumber())) isValid = false;
if (checkIfEmptyOrNull(data.getEmail()) || !Utils.isValidEmail(data.getEmail())) {
this.view.getView1Contract().setErrorOnEmail(getStringfromStringId(R.string.email_valid_error));
isValid = false;
} else
this.view.getView1Contract().setErrorOnEmail(null);
if (data.getGender() == null) {
this.view.getView1Contract().setErrorOnGender(getStringfromStringId(R.string.kyc_gender_error));
isValid = false;
} else
this.view.getView1Contract().setErrorOnGender(null);
if (data.getNativeCountry() == null) {
this.view.getView1Contract().setErrorOnNativeCountry(getStringfromStringId(R.string.kyc_native_country_error));
isValid = false;
} else
this.view.getView1Contract().setErrorOnNativeCountry(null);
if (checkIfEmptyOrNull(data.getAddress())) {
this.view.getView1Contract().setErrorOnAddress(getStringfromStringId(R.string.kyc_address_error));
isValid = false;
} else
this.view.getView1Contract().setErrorOnAddress(null);
if (data.getProvince() == null) {
this.view.getView1Contract().setErrorOnProvince(getStringfromStringId(R.string.kyc_province_error));
isValid = false;
} else
this.view.getView1Contract().setErrorOnProvince(null);
if (data.getOccupation() == null) {
this.view.getView1Contract().setErrorOnOccupation(getStringfromStringId(R.string.kyc_occupation_error));
isValid = false;
} else
this.view.getView1Contract().setErrorOnOccupation(null);
if (checkIfEmptyOrNull(data.getDob())) {
this.view.getView1Contract().setErrorOnDob(getStringfromStringId(R.string.dob_valid_error));
isValid = false;
} else
this.view.getView1Contract().setErrorOnDob(null);
return isValid;
}
private boolean returnFalseIfMobileNoIsNotValid(String mobile) {
if (mobile == null || mobile.length() < 1) {
this.view.getView1Contract().setErrorOnMobileNumber(getStringfromStringId(R.string.kyc_mobile_empty_error));
@ -154,50 +82,6 @@ public class KYCV2Presenter extends BasePresenter implements KYCV2PresenterInter
}
@Override
public boolean validateKYCView2(KYCView2VModel data) {
boolean isValid = true;
if (data.getPrimaryBank() == null) {
this.view.getView2Contract().setErrorOnPrimaryBank(getStringfromStringId(R.string.kyc_bank_name_error));
isValid = false;
} else
this.view.getView2Contract().setErrorOnPrimaryBank(null);
if (checkIfEmptyOrNull(data.getAccNo())) {
this.view.getView2Contract().setErrorOnAccountNo(getStringfromStringId(R.string.kyc_account_number_error));
isValid = false;
} else
this.view.getView2Contract().setErrorOnAccountNo(null);
if (data.getVerificationType() == null) {
this.view.getView2Contract().setErrorOnVerificationType(getStringfromStringId(R.string.kyc_verification_id_error));
isValid = false;
} else
this.view.getView2Contract().setErrorOnVerificationType(null);
if (checkIfEmptyOrNull(data.getVerficationId())) {
this.view.getView2Contract().setErrorOnVerificationId(getStringfromStringId(R.string.kyc_verification_no_error));
isValid = false;
} else if (data.getVerificationType() != null && data.getVerificationType().getText() != null && (data.getVerificationType().getText().toLowerCase().contains("national") || data.getVerificationType().getText().toLowerCase().contains("alien"))) {
if (data.getVerficationId().length() == 14)
this.view.getView2Contract().setErrorOnVerificationId(null);
else {
this.view.getView2Contract().setErrorOnVerificationId(getStringfromStringId(R.string.kyc_verification_id_error));
isValid = false;
}
} else
this.view.getView2Contract().setErrorOnVerificationId(null);
if (hasErrorInDependentForVerificationType(data.getVerificationType(), data.getIssueDate(), data.getExpiryDate())) {
isValid = false;
}
if (data.getSourceOfFund() == null) {
this.view.getView2Contract().setErrorOnSourceOfFund(getStringfromStringId(R.string.kyc_source_of_fund_error));
isValid = false;
} else
this.view.getView2Contract().setErrorOnSourceOfFund(null);
return isValid;
}
private boolean hasErrorInDependentForVerificationType(IdType verificationType, String issueDate, String expiryDate) {
boolean errorInIssueDate = false;
@ -231,15 +115,6 @@ public class KYCV2Presenter extends BasePresenter implements KYCV2PresenterInter
}
@Override
public boolean validateKYCView3(KYCView3VModel data) {
if (frontdocFile == null || backdocFile == null) {
view.showToastMessage(getStringfromStringId(R.string.please_provide_all_images_text));
return false;
}
return true;
}
@Override
public KYCV2PresenterInterface.KYCForm1Validator getKYCForm1Validator() {
return this.kycForm1Validator;
@ -251,8 +126,8 @@ public class KYCV2Presenter extends BasePresenter implements KYCV2PresenterInter
}
@Override
public KYCV2PresenterInterface.KYCForm2Validator getKYCForm3Validator() {
return null;
public KYCV2PresenterInterface.KYCForm3Validator getKYCForm3Validator() {
return kycForm3Validator;
}
@ -271,70 +146,80 @@ public class KYCV2Presenter extends BasePresenter implements KYCV2PresenterInter
switch (requestCode) {
case KYCView3Fragment.FRONT_REGID_CAMERA:
if (resultCode == RESULT_OK) {
frontdocFile = data;
view.getView3Contract().setFrontImage(ImageUtils.blur(view.getContext(), frontdocFile.getAbsolutePath(), thumbnailHeight, thumbnailWidth));
// frontdocFile = data;
kycForm3Validator.validateFrontDoc(data);
view.getView3Contract().setFrontImage(ImageUtils.blur(view.getContext(), data.getAbsolutePath(), thumbnailHeight, thumbnailWidth));
break;
}
case KYCView3Fragment.FRONT_REGID_GALLERY:
if (resultCode == RESULT_OK) {
frontdocFile = data;
view.getView3Contract().setFrontImage(ImageUtils.blur(view.getContext(), frontdocFile.getAbsolutePath(), thumbnailHeight, thumbnailWidth));
// frontdocFile = data;
kycForm3Validator.validateFrontDoc(data);
view.getView3Contract().setFrontImage(ImageUtils.blur(view.getContext(), data.getAbsolutePath(), thumbnailHeight, thumbnailWidth));
break;
}
case KYCView3Fragment.BACK_REGID_CAMERA:
if (resultCode == RESULT_OK) {
backdocFile = data;
view.getView3Contract().setBackImage(ImageUtils.blur(view.getContext(), backdocFile.getAbsolutePath(), thumbnailHeight, thumbnailWidth));
// backdocFile = data;
kycForm3Validator.validateBackDoc(data);
view.getView3Contract().setBackImage(ImageUtils.blur(view.getContext(), data.getAbsolutePath(), thumbnailHeight, thumbnailWidth));
break;
}
case KYCView3Fragment.BACK_REGID_GALLERY:
if (resultCode == RESULT_OK) {
backdocFile = data;
view.getView3Contract().setBackImage(ImageUtils.blur(view.getContext(), backdocFile.getAbsolutePath(), thumbnailHeight, thumbnailWidth));
// backdocFile = data;
kycForm3Validator.validateBackDoc(data);
view.getView3Contract().setBackImage(ImageUtils.blur(view.getContext(), data.getAbsolutePath(), thumbnailHeight, thumbnailWidth));
break;
}
case KYCView3Fragment.PASSBOOKREQ_CAMERA:
if (resultCode == RESULT_OK) {
passbookFile = data;
view.getView3Contract().setPassbookImage(ImageUtils.blur(view.getContext(), passbookFile.getAbsolutePath(), thumbnailHeight, thumbnailWidth));
// passbookFile = data;
kycForm3Validator.validatePassbook(data);
view.getView3Contract().setPassbookImage(ImageUtils.blur(view.getContext(), data.getAbsolutePath(), thumbnailHeight, thumbnailWidth));
break;
}
case KYCView3Fragment.PASSBOOKREQ_GALLERY:
if (resultCode == RESULT_OK) {
passbookFile = data;
view.getView3Contract().setPassbookImage(ImageUtils.blur(view.getContext(), passbookFile.getAbsolutePath(), thumbnailHeight, thumbnailWidth));
// passbookFile = data;
kycForm3Validator.validatePassbook(data);
view.getView3Contract().setPassbookImage(ImageUtils.blur(view.getContext(), data.getAbsolutePath(), thumbnailHeight, thumbnailWidth));
break;
}
case KYCView3Fragment.PASSPORTREQ_CAMERA:
if (resultCode == RESULT_OK) {
passportFile = data;
view.getView3Contract().setPassportImage(ImageUtils.blur(view.getContext(), passportFile.getAbsolutePath(), thumbnailHeight, thumbnailWidth));
// passportFile = data;
kycForm3Validator.validatePassport(data);
view.getView3Contract().setPassportImage(ImageUtils.blur(view.getContext(), data.getAbsolutePath(), thumbnailHeight, thumbnailWidth));
break;
}
case KYCView3Fragment.PASSPORTREQ_GALLERY:
if (resultCode == RESULT_OK) {
passportFile = data;
view.getView3Contract().setPassportImage(ImageUtils.blur(view.getContext(), passportFile.getAbsolutePath(), thumbnailHeight, thumbnailWidth));
// passportFile = data;
kycForm3Validator.validatePassport(data);
view.getView3Contract().setPassportImage(ImageUtils.blur(view.getContext(), data.getAbsolutePath(), thumbnailHeight, thumbnailWidth));
break;
}
case KYCView3Fragment.SELFIE_REGID_CAMERA:
if (resultCode == RESULT_OK) {
selfieFile = data;
view.getView3Contract().setSelfieImage(ImageUtils.blur(view.getContext(), selfieFile.getAbsolutePath(), thumbnailHeight, thumbnailWidth));
// selfieFile = data;
kycForm3Validator.validateSelfie(data);
view.getView3Contract().setSelfieImage(ImageUtils.blur(view.getContext(), data.getAbsolutePath(), thumbnailHeight, thumbnailWidth));
break;
}
case KYCView3Fragment.SELFIE_REGID_GALLERY:
if (resultCode == RESULT_OK) {
selfieFile = data;
view.getView3Contract().setSelfieImage(ImageUtils.blur(view.getContext(), selfieFile.getAbsolutePath(), thumbnailHeight, thumbnailWidth));
// selfieFile = data;
kycForm3Validator.validateSelfie(data);
view.getView3Contract().setSelfieImage(ImageUtils.blur(view.getContext(), data.getAbsolutePath(), thumbnailHeight, thumbnailWidth));
break;
}
@ -346,40 +231,19 @@ public class KYCV2Presenter extends BasePresenter implements KYCV2PresenterInter
@Override
public void prepareToSendData() {
KYCView1VModel view1VModel = view.getView1Contract().getView1RelatedData();
KYCView2VModel view2VModel = view.getView2Contract().getView2RelatedData();
if (validateKYCView1(view1VModel)) {
if (validateKYCView2(view2VModel)) {
if (validateKYCView3(null)) {
sendKycForRegistration(view1VModel, view2VModel);
} else
view.showView3();
} else
view.showView2();
KYCView1VModel view1VModel = kycForm1Validator.getKycView1VModel();
KYCView2VModel view2VModel = kycForm2Validator.getKycView2VModel();
} else
view.showView1();
sendKycForRegistration(view1VModel, view2VModel);
}
@Override
public void validateAllFormsAndRequestForPennyTest() {
KYCView1VModel view1VModel = view.getView1Contract().getView1RelatedData();
KYCView2VModel view2VModel = view.getView2Contract().getView2RelatedData();
if (validateKYCView1(view1VModel)) {
if (validateKYCView2(view2VModel)) {
if (validateKYCView3(null)) {
view.showPennyTestView();
} else
view.showView3();
} else
view.showView2();
view.showPennyTestView();
} else
view.showView1();
}
@ -406,10 +270,10 @@ public class KYCV2Presenter extends BasePresenter implements KYCV2PresenterInter
view2VModel.getExpiryDate(),
(view2VModel.getIssueDate() == null) ? "" : view2VModel.getIssueDate(),
view2VModel.getSourceOfFund().getId(),
selfieFile,
frontdocFile,
backdocFile,
passbookFile)
kycForm3Validator.selfieFile,
kycForm3Validator.frontdocFile,
kycForm3Validator.backdocFile,
kycForm3Validator.passbookFile)
.subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread())
.doOnSubscribe(sub -> {
view.showProgressBar(true, getStringfromStringId(R.string.processing_request_text));
@ -711,6 +575,8 @@ public class KYCV2Presenter extends BasePresenter implements KYCV2PresenterInter
&& this.isGenderValid && this.isNativeCountryValid && this.isOccupationValid && this.isProvinceValid;
listener.onKYCForm1ValidationResult(result);
if (result)
Log.d("GMEKYC", kycView1VModel.toString());
return result;
}
@ -795,8 +661,8 @@ public class KYCV2Presenter extends BasePresenter implements KYCV2PresenterInter
view.getView2Contract().clearIdTypeRelatedData();
isSelectedExpiryDateValid = false;
isSelectedIssueDateValid = false;
kycForm2DataModel.setExpiryDate("");
kycForm2DataModel.setIssueDate("");
kycView2VModel.setExpiryDate("");
kycView2VModel.setIssueDate("");
// Checking Id Type Dependents now
//Update widget masking type
@ -820,7 +686,7 @@ public class KYCV2Presenter extends BasePresenter implements KYCV2PresenterInter
//National Id doesn't have expiry date
if (idType.getText().equalsIgnoreCase("National ID")) {
isSelectedExpiryDateValid = true;
kycForm2DataModel.setExpiryDate("");
kycView2VModel.setExpiryDate("");
}
view.getView2Contract().updateVerificationTypeDependentView(idType.getDependent());
@ -904,7 +770,8 @@ public class KYCV2Presenter extends BasePresenter implements KYCV2PresenterInter
@Override
public boolean validateSelectedIssueDate(String issuedDate) {
if (checkErrorInDependentForVerificationType(kycForm2DataModel.getVerificationType(), issuedDate, kycView2VModel.getExpiryDate())) {
// if (checkErrorInDependentForVerificationType(kycView2VModel.getVerificationType(), issuedDate, kycView2VModel.getExpiryDate())) {
if (checkIfEmptyOrNull(issuedDate)) {
isSelectedIssueDateValid = false;
kycView2VModel.setIssueDate("");
view.getView2Contract().updateIssuedDate(null);
@ -919,14 +786,14 @@ public class KYCV2Presenter extends BasePresenter implements KYCV2PresenterInter
@Override
public boolean validateSelectedExpiryDate(String expiryDate) {
if (checkErrorInDependentForVerificationType(kycForm2DataModel.getVerificationType(), kycView2VModel.getIssueDate(), expiryDate)) {
// if (checkErrorInDependentForVerificationType(kycView2VModel.getVerificationType(), kycView2VModel.getIssueDate(), expiryDate)) {
if (checkIfEmptyOrNull(expiryDate)) {
isSelectedExpiryDateValid = false;
kycView2VModel.setIssueDate("");
kycView2VModel.setExpiryDate("");
view.getView2Contract().updateExpiryDate(null);
} else {
isSelectedExpiryDateValid = true;
kycView2VModel.setIssueDate(expiryDate);
kycView2VModel.setExpiryDate(expiryDate);
view.getView2Contract().updateExpiryDate(expiryDate);
}
checkAllFieldValidation();
@ -971,10 +838,12 @@ public class KYCV2Presenter extends BasePresenter implements KYCV2PresenterInter
if (sourceOfFund == null) {
view.getView2Contract().setErrorOnSourceOfFund(getStringfromStringId(R.string.kyc_source_of_fund_error));
view.getView2Contract().updateSourceOfFund(null);
kycView2VModel.setSourceOfFund(null);
isSourceOfFundValid = false;
} else {
view.getView2Contract().setErrorOnSourceOfFund(null);
view.getView2Contract().updateSourceOfFund(sourceOfFund.getText());
kycView2VModel.setSourceOfFund(sourceOfFund);
isSourceOfFundValid = true;
}
checkAllFieldValidation();
@ -982,6 +851,7 @@ public class KYCV2Presenter extends BasePresenter implements KYCV2PresenterInter
}
private boolean checkAllFieldValidation() {
boolean result = isPrimaryBankValid &&
isPrimaryAccountNumberValid &&
@ -993,7 +863,8 @@ public class KYCV2Presenter extends BasePresenter implements KYCV2PresenterInter
this.listener.onKYCForm2ValidationResult(
result
);
if (result)
Log.d("GMEKYC", kycView2VModel.toString());
return result;
}
@ -1069,6 +940,25 @@ public class KYCV2Presenter extends BasePresenter implements KYCV2PresenterInter
return isPassportValid;
}
@Override
public void validateAllOnForm3Visible() {
Log.d("GMEKYC","On Form 3 visible");
boolean form1Validaiton = kycForm1Validator.checkAllFieldValidation();
boolean form2Validation = kycForm2Validator.checkAllFieldValidation();
boolean form3Validation = isSelfieValid &&
isFrontdocValid &&
isBackdocValid &&
isPassbookValid &&
isPassportValid;
if (form1Validaiton && form2Validation && form3Validation)
listener.onKYCForm3ValidationResult(true);
else
listener.onKYCForm3ValidationResult(false);
}
private void checkAllFieldValidation() {
boolean form1Validaiton = kycForm1Validator.checkAllFieldValidation();
@ -1081,11 +971,17 @@ public class KYCV2Presenter extends BasePresenter implements KYCV2PresenterInter
isPassportValid;
if (form3Validation) {
if (form1Validaiton && form2Validation)
listener.onKYCForm3ValidationResult(true);
else {
if (!form1Validaiton) {
listener.onKYCForm3ValidationResult(false);
view.showToastMessage(getStringfromStringId(R.string.kyc_form_fill_up_number_error));
new Handler().postDelayed(view::showView1, 1000);
} else if (!form2Validation) {
listener.onKYCForm3ValidationResult(false);
view.showToastMessage(getStringfromStringId(R.string.kyc_form_fill_up_number_error));
new Handler().postDelayed(view::showView2, 1000);
} else {
listener.onKYCForm3ValidationResult(true);
}
}

27
app/src/main/java/com/gmeremit/online/gmeremittance_native/kycV2/presenter/kyc/KYCV2PresenterInterface.java

@ -27,28 +27,7 @@ import java.util.List;
public interface KYCV2PresenterInterface extends BasePresenterInterface {
/**
* Passive validator, Rx Validation available now
* @param data First Screen Data
* @return true on validation success
*
*/
@Deprecated
boolean validateKYCView1(KYCView1VModel data);
/**
* Passive validator, Rx Validation available now
* @param data Second Screen Data
* @return true on validation success
*/
@Deprecated
boolean validateKYCView2(KYCView2VModel data);
/**
* Passive validator, Rx Validation available now
* @param data Third Screen Data
* @return true on validation success
*/
@Deprecated
boolean validateKYCView3(KYCView3VModel data);
/**
* Rx Validator for First Screen Data
@ -62,7 +41,7 @@ public interface KYCV2PresenterInterface extends BasePresenterInterface {
/**
* Rx Validator for Second Screen Data
*/
KYCForm2Validator getKYCForm3Validator();
KYCForm3Validator getKYCForm3Validator();
void checkImageStatus(int requestCode, int resultCode, Bitmap data);
@ -268,6 +247,8 @@ public interface KYCV2PresenterInterface extends BasePresenterInterface {
boolean validateBackDoc(File backDoc);
boolean validatePassbook(File passbook);
boolean validatePassport(File passport);
void validateAllOnForm3Visible();
}

12
app/src/main/java/com/gmeremit/online/gmeremittance_native/kycV2/view/KYCFormV2Activity.java

@ -9,7 +9,6 @@ import android.support.v4.app.Fragment;
import android.support.v4.content.ContextCompat;
import android.support.v4.view.ViewCompat;
import android.support.v4.view.ViewPager;
import android.util.Log;
import android.view.View;
import android.view.animation.AccelerateDecelerateInterpolator;
import android.view.animation.Interpolator;
@ -134,17 +133,17 @@ public class KYCFormV2Activity extends BaseActivity implements KYCV2ActionListen
@Override
public void showView1() {
viewPager.setCurrentItem(0);
viewPager.setCurrentItem(0,true);
}
@Override
public void showView2() {
viewPager.setCurrentItem(1);
viewPager.setCurrentItem(1,true);
}
@Override
public void showView3() {
viewPager.setCurrentItem(2);
viewPager.setCurrentItem(2,true);
}
private void changeTitleInHeader(String message) {
@ -179,10 +178,10 @@ public class KYCFormV2Activity extends BaseActivity implements KYCV2ActionListen
promptExitConfirmationDialog();
break;
case 1:
viewPager.setCurrentItem(0, true);
showView1();
break;
case 2:
viewPager.setCurrentItem(1, true);
showView2();
break;
}
}
@ -244,6 +243,7 @@ public class KYCFormV2Activity extends BaseActivity implements KYCV2ActionListen
case 2:
changeTitleInHeader(getString(R.string.upload_subtitle_text));
changeSelectedTabTextColor(position);
presenter.getKYCForm3Validator().validateAllOnForm3Visible();
break;
}
}

18
app/src/main/java/com/gmeremit/online/gmeremittance_native/kycV2/view/view1/KYCView1VModel.java

@ -130,4 +130,22 @@ public class KYCView1VModel {
public void setReferralCode(String referralCode) {
this.referralCode = referralCode;
}
@Override
public String toString() {
return "KYCView1VModel{" +
"firstName='" + firstName + '\'' +
", middleName='" + middleName + '\'' +
", lastName='" + lastName + '\'' +
", mobileNumber='" + mobileNumber + '\'' +
", email='" + email + '\'' +
", gender=" + gender +
", dob='" + dob + '\'' +
", nativeCountryCode=" + nativeCountryCode +
", address='" + address + '\'' +
", province=" + province +
", occupation=" + occupation +
", referralCode='" + referralCode + '\'' +
'}';
}
}

13
app/src/main/java/com/gmeremit/online/gmeremittance_native/kycV2/view/view2/KYCView2VModel.java

@ -69,4 +69,17 @@ public class KYCView2VModel {
public void setIssueDate(String issueDate) {
this.issueDate = issueDate;
}
@Override
public String toString() {
return "KYCView2VModel{" +
"primaryBank=" + primaryBank +
", accNo='" + accNo + '\'' +
", verificationType=" + verificationType +
", verficationId='" + verficationId + '\'' +
", expiryDate='" + expiryDate + '\'' +
", issueDate='" + issueDate + '\'' +
", sourceOfFund=" + sourceOfFund +
'}';
}
}

1
app/src/main/java/com/gmeremit/online/gmeremittance_native/kycV2/view/view3/KYCView3Fragment.java

@ -67,6 +67,7 @@ public class KYCView3Fragment extends BaseFragment implements View.OnClickListen
private static final int COMPRESS_QUALITY = 70;
@BindView(R.id.iv_front_image)
ImageView frontRegIdImage;
@BindView(R.id.iv_back_image)

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

@ -318,6 +318,7 @@
android:layout_marginTop="20dp"
android:background="@drawable/ic_rounded_background_coloured"
android:text="@string/submit_text"
android:enabled="false"
android:textAllCaps="false"
android:textColor="@color/white"
android:textSize="16sp" />

Loading…
Cancel
Save