FinanceMapper.xml 8.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228
  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.ytpm.middle.dao.FinanceMapper">
  4. <insert id="addItem">
  5. insert into yt_finance_payment_item
  6. (item_id, item_name, item_amount, unit, count, create_time, create_user_id, available)
  7. values
  8. (#{itemId},#{itemName},#{itemAmount},#{unit},#{count},#{createTime},#{createUserId},#{available});
  9. </insert>
  10. <insert id="addPaymentRecord">
  11. insert into yt_finance_payment_record
  12. (
  13. record_id,
  14. user_id,
  15. payment_id,
  16. item_id,
  17. should_amount
  18. )
  19. values
  20. (
  21. #{recordId},
  22. #{userId},
  23. #{paymentId},
  24. #{itemId},
  25. #{shouldAmount}
  26. )
  27. </insert>
  28. <insert id="addPayment">
  29. insert into yt_finance_payment
  30. (
  31. payment_id,
  32. payment_no,
  33. payment_type,
  34. total_amount,
  35. user_id,
  36. create_time,
  37. create_user_id,
  38. available
  39. )
  40. values
  41. (
  42. #{paymentId},
  43. #{paymentNo},
  44. #{paymentType},
  45. #{totalAmount},
  46. #{userId},
  47. #{createTime},
  48. #{createUserId},
  49. #{available}
  50. )
  51. </insert>
  52. <update id="updateItem">
  53. update yt_finance_payment_item
  54. <set>
  55. <if test="itemName != null">
  56. item_name = #{itemName},
  57. </if>
  58. <if test="itemAmount != null">
  59. item_amount = #{itemAmount},
  60. </if>
  61. <if test="unit != null">
  62. unit = #{unit},
  63. </if>
  64. <if test="count != null">
  65. `count` = #{count},
  66. </if>
  67. <if test="updateTime != null">
  68. update_time = #{updateTime},
  69. </if>
  70. <if test="updateUserId != null">
  71. update_user_id = #{updateUserId},
  72. </if>
  73. <if test="available != null">
  74. available = #{available}
  75. </if>
  76. </set>
  77. where item_id = #{itemId}
  78. </update>
  79. <update id="updatePayment">
  80. update yt_finance_payment
  81. <set>
  82. <if test="paymentNo != null">
  83. payment_no = #{paymentNo},
  84. </if>
  85. <if test="paymentType != null">
  86. payment_type = #{paymentType},
  87. </if>
  88. <if test="paymentStatus != null">
  89. payment_status = #{paymentStatus},
  90. </if>
  91. <if test="totalAmount != null">
  92. total_amount = #{totalAmount},
  93. </if>
  94. <if test="userId != null">
  95. user_id = #{userId},
  96. </if>
  97. <if test="finishTime != null">
  98. finish_time = #{finishTime},
  99. </if>
  100. <if test="updateTime != null">
  101. update_time = #{updateTime},
  102. </if>
  103. <if test="updateUserId != null">
  104. update_user_id = #{updateUserId},
  105. </if>
  106. <if test="available != null">
  107. available = #{available}
  108. </if>
  109. </set>
  110. where payment_id = #{paymentId}
  111. </update>
  112. <update id="updatePaymentRecord">
  113. update yt_finance_payment_record
  114. set receive_amount = should_amount, receive_time = now(),charge_status=1
  115. where payment_id = #{paymentId}
  116. </update>
  117. <select id="queryList" resultType="com.ytpm.middle.view.PaymentItemVO">
  118. select
  119. item_id, item_name, item_amount, unit, count, create_time, create_user_id, update_time, update_user_id, available
  120. from yt_finance_payment_item
  121. where available = 1
  122. <if test="itemName != null and itemName != ''">
  123. and item_name like concat('%',#{itemName},'%')
  124. </if>
  125. </select>
  126. <select id="selectItemOne" resultType="com.ytpm.middle.model.YtFinancePaymentItem">
  127. select
  128. item_id, item_name, item_amount, unit, count, create_time, create_user_id, update_time, update_user_id, available
  129. from yt_finance_payment_item
  130. where item_id = #{itemId}
  131. </select>
  132. <select id="paymentList" resultType="com.ytpm.middle.view.FinancePaymentVO">
  133. SELECT
  134. fp.payment_id,
  135. fp.payment_no,
  136. fp.total_amount,
  137. fp.payment_status,
  138. me.enterprise_id,
  139. me.enterprise_name,
  140. me.credit_code,
  141. me.enterprise_type,
  142. me.sharing_ratio,
  143. me.has_fast
  144. FROM
  145. yt_finance_payment fp
  146. JOIN yt_middle_enterprise me ON fp.user_id = me.user_id
  147. WHERE
  148. fp.available = 1
  149. <if test="paymentNo != null and paymentNo != ''">
  150. and fp.payment_no like concat('%',#{paymentNo},'%')
  151. </if>
  152. <if test="paymentStatus != null">
  153. and fp.payment_status = #{paymentStatus}
  154. </if>
  155. <if test="enterpriseType != null">
  156. and me.enterprise_type = #{enterpriseType}
  157. </if>
  158. order by fp.payment_status
  159. </select>
  160. <resultMap id="FinancePaymentVOMap" type="com.ytpm.middle.view.FinancePaymentVO">
  161. <id column="payment_id" property="paymentId" />
  162. <result column="payment_no" property="paymentNo" />
  163. <result column="total_amount" property="totalAmount" />
  164. <result column="payment_status" property="paymentStatus" />
  165. <result column="enterprise_name" property="enterpriseName" />
  166. <result column="credit_code" property="creditCode" />
  167. <result column="enterprise_type" property="enterpriseType" />
  168. <result column="has_fast" property="hasFast" />
  169. <result column="sharing_ratio" property="sharingRatio" />
  170. <result column="payment_date" property="paymentDate" />
  171. <collection property="itemList" ofType="com.ytpm.middle.view.FinancePaymentItemVO">
  172. <result column="item_id" property="itemId" />
  173. <result column="item_name" property="itemName" />
  174. <result column="item_amount" property="itemAmount" />
  175. </collection>
  176. <collection property="attachList" ofType="com.ytpm.middle.view.AttachVO">
  177. <result column="attach_id" property="attachId" />
  178. <result column="url" property="url" />
  179. <result column="size" property="size" />
  180. <result column="attach_name" property="attachName" />
  181. </collection>
  182. </resultMap>
  183. <select id="getPaymentDetail" resultMap="FinancePaymentVOMap">
  184. SELECT
  185. fp.payment_id,
  186. fp.payment_no,
  187. fp.total_amount,
  188. fp.payment_status,
  189. me.enterprise_name,
  190. me.credit_code,
  191. me.enterprise_type,
  192. me.has_fast,
  193. me.sharing_ratio,
  194. me.payment_date,
  195. fpr.item_id,
  196. (select item_name from yt_finance_payment_item where item_id = fpr.item_id) item_name,
  197. (select item_amount from yt_finance_payment_item where item_id = fpr.item_id) item_amount,
  198. pa.attach_id,
  199. pa.attach_name,
  200. pa.url,
  201. pa.size
  202. FROM
  203. yt_finance_payment fp
  204. JOIN yt_middle_enterprise me ON fp.user_id = me.user_id
  205. LEFT JOIN yt_finance_payment_record fpr ON fp.payment_id = fpr.payment_id
  206. LEFT JOIN yt_platform_attach pa on target_type = 2 and target_id = fp.payment_id
  207. WHERE
  208. fp.available = 1
  209. and fp.payment_id = #{paymentId}
  210. group by fp.payment_id,fpr.record_id,pa.attach_id
  211. </select>
  212. <select id="getPaymentByType" resultType="com.ytpm.middle.view.FinancePaymentVO">
  213. select
  214. payment_id, payment_no, payment_type, total_amount, payment_status, user_id, finish_time, create_time, create_user_id, update_time, update_user_id, available
  215. from yt_finance_payment
  216. where payment_type = 1 and user_id = #{userId}
  217. </select>
  218. <select id="findByItemIds" resultType="com.ytpm.middle.view.FinancePaymentItemVO">
  219. select
  220. item_id, item_name, item_amount, unit, count, create_time, create_user_id, update_time, update_user_id, available
  221. from yt_finance_payment_item
  222. where item_id in
  223. <foreach collection="itemIdList" separator="," item="item" open="(" close=")">
  224. #{item}
  225. </foreach>
  226. </select>
  227. </mapper>