From 79bc6d2b3997010d496436d0160b215ccca5715f Mon Sep 17 00:00:00 2001 From: Andrei Isvoran Date: Thu, 5 Oct 2023 12:28:56 +0300 Subject: [PATCH] RED-7694 - Throw BadRequest if startDate is null or in the future for license report --- .../processor/service/LicenseReportService.java | 6 +++++- .../model/license/LicenseReportRequest.java | 15 --------------- 2 files changed, 5 insertions(+), 16 deletions(-) diff --git a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/LicenseReportService.java b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/LicenseReportService.java index aa428517b..597c856ea 100644 --- a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/LicenseReportService.java +++ b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/LicenseReportService.java @@ -38,7 +38,11 @@ public class LicenseReportService { public LicenseReport getLicenseReport(LicenseReportRequest licenseReportRequest) { - if (!licenseReportRequest.isStartDateBeforeEndDate()) { + if (licenseReportRequest.getStartDate() == null || licenseReportRequest.getStartDate().isAfter(Instant.now())) { + throw new BadRequestException("Invalid start date."); + } + + if (licenseReportRequest.getStartDate().isAfter(licenseReportRequest.getEndDate())) { throw new BadRequestException("Invalid date period: End date is before start date."); } diff --git a/persistence-service-v1/persistence-service-shared-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/model/license/LicenseReportRequest.java b/persistence-service-v1/persistence-service-shared-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/model/license/LicenseReportRequest.java index 3a3330add..3db05c7a2 100644 --- a/persistence-service-v1/persistence-service-shared-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/model/license/LicenseReportRequest.java +++ b/persistence-service-v1/persistence-service-shared-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/shared/model/license/LicenseReportRequest.java @@ -18,21 +18,6 @@ public class LicenseReportRequest { private Instant startDate; private Instant endDate; - public Instant getStartDate() { - - if (startDate == null) { - startDate = Year.of(getEndDate().atOffset(ZoneOffset.UTC).getYear()).atMonth(1).atDay(1).atStartOfDay().toInstant(ZoneOffset.UTC); - } - return startDate; - } - - public boolean isStartDateBeforeEndDate() { - - var endDate = this.endDate == null ? Instant.now() : this.endDate; - return getStartDate().isBefore(endDate); - } - - public Instant getEndDate() { if (endDate == null || endDate.isAfter(Instant.now())) { -- 2.47.2