From 6e006cb835fce4720139de0cc2ec3be734295ed9 Mon Sep 17 00:00:00 2001 From: zhangherong <571457620@qq.com> Date: 星期六, 12 七月 2025 14:18:35 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamSecondMaintenanceOrderServiceImpl.java | 104 ++++++++++------------------------------------------ 1 files changed, 20 insertions(+), 84 deletions(-) diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamSecondMaintenanceOrderServiceImpl.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamSecondMaintenanceOrderServiceImpl.java index 1827589..b26bfbe 100644 --- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamSecondMaintenanceOrderServiceImpl.java +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamSecondMaintenanceOrderServiceImpl.java @@ -39,6 +39,7 @@ import org.jeecg.modules.system.service.IBaseFactoryUserService; import org.jeecg.modules.system.service.ISysUserService; import org.jeecg.modules.system.vo.UserSelector; +import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -82,6 +83,10 @@ private IEamReportRepairService eamReportRepairService; @Autowired private IEamEquipmentExtendService eamEquipmentExtendService; + @Autowired + private IEamBaseHFCodeService hfCodeService; + @Autowired + private IEamMaintenanceStandardDetailService eamMaintenanceStandardDetailService; @Override public IPage<EamSecondMaintenanceOrder> queryPageList(Page<EamSecondMaintenanceOrder> page, EamSecondMaintenanceQuery query) { @@ -155,6 +160,12 @@ order.setStandardId(request.getStandardId()); order.setMaintenanceDate(request.getMaintenanceDate()); order.setOperator(request.getOperator()); + //鎶�鏈姸鎬侀壌瀹氳〃 + EamBaseHFCode eamBaseHFCode = hfCodeService.selectByCategory(HfTemplateCategoryEnum.SECOND_MAINTENANCE.name()); + if(eamBaseHFCode == null) { + throw new JeecgBootException("鏈厤缃妧鏈姸鎬侀壌瀹氳〃鐨凥F缂栫爜锛屾坊鍔犲け璐ワ紒"); + } + order.setHfCode(eamBaseHFCode.getHfCode()); order.setRemark(request.getRemark()); //鐘舵�佸垵濮嬪寲 order.setMaintenanceStatus(SecondMaintenanceStatusEnum.WAIT_MAINTENANCE.name()); @@ -163,43 +174,17 @@ order.setDelFlag(CommonConstant.DEL_FLAG_0); eamSecondMaintenanceOrderMapper.insert(order); //澶勭悊鏄庣粏鏁版嵁 - if (CollectionUtil.isNotEmpty(request.getTableDetailList())) { - request.getTableDetailList().forEach(tableDetail -> { - tableDetail.setId(null); - tableDetail.setOrderId(order.getId()); + List<EamMaintenanceStandardDetail> eamMaintenanceStandardDetailList= eamMaintenanceStandardDetailService.selectByStandardId(order.getStandardId()); + List<EamSecondMaintenanceOrderDetail> requestTableDetailList = new ArrayList<>(); + if (CollectionUtil.isNotEmpty(eamMaintenanceStandardDetailList)) { + eamMaintenanceStandardDetailList.forEach(item -> { + EamSecondMaintenanceOrderDetail detail = new EamSecondMaintenanceOrderDetail(); + BeanUtils.copyProperties(item, detail); + detail.setOrderId(order.getId()); + requestTableDetailList.add(detail); }); - secondMaintenanceOrderDetailService.saveBatch(request.getTableDetailList()); + secondMaintenanceOrderDetailService.saveBatch(requestTableDetailList); } - //鍒ゆ柇鏄惁瀛樺湪淇濆吇浜� 濡傛灉瀛樺湪鍒欏惎鍔ㄦ祦绋� - if (StringUtils.isNotBlank(order.getOperator())) { - //鍚姩娴佺▼ - flowCommonService.initActBusiness("宸ュ崟鍙�: " + order.getOrderNum() + ";璁惧缂栧彿: " + equipment.getEquipmentCode() + ";瀹夎浣嶇疆" + equipment.getInstallationPosition(), - order.getId(), "IEamSecondMaintenanceOrderService", "second_maintenance_process", null); - Map<String, Object> variables = new HashMap<>(); - variables.put("dataId", order.getId()); - if (StrUtil.isEmpty(order.getRemark())) { - variables.put("organization", "鏂板浜屼繚宸ュ崟榛樿鍚姩娴佺▼"); - variables.put("comment", "鏂板浜屼繚宸ュ崟榛樿鍚姩娴佺▼"); - } else { - variables.put("organization", order.getRemark()); - variables.put("comment", order.getRemark()); - } - variables.put("proofreading", true); - List<String> usernames = new ArrayList<>(); - usernames.add(order.getOperator()); - variables.put("NextAssignee", usernames); - Result result = flowDefinitionService.startProcessInstanceByKey("second_maintenance_process", variables); - if (result != null) { - //鏇存柊鍛ㄤ繚鐘舵�� - order.setMaintenanceStatus(SecondMaintenanceStatusEnum.UNDER_MAINTENANCE.name()); - order.setActualStartTime(new Date()); - eamSecondMaintenanceOrderMapper.updateById(order); - //鏇存柊璁惧淇濆吇鐘舵�� - eamEquipmentExtendService.updateEquipmentMaintenanceStatus(order.getEquipmentId(), EquipmentMaintenanceStatus.UNDER_SECOND_MAINTENANCE.name()); - return result.isSuccess(); - } - } - return true; } @@ -218,33 +203,9 @@ throw new JeecgBootException("鍙湁寰呬繚鍏荤姸鎬佺殑鏁版嵁鎵嶅彲缂栬緫锛�"); } entity.setMaintenanceDate(request.getMaintenanceDate()); - entity.setOperator(request.getOperator()); entity.setRemark(request.getRemark()); eamSecondMaintenanceOrderMapper.updateById(entity); - //澶勭悊璇︽儏 - if (CollectionUtil.isNotEmpty(request.getTableDetailList())) { - List<EamSecondMaintenanceOrderDetail> addList = new ArrayList<>(); - List<EamSecondMaintenanceOrderDetail> updateList = new ArrayList<>(); - request.getTableDetailList().forEach(tableDetail -> { - tableDetail.setOrderId(entity.getId()); - if (tableDetail.getId() == null) { - addList.add(tableDetail); - } else { - updateList.add(tableDetail); - } - }); - if (CollectionUtil.isNotEmpty(addList)) { - secondMaintenanceOrderDetailService.saveBatch(addList); - } - if (CollectionUtil.isNotEmpty(updateList)) { - secondMaintenanceOrderDetailService.updateBatchById(updateList); - } - } - if (CollectionUtil.isNotEmpty(request.getRemoveDetailList())) { - List<String> ids = request.getRemoveDetailList().stream().map(EamSecondMaintenanceOrderDetail::getId).collect(Collectors.toList()); - secondMaintenanceOrderDetailService.removeBatchByIds(ids); - } //鍒ゆ柇鏄惁瀛樺湪淇濆吇浜� 濡傛灉瀛樺湪鍒欏惎鍔ㄦ祦绋� if (StringUtils.isNotBlank(entity.getOperator())) { //鍚姩娴佺▼ @@ -385,10 +346,6 @@ //璁剧疆entity entity.setMaintenanceStatus(SecondMaintenanceStatusEnum.WAIT_CONFIRM.name()); entity.setActualEndTime(new Date()); - //澶勭悊璇︽儏 - if (CollectionUtil.isNotEmpty(request.getTableDetailList())) { - secondMaintenanceOrderDetailService.updateBatchById(request.getTableDetailList()); - } //鏇存柊璁惧淇濆吇鐘舵�� eamEquipmentExtendService.updateEquipmentMaintenanceStatus(entity.getEquipmentId(), EquipmentMaintenanceStatus.SECOND_MAINTENANCE_WAIT_CONFIRM.name()); break; @@ -399,33 +356,12 @@ } //鐝粍闀跨‘璁� userApprovalList = userSelectors.stream().map(UserSelector::getUsername).collect(Collectors.toList()); - values.put("dataId", entity.getId()); - values.put("organization", request.getConfirmComment()); - values.put("comment", request.getConfirmComment()); - values.put("NextAssignee", userApprovalList); - values.put("confirmation", request.getConfirmDealType()); - request.setComment(request.getConfirmComment()); //璁剧疆entity entity.setMaintenanceStatus(SecondMaintenanceStatusEnum.WAIT_LEADER_CONFIRM.name()); entity.setConfirmTime(new Date()); - if (CommonConstant.HAS_CANCLE.equals(request.getConfirmDealType())) { - //椹冲洖 - userApprovalList = new ArrayList<>(); - userApprovalList.add(entity.getOperator()); - values.put("NextAssignee", userApprovalList); - entity.setMaintenanceStatus(WeekMaintenanceStatusEnum.UNDER_MAINTENANCE.name()); - } - //澶勭悊鎶ヤ慨 - List<EamSecondMaintenanceOrderDetail> collect = request.getTableDetailList().stream().filter((detail) -> CommonConstant.DEFAULT_1.equals(detail.getReportFlag())).collect(Collectors.toList()); - if (CollectionUtil.isNotEmpty(collect)) { - eamReportRepairService.reportRepairFromSecondMaintenance(equipment.getId(), entity.getOperator(), collect); - } break; case WAIT_LEADER_CONFIRM: values.put("dataId", entity.getId()); - values.put("organization", request.getLeaderConfirmComment()); - values.put("comment", request.getLeaderConfirmComment()); - request.setComment(request.getLeaderConfirmComment()); //璁剧疆entity entity.setMaintenanceStatus(SecondMaintenanceStatusEnum.COMPLETE.name()); //鏇存柊璁惧淇濆吇鐘舵�� -- Gitblit v1.9.3