QwSopTempRulesMapper.xml 7.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163
  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.fs.sop.mapper.QwSopTempRulesMapper">
  6. <resultMap type="QwSopTempRules" id="QwSopTempRulesResult">
  7. <result property="id" column="id" />
  8. <result property="tempId" column="temp_id" />
  9. <result property="name" column="name" />
  10. <result property="dayNum" column="day_num" />
  11. <result property="time" column="time" />
  12. <result property="contentType" column="content_type" />
  13. <result property="courseType" column="course_type" />
  14. <result property="courseId" column="course_id" />
  15. <result property="videoId" column="video_id" />
  16. <result property="aiTouch" column="ai_touch" />
  17. <result property="addTag" column="add_tag" />
  18. <result property="delTag" column="del_tag" />
  19. </resultMap>
  20. <sql id="selectQwSopTempRulesVo">
  21. select id, temp_id, name, day_num,add_tag,del_tag, time, content_type, course_type, course_id, video_id, ai_touch from qw_sop_temp_rules
  22. </sql>
  23. <select id="selectQwSopTempRulesList" parameterType="QwSopTempRules" resultMap="QwSopTempRulesResult">
  24. <include refid="selectQwSopTempRulesVo"/>
  25. <where>
  26. <if test="tempId != null and tempId != ''"> and temp_id = #{tempId}</if>
  27. <if test="name != null and name != ''"> and name like concat('%', #{name}, '%')</if>
  28. <if test="dayNum != null "> and day_num = #{dayNum}</if>
  29. <if test="time != null and time != ''"> and time = #{time}</if>
  30. <if test="contentType != null "> and content_type = #{contentType}</if>
  31. <if test="courseType != null "> and course_type = #{courseType}</if>
  32. <if test="courseId != null "> and course_id = #{courseId}</if>
  33. <if test="videoId != null "> and video_id = #{videoId}</if>
  34. <if test="aiTouch != null and aiTouch != ''"> and ai_touch = #{aiTouch}</if>
  35. </where>
  36. </select>
  37. <select id="selectQwSopTempRulesById" parameterType="String" resultMap="QwSopTempRulesResult">
  38. <include refid="selectQwSopTempRulesVo"/>
  39. where id = #{id}
  40. </select>
  41. <!-- <select id="listByTempId" resultType="com.fs.sop.domain.QwSopTempRules">-->
  42. <!-- select * from qw_sop_temp_rules where temp_id = CAST(#{id} AS UUID)-->
  43. <!-- </select>-->
  44. <select id="listByTempId" resultType="com.fs.sop.domain.QwSopTempRules">
  45. select * from qw_sop_temp_rules where temp_id = #{id}
  46. </select>
  47. <!-- <select id="listByTempIdAndNameAndDayNum" resultType="com.fs.sop.domain.QwSopTempRules">-->
  48. <!-- select * from qw_sop_temp_rules where temp_id = CAST(#{id} AS UUID) and day_num = #{dayNum} order by `time`-->
  49. <!-- </select>-->
  50. <select id="listByTempIdAndNameAndDayNum" resultType="com.fs.sop.domain.QwSopTempRules">
  51. select * from qw_sop_temp_rules where temp_id = #{id} and day_num = #{dayNum} order by `time`
  52. </select>
  53. <insert id="insertQwSopTempRules" parameterType="QwSopTempRules">
  54. insert into qw_sop_temp_rules
  55. <trim prefix="(" suffix=")" suffixOverrides=",">
  56. <if test="id != null">id,</if>
  57. <if test="tempId != null and tempId != ''">temp_id,</if>
  58. <if test="name != null">name,</if>
  59. <if test="dayNum != null">day_num,</if>
  60. <if test="time != null">time,</if>
  61. <if test="contentType != null">content_type,</if>
  62. <if test="courseType != null">course_type,</if>
  63. <if test="courseId != null">course_id,</if>
  64. <if test="videoId != null">video_id,</if>
  65. <if test="aiTouch != null">ai_touch,</if>
  66. <if test="addTag != null">add_tag,</if>
  67. <if test="delTag != null">del_tag,</if>
  68. </trim>
  69. <trim prefix="values (" suffix=")" suffixOverrides=",">
  70. <if test="id != null">#{id},</if>
  71. <if test="tempId != null and tempId != ''">#{tempId},</if>
  72. <if test="name != null">#{name},</if>
  73. <if test="dayNum != null">#{dayNum},</if>
  74. <if test="time != null">#{time},</if>
  75. <if test="contentType != null">#{contentType},</if>
  76. <if test="courseType != null">#{courseType},</if>
  77. <if test="courseId != null">#{courseId},</if>
  78. <if test="videoId != null">#{videoId},</if>
  79. <if test="aiTouch != null">#{aiTouch},</if>
  80. <if test="addTag != null">#{addTag},</if>
  81. <if test="delTag != null">#{delTag},</if>
  82. </trim>
  83. </insert>
  84. <insert id="insertBatch" useGeneratedKeys="false">
  85. insert into qw_sop_temp_rules (id,temp_id,name,day_num,time, type,content_type,course_type,course_id,video_id,ai_touch)
  86. values
  87. <foreach collection="list" item="item" separator=",">
  88. ( CAST(#{item.id} AS UUID), CAST(#{item.tempId} AS UUID), #{item.name}, #{item.dayNum}, #{item.time}, #{item.type}, #{item.contentType}, #{item.courseType}, #{item.courseId}, #{item.videoId}, #{item.aiTouch})
  89. </foreach>
  90. </insert>
  91. <update id="updateQwSopTempRules" parameterType="QwSopTempRules">
  92. update qw_sop_temp_rules
  93. <trim prefix="SET" suffixOverrides=",">
  94. <if test="tempId != null and tempId != ''">temp_id = CAST(#{tempId} AS UUID),</if>
  95. <if test="name != null">name = #{name},</if>
  96. <if test="dayNum != null">day_num = #{dayNum},</if>
  97. <if test="time != null">time = #{time},</if>
  98. <if test="contentType != null">content_type = #{contentType},</if>
  99. <if test="courseType != null">course_type = #{courseType},</if>
  100. <if test="courseId != null">course_id = #{courseId},</if>
  101. <if test="videoId != null">video_id = #{videoId},</if>
  102. <if test="aiTouch != null">ai_touch = #{aiTouch},</if>
  103. <if test="addTag != null">add_tag = #{addTag},</if>
  104. <if test="delTag != null">del_tag = #{delTag},</if>
  105. </trim>
  106. where id = #{id}
  107. </update>
  108. <delete id="deleteQwSopTempRulesById" parameterType="String">
  109. ALTER TABLE qw_sop_temp_rules DELETE where id = CAST(#{id} AS UUID)
  110. </delete>
  111. <delete id="deleteQwSopTempRulesByIds" parameterType="String">
  112. delete from qw_sop_temp_rules where id in
  113. <foreach item="id" collection="array" open="(" separator="," close=")">
  114. #{id}
  115. </foreach>
  116. </delete>
  117. <!-- <delete id="deleteByTempId">-->
  118. <!-- ALTER TABLE qw_sop_temp_rules DELETE where temp_id = CAST(#{id} AS UUID)-->
  119. <!-- </delete>-->
  120. <delete id="deleteByTempId">
  121. DELETE from qw_sop_temp_rules where temp_id = #{id}
  122. </delete>
  123. <delete id="deleteByIdList">
  124. ALTER TABLE qw_sop_temp_rules DELETE where id in
  125. <foreach item="item" collection="ids" open="(" separator="," close=")">
  126. CAST(#{item} AS UUID)
  127. </foreach>
  128. </delete>
  129. <select id="getTempOfficialIdsForOpen" parameterType="java.lang.String" resultType="java.lang.Long">
  130. select tt.id from
  131. (
  132. select
  133. t.id,
  134. RANK() OVER (PARTITION by t.day_id ORDER BY t.sorts ) AS rank_num
  135. from qw_sop_temp_rules t
  136. where t.temp_id = #{tempId}
  137. ) tt
  138. where tt.rank_num = 1
  139. </select>
  140. <select id="getTempOfficialIdsForClose" parameterType="java.lang.String" resultType="java.lang.Long">
  141. select id from qw_sop_temp_rules where temp_id = #{tempId} and is_official = 1
  142. </select>
  143. <update id="updateTempRulesOfficialBatch" >
  144. update qw_sop_temp_rules
  145. set is_official = #{official}
  146. where id in
  147. <foreach item="item" collection="ids" open="(" separator="," close=")">
  148. #{item}
  149. </foreach>
  150. </update>
  151. </mapper>