Commit 0cb689b537e6a3dd115dc7ae59d22270ddaa450f
1 parent
b4ce6fe8e5
Exists in
master
and in
6 other branches
婚检统计
Showing 1 changed file with 215 additions and 106 deletions
platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PremaritalCheckupFacade.java
View file @
0cb689b
... | ... | @@ -2195,149 +2195,258 @@ |
2195 | 2195 | //获取用户权限医院和筛选条件的交集 |
2196 | 2196 | List<String> currentUserHospPermissions = areaCountFacade.getCurrentUserHospPermissions2(userId, provinceId, |
2197 | 2197 | cityId, areaId); |
2198 | + //图标数据 | |
2199 | + List<Map<String, Object>> series = new LinkedList<>(); | |
2200 | + Map<String,Object> hjMap = new HashMap<String,Object>(); | |
2201 | + hjMap.put("name","婚前检查"); | |
2202 | + hjMap.put("type","bar"); | |
2203 | + Map<String,Object> hqwsMap = new HashMap<String,Object>(); | |
2204 | + hqwsMap.put("name","婚前卫生咨询情况"); | |
2205 | + hqwsMap.put("type","bar"); | |
2206 | + List<String> hjList = new ArrayList<String>(); | |
2207 | + List<String> hqwsList = new ArrayList<String>(); | |
2208 | + //标题名称 | |
2209 | + List<String> titleItems = new LinkedList<>(); | |
2210 | + titleItems.add("男婚检人数"); | |
2211 | + titleItems.add("女婚检人数"); | |
2212 | + //x轴标题数据 | |
2213 | + List<String> xAxis = new ArrayList<>(); | |
2198 | 2214 | String[] dates = null; |
2199 | 2215 | if (StringUtils.isNotEmpty(time)) { |
2200 | 2216 | dates = time.split(" - "); |
2201 | 2217 | } |
2202 | - BasicConfigQuery basicQuery = new BasicConfigQuery(); | |
2203 | - basicQuery.setYn(YnEnums.YES.getId()); | |
2204 | - basicQuery.setTypeId("b7ea005c-dfac-4c2a-bdae-25239b3f44fd"); | |
2205 | - //用来存放省、市、县的ID的集合 | |
2206 | - List<String> ids = new ArrayList<>(); | |
2207 | - //查询当前登录用户管辖的所有医院 | |
2208 | - DataPermissionsModelQuery dataPermissionsModelQuery = new DataPermissionsModelQuery(); | |
2209 | - dataPermissionsModelQuery.setUserId(userId); | |
2210 | - List<DataPermissionsModel> permissionsModels = dataPermissionService.queryPermission(dataPermissionsModelQuery); | |
2218 | + if(StringUtils.isNotEmpty(areaId)){//按照医院统计 | |
2211 | 2219 | |
2212 | - int addrType = 0; | |
2213 | - if (StringUtils.isNotEmpty(provinceId)) { | |
2214 | - ids = new ArrayList<>(); | |
2215 | - if (CollectionUtils.isNotEmpty(permissionsModels)) { | |
2216 | - List<AddressBean> addressBeanList = JsonUtil.toList(permissionsModels.get(0).getAreaPermission(), AddressBean.class); | |
2217 | - if (CollectionUtils.isNotEmpty(addressBeanList)) | |
2218 | - { | |
2219 | - for (AddressBean bean : addressBeanList) | |
2220 | + for(String hospitalId : currentUserHospPermissions){ | |
2221 | + List<String> shu = new ArrayList<String>(); | |
2222 | + Map<String, Object> map = new HashMap<String, Object>(); | |
2223 | + //查询X轴标题数据 | |
2224 | + OrganizationQuery idQuery = new OrganizationQuery(); | |
2225 | + idQuery.setYn(YnEnums.YES.getId()); | |
2226 | + idQuery.setId(Integer.parseInt(hospitalId)); | |
2227 | + List<Organization> orgs = organizationService.queryOrganization(idQuery); | |
2228 | + | |
2229 | + PremaritalCheckupQuery query = new PremaritalCheckupQuery(); | |
2230 | + if (dates != null) { | |
2231 | + query.setPremaritalUpTimeStart(DateUtil.parseYMD(dates[0])); | |
2232 | + if (dates.length == 2) { | |
2233 | + query.setPremaritalUpTimeEnd(DateUtil.parseYMD(dates[1])); | |
2234 | + } | |
2235 | + } | |
2236 | + query.setHospitalId(hospitalId); | |
2237 | + query.setSexType(2);//男性 | |
2238 | + List<PremaritalCheckup> dataNan = premaritalCheckupService.queryPremaritalCheckup(query); | |
2239 | + int hunqianHealthMan = 0; | |
2240 | + int hunqianHealthWoman = 0; | |
2241 | + int man = 0; | |
2242 | + int woman = 0; | |
2243 | + if (dataNan != null && dataNan.size() > 0) { | |
2244 | + for (PremaritalCheckup data : dataNan) { | |
2245 | + if (StringUtils.isNotEmpty(data.getHunqianHealth())) { | |
2246 | + hunqianHealthMan++; | |
2247 | + } | |
2248 | + } | |
2249 | + | |
2250 | + } else { | |
2251 | + man = 1; | |
2252 | + } | |
2253 | + | |
2254 | + query.setSexType(1);//女性 | |
2255 | + List<PremaritalCheckup> dataNv = premaritalCheckupService.queryPremaritalCheckup(query); | |
2256 | + if (dataNv != null && dataNv.size() > 0) { | |
2257 | + for (PremaritalCheckup data : dataNv) { | |
2258 | + if (StringUtils.isNotEmpty(data.getHunqianHealth())) { | |
2259 | + hunqianHealthWoman++; | |
2260 | + } | |
2261 | + } | |
2262 | + } else { | |
2263 | + woman = 1; | |
2264 | + } | |
2265 | + xAxis.add(orgs.get(0).getName()); | |
2266 | + if(man == 1){ | |
2267 | + hjList.add("0"); | |
2268 | + if(woman == 1){ | |
2269 | + hjList.add("0"); | |
2270 | + hqwsList.add("0"); | |
2271 | + hqwsList.add("0"); | |
2272 | + }else{ | |
2273 | + hjList.add(String.valueOf(dataNv.size())); | |
2274 | + hqwsList.add("0"); | |
2275 | + hqwsList.add(String.valueOf(hunqianHealthWoman)); | |
2276 | + } | |
2277 | + }else{ | |
2278 | + hjList.add(String.valueOf(dataNan.size())); | |
2279 | + if(woman == 1){ | |
2280 | + hjList.add("0"); | |
2281 | + hqwsList.add(String.valueOf(hunqianHealthMan)); | |
2282 | + hqwsList.add("0"); | |
2283 | + }else{ | |
2284 | + hjList.add(String.valueOf(dataNv.size())); | |
2285 | + hqwsList.add(String.valueOf(hunqianHealthMan)); | |
2286 | + hqwsList.add(String.valueOf(hunqianHealthWoman)); | |
2287 | + } | |
2288 | + } | |
2289 | + } | |
2290 | + hjMap.put("data",hjList); | |
2291 | + hqwsMap.put("data",hqwsList); | |
2292 | + series.add(hjMap); | |
2293 | + series.add(hqwsMap); | |
2294 | + }else{ | |
2295 | + BasicConfigQuery basicQuery = new BasicConfigQuery(); | |
2296 | + basicQuery.setYn(YnEnums.YES.getId()); | |
2297 | + basicQuery.setTypeId("b7ea005c-dfac-4c2a-bdae-25239b3f44fd"); | |
2298 | + //用来存放省、市、县的ID的集合 | |
2299 | + List<String> ids = new ArrayList<>(); | |
2300 | + //查询当前登录用户管辖的所有医院 | |
2301 | + DataPermissionsModelQuery dataPermissionsModelQuery = new DataPermissionsModelQuery(); | |
2302 | + dataPermissionsModelQuery.setUserId(userId); | |
2303 | + List<DataPermissionsModel> permissionsModels = dataPermissionService.queryPermission(dataPermissionsModelQuery); | |
2304 | + | |
2305 | + int addrType = 0; | |
2306 | + if (StringUtils.isNotEmpty(provinceId)) { | |
2307 | + ids = new ArrayList<>(); | |
2308 | + if (CollectionUtils.isNotEmpty(permissionsModels)) { | |
2309 | + List<AddressBean> addressBeanList = JsonUtil.toList(permissionsModels.get(0).getAreaPermission(), AddressBean.class); | |
2310 | + if (CollectionUtils.isNotEmpty(addressBeanList)) | |
2220 | 2311 | { |
2221 | - if (bean != null && bean.getP() != null && bean.getP().equals(provinceId) && StringUtils.isNotEmpty(bean.getC())) | |
2312 | + for (AddressBean bean : addressBeanList) | |
2222 | 2313 | { |
2223 | - //省不为空,赋值所有市的id | |
2224 | - ids.add(bean.getC()); | |
2314 | + if (bean != null && bean.getP() != null && bean.getP().equals(provinceId) && StringUtils.isNotEmpty(bean.getC())) | |
2315 | + { | |
2316 | + //省不为空,赋值所有市的id | |
2317 | + ids.add(bean.getC()); | |
2318 | + } | |
2225 | 2319 | } |
2226 | 2320 | } |
2227 | 2321 | } |
2322 | + basicQuery.setIds(ids); | |
2323 | + addrType = 1; | |
2228 | 2324 | } |
2229 | - basicQuery.setIds(ids); | |
2230 | - addrType = 1; | |
2231 | - } | |
2232 | - if (StringUtils.isNotEmpty(cityId)) { | |
2233 | - ids = new ArrayList<>(); | |
2234 | - if (CollectionUtils.isNotEmpty(permissionsModels)) { | |
2235 | - List<AddressBean> addressBeanList = JsonUtil.toList(permissionsModels.get(0).getAreaPermission(), AddressBean.class); | |
2236 | - if (CollectionUtils.isNotEmpty(addressBeanList)) | |
2237 | - { | |
2238 | - for (AddressBean bean : addressBeanList) | |
2325 | + if (StringUtils.isNotEmpty(cityId)) { | |
2326 | + ids = new ArrayList<>(); | |
2327 | + if (CollectionUtils.isNotEmpty(permissionsModels)) { | |
2328 | + List<AddressBean> addressBeanList = JsonUtil.toList(permissionsModels.get(0).getAreaPermission(), AddressBean.class); | |
2329 | + if (CollectionUtils.isNotEmpty(addressBeanList)) | |
2239 | 2330 | { |
2240 | - if (bean != null && bean.getC() != null && bean.getC().equals(cityId) && StringUtils.isNotEmpty(bean.getA())) | |
2331 | + for (AddressBean bean : addressBeanList) | |
2241 | 2332 | { |
2242 | - //市不为空,赋值所有县的id | |
2243 | - ids.add(bean.getA()); | |
2333 | + if (bean != null && bean.getC() != null && bean.getC().equals(cityId) && StringUtils.isNotEmpty(bean.getA())) | |
2334 | + { | |
2335 | + //市不为空,赋值所有县的id | |
2336 | + ids.add(bean.getA()); | |
2337 | + } | |
2244 | 2338 | } |
2245 | 2339 | } |
2246 | 2340 | } |
2341 | + basicQuery.setIds(ids); | |
2342 | + addrType = 2; | |
2247 | 2343 | } |
2248 | - basicQuery.setIds(ids); | |
2249 | - addrType = 2; | |
2250 | - } | |
2251 | - //x轴标题数据 | |
2252 | - List<String> xAxis = new ArrayList<>(); | |
2253 | - //获取地址列表 | |
2254 | - List<BasicConfig> configList = new ArrayList<>(); | |
2255 | - if (CollectionUtils.isNotEmpty(ids)) | |
2256 | - { | |
2257 | - configList = basicConfigService.queryBasicConfig(basicQuery); | |
2258 | - } | |
2259 | - if (CollectionUtils.isNotEmpty(configList)) { | |
2260 | - for (BasicConfig addr : configList) { | |
2261 | - xAxis.add(addr.getName()); | |
2344 | + | |
2345 | + //获取地址列表 | |
2346 | + List<BasicConfig> configList = new ArrayList<>(); | |
2347 | + if (CollectionUtils.isNotEmpty(ids)) | |
2348 | + { | |
2349 | + configList = basicConfigService.queryBasicConfig(basicQuery); | |
2262 | 2350 | } |
2263 | - } | |
2264 | - //标题名称 | |
2265 | - List<String> titleItems = new LinkedList<>(); | |
2266 | - titleItems.add("男婚检人数"); | |
2267 | - titleItems.add("女婚检人数"); | |
2351 | + if (CollectionUtils.isNotEmpty(configList)) { | |
2352 | + for (BasicConfig addr : configList) { | |
2353 | + xAxis.add(addr.getName()); | |
2354 | + } | |
2355 | + } | |
2268 | 2356 | |
2269 | - //图标数据 | |
2270 | - List<Map<String, Object>> series = new LinkedList<>(); | |
2271 | - if (CollectionUtils.isNotEmpty(configList)) { | |
2357 | + if (CollectionUtils.isNotEmpty(configList)) { | |
2272 | 2358 | |
2273 | 2359 | |
2274 | - for (BasicConfig c : configList) { | |
2275 | - Map<String,Object> map = new HashMap<String,Object>(); | |
2276 | - OrganizationQuery idQuery = new OrganizationQuery(); | |
2277 | - idQuery.setYn(YnEnums.YES.getId()); | |
2360 | + for (BasicConfig c : configList) { | |
2361 | + Map<String, Object> map = new HashMap<String, Object>(); | |
2362 | + OrganizationQuery idQuery = new OrganizationQuery(); | |
2363 | + idQuery.setYn(YnEnums.YES.getId()); | |
2278 | 2364 | |
2279 | - //查询机构数 | |
2280 | - if (addrType == 1) { | |
2281 | - idQuery.setCityId(c.getId()); | |
2282 | - } else if (addrType == 2) { | |
2283 | - idQuery.setAreaId(c.getId()); | |
2284 | - } | |
2285 | - List<Organization> orgs = organizationService.queryOrganization(idQuery); | |
2286 | - List<String> hids = getConditionHospitalIds(currentUserHospPermissions, orgs); | |
2365 | + //查询机构数 | |
2366 | + if (addrType == 1) { | |
2367 | + idQuery.setCityId(c.getId()); | |
2368 | + } else if (addrType == 2) { | |
2369 | + idQuery.setAreaId(c.getId()); | |
2370 | + } | |
2371 | + List<Organization> orgs = organizationService.queryOrganization(idQuery); | |
2372 | + List<String> hids = getConditionHospitalIds(currentUserHospPermissions, orgs); | |
2287 | 2373 | |
2288 | - if (CollectionUtils.isNotEmpty(hids)) | |
2289 | - { | |
2374 | + if (CollectionUtils.isNotEmpty(hids)) { | |
2290 | 2375 | |
2291 | - PremaritalCheckupQuery query = new PremaritalCheckupQuery(); | |
2292 | - if(dates != null){ | |
2293 | - query.setPremaritalUpTimeStart(DateUtil.parseYMD(dates[0])); | |
2294 | - if (dates.length == 2) { | |
2295 | - query.setPremaritalUpTimeEnd(DateUtil.parseYMD(dates[1])); | |
2376 | + PremaritalCheckupQuery query = new PremaritalCheckupQuery(); | |
2377 | + if (dates != null) { | |
2378 | + query.setPremaritalUpTimeStart(DateUtil.parseYMD(dates[0])); | |
2379 | + if (dates.length == 2) { | |
2380 | + query.setPremaritalUpTimeEnd(DateUtil.parseYMD(dates[1])); | |
2381 | + } | |
2296 | 2382 | } |
2297 | - } | |
2298 | - query.setHospitalIds(hids); | |
2299 | - query.setSexType(1);//女性 | |
2300 | - List<PremaritalCheckup> dataNv = premaritalCheckupService.queryPremaritalCheckup(query); | |
2301 | - if(dataNv != null && dataNv.size() > 0){ | |
2302 | - map.put("woman",dataNv.size()); | |
2383 | + query.setHospitalIds(hids); | |
2384 | + query.setSexType(2);//男性 | |
2385 | + List<PremaritalCheckup> dataNan = premaritalCheckupService.queryPremaritalCheckup(query); | |
2386 | + int hunqianHealthMan = 0; | |
2303 | 2387 | int hunqianHealthWoman = 0; |
2304 | - for(PremaritalCheckup data : dataNv){ | |
2305 | - if(StringUtils.isNotEmpty(data.getHunqianHealth())){ | |
2306 | - hunqianHealthWoman++; | |
2388 | + int man = 0; | |
2389 | + int woman = 0; | |
2390 | + if (dataNan != null && dataNan.size() > 0) { | |
2391 | + for (PremaritalCheckup data : dataNan) { | |
2392 | + if (StringUtils.isNotEmpty(data.getHunqianHealth())) { | |
2393 | + hunqianHealthMan++; | |
2394 | + } | |
2307 | 2395 | } |
2396 | + | |
2397 | + } else { | |
2398 | + man = 1; | |
2308 | 2399 | } |
2309 | - map.put("hunqianHealthWoman",hunqianHealthWoman); | |
2310 | - }else{ | |
2311 | - map.put("woman", 0); | |
2312 | - map.put("hunqianHealthWoman",0); | |
2313 | - } | |
2314 | 2400 | |
2315 | - query.setSexType(2);//男性 | |
2316 | - List<PremaritalCheckup> dataNan = premaritalCheckupService.queryPremaritalCheckup(query); | |
2317 | - if(dataNv != null && dataNv.size() > 0){ | |
2318 | - map.put("man",dataNan.size()); | |
2319 | - int hunqianHealthMan = 0; | |
2320 | - for(PremaritalCheckup data : dataNan){ | |
2321 | - if(StringUtils.isNotEmpty(data.getHunqianHealth())){ | |
2322 | - hunqianHealthMan++; | |
2401 | + query.setSexType(1);//女性 | |
2402 | + List<PremaritalCheckup> dataNv = premaritalCheckupService.queryPremaritalCheckup(query); | |
2403 | + if (dataNv != null && dataNv.size() > 0) { | |
2404 | + for (PremaritalCheckup data : dataNv) { | |
2405 | + if (StringUtils.isNotEmpty(data.getHunqianHealth())) { | |
2406 | + hunqianHealthWoman++; | |
2407 | + } | |
2323 | 2408 | } |
2409 | + } else { | |
2410 | + woman = 1; | |
2324 | 2411 | } |
2325 | - map.put("hunqianHealthMan",hunqianHealthMan); | |
2326 | - }else{ | |
2327 | - map.put("man",0); | |
2328 | - map.put("hunqianHealthMan",0); | |
2412 | + xAxis.add(orgs.get(0).getName()); | |
2413 | + if(man == 1){ | |
2414 | + hjList.add("0"); | |
2415 | + if(woman == 1){ | |
2416 | + hjList.add("0"); | |
2417 | + hqwsList.add("0"); | |
2418 | + hqwsList.add("0"); | |
2419 | + }else{ | |
2420 | + hjList.add(String.valueOf(dataNv.size())); | |
2421 | + hqwsList.add("0"); | |
2422 | + hqwsList.add(String.valueOf(hunqianHealthWoman)); | |
2423 | + } | |
2424 | + }else{ | |
2425 | + hjList.add(String.valueOf(dataNan.size())); | |
2426 | + if(woman == 1){ | |
2427 | + hjList.add("0"); | |
2428 | + hqwsList.add(String.valueOf(hunqianHealthMan)); | |
2429 | + hqwsList.add("0"); | |
2430 | + }else{ | |
2431 | + hjList.add(String.valueOf(dataNv.size())); | |
2432 | + hqwsList.add(String.valueOf(hunqianHealthMan)); | |
2433 | + hqwsList.add(String.valueOf(hunqianHealthWoman)); | |
2434 | + } | |
2435 | + } | |
2329 | 2436 | } |
2437 | + | |
2330 | 2438 | } |
2331 | - series.add(map); | |
2439 | + hjMap.put("data",hjList); | |
2440 | + hqwsMap.put("data",hqwsList); | |
2441 | + series.add(hjMap); | |
2442 | + series.add(hqwsMap); | |
2332 | 2443 | } |
2333 | - | |
2334 | - | |
2335 | 2444 | } |
2336 | 2445 | |
2337 | 2446 | Map<String, Object> datas = new HashMap<>(); |
2338 | 2447 | datas.put("series", series); |
2339 | 2448 | datas.put("xAxis", xAxis); |
2340 | - datas.put("titleItems",titleItems); | |
2449 | + datas.put("legend",titleItems); | |
2341 | 2450 | return new BaseObjectResponse().setErrormsg("成功").setErrorcode(ErrorCodeConstants.SUCCESS).setData(datas); |
2342 | 2451 | |
2343 | 2452 | } |