Commit 90a194492d92a6bbfd61aeea2512edb8f135b634

Authored by dongqin
1 parent c2f96380c2

bug修复

Showing 1 changed file with 69 additions and 67 deletions

platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/MatDeliverFacade.java View file @ 90a1944
... ... @@ -1719,22 +1719,27 @@
1719 1719 */
1720 1720 public BaseListResponse postpartumDeliver(MatdeliverFollowRequest matdeliverFollowRequest) {
1721 1721 BaseListResponse listResponse = new BaseListResponse();
1722   -
  1722 + MatDeliverQuery matDeliverQuery = new MatDeliverQuery();
1723 1723 List<MatdeliverFollowListResult> matdeliverFollowListResults = new ArrayList<>();
1724 1724 //根据用户id获取医院ID
1725 1725 String hospitalId = autoMatchFacade.getHospitalId(matdeliverFollowRequest.getOperatorId());
1726 1726  
1727 1727 // 构造医院id集合
1728 1728 List<String> hospitalList = new ArrayList<>();
  1729 + List<String> fmhospitalId = new ArrayList<>();
1729 1730 //传入了具体的医院id
1730 1731 if (StringUtils.isNotEmpty(matdeliverFollowRequest.getHospitalId())) {
1731 1732 hospitalList.add(matdeliverFollowRequest.getHospitalId());
1732   - } else {
  1733 + if (StringUtils.isNotEmpty(matdeliverFollowRequest.getHospitalProvinceId()) || StringUtils.isNotEmpty(matdeliverFollowRequest.getHospitalCityId()) || StringUtils.isNotEmpty(matdeliverFollowRequest.getHospitalAreaId())) {
  1734 + matDeliverQuery.setFmHospitalList(hospitalList);
  1735 + }
1733 1736  
1734   - //默认添加当前医院
1735   - hospitalList.add(hospitalId);
  1737 + } else {
1736 1738  
1737   - /*DataPermissionsModelQuery dataPermissionsModelQuery = new DataPermissionsModelQuery();
  1739 + //默认添加当前医院
  1740 + hospitalList.add(hospitalId);
  1741 +
  1742 + /* DataPermissionsModelQuery dataPermissionsModelQuery = new DataPermissionsModelQuery();
1738 1743 dataPermissionsModelQuery.setUserId(matdeliverFollowRequest.getOperatorId());
1739 1744 List<DataPermissionsModel> dataPermissionsModelList = dataPermissionService.queryPermission(dataPermissionsModelQuery);
1740 1745 if (CollectionUtils.isNotEmpty(dataPermissionsModelList)) {
1741 1746  
1742 1747  
1743 1748  
1744 1749  
1745 1750  
... ... @@ -1745,39 +1750,42 @@
1745 1750 }
1746 1751 }
1747 1752 }*/
1748   - // 未传入查询条件,进行院内系统进行查询
1749   - if (StringUtils.isNotEmpty(matdeliverFollowRequest.getHospitalProvinceId()) || StringUtils.isNotEmpty(matdeliverFollowRequest.getHospitalCityId()) || StringUtils.isNotEmpty(matdeliverFollowRequest.getHospitalAreaId())) {
1750   - // 传入了查询条件
1751   - OrganizationQuery organizationQuery = new OrganizationQuery();
1752   - if (StringUtils.isNotEmpty(matdeliverFollowRequest.getHospitalProvinceId())) {
1753   - organizationQuery.setProvinceId(matdeliverFollowRequest.getHospitalProvinceId());
1754   - }
1755   - if (StringUtils.isNotEmpty(matdeliverFollowRequest.getHospitalCityId())) {
1756   - organizationQuery.setCityId(matdeliverFollowRequest.getHospitalCityId());
1757   - }
1758   - if (StringUtils.isNotEmpty(matdeliverFollowRequest.getHospitalAreaId())) {
1759   - organizationQuery.setAreaId(matdeliverFollowRequest.getHospitalAreaId());
1760   - }
1761   - organizationQuery.setYn(YnEnums.YES.getId());
1762   - List<Organization> organizationList = organizationService.queryHospitals(organizationQuery);
1763   - List<String> orgId = new ArrayList<>();
1764   - if (CollectionUtils.isNotEmpty(organizationList)) {
1765   - for (Organization organization : organizationList) {
1766   - orgId.add(organization.getId().toString());
  1753 + // 未传入查询条件,进行院内系统进行查询
  1754 + if (StringUtils.isNotEmpty(matdeliverFollowRequest.getHospitalProvinceId()) || StringUtils.isNotEmpty(matdeliverFollowRequest.getHospitalCityId()) || StringUtils.isNotEmpty(matdeliverFollowRequest.getHospitalAreaId())) {
  1755 + // 传入了查询条件
  1756 + OrganizationQuery organizationQuery = new OrganizationQuery();
  1757 + if (StringUtils.isNotEmpty(matdeliverFollowRequest.getHospitalProvinceId())) {
  1758 + organizationQuery.setProvinceId(matdeliverFollowRequest.getHospitalProvinceId());
1767 1759 }
  1760 + if (StringUtils.isNotEmpty(matdeliverFollowRequest.getHospitalCityId())) {
  1761 + organizationQuery.setCityId(matdeliverFollowRequest.getHospitalCityId());
  1762 + }
  1763 + if (StringUtils.isNotEmpty(matdeliverFollowRequest.getHospitalAreaId())) {
  1764 + organizationQuery.setAreaId(matdeliverFollowRequest.getHospitalAreaId());
  1765 + }
  1766 + organizationQuery.setYn(YnEnums.YES.getId());
  1767 + List<Organization> organizationList = organizationService.queryHospitals(organizationQuery);
  1768 + List<String> orgId = new ArrayList<>();
  1769 + if (CollectionUtils.isNotEmpty(organizationList)) {
  1770 + for (Organization organization : organizationList) {
  1771 + orgId.add(organization.getId().toString());
  1772 + fmhospitalId.add(organization.getId().toString());
  1773 + }
  1774 + }
  1775 +
  1776 + if (CollectionUtils.isEmpty(fmhospitalId)) {
  1777 + return listResponse;
  1778 + } else {
  1779 + hospitalList.retainAll(fmhospitalId);
  1780 + if (CollectionUtils.isEmpty(fmhospitalId)) {
  1781 + return listResponse;
  1782 + }
  1783 + matDeliverQuery.setFmHospitalList(hospitalList);
  1784 + }
1768 1785 }
1769   - //取区域范围内的医院id。交集
1770   - hospitalList.retainAll(orgId);
1771 1786 }
1772   - }
1773 1787  
1774   - if (CollectionUtils.isEmpty(hospitalList)) {
1775   - // 没有查到,直接抛出
1776   - return listResponse;
1777   - }
1778 1788  
1779   - MatDeliverQuery matDeliverQuery = new MatDeliverQuery();
1780   -
1781 1789 if (matdeliverFollowRequest.getFollowStarDate() != null) {
1782 1790 MatDeliverFollowQuery matDeliverFollowQuery = new MatDeliverFollowQuery();
1783 1791 matDeliverFollowQuery.setVisitStartDate(matdeliverFollowRequest.getFollowStarDate());
... ... @@ -1827,7 +1835,8 @@
1827 1835 patientsQuery.setFmDateEnd(DateUtil.addDay(new Date(), -29));
1828 1836 }
1829 1837 }
1830   - patientsQuery.setFmHospitalQueryList(hospitalList);
  1838 + //patientsQuery.setFmHospitalQueryList(hospitalList);
  1839 + //patientsQuery.setTownOrgId(hospitalId);
1831 1840  
1832 1841 List<Patients> patientsList = patientsService.queryPatient(patientsQuery);
1833 1842 if (CollectionUtils.isEmpty(patientsList)) {
... ... @@ -1881,7 +1890,7 @@
1881 1890  
1882 1891 // 访视列表无需加上分娩医院,因此注释
1883 1892 //matDeliverQuery.setFmHospitalList(hospitalList);
1884   - matDeliverQuery.setFsHospital(hospitalId);
  1893 + matDeliverQuery.setFsHospitalId(hospitalId);
1885 1894  
1886 1895 matDeliverQuery.setContactResult(matdeliverFollowRequest.getContactResult());
1887 1896 if (matdeliverFollowRequest.getContactReason() != null) {
... ... @@ -1904,7 +1913,13 @@
1904 1913 for (Patients md : patientsList) {
1905 1914 parentIdList.add(md.getId());
1906 1915 }
1907   - matDeliverQuery.setParentIdList(parentIdList);
  1916 + List<String> idList = matDeliverQuery.getParentIdList();
  1917 + if (CollectionUtils.isNotEmpty(idList)) {
  1918 + idList.retainAll(parentIdList);
  1919 + } else {
  1920 + idList = parentIdList;
  1921 + }
  1922 + matDeliverQuery.setParentIdList(idList);
1908 1923 }
1909 1924  
1910 1925 // 高危等级
1911 1926  
1912 1927  
... ... @@ -1919,29 +1934,14 @@
1919 1934 List<String> parentIdList1 = matDeliverQuery.getParentIdList();
1920 1935 if (CollectionUtils.isNotEmpty(parentIdList1)) {
1921 1936 patientIds.addAll(parentIdList1);
  1937 + parentIdList1.retainAll(parentIdList1);
  1938 + } else {
  1939 + parentIdList1 = patientIds;
1922 1940 }
1923   - matDeliverQuery.setParentIdList(patientIds);
  1941 + matDeliverQuery.setParentIdList(parentIdList1);
1924 1942 }
1925 1943  
1926 1944  
1927   - /*List<String> currentParentIdList = matDeliverQuery.getParentIdList();
1928   -
1929   - List<String> townOrgIds = new ArrayList<>();
1930   -
1931   - List<Patients> patients1 = mongoTemplate.find(Query.query(Criteria.where("yn").is(YnEnums.YES.getId()).and("fmHospital").exists(true).
1932   - orOperator(Criteria.where("townOrgId").is(hospitalId), Criteria.where("townOrgId").exists(false))), Patients.class);
1933   - for (Patients p : patients1) {
1934   - townOrgIds.add(p.getId());
1935   - }
1936   -
1937   -
1938   -
1939   - if (CollectionUtils.isEmpty(currentParentIdList)) {
1940   - currentParentIdList = townOrgIds;
1941   - } else {
1942   - currentParentIdList.retainAll(townOrgIds);
1943   - }
1944   - matDeliverQuery.setParentIdList(currentParentIdList);*/
1945 1945 if (StringUtils.isNotEmpty(matdeliverFollowRequest.getNeed())) {//是否分页
1946 1946 matDeliverQuery.setNeed("need");
1947 1947 matDeliverQuery.setLimit(matdeliverFollowRequest.getLimit());
1948 1948  
... ... @@ -1998,18 +1998,20 @@
1998 1998 matdeliverFollowListResult.setId(deliverModel.getId());
1999 1999 //机构信息
2000 2000 Organization organization = organizationService.getOrganization(Integer.valueOf(deliverModel.getFmHospital()));
2001   - // 市
2002   - BasicConfig cityName = basicConfigService.getOneBasicConfigById(organization.getCityId());
2003   - // 区
2004   - BasicConfig areaName = basicConfigService.getOneBasicConfigById(organization.getAreaId());
2005   - if (cityName != null) {
2006   - matdeliverFollowListResult.setHospitalCityName(cityName.getName());
  2001 + if (organization != null) {
  2002 + // 市
  2003 + BasicConfig cityName = basicConfigService.getOneBasicConfigById(organization.getCityId());
  2004 + // 区
  2005 + BasicConfig areaName = basicConfigService.getOneBasicConfigById(organization.getAreaId());
  2006 + if (cityName != null) {
  2007 + matdeliverFollowListResult.setHospitalCityName(cityName.getName());
  2008 + }
  2009 + if (areaName != null) {
  2010 + matdeliverFollowListResult.setHospitalAreaName(areaName.getName());
  2011 + }
  2012 + //分娩医院
  2013 + matdeliverFollowListResult.setFmHospital(organization.getName());
2007 2014 }
2008   - if (areaName != null) {
2009   - matdeliverFollowListResult.setHospitalAreaName(areaName.getName());
2010   - }
2011   - //分娩医院
2012   - matdeliverFollowListResult.setFmHospital(organization.getName());
2013 2015 matdeliverFollowListResult.setContactResult(deliverModel.getContactResult());
2014 2016 //预约联系结果
2015 2017 if (deliverModel.getContactResult() != null) {