updates to CalendarInstance Repository
This commit is contained in:
+1
-1
@@ -47,6 +47,6 @@ public interface CalendarInstanceRepository extends JpaRepository<CalendarInstan
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
@Query("SELECT COUNT(ci.id) FROM CalendarInstance ci, Loan ln WHERE ln.id = ci.entityId AND ci.entityTypeId = 3 AND ci.calendar.id = :calendarId AND ln.loanStatus IN :loanStatuses ")
|
@Query("SELECT COUNT(ci.id) FROM CalendarInstance ci, Loan ln WHERE ln.id = ci.entityId AND ci.entityTypeId = 3 AND ci.calendar.id = :calendarId AND ln.loanStatus IN :loanStatuses ")
|
||||||
Integer countOfActiveLoansWithSyncedToCalendar(@Param("calendarId") Long calendarId, @Param("loanStatuses") Collection<Integer> loanStatuses );
|
Integer countOfLoansSyncedWithCalendar(@Param("calendarId") Long calendarId, @Param("loanStatuses") Collection<Integer> loanStatuses );
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
+3
-4
@@ -156,7 +156,6 @@ public class CalendarWritePlatformServiceJpaRepositoryImpl implements CalendarWr
|
|||||||
@Override
|
@Override
|
||||||
public CommandProcessingResult updateCalendar(final JsonCommand command) {
|
public CommandProcessingResult updateCalendar(final JsonCommand command) {
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Validate all the data for updating the calendar
|
* Validate all the data for updating the calendar
|
||||||
*/
|
*/
|
||||||
@@ -168,13 +167,13 @@ public class CalendarWritePlatformServiceJpaRepositoryImpl implements CalendarWr
|
|||||||
final Collection<Integer> loanStatuses = new ArrayList<>(Arrays.asList(LoanStatus.SUBMITTED_AND_PENDING_APPROVAL.getValue(),
|
final Collection<Integer> loanStatuses = new ArrayList<>(Arrays.asList(LoanStatus.SUBMITTED_AND_PENDING_APPROVAL.getValue(),
|
||||||
LoanStatus.APPROVED.getValue(), LoanStatus.ACTIVE.getValue()));
|
LoanStatus.APPROVED.getValue(), LoanStatus.ACTIVE.getValue()));
|
||||||
|
|
||||||
final Integer numberOfActiveLoansSyncedTheCalendar = this.calendarInstanceRepository.countOfActiveLoansWithSyncedToCalendar(calendarId, loanStatuses);
|
final Integer numberOfActiveLoansSyncedWithThisCalendar = this.calendarInstanceRepository.countOfLoansSyncedWithCalendar(
|
||||||
|
calendarId, loanStatuses);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Validate all the business rules
|
* Validate all the business rules
|
||||||
*/
|
*/
|
||||||
this.fromApiJsonDeserializer.validateBusinessRulesForUpdate(command.json(), numberOfActiveLoansSyncedTheCalendar);
|
this.fromApiJsonDeserializer.validateBusinessRulesForUpdate(command.json(), numberOfActiveLoansSyncedWithThisCalendar);
|
||||||
|
|
||||||
|
|
||||||
final Calendar calendarForUpdate = this.calendarRepository.findOne(calendarId);
|
final Calendar calendarForUpdate = this.calendarRepository.findOne(calendarId);
|
||||||
if (calendarForUpdate == null) { throw new CalendarNotFoundException(calendarId); }
|
if (calendarForUpdate == null) { throw new CalendarNotFoundException(calendarId); }
|
||||||
|
|||||||
Reference in New Issue
Block a user