Browse Source

reports ids

master
gsd 16 hours ago
parent
commit
fa7b55d19c
  1. 1
      src/main/java/app/controllers/user/PublicController.java
  2. 22
      src/main/java/app/entities/report/ReportSearchFilter.java
  3. 3
      src/main/java/app/repositories/ReportRepository.java

1
src/main/java/app/controllers/user/PublicController.java

@ -115,6 +115,7 @@ public class PublicController {
String rl = reportSearchFilter.getAccounts2Steam2(profileService); String rl = reportSearchFilter.getAccounts2Steam2(profileService);
return reportRepository.getReports(pageable, return reportRepository.getReports(pageable,
reportSearchFilter.idsIsEmpty(), reportSearchFilter.idsIsEmpty() ? List.of(0L) : reportSearchFilter.getIds(),
al.isEmpty(), al, al.isEmpty(), al,
rl.isEmpty(), rl, rl.isEmpty(), rl,
reportSearchFilter.getServerId(), reportSearchFilter.getServerId(),

22
src/main/java/app/entities/report/ReportSearchFilter.java

@ -3,10 +3,12 @@ package app.entities.report;
import app.entities.SearchFilter; import app.entities.SearchFilter;
import app.services.ProfileService; import app.services.ProfileService;
import java.util.ArrayList;
import java.util.List; import java.util.List;
import java.util.Objects; import java.util.Objects;
public class ReportSearchFilter extends SearchFilter { public class ReportSearchFilter extends SearchFilter {
private List<Long> ids = new ArrayList<>();
private List<String> accounts_2 = null; private List<String> accounts_2 = null;
public ReportSearchFilter() { public ReportSearchFilter() {
@ -26,4 +28,24 @@ public class ReportSearchFilter extends SearchFilter {
.map(sId -> sId.steam2) .map(sId -> sId.steam2)
.toList()); .toList());
} }
public boolean idsIsEmpty() {
return ids == null || ids.isEmpty();
}
public List<Long> getIds() {
return ids;
}
public void setIds(List<Long> ids) {
this.ids = ids;
}
public List<String> getAccounts_2() {
return accounts_2;
}
public void setAccounts_2(List<String> accounts_2) {
this.accounts_2 = accounts_2;
}
} }

3
src/main/java/app/repositories/ReportRepository.java

@ -11,6 +11,7 @@ import java.util.List;
public interface ReportRepository extends PagingAndSortingRepository<Report, Long> { public interface ReportRepository extends PagingAndSortingRepository<Report, Long> {
@Query(value = "select r from Report r where " + @Query(value = "select r from Report r where " +
"(:ids_is_empty = true or r in :ids) and " +
"(:authors_ne = true or (position(r.a_steam2 in :authors) > 0 or position(r.r_steam2 in :authors) > 0)) and " + "(:authors_ne = true or (position(r.a_steam2 in :authors) > 0 or position(r.r_steam2 in :authors) > 0)) and " +
"(:reportes_ne = true or position(r.r_steam2 in :reportes) > 0) and " + "(:reportes_ne = true or position(r.r_steam2 in :reportes) > 0) and " +
"(:begin_date is null or r.utime >= :begin_date) and " + "(:begin_date is null or r.utime >= :begin_date) and " +
@ -18,6 +19,8 @@ public interface ReportRepository extends PagingAndSortingRepository<Report, Lon
"(:server_id is null or r.srv like :server_id) order by r.id desc" "(:server_id is null or r.srv like :server_id) order by r.id desc"
) )
Page<Report> getReports(Pageable pageable, Page<Report> getReports(Pageable pageable,
@Param("ids_is_empty") boolean idsIsEmpty,
@Param("ids") List<Long> ids,
@Param("authors_ne") boolean authors_ne,//a @Param("authors_ne") boolean authors_ne,//a
@Param("authors") String authors, @Param("authors") String authors,
@Param("reportes_ne") boolean reportes_ne,//r @Param("reportes_ne") boolean reportes_ne,//r

Loading…
Cancel
Save