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

[task-2627]双击切换主部门后,仅展示主部门的设备维护和设施环境相关信息

szjbdgzl 1 год назад
Родитель
Сommit
5579508b48

+ 18 - 14
ibps-provider-root/modules/provider-bpmn/src/main/java/com/lc/ibps/office/provider/BpmInitiatedProvider.java

@@ -1467,9 +1467,12 @@ public class BpmInitiatedProvider extends GenericProvider implements IBpmInitiat
 			ICommonDao<?> commonDao = AppUtil.getBean(ICommonDao.class);
 			String currentUserId = ContextUtil.getCurrentUserId();
 			List<Map<String,Object>> object3 =
-					(List<Map<String, Object>>) commonDao.query(" SELECT entity.parent_id_ as id_ FROM ibps_party_entity entity, ibps_party_employee em " +
+					(List<Map<String, Object>>) commonDao.query(" SELECT entity.parent_id_ as di_dian,entity.id_ as id_ FROM ibps_party_entity entity, ibps_party_employee em " +
 							" WHERE entity.party_type_='position' AND entity.depth_=3 AND em.id_=#{p0} AND FIND_IN_SET(entity.id_,em.positions_)" , new String[]{currentUserId});
-
+			String jyk = "";
+			if (Collections.isNotEmpty(object3)){
+				jyk = object3.get(0).get("id_").toString();
+			}
 			// 获取当前用户主部门
 			String mainPosition = "";
 			String sql3 = "select p.id_ from IBPS_PARTY_POSITION p INNER JOIN ibps_party_rel r on p.id_=r.MAIN_PID_ " +
@@ -1478,6 +1481,7 @@ public class BpmInitiatedProvider extends GenericProvider implements IBpmInitiat
 			if (BeanUtils.isNotEmpty(data)){
 				mainPosition = data.get("id_").toString();
 			}
+			boolean jykAndMainPosi = BeanUtils.isNotEmpty(mainPosition) && mainPosition.equals(jyk);
 			try {
 //				final Infobox infobox = new Infobox();
 //				myCompleted(multiTaskType, name, executor, workerWrappers, list, infobox);
@@ -1527,20 +1531,20 @@ public class BpmInitiatedProvider extends GenericProvider implements IBpmInitiat
 				infobox2.setAlias("myDevices");
 				infobox2.setDataText("-1");
 				infobox2.setAccessToken(ContextUtil.getCurrentAccessToken());
-				String sql;
-				if (BeanUtils.isNotEmpty(mainPosition)){
+				String sql = "";
+				if (jykAndMainPosi){
+					sql ="SELECT COUNT(1) AS total FROM  t_mjsbwhbyjlby WHERE di_dian_='%s' AND DATE(create_time_)=CURDATE() AND shi_fou_guo_shen_='待处理'";
+					sql = String.format(sql,object3.get(0).get("di_dian"));
+				}else if (BeanUtils.isNotEmpty(mainPosition)){
 					sql = "SELECT COUNT(1) AS total FROM  t_mjsbwhbyjlby v,ibps_party_employee u " +
 							"	WHERE FIND_IN_SET(v.bian_zhi_bu_men_, '%s') AND u.id_='%s' " +
 							"	AND DATE(v.create_time_)=CURDATE() AND shi_fou_guo_shen_='待处理'";
 					sql = String.format(sql,mainPosition,currentUserId);
-				}else if(Collections.isEmpty(object3)) {
+				}else {
 					sql = "SELECT COUNT(1) AS total FROM  t_mjsbwhbyjlby v,ibps_party_employee u " +
 							"	WHERE FIND_IN_SET(v.bian_zhi_bu_men_, u.positions_) AND u.id_='%s' " +
 							"	AND DATE(v.create_time_)=CURDATE() AND shi_fou_guo_shen_='待处理'";
 					sql = String.format(sql,currentUserId);
-				}else{
-					sql ="SELECT COUNT(1) AS total FROM  t_mjsbwhbyjlby WHERE di_dian_='%s' AND DATE(create_time_)=CURDATE() AND shi_fou_guo_shen_='待处理'";
-					sql = String.format(sql,object3.get(0).get("id_"));
 				}
 				infobox2.setDataText(commonDao.queryOne(sql).get("total").toString());
 				list.add(infobox2);
@@ -1560,18 +1564,18 @@ public class BpmInitiatedProvider extends GenericProvider implements IBpmInitiat
 				infobox2.setAlias("myFacility");
 				infobox2.setDataText("-1");
 				infobox2.setAccessToken(ContextUtil.getCurrentAccessToken());
-				String sql;
-				if (BeanUtils.isNotEmpty(mainPosition)){
+				String sql = "";
+				if (jykAndMainPosi){
+					sql = "SELECT COUNT(1) AS total FROM v_facs_summary_daily WHERE shi_fou_guo_shen_='待处理' and  di_dian_='%s'";
+					sql = String.format(sql,object3.get(0).get("di_dian"));
+				}else if (BeanUtils.isNotEmpty(mainPosition)){
 					sql = "SELECT COUNT(1) AS total FROM v_facs_summary_daily facs, ibps_party_employee emp " +
 							"WHERE shi_fou_guo_shen_='待处理' and FIND_IN_SET(bian_zhi_bu_men_,'%s') AND emp.id_='%s'";
 					sql = String.format(sql,mainPosition,currentUserId);
-				}else if(Collections.isEmpty(object3)) {
+				}else {
 					sql = "SELECT COUNT(1) AS total FROM v_facs_summary_daily facs, ibps_party_employee emp " +
 							"WHERE shi_fou_guo_shen_='待处理' and FIND_IN_SET(bian_zhi_bu_men_,emp.positions_) AND emp.id_='%s'";
 					sql = String.format(sql,currentUserId);
-				}else{
-					sql = "SELECT COUNT(1) AS total FROM v_facs_summary_daily WHERE shi_fou_guo_shen_='待处理' and  di_dian_='%s'";
-					sql = String.format(sql,object3.get(0).get("id_"));
 				}
 				infobox2.setDataText(commonDao.queryOne(sql).get("total").toString());
 				list.add(infobox2);

+ 21 - 18
ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/business/service/impl/FacilityEnvironmentServiceImpl.java

@@ -50,30 +50,33 @@ public class FacilityEnvironmentServiceImpl implements FacilityEnvironmentServic
                 buMen = result1.getData().stream().map(n -> n.getId()).collect(Collectors.joining(","));
             }
         }
-        String sql = " SELECT parent_id_ as id_ FROM ibps_party_entity  WHERE party_type_='position' AND depth_=3 AND FIND_IN_SET(id_,'%s')";
-        List<Map<String,Object>> object3 =
-                (List<Map<String, Object>>) commonDao.query(String.format(sql,buMen));
+        String sql = " SELECT parent_id_ as di_dian,id_ FROM ibps_party_entity  WHERE party_type_='position' AND depth_=3 AND FIND_IN_SET(id_,'%s')";
+        List<Map<String,Object>> object3 = (List<Map<String, Object>>) commonDao.query(String.format(sql,buMen));
+        String jyk = "";String mainPosition = "";
+        if (BeanUtils.isNotEmpty(object3)){
+            jyk = object3.get(0).get("id_").toString();
+        }
         String sql3 = "select p.id_ from IBPS_PARTY_POSITION p INNER JOIN ibps_party_rel r on p.id_=r.MAIN_PID_ " +
                 "where r.sub_pid_='%s' and r.BIZ_='mainPost' ORDER BY p.CREATE_TIME_ DESC";
         Map<String, Object> data = commonDao.queryOne(String.format(sql3,userId));
+        String fetchSql = "SELECT jian_ce_zhou_qi_,facs_type,pos.name_,COUNT(shi_fou_guo_shen_<>'已完成'  OR NULL ) AS todo,COUNT(shi_fou_guo_shen_='已完成'  OR NULL) AS done ,MAX(facs.pagePath) AS pagePath" +
+                "   FROM v_facs_summary_daily, ibps_party_position pos,(SELECT DISTINCT pagePath,`type` FROM v_facs WHERE pagePath <>'') facs" +
+                "   WHERE FIND_IN_SET(bian_zhi_bu_men_,'%s') AND bian_zhi_bu_men_=pos.id_ AND facs_type = facs.type" +
+                "   GROUP BY jian_ce_zhou_qi_,facs_type,bian_zhi_bu_men_ ORDER BY facs_type;";
         if (BeanUtils.isNotEmpty(data)){
-            buMen = data.get("id_").toString();
-            String fetchSql =  "SELECT jian_ce_zhou_qi_,facs_type,pos.name_,COUNT(shi_fou_guo_shen_<>'已完成'  OR NULL ) AS todo,COUNT(shi_fou_guo_shen_='已完成'  OR NULL) AS done ,MAX(facs.pagePath) AS pagePath" +
-                    "   FROM v_facs_summary_daily, ibps_party_position pos,(SELECT DISTINCT pagePath,`type` FROM v_facs WHERE pagePath <>'') facs" +
-                    "   WHERE FIND_IN_SET(bian_zhi_bu_men_,'%s') AND bian_zhi_bu_men_=pos.id_ AND facs_type = facs.type" +
-                    "   GROUP BY jian_ce_zhou_qi_,facs_type,bian_zhi_bu_men_ ORDER BY facs_type;";
-            return (List<Map<String, Object>>)commonDao.query(String.format(fetchSql,buMen));
-        }else if(Collections.isEmpty(object3)) {
-            String fetchSql =  "SELECT jian_ce_zhou_qi_,facs_type,pos.name_,COUNT(shi_fou_guo_shen_<>'已完成'  OR NULL ) AS todo,COUNT(shi_fou_guo_shen_='已完成'  OR NULL) AS done ,MAX(facs.pagePath) AS pagePath" +
+            mainPosition = data.get("id_").toString();
+        }
+        if (BeanUtils.isNotEmpty(mainPosition) && mainPosition.equals(jyk)){
+            fetchSql =  "SELECT jian_ce_zhou_qi_,facs_type,pos.name_,COUNT(shi_fou_guo_shen_<>'已完成'  OR NULL ) AS todo,COUNT(shi_fou_guo_shen_='已完成'  OR NULL) AS done ,MAX(facs.pagePath) AS pagePath" +
                     "   FROM v_facs_summary_daily, ibps_party_position pos,(SELECT DISTINCT pagePath,`type` FROM v_facs WHERE pagePath <>'') facs" +
-                    "   WHERE FIND_IN_SET(bian_zhi_bu_men_,'%s') AND bian_zhi_bu_men_=pos.id_ AND facs_type = facs.type" +
+                    "   WHERE di_dian_='%s' AND bian_zhi_bu_men_=pos.id_ AND facs_type = facs.type" +
                     "   GROUP BY jian_ce_zhou_qi_,facs_type,bian_zhi_bu_men_ ORDER BY facs_type;";
-            return (List<Map<String, Object>>)commonDao.query(String.format(fetchSql,buMen));
+            fetchSql = String.format(fetchSql,object3.get(0).get("di_dian"));
+        }else if (BeanUtils.isNotEmpty(mainPosition)){
+            fetchSql = String.format(fetchSql,mainPosition);
+        }else {
+            fetchSql = String.format(fetchSql,buMen);
         }
-        String fetchSql =  "SELECT jian_ce_zhou_qi_,facs_type,pos.name_,COUNT(shi_fou_guo_shen_<>'已完成'  OR NULL ) AS todo,COUNT(shi_fou_guo_shen_='已完成'  OR NULL) AS done ,MAX(facs.pagePath) AS pagePath" +
-                "   FROM v_facs_summary_daily, ibps_party_position pos,(SELECT DISTINCT pagePath,`type` FROM v_facs WHERE pagePath <>'') facs" +
-                "   WHERE di_dian_='%s' AND bian_zhi_bu_men_=pos.id_ AND facs_type = facs.type" +
-                "   GROUP BY jian_ce_zhou_qi_,facs_type,bian_zhi_bu_men_ ORDER BY facs_type;";
-        return (List<Map<String, Object>>)commonDao.query(String.format(fetchSql,object3.get(0).get("id_")));
+        return (List<Map<String, Object>>)commonDao.query(fetchSql);
     }
 }