From ae33e68baf21878ce145d75ac377d14c1e2b2a82 Mon Sep 17 00:00:00 2001
From: “linengliang” <vanSuperEnergy@163.com>
Date: 星期三, 13 十二月 2023 14:59:26 +0800
Subject: [PATCH] 设备台账

---
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/DailyMaintenanceOrderController.java |   90 ++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 88 insertions(+), 2 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 862676c..ba3283b 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
@@ -9,6 +9,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 +18,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;
@@ -38,8 +40,8 @@
 
 
 import org.jeecg.modules.eam.vo.SysFileNameVo;
-import org.jeecg.modules.system.entity.SysUser;
-import org.jeecg.modules.system.service.ISysUserService;
+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;
@@ -109,7 +111,19 @@
     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;
 
 
     /**
@@ -591,6 +605,16 @@
                 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 {
@@ -665,6 +689,13 @@
         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);
@@ -708,6 +739,14 @@
         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
@@ -748,6 +787,8 @@
 
                maintenanceOrder.setConfirmStatus(confirmStatus);
                dailyMaintenanceOrderService.updateById(maintenanceOrder);
+
+               this.twoMaintenanceAlert(confirmStatus,"浜屼繚绉讳氦鍗曠淮淇汉鍛�",maintenanceOrder.getNum());
            }else if("2".equals(confirmStatus)){
                finishTransferOrder.setEquipmentInspectorUser("");
                finishTransferOrder.setRepairDirectorUser("");
@@ -757,12 +798,16 @@
 
                maintenanceOrder.setConfirmStatus(confirmStatus);
                dailyMaintenanceOrderService.updateById(maintenanceOrder);
+
+               this.twoMaintenanceAlert(confirmStatus,"浜屼繚绉讳氦鍗曟搷浣滀汉鍛�",maintenanceOrder.getNum());
            }else if("3".equals(confirmStatus)){
                finishTransferOrder.setRepairUser(sysUser.getRealname());
                finishTransferOrderService.updateById(finishTransferOrder);
 
                maintenanceOrder.setConfirmStatus(confirmStatus);
                dailyMaintenanceOrderService.updateById(maintenanceOrder);
+
+               this.twoMaintenanceAlert(confirmStatus,"浜屼繚绉讳氦鍗曠淮淇涓讳换",maintenanceOrder.getNum());
            }else if("4".equals(confirmStatus)){
                finishTransferOrder.setEquipmentInspectorUser("");
                finishTransferOrder.setRepairDirectorUser("");
@@ -771,18 +816,24 @@
 
                maintenanceOrder.setConfirmStatus(confirmStatus);
                dailyMaintenanceOrderService.updateById(maintenanceOrder);
+
+               this.twoMaintenanceAlert(confirmStatus,"浜屼繚绉讳氦鍗曠淮淇汉鍛�",maintenanceOrder.getNum());
            }else if("5".equals(confirmStatus)){
                finishTransferOrder.setRepairDirectorUser(sysUser.getRealname());
                finishTransferOrderService.updateById(finishTransferOrder);
 
                maintenanceOrder.setConfirmStatus(confirmStatus);
                dailyMaintenanceOrderService.updateById(maintenanceOrder);
+
+               this.twoMaintenanceAlert(confirmStatus,"浜屼繚绉讳氦鍗曟楠屽憳",maintenanceOrder.getNum());
            }else if("6".equals(confirmStatus)){
                finishTransferOrder.setRepairDirectorUser("");
                finishTransferOrderService.updateById(finishTransferOrder);
 
                maintenanceOrder.setConfirmStatus(confirmStatus);
                dailyMaintenanceOrderService.updateById(maintenanceOrder);
+
+               this.twoMaintenanceAlert(confirmStatus,"浜屼繚绉讳氦鍗曠淮淇涓讳换",maintenanceOrder.getNum());
            }else if("7".equals(confirmStatus)){
                finishTransferOrder.setEquipmentInspectorUser(sysUser.getRealname());
                finishTransferOrderService.updateById(finishTransferOrder);
@@ -795,6 +846,41 @@
         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) {

--
Gitblit v1.9.3