RED-7677 - dossier-template endpoint should return a 400 if validFrom > validTo

This commit is contained in:
Andrei Isvoran 2023-11-01 11:22:32 +02:00
parent 4c5dd8d938
commit 01f92075bd

View File

@ -39,6 +39,7 @@ public class DossierTemplatePersistenceService {
public DossierTemplateEntity createOrUpdateDossierTemplate(CreateOrUpdateDossierTemplateRequest createOrUpdateDossierRequest) {
if (createOrUpdateDossierRequest.getDossierTemplateId() != null) {
validateDossierTemplateDates(createOrUpdateDossierRequest.getValidFrom(), createOrUpdateDossierRequest.getValidTo());
validateDossierTemplate(createOrUpdateDossierRequest.getName(), createOrUpdateDossierRequest.getDescription());
Optional<DossierTemplateEntity> dossierTemplate = dossierTemplateRepository.findById(createOrUpdateDossierRequest.getDossierTemplateId());
if (dossierTemplate.isPresent()) {
@ -77,6 +78,15 @@ public class DossierTemplatePersistenceService {
}
private void validateDossierTemplateDates(OffsetDateTime validFrom, OffsetDateTime validTo) {
if (validFrom != null && validTo != null && validFrom.isAfter(validTo)) {
throw new BadRequestException("Invalid dates! validFrom can't be after validTo.");
}
}
public void validateDossierTemplate(String name, String description) {
if (!StringUtils.isEmpty(name) && name.length() > MAX_NAME_LENGTH) {