CartSellerMapper.xml 7.4 KB

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