From a2813f7399cb27e6f66e99b5d9577eb21f4ddac3 Mon Sep 17 00:00:00 2001 From: xiangpei <xiangpei@timesnew.cn> Date: 星期六, 31 八月 2024 12:24:42 +0800 Subject: [PATCH] 下发页面运维单位工单数查询优化 --- ycl-server/src/main/java/com/ycl/platform/service/impl/WorkOrderServiceImpl.java | 53 ++++++++++++++++++++++++++++++++++++----------------- 1 files changed, 36 insertions(+), 17 deletions(-) diff --git a/ycl-server/src/main/java/com/ycl/platform/service/impl/WorkOrderServiceImpl.java b/ycl-server/src/main/java/com/ycl/platform/service/impl/WorkOrderServiceImpl.java index 328c598..b7b68f1 100644 --- a/ycl-server/src/main/java/com/ycl/platform/service/impl/WorkOrderServiceImpl.java +++ b/ycl-server/src/main/java/com/ycl/platform/service/impl/WorkOrderServiceImpl.java @@ -13,10 +13,7 @@ import com.ycl.platform.domain.entity.*; import com.ycl.platform.domain.form.*; import com.ycl.platform.domain.query.*; -import com.ycl.platform.domain.vo.DeviceInfoVO; -import com.ycl.platform.domain.vo.DistributeWorkOrderVO; -import com.ycl.platform.domain.vo.WorkOrderVO; -import com.ycl.platform.domain.vo.WorkOrderYwConditionRecordVO; +import com.ycl.platform.domain.vo.*; import com.ycl.platform.domain.vo.screen.ScreenWorkOrderVO; import com.ycl.platform.domain.vo.screen.WorkOrderRegionVO; import com.ycl.platform.domain.vo.screen.WorkOrderTotalVO; @@ -112,6 +109,13 @@ if (CollectionUtils.isEmpty(workOrderList)) { return Boolean.TRUE; } + // 鏍规嵁鍥芥爣鐮佸幓閲� + workOrderList = workOrderList.stream() + .collect(Collectors.toMap( + WorkOrder::getSerialNumber, + p -> p, + (existing, replacement) -> existing // 鍐茬獊鏃朵繚鐣欑涓�涓� + )).values().stream().collect(Collectors.toList()); List<String> serialNumberList = workOrderList.stream().map(WorkOrder::getSerialNumber).collect(Collectors.toList()); // 鏌ュ嚭鏁版嵁搴撲腑鍥芥爣鐮佸搴旂殑鏈畬鎴愮殑宸ュ崟 List<WorkOrder> inDatabaseWorkOrderList = new LambdaQueryChainWrapper<>(baseMapper) @@ -395,23 +399,22 @@ } @Override - public Result selectYwConditionByYwId(String workOrderNo) { + public List<WorkOrderYwConditionRecordVO> selectYwConditionByYwId(String workOrderNo) { List<WorkOrderYwConditionRecordVO> ywConditionList = workOrderYwConditionRecordMapper.selectYwConditionByYwId(workOrderNo); ywConditionList.stream().forEach(item -> { if (Objects.nonNull(item.getSysMsg()) && item.getSysMsg()) { item.setCommitUserName("绯荤粺娑堟伅"); } }); - return Result.ok().data(ywConditionList); + return ywConditionList; } @Override - public Result selectYwAuditingListByYwId(String workOrderNo) { - return Result.ok().data( - new LambdaQueryChainWrapper<>(workOrderAuditingRecordMapper) + public List<WorkOrderAuditingRecord> selectYwAuditingListByYwId(String workOrderNo) { + return new LambdaQueryChainWrapper<>(workOrderAuditingRecordMapper) .eq(WorkOrderAuditingRecord::getWorkOrderNo, workOrderNo) .orderByAsc(WorkOrderAuditingRecord::getCreateTime) - .list()); + .list(); } @Override @@ -464,6 +467,9 @@ if (StringUtils.hasText(item.getErrorType())) { item.setErrorTypeList(List.of(item.getErrorType().split(","))); } + if (StringUtils.hasText(item.getImgListStr())) { + item.setImgList(List.of(item.getImgListStr().split(","))); + } }); } return Result.ok().data(page.getRecords()).total(page.getTotal()); @@ -483,9 +489,6 @@ LocalDateTime now = LocalDateTime.now(ZoneId.systemDefault()); data.setEnd(now); switch (data.getFastWay()) { - case LAST_HALF_HOUR: - data.setStart(now.minusMinutes(30)); - break; case LAST_HOUR: data.setStart(now.minusHours(1)); break; @@ -495,8 +498,12 @@ case LAST_DAY: data.setStart(now.minusDays(1)); break; + default: + break; } - + if (Objects.isNull(data.getStart())) { + throw new RuntimeException("鏃犳硶鐢熸垚蹇�熶笅鍙戠殑鏃堕棿鑼冨洿锛岃閫夋嫨姝g‘鐨勫揩閫熶笅鍙戞柟寮�"); + } // 鏌ヨ绗﹀悎鏉′欢鐨勫伐鍗� List<WorkOrder> list = new LambdaQueryChainWrapper<>(baseMapper) .select(WorkOrder::getSerialNumber, WorkOrder::getWorkOrderNo) @@ -688,7 +695,7 @@ imgUrl = workOrderNo + "_" + IdUtils.fastSimpleUUID() + ".png"; // 鐢熸垚鍥剧墖璺緞 - String imgPath = PlatformConfig.getUploadPath() + "/" + imgUrl; + String imgPath = PlatformConfig.getProfile() + "/" + imgUrl; System.out.println("鍥剧墖淇濆瓨鍦板潃锛�" + imgPath); imgUrl = Constants.RESOURCE_PREFIX + "/" + imgUrl; // 淇濆瓨鍥剧墖 @@ -718,8 +725,8 @@ } @Override - public List<DeviceInfoVO> hasErrorWorkOrderList() { - List<DeviceInfoVO> list = baseMapper.hasErrorWorkOrderList(); + public List<DeviceInfoVO> hasErrorWorkOrderList(Date start, Date end) { + List<DeviceInfoVO> list = baseMapper.hasErrorWorkOrderList(start, end); return list; } @@ -730,4 +737,16 @@ .set(WorkOrder::getYwCheckResult, imgPath) .update(); } + + @Override + public Result processImg(String workOrderNo) { + // 杩愮淮璁板綍 + List<WorkOrderYwConditionRecordVO> workOrderYwConditionRecordVOS = this.selectYwConditionByYwId(workOrderNo); + // 瀹℃牳璁板綍 + List<WorkOrderAuditingRecord> workOrderAuditingRecords = this.selectYwAuditingListByYwId(workOrderNo); + WorkOrderProcessVO process = new WorkOrderProcessVO(); + process.setYwList(workOrderYwConditionRecordVOS); + process.setAuditingList(workOrderAuditingRecords); + return Result.ok().data(process); + } } -- Gitblit v1.8.0