DistributionActivityMapper.xml 6.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149
  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.distribution.mapper.DistributionActivityMapper">
  6. <select id="getGoodsList" parameterType="java.lang.Long" resultType="com.zhongzheng.modules.distribution.vo.DistributionGoodsListVo">
  7. SELECT
  8. da.distribution_id,
  9. da.`code` as distributionCode,
  10. g.goods_id,
  11. g.goods_name,
  12. g.goods_type,
  13. g.line_price,
  14. g.CODE,
  15. g.YEAR,
  16. g.cover_url,
  17. g.spec_template_id
  18. FROM
  19. distribution_activity da
  20. LEFT JOIN distribution_activity_goods dag ON da.distribution_id = dag.distribution_id
  21. LEFT JOIN goods g ON dag.goods_id = g.goods_id
  22. WHERE
  23. da.`status` = 1
  24. AND g.`status` = 1
  25. <if test = "distributionId != null and distributionId != ''" >
  26. AND da.distribution_id = #{distributionId}
  27. </if >
  28. </select>
  29. <select id="getSellerOrder" parameterType="com.zhongzheng.modules.distribution.bo.SellerOrderQueryBo" resultType="com.zhongzheng.modules.distribution.vo.SellerOrderVo">
  30. SELECT
  31. o.order_id,
  32. o.order_sn,
  33. o.order_status,
  34. og.pay_status,
  35. d.`name` as distributionName,
  36. u.realname as orderUserName,
  37. o.create_time as orderTime,
  38. og.goods_real_price as orderPrice,
  39. og.goods_id,
  40. d.distribution_id,
  41. d.`code` as distributionCode,
  42. dr.cash,
  43. dr.create_time as cashTime,
  44. dr.seller_id,
  45. dr.profit_type as cashType,
  46. dr.profit as cashRatio,
  47. dr.order_goods_id
  48. FROM
  49. distribution_rebate dr
  50. LEFT JOIN order_goods og ON dr.order_goods_id = og.order_goods_id
  51. LEFT JOIN distribution_seller ds ON dr.seller_id = ds.seller_id
  52. LEFT JOIN `order` o ON dr.order_sn = o.order_sn
  53. LEFT JOIN `user` u ON o.user_id = u.user_id
  54. LEFT JOIN distribution_activity d ON dr.distribution_code = d.`code`
  55. WHERE
  56. dr.`status` = 1
  57. <if test = "sellerId != null and sellerId != ''" >
  58. AND dr.seller_id = #{sellerId}
  59. </if >
  60. </select>
  61. <select id="getTenantSortNotice" parameterType="com.zhongzheng.modules.top.distribution.bo.TenantSortNoticeQueryBo" resultType="com.zhongzheng.modules.top.distribution.vo.TenantSortNoticeVo">
  62. SELECT
  63. t.tenant_id,
  64. t.tenant_name,
  65. SUM( dr.cash ) AS cashTotal,
  66. (SELECT COUNT(DISTINCT(dir.order_sn)) FROM distribution_rebate dir WHERE dir.tenant_id = dr.tenant_id AND dir.`status` = 1) AS orderNum,
  67. (SELECT COUNT(ds.seller_id) FROM distribution_seller ds WHERE ds.tenant_id = dr.tenant_id AND ds.`status` = 1 AND ds.register_from = 1) AS sellerNum,
  68. (SELECT COUNT(ds.seller_id) FROM distribution_seller ds WHERE ds.tenant_id = dr.tenant_id AND ds.`status` = 1 ) AS sellerNumAll
  69. FROM
  70. distribution_rebate dr
  71. LEFT JOIN sys_tenant t ON dr.tenant_id = t.tenant_id
  72. LEFT JOIN distribution_activity d ON dr.distribution_code = d.`code`
  73. LEFT JOIN `order` o ON dr.order_sn = o.order_sn
  74. WHERE
  75. dr.`status` = 1
  76. <if test = "distributionId != null and distributionId != ''" >
  77. AND d.distribution_id = #{distributionId}
  78. </if >
  79. <if test = "startTime != null and startTime != ''" >
  80. AND o.create_time <![CDATA[ >= ]]> #{startTime}
  81. </if >
  82. <if test = "endTime != null and endTime != ''" >
  83. AND o.create_time <![CDATA[ <= ]]> #{endTime}
  84. </if >
  85. GROUP BY
  86. dr.tenant_id
  87. <if test = "sortType == null or sortType == '' or sortType == 1" >
  88. ORDER BY cashTotal DESC
  89. </if >
  90. <if test = "sortType != null and sortType != '' and sortType == 2" >
  91. ORDER BY orderNum DESC
  92. </if >
  93. <if test = "sortType != null and sortType != '' and sortType == 3" >
  94. ORDER BY sellerNum DESC
  95. </if >
  96. </select>
  97. <select id="getOrgOrder" parameterType="com.zhongzheng.modules.top.distribution.bo.TenantOrderQueryBo" resultType="com.zhongzheng.modules.top.distribution.vo.TenantOrderVo">
  98. SELECT
  99. o.order_id,
  100. o.order_sn,
  101. o.order_status,
  102. og.pay_status,
  103. d.`name` as distributionName,
  104. d.distribution_id,
  105. d.`code` as distributionCode,
  106. u.realname as orderUserName,
  107. u.telphone,
  108. o.create_time as orderTime,
  109. og.goods_real_price as orderPrice,
  110. g.goods_id,
  111. g.goods_name,
  112. t.tenant_id,
  113. t.tenant_name,
  114. (SELECT SUM(cash) FROM distribution_rebate WHERE order_sn = og.order_sn GROUP BY order_sn) AS orderCash
  115. FROM
  116. (SELECT DISTINCT(dre.order_goods_id) FROM distribution_rebate dre
  117. <if test = "sellerName != null and sellerName != ''" >
  118. LEFT JOIN distribution_seller ds ON dre.seller_id = ds.seller_id WHERE ds.realname LIKE concat('%', #{sellerName}, '%')
  119. </if >
  120. ) dr
  121. LEFT JOIN order_goods og ON dr.order_goods_id = og.order_goods_id
  122. LEFT JOIN `order` o ON og.order_sn = o.order_sn
  123. LEFT JOIN `user` u ON o.user_id = u.user_id
  124. LEFT JOIN distribution_activity d ON og.distribution_code = d.`code`
  125. LEFT JOIN goods g ON og.goods_id = g.goods_id
  126. LEFT JOIN sys_tenant t ON og.tenant_id = t.tenant_id
  127. WHERE og.`status` = 1 AND og.tenant_id = 1
  128. <if test = "tenantId != null and tenantId != ''" >
  129. AND og.tenant_id = #{tenantId}
  130. </if >
  131. <if test = "startTime != null and startTime != ''" >
  132. AND o.create_time <![CDATA[ >= ]]> #{startTime}
  133. </if >
  134. <if test = "endTime != null and endTime != ''" >
  135. AND o.create_time <![CDATA[ <= ]]> #{endTime}
  136. </if >
  137. <if test = "orderSn != null and orderSn != ''" >
  138. AND og.`order` = #{orderSn}
  139. </if >
  140. <if test = "userName != null and userName != ''" >
  141. AND u.realname like concat('%', #{userName}, '%')
  142. </if >
  143. </select>
  144. </mapper>