You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

240 lines
10 KiB

7 months ago
6 months ago
5 months ago
5 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
6 months ago
2 months ago
  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.example.demo.mapper.coin.AuditMapper">
  4. <update id="updateOrder">
  5. update user_gold_record
  6. set audit_id = #{auditId},
  7. audit_status = #{auditStatus},
  8. red_diff = #{redDiff},
  9. reject_reason = #{rejectReason},
  10. audit_time = #{auditTime}
  11. where order_code = #{orderCode} and audit_status = 0
  12. order by create_time DESC
  13. limit 1
  14. </update>
  15. <update id="updateUserGold">
  16. update user
  17. <set>
  18. <if test="currentPermanentGold != null">
  19. current_permanent_gold = current_permanent_gold + #{currentPermanentGold},
  20. </if>
  21. <if test="currentFreeJune != null">
  22. current_free_june = current_free_june + #{currentFreeJune},
  23. </if>
  24. <if test="currentFreeDecember != null">
  25. current_free_december = current_free_december + #{currentFreeDecember},
  26. </if>
  27. <if test="currentTaskGold != null">
  28. current_task_gold = current_task_gold + #{currentTaskGold},
  29. </if>
  30. </set>
  31. where jwcode = #{jwcode}
  32. </update>
  33. <update id="updateOrderRefund">
  34. update user_gold_record
  35. set is_refund = #{isRefund}
  36. where order_code = #{orderCode} and type in (0,1)
  37. </update>
  38. <select id="selectRechargeBy" resultType="com.example.demo.domain.vo.coin.RechargeAudit">
  39. SELECT ugr.id,ugr.order_code,ugr.jwcode,ugr.activity,
  40. ugr.rate_id,ugr.money,ugr.sum_gold,ugr.permanent_gold,ugr.free_june,ugr.free_december,
  41. ugr.task_gold,ugr.remark,ugr.pay_model,ugr.pay_platform,ugr.voucher,
  42. ugr.goods_name,ugr.type,ugr.is_refund,ugr.admin_id,ugr.audit_id,
  43. ugr.audit_status,ugr.reject_reason,ugr.pay_time,
  44. ugr.create_time,ugr.audit_time,ugr.update_time,
  45. (COALESCE(ugr.free_june, 0) + COALESCE(ugr.free_december, 0)) AS freeGold,
  46. u.name as name,
  47. m.name as market,
  48. r.rate_name AS rateName,
  49. a1.admin_name as adminName,
  50. a2.admin_name as auditName
  51. FROM user_gold_record as ugr
  52. LEFT JOIN user u ON ugr.jwcode = u.jwcode
  53. LEFT JOIN admin a1 ON ugr.admin_id = a1.id
  54. LEFT JOIN admin a2 ON ugr.audit_id = a2.id
  55. left join market m ON u.market = m.id
  56. left JOIN rate r ON ugr.rate_id = r.id
  57. <where>
  58. <!-- <if test="rechargeAudit.flag != 0">
  59. AND u.flag = 1
  60. </if>-->
  61. <if test="rechargeAudit.jwcode != null and rechargeAudit.jwcode != ''">
  62. AND ugr.jwcode = #{rechargeAudit.jwcode}
  63. </if>
  64. <if test="rechargeAudit.flag!=0">
  65. AND u.flag = 1
  66. </if>
  67. <if test="rechargeAudit.activity != null and rechargeAudit.activity != ''">
  68. AND ugr.activity = #{rechargeAudit.activity}
  69. </if>
  70. <!-- 判断 market 是否不为总部且 markets 不为空 -->
  71. <!-- <if test="rechargeAudit.markets != null and rechargeAudit.markets.size() > 0">
  72. AND (
  73. <foreach collection="rechargeAudit.markets" item="market" open="" close="" separator=" OR ">
  74. u.market = #{market}
  75. </foreach>
  76. )
  77. </if>-->
  78. <if test="rechargeAudit.markets != null and rechargeAudit.markets.size() > 0">
  79. AND u.market IN
  80. <foreach collection="rechargeAudit.markets" item="market" open="(" separator="," close=")">
  81. #{market}
  82. </foreach>
  83. </if>
  84. <if test="rechargeAudit.payModel != null and rechargeAudit.payModel != ''">
  85. AND ugr.pay_model = #{rechargeAudit.payModel}
  86. </if>
  87. <!-- <if test="rechargeAudit.rateId != null and rechargeAudit.rateId != ''">
  88. AND ugr.rate_id = #{rechargeAudit.rateId}
  89. </if>-->
  90. <if test="rechargeAudit.market != null and rechargeAudit.market != ''">
  91. AND m.id = #{rechargeAudit.market}
  92. </if>
  93. <if test="rechargeAudit.startTime != null and rechargeAudit.endTime != null ">
  94. AND ugr.audit_time between #{rechargeAudit.startTime} and #{rechargeAudit.endTime}
  95. </if>
  96. <if test="rechargeAudit.auditStatus != null and rechargeAudit.auditStatus != ''">
  97. AND ugr.audit_status = #{rechargeAudit.auditStatus}
  98. </if>
  99. AND ugr.type = 0
  100. and ugr.flag=1
  101. </where>
  102. <choose>
  103. <when test="rechargeAudit.sortField != null and rechargeAudit.sortField.length > 0 or rechargeAudit.sortOrder != null and rechargeAudit.sortOrder.length > 0">
  104. ORDER BY ${rechargeAudit.sortField} ${rechargeAudit.sortOrder}
  105. </when>
  106. <otherwise>
  107. ORDER BY audit_time DESC
  108. </otherwise>
  109. </choose>
  110. </select>
  111. <select id="selectRefundBy" resultType="com.example.demo.domain.vo.coin.RefundAudit">
  112. SELECT ugr.id,ugr.order_code,ugr.jwcode,
  113. ugr.sum_gold,ugr.permanent_gold,ugr.free_june,ugr.free_december,
  114. ugr.task_gold,ugr.remark,ugr.pay_platform,
  115. ugr.goods_name,ugr.refund_type,ugr.refund_model,ugr.type,ugr.admin_id,ugr.audit_id,
  116. ugr.audit_status,ugr.reject_reason,ugr.create_time,ugr.audit_time,
  117. ugr.update_time,ugr.flag,ugr.uid,ugr.price,ugr.link_id,ugr.red_diff,
  118. (COALESCE(ugr.free_june, 0) + COALESCE(ugr.free_december, 0)) AS freeGold,
  119. u.name as name,
  120. r.rate_name AS rateName,
  121. m.name as market,
  122. a1.admin_name as adminName,
  123. a2.admin_name as auditName
  124. FROM user_gold_record as ugr
  125. LEFT JOIN user u ON ugr.jwcode = u.jwcode
  126. LEFT JOIN admin a1 ON ugr.admin_id = a1.id
  127. LEFT JOIN admin a2 ON ugr.audit_id = a2.id
  128. left join market m ON u.market = m.id
  129. left JOIN rate r ON ugr.rate_id = r.id
  130. <where>
  131. <!-- <if test="refundAudit.flag != 0">
  132. AND u.flag = 1
  133. </if>-->
  134. <if test="refundAudit.jwcode != null">
  135. AND ugr.jwcode = #{refundAudit.jwcode}
  136. </if>
  137. <if test="refundAudit.flag!=0">
  138. AND u.flag = 1
  139. </if>
  140. <if test="refundAudit.refundModel != null ">
  141. AND ugr.refund_model = #{refundAudit.refundModel}
  142. </if>
  143. <if test="refundAudit.refundType != null and refundAudit.refundType!='' ">
  144. AND ugr.refund_type = #{refundAudit.refundType}
  145. </if>
  146. <if test="refundAudit.goodsName != null and refundAudit.goodsName != ''">
  147. AND ugr.goods_name = #{refundAudit.goodsName}
  148. </if>
  149. <!-- 判断 market 是否不为总部且 markets 不为空 -->
  150. <if test="refundAudit.markets != null and refundAudit.markets.size() > 0">
  151. AND (
  152. <foreach collection="refundAudit.markets" item="market" open="" close="" separator=" OR ">
  153. u.market = #{market}
  154. </foreach>
  155. )
  156. </if>
  157. <if test="refundAudit.startTime != null and refundAudit.endTime != null ">
  158. AND ugr.audit_time between #{refundAudit.startTime} and #{refundAudit.endTime}
  159. </if>
  160. <if test="refundAudit.market != null and refundAudit.market != ''">
  161. AND m.id = #{refundAudit.market}
  162. </if>
  163. <if test="refundAudit.auditStatus != null and refundAudit.auditStatus != ''">
  164. AND ugr.audit_status = #{refundAudit.auditStatus}
  165. </if>
  166. AND ugr.type = 2
  167. and ugr.flag=1
  168. </where>
  169. <choose>
  170. <when test="refundAudit.sortField != null and refundAudit.sortField.length > 0 or refundAudit.sortOrder != null and refundAudit.sortOrder.length > 0">
  171. ORDER BY ${refundAudit.sortField} ${refundAudit.sortOrder}
  172. </when>
  173. <otherwise>
  174. ORDER BY audit_time DESC
  175. </otherwise>
  176. </choose>
  177. </select>
  178. <select id="getName" resultType="java.lang.String">
  179. select admin_name from admin where id = #{auditId}
  180. </select>
  181. <select id="getNamesByIds" resultType="com.example.demo.domain.entity.Admin">
  182. select id, admin_name from admin
  183. <where>
  184. <if test="submitterIds != null and submitterIds.size() > 0">
  185. id in
  186. <foreach collection="submitterIds" item="id" open="(" separator="," close=")">
  187. #{id}
  188. </foreach>
  189. </if>
  190. <if test="submitterIds == null or submitterIds.size() == 0">
  191. 1=0
  192. </if>
  193. </where>
  194. </select>
  195. <update id="updateFirstRecharge">
  196. update user set first_recharge = now() where jwcode = #{jwcode} and first_recharge is null
  197. </update>
  198. <!--根据订单号查订单-->
  199. <select id="selectAllOrderByOrderCode" resultType="com.example.demo.domain.entity.UserGoldRecord">
  200. select * from user_gold_record where order_code = #{orderCode} and flag=1
  201. ORDER BY create_time DESC
  202. limit 1
  203. </select>
  204. <select id="getAdminMarket" resultType="java.lang.String">
  205. </select>
  206. <!--根据订单号查未审核订单-->
  207. <select id="selectOrderByOrderCode" resultType="com.example.demo.domain.entity.UserGoldRecord">
  208. select * from user_gold_record
  209. where order_code = #{orderCode} and audit_status = 0
  210. and flag=1
  211. ORDER BY create_time DESC
  212. limit 1
  213. </select>
  214. <select id="getNamesByJwcodes" resultType="com.example.demo.domain.entity.Admin">
  215. select account, admin_name from admin
  216. <where>
  217. <if test="executorIds != null and executorIds.size() > 0">
  218. account in
  219. <foreach collection="executorIds" item="account" open="(" separator="," close=")">
  220. #{account}
  221. </foreach>
  222. </if>
  223. <if test="executorIds == null or executorIds.size() == 0">
  224. 1=0
  225. </if>
  226. </where>
  227. </select>
  228. </mapper>