From 1a2258c4eca2e7514b6096004fa1c3e0036b402b Mon Sep 17 00:00:00 2001
From: qushaowei <qushaowei@163.com>
Date: 星期四, 28 三月 2024 14:04:24 +0800
Subject: [PATCH] Merge branch 'master' of http://117.34.109.166:18448/r/mdc_430 into develop

---
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/CalibrationOrderServiceImpl.java |   84 +++++++++++++++++++++++++++++++++++++----
 1 files changed, 75 insertions(+), 9 deletions(-)

diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/CalibrationOrderServiceImpl.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/CalibrationOrderServiceImpl.java
index b5d72fa..13ad3d5 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/CalibrationOrderServiceImpl.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/CalibrationOrderServiceImpl.java
@@ -129,6 +129,16 @@
     }
 
     /**
+     * 鏍规嵁妯″瀷浼犲叆鐨勭紪鐮�  鍒ゆ柇鏀圭紪鐮佸叕鍙�/涓績/宸ユ鐨勫摢涓�绾�
+     * 鑾峰彇褰撳墠鐧诲綍浜哄伐娈电骇瀵瑰簲鐨勭紪鐮�
+     * qsw 2024-3-18
+     */
+    @Override
+    public String findAreaProductionCode(String userId) {
+        return this.baseMapper.findAreaProductionCode(userId);
+    }
+
+    /**
      * 璁惧妫�瀹氬伐鍗� 鍒涘缓鏃堕�氳繃璁惧鑾峰彇璁惧绮惧害鍙傛暟
      * qsw 2023-7-18
      */
@@ -247,11 +257,30 @@
     }
 
     /**
+     *宸ユ绾� 鏈湀涓変繚寤舵湡鏁伴噺
+     * qsw 2024-3-20
+     */
+    @Override
+    public List<Map<String, Object>> get3MaintenancePostponeCount(String areaId) {
+        return this.baseMapper.get3MaintenancePostponeCount(areaId);
+    }
+
+    /**
+     *宸ユ绾� 鏈湀涓変繚瓒呮湡鏁伴噺
+     * qsw 2024-3-20
+     */
+    @Override
+    public List<Map<String, Object>> get3MaintenanceOverdueCount(String areaId) {
+        return this.baseMapper.get3MaintenanceOverdueCount(areaId);
+    }
+
+    /**
      *棣栭〉浜屼繚璁″垝灞曠ず
      * qsw 2024-3-15
      */
     @Override
     public List<Map<String, Object>> getTwoMaintenancePlanList(String productionCode) {
+        Boolean flag = true;
         List<Map<String, Object>> list = new ArrayList<>();
         LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal();
         Integer userType = user.getUserType();
@@ -264,18 +293,55 @@
                 if(ORG_TYPE_2.equals(orgType)){
                     Area area = areaService.getOne(new LambdaQueryWrapper<Area>().eq(Area::getNum, productionCode).eq(Area::getType, "1").eq(Area::getDelFlag, 0));
                     areaList = areaService.lambdaQuery().eq(Area::getType, "1").eq(Area::getId,area.getId()).eq(Area::getDelFlag, "0").list();
+                } else if(ORG_TYPE_3.equals(orgType)){
+                    //宸ユ绾х洿鎺ユ樉绀哄伐娈典笅瑕佷繚鍏荤殑璁惧鏄庣粏
+                    flag = false;
+                    String siteProductionCode = this.baseMapper.findSiteProductionCode(productionCode);
+                    Area areaOne = areaService.getOne(new LambdaQueryWrapper<Area>().eq(Area::getNum, siteProductionCode).eq(Area::getType, "1").eq(Area::getDelFlag, 0));
+                    Area area = areaService.getOne(new LambdaQueryWrapper<Area>().eq(Area::getNum, productionCode).eq(Area::getType, "3").eq(Area::getDelFlag, 0));
+                    if(areaOne != null && area != null){
+                        String maintenanceDate = this.baseMapper.findMaintenanceDate(areaOne.getId());
+                        list = this.baseMapper.getAreTwoMaintenancePlanDetails(area.getId(), maintenanceDate);
+                    }
                 }
-//                else if(ORG_TYPE_3.equals(orgType)){
-//                    Area area = areaService.getOne(new LambdaQueryWrapper<Area>().eq(Area::getNum, productionCode).eq(Area::getType, "3").eq(Area::getDelFlag, 0));
-//                    list = calibrationOrderService.getThisMonthMaintenanceFinishList("",area.getId());
-//                }
+            }
+        }else if(USER_TYPE_3.equals(userType)){
+            String code = this.baseMapper.findProductionCode(user.getId());
+            Area area = null;
+            if(StringUtils.isBlank(productionCode)){
+                area = areaService.getOne(new LambdaQueryWrapper<Area>().eq(Area::getNum, code).eq(Area::getType, "1").eq(Area::getDelFlag, 0));
+                if(area != null){
+                    areaList = areaService.lambdaQuery().eq(Area::getType, "1").eq(Area::getId,area.getId()).eq(Area::getDelFlag, "0").list();
+                }
+            }else{
+                //宸ユ绾х洿鎺ユ樉绀哄伐娈典笅瑕佷繚鍏荤殑璁惧鏄庣粏
+                flag = false;
+                Area areaOne = areaService.getOne(new LambdaQueryWrapper<Area>().eq(Area::getNum, code).eq(Area::getType, "1").eq(Area::getDelFlag, 0));
+                area = areaService.getOne(new LambdaQueryWrapper<Area>().eq(Area::getNum, productionCode).eq(Area::getType, "3").eq(Area::getDelFlag, 0));
+                if(areaOne != null && area != null){
+                    String maintenanceDate = this.baseMapper.findMaintenanceDate(areaOne.getId());
+                    list = this.baseMapper.getAreTwoMaintenancePlanDetails(area.getId(), maintenanceDate);
+                }
+            }
+        }else if(USER_TYPE_2.equals(userType)){
+            //宸ユ绾х洿鎺ユ樉绀哄伐娈典笅瑕佷繚鍏荤殑璁惧鏄庣粏
+            flag = false;
+            String areaProductionCode = this.baseMapper.findAreaProductionCode(user.getId());
+            String code = this.baseMapper.findSiteProductionCode(productionCode);
+            Area areaOne = areaService.getOne(new LambdaQueryWrapper<Area>().eq(Area::getNum, code).eq(Area::getType, "1").eq(Area::getDelFlag, 0));
+            Area area = areaService.getOne(new LambdaQueryWrapper<Area>().eq(Area::getNum, areaProductionCode).eq(Area::getType, "3").eq(Area::getDelFlag, 0));
+            if(areaOne != null && area != null){
+                String maintenanceDate = this.baseMapper.findMaintenanceDate(areaOne.getId());
+                list = this.baseMapper.getAreTwoMaintenancePlanDetails(area.getId(), maintenanceDate);
             }
         }
-        for (Area area : areaList) {
-            String id = area.getId();
-            List<Map<String, Object>> centerTwoMaintenancePlanList = this.baseMapper.getCenterTwoMaintenancePlanList(id);
-            if(centerTwoMaintenancePlanList.size()>0){
-                list.add(centerTwoMaintenancePlanList.get(0));
+        if(flag == true){
+            for (Area area : areaList) {
+                String id = area.getId();
+                List<Map<String, Object>> centerTwoMaintenancePlanList = this.baseMapper.getCenterTwoMaintenancePlanList(id);
+                if(centerTwoMaintenancePlanList.size()>0){
+                    list.add(centerTwoMaintenancePlanList.get(0));
+                }
             }
         }
         return list;

--
Gitblit v1.9.3