Commit 0665ea92ffbec8d6d61900d95be7c7df40ab2e4c

Authored by liquanyu
1 parent 1beab1f47a

update

Showing 1 changed file with 116 additions and 15 deletions

platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/AreaCountFacade.java View file @ 0665ea9
... ... @@ -93,8 +93,6 @@
93 93 " AAA.HOSPITAL_NAME," +
94 94 " AAA.HOSPITAL_NO," +
95 95 " AAA.YCY_STSTEM_ID, " +
96   -// " AA.FF_RS AS FF_RS, " +
97   -// " AA.FF_JS AS FF_JS, " +
98 96 " (CASE WHEN FF_RS IS NULL THEN 0 ELSE FF_RS END) AS FF_RS," +
99 97 " (CASE WHEN FF_JS IS NULL THEN 0 ELSE FF_JS END) AS FF_JS," +
100 98 " (CASE WHEN SY_RS IS NULL THEN 0 ELSE SY_RS END) AS SY_RS," +
101 99  
... ... @@ -229,19 +227,22 @@
229 227 " A.HOSPITAL_NAME, " +
230 228 " A.YCY_STSTEM_ID " +
231 229 " ) BB ON AAA.HOSPITAL_NO=BB.HOSPITAL_NO ";
232   - if (StringUtils.isNotEmpty(hospitalId))
233   - {
234   - sql1+=" WHERE AAA.YCY_STSTEM_ID= '" +hospitalId+"'";
235   - }
236   - else
237   - {
238   - String hospitals = getPermissionStr(userId,provinceId,cityId,areaId);
239   - if (StringUtils.isNotEmpty(hospitals))
240   - {
241   - sql1+=" WHERE AAA.YCY_STSTEM_ID IN " +hospitals;
242   - }
243 230  
244   - }
  231 + sql1+= getTicketSql(time,hospitalId,provinceId,cityId,areaId,userId);
  232 +
  233 +// if (StringUtils.isNotEmpty(hospitalId))
  234 +// {
  235 +// sql1+=" WHERE AAA.YCY_STSTEM_ID= '" +hospitalId+"'";
  236 +// }
  237 +// else
  238 +// {
  239 +// String hospitals = getPermissionStr(userId,provinceId,cityId,areaId);
  240 +// if (StringUtils.isNotEmpty(hospitals))
  241 +// {
  242 +// sql1+=" WHERE AAA.YCY_STSTEM_ID IN " +hospitals;
  243 +// }
  244 +//
  245 +// }
245 246 sql1+=" ORDER BY 1,2,3";
246 247  
247 248 String groupBySql = "";
... ... @@ -1676,7 +1677,7 @@
1676 1677 Map<String, String> cnames = new LinkedHashMap<>();
1677 1678 cnames.put("examineDate", "产检日期"); //产检日期
1678 1679 cnames.put("name", "姓名"); //姓名
1679   - cnames.put("checkWeek","产检孕周"); //产检孕周
  1680 + cnames.put("checkWeek", "产检孕周"); //产检孕周
1680 1681 cnames.put("examineHistoryNum", "产检第次"); //产检第次
1681 1682 cnames.put("examineHospital","产检机构"); //产检机构
1682 1683 cnames.put("doctorName","产检医生"); //产检医生
... ... @@ -1770,6 +1771,106 @@
1770 1771 cnames.put("hjAddr","户籍地"); //户籍地
1771 1772 cnames.put("telNo","联系电话"); //联系电话
1772 1773 ResponseUtil.responseExcel(cnames,results,httpServletResponse);
  1774 + }
  1775 +
  1776 +
  1777 + /**
  1778 + *
  1779 + * @return
  1780 + */
  1781 + private String getTicketSql(String time, String hospitalId,
  1782 + String provinceId,String cityId,
  1783 + String areaId, Integer userId)
  1784 + {
  1785 +
  1786 + String sql = " WHERE AAA.YCY_STSTEM_ID IN ( " +
  1787 + " SELECT DISTINCT A.YCY_STSTEM_ID " +
  1788 + " FROM ODS_F_EXAMINE_HISTORY_ASC CC " +
  1789 + " INNER JOIN ODS_D_HOSPITAL A ON A.HOSPITAL_NO=CC.HOSPITAL_NO\n" +
  1790 + " INNER JOIN ODS_F_GRAVIDA_RECORD B ON CC.RECORD_ID=B.RECORD_ID WHERE CC.TICKETS_NO IS NOT NULL ";
  1791 +
  1792 + if (StringUtils.isNotEmpty(time))
  1793 + {
  1794 + String startTime = time.split(" - ")[0];
  1795 + String endTime = time.split(" - ")[1];
  1796 + sql+=" AND C.EXAMINE_DATE BETWEEN TO_DATE('"+startTime+"','yyyy-mm-dd') AND TO_DATE('"+endTime+"','yyyy-mm-dd')";
  1797 + }
  1798 + if (StringUtils.isNotEmpty(provinceId))
  1799 + {
  1800 + sql += " AND A.PROVINCE_ID= '"+provinceId+"'";
  1801 + }
  1802 +
  1803 + if (StringUtils.isNotEmpty(cityId))
  1804 + {
  1805 + sql+= " AND A.CITY_ID= '" +cityId+"'";
  1806 + }
  1807 +
  1808 + if (StringUtils.isNotEmpty(areaId))
  1809 + {
  1810 + sql+= " AND A.AREA_COUNTY_ID= '" +areaId+"'";
  1811 + }
  1812 + if (StringUtils.isNotEmpty(hospitalId))
  1813 + {
  1814 + sql+=" AND A.YCY_STSTEM_ID= '" +hospitalId+"'";
  1815 + }
  1816 + else
  1817 + {
  1818 + String hospitals = getPermissionStr(userId,provinceId,cityId,areaId);
  1819 + if (StringUtils.isNotEmpty(hospitals))
  1820 + {
  1821 + sql+=" AND A.YCY_STSTEM_ID IN " +hospitals;
  1822 + }
  1823 +
  1824 + }
  1825 +
  1826 + sql+=" UNION " +
  1827 + " SELECT DISTINCT A.YCY_STSTEM_ID\n" +
  1828 + " FROM ODS_D_HOSPITAL A\n" +
  1829 + " INNER JOIN ODS_F_EXAMINE_TICKET B ON A.HOSPITAL_NO=B.HOSPITAL_NO\n" +
  1830 + " INNER JOIN ODS_F_GRAVIDA_RECORD C ON B.RECORD_ID=C.RECORD_ID\n" +
  1831 + " WHERE 1 = 1 ";
  1832 + if (StringUtils.isNotEmpty(time))
  1833 + {
  1834 + String startTime = time.split(" - ")[0];
  1835 + String endTime = time.split(" - ")[1];
  1836 + sql+=" AND B.ISSUE_DATE BETWEEN TO_DATE('"+startTime+"','yyyy-mm-dd') AND TO_DATE('"+endTime+"','yyyy-mm-dd')";
  1837 + }
  1838 + if (StringUtils.isNotEmpty(provinceId))
  1839 + {
  1840 + sql += " AND A.PROVINCE_ID= '"+provinceId+"'";
  1841 + }
  1842 +
  1843 + if (StringUtils.isNotEmpty(cityId))
  1844 + {
  1845 + sql+= " AND A.CITY_ID= '" +cityId+"'";
  1846 + }
  1847 +
  1848 + if (StringUtils.isNotEmpty(areaId))
  1849 + {
  1850 + sql+= " AND A.AREA_COUNTY_ID= '" +areaId+"'";
  1851 + }
  1852 + if (StringUtils.isNotEmpty(hospitalId))
  1853 + {
  1854 + sql+=" AND A.YCY_STSTEM_ID= '" +hospitalId+"'";
  1855 + }
  1856 + else
  1857 + {
  1858 + String hospitals = getPermissionStr(userId,provinceId,cityId,areaId);
  1859 + if (StringUtils.isNotEmpty(hospitals))
  1860 + {
  1861 + sql+=" AND A.YCY_STSTEM_ID IN " +hospitals;
  1862 + }
  1863 +
  1864 + }
  1865 +
  1866 + sql+=" )";
  1867 + return sql;
  1868 + }
  1869 +
  1870 + private String getNodeSql()
  1871 + {
  1872 +
  1873 + return null;
1773 1874 }
1774 1875 }