Commit 9323d89606c224731932183a568749d9883ec875
1 parent
aa29a1ddf5
Exists in
master
and in
6 other branches
update
Showing 1 changed file with 68 additions and 16 deletions
platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/AreaCountFacade.java
View file @
9323d89
... | ... | @@ -102,7 +102,7 @@ |
102 | 102 | " (CASE WHEN TICKET_3 IS NULL THEN 0 ELSE TICKET_3 END) AS TICKET_3, " + |
103 | 103 | " (CASE WHEN TICKET_4 IS NULL THEN 0 ELSE TICKET_4 END) AS TICKET_4, " + |
104 | 104 | " (CASE WHEN TICKET_5 IS NULL THEN 0 ELSE TICKET_5 END) AS TICKET_5" + |
105 | - " FROM ODS_D_HOSPITAL AAA INNER JOIN (SELECT A.PROVINCE_ID, " + | |
105 | + " FROM ODS_D_HOSPITAL AAA LEFT JOIN (SELECT A.PROVINCE_ID, " + | |
106 | 106 | " A.PROVINCE, " + |
107 | 107 | " A.CITY_ID, " + |
108 | 108 | " A.CITY, " + |
... | ... | @@ -161,7 +161,7 @@ |
161 | 161 | " A.HOSPITAL_NO, " + |
162 | 162 | " A.HOSPITAL_NAME, " + |
163 | 163 | " A.YCY_STSTEM_ID) AA ON AAA.HOSPITAL_NO=AA.HOSPITAL_NO" + |
164 | - " INNER JOIN ( " + | |
164 | + " LEFT JOIN ( " + | |
165 | 165 | " SELECT A.PROVINCE_ID, " + |
166 | 166 | " A.PROVINCE, " + |
167 | 167 | " A.CITY_ID, " + |
168 | 168 | |
... | ... | @@ -226,9 +226,22 @@ |
226 | 226 | " A.HOSPITAL_NO, " + |
227 | 227 | " A.HOSPITAL_NAME, " + |
228 | 228 | " A.YCY_STSTEM_ID " + |
229 | - " ) BB ON AAA.HOSPITAL_NO=BB.HOSPITAL_NO " + | |
230 | - " ORDER BY 1,2,3"; | |
229 | + " ) BB ON AAA.HOSPITAL_NO=BB.HOSPITAL_NO "; | |
230 | + if (StringUtils.isNotEmpty(hospitalId)) | |
231 | + { | |
232 | + sql1+=" WHERE AAA.YCY_STSTEM_ID= '" +hospitalId+"'"; | |
233 | + } | |
234 | + else | |
235 | + { | |
236 | + String hospitals = getPermissionStr(userId,provinceId,cityId,areaId); | |
237 | + if (StringUtils.isNotEmpty(hospitals)) | |
238 | + { | |
239 | + sql1+=" WHERE AAA.YCY_STSTEM_ID IN " +hospitals; | |
240 | + } | |
231 | 241 | |
242 | + } | |
243 | + sql1+=" ORDER BY 1,2,3"; | |
244 | + | |
232 | 245 | String groupBySql = ""; |
233 | 246 | String groupBySql1 = ""; |
234 | 247 | |
... | ... | @@ -271,7 +284,7 @@ |
271 | 284 | " SUM(AA.FF_JS) AS FF_JS,\n" + |
272 | 285 | " SUM(SY_JS) AS SY_JS\n" + |
273 | 286 | " FROM ODS_D_HOSPITAL AAA \n" + |
274 | - " INNER JOIN (\n" + | |
287 | + " LEFT JOIN (\n" + | |
275 | 288 | " SELECT A.PROVINCE_ID,\n" + |
276 | 289 | " A.PROVINCE,\n" + |
277 | 290 | " A.CITY_ID,\n" + |
... | ... | @@ -297,7 +310,7 @@ |
297 | 310 | " A.HOSPITAL_NO,\n" + |
298 | 311 | " A.HOSPITAL_NAME,\n" + |
299 | 312 | " A.YCY_STSTEM_ID) AA ON AAA.HOSPITAL_NO=AA.HOSPITAL_NO\n" + |
300 | - " INNER JOIN (\n" + | |
313 | + " LEFT JOIN (\n" + | |
301 | 314 | " SELECT A.PROVINCE_ID,\n" + |
302 | 315 | " A.PROVINCE,\n" + |
303 | 316 | " A.CITY_ID,\n" + |
304 | 317 | |
... | ... | @@ -323,9 +336,22 @@ |
323 | 336 | " A.HOSPITAL_NAME,\n" + |
324 | 337 | " A.YCY_STSTEM_ID\n" + |
325 | 338 | " ) BB ON AAA.HOSPITAL_NO=BB.HOSPITAL_NO\n" + |
326 | - " GROUP BY ROLLUP("+groupBySql1+")" + | |
327 | - " ORDER BY 1,2,3"; | |
339 | + " GROUP BY ROLLUP("+groupBySql1+")" ; | |
340 | + if (StringUtils.isNotEmpty(hospitalId)) | |
341 | + { | |
342 | + countSql+=" WHERE AAA.YCY_STSTEM_ID= '" +hospitalId+"'"; | |
343 | + } | |
344 | + else | |
345 | + { | |
346 | + String hospitals = getPermissionStr(userId,provinceId,cityId,areaId); | |
347 | + if (StringUtils.isNotEmpty(hospitals)) | |
348 | + { | |
349 | + countSql+=" WHERE AAA.YCY_STSTEM_ID IN " +hospitals; | |
350 | + } | |
328 | 351 | |
352 | + } | |
353 | + countSql+=" ORDER BY 1,2,3"; | |
354 | + | |
329 | 355 | System.out.println("basesql===="+sql1); |
330 | 356 | System.out.println("countSql====" + countSql); |
331 | 357 | |
... | ... | @@ -1024,7 +1050,7 @@ |
1024 | 1050 | " SUM(NUM_24) AS NUM_24,\n" + |
1025 | 1051 | " SUM(NUM_36) AS NUM_36,\n" + |
1026 | 1052 | " SUM(NUM_40) AS NUM_40\n" + |
1027 | - " FROM ODS_D_HOSPITAL AAA INNER JOIN " + | |
1053 | + " FROM ODS_D_HOSPITAL AAA LEFT JOIN " + | |
1028 | 1054 | " ( SELECT A.PROVINCE_ID,\n" + |
1029 | 1055 | " A.PROVINCE,\n" + |
1030 | 1056 | " A.CITY_ID,\n" + |
... | ... | @@ -1081,7 +1107,7 @@ |
1081 | 1107 | " A.HOSPITAL_NAME,\n" + |
1082 | 1108 | " A.YCY_STSTEM_ID\n" + |
1083 | 1109 | " ) AA ON AAA.HOSPITAL_NO=AA.HOSPITAL_NO" + |
1084 | - " INNER JOIN (\n" + | |
1110 | + " LEFT JOIN (\n" + | |
1085 | 1111 | " SELECT A.PROVINCE_ID,\n" + |
1086 | 1112 | " A.PROVINCE,\n" + |
1087 | 1113 | " A.CITY_ID,\n" + |
1088 | 1114 | |
1089 | 1115 | |
... | ... | @@ -1147,11 +1173,24 @@ |
1147 | 1173 | " A.HOSPITAL_NAME,\n" + |
1148 | 1174 | " A.YCY_STSTEM_ID\n" + |
1149 | 1175 | " ) BB ON AAA.HOSPITAL_NO=BB.HOSPITAL_NO\n" + |
1150 | - " GROUP BY ROLLUP("+groupBySql1+" ) " + | |
1151 | - " ORDER BY 1,2,3"; | |
1176 | + " GROUP BY ROLLUP("+groupBySql1+" ) " ; | |
1177 | + if (StringUtils.isNotEmpty(hospitalId)) | |
1178 | + { | |
1179 | + countSql+=" WHERE AAA.YCY_STSTEM_ID= '" +hospitalId+"'"; | |
1180 | + } | |
1181 | + else | |
1182 | + { | |
1183 | + String hospitals = getPermissionStr(userId,provinceId,cityId,areaId); | |
1184 | + if (StringUtils.isNotEmpty(hospitals)) | |
1185 | + { | |
1186 | + countSql+=" WHERE AAA.YCY_STSTEM_ID IN " +hospitals; | |
1187 | + } | |
1152 | 1188 | |
1189 | + } | |
1190 | + countSql+=" ORDER BY 1,2,3"; | |
1153 | 1191 | |
1154 | 1192 | |
1193 | + | |
1155 | 1194 | String sql = "SELECT " + |
1156 | 1195 | " AAA.PROVINCE," + |
1157 | 1196 | " AAA.PROVINCE_ID," + |
... | ... | @@ -1168,7 +1207,7 @@ |
1168 | 1207 | " (CASE WHEN NUM_24 IS NULL THEN 0 ELSE NUM_24 END) AS NUM_24," + |
1169 | 1208 | " (CASE WHEN NUM_36 IS NULL THEN 0 ELSE NUM_36 END) AS NUM_36," + |
1170 | 1209 | " (CASE WHEN NUM_40 IS NULL THEN 0 ELSE NUM_40 END) AS NUM_40 " + |
1171 | - " FROM ODS_D_HOSPITAL AAA INNER JOIN (" + | |
1210 | + " FROM ODS_D_HOSPITAL AAA LEFT JOIN (" + | |
1172 | 1211 | " SELECT A.PROVINCE_ID," + |
1173 | 1212 | " A.PROVINCE," + |
1174 | 1213 | " A.CITY_ID," + |
... | ... | @@ -1225,7 +1264,7 @@ |
1225 | 1264 | " A.HOSPITAL_NO,\n" + |
1226 | 1265 | " A.HOSPITAL_NAME,\n" + |
1227 | 1266 | " A.YCY_STSTEM_ID\n" + |
1228 | - " ) AA ON AAA.HOSPITAL_NO=AA.HOSPITAL_NO INNER JOIN (\n" + | |
1267 | + " ) AA ON AAA.HOSPITAL_NO=AA.HOSPITAL_NO LEFT JOIN (\n" + | |
1229 | 1268 | " SELECT A.PROVINCE_ID,\n" + |
1230 | 1269 | " A.PROVINCE,\n" + |
1231 | 1270 | " A.CITY_ID,\n" + |
... | ... | @@ -1291,8 +1330,21 @@ |
1291 | 1330 | " A.HOSPITAL_NO,\n" + |
1292 | 1331 | " A.HOSPITAL_NAME,\n" + |
1293 | 1332 | " A.YCY_STSTEM_ID\n" + |
1294 | - " ) BB ON AAA.HOSPITAL_NO = BB.HOSPITAL_NO " + | |
1295 | - " ORDER BY 1,2,3"; | |
1333 | + " ) BB ON AAA.HOSPITAL_NO = BB.HOSPITAL_NO "; | |
1334 | + if (StringUtils.isNotEmpty(hospitalId)) | |
1335 | + { | |
1336 | + countSql+=" WHERE AAA.YCY_STSTEM_ID= '" +hospitalId+"'"; | |
1337 | + } | |
1338 | + else | |
1339 | + { | |
1340 | + String hospitals = getPermissionStr(userId,provinceId,cityId,areaId); | |
1341 | + if (StringUtils.isNotEmpty(hospitals)) | |
1342 | + { | |
1343 | + countSql+=" WHERE AAA.YCY_STSTEM_ID IN " +hospitals; | |
1344 | + } | |
1345 | + | |
1346 | + } | |
1347 | + countSql+=" ORDER BY 1,2,3"; | |
1296 | 1348 | System.out.println("sql===="+sql); |
1297 | 1349 | System.out.println("countSql===="+countSql); |
1298 | 1350 |