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"; |