From b86b34a3ba3a844207d3db527db8f9e9fa22033b Mon Sep 17 00:00:00 2001 From: 龚焕茏 <2842157468@qq.com> Date: 星期一, 15 四月 2024 18:05:43 +0800 Subject: [PATCH] 工单处理:审核、运维情况 --- ycl-server/src/main/java/com/ycl/platform/service/impl/WorkOrderServiceImpl.java | 42 +++++++++++++++++++++++++++++------------- 1 files changed, 29 insertions(+), 13 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 c64d795..b9deaa2 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 @@ -7,6 +7,7 @@ import com.ycl.platform.domain.query.DistributeWorkOrderQuery; import com.ycl.platform.domain.vo.DistributeWorkOrderVO; import com.ycl.platform.mapper.*; +import com.ycl.platform.service.NotifyService; import com.ycl.platform.service.WorkOrderService; import com.ycl.system.Result; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -17,7 +18,9 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.ycl.system.page.PageUtil; import com.ycl.utils.DateUtils; +import com.ycl.utils.SecurityUtils; import enumeration.general.FastDistributeTypeEnum; +import enumeration.general.NotifyTypeEnum; import enumeration.general.WorkOrderStatusEnum; import org.springframework.stereotype.Service; import org.springframework.beans.BeanUtils; @@ -46,6 +49,7 @@ private final YwPeopleMapper ywPeopleMapper; private final WorkOrderAuditingRecordMapper workOrderAuditingRecordMapper; private final WorkOrderYwConditionRecordMapper workOrderYwConditionRecordMapper; + private final NotifyService notifyService; /** @@ -56,6 +60,10 @@ @Override public Result add(WorkOrderForm form) { WorkOrder entity = WorkOrderForm.getEntityByForm(form, null); + entity.setWorkOrderNo(DateUtils.dateTimeNow()); + entity.setCreateTime(DateUtils.getNowDate()); + entity.setStatus(WorkOrderStatusEnum.WAIT_DISTRIBUTE); + entity.setDeleted("0"); if(baseMapper.insert(entity) > 0) { return Result.ok("娣诲姞鎴愬姛"); } @@ -85,23 +93,19 @@ @Transactional(rollbackFor = Exception.class) public Result auditing(WorkOrderAuditingForm form) { WorkOrder workOrder = baseMapper.selectById(form.getId()); - if (Objects.isNull(workOrder)) { - throw new ServiceException("宸ュ崟涓嶅瓨鍦�"); - } // 宸ュ崟鐘舵�� - if ("pass".equals(form.getAuditingResult())) { - workOrder.setStatus(WorkOrderStatusEnum.FINISH); - } else { - workOrder.setStatus(WorkOrderStatusEnum.AUDITING); - } + workOrder.setStatus(form.getAuditingResult()); baseMapper.updateById(workOrder); // 娣诲姞涓�鏉″鏍歌褰� WorkOrderAuditingRecord workOrderAuditingRecord = new WorkOrderAuditingRecord(); workOrderAuditingRecord.setWorkOrderId(workOrder.getId()); - workOrderAuditingRecord.setAuditingUser(1); - workOrderAuditingRecord.setResult(form.getAuditingResult()); + workOrderAuditingRecord.setAuditingUser(SecurityUtils.getLoginUser().getUserId().intValue()); + workOrderAuditingRecord.setResult(form.getAuditingResult().getDesc()); workOrderAuditingRecord.setRemark(form.getAuditingRemark()); workOrderAuditingRecordMapper.insert(workOrderAuditingRecord); + // 娣诲姞鏂伴�氱煡 + Notify notify = new Notify(NotifyTypeEnum.WORK_ORDER, form.getAuditingResult().getDesc(), workOrder.getYwPeopleId(), "0", "0", workOrder.getId()); + notifyService.save(notify); return Result.ok("鎿嶄綔鎴愬姛"); } @@ -113,15 +117,26 @@ throw new ServiceException("宸ュ崟涓嶅瓨鍦�"); } // 宸ュ崟鐘舵�� -// workOrder.setStatus("commit-condition"); + workOrder.setStatus(WorkOrderStatusEnum.YW_HANDLE); baseMapper.updateById(workOrder); // 娣诲姞涓�鏉¤繍缁存儏鍐佃褰� WorkOrderYwConditionRecord workOrderYwConditionRecord = new WorkOrderYwConditionRecord(); workOrderYwConditionRecord.setWorkOrderId(workOrder.getId()); - workOrderYwConditionRecord.setCommitUser(1); + workOrderYwConditionRecord.setCommitUser(SecurityUtils.getLoginUser().getUserId().intValue()); workOrderYwConditionRecord.setYwCondition(form.getYwCondition()); + workOrderYwConditionRecord.setYwProofMaterials(form.getYwProofMaterials()); workOrderYwConditionRecordMapper.insert(workOrderYwConditionRecord); return Result.ok("鎿嶄綔鎴愬姛"); + } + + @Override + public Result selectYwConditionByYwId(String id) { + return Result.ok().data( + new LambdaQueryChainWrapper<>(workOrderYwConditionRecordMapper) + .eq(WorkOrderYwConditionRecord::getWorkOrderId, id) + .orderByDesc(WorkOrderYwConditionRecord::getCreateTime) + .last("limit 1") + .one()); } @Override @@ -169,7 +184,8 @@ public Result page(WorkOrderQuery query) { IPage<WorkOrder> page = new LambdaQueryChainWrapper<>(baseMapper) .eq(StringUtils.hasText(query.getWorkOrderNo()), WorkOrder::getWorkOrderNo, query.getWorkOrderNo()) - .ne(WorkOrder::getStatus, WorkOrderStatusEnum.WAIT_DISTRIBUTE) + .in(WorkOrder::getStatus, WorkOrderStatusEnum.DISTRIBUTED, WorkOrderStatusEnum.YW_HANDLE) + .eq(StringUtils.hasText(query.getErrorType()), WorkOrder::getErrorType, query.getErrorType()) .between(Objects.nonNull(query.getStart()) && Objects.nonNull(query.getEnd()), WorkOrder::getYwHandleTime, DateUtils.getDayStart(query.getStart()), -- Gitblit v1.8.0