BaseMapper.xml 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234
  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.BaseMapper">
  4. <insert id="insertUserInvoiceByUserId" parameterType="com.caimei365.order.model.vo.InvoiceVo">
  5. INSERT INTO cm_user_invoiceinfo (userId, invoiceTitle, corporationTaxNum, registeredAddress, registeredPhone, bankAccountNo, openBank)
  6. VALUES(#{userId}, #{invoiceTitle}, #{corporationTaxNum},#{registeredAddress}, #{registeredPhone},#{bankAccountNo}, #{openBank})
  7. </insert>
  8. <insert id="insertPurchasePrice" keyColumn="id" keyProperty="id" parameterType="com.caimei365.order.model.po.PurchasePricePo" useGeneratedKeys="true">
  9. INSERT INTO repeat_purchase_price (userId, clubId, orderId, productId, shopId, shopName,
  10. taxRate, currentPrice, createTime, updateTime, delFlag)
  11. VALUES (#{userId}, #{clubId}, #{orderId}, #{productId}, #{shopId}, #{shopName},
  12. #{taxRate}, #{currentPrice}, #{createTime}, #{updateTime}, #{delFlag})
  13. </insert>
  14. <insert id="insertPurchaseHistory" keyColumn="id" keyProperty="id" parameterType="com.caimei365.order.model.po.PurchaseHistoryPo" useGeneratedKeys="true">
  15. INSERT INTO repeat_purchase_price_history (userId, clubId, orderId, productId, price, currentCostPrice, createTime, delFlag)
  16. VALUES (#{userId}, #{clubId}, #{orderId}, #{productId}, #{price}, #{currentCostPrice}, #{createTime}, #{delFlag})
  17. </insert>
  18. <update id="updateUserInvoiceByUserId" parameterType="com.caimei365.order.model.vo.InvoiceVo">
  19. UPDATE cm_user_invoiceinfo
  20. SET
  21. invoiceTitle = #{invoiceTitle},
  22. corporationTaxNum = #{corporationTaxNum},
  23. registeredAddress = #{registeredAddress},
  24. registeredPhone = #{registeredPhone},
  25. bankAccountNo = #{bankAccountNo},
  26. openBank = #{openBank}
  27. WHERE userId = #{userId}
  28. </update>
  29. <update id="updatePurchasePrice">
  30. UPDATE repeat_purchase_price SET
  31. currentPrice = #{currentPrice}, taxRate = #{taxRate}, updateTime = #{updateTime}
  32. WHERE id = #{id}
  33. </update>
  34. <select id="getUserIdByClubId" resultType="java.lang.Integer">
  35. select userID from user where clubID = #{clubId}
  36. </select>
  37. <select id="getIdentityByUserId" resultType="java.lang.Integer">
  38. select userIdentity from user where userID = #{userId}
  39. </select>
  40. <select id="getUserNameByUserId" resultType="java.lang.String">
  41. select userName from user where userID = #{userId}
  42. </select>
  43. <select id="getLadderPriceList" resultType="com.caimei365.order.model.vo.LadderPriceVo">
  44. select
  45. id, productId, ladderNum, buyNum, buyPrice
  46. from product_ladder_price
  47. where productId = #{productId} and userType = 3 and delFlag = 0
  48. order by ladderNum asc
  49. </select>
  50. <select id="getRepurchasePrice" resultType="java.lang.Double">
  51. select
  52. r.currentPrice
  53. from repeat_purchase_price r
  54. left join product p on p.productID = r.productId
  55. where r.productId = #{productId} and r.userId = #{userId}
  56. and ((p.costCheckFlag=1 and r.currentPrice <![CDATA[ >= ]]> p.costPrice) or p.costCheckFlag=2)
  57. and p.price1 <![CDATA[ >= ]]> r.currentPrice
  58. and r.delFlag = 0
  59. </select>
  60. <select id="getPromotionByShopId" resultType="com.caimei365.order.model.vo.PromotionsVo">
  61. SELECT
  62. pr.id,
  63. pr.name,
  64. pr.description,
  65. pr.type,
  66. pr.mode,
  67. pr.touchPrice,
  68. pr.reducedPrice,
  69. pr.beginTime,
  70. pr.endTime,
  71. pr.status,
  72. prp.productId,
  73. prp.supplierId AS shopId
  74. FROM cm_promotions pr
  75. LEFT JOIN cm_promotions_product prp ON pr.id = prp.promotionsId
  76. WHERE prp.supplierId = #{shopId} and pr.delFlag=0 and pr.type=3
  77. AND (pr.status = 1 OR ( pr.status = 2 AND (NOW() BETWEEN pr.beginTime AND pr.endTime)))
  78. ORDER BY pr.type DESC LIMIT 1
  79. </select>
  80. <select id="getPromotionByProductId" resultType="com.caimei365.order.model.vo.PromotionsVo">
  81. SELECT
  82. pr.id,
  83. pr.name,
  84. pr.description,
  85. pr.type,
  86. pr.mode,
  87. pr.touchPrice,
  88. pr.reducedPrice,
  89. pr.beginTime,
  90. pr.endTime,
  91. pr.status,
  92. prp.productId,
  93. prp.supplierId AS shopId
  94. FROM cm_promotions pr
  95. LEFT JOIN cm_promotions_product prp ON pr.id = prp.promotionsId
  96. WHERE prp.productId = #{productId} and pr.delFlag=0 and pr.type in (1,2)
  97. AND (pr.status = 1 OR ( pr.status = 2 AND (NOW() BETWEEN pr.beginTime AND pr.endTime)))
  98. ORDER BY pr.type DESC LIMIT 1
  99. </select>
  100. <select id="getPromotionGifts" resultType="com.caimei365.order.model.vo.CartItemVo">
  101. SELECT
  102. cpg.id AS id,
  103. p.productID AS productId,
  104. p.shopID AS shopId,
  105. p.`name` AS `name`,
  106. p.mainImage AS image,
  107. cpg.number AS number,
  108. 0 AS price,
  109. p.price1 AS originalPrice,
  110. p.unit AS unit,
  111. p.stock AS stock,
  112. p.validFlag AS validFlag
  113. FROM cm_promotions_gift cpg
  114. LEFT JOIN product p ON cpg.productId = p.productID
  115. WHERE cpg.promotionsId = #{promotionsId}
  116. ORDER BY cpg.id DESC
  117. </select>
  118. <select id="getPromotionGiftsShop" resultType="com.caimei365.order.model.vo.CartShopVo">
  119. SELECT
  120. s.shopID AS shopId,
  121. s.name AS shopName,
  122. s.logo AS shopLogo
  123. FROM shop s
  124. LEFT JOIN product p ON p.shopID = s.shopID
  125. WHERE p.productId = #{productId}
  126. LIMIT 1
  127. </select>
  128. <select id="getUserInvoice" resultType="com.caimei365.order.model.vo.InvoiceVo">
  129. SELECT
  130. id,
  131. userId,
  132. invoiceTitle,
  133. corporationTaxNum,
  134. registeredAddress,
  135. registeredPhone,
  136. bankAccountNo,
  137. openBank
  138. FROM cm_user_invoiceinfo
  139. WHERE userId = #{userId}
  140. LIMIT 1
  141. </select>
  142. <select id="getUserMoney" resultType="java.lang.Double">
  143. SELECT userMoney FROM user WHERE userID = #{userId}
  144. </select>
  145. <select id="getAbleUserMoney" resultType="java.lang.Double">
  146. SELECT ableUserMoney FROM user WHERE userID = #{userId}
  147. </select>
  148. <select id="getUserBeans" resultType="java.lang.Integer">
  149. SELECT userBeans FROM user WHERE userID = #{userId}
  150. </select>
  151. <select id="getPostageFlagList" resultType="com.caimei365.order.model.vo.ProductPostageVo">
  152. SELECT
  153. productID AS productId,
  154. postageFlag AS postageFlag,
  155. commodityType
  156. FROM product
  157. WHERE validFlag='2' AND productID in
  158. <foreach collection="productIds" open="(" separator="," close=")" item="productId">
  159. #{productId}
  160. </foreach>
  161. </select>
  162. <select id="countUserOrder" resultType="java.lang.Integer">
  163. SELECT COUNT(*) FROM cm_order WHERE userID = #{userId} AND delFlag=0 AND STATUS != 6
  164. </select>
  165. <select id="getProvinceIdAndCityId" resultType="com.caimei365.order.model.vo.AddressVo">
  166. SELECT provinceID AS provinceId, cityID AS cityId FROM city
  167. WHERE cityID =(SELECT cityID from town where townID = #{townId})
  168. </select>
  169. <select id="getTownIdByAddressId" resultType="java.lang.Integer">
  170. SELECT townID FROM address WHERE addressID = #{addressId}
  171. </select>
  172. <select id="getPurchasePricePo" resultType="com.caimei365.order.model.po.PurchasePricePo">
  173. SELECT
  174. id,
  175. userId,
  176. clubId,
  177. orderId,
  178. productId,
  179. shopId,
  180. shopName,
  181. taxRate,
  182. currentPrice,
  183. createTime
  184. FROM repeat_purchase_price
  185. WHERE userId = #{userId} AND productId = #{productId} AND delFlag='0'
  186. </select>
  187. <select id="getBindMobileByUserId" resultType="java.lang.String">
  188. SELECT bindMobile FROM user WHERE userID = #{userId}
  189. </select>
  190. <insert id="insertDiscernReceipt" keyColumn="id" keyProperty="id" parameterType="com.caimei365.order.model.po.DiscernReceiptPo" useGeneratedKeys="true">
  191. INSERT INTO cm_discern_receipt (payWay, payType, receiptType, receiptStatus, receiptAmount, confirmType,
  192. receiptDate, confirmDate, reviewDate, updateDate, delFlag)
  193. VALUES (#{payWay}, #{payType}, #{receiptType}, #{receiptStatus}, #{receiptAmount}, #{confirmType},
  194. #{receiptDate}, #{confirmDate}, #{reviewDate}, #{updateDate}, #{delFlag})
  195. </insert>
  196. <insert id="insertOrderReceiptRelation" keyColumn="id" keyProperty="id" parameterType="com.caimei365.order.model.po.DiscernReceiptPo" useGeneratedKeys="true">
  197. INSERT INTO cm_receipt_order_relation (relationType, receiptId, associateAmount, orderId, delFlag)
  198. VALUES (#{relationType}, #{receiptId}, #{associateAmount}, #{orderId}, #{delFlag})
  199. </insert>
  200. <insert id="insertBeansHistory" parameterType="com.caimei365.order.model.po.UserBeansHistoryPo">
  201. INSERT INTO user_beans_history (userId, type, beansType, orderId, num, pushStatus, addTime, delFlag)
  202. VALUES (#{userId}, #{type}, #{beansType}, #{orderId}, #{num}, #{pushStatus}, #{addTime}, #{delFlag})
  203. </insert>
  204. <update id="updateUserBeans">
  205. UPDATE USER SET userBeans = #{userBeans}
  206. WHERE userID = #{userId}
  207. </update>
  208. <insert id="insertBalanceRecord" parameterType="com.caimei365.order.model.po.BalanceRecordPo">
  209. INSERT INTO cm_user_balance_record (userId, type, balanceType, addDate, amount, orderId, remark, delFlag)
  210. VALUES (#{userId}, #{type}, #{balanceType}, #{addDate}, #{amount}, #{orderId}, #{remark}, #{delFlag})
  211. </insert>
  212. <!-- <select id="getAddressDetailById" resultType="com.caimei365.order.model.vo.AddressVo">-->
  213. <!-- SELECT-->
  214. <!-- a.addressID AS addressId,-->
  215. <!-- a.userID AS userId,-->
  216. <!-- a.shouHuoRen AS name,-->
  217. <!-- p.provinceID AS provinceId,-->
  218. <!-- p.name AS province,-->
  219. <!-- c.cityID AS cityId,-->
  220. <!-- c.name AS city,-->
  221. <!-- a.townID AS townId,-->
  222. <!-- t.name AS town,-->
  223. <!-- a.address,-->
  224. <!-- a.mobile,-->
  225. <!-- a.defaultFlag-->
  226. <!-- FROM address a-->
  227. <!-- LEFT JOIN town t ON t.townID = a.townID-->
  228. <!-- LEFT JOIN city c ON c.cityID = t.cityID-->
  229. <!-- LEFT JOIN province p ON p.provinceID = c.provinceID-->
  230. <!-- WHERE a.addressID = #{addressId}-->
  231. <!-- </select>-->
  232. </mapper>