SysNoticeMapper.xml 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125
  1. <?xml version="1.0" encoding="UTF-8" ?>
  2. <!DOCTYPE mapper
  3. PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  4. "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  5. <mapper namespace="com.ruoyi.project.system.mapper.SysNoticeMapper">
  6. <resultMap type="SysNotice" id="SysNoticeResult">
  7. <result property="noticeId" column="notice_id" />
  8. <result property="noticeTitle" column="notice_title" />
  9. <result property="noticeType" column="notice_type" />
  10. <result property="noticeContent" column="notice_content" />
  11. <result property="status" column="status" />
  12. <result property="createBy" column="create_by" />
  13. <result property="createTime" column="create_time" />
  14. <result property="updateBy" column="update_by" />
  15. <result property="updateTime" column="update_time" />
  16. <result property="remark" column="remark" />
  17. <result property="userId" column="user_id" />
  18. <!--<result property="readFlag" column="read_flag" />-->
  19. </resultMap>
  20. <sql id="selectNoticeVo">
  21. select d.notice_id, d.notice_title, d.notice_type, d.notice_content, d.status, d.create_by, d.create_time, d.update_by, d.update_time, d.remark
  22. from sys_notice d
  23. </sql>
  24. <select id="selectNoticeById" parameterType="Long" resultMap="SysNoticeResult">
  25. <include refid="selectNoticeVo"/>
  26. where notice_id = #{noticeId}
  27. </select>
  28. <select id="selectNoticeList" parameterType="SysNotice" resultMap="SysNoticeResult">
  29. select n.user_id, d.notice_id, d.notice_title, d.notice_type, d.notice_content, d.status, d.create_by, d.create_time, d.update_by, d.update_time, d.remark
  30. from sys_notice d
  31. LEFT JOIN SYS_USER_NOTICE n on d.NOTICE_ID = n.NOTICE_ID
  32. <if test="userId != null and userId != ''">
  33. and n.USER_ID = #{userId}
  34. </if>
  35. <where>
  36. <if test="noticeTitle != null and noticeTitle != ''">
  37. AND d.notice_title like concat(concat('%',#{noticeTitle}),'%')
  38. </if>
  39. <if test="noticeType != null and noticeType != ''">
  40. AND d.notice_type = #{noticeType}
  41. </if>
  42. <if test="createBy != null and createBy != ''">
  43. AND d.create_by like concat(concat('%',#{createBy}),'%')
  44. </if>
  45. </where>
  46. order by n.user_id
  47. </select>
  48. <select id="selectNoticeUnList" parameterType="SysNotice" resultMap="SysNoticeResult">
  49. select n.user_id, d.notice_id, d.notice_title, d.notice_type, d.notice_content, d.status, d.create_by, d.create_time, d.update_by, d.update_time, d.remark
  50. from sys_notice d
  51. LEFT JOIN SYS_USER_NOTICE n on d.NOTICE_ID = n.NOTICE_ID
  52. <if test="userId != null and userId != ''">
  53. and n.USER_ID = #{userId}
  54. </if>
  55. where n.user_id is null
  56. </select>
  57. <insert id="insertNotice" parameterType="SysNotice">
  58. <selectKey keyProperty="noticeId" order="BEFORE" resultType="long">
  59. select seq_sys_notice.nextval as noticeId from DUAL
  60. </selectKey>
  61. insert into sys_notice (
  62. <if test="noticeId != null and noticeId != '' ">notice_id, </if>
  63. <if test="noticeTitle != null and noticeTitle != '' ">notice_title, </if>
  64. <if test="noticeType != null and noticeType != '' ">notice_type, </if>
  65. <if test="noticeContent != null and noticeContent != '' ">notice_content, </if>
  66. <if test="status != null and status != '' ">status, </if>
  67. <if test="remark != null and remark != ''">remark,</if>
  68. <if test="createBy != null and createBy != ''">create_by,</if>
  69. create_time
  70. )values(
  71. <if test="noticeId != null and noticeId != '' ">#{noticeId}, </if>
  72. <if test="noticeTitle != null and noticeTitle != ''">#{noticeTitle}, </if>
  73. <if test="noticeType != null and noticeType != ''">#{noticeType}, </if>
  74. <if test="noticeContent != null and noticeContent != ''">#{noticeContent}, </if>
  75. <if test="status != null and status != ''">#{status}, </if>
  76. <if test="remark != null and remark != ''">#{remark},</if>
  77. <if test="createBy != null and createBy != ''">#{createBy},</if>
  78. sysdate
  79. )
  80. </insert>
  81. <update id="updateNotice" parameterType="SysNotice">
  82. update sys_notice
  83. <set>
  84. <if test="noticeTitle != null and noticeTitle != ''">notice_title = #{noticeTitle}, </if>
  85. <if test="noticeType != null and noticeType != ''">notice_type = #{noticeType}, </if>
  86. <if test="noticeContent != null">notice_content = #{noticeContent}, </if>
  87. <if test="status != null and status != ''">status = #{status}, </if>
  88. <if test="updateBy != null and updateBy != ''">update_by = #{updateBy},</if>
  89. update_time = sysdate
  90. </set>
  91. where notice_id = #{noticeId}
  92. </update>
  93. <delete id="deleteNoticeById" parameterType="Long">
  94. delete from sys_notice where notice_id = #{noticeId}
  95. </delete>
  96. <delete id="deleteNoticeByIds" parameterType="Long">
  97. delete from sys_notice where notice_id in
  98. <foreach item="noticeId" collection="array" open="(" separator="," close=")">
  99. #{noticeId}
  100. </foreach>
  101. </delete>
  102. <!--设置公告已读公告-->
  103. <update id="">
  104. update sys_notice
  105. <set>
  106. <if test="readFlag != null and readFlag != ''">read_flag = #{readFlag},</if>
  107. </set>
  108. where notice_id = 1
  109. </update>
  110. </mapper>