Убрал дубликат EndDtAfterStartDt.
This commit is contained in:
parent
09c0ab342b
commit
21db7fb5bd
4 changed files with 21 additions and 59 deletions
|
|
@ -6,6 +6,7 @@ import ru.spcex.clearing.platform.messaging.domain.cud.common.CommonDeleteReques
|
|||
import ru.spcex.clearing.platform.messaging.domain.cud.securitites.*;
|
||||
import ru.spcex.clearing.securities.errors.SecuritiesError;
|
||||
import ru.spcex.clearing.securities.validation.rule.*;
|
||||
import ru.spcex.clearing.validation.common.rules.EndDtAfterStartDtRule;
|
||||
import ru.spcex.platform.classes.base.SpcexObjectBase;
|
||||
import ru.spcex.platform.imdg.api.Imdg;
|
||||
import ru.spcex.platform.imdg.api.ImdgProvider;
|
||||
|
|
@ -58,7 +59,11 @@ public class ValidationProvider {
|
|||
context.addImdg(IMDGDistributedNames.Map_TermTypeDictionary, termTypeDictionaryImdg);
|
||||
context.addImdg(IMDGDistributedNames.Map_CurrencyCodeDictionary, currencyCodeDictionaryImdg);
|
||||
return new ValidatorImpl<>(context,
|
||||
EndDtAfterStartDt.instance(MoneyMarketSecurityNewRequest.class),
|
||||
EndDtAfterStartDtRule.instance("startDate", "endDate",
|
||||
MoneyMarketSecurityNewRequest::getStartDate,
|
||||
MoneyMarketSecurityNewRequest::getEndDate,
|
||||
SecuritiesError.RequiredFieldIsEmpty,
|
||||
SecuritiesError.WrongFieldValue),
|
||||
new NotPresentBySecuritySymbolAndWorkflowStatusActv(IMDGDistributedNames.Map_MoneyMarketSecurity, SecuritiesError.InstrumentAlreadyExists, MoneyMarketSecurityNewRequest.class),
|
||||
new IsValidInstrumentTypeFromRequest(SecuritiesError.RequiredFieldIsEmpty, "RATE"),
|
||||
MmsNewValidationRule.RequiredFieldIsNotEmpty,
|
||||
|
|
@ -82,7 +87,11 @@ public class ValidationProvider {
|
|||
context.addImdg(IMDGDistributedNames.Map_TermTypeDictionary, termTypeDictionaryImdg);
|
||||
context.addImdg(IMDGDistributedNames.Map_CurrencyCodeDictionary, currencyCodeDictionaryImdg);
|
||||
return new ValidatorImpl<>(context,
|
||||
EndDtAfterStartDt.instance(MoneyMarketSecurityUpdateRequest.class),
|
||||
EndDtAfterStartDtRule.instance("startDate", "endDate",
|
||||
MoneyMarketSecurityUpdateRequest::getStartDate,
|
||||
MoneyMarketSecurityUpdateRequest::getEndDate,
|
||||
SecuritiesError.RequiredFieldIsEmpty,
|
||||
SecuritiesError.WrongFieldValue),
|
||||
new PresentById(IMDGDistributedNames.Map_MoneyMarketSecurity, SecuritiesError.InstrumentNotFound, true),
|
||||
new IsValidInstrumentTypeById(SecuritiesError.InstrumentNotFound, "RATE"),
|
||||
new WorkflowStatusActv(),
|
||||
|
|
@ -250,6 +259,11 @@ public class ValidationProvider {
|
|||
context.setValidatedObject(currencyRequest);
|
||||
context.addImdg(IMDGDistributedNames.Map_CouponPeriod, couponPeriodImdg);
|
||||
return new ValidatorImpl<>(context,
|
||||
EndDtAfterStartDtRule.instance("periodStartDate", "periodEndDate",
|
||||
CouponPeriodNewRequest::getPeriodStartDate,
|
||||
CouponPeriodNewRequest::getPeriodEndDate,
|
||||
SecuritiesError.RequiredFieldIsEmpty,
|
||||
SecuritiesError.WrongFieldValue, false),
|
||||
CouponPeriodNewValidationRule.CouponPeriodNotExists
|
||||
);
|
||||
};
|
||||
|
|
@ -261,6 +275,11 @@ public class ValidationProvider {
|
|||
context.setValidatedObject(currencyRequest);
|
||||
context.addImdg(IMDGDistributedNames.Map_CouponPeriod, couponPeriodImdg);
|
||||
return new ValidatorImpl<>(context,
|
||||
EndDtAfterStartDtRule.instance("periodStartDate", "periodEndDate",
|
||||
CouponPeriodUpdateRequest::getPeriodStartDate,
|
||||
CouponPeriodUpdateRequest::getPeriodEndDate,
|
||||
SecuritiesError.RequiredFieldIsEmpty,
|
||||
SecuritiesError.WrongFieldValue, false),
|
||||
CouponPeriodUpdateValidationRule.CouponPeriodExists
|
||||
);
|
||||
};
|
||||
|
|
|
|||
|
|
@ -26,17 +26,6 @@ public enum CouponPeriodNewValidationRule implements IValidationRule<ImdgValidat
|
|||
if (couponPeriod != null) {
|
||||
return of(SecuritiesError.CouponPeriodAlreadyExists, "securityId");
|
||||
}
|
||||
if (action.getPeriodEndDate() == null && action.getPeriodStartDate() == null) {
|
||||
return of(SecuritiesError.RequiredFieldIsEmpty, "periodEndDate", "periodStartDate");
|
||||
}
|
||||
if (action.getPeriodEndDate() == null || action.getPeriodStartDate() == null) {
|
||||
if (action.getPeriodStartDate() == null)
|
||||
return of(SecuritiesError.RequiredFieldIsEmpty, "periodStartDate");
|
||||
return of(SecuritiesError.RequiredFieldIsEmpty, "periodEndDate");
|
||||
}
|
||||
if (action.getPeriodEndDate().isBefore(action.getPeriodStartDate())) {
|
||||
return of(SecuritiesError.WrongFieldValue, "periodEndDate", "periodStartDate");
|
||||
}
|
||||
return empty();
|
||||
}
|
||||
};
|
||||
|
|
|
|||
|
|
@ -26,17 +26,6 @@ public enum CouponPeriodUpdateValidationRule implements IValidationRule<ImdgVali
|
|||
if (currency == null) {
|
||||
return of(SecuritiesError.CouponPeriodNotFound, "securityId");
|
||||
}
|
||||
if (action.getPeriodEndDate() == null && action.getPeriodStartDate() == null) {
|
||||
return of(SecuritiesError.RequiredFieldIsEmpty, "periodEndDate", "periodStartDate");
|
||||
}
|
||||
if (action.getPeriodEndDate() == null || action.getPeriodStartDate() == null) {
|
||||
if (action.getPeriodStartDate() == null)
|
||||
return of(SecuritiesError.RequiredFieldIsEmpty, "periodStartDate");
|
||||
return of(SecuritiesError.RequiredFieldIsEmpty, "periodEndDate");
|
||||
}
|
||||
if (action.getPeriodEndDate().isBefore(action.getPeriodStartDate())) {
|
||||
return of(SecuritiesError.WrongFieldValue, "periodEndDate", "periodStartDate");
|
||||
}
|
||||
return empty();
|
||||
}
|
||||
};
|
||||
|
|
|
|||
|
|
@ -1,35 +0,0 @@
|
|||
package ru.spcex.clearing.securities.validation.rule;
|
||||
|
||||
import ru.spcex.clearing.securities.errors.SecuritiesError;
|
||||
import ru.spcex.platform.classes.base.interfaces.WithEndDt;
|
||||
import ru.spcex.platform.classes.base.interfaces.WithStartDt;
|
||||
import ru.spcex.platform.imdg.validation.ImdgValidationContext;
|
||||
import ru.spcex.platform.utils.enumeration.EnumMessage;
|
||||
import ru.spcex.platform.utils.validation.IValidationRule;
|
||||
|
||||
import java.util.Optional;
|
||||
|
||||
public class EndDtAfterStartDt<T extends WithStartDt & WithEndDt> implements IValidationRule<ImdgValidationContext<T>> {
|
||||
|
||||
public EndDtAfterStartDt() {}
|
||||
|
||||
public static <T1 extends WithStartDt & WithEndDt> EndDtAfterStartDt<T1> instance(Class<T1> clazz) {
|
||||
return new EndDtAfterStartDt<>();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Optional<EnumMessage> validate(ImdgValidationContext<T> context) {
|
||||
T validatedObject = context.getValidatedObject();
|
||||
if(validatedObject.getEndDate() == null && validatedObject.getStartDate() == null) {
|
||||
return of(SecuritiesError.RequiredFieldIsEmpty, "endDate", "startDate");
|
||||
}
|
||||
if(validatedObject.getEndDate() == null || validatedObject.getStartDate() == null){
|
||||
if(validatedObject.getStartDate() == null) return of(SecuritiesError.RequiredFieldIsEmpty, "startDate");
|
||||
return of(SecuritiesError.RequiredFieldIsEmpty, "endDate");
|
||||
}
|
||||
if (validatedObject.getEndDate().isBefore(validatedObject.getStartDate())) {
|
||||
return of(SecuritiesError.WrongFieldValue, "endDate");
|
||||
}
|
||||
return empty();
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Reference in a new issue