Done ticket GEPAFINBE-144

This commit is contained in:
nisha
2025-01-23 14:11:58 +05:30
parent c8a9c3216b
commit 2c01cbc39a
9 changed files with 158 additions and 17 deletions

View File

@@ -55,11 +55,13 @@ public interface ApplicationEvaluationRepository extends JpaRepository<Applicati
WHERE e.applicationId IN :applicationIds
AND FUNCTION('DATE', e.endDate) BETWEEN :startDate AND :endDate
AND e.isDeleted = false
AND e.status IN :statusList
""")
Long countDueApplicationsBetween(
@Param("applicationIds") List<Long> applicationIds,
@Param("startDate") LocalDate startDate,
@Param("endDate") LocalDate endDate
@Param("endDate") LocalDate endDate,
@Param("statusList") List<String> statusList
);

View File

@@ -25,4 +25,44 @@ public interface AssignedApplicationsRepository extends JpaRepository<AssignedAp
@Query("SELECT aa.application.id FROM AssignedApplicationsEntity aa WHERE aa.isDeleted = false AND aa.userId = :userId")
List<Long> findApplicationIdsByUserIdAndIsDeletedFalse(@Param("userId") Long userId);
@Query("""
SELECT
COALESCE(COUNT(a.id), 0) AS totalAssigned,
COALESCE(SUM(CASE WHEN app.status = 'SOCCORSO' THEN 1 ELSE 0 END), 0) AS amendmentCount,
COALESCE(SUM(CASE WHEN app.status = 'EVALUATION' THEN 1 ELSE 0 END), 0) AS evaluationCount,
COALESCE(SUM(CASE WHEN app.status = 'APPROVED' THEN 1 ELSE 0 END), 0) AS approvedCount
FROM AssignedApplicationsEntity a
JOIN a.application app
WHERE a.isDeleted = false
AND a.userId = :userId
AND app.hubId = :hubId
""")
Object[] countAssignedApplicationsWithStatus(
@Param("userId") Long userId,
@Param("hubId") Long hubId
);
@Query("""
SELECT
COALESCE(COUNT(a.id), 0) AS totalAssigned,
COALESCE(SUM(CASE WHEN app.status = 'SOCCORSO' THEN 1 ELSE 0 END), 0) AS amendmentCount,
COALESCE(SUM(CASE WHEN app.status = 'EVALUATION' THEN 1 ELSE 0 END), 0) AS evaluationCount,
COALESCE(SUM(CASE WHEN app.status = 'APPROVED' THEN 1 ELSE 0 END), 0) AS approvedCount
FROM AssignedApplicationsEntity a
JOIN a.application app
WHERE a.isDeleted = false
AND app.hubId = :hubId
""")
Object[] countAssignedApplicationsForHub(@Param("hubId") Long hubId);
@Query("SELECT aa.application.id FROM AssignedApplicationsEntity aa " +
"WHERE aa.userId = :userId AND aa.application.hubId = :hubId AND aa.isDeleted = false")
List<Long> findApplicationIdsByUserIdAndHubIdAndIsDeletedFalse(@Param("userId") Long userId, @Param("hubId") Long hubId);
@Query("SELECT aa.application.id FROM AssignedApplicationsEntity aa " +
"WHERE aa.application.hubId = :hubId AND aa.isDeleted = false")
List<Long> findApplicationIdsByHubId(@Param("hubId") Long hubId);
}