CartSellerMapper.xml 7.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185
  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.caimei365.order.mapper.CartSellerMapper">
  4. <select id="getSellerCartShops" resultType="com.caimei365.order.model.vo.CartShopVo">
  5. SELECT DISTINCT
  6. c.shopId,
  7. s.name AS shopName,
  8. s.logo AS shopLogo
  9. FROM bp_order_product_cart c
  10. LEFT JOIN shop s ON c.shopId = s.shopID
  11. WHERE c.serviceProviderId = #{serviceProviderId} AND c.clubId = #{clubId}
  12. GROUP BY c.shopId, c.id
  13. ORDER BY c.id DESC
  14. </select>
  15. <select id="getSellerCartProducts" resultType="com.caimei365.order.model.vo.CartItemVo">
  16. SELECT
  17. c.id,
  18. c.num AS number,
  19. c.productId,
  20. c.shopId,
  21. p.`name` AS `name`,
  22. p.mainImage AS image,
  23. p.productCode,
  24. p.price,
  25. p.price AS originalPrice,
  26. p.unit AS unit,
  27. p.stock AS stock,
  28. p.step AS step,
  29. p.minBuyNumber AS min,
  30. p.priceFlag,
  31. p.ladderPriceFlag AS ladderFlag,
  32. p.includedTax AS includedTax,
  33. p.invoiceType AS invoiceType,
  34. p.taxPoint AS taxRate,
  35. p.productCategory,
  36. p.validFlag AS validFlag,
  37. if(csp.id is not null,1,0) as svipProductFlag,
  38. csp.priceType as svipPriceType,
  39. csp.discount as svipDiscount,
  40. csp.discountPrice as svipDiscountPrice
  41. FROM bp_order_product_cart c
  42. LEFT JOIN product p ON c.productId = p.productID
  43. LEFT JOIN cm_svip_product csp ON p.productID = csp.productId
  44. WHERE c.serviceProviderId = #{serviceProviderId} AND c.clubId = #{clubId} AND c.shopID = #{shopId}
  45. ORDER BY c.id DESC
  46. </select>
  47. <select id="getSellerCartCount" resultType="java.lang.Integer">
  48. SELECT COUNT(*) FROM bp_order_product_cart
  49. WHERE serviceProviderId = #{serviceProviderId} AND clubId = #{clubId}
  50. </select>
  51. <select id="getSellerCart" resultType="com.caimei365.order.model.po.SellerCartPo">
  52. SELECT
  53. id, serviceProviderId, clubId, productId, num
  54. FROM bp_order_product_cart
  55. WHERE serviceProviderId = #{serviceProviderId} AND clubId = #{clubId} AND productId = #{productId}
  56. </select>
  57. <select id="getSellerCartById" resultType="com.caimei365.order.model.po.SellerCartPo">
  58. SELECT
  59. id, serviceProviderId, clubId, productId, num
  60. FROM bp_order_product_cart
  61. WHERE id = #{id}
  62. </select>
  63. <update id="updateSellerCart" parameterType="com.caimei365.order.model.po.SellerCartPo">
  64. UPDATE bp_order_product_cart
  65. set num = #{num}, addDate = #{addTime}
  66. WHERE id = #{id}
  67. </update>
  68. <insert id="insertSellerCart" keyColumn="id" keyProperty="id" parameterType="com.caimei365.order.model.po.SellerCartPo" useGeneratedKeys="true">
  69. INSERT INTO bp_order_product_cart (serviceProviderId, clubId, shopId, productId, num, addDate)
  70. VALUES (#{serviceProviderId}, #{clubId}, #{shopId}, #{productId}, #{num}, #{addTime})
  71. </insert>
  72. <delete id="deleteSellerCartByIds">
  73. DELETE FROM bp_order_product_cart
  74. WHERE serviceProviderId = #{serviceProviderId}
  75. AND id in
  76. <foreach collection="cartIds" open="(" separator="," close=")" item="id">
  77. #{id}
  78. </foreach>
  79. </delete>
  80. <delete id="deleteSellerCartByProductIds">
  81. DELETE FROM bp_order_product_cart
  82. WHERE serviceProviderId = #{serviceProviderId}
  83. AND clubId = #{clubId}
  84. AND productId in
  85. <foreach collection="productIds" open="(" separator="," close=")" item="productId">
  86. #{productId}
  87. </foreach>
  88. </delete>
  89. <select id="getCartShopsByProductIds" resultType="com.caimei365.order.model.vo.CartShopVo">
  90. SELECT DISTINCT
  91. c.shopId,
  92. s.name AS shopName,
  93. s.logo AS shopLogo
  94. FROM bp_order_product_cart c
  95. LEFT JOIN shop s ON c.shopId = s.shopID
  96. WHERE c.serviceProviderId = #{serviceProviderId} AND c.clubId = #{clubId}
  97. AND c.productID in
  98. <foreach collection="productIds" open="(" separator="," close=")" item="productId">
  99. #{productId}
  100. </foreach>
  101. GROUP BY c.shopId, c.id
  102. ORDER BY c.id DESC
  103. </select>
  104. <select id="getCartProductsByProductIds" resultType="com.caimei365.order.model.vo.CartItemVo">
  105. SELECT
  106. c.id,
  107. c.num AS number,
  108. c.productId,
  109. c.shopId,
  110. p.`name` AS `name`,
  111. p.mainImage AS image,
  112. p.productCode,
  113. p.price,
  114. p.price AS originalPrice,
  115. p.unit AS unit,
  116. p.stock AS stock,
  117. p.step AS step,
  118. p.minBuyNumber AS min,
  119. p.priceFlag,
  120. p.ladderPriceFlag AS ladderFlag,
  121. p.includedTax AS includedTax,
  122. p.invoiceType AS invoiceType,
  123. p.taxPoint AS taxRate,
  124. p.productCategory,
  125. p.validFlag AS validFlag,
  126. if(csp.id is not null,1,0) as svipProductFlag,
  127. csp.priceType as svipPriceType,
  128. csp.discount as svipDiscount,
  129. csp.discountPrice as svipDiscountPrice
  130. FROM bp_order_product_cart c
  131. LEFT JOIN product p ON c.productId = p.productID
  132. LEFT JOIN cm_svip_product csp ON p.productID = csp.productId
  133. WHERE c.serviceProviderId = #{serviceProviderId} AND c.clubId = #{clubId} AND c.shopID = #{shopId}
  134. AND p.productID in
  135. <foreach collection="productIds" open="(" separator="," close=")" item="productId">
  136. #{productId}
  137. </foreach>
  138. ORDER BY c.id DESC
  139. </select>
  140. <select id="getSecondByProductId" resultType="com.caimei365.order.model.vo.CartItemVo">
  141. SELECT
  142. p.productId,
  143. p.shopId,
  144. p.`name` AS `name`,
  145. p.mainImage AS image,
  146. p.productCode,
  147. p.price,
  148. cshd.originalPrice AS originalPrice,
  149. p.unit AS unit,
  150. p.priceFlag,
  151. p.ladderPriceFlag AS ladderFlag,
  152. p.includedTax AS includedTax,
  153. p.invoiceType AS invoiceType,
  154. p.taxPoint AS taxRate,
  155. p.productCategory,
  156. p.validFlag AS validFlag
  157. FROM product p
  158. LEFT JOIN cm_second_hand_detail cshd ON p.productID = cshd.productID
  159. WHERE p.productCategory = 2
  160. AND p.productID = #{productId}
  161. LIMIT 1
  162. </select>
  163. <select id="getOrderUserIdByOrderId" resultType="java.lang.Integer">
  164. SELECT userID FROM cm_order
  165. WHERE orderID = #{orderId} AND delFlag = '0'
  166. </select>
  167. <select id="getOrderClubIdByOrderId" resultType="java.lang.Integer">
  168. SELECT clubID FROM cm_order
  169. WHERE orderID = #{orderId} AND delFlag = '0'
  170. </select>
  171. <select id="getOrderProductNum" resultType="com.caimei365.order.model.vo.CartItemVo">
  172. SELECT
  173. op.ProductID AS productId,
  174. op.num AS number,
  175. p.minBuyNumber AS min,
  176. p.`name` AS `name`,
  177. p.mainImage AS image,
  178. p.validFlag AS validFlag
  179. FROM cm_order_product op
  180. LEFT JOIN product p ON op.productID = p.productID
  181. WHERE orderID = #{orderID}
  182. GROUP BY op.ProductID
  183. </select>
  184. </mapper>