From 5fad000e32ddbebcf83faae0cb57c5005734fe33 Mon Sep 17 00:00:00 2001 From: Lius <Lius2225@163.com> Date: 星期一, 21 四月 2025 15:37:19 +0800 Subject: [PATCH] 维修流程处理 --- lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/aspect/EquipmentHistoryLogAspect.java | 24 ++++++++++-- lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamRepairOrder.java | 0 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamReportRepairService.java | 11 ++++- lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamRepairOrderServiceImpl.java | 15 +++++-- lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamReportRepairServiceImpl.java | 51 +++++++++++++++++++++++-- lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamReportRepairController.java | 15 +------ lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamReportRepair.java | 0 7 files changed, 90 insertions(+), 26 deletions(-) diff --git a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/aspect/EquipmentHistoryLogAspect.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/aspect/EquipmentHistoryLogAspect.java index a1f4835..3175021 100644 --- a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/aspect/EquipmentHistoryLogAspect.java +++ b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/aspect/EquipmentHistoryLogAspect.java @@ -9,11 +9,9 @@ import org.jeecg.modules.eam.aspect.annotation.EquipmentHistoryLog; import org.jeecg.modules.eam.constant.EquipmentOperationTagEnum; import org.jeecg.modules.eam.constant.InspectionStatus; +import org.jeecg.modules.eam.constant.ReportRepairEnum; import org.jeecg.modules.eam.constant.WeekMaintenanceStatusEnum; -import org.jeecg.modules.eam.entity.EamEquipment; -import org.jeecg.modules.eam.entity.EamEquipmentHistoryLog; -import org.jeecg.modules.eam.entity.EamInspectionOrder; -import org.jeecg.modules.eam.entity.EamWeekMaintenanceOrder; +import org.jeecg.modules.eam.entity.*; import org.jeecg.modules.eam.service.IEamEquipmentHistoryLogService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; @@ -107,8 +105,26 @@ case THIRD_MAINTENANCE: break; case REPORT_REPAIR: + if (result instanceof EamReportRepair) { + EamReportRepair repair = (EamReportRepair) result; + log.setEquipmentId(repair.getEquipmentId()); + log.setBusinessId(repair.getId()); + log.setOperator(repair.getCreateBy()); + log.setDescription(repair.getFaultDescription()); + log.setCreateTime(repair.getFaultStartTime()); + } break; case REPAIRED: + if (result instanceof EamRepairOrder) { + EamRepairOrder order = (EamRepairOrder) result; + if (ReportRepairEnum.COMPLETE.name().equals(order.getRepairStatus())) { + log.setEquipmentId(order.getEquipmentId()); + log.setBusinessId(order.getId()); + log.setOperator(order.getRepairer()); + log.setDescription(order.getRepairDescription()); + log.setCreateTime(order.getActualEndTime()); + } + } break; case MAJOR_REPAIR: break; diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamRepairOrder.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamRepairOrder.java similarity index 100% rename from lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamRepairOrder.java rename to lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamRepairOrder.java diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamReportRepair.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamReportRepair.java similarity index 100% rename from lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EamReportRepair.java rename to lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamReportRepair.java diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamReportRepairController.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamReportRepairController.java index f09ad51..af0bc11 100644 --- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamReportRepairController.java +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamReportRepairController.java @@ -71,19 +71,10 @@ @ApiOperation(value = "鏁呴殰鎶ヤ慨-娣诲姞", notes = "鏁呴殰鎶ヤ慨-娣诲姞") @PostMapping(value = "/add") public Result<?> add(@RequestBody EamReportRepair eamReportRepair) { - eamReportRepair.setReportStatus(ReportRepairEnum.WAIT_REPAIR.name()); - eamReportRepair.setDelFlag(CommonConstant.DEL_FLAG_0); - if (eamReportRepair.getImageFilesResult() != null) { - List<FileUploadResult> imageFilesResult = eamReportRepair.getImageFilesResult(); - ObjectMapper mapper = new ObjectMapper(); - try { - String referenceFile = mapper.writeValueAsString(imageFilesResult); - eamReportRepair.setImageFiles(referenceFile); - } catch (JsonProcessingException e) { - return Result.OK("娣诲姞澶辫触锛�"); - } + EamReportRepair b = eamReportRepairService.add(eamReportRepair); + if(b == null) { + return Result.error("娣诲姞澶辫触锛�"); } - eamReportRepairService.save(eamReportRepair); return Result.OK("娣诲姞鎴愬姛锛�"); } diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamReportRepairService.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamReportRepairService.java index b952b85..5c303dc 100644 --- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamReportRepairService.java +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamReportRepairService.java @@ -30,7 +30,7 @@ * @param detailList * @return */ - boolean reportRepairFromMaintenance(String equipmentId, String reportUser, List<EamWeekMaintenanceOrderDetail> detailList); + EamReportRepair reportRepairFromMaintenance(String equipmentId, String reportUser, List<EamWeekMaintenanceOrderDetail> detailList); /** @@ -38,5 +38,12 @@ * @param detailList * @return */ - boolean reportRepairFromInspection(String equipmentId, String reportUser, List<EamInspectionOrderDetail> detailList); + EamReportRepair reportRepairFromInspection(String equipmentId, String reportUser, List<EamInspectionOrderDetail> detailList); + + /** + * 鏁呴殰淇濅慨 + * @param eamReportRepair + * @return + */ + EamReportRepair add(EamReportRepair eamReportRepair); } diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamRepairOrderServiceImpl.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamRepairOrderServiceImpl.java index d3f73f0..f0cefb9 100644 --- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamRepairOrderServiceImpl.java +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamRepairOrderServiceImpl.java @@ -17,10 +17,7 @@ import org.jeecg.common.exception.JeecgBootException; import org.jeecg.common.system.vo.LoginUser; import org.jeecg.modules.eam.aspect.annotation.EquipmentHistoryLog; -import org.jeecg.modules.eam.constant.BusinessCodeConst; -import org.jeecg.modules.eam.constant.EquipmentOperationTagEnum; -import org.jeecg.modules.eam.constant.ReportRepairEnum; -import org.jeecg.modules.eam.constant.WeekMaintenanceStatusEnum; +import org.jeecg.modules.eam.constant.*; import org.jeecg.modules.eam.entity.EamEquipment; import org.jeecg.modules.eam.entity.EamRepairOrder; import org.jeecg.modules.eam.entity.EamReportRepair; @@ -28,6 +25,7 @@ import org.jeecg.modules.eam.request.EamRepairOrderQuery; import org.jeecg.modules.eam.request.EamRepairOrderRequest; import org.jeecg.modules.eam.request.EamRepairOrderResponse; +import org.jeecg.modules.eam.service.IEamEquipmentExtendService; import org.jeecg.modules.eam.service.IEamEquipmentService; import org.jeecg.modules.eam.service.IEamRepairOrderService; import org.jeecg.modules.eam.service.IEamReportRepairService; @@ -86,6 +84,9 @@ @Resource private ISysUserService sysUserService; + @Resource + private IEamEquipmentExtendService eamEquipmentExtendService; + /** * 鍒嗛〉鍒楄〃 * @@ -142,6 +143,8 @@ } else { eamReportRepair.setReportStatus(ReportRepairEnum.UNDER_REPAIR.name()); eamReportRepairService.updateById(eamReportRepair); + //鏇存柊璁惧缁翠慨鐘舵�� + eamEquipmentExtendService.updateEquipmentRepairStatus(eamReportRepair.getEquipmentId(), EquipmentRepairStatus.UNDER_REPAIR.name()); } } @@ -228,6 +231,8 @@ log.error("JSON杞崲澶辫触锛�" + e.getMessage(), e); } } + //鏇存柊璁惧缁翠慨鐘舵�� + eamEquipmentExtendService.updateEquipmentRepairStatus(eamReportRepair.getEquipmentId(), EquipmentRepairStatus.WAIT_CONFIRM.name()); } break; case WAIT_SPARES: @@ -251,6 +256,8 @@ request.setComment("缁翠慨宸ュ崟杩涘叆鎶ヤ慨鍛樼‘璁ら樁娈�"); eamRepairOrder.setRepairStatus(ReportRepairEnum.COMPLETE.name()); eamRepairOrder.setActualEndTime(new Date()); + //鏇存柊璁惧缁翠慨鐘舵�� + eamEquipmentExtendService.updateEquipmentRepairStatus(eamReportRepair.getEquipmentId(), EquipmentRepairStatus.NORMAL.name()); break; } request.setValues(values); diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamReportRepairServiceImpl.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamReportRepairServiceImpl.java index 1e28e3a..91045ef 100644 --- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamReportRepairServiceImpl.java +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamReportRepairServiceImpl.java @@ -2,22 +2,33 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.databind.ObjectMapper; import org.apache.commons.lang3.StringUtils; import org.apache.shiro.SecurityUtils; +import org.jeecg.common.api.vo.FileUploadResult; +import org.jeecg.common.api.vo.Result; import org.jeecg.common.constant.CommonConstant; import org.jeecg.common.system.vo.LoginUser; +import org.jeecg.modules.eam.aspect.annotation.EquipmentHistoryLog; +import org.jeecg.modules.eam.constant.EquipmentMaintenanceStatus; +import org.jeecg.modules.eam.constant.EquipmentOperationTagEnum; +import org.jeecg.modules.eam.constant.EquipmentRepairStatus; import org.jeecg.modules.eam.constant.ReportRepairEnum; import org.jeecg.modules.eam.entity.EamInspectionOrderDetail; import org.jeecg.modules.eam.entity.EamReportRepair; import org.jeecg.modules.eam.entity.EamWeekMaintenanceOrderDetail; import org.jeecg.modules.eam.mapper.EamReportRepairMapper; import org.jeecg.modules.eam.request.EamReportRepairQuery; +import org.jeecg.modules.eam.service.IEamEquipmentExtendService; import org.jeecg.modules.eam.service.IEamReportRepairService; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springframework.transaction.annotation.Transactional; +import javax.annotation.Resource; import java.util.ArrayList; import java.util.Arrays; import java.util.Date; @@ -30,6 +41,9 @@ */ @Service public class EamReportRepairServiceImpl extends ServiceImpl<EamReportRepairMapper, EamReportRepair> implements IEamReportRepairService { + + @Resource + private IEamEquipmentExtendService eamEquipmentExtendService; /** * 鍒嗛〉鍒楄〃 @@ -55,7 +69,8 @@ @Override @Transactional(rollbackFor = Exception.class) - public boolean reportRepairFromMaintenance(String equipmentId, String reportUser, List<EamWeekMaintenanceOrderDetail> detailList) { + @EquipmentHistoryLog(operationTag = EquipmentOperationTagEnum.REPORT_REPAIR, businessTable = "eam_report_repair") + public EamReportRepair reportRepairFromMaintenance(String equipmentId, String reportUser, List<EamWeekMaintenanceOrderDetail> detailList) { StringBuilder sb = new StringBuilder(); detailList.forEach(detail -> { sb.append(detail.getItemCode()).append("銆�"); @@ -72,12 +87,15 @@ entity.setFaultType(CommonConstant.DEFAULT_1); entity.setReportStatus(ReportRepairEnum.WAIT_REPAIR.name()); this.baseMapper.insert(entity); - return true; + //鏇存柊璁惧缁翠慨鐘舵�� + eamEquipmentExtendService.updateEquipmentRepairStatus(entity.getEquipmentId(), EquipmentRepairStatus.WAIT_REPAIR.name()); + return entity; } @Override @Transactional(rollbackFor = Exception.class) - public boolean reportRepairFromInspection(String equipmentId, String reportUser, List<EamInspectionOrderDetail> detailList) { + @EquipmentHistoryLog(operationTag = EquipmentOperationTagEnum.REPORT_REPAIR, businessTable = "eam_report_repair") + public EamReportRepair reportRepairFromInspection(String equipmentId, String reportUser, List<EamInspectionOrderDetail> detailList) { StringBuilder sb = new StringBuilder(); detailList.forEach(detail -> { sb.append(detail.getItemCode()).append("銆�"); @@ -94,6 +112,31 @@ entity.setFaultType(CommonConstant.DEFAULT_1); entity.setReportStatus(ReportRepairEnum.WAIT_REPAIR.name()); this.baseMapper.insert(entity); - return true; + //鏇存柊璁惧缁翠慨鐘舵�� + eamEquipmentExtendService.updateEquipmentRepairStatus(entity.getEquipmentId(), EquipmentRepairStatus.WAIT_REPAIR.name()); + return entity; + } + + @Override + @Transactional(rollbackFor = Exception.class) + @EquipmentHistoryLog(operationTag = EquipmentOperationTagEnum.REPORT_REPAIR, businessTable = "eam_report_repair") + public EamReportRepair add(EamReportRepair eamReportRepair) { + eamReportRepair.setReportStatus(ReportRepairEnum.WAIT_REPAIR.name()); + eamReportRepair.setDelFlag(CommonConstant.DEL_FLAG_0); + // 闄勪欢澶勭悊 + if (eamReportRepair.getImageFilesResult() != null) { + List<FileUploadResult> imageFilesResult = eamReportRepair.getImageFilesResult(); + ObjectMapper mapper = new ObjectMapper(); + try { + String referenceFile = mapper.writeValueAsString(imageFilesResult); + eamReportRepair.setImageFiles(referenceFile); + } catch (JsonProcessingException e) { + return null; + } + } + this.baseMapper.insert(eamReportRepair); + //鏇存柊璁惧缁翠慨鐘舵�� + eamEquipmentExtendService.updateEquipmentRepairStatus(eamReportRepair.getEquipmentId(), EquipmentRepairStatus.WAIT_REPAIR.name()); + return eamReportRepair; } } -- Gitblit v1.9.3