FsUserRewardsMapper.xml 9.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196
  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.his.mapper.FsUserRewardsMapper">
  6. <resultMap type="com.fs.his.domain.FsUserRewards" id="FsUserRewardsResult">
  7. <id property="id" column="id"/>
  8. <result property="fsUserId" column="fs_user_id"/>
  9. <result property="activityType" column="activity_type"/>
  10. <result property="rewardType" column="reward_type"/>
  11. <result property="status" column="status"/>
  12. <result property="orderCode" column="order_code"/>
  13. <result property="goodsId" column="goods_id"/>
  14. <result property="productType" column="product_type"/>
  15. <result property="rewardAmount" column="reward_amount"/>
  16. <result property="rewardPoints" column="reward_points"/>
  17. <result property="goodsName" column="goods_name"/>
  18. <result property="goodsUrl" column="goods_url"/>
  19. <result property="grantTime" column="grant_time"/>
  20. <result property="createTime" column="create_time"/>
  21. <result property="updateTime" column="update_time"/>
  22. <result property="isFirstLogin" column="is_first_login"/>
  23. <result property="videoId" column="video_id"/>
  24. <result property="rewardDate" column="reward_date"/>
  25. </resultMap>
  26. <!-- 基础字段列表 -->
  27. <sql id="selectFsUserRewardsVo">
  28. select id, fs_user_id, activity_type, reward_type, status,
  29. order_code, goods_id, product_type, reward_amount, reward_points,
  30. goods_name, goods_url, grant_time, create_time, update_time, is_first_login,video_id,reward_date
  31. from fs_user_rewards
  32. </sql>
  33. <!-- 根据ID查询 -->
  34. <select id="selectFsUserRewardsById" parameterType="Long" resultMap="FsUserRewardsResult">
  35. <include refid="selectFsUserRewardsVo"/>
  36. where id = #{id}
  37. </select>
  38. <!-- 根据用户ID和首次登录注册标识查询 -->
  39. <select id="selectByUserIdAndFirstLoginType" resultMap="FsUserRewardsResult">
  40. <include refid="selectFsUserRewardsVo"/>
  41. where fs_user_id = #{fsUserId} and activity_type = "FIRST_LOGIN"
  42. </select>
  43. <!-- 根据用户ID和奖品id查询 -->
  44. <select id="selectByUserIdAndRewardsId" resultMap="FsUserRewardsResult">
  45. <include refid="selectFsUserRewardsVo"/>
  46. where id = #{rewardsId} and fs_user_id = #{fsUserId}
  47. </select>
  48. <!-- 查询用户的所有活动记录 -->
  49. <select id="selectByUserId" parameterType="Long" resultMap="FsUserRewardsResult">
  50. <include refid="selectFsUserRewardsVo"/>
  51. where fs_user_id = #{fsUserId}
  52. order by create_time desc
  53. </select>
  54. <!-- 查询指定活动的所有用户记录 -->
  55. <select id="selectByActivityType" parameterType="String" resultMap="FsUserRewardsResult">
  56. <include refid="selectFsUserRewardsVo"/>
  57. where activity_type = #{activityType}
  58. order by create_time desc
  59. </select>
  60. <!-- 查询待领取的记录 -->
  61. <select id="selectPendingRewards" resultMap="FsUserRewardsResult">
  62. <include refid="selectFsUserRewardsVo"/>
  63. where status = 0
  64. order by create_time asc
  65. </select>
  66. <!-- 条件查询列表 -->
  67. <select id="selectFsUserRewardsList" parameterType="com.fs.his.domain.FsUserRewards" resultMap="FsUserRewardsResult">
  68. <include refid="selectFsUserRewardsVo"/>
  69. <where>
  70. <if test="fsUserId != null"> and fs_user_id = #{fsUserId}</if>
  71. <if test="activityType != null and activityType != ''"> and activity_type = #{activityType}</if>
  72. <if test="rewardType != null"> and reward_type = #{rewardType}</if>
  73. <if test="status != null"> and status = #{status}</if>
  74. <if test="orderCode != null and orderCode != ''"> and order_code = #{orderCode}</if>
  75. <if test="goodsId != null"> and goods_id = #{goodsId}</if>
  76. <if test="productType != null"> and product_type = #{productType}</if>
  77. <if test="rewardAmount != null"> and reward_amount = #{rewardAmount}</if>
  78. <if test="rewardPoints != null"> and reward_points = #{rewardPoints}</if>
  79. <if test="goodsName != null and goodsName != ''"> and goods_name = #{goodsName}</if>
  80. <if test="goodsUrl != null and goodsUrl != ''"> and goods_url = #{goodsUrl}</if>
  81. <if test="grantTime != null"> and grant_time = #{grantTime}</if>
  82. <if test="createTime != null"> and create_time = #{createTime}</if>
  83. <if test="updateTime != null"> and update_time = #{updateTime}</if>
  84. <if test="isFirstLogin != null"> and is_first_login = #{isFirstLogin}</if>
  85. <if test="videoId != null"> and video_id = #{videoId}</if>
  86. <if test="rewardDate != null"> and reward_date = #{rewardDate}</if>
  87. </where>
  88. order by create_time desc
  89. </select>
  90. <select id="selectTodayListDataByUserIdAndActivityType" resultMap="FsUserRewardsResult">
  91. <include refid="selectFsUserRewardsVo"/>
  92. where fs_user_id = #{fsUserId} and activity_type = #{activityType} and create_time &gt;= CURDATE() and create_time &lt; DATE_ADD(CURDATE(), INTERVAL 1 DAY)
  93. </select>
  94. <select id="selectByUserIdAndVideoId" resultType="com.fs.his.domain.FsUserRewards">
  95. <include refid="selectFsUserRewardsVo"/>
  96. where fs_user_id = #{fsUserId} and video_id = #{videoId} and reward_date= #{rewardDate}
  97. </select>
  98. <!-- 新增记录 -->
  99. <insert id="insertFsUserRewards" parameterType="com.fs.his.domain.FsUserRewards" useGeneratedKeys="true" keyProperty="id">
  100. insert into fs_user_rewards
  101. <trim prefix="(" suffix=")" suffixOverrides=",">
  102. <if test="fsUserId != null">fs_user_id,</if>
  103. <if test="activityType != null">activity_type,</if>
  104. <if test="rewardType != null">reward_type,</if>
  105. <if test="status != null">status,</if>
  106. <if test="orderCode != null">order_code,</if>
  107. <if test="goodsId != null">goods_id,</if>
  108. <if test="productType != null">product_type,</if>
  109. <if test="rewardAmount != null">reward_amount,</if>
  110. <if test="rewardPoints != null">reward_points,</if>
  111. <if test="goodsName != null and goodsName != ''">goods_name,</if>
  112. <if test="goodsUrl != null and goodsUrl != ''">goods_url,</if>
  113. <if test="grantTime != null">grant_time,</if>
  114. <if test="isFirstLogin != null">is_first_login,</if>
  115. <if test="videoId != null">video_id,</if>
  116. <if test="rewardDate != null">reward_date,</if>
  117. create_time,
  118. </trim>
  119. <trim prefix="values (" suffix=")" suffixOverrides=",">
  120. <if test="fsUserId != null">#{fsUserId},</if>
  121. <if test="activityType != null">#{activityType},</if>
  122. <if test="rewardType != null">#{rewardType},</if>
  123. <if test="status != null">#{status},</if>
  124. <if test="orderCode != null">#{orderCode},</if>
  125. <if test="goodsId != null">#{goodsId},</if>
  126. <if test="productType != null">#{productType},</if>
  127. <if test="rewardAmount != null">#{rewardAmount},</if>
  128. <if test="rewardPoints != null">#{rewardPoints},</if>
  129. <if test="goodsName != null and goodsName != ''">#{goodsName},</if>
  130. <if test="goodsUrl != null and goodsUrl != ''">#{goodsUrl},</if>
  131. <if test="grantTime != null">#{grantTime},</if>
  132. <if test="isFirstLogin != null">#{isFirstLogin},</if>
  133. <if test="videoId != null">#{videoId},</if>
  134. <if test="rewardDate != null">#{rewardDate},</if>
  135. sysdate(),
  136. </trim>
  137. </insert>
  138. <!-- 修改记录 -->
  139. <update id="updateFsUserRewards" parameterType="com.fs.his.domain.FsUserRewards">
  140. update fs_user_rewards
  141. <trim prefix="SET" suffixOverrides=",">
  142. <if test="fsUserId != null">fs_user_id = #{fsUserId},</if>
  143. <if test="activityType != null">activity_type = #{activityType},</if>
  144. <if test="rewardType != null">reward_type = #{rewardType},</if>
  145. <if test="status != null">status = #{status},</if>
  146. <if test="orderCode != null">order_code = #{orderCode},</if>
  147. <if test="goodsId != null">goods_id = #{goodsId},</if>
  148. <if test="productType != null">product_type = #{productType},</if>
  149. <if test="rewardAmount != null">reward_amount = #{rewardAmount},</if>
  150. <if test="rewardPoints != null">reward_points = #{rewardPoints},</if>
  151. <if test="goodsName != null and goodsName != ''">goods_name = #{goodsName},</if>
  152. <if test="goodsUrl != null and goodsUrl != ''">goods_url = #{goodsUrl},</if>
  153. <if test="grantTime != null">grant_time = #{grantTime},</if>
  154. <if test="isFirstLogin != null">is_first_login = #{isFirstLogin},</if>
  155. <if test="videoId != null">video_id = #{videoId},</if>
  156. <if test="rewardDate != null">reward_date = #{rewardDate},</if>
  157. update_time = sysdate()
  158. </trim>
  159. where id = #{id}
  160. </update>
  161. <!-- 更新状态方法 -->
  162. <update id="updateStatus">
  163. update fs_user_rewards
  164. set status = #{status},
  165. <if test="orderCode != null and orderCode != ''">order_code = #{orderCode},</if>
  166. grant_time = #{grantTime},
  167. update_time = sysdate()
  168. where id = #{id}
  169. </update>
  170. <!-- 删除记录 -->
  171. <delete id="deleteFsUserRewardsById" parameterType="Long">
  172. delete from fs_user_rewards where id = #{id}
  173. </delete>
  174. <!-- 批量删除-->
  175. <delete id="deleteFsUserRewardsByIds" parameterType="String">
  176. delete from fs_user_rewards where id in
  177. <foreach item="id" collection="array" open="(" separator="," close=")">
  178. #{id}
  179. </foreach>
  180. </delete>
  181. </mapper>