ee238908a2b520aa3bb70947cf417d711ae4b8db.svn-base 4.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  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.BisInspGroupArrangementDao">
  4. <select id="getAllInfoByPnmAndTypeAndOrgId" resultType="cn.com.goldenwater.dcproj.dto.PlanAllInfoDto">
  5. select * from (
  6. SELECT
  7. BIA.PNM AS PNM,
  8. MAX(BIA.PLAN_DP_ID) AS PLAN_DP_ID,
  9. SUM(BIA.QUANTITY) AS QUANTITY,
  10. TO_CHAR(MAX(BIA.STTM), 'YYYY-MM-DD') AS ST_TM,
  11. TO_CHAR(MAX(BIA.ENTM), 'YYYY-MM-DD') AS EN_TM,
  12. LISTAGG(BIA.ID, ',') within group (order by BIA.ID) AS IDS,
  13. BIA.YEAR_TASK_ID AS DTL_ID,
  14. MAX(BIA.INTM) AS INTM
  15. FROM BIS_INSP_ALL BIA
  16. WHERE BIA.IS_PLAN = '1'
  17. AND LENGTH(BIA.ID) = 12
  18. <if test="years != null">
  19. and (to_char(BIA.STTM,'YYYY-MM') = to_char(#{years},'YYYY-MM') OR to_char(BIA.ENTM,'YYYY-MM') = to_char(#{years},'YYYY-MM'))
  20. </if>
  21. <if test="inspectionTeam != null and inspectionTeam != ''">
  22. AND BIA.PNM LIKE CONCAT('%',CONCAT(#{inspectionTeam},'%'))
  23. </if>
  24. <if test="inspectionUnit != null and inspectionUnit != ''">
  25. AND BIA.PLAN_DP_ID IN (SELECT ID FROM BIS_INSP_PLAN_DP WHERE DP_NAME LIKE CONCAT('%',CONCAT(#{inspectionUnit},'%') ) )
  26. </if>
  27. <if test="adName != null and adName != ''">
  28. AND BIA.ID IN (SELECT DISTINCT BISA.ID FROM BIS_INSP_SEL_AREA BISA WHERE BISA.AD_NAME LIKE CONCAT('%',CONCAT(#{adName},'%') ) )
  29. </if>
  30. <if test="planningMatters != null and planningMatters != ''">
  31. AND BIA.PID IN (
  32. SELECT B.ID
  33. FROM BIS_INSP_ALL B
  34. JOIN (SELECT TO_CHAR(BIPDP.PTYPE || '${orgId}') AS AID
  35. FROM BIS_INSP_PLAN_DTL_PTYP BIPDP
  36. LEFT JOIN BIS_INSP_PLAN_DTL BIPD ON BIPD.ID = BIPDP.PLAN_DTL_ID
  37. LEFT JOIN BIS_INSP_PLAN_YEAR BIPY ON BIPY.ID = BIPD.PLAN_ID
  38. WHERE BIPY.CHK_NAME LIKE CONCAT('%',CONCAT(#{planningMatters}, '%'))) A ON A.AID = B.PID
  39. )
  40. </if>
  41. <if test="ddAdCode != null and ddAdCode != ''">
  42. AND BIA.PID IN (
  43. SELECT B.ID
  44. FROM BIS_INSP_ALL B
  45. JOIN (SELECT TO_CHAR(BIPDP.PTYPE || '${orgId}') AS AID
  46. FROM BIS_INSP_PLAN_DTL_PTYP BIPDP
  47. LEFT JOIN BIS_INSP_PLAN_DTL BIPD ON BIPD.ID = BIPDP.PLAN_DTL_ID
  48. LEFT JOIN BIS_INSP_PLAN_YEAR BIPY ON BIPY.ID = BIPD.PLAN_ID
  49. WHERE BIPY.AD_CODE LIKE CONCAT(#{ddAdCode}, '%')) A ON A.AID = B.PID
  50. )
  51. </if>
  52. <if test="yearId != null and yearId != ''">
  53. AND BIA.PID IN (
  54. SELECT B.ID
  55. FROM BIS_INSP_ALL B
  56. JOIN (SELECT TO_CHAR(BIPDP.PTYPE || '${orgId}') AS AID
  57. FROM BIS_INSP_PLAN_DTL_PTYP BIPDP
  58. LEFT JOIN BIS_INSP_PLAN_DTL BIPD ON BIPD.ID = BIPDP.PLAN_DTL_ID
  59. LEFT JOIN BIS_INSP_PLAN_YEAR BIPY ON BIPY.ID = BIPD.PLAN_ID
  60. WHERE BIPY.ID = #{yearId}) A ON A.AID = B.PID
  61. )
  62. </if>
  63. <if test="dtlId != null and dtlId !=''">
  64. AND (
  65. BIA.PID IN (
  66. SELECT B.ID
  67. FROM BIS_INSP_ALL B
  68. JOIN (SELECT TO_CHAR(BIPDP.PTYPE || '${orgId}') AS AID
  69. FROM BIS_INSP_PLAN_DTL_PTYP BIPDP
  70. LEFT JOIN BIS_INSP_PLAN_DTL BIPD
  71. ON BIPD.ID = BIPDP.PLAN_DTL_ID
  72. WHERE BIPD.ID = #{dtlId}) A ON A.AID = B.PID
  73. ) AND BIA.YEAR_TASK_ID = #{dtlId}
  74. )
  75. </if>
  76. <if test="planDpId != null and planDpId !=''">
  77. AND BIA.PID IN (
  78. SELECT B.ID
  79. FROM BIS_INSP_ALL B
  80. JOIN (SELECT TO_CHAR(BIPDP.PTYPE || '${orgId}') AS AID
  81. FROM BIS_INSP_PLAN_DTL_PTYP BIPDP
  82. LEFT JOIN BIS_INSP_PLAN_DTL BIPD ON BIPD.ID = BIPDP.PLAN_DTL_ID
  83. LEFT JOIN BIS_INSP_PLAN_YEAR BIPY ON BIPY.ID = BIPD.PLAN_ID
  84. WHERE BIPY.ID IN (SELECT DISTINCT PLAN_ID FROM BIS_INSP_PLANDP_RL WHERE PLAN_DP_ID = #{planDpId})
  85. OR BIPY.LEAD_DEP_ID = #{planDpId}
  86. ) A ON A.AID = B.PID
  87. )
  88. </if>
  89. GROUP BY BIA.PNM,BIA.YEAR_TASK_ID
  90. <!-- 实施计划查询 按照 插入时间 从前往后 排序 asc -->
  91. ) order by INTM desc
  92. </select>
  93. </mapper>