From be8a6f171bd41aa50fb7310b2ccbe753dac20b89 Mon Sep 17 00:00:00 2001 From: Houjie <714924425@qq.com> Date: 星期二, 10 六月 2025 16:47:41 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/DailyMaintenanceOrderController.java | 482 ++++++++++++++++++++++++++++++++++++++++++++++------- 1 files changed, 415 insertions(+), 67 deletions(-) diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/DailyMaintenanceOrderController.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/DailyMaintenanceOrderController.java index 06c690a..8e13fa6 100644 --- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/DailyMaintenanceOrderController.java +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/DailyMaintenanceOrderController.java @@ -1,6 +1,7 @@ package org.jeecg.modules.eam.controller; import java.math.BigDecimal; +import java.text.SimpleDateFormat; import java.util.Arrays; import java.util.Date; import java.util.List; @@ -9,6 +10,7 @@ import java.io.IOException; import java.io.UnsupportedEncodingException; import java.net.URLDecoder; +import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @@ -17,6 +19,7 @@ import org.apache.ibatis.annotations.Param; import org.apache.poi.hssf.record.DVALRecord; import org.apache.shiro.SecurityUtils; +import org.jeecg.common.api.dto.message.MessageDTO; import org.jeecg.common.api.vo.Result; import org.jeecg.common.system.api.ISysBaseAPI; import org.jeecg.common.system.base.entity.SysUpload; @@ -37,8 +40,9 @@ import lombok.extern.slf4j.Slf4j; -import org.jeecg.modules.system.entity.SysUser; -import org.jeecg.modules.system.service.ISysUserService; +import org.jeecg.modules.eam.vo.SysFileNameVo; +import org.jeecg.modules.system.entity.*; +import org.jeecg.modules.system.service.*; import org.jeecgframework.poi.excel.ExcelImportUtil; import org.jeecgframework.poi.excel.def.NormalExcelConstants; import org.jeecgframework.poi.excel.entity.ExportParams; @@ -104,6 +108,24 @@ @Autowired private IPrecisionInspectionDetailService precisionInspectionDetailService; + @Autowired + private IMaintenanceStoveExemptService maintenanceStoveExemptService; + + @Autowired + private ITechnologyStatusService technologyStatusService; + + @Autowired + private ISysFileNameService sysFileNameService; + + @Resource + private ISysRoleService sysRoleService; + @Resource + private ISysDictService sysDictService; + @Resource + private ISysDictItemService sysDictItemService; + @Resource + private ISysUserRoleService sysUserRoleService; + /** * 鍒嗛〉鍒楄〃鏌ヨ @@ -125,7 +147,7 @@ } /** - * 鏃ュ父淇濆吇宸ュ崟 + * 浜岀骇淇濆吇宸ュ崟 * qsw 2023-4-14 */ @GetMapping("getDailyMaintenanceOrderList") @@ -140,16 +162,98 @@ record.put("maintenanceCycles", maintenanceCycles); List<Map<String, Object>> dailyMaintenanceDetails = dailyMaintenanceOrderService.getDailyMaintenanceDetailByOrderId(id); + record.put("dailyMaintenanceDetails", dailyMaintenanceDetails); + + List<Map<String, Object>> operationUserDetails = dailyMaintenanceOrderService.getOperationUser(id); + record.put("operationUserDetails", operationUserDetails); + List<Map<String, Object>> repairUserDetails = dailyMaintenanceOrderService.getRepairUser(id); + record.put("repairUserDetails", repairUserDetails); //缁熻宸ユ椂瀹氶 - BigDecimal workingHourQuota = new BigDecimal(0); - for(Map<String, Object> dailyMaintenanceOrderDetail : dailyMaintenanceDetails){ - if(dailyMaintenanceOrderDetail.get("workingHourQuota") != null){ - Integer wh = (Integer)dailyMaintenanceOrderDetail.get("workingHourQuota"); - BigDecimal workingHour = new BigDecimal(wh); - workingHourQuota = workingHourQuota.add(workingHour); - } +// BigDecimal workingHourQuota = new BigDecimal(0); +// for(Map<String, Object> dailyMaintenanceOrderDetail : dailyMaintenanceDetails){ +// if(dailyMaintenanceOrderDetail.get("workingHourQuota") != null){ +// Integer wh = (Integer)dailyMaintenanceOrderDetail.get("workingHourQuota"); +// BigDecimal workingHour = new BigDecimal(wh); +// workingHourQuota = workingHourQuota.add(workingHour); +// } +// } +// record.put("workingHourQuota",workingHourQuota); + + /** + * 澶嶉�夋 涓嶅彲缂栬緫 + */ + /* String status = (String) record.get("status"); + if ("5".equals(status)) { + record.put("distable", false); + } else { + record.put("distable", true); + }*/ + /** + * 缁熻瀹為檯宸ユ椂 + */ +// QueryWrapper<MaintenanceOrderActualWorkingHour> actualWorkingHourWrapper = new QueryWrapper<>(); +// actualWorkingHourWrapper.eq("maintenance_order_id", id).eq("del_flag", 0); +// actualWorkingHourWrapper.select("sum(actual_working_hour_quota) as actualQuantity"); +// Map<String, Object> map = maintenanceOrderActualWorkingHourService.getMap(actualWorkingHourWrapper); +// BigDecimal actualQuantity = new BigDecimal(0); +// if (map != null) { +// actualQuantity = (BigDecimal) map.get("actualQuantity"); +// } +// record.put("actualWorkingHourQuota", actualQuantity); + + List<FinishTransferOrder> finishTransferOrders = finishTransferOrderService.lambdaQuery() + .eq(FinishTransferOrder::getMaintenanceOrderId, id) + .eq(FinishTransferOrder::getEquipmentId, equipmentId).list(); + for (FinishTransferOrder finishTransferOrder : finishTransferOrders) { + String operateUser = finishTransferOrder.getOperateUser(); +// record.put("operateUserName", operateUser+"/"+finishTransferOrder.getTransferOrderUda1()); +// record.put("operateUserName",(StringUtils.isBlank(operateUser) ? "":operateUser+"/"+finishTransferOrder.getTransferOrderUda1())); + record.put("operateUserName",(StringUtils.isBlank(operateUser) ? "":operateUser)); + String repairUser = finishTransferOrder.getRepairUser(); +// record.put("repairUserName", repairUser+"/"+finishTransferOrder.getTransferOrderUda2()); +// record.put("repairUserName",(StringUtils.isBlank(repairUser) ? "":repairUser+"/"+finishTransferOrder.getTransferOrderUda2())); + record.put("repairUserName",(StringUtils.isBlank(repairUser) ? "":repairUser)); + String repairDirectorUser = finishTransferOrder.getRepairDirectorUser(); +// record.put("repairDirectorUserName", repairDirectorUser+"/"+finishTransferOrder.getTransferOrderUda3()); +// record.put("repairDirectorUserName",(StringUtils.isBlank(repairDirectorUser) ? "":repairDirectorUser+"/"+finishTransferOrder.getTransferOrderUda3())); + record.put("repairDirectorUserName",(StringUtils.isBlank(repairDirectorUser) ? "":repairDirectorUser)); + String equipmentInspectorUser = finishTransferOrder.getEquipmentInspectorUser(); +// record.put("equipmentInspectorUserName", equipmentInspectorUser+"/"+finishTransferOrder.getTransferOrderUda4()); +// record.put("equipmentInspectorUserName",(StringUtils.isBlank(equipmentInspectorUser) ? "":equipmentInspectorUser+"/"+finishTransferOrder.getTransferOrderUda4())); + record.put("equipmentInspectorUserName",(StringUtils.isBlank(equipmentInspectorUser) ? "":equipmentInspectorUser)); } - record.put("workingHourQuota",workingHourQuota); + + } + return Result.ok(dailyMaintenanceOrderList); + } + + + /** + * 涓夌骇淇濆吇宸ュ崟 + * qsw 2023-4-14 + */ + @GetMapping("getDailyMaintenanceOrder3List") + public Result<?> getDailyMaintenanceOrder3List(@RequestParam("pageNo") Integer pageNo, @RequestParam("pageSize") Integer pageSize, @RequestParam Map<String, Object> params) { + IPage<Map<String, Object>> dailyMaintenanceOrderList = dailyMaintenanceOrderService.getDailyMaintenanceOrder3List(pageNo, pageSize, params); + List<Map<String, Object>> records = dailyMaintenanceOrderList.getRecords(); + for (Map<String, Object> record : records) { + String id = (String) record.get("id"); +// String equipmentId = (String) record.get("equipmentId"); + String maintenanceStandardId = (String) record.get("maintenanceStandardId"); + List<MaintenanceCycleVo> maintenanceCycles = dailyMaintenanceOrderService.getMaintenanceCycleByStandardId(maintenanceStandardId); + record.put("maintenanceCycles", maintenanceCycles); + + List<Map<String, Object>> dailyMaintenanceDetails = dailyMaintenanceOrderService.getDailyMaintenanceDetailByOrderId(id); + //缁熻宸ユ椂瀹氶 +// BigDecimal workingHourQuota = new BigDecimal(0); +// for(Map<String, Object> dailyMaintenanceOrderDetail : dailyMaintenanceDetails){ +// if(dailyMaintenanceOrderDetail.get("workingHourQuota") != null){ +// Integer wh = (Integer)dailyMaintenanceOrderDetail.get("workingHourQuota"); +// BigDecimal workingHour = new BigDecimal(wh); +// workingHourQuota = workingHourQuota.add(workingHour); +// } +// } +// record.put("workingHourQuota",workingHourQuota); record.put("dailyMaintenanceDetails", dailyMaintenanceDetails); /** * 澶嶉�夋 涓嶅彲缂栬緫 @@ -163,46 +267,30 @@ /** * 缁熻瀹為檯宸ユ椂 */ - QueryWrapper<MaintenanceOrderActualWorkingHour> actualWorkingHourWrapper = new QueryWrapper<>(); - actualWorkingHourWrapper.eq("maintenance_order_id", id).eq("del_flag", 0); - actualWorkingHourWrapper.select("sum(actual_working_hour_quota) as actualQuantity"); - Map<String, Object> map = maintenanceOrderActualWorkingHourService.getMap(actualWorkingHourWrapper); - BigDecimal actualQuantity = new BigDecimal(0); - if (map != null) { - actualQuantity = (BigDecimal) map.get("actualQuantity"); - } - record.put("actualWorkingHourQuota", actualQuantity); +// QueryWrapper<MaintenanceOrderActualWorkingHour> actualWorkingHourWrapper = new QueryWrapper<>(); +// actualWorkingHourWrapper.eq("maintenance_order_id", id).eq("del_flag", 0); +// actualWorkingHourWrapper.select("sum(actual_working_hour_quota) as actualQuantity"); +// Map<String, Object> map = maintenanceOrderActualWorkingHourService.getMap(actualWorkingHourWrapper); +// BigDecimal actualQuantity = new BigDecimal(0); +// if (map != null) { +// actualQuantity = (BigDecimal) map.get("actualQuantity"); +// } +// record.put("actualWorkingHourQuota", actualQuantity); - List<FinishTransferOrder> finishTransferOrders = finishTransferOrderService.lambdaQuery() - .eq(FinishTransferOrder::getMaintenanceOrderId, id) - .eq(FinishTransferOrder::getEquipmentId, equipmentId).list(); - for (FinishTransferOrder finishTransferOrder : finishTransferOrders) { - String operateUser = finishTransferOrder.getOperateUser(); - if(StringUtils.isNotBlank(operateUser)){ - SysUser sysUser = sysUserService.getById(operateUser); - record.put("operateUserName", sysUser.getRealname()); - } - String repairUser = finishTransferOrder.getRepairUser(); - if(StringUtils.isNotBlank(repairUser)){ - SysUser sysUser = sysUserService.getById(repairUser); - record.put("repairUserName", sysUser.getRealname()); - } - String repairDirectorUser = finishTransferOrder.getRepairDirectorUser(); - if(StringUtils.isNotBlank(repairDirectorUser)){ - SysUser sysUser = sysUserService.getById(repairDirectorUser); - record.put("repairDirectorUserName", sysUser.getRealname()); - } - String equipmentInspectorUser = finishTransferOrder.getEquipmentInspectorUser(); - if(StringUtils.isNotBlank(equipmentInspectorUser)){ - SysUser sysUser = sysUserService.getById(equipmentInspectorUser); - record.put("equipmentInspectorUserName", sysUser.getRealname()); - } - + /** + *鑾峰彇鏄惁涓虹倝绫昏澶囨爣璁� + */ + String equipmentCategoryName = (String) record.get("equipmentCategoryName"); + if("鐐夌被璁惧".equals(equipmentCategoryName)){ + record.put("isNotStoveCategoryFlag", true); + }else{ + record.put("isNotStoveCategoryFlag", false); } } return Result.ok(dailyMaintenanceOrderList); } + /** * 娣诲姞 @@ -218,20 +306,23 @@ Date planStartTime = dailyMaintenanceOrder.getPlanStartTime(); String maintenanceCycleId = dailyMaintenanceOrder.getMaintenanceCycleId(); MaintenanceCycle maintenanceCycle = maintenanceCycleService.getById(maintenanceCycleId); - String unit = maintenanceCycle.getUnit(); - int effectiveTime = maintenanceCycle.getEffectiveTime().intValue(); - Date date = null; - if ("min".equals(unit)) { - date = DateUtils.getMinAfter(planStartTime, effectiveTime); - } else if ("hour".equals(unit)) { - date = DateUtils.getHourAfter(planStartTime, effectiveTime); - } else if ("day".equals(unit)) { - date = DateUtils.getDayAfter(planStartTime, effectiveTime); - } - dailyMaintenanceOrder.setPlanEndTime(date);//鍒涘缓绫诲瀷锛�1鎵嬪姩鍒涘缓锛�2鑷姩鍒涘缓锛� +// String unit = maintenanceCycle.getUnit(); +// int effectiveTime = maintenanceCycle.getEffectiveTime().intValue(); +// Date date = null; +// if ("min".equals(unit)) { +// date = DateUtils.getMinAfter(planStartTime, effectiveTime); +// } else if ("hour".equals(unit)) { +// date = DateUtils.getHourAfter(planStartTime, effectiveTime); +// } else if ("day".equals(unit)) { +// date = DateUtils.getDayAfter(planStartTime, effectiveTime); +// } +// dailyMaintenanceOrder.setPlanEndTime(date);//鍒涘缓绫诲瀷锛�1鎵嬪姩鍒涘缓锛�2鑷姩鍒涘缓锛� + dailyMaintenanceOrder.setPlanEndTime(null);//鍒涘缓绫诲瀷锛�1鎵嬪姩鍒涘缓锛�2鑷姩鍒涘缓锛� dailyMaintenanceOrder.setCreateType("1");//鍒涘缓绫诲瀷锛�1鎵嬪姩鍒涘缓锛�2鑷姩鍒涘缓锛� dailyMaintenanceOrder.setConfirmStatus("0");//绉讳氦纭鐘舵�侊紙0鏈‘璁わ紝1涓讳换纭锛�2妫�楠屽憳纭锛� dailyMaintenanceOrder.setPrecisionInspectionStatus("0");//绮惧害妫�楠屽崟娴佺▼鐘舵�侊紙0鏈‘璁わ紝1绮惧害妫�楠岃�咃紝2缁翠慨瀹や富浠伙紝3璁惧妫�楠屽憳锛�4浣跨敤鍗曚綅鎶�鏈富绠★紝5璁惧妫�楠屽憳锛堢洊绔狅級锛� + dailyMaintenanceOrder.setStoveExemptStatus("0");//鐐夌被璁惧璞佸厤20椤圭姸鎬侊紙0鏈‘璁わ紝1缁翠慨瀹や富浠伙紝2淇濆吇浜哄憳锛�3浠〃宸ワ級 + dailyMaintenanceOrder.setStatus("3");//3:鏈紑濮� dailyMaintenanceOrderService.save(dailyMaintenanceOrder); List<DailyMaintenanceOrderDetail> dailyMaintenanceOrderDetails = dailyMaintenanceOrder.getDailyMaintenanceOrderDetails(); for (DailyMaintenanceOrderDetail dailyMaintenanceOrderDetail : dailyMaintenanceOrderDetails) { @@ -291,7 +382,9 @@ * 鑻ユ灉鍘熸爣鍑嗗師鍛ㄦ湡鍙戠敓鍙樺寲锛屽垹闄ゅ師宸ュ崟鏄庣粏 閲嶆柊缁存姢 */ if (!oldMaintenanceStandardId.equals(maintenanceStandardId) || !oldMaintenanceCycleId.equals(maintenanceCycleId)) { - List<DailyMaintenanceOrderDetail> dailyMaintenanceOrderDetails = dailyMaintenanceOrderDetailService.lambdaQuery().eq(DailyMaintenanceOrderDetail::getDailyMaintenanceOrderId, orderId).eq(DailyMaintenanceOrderDetail::getDelFlag, 0).list(); + List<DailyMaintenanceOrderDetail> dailyMaintenanceOrderDetails = dailyMaintenanceOrderDetailService + .lambdaQuery().eq(DailyMaintenanceOrderDetail::getDailyMaintenanceOrderId, orderId) + .eq(DailyMaintenanceOrderDetail::getDelFlag, 0).list(); for (DailyMaintenanceOrderDetail dailyMaintenanceOrderDetail : dailyMaintenanceOrderDetails) { dailyMaintenanceOrderDetailService.removeById(dailyMaintenanceOrderDetail); } @@ -461,6 +554,49 @@ finishTransferOrderService.removeById(finishTransferOrder); } +// /** +// * 鍒犻櫎绮惧害绠$悊琛� +// */ +// List<PrecisionInspection> precisionInspectionList = precisionInspectionService.lambdaQuery() +// .eq(PrecisionInspection::getMaintenanceOrderId, id) +// .eq(PrecisionInspection::getDelFlag,0) +// .eq(PrecisionInspection::getEquipmentId, maintenanceOrder.getEquipmentId()).list(); +// for (PrecisionInspection precisionInspection : precisionInspectionList) { +// List<PrecisionInspectionDetail> precisionInspectionDetails = precisionInspectionDetailService.lambdaQuery() +// .eq(PrecisionInspectionDetail::getPrecisionInspectionId, precisionInspection.getId()) +// .eq(PrecisionInspectionDetail::getDelFlag,0) +// .list(); +// for (PrecisionInspectionDetail precisionInspectionDetail : precisionInspectionDetails) { +// precisionInspectionDetailService.removeById(precisionInspectionDetail); +// } +// precisionInspectionService.removeById(precisionInspection); +// } + + if (b) { + return Result.OK("鎾ら攢鎴愬姛!"); + } else { + return Result.error("鎾ら攢澶辫触!"); + } + } else { + return Result.error("浠呴檺宸插畬宸ョ姸鎬佹挙閿�瀹屾垚鎿嶄綔!"); + } + } + + + + @RequestMapping(value = "/revocation3M", method = {RequestMethod.PUT, RequestMethod.POST}) + @Transactional(rollbackFor = { Exception.class }) + public Result<String> revocation3M(@RequestBody DailyMaintenanceOrder dailyMaintenanceOrder) { + String id = dailyMaintenanceOrder.getId(); + DailyMaintenanceOrder maintenanceOrder = dailyMaintenanceOrderService.getById(id); + String status = maintenanceOrder.getStatus(); + if ("5".equals(status)) { + maintenanceOrder.setActualEndTime(null); + boolean b = dailyMaintenanceOrderService.updateById(dailyMaintenanceOrder); + + /** + * 鍒犻櫎绮惧害妫�楠岃〃 + */ List<PrecisionInspection> precisionInspectionList = precisionInspectionService.lambdaQuery() .eq(PrecisionInspection::getMaintenanceOrderId, id) .eq(PrecisionInspection::getDelFlag,0) @@ -476,6 +612,26 @@ precisionInspectionService.removeById(precisionInspection); } + /** + * 鍒犻櫎鐐夌被妫�娴� + */ + List<MaintenanceStoveExempt> maintenanceStoveExempts = maintenanceStoveExemptService.lambdaQuery() + .eq(MaintenanceStoveExempt::getMaintenanceOrderId, id) + .eq(MaintenanceStoveExempt::getDelFlag, 0).list(); + for (MaintenanceStoveExempt maintenanceStoveExempt : maintenanceStoveExempts) { + maintenanceStoveExemptService.removeById(maintenanceStoveExempt); + } + + /** + * 鍒犻櫎绮惧害妫�楠屽崟 + */ + List<TechnologyStatus> technologyStatusList = technologyStatusService.lambdaQuery() + .eq(TechnologyStatus::getOrderId, id) + .eq(TechnologyStatus::getDelFlag, 0).list(); + for (TechnologyStatus technologyStatus : technologyStatusList) { + technologyStatusService.removeById(technologyStatus); + } + if (b) { return Result.OK("鎾ら攢鎴愬姛!"); } else { @@ -485,6 +641,7 @@ return Result.error("浠呴檺宸插畬宸ョ姸鎬佹挙閿�瀹屾垚鎿嶄綔!"); } } + /** * 淇濆吇宸ュ崟娲惧伐銆佹敼娲� @@ -502,9 +659,52 @@ public Result<String> report(@RequestBody DailyMaintenanceOrder dailyMaintenanceOrder) { LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); String userId = sysUser.getId(); - dailyMaintenanceOrder.setMaintenanceUserId(userId); +// dailyMaintenanceOrder.setMaintenanceUserId(userId); dailyMaintenanceOrder.setActualEndTime(new Date()); boolean b = dailyMaintenanceOrderService.updateById(dailyMaintenanceOrder); + + List<DailyMaintenanceOrderDetail> dailyMaintenanceOrderDetails = dailyMaintenanceOrder.getDailyMaintenanceOrderDetails(); + for (DailyMaintenanceOrderDetail maintenanceOrderDetail : dailyMaintenanceOrderDetails) { + maintenanceOrderDetail.setMaintenanceOrderDetailUda1(dailyMaintenanceOrder.getMaintenanceUserId()); + dailyMaintenanceOrderDetailService.updateById(maintenanceOrderDetail); + } + + String id = dailyMaintenanceOrder.getId(); + DailyMaintenanceOrder maintenanceOrder = dailyMaintenanceOrderService.getById(id); + FinishTransferOrder finishTransferOrder = new FinishTransferOrder(); + finishTransferOrder.setEquipmentId(maintenanceOrder.getEquipmentId()); + finishTransferOrder.setMaintenanceOrderId(maintenanceOrder.getId()); + finishTransferOrder.setStatus("1"); + finishTransferOrder.setDelFlag(0); + finishTransferOrderService.save(finishTransferOrder); + + String equipmentId = maintenanceOrder.getEquipmentId(); + Equipment equipment = equipmentService.getById(equipmentId); + equipment.setSecondMaintenanceTime(new Date()); + equipmentService.updateById(equipment); + + if (!b) { + return Result.error("鎶ュ伐澶辫触!"); + } else { + return Result.ok("鎶ュ伐鎴愬姛!"); + } + } + + + @RequestMapping(value = "/report3M", method = {RequestMethod.PUT, RequestMethod.POST}) + @Transactional(rollbackFor = { Exception.class }) + public Result<String> report3M(@RequestBody DailyMaintenanceOrder dailyMaintenanceOrder) { + LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); + String userId = sysUser.getId(); +// dailyMaintenanceOrder.setMaintenanceUserId(userId); + dailyMaintenanceOrder.setActualEndTime(new Date()); + boolean b = dailyMaintenanceOrderService.updateById(dailyMaintenanceOrder); + + List<DailyMaintenanceOrderDetail> dailyMaintenanceOrderDetails = dailyMaintenanceOrder.getDailyMaintenanceOrderDetails(); + for (DailyMaintenanceOrderDetail maintenanceOrderDetail : dailyMaintenanceOrderDetails) { + maintenanceOrderDetail.setMaintenanceOrderDetailUda1(dailyMaintenanceOrder.getMaintenanceUserId()); + dailyMaintenanceOrderDetailService.updateById(maintenanceOrderDetail); + } String id = dailyMaintenanceOrder.getId(); DailyMaintenanceOrder maintenanceOrder = dailyMaintenanceOrderService.getById(id); @@ -517,7 +717,30 @@ finishTransferOrder.setDelFlag(0); finishTransferOrderService.save(finishTransferOrder); + String equipmentId = maintenanceOrder.getEquipmentId(); + Equipment equipment = equipmentService.getById(equipmentId); + String precisionParameters = equipment.getPrecisionParameters(); + if(!"1".equals(precisionParameters)){ + this.createTechnologyStatus(maintenanceOrder); + } + this.createPrecisionInspection(maintenanceOrder); + + this.createMaintenanceStoveExempt(maintenanceOrder); + + /** + * 涓変繚鎶ュ伐鏃� 鏇存柊鏈涓変繚鏃ユ湡 鍜屼笅娆′笁淇濇棩鏈� + */ + String equipmentImportanceId = equipment.getEquipmentImportanceId(); + equipment.setThirdMaintenanceTime(new Date()); + if("A".equals(equipmentImportanceId)){ + equipment.setNextThirdMaintenanceTime(DateUtils.getYearAfter(new Date(),3)); + }else if("B".equals(equipmentImportanceId)){ + equipment.setNextThirdMaintenanceTime(DateUtils.getYearAfter(new Date(),4)); + }else if("C".equals(equipmentImportanceId)){ + equipment.setNextThirdMaintenanceTime(DateUtils.getYearAfter(new Date(),4)); + } + equipmentService.updateById(equipment); if (!b) { return Result.error("鎶ュ伐澶辫触!"); @@ -549,6 +772,23 @@ } } + + void createMaintenanceStoveExempt(DailyMaintenanceOrder dailyMaintenanceOrder){ + List<SysFileNameVo> sysFileName = sysFileNameService.getSysFileName("20"); + MaintenanceStoveExempt maintenanceStoveExempt = new MaintenanceStoveExempt(); + maintenanceStoveExempt.setMaintenanceOrderId(dailyMaintenanceOrder.getId()); + maintenanceStoveExempt.setReceipts(sysFileName.get(0).getReceipts()); + maintenanceStoveExemptService.save(maintenanceStoveExempt); + } + + void createTechnologyStatus(DailyMaintenanceOrder dailyMaintenanceOrder){ + List<SysFileNameVo> sysFileName = sysFileNameService.getSysFileName("9"); + TechnologyStatus technologyStatus = new TechnologyStatus(); + technologyStatus.setOrderId(dailyMaintenanceOrder.getId()); + technologyStatus.setReceipts(sysFileName.get(0).getReceipts()); + technologyStatusService.save(technologyStatus); + } + /** * 鏃ュ父淇濆吇宸ュ崟 鑾峰彇璁惧鍙扮珯宸茬粦瀹氱殑瀵硅薄閮ㄩ棬 * qsw 2023-7-11 @@ -563,37 +803,145 @@ * 瀹℃壒 */ @RequestMapping(value = "/approve", method = {RequestMethod.PUT, RequestMethod.POST}) + @Transactional(rollbackFor = { Exception.class }) public Result<String> approve(@RequestBody DailyMaintenanceOrder dailyMaintenanceOrder) { LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); - String userId = sysUser.getId(); String orderId = dailyMaintenanceOrder.getId(); + String maintenanceOrderUda3 = dailyMaintenanceOrder.getMaintenanceOrderUda3(); + String confirmStatus = dailyMaintenanceOrder.getConfirmStatus(); + Date maintenanceDate = dailyMaintenanceOrder.getMaintenanceDate(); + DailyMaintenanceOrder maintenanceOrder = dailyMaintenanceOrderService.getById(orderId); String equipmentId = maintenanceOrder.getEquipmentId(); - String confirmStatus = maintenanceOrder.getConfirmStatus(); + String orderUda3 = maintenanceOrder.getMaintenanceOrderUda3(); + maintenanceOrder.setMaintenanceDate(maintenanceDate); + if(StringUtils.isBlank(orderUda3)){ + maintenanceOrder.setMaintenanceOrderUda3(maintenanceOrderUda3); + } List<FinishTransferOrder> finishTransferOrders = finishTransferOrderService.lambdaQuery() .eq(FinishTransferOrder::getMaintenanceOrderId, orderId) .eq(FinishTransferOrder::getEquipmentId, equipmentId).list(); if(finishTransferOrders.size()>0){ FinishTransferOrder finishTransferOrder = finishTransferOrders.get(0); - if ("0".equals(confirmStatus)){ - finishTransferOrder.setRepairDirectorUser(userId); + if("1".equals(confirmStatus)){ + finishTransferOrder.setOperateUser(sysUser.getRealname()); + finishTransferOrder.setTransferOrderUda1(DateUtils.now()); finishTransferOrderService.updateById(finishTransferOrder); - maintenanceOrder.setConfirmStatus("1"); + maintenanceOrder.setConfirmStatus(confirmStatus); dailyMaintenanceOrderService.updateById(maintenanceOrder); - }else{ - finishTransferOrder.setEquipmentInspectorUser(userId); + + this.twoMaintenanceAlert(confirmStatus,"浜屼繚绉讳氦鍗曠淮淇汉鍛�",maintenanceOrder.getNum()); + }else if("2".equals(confirmStatus)){ + finishTransferOrder.setEquipmentInspectorUser(""); + finishTransferOrder.setRepairDirectorUser(""); + finishTransferOrder.setRepairUser(""); + finishTransferOrder.setOperateUser(""); + finishTransferOrder.setTransferOrderUda1(""); finishTransferOrderService.updateById(finishTransferOrder); - maintenanceOrder.setConfirmStatus("2"); + maintenanceOrder.setConfirmStatus(confirmStatus); + dailyMaintenanceOrderService.updateById(maintenanceOrder); + + this.twoMaintenanceAlert(confirmStatus,"浜屼繚绉讳氦鍗曟搷浣滀汉鍛�",maintenanceOrder.getNum()); + }else if("3".equals(confirmStatus)){ + finishTransferOrder.setRepairUser(sysUser.getRealname()); + finishTransferOrder.setTransferOrderUda2(DateUtils.now()); + finishTransferOrderService.updateById(finishTransferOrder); + + maintenanceOrder.setConfirmStatus(confirmStatus); + dailyMaintenanceOrderService.updateById(maintenanceOrder); + + this.twoMaintenanceAlert(confirmStatus,"浜屼繚绉讳氦鍗曠淮淇涓讳换",maintenanceOrder.getNum()); + }else if("4".equals(confirmStatus)){ + finishTransferOrder.setEquipmentInspectorUser(""); + finishTransferOrder.setRepairDirectorUser(""); + finishTransferOrder.setRepairUser(""); + finishTransferOrder.setTransferOrderUda2(""); + finishTransferOrderService.updateById(finishTransferOrder); + + maintenanceOrder.setConfirmStatus(confirmStatus); + dailyMaintenanceOrderService.updateById(maintenanceOrder); + + this.twoMaintenanceAlert(confirmStatus,"浜屼繚绉讳氦鍗曠淮淇汉鍛�",maintenanceOrder.getNum()); + }else if("5".equals(confirmStatus)){ + finishTransferOrder.setRepairDirectorUser(sysUser.getRealname()); + finishTransferOrder.setTransferOrderUda3(DateUtils.now()); + finishTransferOrderService.updateById(finishTransferOrder); + + maintenanceOrder.setConfirmStatus(confirmStatus); + dailyMaintenanceOrderService.updateById(maintenanceOrder); + + this.twoMaintenanceAlert(confirmStatus,"浜屼繚绉讳氦鍗曟楠屽憳",maintenanceOrder.getNum()); + }else if("6".equals(confirmStatus)){ + finishTransferOrder.setRepairDirectorUser(""); + finishTransferOrder.setTransferOrderUda3(""); + finishTransferOrderService.updateById(finishTransferOrder); + + maintenanceOrder.setConfirmStatus(confirmStatus); + dailyMaintenanceOrderService.updateById(maintenanceOrder); + + this.twoMaintenanceAlert(confirmStatus,"浜屼繚绉讳氦鍗曠淮淇涓讳换",maintenanceOrder.getNum()); + }else if("7".equals(confirmStatus)){ + finishTransferOrder.setEquipmentInspectorUser(sysUser.getRealname()); + finishTransferOrder.setTransferOrderUda4(DateUtils.now()); + finishTransferOrderService.updateById(finishTransferOrder); + + maintenanceOrder.setConfirmStatus(confirmStatus); maintenanceOrder.setStatus("8"); dailyMaintenanceOrderService.updateById(maintenanceOrder); } } - return Result.OK("瀹℃壒鎴愬姛!"); } + void twoMaintenanceAlert(String confirmStatus,String roleDictItem,String orderNum){ + + LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); + SysDict sysDict = sysDictService.getOne(new QueryWrapper<SysDict>().eq("dict_code","info_type"),false); + SysDictItem sysDictItem = sysDictItemService.getOne(new QueryWrapper<SysDictItem>().eq("item_text",roleDictItem) + .eq("dict_id",sysDict.getId()),false); + String roleCode = sysDictItem.getItemValue(); + SysRole sysRole = sysRoleService.getOne(new QueryWrapper<SysRole>().eq("role_code",roleCode),false); + List<SysUserRole> sysUserRoles = sysUserRoleService.list(new QueryWrapper<SysUserRole>().eq("role_id",sysRole.getId())); + for(SysUserRole sysUserRole:sysUserRoles){ + SysUser user = sysUserService.getById(sysUserRole.getUserId()); + String msg = ""; + if("1".equals(confirmStatus)){ + msg = "銆�"+sysUser.getRealname()+"銆�"+"灏嗕簩绾т繚鍏诲伐鍗曞彿銆�"+orderNum+"銆戠殑瀹屽伐绉讳氦鍗曠‘璁ら�氳繃锛岃鍒颁簩绾т繚鍏婚〉闈㈡煡鐪嬶紒"; + }else if("2".equals(confirmStatus)){ + msg = "銆�"+sysUser.getRealname()+"銆�"+"灏嗕簩绾т繚鍏诲伐鍗曞彿銆�"+orderNum+"銆戠殑瀹屽伐绉讳氦鍗曠‘椹冲洖锛岃鍒颁簩绾т繚鍏婚〉闈㈡煡鐪嬶紒"; + }else if("3".equals(confirmStatus)){ + msg = "銆�"+sysUser.getRealname()+"銆�"+"灏嗕簩绾т繚鍏诲伐鍗曞彿銆�"+orderNum+"銆戠殑瀹屽伐绉讳氦鍗曠‘璁ら�氳繃锛岃鍒颁簩绾т繚鍏婚〉闈㈡煡鐪嬶紒"; + }else if("4".equals(confirmStatus)){ + msg = "銆�"+sysUser.getRealname()+"銆�"+"灏嗕簩绾т繚鍏诲伐鍗曞彿銆�"+orderNum+"銆戠殑瀹屽伐绉讳氦鍗曠‘椹冲洖锛岃鍒颁簩绾т繚鍏婚〉闈㈡煡鐪嬶紒"; + }else if("5".equals(confirmStatus)){ + msg = "銆�"+sysUser.getRealname()+"銆�"+"灏嗕簩绾т繚鍏诲伐鍗曞彿銆�"+orderNum+"銆戠殑瀹屽伐绉讳氦鍗曠‘璁ら�氳繃锛岃鍒颁簩绾т繚鍏婚〉闈㈡煡鐪嬶紒"; + }else if("6".equals(confirmStatus)){ + msg = "銆�"+sysUser.getRealname()+"銆�"+"灏嗕簩绾т繚鍏诲伐鍗曞彿銆�"+orderNum+"銆戠殑瀹屽伐绉讳氦鍗曠‘椹冲洖锛岃鍒颁簩绾т繚鍏婚〉闈㈡煡鐪嬶紒"; + } + MessageDTO messageDTO = new MessageDTO(); + messageDTO.setTitle("瀹屽伐绉讳氦鍗曟秷鎭彁閱掞紒"); + messageDTO.setContent(msg); + messageDTO.setCategory(roleDictItem); + messageDTO.setFromUser("瀹屽伐绉讳氦鍗曟秷鎭彁閱掓彁閱掑皬鍔╂墜"); + messageDTO.setToUser(user.getUsername()); + sysBaseApi.sendSysAnnouncement(messageDTO); + } + } + + @RequestMapping(value = "/editTechnologyStatus", method = {RequestMethod.PUT,RequestMethod.POST}) + @Transactional(rollbackFor = { Exception.class }) + public Result<String> editTechnologyStatus(@RequestBody Equipment equipment) { + equipment.setTechnologyStatusVerificationType("1"); + equipmentService.updateById(equipment); + + DailyMaintenanceOrder dailyMaintenanceOrder = dailyMaintenanceOrderService.getById(equipment.getMaintenanceOrderId()); + dailyMaintenanceOrder.setStatus("8"); + dailyMaintenanceOrderService.updateById(dailyMaintenanceOrder); + return Result.OK("缂栬緫鎴愬姛!"); + } + } -- Gitblit v1.9.3