BisInspAnzeStaticsDao.xml 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. <?xml version="1.0" encoding="UTF-8" ?>
  2. <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  3. <mapper namespace="cn.com.goldenwater.dcproj.dao.BisInspAnzeStaticsDao">
  4. <select id="insurerUnderwritingCount" resultType="Map" parameterType="Integer">
  5. SELECT B.INSURANCE_COMPANY, COUNT(*) AS CNT
  6. FROM ATT_PROJECT_INSURANCE A
  7. JOIN ATT_PROJECT_INSURANCE_RECORD B ON A.ID = B.PROJECT_ID
  8. WHERE B.YEAR = #{year}
  9. GROUP BY B.INSURANCE_COMPANY
  10. ORDER BY B.INSURANCE_COMPANY
  11. </select>
  12. <select id="anzeCompletion" resultType="Map" parameterType="Integer">
  13. SELECT A.AD_CODE,
  14. A.AD_NAME,
  15. COUNT(DISTINCT A.ID) AS PROJECT_CNT,
  16. COUNT(DISTINCT B.PROJECT_ID) AS UNDERWRITING_CNT,
  17. COUNT(D.OBJ_ID) AS COMPLETION_CNT
  18. FROM ATT_PROJECT_INSURANCE A
  19. LEFT JOIN (SELECT PROJECT_ID
  20. FROM ATT_PROJECT_INSURANCE_RECORD
  21. WHERE YEAR = #{year}
  22. GROUP BY PROJECT_ID) B ON A.ID = B.PROJECT_ID
  23. LEFT JOIN BIS_INSP_ALL_OBJ C ON A.ID = C.CODE
  24. LEFT JOIN (SELECT OBJ_ID
  25. FROM BIS_INSP_ANZE_RGSTR
  26. WHERE STATE IN ('2', '3')) D ON C.OBJ_ID = D.OBJ_ID
  27. where A.BUSINESS_TYPE = '1'
  28. GROUP BY A.AD_CODE, A.AD_NAME
  29. ORDER BY A.AD_CODE
  30. </select>
  31. <select id="sixmeCompletion" resultType="Map" parameterType="Integer">
  32. SELECT A.AD_CODE,
  33. A.AD_NAME,
  34. COUNT(DISTINCT A.ID) AS PROJECT_CNT,
  35. COUNT(R.RECORD_ID) AS COMPLETION_CNT
  36. FROM ATT_PROJECT_INSURANCE A
  37. LEFT JOIN BIS_INSP_ALL_OBJ C ON A.ID = C.CODE
  38. LEFT JOIN BIS_INSP_SIXME_RGSTR D ON C.OBJ_ID = D.OBJ_ID
  39. LEFT JOIN (SELECT ID AS RECORD_ID, RGSTR_ID
  40. FROM BIS_INSP_SIXME_RECORD
  41. WHERE STATE IN ('1')
  42. AND INTM &gt;= DATE '${year1}-01-01'
  43. AND INTM &lt; DATE '${year2}-01-01') R ON D.ID = R.RGSTR_ID
  44. where A.BUSINESS_TYPE = '2'
  45. GROUP BY A.AD_CODE, A.AD_NAME
  46. ORDER BY A.AD_CODE
  47. </select>
  48. </mapper>