From 8203359e4e68775b3ce0e540837bf3332d970798 Mon Sep 17 00:00:00 2001 From: zhangherong <571457620@qq.com> Date: 星期五, 09 五月 2025 11:38:49 +0800 Subject: [PATCH] art: 设备管理-维修看板-维修工排名统计 --- lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamRepairOrderServiceImpl.java | 53 ++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 52 insertions(+), 1 deletions(-) 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 fe9da42..794d524 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 @@ -25,10 +25,12 @@ 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.request.EamReportRepairQuery; 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; +import org.jeecg.modules.eam.vo.RepairmanRankingVO; import org.jeecg.modules.flowable.apithird.business.entity.FlowMyBusiness; import org.jeecg.modules.flowable.apithird.business.service.IFlowMyBusinessService; import org.jeecg.modules.flowable.apithird.service.FlowCallBackServiceI; @@ -144,6 +146,55 @@ } /** + * 鎸囨淳 + * @param eamReportRepairQuery + */ + @Override + @Transactional(rollbackFor = Exception.class) + public void assign(EamReportRepairQuery eamReportRepairQuery) { + EamRepairOrder eamRepairOrder = new EamRepairOrder(); + String codeSeq = businessCodeRuleService.generateBusinessCodeSeq(BusinessCodeConst.REPAIR_ORDER_CODE_RULE); + eamRepairOrder.setRepairCode(codeSeq); + EamReportRepair eamReportRepair = eamReportRepairService.getById(eamReportRepairQuery.getId()); + eamRepairOrder.setDelFlag(CommonConstant.DEL_FLAG_0); + eamRepairOrder.setEquipmentId(eamReportRepair.getEquipmentId()); + eamRepairOrder.setRepairStatus(ReportRepairEnum.UNDER_REPAIR.name()); + eamRepairOrder.setActualStartTime(DateUtils.getNow()); + eamRepairOrder.setIsUseSpare(0); + eamRepairOrder.setRepairer(eamReportRepairQuery.getRepairer()); + super.save(eamRepairOrder); + EamEquipment eamEquipment = eamEquipmentService.getById(eamReportRepair.getEquipmentId()); + // 鍚姩缁翠慨娴佺▼ + flowCommonService.initActBusiness("缁翠慨宸ュ崟鍙凤細" + codeSeq + ", 璁惧缂栧彿锛�" + eamEquipment.getEquipmentCode() + "寮�濮嬬淮淇�", + eamRepairOrder.getId(), + "IEamRepairOrderService", + "eam_repair", + null); + Map<String, Object> variables = new HashMap<>(); + variables.put("dataId", eamRepairOrder.getId()); + variables.put("organization", "缁翠慨宸ュ崟鍚姩娴佺▼"); + variables.put("comment", "缁翠慨宸ュ崟鍚姩娴佺▼"); + variables.put("proofreading", true); + List<String> usernames = new ArrayList<>(); + usernames.add(eamReportRepairQuery.getRepairer()); + variables.put("NextAssignee", usernames); + Result result = flowDefinitionService.startProcessInstanceByKey("eam_repair", variables); + if (!result.isSuccess()) { + super.removeById(eamRepairOrder); + } else { + eamReportRepair.setReportStatus(ReportRepairEnum.UNDER_REPAIR.name()); + eamReportRepairService.updateById(eamReportRepair); + //鏇存柊璁惧缁翠慨鐘舵�� + eamEquipmentExtendService.updateEquipmentRepairStatus(eamReportRepair.getEquipmentId(), EquipmentRepairStatus.UNDER_REPAIR.name()); + } + } + + @Override + public List<RepairmanRankingVO> repairmanRanking(String start, String end) { + return this.baseMapper.repairmanRanking(start, end); + } + + /** * 娴佺▼鎿嶄綔 * * @param request @@ -196,7 +247,7 @@ if (StringUtils.isBlank(equipment.getEquipmentManager())) { throw new JeecgBootException("璁惧鏈垎閰嶈澶囩鐞嗗憳锛屾棤娉曡繘鍏ヤ笅绾у鎵癸紒"); } - if (StringUtils.isBlank(eamRepairOrder.getRepairDescription())) { + if (StringUtils.isBlank(eamRepairOrder.getSparePartDescription())) { values.put("dataId", eamRepairOrder.getId()); values.put("organization", "缁翠慨宸ュ崟杩涘叆绛夊浠剁姸鎬�"); values.put("comment", "缁翠慨宸ュ崟杩涘叆绛夊浠剁姸鎬�"); -- Gitblit v1.9.3