Просмотр исходного кода

[task-1493]【后端】设备维护周期配置调整

Li Yuan 2 лет назад
Родитель
Сommit
9248cdfddf

+ 28 - 25
ibps-provider-root/modules/provider-platform/src/main/java/com/lc/ibps/platform/plan/job/EquipmentMaintenancePlanJob.java

@@ -58,31 +58,34 @@ public class EquipmentMaintenancePlanJob  extends BaseJob2 {
     }
 
     private List<Map<String, Object>> fetchRecords(String[] queryParam) {
-        String querySql = "SELECT * FROM (SELECT YEAR(#{p0}) AS ji_hua_nian_du_ ," +
-                "        CASE device.wei_hu_zhou_qi_c_ " +
-                "        WHEN '日保养' THEN DATE_FORMAT(#{p0}, '%j') " +
-                "        WHEN '周保养' THEN DATE_FORMAT(#{p0}, '%u') " +
-                "        WHEN '月保养' THEN MONTH(#{p0}) " +
-                "        WHEN '季度保养' THEN QUARTER(#{p0}) " +
-                "        WHEN '半年保养' THEN IF(MONTH(#{p0})-6>0,2,1) "+
-                "        WHEN '年保养' THEN YEAR(#{p0}) " +
-                "        ELSE CONCAT (DATE_FORMAT(#{p0}, '%u'),'.',WEEKDAY(#{p0})+1)" +
-                "        END AS period_num,device.wei_hu_zhou_qi_c_ as zhu_zhou_qi_ ,device.id_ as she_bei_bian_hao_,device.bian_zhi_bu_men_, " +
-                "        device.she_bei_ming_cheng_ as she_bei_ming_chen,device.she_bei_shi_bie_h as ri_qi_,device.cun_fang_di_dian_ as sheng_xiao_ri_qi_, " +
-                "        jhb.id_ as ji_hua_zong_wai_j,jhzb.id_  as ji_hua_wai_jian_ ,device.wei_hu_fang_shi_ as wei_hu_gang_wei_ , " +
-                "        device.di_dian_ ,device.yuan_she_bei_bian as original_device_n " +
-                "        FROM `t_mjsbwhjhb` jhb,`t_mjsbwhjhzb` jhzb,`v_device_devicemaintenance` device " +
-                "        WHERE jhb.shi_fou_guo_shen_='已完成'  AND jhb.zhi_xing_zhuang_t='正常' " +
-                "        AND jhb.id_ = jhzb.parent_id_ " +
-                "        AND jhzb.she_bei_bian_hao_ = device.id_ AND device.id_ NOT IN " +
-                "       (SELECT id_ FROM v_device_devicemaintenance WHERE " +
-                "       (wei_hu_zhou_qi_c_ ='每周1,3,5' AND FIND_IN_SET(WEEKDAY(#{p0}),'0,2,4')=0) OR " +
-                "       (wei_hu_zhou_qi_c_ ='每周2,4' AND FIND_IN_SET(WEEKDAY(#{p0}),'1,3')=0) OR " +
-                "       (wei_hu_zhou_qi_c_ ='每周1-5' AND FIND_IN_SET(WEEKDAY(#{p0}),'5,6')>0) OR " +
-                "       (wei_hu_zhou_qi_c_ ='每周1-6' AND FIND_IN_SET(WEEKDAY(#{p0}),'6')>0) OR" +
-                "       (wei_hu_zhou_qi_c_ ='每周1,4' AND FIND_IN_SET(WEEKDAY(#{p0}),'0,3')=0) )) plan " +
-                "        WHERE NOT EXISTS (SELECT 1 FROM `t_mjsbwhbyjlby` jlb WHERE jlb.she_bei_bian_hao_ = plan.she_bei_bian_hao_ AND jlb.zhu_zhou_qi_ = plan.zhu_zhou_qi_ " +
-                "        AND jlb.period_num = plan.period_num AND jlb.ji_hua_nian_du_=plan.ji_hua_nian_du_)" +
+        String querySql = "SELECT * FROM (SELECT YEAR(#{p0}) AS ji_hua_nian_du_ , " +
+                "    CASE device.wei_hu_lei_xing_" +
+                "    WHEN '日保养' THEN DATE_FORMAT(#{p0}, '%j')  " +
+                "    WHEN '周保养' THEN DATE_FORMAT(#{p0}, '%u')  " +
+                "    WHEN '月保养' THEN MONTH(#{p0})  " +
+                "    WHEN '季度保养' THEN QUARTER(#{p0})  " +
+                "    WHEN '半年保养' THEN IF(MONTH(#{p0})-6>0,2,1) " +
+                "    WHEN '年保养' THEN YEAR(#{p0})  " +
+                "    ELSE CONCAT (DATE_FORMAT(#{p0}, '%u'),'.',WEEKDAY(#{p0})+1) " +
+                "    END AS period_num,device.wei_hu_ri_qi_ AS zhu_zhou_qi_ ,device.id_ AS she_bei_bian_hao_,device.bian_zhi_bu_men_,  " +
+                "    device.she_bei_ming_cheng_ AS she_bei_ming_chen,device.she_bei_shi_bie_h AS ri_qi_,device.cun_fang_di_dian_ AS sheng_xiao_ri_qi_,  " +
+                "    jhb.id_ AS ji_hua_zong_wai_j,jhzb.id_  AS ji_hua_wai_jian_ ,device.wei_hu_fang_shi_ AS wei_hu_gang_wei_ ,  " +
+                "    device.di_dian_ ,device.yuan_she_bei_bian AS original_device_n  " +
+                "    FROM `t_mjsbwhjhb` jhb,`t_mjsbwhjhzb` jhzb,`v_device_devicemaintenance` device  " +
+                "    WHERE jhb.shi_fou_guo_shen_='已完成'  AND jhb.zhi_xing_zhuang_t='正常'  " +
+                "    AND jhb.id_ = jhzb.parent_id_  " +
+                "    AND device.wei_hu_lei_xing_ IS NOT NULL" +
+                "    AND jhzb.she_bei_bian_hao_ = device.id_ AND device.id_  NOT IN  " +
+                "   (SELECT id_ FROM v_device_devicemaintenance WHERE " +
+                "   (wei_hu_lei_xing_ ='日保养' AND FIND_IN_SET(WEEKDAY(#{p0})+1,ri_qi_shu_zi_)=0 ) OR" +
+                "   (wei_hu_lei_xing_ ='周保养' AND ri_qi_shu_zi_ - WEEKDAY(#{p0})  >1 ) OR" +
+                "   (wei_hu_lei_xing_ ='月保养' AND ri_qi_shu_zi_ - DAY(#{p0})  >0 ) OR" +
+                "   (wei_hu_lei_xing_ ='季度保养' AND ri_qi_shu_zi_ MOD 3 <> MONTH(#{p0}) MOD 3 ) OR" +
+                "   (wei_hu_lei_xing_ ='半年保养' AND ri_qi_shu_zi_ MOD 6 <> MONTH(#{p0}) MOD 6  ) OR" +
+                "   (wei_hu_lei_xing_ ='年保养' AND ri_qi_shu_zi_ - MONTH(#{p0})  >0 )" +
+                "   )) plan  " +
+                "    WHERE NOT EXISTS (SELECT 1 FROM `t_mjsbwhbyjlby` jlb WHERE jlb.she_bei_bian_hao_ = plan.she_bei_bian_hao_ " +
+                "    AND jlb.period_num = plan.period_num AND jlb.ji_hua_nian_du_=plan.ji_hua_nian_du_)" +
                 "       ORDER BY she_bei_bian_hao_,ji_hua_zong_wai_j DESC";