Commit 906ac169e6a92461a705721187ed7cb972747b6a
1 parent
72339ec9dd
Exists in
master
and in
6 other branches
筛查统计
Showing 1 changed file with 28 additions and 15 deletions
platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/SieveFacade.java
View file @
906ac16
1 | 1 | package com.lyms.platform.operate.web.facade; |
2 | 2 | |
3 | +import com.lyms.platform.beans.AddressBean; | |
3 | 4 | import com.lyms.platform.beans.MsgRequest; |
4 | 5 | import com.lyms.platform.biz.service.*; |
5 | 6 | import com.lyms.platform.common.constants.ErrorCodeConstants; |
6 | 7 | |
7 | 8 | |
8 | 9 | |
9 | 10 | |
10 | 11 | |
11 | 12 | |
... | ... | @@ -1644,29 +1645,41 @@ |
1644 | 1645 | h1+=" "+cqSieveQueryRequest.getTime(); |
1645 | 1646 | } |
1646 | 1647 | |
1648 | + //获取用户权限医院和筛选条件的交集 | |
1649 | + List<String> areaHospitalIds = new ArrayList<>(); | |
1650 | + | |
1647 | 1651 | DataPermissionsModelQuery dataPermissionsModelQuery = new DataPermissionsModelQuery(); |
1648 | 1652 | dataPermissionsModelQuery.setUserId(userId); |
1649 | 1653 | List<DataPermissionsModel> permissionsModels = dataPermissionService.queryPermission(dataPermissionsModelQuery); |
1654 | + if (CollectionUtils.isNotEmpty(permissionsModels)) | |
1655 | + { | |
1656 | + for (DataPermissionsModel permissionsModel : permissionsModels) | |
1657 | + { | |
1658 | + if (StringUtils.isNotEmpty(permissionsModel.getAreaPermission())) | |
1659 | + { | |
1650 | 1660 | |
1661 | + List<AddressBean> addressBeanList = JsonUtil.toList(permissionsModels.get(0).getAreaPermission(), AddressBean.class); | |
1662 | + if (CollectionUtils.isEmpty(addressBeanList)) | |
1663 | + { | |
1664 | + continue; | |
1665 | + } | |
1651 | 1666 | |
1652 | - boolean hasPermission = false; | |
1653 | - if (StringUtils.isNotEmpty(cqSieveQueryRequest.getProvinceId())) { | |
1654 | - hasPermission = areaCountFacade.hasPermissions2(cqSieveQueryRequest.getProvinceId(), 1, permissionsModels); | |
1667 | + for (AddressBean bean : addressBeanList) | |
1668 | + { | |
1669 | + areaHospitalIds.addAll(areaCountFacade.getCurrentUserHospPermissions(userId, bean.getP(), | |
1670 | + bean.getC(), bean.getA())); | |
1671 | + } | |
1672 | + } | |
1673 | + } | |
1655 | 1674 | } |
1656 | - if (StringUtils.isNotEmpty(cqSieveQueryRequest.getCityId())) { | |
1657 | - hasPermission = areaCountFacade.hasPermissions2(cqSieveQueryRequest.getProvinceId(), 2, permissionsModels); | |
1658 | - } | |
1659 | - if (StringUtils.isNotEmpty(cqSieveQueryRequest.getAreaId())) { | |
1660 | - hasPermission = areaCountFacade.hasPermissions2(cqSieveQueryRequest.getProvinceId(), 3, permissionsModels); | |
1661 | - } | |
1675 | + | |
1662 | 1676 | List<Map<String,String>> list = new ArrayList<>(); |
1663 | - if (hasPermission) | |
1664 | - { | |
1665 | 1677 | //获取用户权限医院和筛选条件的交集 |
1666 | - List<String> currentUserHospPermissions = areaCountFacade.getCurrentUserHospPermissions(userId, cqSieveQueryRequest.getProvinceId(), | |
1667 | - cqSieveQueryRequest.getCityId(), cqSieveQueryRequest.getAreaId()); | |
1668 | - list = getDiaDatas(currentUserHospPermissions, dates); | |
1669 | - } | |
1678 | + List<String> currentUserHospPermissions = areaCountFacade.getCurrentUserHospPermissions(userId, cqSieveQueryRequest.getProvinceId(), | |
1679 | + cqSieveQueryRequest.getCityId(), cqSieveQueryRequest.getAreaId()); | |
1680 | + | |
1681 | + currentUserHospPermissions.retainAll(areaHospitalIds); | |
1682 | + list = getDiaDatas(currentUserHospPermissions, dates); | |
1670 | 1683 | response.setContentType("application/force-download"); |
1671 | 1684 | response.setHeader("Content-Disposition", "attachment;filename=" + new String(("产前诊断及新生儿疾病筛查工作情况表.xls").getBytes("UTF-8"), "ISO-8859-1")); |
1672 | 1685 | String path = this.getClass().getResource("/").getPath()+ "whfy_diagnosis.xls"; |