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

[task-5851] 按照部门展示

xiexh 7 месяцев назад
Родитель
Сommit
aea8eea847

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

@@ -1561,15 +1561,25 @@ public class BpmInitiatedProvider extends GenericProvider implements IBpmInitiat
 									"	WHERE di_dian_=#{p0} AND DATE(create_time_)=CURDATE() AND shi_fou_guo_shen_='待处理'", new String[]{(String)object3.get(0).get("id_")});
 					infobox2.setDataText(object4.get(0).get("total").toString());
 				}
-				//恒生医院专用配置-对应任务4792的改造同步 可推送人为空的全部推送,不为空则推送指定的推送人
+				//恒生医院专用配置-对应任务4792的改造同步 可推送人为空的按部门推送,不为空则推送指定的推送人
 				if(BeanUtils.isNotEmpty(ContextUtil.getSetting())){
 					JSONObject configMap = JSONObject.parseObject(ContextUtil.getSetting());
 					String HSYY = configMap.getString("HSYY");
 					if(BeanUtils.isNotEmpty(HSYY) && HSYY.equals("true")){
-						String sql =" SELECT count(*) as count FROM t_mjsbwhbyjlby WHERE DATE(create_time_) = CURDATE()  AND shi_fou_guo_shen_ = '待处理' " +
-								"  AND (ke_tui_song_ren_ IS NULL OR ke_tui_song_ren_ = '' OR ke_tui_song_ren_ LIKE '%"+currentUserId+"%')";
-						Map<String, Object> mjsbwhbyjlbyMap = commonDao.queryOne(sql);
-						infobox2.setDataText(getStringFromMap(mjsbwhbyjlbyMap,"count"));
+						String sql ="select ID_,NAME_,POSITIONS_ from ibps_party_employee  where id_= '"+currentUserId+"'";
+						Map<String, Object> employeeMap = commonDao.queryOne(sql);
+						String positions = getStringFromMap(employeeMap,"POSITIONS_");
+						String sql2 ="SELECT COUNT(*) as total_count\n" +
+								"FROM t_mjsbwhbyjlby \n" +
+								"WHERE DATE(create_time_) = CURDATE()  \n" +
+								"  AND shi_fou_guo_shen_ = '待处理'\n" +
+								"  AND (\n" +
+								"      (ke_tui_song_ren_ LIKE '%"+currentUserId+"%')\n" +
+								"      OR\n" +
+								"      ((ke_tui_song_ren_ IS NULL OR ke_tui_song_ren_ = '') \n" +
+								"       AND FIND_IN_SET(bian_zhi_bu_men_, '"+positions+"')))";
+						Map<String, Object> mjsbwhbyjlbyMap = commonDao.queryOne(sql2);
+						infobox2.setDataText(getStringFromMap(mjsbwhbyjlbyMap,"total_count"));
 					}
 				}
 				list.add(infobox2);