라벨작업관리 목록 API 날짜 수정, 에러로그 날짜 변환 수정
This commit is contained in:
@@ -16,6 +16,7 @@ import io.swagger.v3.oas.annotations.media.Schema;
|
|||||||
import io.swagger.v3.oas.annotations.responses.ApiResponse;
|
import io.swagger.v3.oas.annotations.responses.ApiResponse;
|
||||||
import io.swagger.v3.oas.annotations.responses.ApiResponses;
|
import io.swagger.v3.oas.annotations.responses.ApiResponses;
|
||||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||||
|
import java.time.LocalDate;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.UUID;
|
import java.util.UUID;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
@@ -71,10 +72,10 @@ public class LabelWorkerApiController {
|
|||||||
public ApiResponseDto<Page<LabelWorkMng>> labelWorkMngList(
|
public ApiResponseDto<Page<LabelWorkMng>> labelWorkMngList(
|
||||||
@Parameter(description = "변화탐지년도", example = "2022-2024") @RequestParam(required = false)
|
@Parameter(description = "변화탐지년도", example = "2022-2024") @RequestParam(required = false)
|
||||||
String detectYear,
|
String detectYear,
|
||||||
@Parameter(description = "시작일", example = "20220101") @RequestParam(required = false)
|
@Parameter(description = "시작일", example = "2022-01-01") @RequestParam(required = false)
|
||||||
String strtDttm,
|
LocalDate strtDttm,
|
||||||
@Parameter(description = "종료일", example = "20261201") @RequestParam(required = false)
|
@Parameter(description = "종료일", example = "2026-12-01") @RequestParam(required = false)
|
||||||
String endDttm,
|
LocalDate endDttm,
|
||||||
@Parameter(description = "페이지 번호 (0부터 시작)", example = "0") @RequestParam(defaultValue = "0")
|
@Parameter(description = "페이지 번호 (0부터 시작)", example = "0") @RequestParam(defaultValue = "0")
|
||||||
int page,
|
int page,
|
||||||
@Parameter(description = "페이지 크기", example = "20") @RequestParam(defaultValue = "20")
|
@Parameter(description = "페이지 크기", example = "20") @RequestParam(defaultValue = "20")
|
||||||
|
|||||||
@@ -5,6 +5,7 @@ import com.kamco.cd.kamcoback.common.utils.enums.Enums;
|
|||||||
import com.kamco.cd.kamcoback.common.utils.interfaces.JsonFormatDttm;
|
import com.kamco.cd.kamcoback.common.utils.interfaces.JsonFormatDttm;
|
||||||
import com.kamco.cd.kamcoback.label.dto.LabelAllocateDto.LabelMngState;
|
import com.kamco.cd.kamcoback.label.dto.LabelAllocateDto.LabelMngState;
|
||||||
import io.swagger.v3.oas.annotations.media.Schema;
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
|
import java.time.LocalDate;
|
||||||
import java.time.ZonedDateTime;
|
import java.time.ZonedDateTime;
|
||||||
import java.util.UUID;
|
import java.util.UUID;
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
@@ -120,11 +121,11 @@ public class LabelWorkDto {
|
|||||||
@Schema(description = "변화탐지년도", example = "2024")
|
@Schema(description = "변화탐지년도", example = "2024")
|
||||||
private String detectYear;
|
private String detectYear;
|
||||||
|
|
||||||
@Schema(description = "시작일", example = "20260101")
|
@Schema(description = "시작일", example = "2026-01-01")
|
||||||
private String strtDttm;
|
private LocalDate strtDttm;
|
||||||
|
|
||||||
@Schema(description = "종료일", example = "20261201")
|
@Schema(description = "종료일", example = "2026-12-01")
|
||||||
private String endDttm;
|
private LocalDate endDttm;
|
||||||
|
|
||||||
public Pageable toPageable() {
|
public Pageable toPageable() {
|
||||||
|
|
||||||
|
|||||||
@@ -74,31 +74,11 @@ public class LabelAllocateService {
|
|||||||
index = end;
|
index = end;
|
||||||
}
|
}
|
||||||
|
|
||||||
// 검수자에게 userCount명 만큼 할당
|
// 검수자 할당 테이블에 insert. TODO: 익일 배치로 라벨링 완료된 내역을 검수자에게 할당해야 함
|
||||||
List<LabelAllocateDto.Basic> list = labelAllocateCoreService.findAssignedLabelerList(analUid);
|
|
||||||
|
|
||||||
for (String inspector : targetInspectors) {
|
for (String inspector : targetInspectors) {
|
||||||
labelAllocateCoreService.insertInspector(analUid, inspector);
|
labelAllocateCoreService.insertInspector(analUid, inspector);
|
||||||
}
|
}
|
||||||
|
|
||||||
// int from = 0;
|
|
||||||
// for (TargetInspector inspector : targetInspectors) {
|
|
||||||
// int to = Math.min(from + inspector.getUserCount(), list.size());
|
|
||||||
//
|
|
||||||
// if (from >= to) {
|
|
||||||
// break;
|
|
||||||
// }
|
|
||||||
//
|
|
||||||
// List<UUID> assignmentUids =
|
|
||||||
// list.subList(from,
|
|
||||||
// to).stream().map(LabelAllocateDto.Basic::getAssignmentUid).toList();
|
|
||||||
//
|
|
||||||
// labelAllocateCoreService.assignInspectorBulk(assignmentUids,
|
|
||||||
// inspector.getInspectorUid());
|
|
||||||
//
|
|
||||||
// from = to;
|
|
||||||
// }
|
|
||||||
|
|
||||||
return new ApiResponseDto.ResponseObj(ApiResponseCode.OK, "배정이 완료되었습니다.");
|
return new ApiResponseDto.ResponseObj(ApiResponseCode.OK, "배정이 완료되었습니다.");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -114,21 +114,13 @@ public class LabelWorkRepositoryImpl extends QuerydslRepositorySupport
|
|||||||
whereSubBuilder.and(
|
whereSubBuilder.and(
|
||||||
mapSheetAnalDataInferenceGeomEntity.dataUid.eq(mapSheetAnalDataInferenceEntity.id));
|
mapSheetAnalDataInferenceGeomEntity.dataUid.eq(mapSheetAnalDataInferenceEntity.id));
|
||||||
|
|
||||||
if (searchReq.getStrtDttm() != null
|
if (searchReq.getStrtDttm() != null && searchReq.getEndDttm() != null) {
|
||||||
&& !searchReq.getStrtDttm().isEmpty()
|
|
||||||
&& searchReq.getEndDttm() != null
|
|
||||||
&& !searchReq.getEndDttm().isEmpty()) {
|
|
||||||
|
|
||||||
ZoneId zoneId = ZoneId.of("Asia/Seoul");
|
ZoneId zoneId = ZoneId.of("Asia/Seoul");
|
||||||
|
|
||||||
ZonedDateTime start =
|
ZonedDateTime start = searchReq.getStrtDttm().atStartOfDay(zoneId);
|
||||||
LocalDate.parse(searchReq.getStrtDttm(), DateTimeFormatter.BASIC_ISO_DATE)
|
|
||||||
.atStartOfDay(zoneId);
|
|
||||||
|
|
||||||
ZonedDateTime end =
|
ZonedDateTime end = searchReq.getEndDttm().plusDays(1).atStartOfDay(zoneId);
|
||||||
LocalDate.parse(searchReq.getEndDttm(), DateTimeFormatter.BASIC_ISO_DATE)
|
|
||||||
.plusDays(1)
|
|
||||||
.atStartOfDay(zoneId);
|
|
||||||
|
|
||||||
whereSubBuilder.and(
|
whereSubBuilder.and(
|
||||||
mapSheetAnalDataInferenceGeomEntity
|
mapSheetAnalDataInferenceGeomEntity
|
||||||
@@ -402,12 +394,7 @@ public class LabelWorkRepositoryImpl extends QuerydslRepositorySupport
|
|||||||
}
|
}
|
||||||
|
|
||||||
public NumberExpression<Long> caseSumExpression(BooleanExpression condition) {
|
public NumberExpression<Long> caseSumExpression(BooleanExpression condition) {
|
||||||
NumberExpression<Long> sumExp =
|
NumberExpression<Long> sumExp = new CaseBuilder().when(condition).then(1L).otherwise(0L).sum();
|
||||||
new CaseBuilder()
|
|
||||||
.when(condition)
|
|
||||||
.then(1L)
|
|
||||||
.otherwise(0L)
|
|
||||||
.sum();
|
|
||||||
|
|
||||||
return sumExp;
|
return sumExp;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ import com.querydsl.core.types.dsl.Expressions;
|
|||||||
import com.querydsl.core.types.dsl.StringExpression;
|
import com.querydsl.core.types.dsl.StringExpression;
|
||||||
import com.querydsl.jpa.impl.JPAQueryFactory;
|
import com.querydsl.jpa.impl.JPAQueryFactory;
|
||||||
import java.time.LocalDate;
|
import java.time.LocalDate;
|
||||||
import java.time.LocalDateTime;
|
import java.time.ZoneId;
|
||||||
import java.time.ZonedDateTime;
|
import java.time.ZonedDateTime;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
@@ -98,12 +98,14 @@ public class ErrorLogRepositoryImpl extends QuerydslRepositorySupport
|
|||||||
if (Objects.isNull(startDate) || Objects.isNull(endDate)) {
|
if (Objects.isNull(startDate) || Objects.isNull(endDate)) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
LocalDateTime startDateTime = startDate.atStartOfDay();
|
|
||||||
LocalDateTime endDateTime = endDate.plusDays(1).atStartOfDay();
|
ZoneId zoneId = ZoneId.of("Asia/Seoul");
|
||||||
|
ZonedDateTime startDateTime = startDate.atStartOfDay(zoneId);
|
||||||
|
ZonedDateTime endDateTime = endDate.plusDays(1).atStartOfDay(zoneId);
|
||||||
return auditLogEntity
|
return auditLogEntity
|
||||||
.createdDate
|
.createdDate
|
||||||
.goe(ZonedDateTime.from(startDateTime))
|
.goe(startDateTime)
|
||||||
.and(auditLogEntity.createdDate.lt(ZonedDateTime.from(endDateTime)));
|
.and(auditLogEntity.createdDate.lt(endDateTime));
|
||||||
}
|
}
|
||||||
|
|
||||||
private BooleanExpression eventStatusEqFailed() {
|
private BooleanExpression eventStatusEqFailed() {
|
||||||
|
|||||||
Reference in New Issue
Block a user