RED-6289 - Validate watermark color

- move up the validation of colors and opacity
This commit is contained in:
devplant 2023-04-26 09:33:30 +03:00
parent afb4075fdc
commit 5c83d67e4d

View File

@ -56,14 +56,14 @@ public class WatermarkService {
@Transactional
public WatermarkEntity createOrUpdateWatermark(WatermarkModel watermark) {
validateWatermark(watermark);
validateWatermarkNameIsPresent(watermark);
validateHexColorAndSetDefaultIfNeeded(watermark);
validateOpacityAndSetDefaultIfNeeded(watermark);
if (watermark.getId() != null) { // update
Optional<WatermarkEntity> loadedWatermark = watermarkRepository.findById(watermark.getId());
if (loadedWatermark.isPresent()) {
validateDossierTemplateId(watermark.getDossierTemplateId(), loadedWatermark.get().getDossierTemplateId());
validateWatermarkNameIsUnique(watermark.getName(), loadedWatermark.get().getDossierTemplateId(), loadedWatermark.get().getId());
validateHexColorAndSetDefaultIfNeeded(watermark);
validateOpacityAndSetDefaultIfNeeded(watermark);
BeanUtils.copyProperties(watermark, loadedWatermark.get(), "dossierTemplateId", "createdBy", "dateAdded", "dateModified");
loadedWatermark.get().setDateModified(OffsetDateTime.now().truncatedTo(ChronoUnit.MILLIS));
var dossierTemplate = dossierTemplatePersistenceService.getDossierTemplate(loadedWatermark.get().getDossierTemplateId());
@ -72,8 +72,6 @@ public class WatermarkService {
} else { // if not found by id -> add it as a new watermark
validateDossierTemplateId(watermark.getDossierTemplateId(), null);
validateWatermarkNameIsUnique(watermark.getName(), watermark.getDossierTemplateId(), 0);
validateHexColorAndSetDefaultIfNeeded(watermark);
validateOpacityAndSetDefaultIfNeeded(watermark);
WatermarkEntity watermarkEntity = new WatermarkEntity();
BeanUtils.copyProperties(watermark, watermarkEntity, "id", "dateAdded", "dateModified");
watermarkEntity.setDateAdded(OffsetDateTime.now().truncatedTo(ChronoUnit.MILLIS));
@ -84,8 +82,6 @@ public class WatermarkService {
} else {
validateDossierTemplateId(watermark.getDossierTemplateId(), null);
validateWatermarkNameIsUnique(watermark.getName(), watermark.getDossierTemplateId(), 0);
validateHexColorAndSetDefaultIfNeeded(watermark);
validateOpacityAndSetDefaultIfNeeded(watermark);
WatermarkEntity watermarkEntity = new WatermarkEntity();
BeanUtils.copyProperties(watermark, watermarkEntity, "id", "dateAdded", "dateModified");
watermarkEntity.setDateAdded(OffsetDateTime.now().truncatedTo(ChronoUnit.MILLIS));
@ -110,7 +106,7 @@ public class WatermarkService {
ColorUtils.validateColor(watermark.getHexColor());
}
private void validateWatermark(WatermarkModel watermark) {
private void validateWatermarkNameIsPresent(WatermarkModel watermark) {
if (StringUtils.isBlank(watermark.getName())) {
throw new BadRequestException("The watermark name must not be empty");