|
|
@ -1,17 +1,37 @@ |
|
|
|
package com.gmeremit.online.gmeremittance_native.recipientV3.presenter.recipientaddeditV3; |
|
|
|
|
|
|
|
import com.gmeremit.online.gmeremittance_native.recipientV3.model.recipientaddeditV3.ValidationStateDTO; |
|
|
|
import android.util.Log; |
|
|
|
|
|
|
|
import com.gmeremit.online.gmeremittance_native.recipientV3.model.recipientaddeditV3.dynamicvalidation.ValidationRuleModel; |
|
|
|
import com.gmeremit.online.gmeremittance_native.recipientV3.model.recipientlistingV3.ReceiverInfoV3Model; |
|
|
|
import com.gmeremit.online.gmeremittance_native.recipientV3.utils.EditTextConfigurationFactory; |
|
|
|
import com.gmeremit.online.gmeremittance_native.recipientV3.view.recipientaddeditV3.RecipientAddEditV3Activity; |
|
|
|
|
|
|
|
import java.util.ArrayList; |
|
|
|
import java.util.HashMap; |
|
|
|
import java.util.Iterator; |
|
|
|
import java.util.List; |
|
|
|
import java.util.Map; |
|
|
|
|
|
|
|
import static com.gmeremit.online.gmeremittance_native.recipientV3.presenter.RecipientDetailValidatorFieldMappingV3.*; |
|
|
|
import static com.gmeremit.online.gmeremittance_native.recipientV3.presenter.RecipientDetailValidatorFieldMappingV3.FIELD_ACCOUNT_NO; |
|
|
|
import static com.gmeremit.online.gmeremittance_native.recipientV3.presenter.RecipientDetailValidatorFieldMappingV3.FIELD_ADDRESS; |
|
|
|
import static com.gmeremit.online.gmeremittance_native.recipientV3.presenter.RecipientDetailValidatorFieldMappingV3.FIELD_BANK_NAME; |
|
|
|
import static com.gmeremit.online.gmeremittance_native.recipientV3.presenter.RecipientDetailValidatorFieldMappingV3.FIELD_BRANCH_NAME; |
|
|
|
import static com.gmeremit.online.gmeremittance_native.recipientV3.presenter.RecipientDetailValidatorFieldMappingV3.FIELD_CITY; |
|
|
|
import static com.gmeremit.online.gmeremittance_native.recipientV3.presenter.RecipientDetailValidatorFieldMappingV3.FIELD_DISTRICT; |
|
|
|
import static com.gmeremit.online.gmeremittance_native.recipientV3.presenter.RecipientDetailValidatorFieldMappingV3.FIELD_EMAIL; |
|
|
|
import static com.gmeremit.online.gmeremittance_native.recipientV3.presenter.RecipientDetailValidatorFieldMappingV3.FIELD_FIRST_NAME; |
|
|
|
import static com.gmeremit.online.gmeremittance_native.recipientV3.presenter.RecipientDetailValidatorFieldMappingV3.FIELD_FIRST_NAME_IN_LOCAL; |
|
|
|
import static com.gmeremit.online.gmeremittance_native.recipientV3.presenter.RecipientDetailValidatorFieldMappingV3.FIELD_FULL_NAME; |
|
|
|
import static com.gmeremit.online.gmeremittance_native.recipientV3.presenter.RecipientDetailValidatorFieldMappingV3.FIELD_ID_NUMBER; |
|
|
|
import static com.gmeremit.online.gmeremittance_native.recipientV3.presenter.RecipientDetailValidatorFieldMappingV3.FIELD_ID_TYPE; |
|
|
|
import static com.gmeremit.online.gmeremittance_native.recipientV3.presenter.RecipientDetailValidatorFieldMappingV3.FIELD_LAST_NAME; |
|
|
|
import static com.gmeremit.online.gmeremittance_native.recipientV3.presenter.RecipientDetailValidatorFieldMappingV3.FIELD_LAST_NAME_IN_LOCAL; |
|
|
|
import static com.gmeremit.online.gmeremittance_native.recipientV3.presenter.RecipientDetailValidatorFieldMappingV3.FIELD_LOCAL_NAME; |
|
|
|
import static com.gmeremit.online.gmeremittance_native.recipientV3.presenter.RecipientDetailValidatorFieldMappingV3.FIELD_MIDDLE_NAME; |
|
|
|
import static com.gmeremit.online.gmeremittance_native.recipientV3.presenter.RecipientDetailValidatorFieldMappingV3.FIELD_MIDDLE_NAME_IN_LOCAL; |
|
|
|
import static com.gmeremit.online.gmeremittance_native.recipientV3.presenter.RecipientDetailValidatorFieldMappingV3.FIELD_MOBILE_NUMBER; |
|
|
|
import static com.gmeremit.online.gmeremittance_native.recipientV3.presenter.RecipientDetailValidatorFieldMappingV3.FIELD_PROVINCE; |
|
|
|
import static com.gmeremit.online.gmeremittance_native.recipientV3.presenter.RecipientDetailValidatorFieldMappingV3.FIELD_REALATION_GROUP; |
|
|
|
import static com.gmeremit.online.gmeremittance_native.recipientV3.presenter.RecipientDetailValidatorFieldMappingV3.FIELD_TRANSFER_REASON; |
|
|
|
|
|
|
|
public class RecipientDetailValidatorV3 { |
|
|
|
|
|
|
@ -19,28 +39,30 @@ public class RecipientDetailValidatorV3 { |
|
|
|
private final ReceiverInfoV3Model recipientInfo; |
|
|
|
|
|
|
|
private final Map<String, ValidationRuleModel> validationRuleModelMap; |
|
|
|
private final Map<String, Boolean> validationStateMap; |
|
|
|
|
|
|
|
|
|
|
|
public RecipientDetailValidatorV3(RecipientAddV3ContractInterface view, ReceiverInfoV3Model receiverInfoV3Model) { |
|
|
|
if ( receiverInfoV3Model == null) { |
|
|
|
receiverInfoV3Model=new ReceiverInfoV3Model(); |
|
|
|
if (receiverInfoV3Model == null) { |
|
|
|
receiverInfoV3Model = new ReceiverInfoV3Model(); |
|
|
|
} |
|
|
|
this.view = view; |
|
|
|
this.recipientInfo = receiverInfoV3Model; |
|
|
|
validationRuleModelMap=new HashMap<>(); |
|
|
|
validationStateMap=new HashMap<>(); |
|
|
|
validationRuleModelMap = new HashMap<>(); |
|
|
|
} |
|
|
|
|
|
|
|
public ReceiverInfoV3Model getRecipientDetail() |
|
|
|
{ |
|
|
|
private void mockTestinData() { |
|
|
|
this.recipientInfo.setFullName("Some Random value"); |
|
|
|
} |
|
|
|
|
|
|
|
public ReceiverInfoV3Model getRecipientDetail() { |
|
|
|
return recipientInfo; |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
* Apply validation to corresponding widget |
|
|
|
* If Business requirement to override existing data, do it here before updating the corresponding view |
|
|
|
* If Business requirement is to override existing data, do it here before updating the corresponding view |
|
|
|
* |
|
|
|
* @param rule |
|
|
|
*/ |
|
|
|
public void applyDynamicValidationRuleToView(ValidationRuleModel rule) { |
|
|
@ -52,18 +74,18 @@ public class RecipientDetailValidatorV3 { |
|
|
|
//TODO Add Respective value when avialable in reciever info |
|
|
|
view.updateValueToWidgetBankName(""); |
|
|
|
view.updateValidationRuleToWidgetBankName(rule.isFieldRequired(), |
|
|
|
EditTextConfigurationFactory.getKeyboardTypeFromKeyword(rule.getKeyboardType(),rule.isLocalKeyboardAllowed(), |
|
|
|
EditTextConfigurationFactory.getKeyboardTypeFromKeyword(rule.getKeyboardType(), rule.isLocalKeyboardAllowed(), |
|
|
|
rule.getMaxFieldLengthInt())); |
|
|
|
validationRuleModelMap.put(FIELD_BANK_NAME,rule); |
|
|
|
validationRuleModelMap.put(FIELD_BANK_NAME, rule); |
|
|
|
break; |
|
|
|
|
|
|
|
case FIELD_BRANCH_NAME: |
|
|
|
//TODO Add Respective value when avialable in reciever info |
|
|
|
view.updateValueToWidgetBranchName(""); |
|
|
|
view.updateValidationRuleToWidgetBranchName(rule.isFieldRequired(), |
|
|
|
EditTextConfigurationFactory.getKeyboardTypeFromKeyword(rule.getKeyboardType(),rule.isLocalKeyboardAllowed(), |
|
|
|
EditTextConfigurationFactory.getKeyboardTypeFromKeyword(rule.getKeyboardType(), rule.isLocalKeyboardAllowed(), |
|
|
|
rule.getMaxFieldLengthInt())); |
|
|
|
validationRuleModelMap.put(FIELD_BRANCH_NAME,rule); |
|
|
|
validationRuleModelMap.put(FIELD_BRANCH_NAME, rule); |
|
|
|
break; |
|
|
|
|
|
|
|
|
|
|
@ -71,36 +93,36 @@ public class RecipientDetailValidatorV3 { |
|
|
|
//TODO Add Respective value when avialable in reciever info |
|
|
|
view.updateValueToWidgetAccountNo(""); |
|
|
|
view.updateValidationRuleToWidgetAccountNo(rule.isFieldRequired(), |
|
|
|
EditTextConfigurationFactory.getKeyboardTypeFromKeyword(rule.getKeyboardType(),rule.isLocalKeyboardAllowed(), |
|
|
|
EditTextConfigurationFactory.getKeyboardTypeFromKeyword(rule.getKeyboardType(), rule.isLocalKeyboardAllowed(), |
|
|
|
rule.getMaxFieldLengthInt())); |
|
|
|
validationRuleModelMap.put(FIELD_ACCOUNT_NO,rule); |
|
|
|
validationRuleModelMap.put(FIELD_ACCOUNT_NO, rule); |
|
|
|
break; |
|
|
|
|
|
|
|
case FIELD_ID_TYPE: |
|
|
|
//TODO Add Respective value when avialable in reciever info |
|
|
|
view.updateValueToWidgetIDType(""); |
|
|
|
view.updateValidationRuleToWidgetIDType(rule.isFieldRequired(), |
|
|
|
EditTextConfigurationFactory.getKeyboardTypeFromKeyword(rule.getKeyboardType(),rule.isLocalKeyboardAllowed(), |
|
|
|
EditTextConfigurationFactory.getKeyboardTypeFromKeyword(rule.getKeyboardType(), rule.isLocalKeyboardAllowed(), |
|
|
|
rule.getMaxFieldLengthInt())); |
|
|
|
validationRuleModelMap.put(FIELD_ID_TYPE,rule); |
|
|
|
validationRuleModelMap.put(FIELD_ID_TYPE, rule); |
|
|
|
break; |
|
|
|
|
|
|
|
case FIELD_ID_NUMBER: |
|
|
|
//TODO Add Respective value when avialable in reciever info |
|
|
|
view.updateValueToWidgetIDNumber(""); |
|
|
|
view.updateValidationRuleToWidgetIDNumber(rule.isFieldRequired(), |
|
|
|
EditTextConfigurationFactory.getKeyboardTypeFromKeyword(rule.getKeyboardType(),rule.isLocalKeyboardAllowed(), |
|
|
|
EditTextConfigurationFactory.getKeyboardTypeFromKeyword(rule.getKeyboardType(), rule.isLocalKeyboardAllowed(), |
|
|
|
rule.getMaxFieldLengthInt())); |
|
|
|
validationRuleModelMap.put(FIELD_ID_NUMBER,rule); |
|
|
|
validationRuleModelMap.put(FIELD_ID_NUMBER, rule); |
|
|
|
break; |
|
|
|
|
|
|
|
case FIELD_FIRST_NAME: |
|
|
|
//TODO Add Respective value when avialable in reciever info |
|
|
|
view.updateValueToWidgetFirstName(""); |
|
|
|
view.updateValidationRuleToWidgetFirstName(rule.isFieldRequired(), |
|
|
|
EditTextConfigurationFactory.getKeyboardTypeFromKeyword(rule.getKeyboardType(),rule.isLocalKeyboardAllowed(), |
|
|
|
EditTextConfigurationFactory.getKeyboardTypeFromKeyword(rule.getKeyboardType(), rule.isLocalKeyboardAllowed(), |
|
|
|
rule.getMaxFieldLengthInt())); |
|
|
|
validationRuleModelMap.put(FIELD_FIRST_NAME,rule); |
|
|
|
validationRuleModelMap.put(FIELD_FIRST_NAME, rule); |
|
|
|
break; |
|
|
|
|
|
|
|
|
|
|
@ -108,9 +130,9 @@ public class RecipientDetailValidatorV3 { |
|
|
|
//TODO Add Respective value when avialable in reciever info |
|
|
|
view.updateValueToWidgetMiddleName(""); |
|
|
|
view.updateValidationRuleToWidgetMiddleName(rule.isFieldRequired(), |
|
|
|
EditTextConfigurationFactory.getKeyboardTypeFromKeyword(rule.getKeyboardType(),rule.isLocalKeyboardAllowed(), |
|
|
|
EditTextConfigurationFactory.getKeyboardTypeFromKeyword(rule.getKeyboardType(), rule.isLocalKeyboardAllowed(), |
|
|
|
rule.getMaxFieldLengthInt())); |
|
|
|
validationRuleModelMap.put(FIELD_MIDDLE_NAME,rule); |
|
|
|
validationRuleModelMap.put(FIELD_MIDDLE_NAME, rule); |
|
|
|
break; |
|
|
|
|
|
|
|
|
|
|
@ -118,146 +140,150 @@ public class RecipientDetailValidatorV3 { |
|
|
|
//TODO Add Respective value when avialable in reciever info |
|
|
|
view.updateValueToWidgetLastName(""); |
|
|
|
view.updateValidationRuleToWidgetLastName(rule.isFieldRequired(), |
|
|
|
EditTextConfigurationFactory.getKeyboardTypeFromKeyword(rule.getKeyboardType(),rule.isLocalKeyboardAllowed(), |
|
|
|
EditTextConfigurationFactory.getKeyboardTypeFromKeyword(rule.getKeyboardType(), rule.isLocalKeyboardAllowed(), |
|
|
|
rule.getMaxFieldLengthInt())); |
|
|
|
validationRuleModelMap.put(FIELD_LAST_NAME,rule); |
|
|
|
validationRuleModelMap.put(FIELD_LAST_NAME, rule); |
|
|
|
break; |
|
|
|
|
|
|
|
|
|
|
|
case FIELD_FULL_NAME: |
|
|
|
//TODO Add Respective value when avialable in reciever info |
|
|
|
mockTestinData(); |
|
|
|
if (recipientInfo.getFullName() != null && recipientInfo.getFullName().length() > 0) { |
|
|
|
rule.updateValidity(true); |
|
|
|
view.updateValueToWidgetFullName(recipientInfo.getFullName()); |
|
|
|
} |
|
|
|
else { |
|
|
|
rule.updateValidity(false); |
|
|
|
view.updateValueToWidgetFullName(""); |
|
|
|
} |
|
|
|
|
|
|
|
view.updateValidationRuleToWidgetFullName(rule.isFieldRequired(), |
|
|
|
EditTextConfigurationFactory.getKeyboardTypeFromKeyword(rule.getKeyboardType(),rule.isLocalKeyboardAllowed(), |
|
|
|
EditTextConfigurationFactory.getKeyboardTypeFromKeyword(rule.getKeyboardType(), rule.isLocalKeyboardAllowed(), |
|
|
|
rule.getMaxFieldLengthInt())); |
|
|
|
validationRuleModelMap.put(FIELD_FULL_NAME,rule); |
|
|
|
validationRuleModelMap.put(FIELD_FULL_NAME, rule); |
|
|
|
break; |
|
|
|
|
|
|
|
case FIELD_FIRST_NAME_IN_LOCAL: |
|
|
|
//TODO Add Respective value when avialable in reciever info |
|
|
|
view.updateValueToWidgetLocalFirstName(""); |
|
|
|
view.updateValidationRuleToWidgetLocalFirstName(rule.isFieldRequired(), |
|
|
|
EditTextConfigurationFactory.getKeyboardTypeFromKeyword(rule.getKeyboardType(),rule.isLocalKeyboardAllowed(), |
|
|
|
EditTextConfigurationFactory.getKeyboardTypeFromKeyword(rule.getKeyboardType(), rule.isLocalKeyboardAllowed(), |
|
|
|
rule.getMaxFieldLengthInt())); |
|
|
|
validationRuleModelMap.put(FIELD_FIRST_NAME_IN_LOCAL,rule); |
|
|
|
validationRuleModelMap.put(FIELD_FIRST_NAME_IN_LOCAL, rule); |
|
|
|
break; |
|
|
|
|
|
|
|
case FIELD_MIDDLE_NAME_IN_LOCAL: |
|
|
|
//TODO Add Respective value when avialable in reciever info |
|
|
|
view.updateValueToWidgetLocalMiddleName(""); |
|
|
|
view.updateValidationRuleToWidgetLocalMiddleName(rule.isFieldRequired(), |
|
|
|
EditTextConfigurationFactory.getKeyboardTypeFromKeyword(rule.getKeyboardType(),rule.isLocalKeyboardAllowed(), |
|
|
|
EditTextConfigurationFactory.getKeyboardTypeFromKeyword(rule.getKeyboardType(), rule.isLocalKeyboardAllowed(), |
|
|
|
rule.getMaxFieldLengthInt())); |
|
|
|
validationRuleModelMap.put(FIELD_MIDDLE_NAME_IN_LOCAL,rule); |
|
|
|
validationRuleModelMap.put(FIELD_MIDDLE_NAME_IN_LOCAL, rule); |
|
|
|
break; |
|
|
|
|
|
|
|
case FIELD_LAST_NAME_IN_LOCAL: |
|
|
|
//TODO Add Respective value when avialable in reciever info |
|
|
|
view.updateValueToWidgetLocalLastName(""); |
|
|
|
view.updateValidationRuleToWidgetLocalLastName(rule.isFieldRequired(), |
|
|
|
EditTextConfigurationFactory.getKeyboardTypeFromKeyword(rule.getKeyboardType(),rule.isLocalKeyboardAllowed(), |
|
|
|
EditTextConfigurationFactory.getKeyboardTypeFromKeyword(rule.getKeyboardType(), rule.isLocalKeyboardAllowed(), |
|
|
|
rule.getMaxFieldLengthInt())); |
|
|
|
validationRuleModelMap.put(FIELD_LAST_NAME_IN_LOCAL,rule); |
|
|
|
validationRuleModelMap.put(FIELD_LAST_NAME_IN_LOCAL, rule); |
|
|
|
break; |
|
|
|
|
|
|
|
case FIELD_LOCAL_NAME: |
|
|
|
//TODO Add Respective value when avialable in reciever info |
|
|
|
view.updateValueToWidgetLocalFullName(""); |
|
|
|
view.updateValidationRuleToWidgetLocalFullName(rule.isFieldRequired(), |
|
|
|
EditTextConfigurationFactory.getKeyboardTypeFromKeyword(rule.getKeyboardType(),rule.isLocalKeyboardAllowed(), |
|
|
|
EditTextConfigurationFactory.getKeyboardTypeFromKeyword(rule.getKeyboardType(), rule.isLocalKeyboardAllowed(), |
|
|
|
rule.getMaxFieldLengthInt())); |
|
|
|
validationRuleModelMap.put(FIELD_LOCAL_NAME,rule); |
|
|
|
validationRuleModelMap.put(FIELD_LOCAL_NAME, rule); |
|
|
|
break; |
|
|
|
|
|
|
|
case FIELD_MOBILE_NUMBER: |
|
|
|
//TODO Add Respective value when avialable in reciever info |
|
|
|
view.updateValueToWidgetMobileNumber(""); |
|
|
|
view.updateValidationRuleToWidgetMobileNumber(rule.isFieldRequired(), |
|
|
|
EditTextConfigurationFactory.getKeyboardTypeFromKeyword(rule.getKeyboardType(),rule.isLocalKeyboardAllowed(), |
|
|
|
EditTextConfigurationFactory.getKeyboardTypeFromKeyword(rule.getKeyboardType(), rule.isLocalKeyboardAllowed(), |
|
|
|
rule.getMaxFieldLengthInt())); |
|
|
|
validationRuleModelMap.put(FIELD_MOBILE_NUMBER,rule); |
|
|
|
validationRuleModelMap.put(FIELD_MOBILE_NUMBER, rule); |
|
|
|
break; |
|
|
|
|
|
|
|
case FIELD_PROVINCE: |
|
|
|
//TODO Add Respective value when avialable in reciever info |
|
|
|
view.updateValueToWidgetProvince(""); |
|
|
|
view.updateValidationRuleToWidgetProvince(rule.isFieldRequired(), |
|
|
|
EditTextConfigurationFactory.getKeyboardTypeFromKeyword(rule.getKeyboardType(),rule.isLocalKeyboardAllowed(), |
|
|
|
EditTextConfigurationFactory.getKeyboardTypeFromKeyword(rule.getKeyboardType(), rule.isLocalKeyboardAllowed(), |
|
|
|
rule.getMaxFieldLengthInt())); |
|
|
|
validationRuleModelMap.put(FIELD_PROVINCE,rule); |
|
|
|
validationRuleModelMap.put(FIELD_PROVINCE, rule); |
|
|
|
break; |
|
|
|
|
|
|
|
case FIELD_DISTRICT: |
|
|
|
//TODO Add Respective value when avialable in reciever info |
|
|
|
view.updateValueToWidgetDistrict(""); |
|
|
|
view.updateValidationRuleToWidgetDistrict(rule.isFieldRequired(), |
|
|
|
EditTextConfigurationFactory.getKeyboardTypeFromKeyword(rule.getKeyboardType(),rule.isLocalKeyboardAllowed(), |
|
|
|
EditTextConfigurationFactory.getKeyboardTypeFromKeyword(rule.getKeyboardType(), rule.isLocalKeyboardAllowed(), |
|
|
|
rule.getMaxFieldLengthInt())); |
|
|
|
validationRuleModelMap.put(FIELD_DISTRICT,rule); |
|
|
|
validationRuleModelMap.put(FIELD_DISTRICT, rule); |
|
|
|
break; |
|
|
|
|
|
|
|
case FIELD_CITY: |
|
|
|
//TODO Add Respective value when avialable in reciever info |
|
|
|
view.updateValueToWidgetCity(""); |
|
|
|
view.updateValidationRuleToWidgetCity(rule.isFieldRequired(), |
|
|
|
EditTextConfigurationFactory.getKeyboardTypeFromKeyword(rule.getKeyboardType(),rule.isLocalKeyboardAllowed(), |
|
|
|
EditTextConfigurationFactory.getKeyboardTypeFromKeyword(rule.getKeyboardType(), rule.isLocalKeyboardAllowed(), |
|
|
|
rule.getMaxFieldLengthInt())); |
|
|
|
validationRuleModelMap.put(FIELD_CITY,rule); |
|
|
|
validationRuleModelMap.put(FIELD_CITY, rule); |
|
|
|
break; |
|
|
|
|
|
|
|
case FIELD_ADDRESS: |
|
|
|
//TODO Add Respective value when avialable in reciever info |
|
|
|
view.updateValueToWidgetAddress(""); |
|
|
|
view.updateValidationRuleToWidgetAddress(rule.isFieldRequired(), |
|
|
|
EditTextConfigurationFactory.getKeyboardTypeFromKeyword(rule.getKeyboardType(),rule.isLocalKeyboardAllowed(), |
|
|
|
EditTextConfigurationFactory.getKeyboardTypeFromKeyword(rule.getKeyboardType(), rule.isLocalKeyboardAllowed(), |
|
|
|
rule.getMaxFieldLengthInt())); |
|
|
|
validationRuleModelMap.put(FIELD_ADDRESS,rule); |
|
|
|
validationRuleModelMap.put(FIELD_ADDRESS, rule); |
|
|
|
break; |
|
|
|
|
|
|
|
case FIELD_REALATION_GROUP: |
|
|
|
//TODO Add Respective value when avialable in reciever info |
|
|
|
view.updateValueToWidgetRelation(""); |
|
|
|
view.updateValidationRuleToWidgetRelation(rule.isFieldRequired(), |
|
|
|
EditTextConfigurationFactory.getKeyboardTypeFromKeyword(rule.getKeyboardType(),rule.isLocalKeyboardAllowed(), |
|
|
|
EditTextConfigurationFactory.getKeyboardTypeFromKeyword(rule.getKeyboardType(), rule.isLocalKeyboardAllowed(), |
|
|
|
rule.getMaxFieldLengthInt())); |
|
|
|
validationRuleModelMap.put(FIELD_REALATION_GROUP,rule); |
|
|
|
validationRuleModelMap.put(FIELD_REALATION_GROUP, rule); |
|
|
|
break; |
|
|
|
|
|
|
|
case FIELD_TRANSFER_REASON: |
|
|
|
//TODO Add Respective value when avialable in reciever info |
|
|
|
view.updateValueToWidgetTransferReason(""); |
|
|
|
view.updateValidationRuleToWidgetTransferReason(rule.isFieldRequired(), |
|
|
|
EditTextConfigurationFactory.getKeyboardTypeFromKeyword(rule.getKeyboardType(),rule.isLocalKeyboardAllowed(), |
|
|
|
EditTextConfigurationFactory.getKeyboardTypeFromKeyword(rule.getKeyboardType(), rule.isLocalKeyboardAllowed(), |
|
|
|
rule.getMaxFieldLengthInt())); |
|
|
|
validationRuleModelMap.put(FIELD_TRANSFER_REASON,rule); |
|
|
|
validationRuleModelMap.put(FIELD_TRANSFER_REASON, rule); |
|
|
|
break; |
|
|
|
|
|
|
|
case FIELD_EMAIL: |
|
|
|
//TODO Add Respective value when avialable in reciever info |
|
|
|
view.updateValueToWidgetTransferReason(""); |
|
|
|
view.updateValidationRuleToWidgetTransferReason(rule.isFieldRequired(), |
|
|
|
EditTextConfigurationFactory.getKeyboardTypeFromKeyword(rule.getKeyboardType(),rule.isLocalKeyboardAllowed(), |
|
|
|
EditTextConfigurationFactory.getKeyboardTypeFromKeyword(rule.getKeyboardType(), rule.isLocalKeyboardAllowed(), |
|
|
|
rule.getMaxFieldLengthInt())); |
|
|
|
validationRuleModelMap.put(FIELD_EMAIL,rule); |
|
|
|
validationRuleModelMap.put(FIELD_EMAIL, rule); |
|
|
|
break; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public void validateLocalName(String fullName) |
|
|
|
{ |
|
|
|
ValidationRuleModel validationRuleModel=validationRuleModelMap.get(FIELD_LOCAL_NAME); |
|
|
|
if(validationRuleModel!=null) { |
|
|
|
String error=validationRuleModel.validateValueAndReturnErrorMessageOnFail(fullName); |
|
|
|
if(error==null) { |
|
|
|
public void validateLocalFullName(String fullName) { |
|
|
|
ValidationRuleModel validationRuleModel = validationRuleModelMap.get(FIELD_LOCAL_NAME); |
|
|
|
if (validationRuleModel != null) { |
|
|
|
String error = validationRuleModel.validateValueAndReturnErrorMessageOnFail(fullName); |
|
|
|
if (error == null) { |
|
|
|
recipientInfo.setName(fullName); |
|
|
|
view.setErrorOnWidgetFullName(null); |
|
|
|
validateAll(); |
|
|
|
} |
|
|
|
else { |
|
|
|
} else { |
|
|
|
//Current implmentation will override existing information data |
|
|
|
recipientInfo.setName(""); |
|
|
|
view.setErrorOnWidgetFullName(error); |
|
|
@ -266,52 +292,57 @@ public class RecipientDetailValidatorV3 { |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
private boolean validateAll() { |
|
|
|
private void validateAll() { |
|
|
|
|
|
|
|
boolean areAllFormValid=true; |
|
|
|
boolean areAllFormValid = true; |
|
|
|
|
|
|
|
Iterator it = validationRuleModelMap.entrySet().iterator(); |
|
|
|
while (it.hasNext()) { |
|
|
|
Map.Entry<String,ValidationRuleModel> pair = (Map.Entry)it.next(); |
|
|
|
if(!pair.getValue().hasValidValue()) |
|
|
|
{ |
|
|
|
areAllFormValid=false; |
|
|
|
break; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
view.setSubmitButtonEnabled(areAllFormValid); |
|
|
|
|
|
|
|
return areAllFormValid; |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
* |
|
|
|
public static final String FIELD_BANK_NAME="Bank Name"; |
|
|
|
public static final String FIELD_BRANCH_NAME="Branch Name"; |
|
|
|
public static final String FIELD_ACCOUNT_NO="Account No."; |
|
|
|
public static final String FIELD_ID_TYPE="Id Type"; |
|
|
|
public static final String FIELD_ID_NUMBER="ID Number"; |
|
|
|
public static final String FIELD_FIRST_NAME="First Name"; |
|
|
|
public static final String FIELD_MIDDLE_NAME="Middle Name"; |
|
|
|
public static final String FIELD_LAST_NAME="Last Name"; |
|
|
|
public static final String FIELD_FULL_NAME="Full Name"; |
|
|
|
public static final String FIELD_FIRST_NAME_IN_LOCAL="First Name in Local"; |
|
|
|
public static final String FIELD_MIDDLE_NAME_IN_LOCAL="Middle Name in Local"; |
|
|
|
public static final String FIELD_LAST_NAME_IN_LOCAL="Last Name in Local"; |
|
|
|
public static final String FIELD_LOCAL_NAME="Local Name"; |
|
|
|
public static final String FIELD_MOBILE_NUMBER="Mobile Number"; |
|
|
|
public static final String FIELD_PROVINCE="Province"; |
|
|
|
public static final String FIELD_DISTRICT="District"; |
|
|
|
public static final String FIELD_CITY="City"; |
|
|
|
public static final String FIELD_ADDRESS="Address"; |
|
|
|
public static final String FIELD_REALATION_GROUP="Realation Group"; |
|
|
|
public static final String FIELD_TRANSFER_REASON="Transfer Reason"; |
|
|
|
|
|
|
|
* public static final String FIELD_BANK_NAME="Bank Name"; |
|
|
|
* public static final String FIELD_BRANCH_NAME="Branch Name"; |
|
|
|
* public static final String FIELD_ACCOUNT_NO="Account No."; |
|
|
|
* public static final String FIELD_ID_TYPE="Id Type"; |
|
|
|
* public static final String FIELD_ID_NUMBER="ID Number"; |
|
|
|
* public static final String FIELD_FIRST_NAME="First Name"; |
|
|
|
* public static final String FIELD_MIDDLE_NAME="Middle Name"; |
|
|
|
* public static final String FIELD_LAST_NAME="Last Name"; |
|
|
|
* public static final String FIELD_FULL_NAME="Full Name"; |
|
|
|
* public static final String FIELD_FIRST_NAME_IN_LOCAL="First Name in Local"; |
|
|
|
* public static final String FIELD_MIDDLE_NAME_IN_LOCAL="Middle Name in Local"; |
|
|
|
* public static final String FIELD_LAST_NAME_IN_LOCAL="Last Name in Local"; |
|
|
|
* public static final String FIELD_LOCAL_NAME="Local Name"; |
|
|
|
* public static final String FIELD_MOBILE_NUMBER="Mobile Number"; |
|
|
|
* public static final String FIELD_PROVINCE="Province"; |
|
|
|
* public static final String FIELD_DISTRICT="District"; |
|
|
|
* public static final String FIELD_CITY="City"; |
|
|
|
* public static final String FIELD_ADDRESS="Address"; |
|
|
|
* public static final String FIELD_REALATION_GROUP="Realation Group"; |
|
|
|
* public static final String FIELD_TRANSFER_REASON="Transfer Reason"; |
|
|
|
*/ |
|
|
|
|
|
|
|
public void validateAccountNo(String text) { |
|
|
|
ValidationRuleModel validationRuleModel=validationRuleModelMap.get(FIELD_ACCOUNT_NO); |
|
|
|
if(validationRuleModel!=null) { |
|
|
|
String error=validationRuleModel.validateValueAndReturnErrorMessageOnFail(text); |
|
|
|
if(error==null) { |
|
|
|
ValidationRuleModel validationRuleModel = validationRuleModelMap.get(FIELD_ACCOUNT_NO); |
|
|
|
if (validationRuleModel != null) { |
|
|
|
String error = validationRuleModel.validateValueAndReturnErrorMessageOnFail(text); |
|
|
|
if (error == null) { |
|
|
|
recipientInfo.setName(text); |
|
|
|
view.setErrorOnWidgetAccountNo(null); |
|
|
|
validateAll(); |
|
|
|
} |
|
|
|
else { |
|
|
|
} else { |
|
|
|
//TODO update recipientInfo if required |
|
|
|
recipientInfo.setName(""); |
|
|
|
view.setErrorOnWidgetAccountNo(error); |
|
|
@ -321,15 +352,14 @@ public class RecipientDetailValidatorV3 { |
|
|
|
|
|
|
|
public void validateFirstName(String text) { |
|
|
|
|
|
|
|
ValidationRuleModel validationRuleModel=validationRuleModelMap.get(FIELD_ACCOUNT_NO); |
|
|
|
if(validationRuleModel!=null) { |
|
|
|
String error=validationRuleModel.validateValueAndReturnErrorMessageOnFail(text); |
|
|
|
if(error==null) { |
|
|
|
ValidationRuleModel validationRuleModel = validationRuleModelMap.get(FIELD_ACCOUNT_NO); |
|
|
|
if (validationRuleModel != null) { |
|
|
|
String error = validationRuleModel.validateValueAndReturnErrorMessageOnFail(text); |
|
|
|
if (error == null) { |
|
|
|
recipientInfo.setName(text); |
|
|
|
view.setErrorOnWidgetFirstName(null); |
|
|
|
validateAll(); |
|
|
|
} |
|
|
|
else { |
|
|
|
} else { |
|
|
|
//TODO update recipientInfo if required |
|
|
|
recipientInfo.setName(""); |
|
|
|
view.setErrorOnWidgetFirstName(error); |
|
|
@ -338,15 +368,14 @@ public class RecipientDetailValidatorV3 { |
|
|
|
} |
|
|
|
|
|
|
|
public void validateMiddleName(String text) { |
|
|
|
ValidationRuleModel validationRuleModel=validationRuleModelMap.get(FIELD_MIDDLE_NAME); |
|
|
|
if(validationRuleModel!=null) { |
|
|
|
String error=validationRuleModel.validateValueAndReturnErrorMessageOnFail(text); |
|
|
|
if(error==null) { |
|
|
|
ValidationRuleModel validationRuleModel = validationRuleModelMap.get(FIELD_MIDDLE_NAME); |
|
|
|
if (validationRuleModel != null) { |
|
|
|
String error = validationRuleModel.validateValueAndReturnErrorMessageOnFail(text); |
|
|
|
if (error == null) { |
|
|
|
recipientInfo.setName(text); |
|
|
|
view.setErrorOnWidgetMiddleName(null); |
|
|
|
validateAll(); |
|
|
|
} |
|
|
|
else { |
|
|
|
} else { |
|
|
|
//TODO update recipientInfo if required |
|
|
|
recipientInfo.setName(""); |
|
|
|
view.setErrorOnWidgetMiddleName(error); |
|
|
@ -355,15 +384,14 @@ public class RecipientDetailValidatorV3 { |
|
|
|
} |
|
|
|
|
|
|
|
public void validateLastName(String text) { |
|
|
|
ValidationRuleModel validationRuleModel=validationRuleModelMap.get(FIELD_LAST_NAME); |
|
|
|
if(validationRuleModel!=null) { |
|
|
|
String error=validationRuleModel.validateValueAndReturnErrorMessageOnFail(text); |
|
|
|
if(error==null) { |
|
|
|
ValidationRuleModel validationRuleModel = validationRuleModelMap.get(FIELD_LAST_NAME); |
|
|
|
if (validationRuleModel != null) { |
|
|
|
String error = validationRuleModel.validateValueAndReturnErrorMessageOnFail(text); |
|
|
|
if (error == null) { |
|
|
|
recipientInfo.setName(text); |
|
|
|
view.setErrorOnWidgetLastName(null); |
|
|
|
validateAll(); |
|
|
|
} |
|
|
|
else { |
|
|
|
} else { |
|
|
|
//TODO update recipientInfo if required |
|
|
|
recipientInfo.setName(""); |
|
|
|
view.setErrorOnWidgetLastName(error); |
|
|
@ -373,15 +401,14 @@ public class RecipientDetailValidatorV3 { |
|
|
|
|
|
|
|
public void validateCity(String text) { |
|
|
|
|
|
|
|
ValidationRuleModel validationRuleModel=validationRuleModelMap.get(FIELD_CITY); |
|
|
|
if(validationRuleModel!=null) { |
|
|
|
String error=validationRuleModel.validateValueAndReturnErrorMessageOnFail(text); |
|
|
|
if(error==null) { |
|
|
|
ValidationRuleModel validationRuleModel = validationRuleModelMap.get(FIELD_CITY); |
|
|
|
if (validationRuleModel != null) { |
|
|
|
String error = validationRuleModel.validateValueAndReturnErrorMessageOnFail(text); |
|
|
|
if (error == null) { |
|
|
|
recipientInfo.setName(text); |
|
|
|
view.setErrorOnWidgetCity(null); |
|
|
|
validateAll(); |
|
|
|
} |
|
|
|
else { |
|
|
|
} else { |
|
|
|
//TODO update recipientInfo if required |
|
|
|
recipientInfo.setName(""); |
|
|
|
view.setErrorOnWidgetCity(error); |
|
|
@ -391,15 +418,14 @@ public class RecipientDetailValidatorV3 { |
|
|
|
|
|
|
|
public void validateAddress(String text) { |
|
|
|
|
|
|
|
ValidationRuleModel validationRuleModel=validationRuleModelMap.get(FIELD_ADDRESS); |
|
|
|
if(validationRuleModel!=null) { |
|
|
|
String error=validationRuleModel.validateValueAndReturnErrorMessageOnFail(text); |
|
|
|
if(error==null) { |
|
|
|
ValidationRuleModel validationRuleModel = validationRuleModelMap.get(FIELD_ADDRESS); |
|
|
|
if (validationRuleModel != null) { |
|
|
|
String error = validationRuleModel.validateValueAndReturnErrorMessageOnFail(text); |
|
|
|
if (error == null) { |
|
|
|
recipientInfo.setName(text); |
|
|
|
view.setErrorOnWidgetAddress(null); |
|
|
|
validateAll(); |
|
|
|
} |
|
|
|
else { |
|
|
|
} else { |
|
|
|
//TODO update recipientInfo if required |
|
|
|
recipientInfo.setName(""); |
|
|
|
view.setErrorOnWidgetAddress(error); |
|
|
@ -409,15 +435,14 @@ public class RecipientDetailValidatorV3 { |
|
|
|
|
|
|
|
public void validateMobileNumber(String text) { |
|
|
|
|
|
|
|
ValidationRuleModel validationRuleModel=validationRuleModelMap.get(FIELD_MOBILE_NUMBER); |
|
|
|
if(validationRuleModel!=null) { |
|
|
|
String error=validationRuleModel.validateValueAndReturnErrorMessageOnFail(text); |
|
|
|
if(error==null) { |
|
|
|
ValidationRuleModel validationRuleModel = validationRuleModelMap.get(FIELD_MOBILE_NUMBER); |
|
|
|
if (validationRuleModel != null) { |
|
|
|
String error = validationRuleModel.validateValueAndReturnErrorMessageOnFail(text); |
|
|
|
if (error == null) { |
|
|
|
recipientInfo.setName(text); |
|
|
|
view.setErrorOnWidgetMobileNumber(null); |
|
|
|
validateAll(); |
|
|
|
} |
|
|
|
else { |
|
|
|
} else { |
|
|
|
//TODO update recipientInfo if required |
|
|
|
recipientInfo.setName(""); |
|
|
|
view.setErrorOnWidgetMobileNumber(error); |
|
|
@ -427,15 +452,14 @@ public class RecipientDetailValidatorV3 { |
|
|
|
|
|
|
|
public void validateEmail(String text) { |
|
|
|
|
|
|
|
ValidationRuleModel validationRuleModel=validationRuleModelMap.get(FIELD_EMAIL); |
|
|
|
if(validationRuleModel!=null) { |
|
|
|
String error=validationRuleModel.validateValueAndReturnErrorMessageOnFail(text); |
|
|
|
if(error==null) { |
|
|
|
ValidationRuleModel validationRuleModel = validationRuleModelMap.get(FIELD_EMAIL); |
|
|
|
if (validationRuleModel != null) { |
|
|
|
String error = validationRuleModel.validateValueAndReturnErrorMessageOnFail(text); |
|
|
|
if (error == null) { |
|
|
|
recipientInfo.setName(text); |
|
|
|
view.setErrorOnWidgetEmail(null); |
|
|
|
validateAll(); |
|
|
|
} |
|
|
|
else { |
|
|
|
} else { |
|
|
|
//TODO update recipientInfo if required |
|
|
|
recipientInfo.setName(""); |
|
|
|
view.setErrorOnWidgetEmail(error); |
|
|
@ -445,15 +469,14 @@ public class RecipientDetailValidatorV3 { |
|
|
|
|
|
|
|
public void validateIdNumber(String text) { |
|
|
|
|
|
|
|
ValidationRuleModel validationRuleModel=validationRuleModelMap.get(FIELD_ID_NUMBER); |
|
|
|
if(validationRuleModel!=null) { |
|
|
|
String error=validationRuleModel.validateValueAndReturnErrorMessageOnFail(text); |
|
|
|
if(error==null) { |
|
|
|
ValidationRuleModel validationRuleModel = validationRuleModelMap.get(FIELD_ID_NUMBER); |
|
|
|
if (validationRuleModel != null) { |
|
|
|
String error = validationRuleModel.validateValueAndReturnErrorMessageOnFail(text); |
|
|
|
if (error == null) { |
|
|
|
recipientInfo.setName(text); |
|
|
|
view.setErrorOnWidgetIDNumber(null); |
|
|
|
validateAll(); |
|
|
|
} |
|
|
|
else { |
|
|
|
} else { |
|
|
|
//TODO update recipientInfo if required |
|
|
|
recipientInfo.setName(""); |
|
|
|
view.setErrorOnWidgetIDNumber(error); |
|
|
@ -463,15 +486,14 @@ public class RecipientDetailValidatorV3 { |
|
|
|
|
|
|
|
public void validateFirstNameLocal(String text) { |
|
|
|
|
|
|
|
ValidationRuleModel validationRuleModel=validationRuleModelMap.get(FIELD_FIRST_NAME_IN_LOCAL); |
|
|
|
if(validationRuleModel!=null) { |
|
|
|
String error=validationRuleModel.validateValueAndReturnErrorMessageOnFail(text); |
|
|
|
if(error==null) { |
|
|
|
ValidationRuleModel validationRuleModel = validationRuleModelMap.get(FIELD_FIRST_NAME_IN_LOCAL); |
|
|
|
if (validationRuleModel != null) { |
|
|
|
String error = validationRuleModel.validateValueAndReturnErrorMessageOnFail(text); |
|
|
|
if (error == null) { |
|
|
|
recipientInfo.setName(text); |
|
|
|
view.setErrorOnWidgetLocalFirstName(null); |
|
|
|
validateAll(); |
|
|
|
} |
|
|
|
else { |
|
|
|
} else { |
|
|
|
//TODO update recipientInfo if required |
|
|
|
recipientInfo.setName(""); |
|
|
|
view.setErrorOnWidgetLocalFirstName(error); |
|
|
@ -481,15 +503,14 @@ public class RecipientDetailValidatorV3 { |
|
|
|
|
|
|
|
public void validateMiddleNameLocal(String text) { |
|
|
|
|
|
|
|
ValidationRuleModel validationRuleModel=validationRuleModelMap.get(FIELD_MIDDLE_NAME_IN_LOCAL); |
|
|
|
if(validationRuleModel!=null) { |
|
|
|
String error=validationRuleModel.validateValueAndReturnErrorMessageOnFail(text); |
|
|
|
if(error==null) { |
|
|
|
ValidationRuleModel validationRuleModel = validationRuleModelMap.get(FIELD_MIDDLE_NAME_IN_LOCAL); |
|
|
|
if (validationRuleModel != null) { |
|
|
|
String error = validationRuleModel.validateValueAndReturnErrorMessageOnFail(text); |
|
|
|
if (error == null) { |
|
|
|
recipientInfo.setName(text); |
|
|
|
view.setErrorOnWidgetLocalMiddleName(null); |
|
|
|
validateAll(); |
|
|
|
} |
|
|
|
else { |
|
|
|
} else { |
|
|
|
//TODO update recipientInfo if required |
|
|
|
recipientInfo.setName(""); |
|
|
|
view.setErrorOnWidgetLocalMiddleName(error); |
|
|
@ -499,19 +520,39 @@ public class RecipientDetailValidatorV3 { |
|
|
|
|
|
|
|
public void validateLastNameLocal(String text) { |
|
|
|
|
|
|
|
ValidationRuleModel validationRuleModel=validationRuleModelMap.get(FIELD_LAST_NAME_IN_LOCAL); |
|
|
|
if(validationRuleModel!=null) { |
|
|
|
String error=validationRuleModel.validateValueAndReturnErrorMessageOnFail(text); |
|
|
|
if(error==null) { |
|
|
|
ValidationRuleModel validationRuleModel = validationRuleModelMap.get(FIELD_LAST_NAME_IN_LOCAL); |
|
|
|
if (validationRuleModel != null) { |
|
|
|
String error = validationRuleModel.validateValueAndReturnErrorMessageOnFail(text); |
|
|
|
if (error == null) { |
|
|
|
recipientInfo.setName(text); |
|
|
|
view.setErrorOnWidgetLocalLastName(null); |
|
|
|
validateAll(); |
|
|
|
} |
|
|
|
else { |
|
|
|
} else { |
|
|
|
//TODO update recipientInfo if required |
|
|
|
recipientInfo.setName(""); |
|
|
|
view.setErrorOnWidgetLocalLastName(error); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
public void validateFullName(String text) { |
|
|
|
Log.d(RecipientAddEditV3Activity.TAG,"Full name validation called"); |
|
|
|
ValidationRuleModel validationRuleModel = validationRuleModelMap.get(FIELD_FULL_NAME); |
|
|
|
if (validationRuleModel != null) { |
|
|
|
String error = validationRuleModel.validateValueAndReturnErrorMessageOnFail(text); |
|
|
|
Log.d(RecipientAddEditV3Activity.TAG,"Full name validation result :"+error); |
|
|
|
if (error == null) { |
|
|
|
validationRuleModel.updateValidity(true); |
|
|
|
recipientInfo.setName(text); |
|
|
|
view.setErrorOnWidgetFullName(null); |
|
|
|
validateAll(); |
|
|
|
} else { |
|
|
|
//TODO update recipientInfo if required |
|
|
|
validationRuleModel.updateValidity(false); |
|
|
|
view.setSubmitButtonEnabled(false); |
|
|
|
recipientInfo.setName(""); |
|
|
|
view.setErrorOnWidgetFullName(error); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |