RepairsNoticeMapper.xml 4.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. <?xml version="1.0" encoding="UTF-8" ?>
  2. <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://www.mybatis.org/dtd/mybatis-3-mapper.dtd">
  3. <mapper namespace="com.chuanghai.repair.mapper.RepairsNoticeMapper">
  4. <resultMap id="BaseResultMap" type="com.chuanghai.repair.entity.RepairsNotice">
  5. <!--
  6. WARNING - @mbg.generated
  7. -->
  8. <id column="notice_id" property="noticeId" jdbcType="INTEGER"/>
  9. <result column="notice_content" property="noticeContent" jdbcType="VARCHAR"/>
  10. <result column="notice_time" property="noticeTime" jdbcType="TIMESTAMP"/>
  11. <result column="notice_status" property="noticeStatus" jdbcType="VARCHAR"/>
  12. <!-- 公告与管理员之间是 N:1 关系-->
  13. <association property="repairsAdmin" javaType="com.chuanghai.repair.entity.RepairsAdmin">
  14. <id column="admin_id" property="adminId"></id>
  15. <result column="admin_name" property="adminName" jdbcType="VARCHAR"/>
  16. </association >
  17. </resultMap>
  18. <!-- 添加公告-->
  19. <select id="addNotice" parameterType="com.chuanghai.repair.entity.RepairsNotice" >
  20. insert into repairs_notice(notice_content,notice_time,notice_status,admin_id)
  21. values(#{noticeContent},#{noticeTime},#{noticeStatus},#{repairsAdmin.adminId})
  22. </select>
  23. <!-- 发布公告-->
  24. <select id="releaseNotice" resultMap="BaseResultMap">
  25. select notice_content,notice_time,no.admin_id,admin_name from repairs_notice no ,repairs_admin ad
  26. where no.admin_id = ad.admin_id and notice_id = (select max(notice_id) from repairs_notice)
  27. </select>
  28. <select id="updateNotice" parameterType="java.util.List" >
  29. update repairs_notice
  30. <trim prefix="set" suffixOverrides=",">
  31. <trim prefix="notice_status=case" suffix="end,">
  32. <foreach collection="list" item="item" index="index">
  33. <if test="item.noticeStatus != null ">
  34. when notice_id = #{item.noticeId} then #{item.noticeStatus}
  35. </if>
  36. </foreach>
  37. </trim>
  38. <trim prefix="notice_content=case" suffix="end,">
  39. <foreach collection="list" item="item" index="index">
  40. <if test="item.noticeContent != null ">
  41. when notice_id = #{item.noticeId} then #{item.noticeContent}
  42. </if>
  43. </foreach>
  44. </trim><trim prefix="notice_time=case" suffix="end,">
  45. <foreach collection="list" item="item" index="index">
  46. <if test="item.noticeTime != null ">
  47. when notice_id = #{item.noticeId} then #{item.noticeTime}
  48. </if>
  49. </foreach>
  50. </trim>
  51. <trim prefix="admin_id=case" suffix="end,">
  52. <foreach collection="list" item="item" index="index">
  53. when notice_id = #{item.noticeId} then #{item.repairsAdmin.adminId}
  54. </foreach>
  55. </trim>
  56. </trim>
  57. where notice_id in
  58. <foreach collection="list" index="index" item="item"
  59. separator="," open="(" close=")">
  60. #{item.noticeId,jdbcType=INTEGER}
  61. </foreach>
  62. </select>
  63. <!-- 修改公告-->
  64. <select id="alterNotice" parameterType="com.chuanghai.repair.entity.RepairsNotice"
  65. resultType="com.chuanghai.repair.entity.RepairsNotice">
  66. update repairs_notice set notice_content = #{noticeContent},notice_time = #{noticeTime}
  67. <trim prefix="where" prefixOverrides="and" suffix="" suffixOverrides="">
  68. <if test="noticeId!='' and noticeId!=null">
  69. and notice_id = #{noticeId}
  70. </if>
  71. </trim>
  72. </select>
  73. <!-- 查询全部公告-->
  74. <select id="queryAllNotice" parameterType="java.lang.String" resultMap="BaseResultMap">
  75. select nt.* ,ad.admin_name from repairs_notice nt ,repairs_admin ad
  76. <trim prefix="where" prefixOverrides="and" suffix="" suffixOverrides="">
  77. nt.admin_id = ad.admin_id
  78. and notice_status = 1
  79. <if test="tody!='' and tody!=null">
  80. and notice_time BETWEEN #{tody} and #{tomorrow}
  81. </if>
  82. </trim>
  83. order by notice_time desc
  84. </select>
  85. </mapper>