فهرست منبع

Validation of when married

Andrew Grant 4 ماه پیش
والد
کامیت
5e5bd7b758

+ 1 - 0
src/main/java/scot/carricksoftware/grants/constants/ValidationConstants.java

@@ -77,6 +77,7 @@ public class ValidationConstants {
     public static final String WHEN_BORN_INCORRECT_FORMAT = "The format should be dd/MM/yyyy hh:mm.";
     public static final String WHEN_BORN_IS_NULL = "When born cannot be null.";
     public static final String WHEN_MARRIED_IS_NULL = "When married cannot be null.";
+    public static final String WHEN_MARRIED_INCORRECT_FORMAT = "The format should be dd/MM/yyyy.";
     public static final String WHEN_DIED_IS_NULL = "When died cannot be null.";
     public static final String WHEN_REGISTERED_DATE_IN_FUTURE = "Date should not be in the future.";
     public static final String WHEN_REGISTERED_DATE_IS_INVALID = "When registered date is invalid.";

+ 12 - 3
src/main/java/scot/carricksoftware/grants/validators/certificates/marriagecertificate/MarriageCertificateNullFieldsValidatorImpl.java

@@ -11,6 +11,7 @@ import org.springframework.stereotype.Component;
 import org.springframework.validation.BindingResult;
 import scot.carricksoftware.grants.commands.certificates.marriagecertificates.MarriageCertificateCommand;
 import scot.carricksoftware.grants.constants.ValidationConstants;
+import scot.carricksoftware.grants.validators.helpers.ValidateDateTypes;
 import scot.carricksoftware.grants.validators.helpers.ValidateTypesImpl;
 
 @Component
@@ -19,13 +20,16 @@ public class MarriageCertificateNullFieldsValidatorImpl implements MarriageCerti
     private static final Logger logger = LogManager.getLogger(MarriageCertificateNullFieldsValidatorImpl.class);
 
     private final ValidateTypesImpl validateTypes;
+    private final ValidateDateTypes validateDateTypes;
 
-    public MarriageCertificateNullFieldsValidatorImpl(ValidateTypesImpl validateTypes) {
+    public MarriageCertificateNullFieldsValidatorImpl(ValidateTypesImpl validateTypes, ValidateDateTypes validateDateTypes) {
         this.validateTypes = validateTypes;
+        this.validateDateTypes = validateDateTypes;
     }
 
     @Override
     public void validate(MarriageCertificateCommand marriageCertificateCommand, BindingResult bindingResult) {
+        validateGroom(marriageCertificateCommand, bindingResult);
         validateGroom(marriageCertificateCommand, bindingResult);
         validateBride(marriageCertificateCommand, bindingResult);
         validateBrideCondition(marriageCertificateCommand, bindingResult);
@@ -40,10 +44,15 @@ public class MarriageCertificateNullFieldsValidatorImpl implements MarriageCerti
     }
 
     private void validateWhenMarried(MarriageCertificateCommand marriageCertificateCommand, BindingResult bindingResult) {
-        logger.debug("MarriageCertificateNullFieldsValidator::validateWhenDied");
-        validateTypes.validateNullOrEmptyString(marriageCertificateCommand.getWhenMarried(), "whenMarried", ValidationConstants.WHEN_MARRIED_IS_NULL, bindingResult);
+        logger.debug("MarriageCertificateNullFieldsValidator::validateWhenMarried");
+        validateDateTypes.validatePastDate(marriageCertificateCommand.getWhenMarried(), "whenMarried",
+                ValidationConstants.WHEN_MARRIED_IS_NULL,
+                ValidationConstants.WHEN_MARRIED_INCORRECT_FORMAT,
+                ValidationConstants.DATE_IN_FUTURE,
+                bindingResult);
     }
 
+
     private void validateGroom(MarriageCertificateCommand marriageCertificateCommand, BindingResult bindingResult) {
         logger.debug("MarriageCertificateNullFieldsValidator::validateGroom");
         validateTypes.validatePerson(marriageCertificateCommand.getGroom(), "groom", ValidationConstants.GROOM_IS_NULL, bindingResult);