|
|
@ -2,9 +2,10 @@ package com.gmeremit.online.gmeremittance_native.recipientV3.presenter.recipient |
|
|
|
|
|
|
|
import android.util.Log; |
|
|
|
|
|
|
|
import com.gmeremit.online.gmeremittance_native.GmeApplication; |
|
|
|
import com.gmeremit.online.gmeremittance_native.R; |
|
|
|
import com.gmeremit.online.gmeremittance_native.customwidgets.exchangecountrylistingdialog.CountryFlagMapper; |
|
|
|
import com.gmeremit.online.gmeremittance_native.kycV2.model.kyc.NativeCountry; |
|
|
|
import com.gmeremit.online.gmeremittance_native.recipientV2.presenter.recipientadd.RecipientAddV2InteractorInterface; |
|
|
|
import com.gmeremit.online.gmeremittance_native.recipientV3.gateway.recipientaddeditV3.RecipientAddEditV3GatewayInterface; |
|
|
|
import com.gmeremit.online.gmeremittance_native.recipientV3.model.recipientaddeditV3.countryservice.CountryServiceModel; |
|
|
|
import com.gmeremit.online.gmeremittance_native.recipientV3.model.recipientaddeditV3.countryservice.ServiceTypeModel; |
|
|
@ -16,9 +17,9 @@ import com.gmeremit.online.gmeremittance_native.recipientV3.model.recipientadded |
|
|
|
import com.gmeremit.online.gmeremittance_native.recipientV3.model.recipientlistingV3.AgentV3Model; |
|
|
|
import com.gmeremit.online.gmeremittance_native.recipientV3.model.recipientlistingV3.PaymentMethodV3Model; |
|
|
|
import com.gmeremit.online.gmeremittance_native.recipientV3.model.recipientlistingV3.ReceiverInfoV3Model; |
|
|
|
import com.gmeremit.online.gmeremittance_native.recipientV3.presenter.recipientlistingV3.RecipientListingV3InteractorInterface; |
|
|
|
import com.gmeremit.online.gmeremittance_native.recipientV3.utils.EditTextConfigurationFactory; |
|
|
|
import com.gmeremit.online.gmeremittance_native.sendmoneyV2.model.payoutmode.BranchList; |
|
|
|
import com.gmeremit.online.gmeremittance_native.utils.Utils; |
|
|
|
|
|
|
|
import java.util.HashMap; |
|
|
|
import java.util.Iterator; |
|
|
@ -59,6 +60,7 @@ public class RecipientDetailValidatorV3 { |
|
|
|
private final ReceiverInfoV3Model recipientInfo; |
|
|
|
|
|
|
|
private final Map<String, ValidationRuleModel> validationRuleModelMap; |
|
|
|
private final GmeApplication.StringExtractor stringExtractor; |
|
|
|
|
|
|
|
private DynamicValidationModel availableDynamicValidationModel; |
|
|
|
private List<CountryServiceModel> availableCountryServiceData; |
|
|
@ -69,7 +71,10 @@ public class RecipientDetailValidatorV3 { |
|
|
|
private List<NativeCountry> availableNativeCountryList; |
|
|
|
|
|
|
|
|
|
|
|
public RecipientDetailValidatorV3(RecipientAddV3ContractInterface view, ReceiverInfoV3Model receiverInfoV3Model, RecipientAddEditV3GatewayInterface gateway) { |
|
|
|
public RecipientDetailValidatorV3(RecipientAddV3ContractInterface view, ReceiverInfoV3Model receiverInfoV3Model, RecipientAddEditV3GatewayInterface gateway, GmeApplication.StringExtractor stringExtractor) { |
|
|
|
|
|
|
|
this.stringExtractor=stringExtractor; |
|
|
|
|
|
|
|
if (receiverInfoV3Model == null) |
|
|
|
this.recipientInfo = new ReceiverInfoV3Model(); |
|
|
|
else |
|
|
@ -160,6 +165,13 @@ public class RecipientDetailValidatorV3 { |
|
|
|
view.setSubmitButtonEnabled(false); |
|
|
|
|
|
|
|
|
|
|
|
//By default we update native country same as selected Country |
|
|
|
|
|
|
|
view.updateValueToWidgetNativeCountry(selectedCountryServiceData.getCountryName()); |
|
|
|
view.showNativeCountryFlag(CountryFlagMapper.getFlagFromCountryCode(selectedCountryServiceData.getCountryCode())); |
|
|
|
recipientInfo.setNativeCountry(selectedCountryServiceData.getCountryName()); |
|
|
|
recipientInfo.setNativeCountryCode(selectedCountryServiceData.getCountryCode()); |
|
|
|
recipientInfo.setNativeCountryId(selectedCountryServiceData.getCountryId()); |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
@ -320,9 +332,19 @@ public class RecipientDetailValidatorV3 { |
|
|
|
if (validationRuleModel != null) { |
|
|
|
String error = validationRuleModel.validateValueAndReturnErrorMessageOnFail(text); |
|
|
|
if (error == null) { |
|
|
|
recipientInfo.setEmail(text); |
|
|
|
view.setErrorOnWidgetEmail(null); |
|
|
|
validateAll(); |
|
|
|
|
|
|
|
if(Utils.isValidEmail(text)) |
|
|
|
{ |
|
|
|
recipientInfo.setEmail(text); |
|
|
|
view.setErrorOnWidgetEmail(null); |
|
|
|
validateAll(); |
|
|
|
} |
|
|
|
else |
|
|
|
{ |
|
|
|
recipientInfo.setEmail(null); |
|
|
|
view.setSubmitButtonEnabled(false); |
|
|
|
view.setErrorOnWidgetEmail(stringExtractor.getStringFromStringId(R.string.email_valid_error)); |
|
|
|
} |
|
|
|
} else { |
|
|
|
recipientInfo.setEmail(null); |
|
|
|
view.setSubmitButtonEnabled(false); |
|
|
@ -578,6 +600,7 @@ public class RecipientDetailValidatorV3 { |
|
|
|
validationRuleModelMap.put(FIELD_BANK_NAME, rule); |
|
|
|
} else { |
|
|
|
recipientInfo.setAgent(null); |
|
|
|
view.updateValueToWidgetBankName(null); |
|
|
|
} |
|
|
|
break; |
|
|
|
|
|
|
@ -593,6 +616,8 @@ public class RecipientDetailValidatorV3 { |
|
|
|
AgentV3Model agentV3Model = recipientInfo.getAgent(); |
|
|
|
if (agentV3Model != null) { |
|
|
|
agentV3Model.setBranch(null); |
|
|
|
view.updateValueToWidgetBranchName(null); |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
break; |
|
|
@ -610,6 +635,8 @@ public class RecipientDetailValidatorV3 { |
|
|
|
AgentV3Model agentV3Model = recipientInfo.getAgent(); |
|
|
|
if (agentV3Model != null) { |
|
|
|
agentV3Model.setAccountNo(null); |
|
|
|
view.updateValueToWidgetAccountNo(null); |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
break; |
|
|
@ -624,6 +651,7 @@ public class RecipientDetailValidatorV3 { |
|
|
|
validationRuleModelMap.put(FIELD_ID_TYPE, rule); |
|
|
|
} else { |
|
|
|
recipientInfo.setIdType(null); |
|
|
|
view.updateValueToWidgetIDType(null); |
|
|
|
} |
|
|
|
break; |
|
|
|
|
|
|
@ -637,6 +665,7 @@ public class RecipientDetailValidatorV3 { |
|
|
|
validationRuleModelMap.put(FIELD_ID_NUMBER, rule); |
|
|
|
} else { |
|
|
|
recipientInfo.setIdNumber(null); |
|
|
|
view.updateValueToWidgetIDNumber(null); |
|
|
|
} |
|
|
|
break; |
|
|
|
|
|
|
@ -650,6 +679,7 @@ public class RecipientDetailValidatorV3 { |
|
|
|
validationRuleModelMap.put(FIELD_FIRST_NAME, rule); |
|
|
|
} else { |
|
|
|
recipientInfo.setFirstName(null); |
|
|
|
view.updateValueToWidgetFirstName(null); |
|
|
|
} |
|
|
|
break; |
|
|
|
|
|
|
@ -664,6 +694,7 @@ public class RecipientDetailValidatorV3 { |
|
|
|
validationRuleModelMap.put(FIELD_MIDDLE_NAME, rule); |
|
|
|
} else { |
|
|
|
recipientInfo.setMiddleName(null); |
|
|
|
view.updateValueToWidgetMiddleName(null); |
|
|
|
} |
|
|
|
break; |
|
|
|
|
|
|
@ -678,6 +709,7 @@ public class RecipientDetailValidatorV3 { |
|
|
|
validationRuleModelMap.put(FIELD_LAST_NAME, rule); |
|
|
|
} else { |
|
|
|
recipientInfo.setLastName(null); |
|
|
|
view.updateValueToWidgetLastName(null); |
|
|
|
} |
|
|
|
break; |
|
|
|
|
|
|
@ -693,6 +725,7 @@ public class RecipientDetailValidatorV3 { |
|
|
|
|
|
|
|
} else { |
|
|
|
recipientInfo.setFullName(null); |
|
|
|
view.updateValueToWidgetFullName(null); |
|
|
|
} |
|
|
|
break; |
|
|
|
|
|
|
@ -706,6 +739,7 @@ public class RecipientDetailValidatorV3 { |
|
|
|
validationRuleModelMap.put(FIELD_FIRST_NAME_IN_LOCAL, rule); |
|
|
|
} else { |
|
|
|
recipientInfo.setLocalFirstName(null); |
|
|
|
view.updateValueToWidgetLocalFirstName(null); |
|
|
|
} |
|
|
|
break; |
|
|
|
|
|
|
@ -719,6 +753,7 @@ public class RecipientDetailValidatorV3 { |
|
|
|
validationRuleModelMap.put(FIELD_MIDDLE_NAME_IN_LOCAL, rule); |
|
|
|
} else { |
|
|
|
recipientInfo.setLocalMiddleName(null); |
|
|
|
view.updateValueToWidgetLocalMiddleName(null); |
|
|
|
} |
|
|
|
break; |
|
|
|
|
|
|
@ -732,6 +767,7 @@ public class RecipientDetailValidatorV3 { |
|
|
|
validationRuleModelMap.put(FIELD_LAST_NAME_IN_LOCAL, rule); |
|
|
|
} else { |
|
|
|
recipientInfo.setLocalLastName(null); |
|
|
|
view.updateValueToWidgetLocalLastName(null); |
|
|
|
} |
|
|
|
break; |
|
|
|
|
|
|
@ -745,6 +781,7 @@ public class RecipientDetailValidatorV3 { |
|
|
|
validationRuleModelMap.put(FIELD_LOCAL_NAME, rule); |
|
|
|
} else { |
|
|
|
recipientInfo.setLocalFullName(null); |
|
|
|
view.updateValueToWidgetLocalFullName(null); |
|
|
|
} |
|
|
|
break; |
|
|
|
|
|
|
@ -758,6 +795,7 @@ public class RecipientDetailValidatorV3 { |
|
|
|
validationRuleModelMap.put(FIELD_MOBILE_NUMBER, rule); |
|
|
|
} else { |
|
|
|
recipientInfo.setMobile(null); |
|
|
|
view.updateValueToWidgetMobileNumber(null); |
|
|
|
} |
|
|
|
break; |
|
|
|
|
|
|
@ -772,6 +810,7 @@ public class RecipientDetailValidatorV3 { |
|
|
|
} else { |
|
|
|
recipientInfo.setStateId(null); |
|
|
|
recipientInfo.setState(null); |
|
|
|
view.updateValueToWidgetProvince(null); |
|
|
|
} |
|
|
|
break; |
|
|
|
|
|
|
@ -786,6 +825,8 @@ public class RecipientDetailValidatorV3 { |
|
|
|
} else { |
|
|
|
recipientInfo.setDistrictId(null); |
|
|
|
recipientInfo.setDistrict(null); |
|
|
|
view.updateValueToWidgetDistrict(null); |
|
|
|
|
|
|
|
} |
|
|
|
break; |
|
|
|
|
|
|
@ -799,6 +840,7 @@ public class RecipientDetailValidatorV3 { |
|
|
|
validationRuleModelMap.put(FIELD_CITY, rule); |
|
|
|
} else { |
|
|
|
recipientInfo.setCity(null); |
|
|
|
view.updateValueToWidgetCity(null); |
|
|
|
} |
|
|
|
break; |
|
|
|
|
|
|
@ -814,6 +856,7 @@ public class RecipientDetailValidatorV3 { |
|
|
|
validationRuleModelMap.put(FIELD_ADDRESS, rule); |
|
|
|
} else { |
|
|
|
recipientInfo.setAddress(null); |
|
|
|
view.updateValueToWidgetAddress(null); |
|
|
|
} |
|
|
|
|
|
|
|
break; |
|
|
@ -829,6 +872,7 @@ public class RecipientDetailValidatorV3 { |
|
|
|
} else { |
|
|
|
recipientInfo.setRelationshipId(null); |
|
|
|
recipientInfo.setRelationship(null); |
|
|
|
view.updateValueToWidgetRelation(null); |
|
|
|
} |
|
|
|
break; |
|
|
|
|
|
|
@ -844,6 +888,7 @@ public class RecipientDetailValidatorV3 { |
|
|
|
} else { |
|
|
|
recipientInfo.setPurposeOfRemitId(null); |
|
|
|
recipientInfo.setPurposeOfRemit(null); |
|
|
|
view.updateValueToWidgetTransferReason(null); |
|
|
|
} |
|
|
|
break; |
|
|
|
|
|
|
@ -857,6 +902,7 @@ public class RecipientDetailValidatorV3 { |
|
|
|
validationRuleModelMap.put(FIELD_EMAIL, rule); |
|
|
|
} else { |
|
|
|
recipientInfo.setEmail(null); |
|
|
|
view.updateValueToWidgetEmail(null); |
|
|
|
} |
|
|
|
break; |
|
|
|
|
|
|
@ -872,6 +918,7 @@ public class RecipientDetailValidatorV3 { |
|
|
|
|
|
|
|
} else { |
|
|
|
recipientInfo.setNativeCountry(null); |
|
|
|
view.updateValueToWidgetNativeCountry(null); |
|
|
|
} |
|
|
|
break; |
|
|
|
|
|
|
|