TopDivideOrderMapper.xml 8.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212
  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.zhongzheng.modules.top.financial.mapper.TopDivideOrderMapper">
  6. <resultMap type="com.zhongzheng.modules.top.financial.domain.TopDivideOrder" id="TopDivideOrderResult">
  7. <result property="id" column="id"/>
  8. <result property="divideLogId" column="divide_log_id"/>
  9. <result property="orderSn" column="order_sn"/>
  10. <result property="orderType" column="order_type"/>
  11. <result property="status" column="status"/>
  12. <result property="createTime" column="create_time"/>
  13. <result property="updateTime" column="update_time"/>
  14. </resultMap>
  15. <select id="getFinishList" parameterType="com.zhongzheng.modules.top.financial.bo.TopDivideOrderQueryBo" resultType="com.zhongzheng.modules.top.financial.vo.TopDivideOrderVo">
  16. SELECT
  17. tdo.*,
  18. st.tenant_name ,
  19. cl.check_status,
  20. dl.pay_status,
  21. dl.divide_type,
  22. oo.buy_time as order_time,
  23. oo.remark,
  24. oo.divide_company_money,
  25. oo.divide_seller_money,
  26. oo.brokerage
  27. FROM
  28. top_divide_order tdo
  29. LEFT JOIN top_divide_log dl ON tdo.divide_log_id = dl.id
  30. LEFT JOIN sys_tenant st ON dl.tenant_id = st.tenant_id
  31. LEFT JOIN v_top_order oo ON tdo.order_sn = oo.order_sn
  32. LEFT JOIN
  33. top_old_order_check_log cl ON (dl.divide_type+1) = cl.check_from AND cl.check_sign = 1 AND tdo.order_sn = cl.order_sn
  34. WHERE
  35. tdo.order_type = 1
  36. AND tdo.divide_log_id = #{divideLogId}
  37. </select>
  38. <select id="getRefundList" parameterType="com.zhongzheng.modules.top.financial.bo.TopDivideOrderQueryBo" resultType="com.zhongzheng.modules.top.financial.vo.TopDivideOrderVo">
  39. SELECT
  40. tdo.*,
  41. st.tenant_name,
  42. dl.pay_status,
  43. dl.divide_type,
  44. oo.remark,
  45. tor.divide_money,
  46. tor.refund_time as order_time
  47. FROM
  48. top_divide_order tdo
  49. LEFT JOIN top_divide_log dl ON tdo.divide_log_id = dl.id
  50. LEFT JOIN sys_tenant st ON dl.tenant_id = st.tenant_id
  51. LEFT JOIN v_top_order oo ON tdo.order_sn = oo.order_sn
  52. LEFT JOIN top_old_order_refund tor ON tdo.order_sn = tor.order_sn
  53. WHERE
  54. tdo.order_type = 2
  55. AND tdo.divide_log_id = #{divideLogId}
  56. </select>
  57. <select id="getMonthFinishAllTenant" parameterType="com.zhongzheng.modules.top.financial.bo.TopDivideOrderQueryBo" resultType="String">
  58. SELECT
  59. v.tenant_id
  60. FROM
  61. v_top_order v
  62. WHERE
  63. 1 = 1
  64. AND v.finish_status = 1
  65. <if test="divideModel != null and divideModel != ''">
  66. AND v.divide_model = #{divideModel}
  67. </if>
  68. <if test="accomplishStartTime != null and accomplishStartTime != ''">
  69. AND v.accomplish_time BETWEEN #{accomplishStartTime} and #{accomplishEndTime}
  70. </if>
  71. <if test="tenantId != null and tenantId != ''">
  72. AND v.tenant_id = #{tenantId}
  73. </if>
  74. GROUP BY v.tenant_id
  75. </select>
  76. <select id="getMonthFinishList" parameterType="com.zhongzheng.modules.top.financial.bo.TopDivideOrderQueryBo" resultType="com.zhongzheng.modules.top.financial.vo.TopDivideOrderVo">
  77. SELECT
  78. v.order_sn,
  79. v.divide_company_money,
  80. v.divide_seller_money,
  81. v.tenant_id,
  82. v.create_no,
  83. v.create_username,
  84. v.brokerage
  85. FROM
  86. v_top_order v
  87. WHERE
  88. 1 = 1
  89. AND v.finish_status = 1
  90. <if test="divideModel != null and divideModel != ''">
  91. AND v.divide_model = #{divideModel}
  92. </if>
  93. <if test="accomplishStartTime != null and accomplishStartTime != ''">
  94. AND v.accomplish_time BETWEEN #{accomplishStartTime} and #{accomplishEndTime}
  95. </if>
  96. <if test="tenantId != null and tenantId != ''">
  97. AND v.tenant_id = #{tenantId}
  98. </if>
  99. <if test="createNo != null and createNo != ''">
  100. AND v.create_no = #{createNo}
  101. </if>
  102. </select>
  103. <select id="getMonthRefundList" parameterType="com.zhongzheng.modules.top.financial.bo.TopDivideOrderQueryBo" resultType="com.zhongzheng.modules.top.financial.vo.TopDivideOrderVo">
  104. SELECT
  105. tor.order_sn,
  106. tor.divide_money,
  107. tor.tenant_id,
  108. tor.refund_sn,
  109. v.create_no,
  110. v.create_username
  111. FROM
  112. top_old_order_refund tor
  113. LEFT JOIN v_top_order v on tor.order_sn = v.order_sn
  114. WHERE
  115. 1 = 1
  116. AND tor.period_status = 3
  117. <if test="divideModel != null and divideModel != ''">
  118. AND tor.divide_model = #{divideModel}
  119. </if>
  120. <if test="refundTimeStartTime != null and refundTimeStartTime != ''">
  121. AND tor.refund_time BETWEEN #{refundTimeStartTime} and #{refundTimeEndTime}
  122. </if>
  123. <if test="tenantId != null and tenantId != ''">
  124. AND tor.tenant_id = #{tenantId}
  125. </if>
  126. <if test="createNo != null and createNo != ''">
  127. AND v.create_no = #{createNo}
  128. </if>
  129. </select>
  130. <select id="getMonthBadSum" parameterType="com.zhongzheng.modules.top.financial.bo.TopDivideOrderQueryBo" resultType="BigDecimal">
  131. SELECT
  132. IFNULL(SUM(too.order_uncollected),0)
  133. FROM
  134. top_old_order too
  135. WHERE
  136. too.status=1
  137. <if test="buyStartTime != null and buyStartTime != ''">
  138. AND too.buy_time <![CDATA[ >= ]]> #{buyStartTime}
  139. </if>
  140. <if test="buyEndTime != null and buyEndTime != ''">
  141. AND too.buy_time <![CDATA[ <= ]]> #{buyEndTime}
  142. </if>
  143. <if test="tenantId != null and tenantId != ''">
  144. AND too.tenant_id = #{tenantId}
  145. </if>
  146. </select>
  147. <select id="getMonthFinishAllSeller" parameterType="com.zhongzheng.modules.top.financial.bo.TopDivideOrderQueryBo" resultType="com.zhongzheng.modules.top.financial.vo.TopCreateUserVo">
  148. SELECT
  149. v.create_no,
  150. v.create_username,
  151. v.tenant_id
  152. FROM
  153. v_top_order v
  154. WHERE
  155. 1 = 1
  156. AND v.finish_status = 1
  157. <if test="divideModel != null and divideModel != ''">
  158. AND v.divide_model = #{divideModel}
  159. </if>
  160. <if test="accomplishStartTime != null and accomplishStartTime != ''">
  161. AND v.accomplish_time BETWEEN #{accomplishStartTime} and #{accomplishEndTime}
  162. </if>
  163. <if test="tenantId != null and tenantId != ''">
  164. AND v.tenant_id = #{tenantId}
  165. </if>
  166. <if test="createNo != null and createNo != ''">
  167. AND v.create_no = #{createNo}
  168. </if>
  169. GROUP BY v.create_no,v.create_username,v.tenant_id
  170. </select>
  171. <select id="getByOrderSn" parameterType="com.zhongzheng.modules.top.financial.bo.TopDivideOrderQueryBo" resultType="com.zhongzheng.modules.top.financial.vo.TopDivideOrderVo">
  172. SELECT
  173. tdo.*
  174. FROM
  175. top_divide_order tdo
  176. LEFT JOIN top_divide_log dl on tdo.divide_log_id = dl.id
  177. WHERE
  178. 1 = 1
  179. AND tdo.order_type = 1
  180. <if test="divideType != null and divideType != ''">
  181. AND dl.divide_type = #{divideType}
  182. </if>
  183. <if test="orderSn != null and orderSn != ''">
  184. AND tdo.order_sn = #{orderSn}
  185. </if>
  186. LIMIT 1
  187. </select>
  188. <update id="updateCheckStatusById" parameterType="com.zhongzheng.modules.top.order.domain.TopOrderBankPay" >
  189. UPDATE top_divide_order tdo
  190. LEFT JOIN top_divide_log dl ON tdo.divide_log_id = dl.id
  191. LEFT JOIN top_old_order_check_log cl ON ( dl.divide_type + 1 ) = cl.check_from
  192. AND cl.check_sign = 1
  193. AND tdo.order_sn = cl.order_sn
  194. <set>
  195. cl.check_status = 3
  196. </set>
  197. where
  198. tdo.order_type = 1
  199. AND tdo.divide_log_id = #{divideLogId}
  200. AND cl.check_status = 2
  201. </update>
  202. </mapper>