| | |
| | | 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; |
| | |
| | | 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) |
| | |
| | | } |
| | | |
| | | @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 |
| | |
| | | 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()); |
| | |
| | | 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; |
| | |
| | | case LAST_DAY: |
| | | data.setStart(now.minusDays(1)); |
| | | break; |
| | | default: |
| | | break; |
| | | } |
| | | |
| | | if (Objects.isNull(data.getStart())) { |
| | | throw new RuntimeException("无法生成快速下发的时间范围,请选择正确的快速下发方式"); |
| | | } |
| | | // 查询符合条件的工单 |
| | | List<WorkOrder> list = new LambdaQueryChainWrapper<>(baseMapper) |
| | | .select(WorkOrder::getSerialNumber, WorkOrder::getWorkOrderNo) |
| | |
| | | |
| | | imgUrl = workOrderNo + "_" + IdUtils.fastSimpleUUID() + ".png"; |
| | | // 生成图片路径 |
| | | String imgPath = PlatformConfig.getUploadPath() + "/" + imgUrl; |
| | | String imgPath = PlatformConfig.getProfile() + "/" + imgUrl; |
| | | System.out.println("图片保存地址:" + imgPath); |
| | | imgUrl = Constants.RESOURCE_PREFIX + "/" + imgUrl; |
| | | // 保存图片 |
| | |
| | | } |
| | | |
| | | @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; |
| | | } |
| | | |
| | |
| | | .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); |
| | | } |
| | | } |