UserDistributeMapper.xml 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104
  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.cyksj.mapper.manage.distribute.UserDistributeMapper">
  4. <select id="count" resultType="java.lang.Integer">
  5. select count(*)
  6. from `user_distribute_shared` us
  7. inner join `order_don` od
  8. on od.user_id = us.user_id
  9. where us.shared_id = #{userId}
  10. and od.is_fixed_distribute is true
  11. and od.status not in ('close', 'noPayment')
  12. </select>
  13. <select id="countUserNum" resultType="java.lang.Integer">
  14. select count(distinct us.user_id)
  15. from `user_distribute_shared` us
  16. where us.shared_id = #{userId}
  17. </select>
  18. <select id="getHasPayOrdersBySharedId" resultType="java.math.BigDecimal">
  19. select ifnull(sum(od.money),0) from `user_distribute_shared` us left join `order_don` od on od.user_id =
  20. us.user_id
  21. where us.shared_id = #{userId}
  22. and is_fixed_distribute is true
  23. and od.status not in
  24. <foreach collection="noOrderStatus" item="item" open="(" separator="," close=")">
  25. #{item}
  26. </foreach>
  27. <if test="startTime != null and startTime != ''">
  28. and od.created_time >= #{startTime}
  29. </if>
  30. <if test="endTime != null and endTime != ''">
  31. and od.created_time &lt; #{endTime}
  32. </if>
  33. </select>
  34. <select id="countHasPayBySharedId" resultType="java.math.BigDecimal">
  35. select count(distinct od.user_id) from `user_distribute_shared` us left join `order_don` od on od.user_id =
  36. us.user_id
  37. where us.shared_id = #{userId}
  38. and is_fixed_distribute is true
  39. and od.status not in
  40. <foreach collection="noOrderStatus" item="item" open="(" separator="," close=")">
  41. #{item}
  42. </foreach>
  43. <if test="startTime != null and startTime != ''">
  44. and od.created_time >= #{startTime}
  45. </if>
  46. <if test="endTime != null and endTime != ''">
  47. and od.created_time &lt; #{endTime}
  48. </if>
  49. </select>
  50. <select id="selectSoldMaxGoods" resultType="java.lang.String">
  51. select title
  52. from goods_don
  53. where id = (select goods_id
  54. from (select user_id from user_distribute_shared where shared_id = #{userId}) s
  55. inner join order_don od
  56. on od.user_id = s.user_id
  57. where od.status not in ('close', 'noPayment', 'refund')
  58. and od.is_fixed_distribute = 1
  59. and od.relation_id != 0
  60. group by goods_id
  61. order by max(money) desc limit 1) limit 1
  62. </select>
  63. <select id="getApplyDetailByUserId" resultType="com.cyksj.model.views.UserDistributeViews">
  64. select ifnull(sum(da.money), 0) as gotMoney, cast(u.points / 10 as decimal(10, 2)) as availableMoney
  65. from (select id, points from user where id = #{userId} limit 1) u
  66. left join distribute_money_apply da on da.user_id = u.id and verify_status = 'success'
  67. group by u.id, u.points
  68. </select>
  69. <select id="getUserDistributeDetail" resultType="com.cyksj.model.entity.User">
  70. select u.* from (select * from user
  71. <where>
  72. <if test="loginPhone!=null and loginPhone != ''">
  73. login_phone = #{loginPhone}
  74. </if>
  75. <if test="email != null and email != ''">
  76. and email = #{email}
  77. </if>
  78. limit 1
  79. </where>
  80. )u inner join user_distribute ud on ud.user_id = u.id and ud.deleted is true
  81. </select>
  82. <select id="getDistributeGoodsRateByUidAndGid" resultType="java.lang.Integer">
  83. select udr.rate
  84. from (select shared_id from user_distribute_shared where user_id = #{userId} limit 1) us
  85. inner join user_distribute ud on ud.user_id = us.shared_id and ud.deleted is true
  86. inner join user_plat_distribute_rate udr
  87. on udr.distribute_id = ud.id
  88. where udr.goods_id = #{goodsId}
  89. </select>
  90. <select id="selectRelationBusiness" resultType="com.cyksj.model.entity.DistributeMoneyApply">
  91. select ud.business_id, cu.nickname as businessName
  92. from (select business_id from user_distribute where user_id = #{userId} and deleted is true limit 1) ud
  93. inner join cms_user cu on cu.id = ud.business_id
  94. </select>
  95. </mapper>