From bbd11b01630c50ebedf68b2c6588b53a7bc7ba7e Mon Sep 17 00:00:00 2001 From: 龚焕茏 <2842157468@qq.com> Date: 星期五, 28 六月 2024 10:32:43 +0800 Subject: [PATCH] refactor:批量审核选择故障类型 --- ycl-server/src/main/resources/mapper/zgyw/WorkOrderMapper.xml | 2 +- ycl-pojo/src/main/java/com/ycl/platform/domain/form/WorkOrderBatchAuditingForm.java | 6 +++--- ycl-server/src/main/java/com/ycl/platform/service/impl/WorkOrderServiceImpl.java | 16 +++++++++++++--- 3 files changed, 17 insertions(+), 7 deletions(-) diff --git a/ycl-pojo/src/main/java/com/ycl/platform/domain/form/WorkOrderBatchAuditingForm.java b/ycl-pojo/src/main/java/com/ycl/platform/domain/form/WorkOrderBatchAuditingForm.java index e4551a7..f0059e8 100644 --- a/ycl-pojo/src/main/java/com/ycl/platform/domain/form/WorkOrderBatchAuditingForm.java +++ b/ycl-pojo/src/main/java/com/ycl/platform/domain/form/WorkOrderBatchAuditingForm.java @@ -28,9 +28,9 @@ private String auditingRemark; /** - * 鎵归噺瀹℃牳ids + * 鏁呴殰绫诲瀷 */ - @NotEmpty(message = "瀹℃牳宸ュ崟涓嶈兘涓虹┖") - private List<Integer> ids; + @NotBlank(message = "鏁呴殰绫诲瀷涓嶈兘涓虹┖") + private String errorType; } 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 745e24a..67a558c 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 @@ -30,6 +30,7 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.util.Assert; +import org.springframework.util.CollectionUtils; import org.springframework.util.StringUtils; import java.time.LocalDateTime; @@ -128,14 +129,24 @@ @Override @Transactional(rollbackFor = Exception.class) public Result batchAuditing(WorkOrderBatchAuditingForm form) { + // 鏍规嵁鏁呴殰绫诲瀷鑾峰彇鍒楄〃 + List<WorkOrder> list = new LambdaQueryChainWrapper<>(baseMapper) + .in(WorkOrder::getStatus, WorkOrderStatusEnum.YW_HANDLE.getValue()) + .eq(WorkOrder::getErrorType, form.getErrorType()) + .select(WorkOrder::getId, WorkOrder::getUnitId, WorkOrder::getWorkOrderNo) + .list(); + if (list.isEmpty()) { + return Result.error("娌℃湁宸ュ崟鍙互瀹℃牳"); + } + List<Integer> ids = list.stream().map(WorkOrder::getId).collect(Collectors.toList()); // 宸ュ崟鐘舵�� LambdaUpdateWrapper<WorkOrder> lambdaUpdateWrapper = new LambdaUpdateWrapper<>(); - lambdaUpdateWrapper.in(WorkOrder::getId, form.getIds()); + lambdaUpdateWrapper.in(WorkOrder::getId, ids); lambdaUpdateWrapper.set(WorkOrder::getStatus, form.getAuditingResult()); baseMapper.update(lambdaUpdateWrapper); // 娣诲姞澶氭潯瀹℃牳璁板綍 List<WorkOrderAuditingRecord> workOrderAuditingRecords = new ArrayList<>(); - for (Integer id : form.getIds()) { + for (Integer id : ids) { WorkOrderAuditingRecord workOrderAuditingRecord = new WorkOrderAuditingRecord(); workOrderAuditingRecord.setWorkOrderId(id); workOrderAuditingRecord.setAuditingUser(SecurityUtils.getLoginUser().getUserId().intValue()); @@ -145,7 +156,6 @@ } workOrderAuditingRecordService.saveBatch(workOrderAuditingRecords); // 娣诲姞鏂伴�氱煡 - List<WorkOrder> list = new LambdaQueryChainWrapper<>(baseMapper).in(WorkOrder::getId, form.getIds()).select(WorkOrder::getUnitId, WorkOrder::getWorkOrderNo).list(); List<Notify> notifies = new ArrayList<>(); for (WorkOrder workOrder : list) { Notify notify = Notify.genEntityByUnit(NotifyTypeEnum.WORK_ORDER, diff --git a/ycl-server/src/main/resources/mapper/zgyw/WorkOrderMapper.xml b/ycl-server/src/main/resources/mapper/zgyw/WorkOrderMapper.xml index 364b380..5b6c6f0 100644 --- a/ycl-server/src/main/resources/mapper/zgyw/WorkOrderMapper.xml +++ b/ycl-server/src/main/resources/mapper/zgyw/WorkOrderMapper.xml @@ -32,7 +32,7 @@ <if test="query.status != null"> AND wo.status = #{query.status} </if> - <if test="query.errorType != null and query.errType != ''"> + <if test="query.errorType != null and query.errorType != ''"> AND wo.error_type = #{query.errorType} </if> <if test="query.start != null"> -- Gitblit v1.8.0