@@ -41,7 +41,7 @@ public interface ComplaintEntityRepository extends JpaRepository<ComplaintEntity
|
|||||||
""")
|
""")
|
||||||
Long getComplaintsWithoutLawCaseCount();
|
Long getComplaintsWithoutLawCaseCount();
|
||||||
|
|
||||||
@Query("SELECT COUNT(*) FROM ComplaintEntity c WHERE c.violation.id IN :violations")
|
@Query("SELECT COUNT(c) FROM ComplaintEntity c WHERE c.violation.id IN :violations")
|
||||||
int countComplaintByViolations(@Param("violations") List<Long> violations);
|
int countComplaintByViolations(@Param("violations") List<Long> violations);
|
||||||
|
|
||||||
@Query("SELECT c FROM ComplaintEntity c WHERE c.email IN :emails")
|
@Query("SELECT c FROM ComplaintEntity c WHERE c.email IN :emails")
|
||||||
|
|||||||
@@ -44,7 +44,7 @@ public interface LawCaseRepository extends JpaRepository<LawCase, Long> {
|
|||||||
@Query("SELECT COUNT(lc.id) FROM LawCase lc")
|
@Query("SELECT COUNT(lc.id) FROM LawCase lc")
|
||||||
Long getTotalLawCasesCount();
|
Long getTotalLawCasesCount();
|
||||||
|
|
||||||
@Query("SELECT COUNT(*) FROM LawCase l WHERE l.violationId IN :violationIds")
|
@Query("SELECT COUNT(l) FROM LawCase l WHERE l.violationId IN :violationIds")
|
||||||
int countLawCaseByViolationIds(@Param("violationIds") List<Long> violationIds);
|
int countLawCaseByViolationIds(@Param("violationIds") List<Long> violationIds);
|
||||||
|
|
||||||
Optional<LawCase> getLawCaseByViolationIdAndType(Long violationId, LawCaseType type);
|
Optional<LawCase> getLawCaseByViolationIdAndType(Long violationId, LawCaseType type);
|
||||||
|
|||||||
@@ -237,9 +237,13 @@ public class ViolationService {
|
|||||||
|
|
||||||
List<Long> violationIds = violations.stream().map(Violation::getId).toList();
|
List<Long> violationIds = violations.stream().map(Violation::getId).toList();
|
||||||
|
|
||||||
int totalComplaints = complaintRepository.countComplaintByViolations(violationIds);
|
int totalComplaints = 0;
|
||||||
|
int totalLawCases = 0;
|
||||||
|
|
||||||
int totalLawCases = lawCaseRepository.countLawCaseByViolationIds(violationIds);
|
if (!violationIds.isEmpty()) {
|
||||||
|
totalComplaints = complaintRepository.countComplaintByViolations(violationIds);
|
||||||
|
totalLawCases = lawCaseRepository.countLawCaseByViolationIds(violationIds);
|
||||||
|
}
|
||||||
|
|
||||||
return ViolationStatisticsResponse.builder()
|
return ViolationStatisticsResponse.builder()
|
||||||
.totalViolations(violations.size())
|
.totalViolations(violations.size())
|
||||||
|
|||||||
Reference in New Issue
Block a user