dev add check for change status
Test Workflow / test (push) Has been cancelled

This commit is contained in:
2026-04-27 12:44:13 +07:00
parent dc27e2ccf2
commit 3e90609ae0
2 changed files with 8 additions and 14 deletions
@@ -13,6 +13,8 @@ import ru.soune.nocopy.dto.violation.ViolationResponse;
import ru.soune.nocopy.entity.file.FileEntity; import ru.soune.nocopy.entity.file.FileEntity;
import ru.soune.nocopy.entity.violation.Violation; import ru.soune.nocopy.entity.violation.Violation;
import ru.soune.nocopy.repository.FileEntityRepository; import ru.soune.nocopy.repository.FileEntityRepository;
import ru.soune.nocopy.service.complaint.ComplaintEntityService;
import ru.soune.nocopy.service.complaint.LawCaseService;
import ru.soune.nocopy.service.file.FileEntityService; import ru.soune.nocopy.service.file.FileEntityService;
import ru.soune.nocopy.service.geo.GeoCountryService; import ru.soune.nocopy.service.geo.GeoCountryService;
import ru.soune.nocopy.service.register.AuthService; import ru.soune.nocopy.service.register.AuthService;
@@ -44,6 +46,10 @@ public class ViolationHandler implements RequestHandler {
private final GeoCountryService geoCountryService; private final GeoCountryService geoCountryService;
private final LawCaseService lawCaseService;
private final ComplaintEntityService complaintEntityService;
private static final DateTimeFormatter DATE_FORMATTER = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); private static final DateTimeFormatter DATE_FORMATTER = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
@Override @Override
@@ -78,7 +84,8 @@ public class ViolationHandler implements RequestHandler {
Long violationId = violationRequest.getViolationId(); Long violationId = violationRequest.getViolationId();
if (status.equals(ViolationStatus.NOT_OWNER_FILE.name()) && if (status.equals(ViolationStatus.NOT_OWNER_FILE.name()) &&
!violationService.validateChangeStatus(violationId)) { lawCaseService.fetchByViolationId(violationId) != null &&
complaintEntityService.fetchComplaintByViolation(violationId) != null) {
return BaseResponse.builder() return BaseResponse.builder()
.messageCode(MessageCode.COMPLAINT_OR_LAW_CASE_IN_WORK.getCode()) .messageCode(MessageCode.COMPLAINT_OR_LAW_CASE_IN_WORK.getCode())
@@ -11,14 +11,11 @@ import org.springframework.transaction.annotation.Transactional;
import ru.soune.nocopy.dto.file.YandexSearchResponse; import ru.soune.nocopy.dto.file.YandexSearchResponse;
import ru.soune.nocopy.dto.violation.FileViolationSummaryDTO; import ru.soune.nocopy.dto.violation.FileViolationSummaryDTO;
import ru.soune.nocopy.dto.violation.ViolationStatisticsResponse; import ru.soune.nocopy.dto.violation.ViolationStatisticsResponse;
import ru.soune.nocopy.entity.complaint.ComplaintEntity;
import ru.soune.nocopy.entity.file.FileEntity; import ru.soune.nocopy.entity.file.FileEntity;
import ru.soune.nocopy.entity.search.GlobalSearchResult; import ru.soune.nocopy.entity.search.GlobalSearchResult;
import ru.soune.nocopy.entity.violation.Violation; import ru.soune.nocopy.entity.violation.Violation;
import ru.soune.nocopy.repository.FileEntityRepository; import ru.soune.nocopy.repository.FileEntityRepository;
import ru.soune.nocopy.repository.ViolationRepository; import ru.soune.nocopy.repository.ViolationRepository;
import ru.soune.nocopy.service.complaint.ComplaintEntityService;
import ru.soune.nocopy.service.complaint.LawCaseService;
import ru.soune.nocopy.service.file.FileEntityService; import ru.soune.nocopy.service.file.FileEntityService;
import java.time.LocalDateTime; import java.time.LocalDateTime;
@@ -35,10 +32,6 @@ public class ViolationService {
private final FileEntityService fileEntityService; private final FileEntityService fileEntityService;
private final ComplaintEntityService complaintEntityService;
private final LawCaseService lawCaseService;
public void processViolation(YandexSearchResponse.ImageResult imageResult, FileEntity file, public void processViolation(YandexSearchResponse.ImageResult imageResult, FileEntity file,
GlobalSearchResult result) { GlobalSearchResult result) {
String url = imageResult.getUrl(); String url = imageResult.getUrl();
@@ -177,12 +170,6 @@ public class ViolationService {
LinkedHashMap::new)); LinkedHashMap::new));
} }
public boolean validateChangeStatus(Long violationId) {
List<ComplaintEntity> complaintEntities = complaintEntityService.fetchComplaintByViolation(violationId);
return complaintEntities == null && lawCaseService.fetchByViolationId(violationId) == null;
}
public ViolationStatisticsResponse getViolationStatistics(Long userId, String fileId, public ViolationStatisticsResponse getViolationStatistics(Long userId, String fileId,
LocalDateTime startDate, LocalDateTime endDate) { LocalDateTime startDate, LocalDateTime endDate) {