EventClearMapper.xml 5.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  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="com.goldenwater.hzz.mapper.EventClearMapper">
  4. <select id="findList" resultType="com.goldenwater.hzz.domain.EventDTO" parameterType="com.goldenwater.hzz.domain.EventDTO">
  5. SELECT EV.GUID AS "guid", EV.EV_CODE AS "evCode", EV.AD_CODE AS "adCode", COALESCE(AD.AD_NAME, EV.AD_CODE) AS "adName",
  6. EV.OBJ_TYPE AS "objType", EV.OBJ_CODE AS "objCode",
  7. COALESCE(CASE WHEN EV.OBJ_TYPE='REA' THEN REA.REA_NAME WHEN EV.OBJ_TYPE='LKS' THEN LKS.LKS_NAME ELSE RER.RER_NAME END, EV.OBJ_CODE) AS "objName",
  8. EV.EV_TYPE AS "evType", EV.EV_DESC AS "eventDesc", EV.LOC AS "eventAddress",
  9. EV.STATUS AS "status", EV.DEAL_DESC AS "dealDesc",
  10. TO_CHAR(EV.FIND_TS,'YYYY-MM-DD') AS "findTs",
  11. TO_CHAR(EV.DONE_DATE,'YYYY-MM-DD') AS "doneDate",
  12. EV.REPO_NAME AS "userName"
  13. FROM ATT_EV_BASE EV
  14. LEFT JOIN ATT_REA_BASE REA ON EV.OBJ_CODE=REA.REA_CODE AND EV.OBJ_TYPE='REA'
  15. LEFT JOIN ATT_LKS_BASE LKS ON EV.OBJ_CODE=LKS.LKS_CODE AND EV.OBJ_TYPE='LKS'
  16. LEFT JOIN ATT_RER_BASE RER ON EV.OBJ_CODE=RER.RER_CODE AND EV.OBJ_TYPE='RER'
  17. LEFT JOIN ATT_AD_BASE AD ON EV.AD_CODE=AD.AD_CODE
  18. WHERE EV.TO_DATE IS NULL AND REA.EXPR_DATE IS NULL AND LKS.EXPR_DATE IS NULL AND RER.EXPR_DATE IS NULL AND AD.EXPR_DATE IS NULL AND EV.SOURCE_TYPE='3'
  19. <if test="adCode != null and adCode != ''">AND EV.AD_CODE=#{adCode}</if>
  20. <if test="evType != null and evType != ''">AND EV.EV_TYPE=#{evType}</if>
  21. <if test="objType != null and objType != ''">AND EV.OBJ_TYPE=#{objType}</if>
  22. <if test="status != null and status != ''">AND EV.STATUS=#{status}</if>
  23. <if test="keyWord != null and keyWord != ''">AND (REA.REA_NAME LIKE '%'||#{keyWord}||'%' OR AD.AD_NAME LIKE '%'||#{keyWord}||'%' OR EV.EV_DESC LIKE '%'||#{keyWord}||'%')</if>
  24. ORDER BY EV.FIND_TS DESC
  25. </select>
  26. <select id="findListByAdCode" resultType="com.goldenwater.hzz.domain.EventDTO">
  27. SELECT EV.GUID, EV.EV_CODE, EV.AD_CODE, COALESCE(AD.AD_NAME, EV.AD_CODE) AS "adName",
  28. EV.OBJ_TYPE, EV.OBJ_CODE,
  29. COALESCE(CASE WHEN EV.OBJ_TYPE='REA' THEN REA.REA_NAME WHEN EV.OBJ_TYPE='LKS' THEN LKS.LKS_NAME ELSE RER.RER_NAME END, EV.OBJ_CODE) AS "objName",
  30. EV.EV_TYPE, EV.EV_DESC AS "eventDesc", EV.LOC AS "eventAddress",
  31. EV.STATUS AS "status", EV.DEAL_DESC AS "dealDesc",
  32. TO_CHAR(EV.FIND_TS,'YYYY-MM-DD') AS "findTs",
  33. TO_CHAR(EV.DONE_DATE,'YYYY-MM-DD') AS "doneDate",
  34. EV.REPO_NAME AS "userName"
  35. FROM ATT_EV_BASE EV
  36. LEFT JOIN ATT_REA_BASE REA ON EV.OBJ_CODE=REA.REA_CODE AND EV.OBJ_TYPE='REA'
  37. LEFT JOIN ATT_LKS_BASE LKS ON EV.OBJ_CODE=LKS.LKS_CODE AND EV.OBJ_TYPE='LKS'
  38. LEFT JOIN ATT_RER_BASE RER ON EV.OBJ_CODE=RER.RER_CODE AND EV.OBJ_TYPE='RER'
  39. LEFT JOIN ATT_AD_BASE AD ON EV.AD_CODE=AD.AD_CODE
  40. WHERE EV.TO_DATE IS NULL AND REA.EXPR_DATE IS NULL AND LKS.EXPR_DATE IS NULL AND RER.EXPR_DATE IS NULL AND AD.EXPR_DATE IS NULL AND EV.SOURCE_TYPE='3'
  41. <if test="adCode != null and adCode != ''">AND EV.AD_CODE=#{adCode}</if>
  42. <if test="evType != null and evType != ''">AND EV.EV_TYPE=#{evType}</if>
  43. <if test="objectType != null and objectType != ''">AND EV.OBJ_TYPE=#{objectType}</if>
  44. <if test="status != null and status != ''">AND EV.STATUS=#{status}</if>
  45. <if test="keyWord != null and keyWord != ''">AND (REA.REA_NAME LIKE '%'||#{keyWord}||'%' OR AD.AD_NAME LIKE '%'||#{keyWord}||'%' OR EV.EV_DESC LIKE '%'||#{keyWord}||'%')</if>
  46. ORDER BY EV.FIND_TS DESC
  47. </select>
  48. <insert id="insertEvent" parameterType="com.goldenwater.hzz.domain.EventDTO">
  49. INSERT INTO ATT_EV_BASE(GUID, EV_CODE, AD_CODE, OBJ_TYPE, OBJ_CODE, EV_TYPE, EV_DESC, LOC, STATUS, DEAL_DESC, FIND_TS, DONE_DATE, REPO_NAME, SOURCE_TYPE, TO_DATE)
  50. VALUES(
  51. SYS_GUID(),
  52. 'EV'||TO_CHAR(SYSDATE,'YYYYMMDDHH24MISS'),
  53. #{adCode},
  54. #{objType},
  55. #{objCode},
  56. #{evType},
  57. #{eventDesc},
  58. #{eventAddress},
  59. #{status},
  60. #{dealDesc},
  61. TO_DATE(#{findTs},'YYYY-MM-DD'),
  62. <choose>
  63. <when test="doneDate != null and doneDate != ''">TO_DATE(#{doneDate},'YYYY-MM-DD')</when>
  64. <otherwise>NULL</otherwise>
  65. </choose>,
  66. #{userName},
  67. '3',
  68. NULL
  69. )
  70. </insert>
  71. <update id="updateEvent" parameterType="com.goldenwater.hzz.domain.EventDTO">
  72. UPDATE ATT_EV_BASE
  73. SET AD_CODE = #{adCode},
  74. OBJ_TYPE = #{objType},
  75. OBJ_CODE = #{objCode},
  76. EV_TYPE = #{evType},
  77. EV_DESC = #{eventDesc},
  78. LOC = #{eventAddress},
  79. STATUS = #{status},
  80. DEAL_DESC = #{dealDesc},
  81. FIND_TS = TO_DATE(#{findTs},'YYYY-MM-DD'),
  82. DONE_DATE = <choose>
  83. <when test="doneDate != null and doneDate != ''">TO_DATE(#{doneDate},'YYYY-MM-DD')</when>
  84. <otherwise>NULL</otherwise>
  85. </choose>
  86. WHERE GUID = #{guid}
  87. </update>
  88. <delete id="deleteEvent" parameterType="java.lang.String">
  89. DELETE FROM ATT_EV_BASE WHERE GUID = #{guid}
  90. </delete>
  91. </mapper>