adminOrderMapper.xml 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517
  1. <?xml version="1.0" encoding="UTF-8" ?>
  2. <!DOCTYPE mapper
  3. PUBLIC
  4. "-//mybatis.org//DTD Mapper 3.0//EN"
  5. "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  6. <!-- 命名,每一个映射对象不一样
  7. namespace:必须与对应的接口全类名一致
  8. -->
  9. <mapper namespace="com.iamberry.wechat.service.mapper.AdminOrderMapper">
  10. <!-- 后台订单返利信息查询 -->
  11. <select id="selectOrderRebackByOrderId" parameterType="String" resultType="OrderRebackMoney">
  12. SELECT ( SELECT place_openid FROM tb_iamberry_place_info b WHERE b.place_id = a.logs_place_id
  13. ) name ,
  14. (SELECT place_username FROM tb_iamberry_place_info b WHERE b.place_id = a.logs_place_id
  15. ) account ,
  16. (
  17. SELECT role_name FROM tb_iamberry_place_role WHERE role_id = (
  18. SELECT Place_role_id FROM tb_iamberry_place_info b WHERE b.place_id = a.logs_place_id)
  19. ) role,
  20. logs_num money,logs_create_date TIME,logs_introduction remark FROM tb_iamberry_place_logs a WHERE logs_introduction LIKE CONCAT('%',#{orderId},'%')
  21. UNION ALL
  22. SELECT
  23. (SELECT b.user_openid
  24. FROM tb_iamberry_user_userinfo b WHERE b.user_openid = a.cash_logs_openid
  25. ) name,(SELECT b.user_nickname
  26. FROM tb_iamberry_user_userinfo b WHERE b.user_openid = a.cash_logs_openid
  27. ) account
  28. ,'微代理' role
  29. ,cash_logs_num money,cash_logs_create_date TIME,cash_logs_introduction remark FROM tb_iamberry_user_cash_logs a WHERE cash_logs_orderid =#{orderId}
  30. AND cash_logs_type = 1
  31. AND cash_logs_res_type = 4
  32. </select>
  33. <!-- 后台订单列表查询 -->
  34. <select id="selectShopOrder" parameterType="Order" resultType="Order">
  35. SELECT O.SALES_ORDERID salesOrderid, O.SALES_ADDRESS_NAME salesAddressName,
  36. U.USER_NICKNAME userNickname, O.SALES_ADDRESS_TEL salesAddressTel,
  37. O.SALES_AMOUNT salesAmount, O.SALES_RATE_AMOUNT salesRateAmount,
  38. O.SALES_INTEGRAL_NUM salesIntegralNum, O.SALES_YET_AMOUNT salesYetAmount,
  39. O.SALES_STATUS salesStatus, O.SALES_CREATE_DATE salesCreateDate,
  40. O.SALES_POST_NUM salesPostNum,O.SALES_POST_FIRM salesPostFirm,
  41. O.SALES_ADMIN_REMARK salesAdminRemark, O.SALES_COLOR_TYPE salesColorType,
  42. O.SALES_USER_REMARK salesUserRemark,
  43. P.PLACE_NAME storesName,
  44. PP.PLACE_NAME vipName,
  45. PP.PLACE_ROLE_ID vipRole,
  46. PP.PLACE_OPENID placeOpenID,
  47. U.USER_RES_TYPE userResource,
  48. (SELECT IFNULL(SUM(reback_money),0) FROM tb_iamberry_reback WHERE reback_orderid = O.SALES_ORDERID and Reback_status = 2) placeId,
  49. O.sales_is_spell_order salesIsSpellOrder,
  50. O.sales_spell_order_id salesSpellOrderId
  51. FROM
  52. TB_IAMBERRY_SHOP_SALES_ORDER O
  53. LEFT JOIN
  54. TB_IAMBERRY_USER_USERINFO U
  55. ON
  56. O.SALES_OPENID = U.USER_OPENID
  57. <!-- 根据用户信息中的dealers查询对应的关系 -->
  58. LEFT JOIN
  59. TB_IAMBERRY_DEALERS D
  60. ON
  61. U.USER_DEALERS = D.DEALER_ID
  62. <!-- 查询用户关系对应的商户 -->
  63. LEFT JOIN
  64. TB_IAMBERRY_PLACE_INFO P
  65. ON
  66. D.DEALER_ID = P.PLACE_PIDS
  67. <!-- 查询商户的上级,也就是门店 -->
  68. LEFT JOIN
  69. TB_IAMBERRY_PLACE_INFO PP
  70. ON
  71. P.PLACE_PID = PP.PLACE_ID
  72. WHERE
  73. O.SALES_ORDER_TYPE = 1
  74. <if test="salesStatus != null and salesStatus != -1">
  75. AND O.SALES_STATUS = #{salesStatus}
  76. </if>
  77. <if test="salesOrderid != null and salesOrderid!=''">
  78. AND O.SALES_ORDERID = #{salesOrderid}
  79. </if>
  80. ORDER BY O.SALES_CREATE_DATE DESC
  81. LIMIT ${page.recordBegin},${page.pageSize}
  82. </select>
  83. <!-- 根据订单号,获取订单所属人 -->
  84. <select id="selectSalesOpenIdByOrderId" parameterType="String" resultType="String">
  85. SELECT
  86. SALES_OPENID
  87. FROM
  88. TB_IAMBERRY_SHOP_SALES_ORDER
  89. WHERE
  90. SALES_ORDERID = #{orderId}
  91. LIMIT
  92. 0, 1
  93. </select>
  94. <select id="selectShopOrderByOrderId" parameterType="Order" resultType="Order">
  95. SELECT O.SALES_ORDERID salesOrderid, O.SALES_ADDRESS_NAME salesAddressName,
  96. U.USER_NICKNAME userNickname, O.SALES_ADDRESS_TEL salesAddressTel,
  97. O.SALES_AMOUNT salesAmount, O.SALES_RATE_AMOUNT salesRateAmount,
  98. O.SALES_INTEGRAL_NUM salesIntegralNum, O.SALES_YET_AMOUNT salesYetAmount,
  99. O.SALES_STATUS salesStatus, O.SALES_CREATE_DATE salesCreateDate,
  100. O.SALES_ADMIN_REMARK salesAdminRemark, O.SALES_COLOR_TYPE salesColorType,
  101. o.sales_post_num salesPostNum,o.sales_post_firm salesPostFirm,
  102. O.SALES_USER_REMARK salesUserRemark
  103. FROM
  104. TB_IAMBERRY_SHOP_SALES_ORDER O LEFT JOIN TB_IAMBERRY_USER_USERINFO U
  105. ON O.SALES_OPENID = U.USER_OPENID
  106. <where>
  107. <if test="salesStatus != null and salesStatus != -1">
  108. O.SALES_STATUS = #{salesStatus}
  109. </if>
  110. <if test="salesOrderid != null and salesOrderid!=''">
  111. AND O.SALES_ORDERID LIKE CONCAT('%',#{salesOrderid},'%')
  112. </if>
  113. <if test="salesAddressName != null and salesAddressName != ''">
  114. AND O.SALES_ADDRESS_NAME LIKE CONCAT('%',#{salesAddressName},'%')
  115. </if>
  116. <if test="salesAddressTel != null and salesAddressTel != ''">
  117. AND O.SALES_ADDRESS_TEL LIKE CONCAT('%',#{salesAddressTel},'%')
  118. </if>
  119. <if test="salesAddressInfo != null and salesAddressInfo != ''">
  120. AND O.SALES_ADDRESS_INFO LIKE CONCAT('%',#{salesAddressInfo},'%')
  121. </if>
  122. <if test="beginDate != null">
  123. <![CDATA[AND DATE_FORMAT(O.SALES_CREATE_DATE, '%Y-%m-%d') >= ]]>DATE_FORMAT(#{beginDate},'%Y-%m-%d')
  124. </if>
  125. <if test="endDate != null">
  126. <![CDATA[AND DATE_FORMAT(O.SALES_CREATE_DATE, '%Y-%m-%d') <= ]]>DATE_FORMAT(#{endDate},'%Y-%m-%d')
  127. </if>
  128. </where>
  129. ORDER BY O.SALES_CREATE_DATE DESC
  130. LIMIT ${page.recordBegin},${page.pageSize}
  131. </select>
  132. <!-- 根据条件获取查询数量 -->
  133. <select id="selectShopOrderCount" parameterType="Order" resultType="int">
  134. SELECT
  135. COUNT(O.SALES_ORDERID)
  136. FROM
  137. TB_IAMBERRY_SHOP_SALES_ORDER O LEFT JOIN TB_IAMBERRY_USER_USERINFO U
  138. ON O.SALES_OPENID = U.USER_OPENID
  139. WHERE
  140. O.SALES_ORDER_TYPE = 1
  141. <if test="salesStatus != null and salesStatus != -1">
  142. AND O.SALES_STATUS = #{salesStatus}
  143. </if>
  144. <if test="salesOrderid != null and salesOrderid!=''">
  145. AND O.SALES_ORDERID LIKE CONCAT('%',#{salesOrderid},'%')
  146. </if>
  147. <if test="salesAddressName != null and salesAddressName != ''">
  148. AND O.SALES_ADDRESS_NAME LIKE CONCAT('%',#{salesAddressName},'%')
  149. </if>
  150. <if test="salesAddressTel != null and salesAddressTel != ''">
  151. AND O.SALES_ADDRESS_TEL LIKE CONCAT('%',#{salesAddressTel},'%')
  152. </if>
  153. <if test="salesAddressInfo != null and salesAddressInfo != ''">
  154. AND O.SALES_ADDRESS_INFO LIKE CONCAT('%',#{salesAddressInfo},'%')
  155. </if>
  156. <if test="beginDate != null">
  157. <![CDATA[AND DATE_FORMAT(O.SALES_CREATE_DATE, '%Y-%m-%d') >= ]]>DATE_FORMAT(#{beginDate},'%Y-%m-%d')
  158. </if>
  159. <if test="endDate != null">
  160. <![CDATA[AND DATE_FORMAT(O.SALES_CREATE_DATE, '%Y-%m-%d') <= ]]>DATE_FORMAT(#{endDate},'%Y-%m-%d')
  161. </if>
  162. </select>
  163. <!-- 根据orderId查询订单信息 -->
  164. <select id="getShopOrderByOrderId" parameterType="String" resultType="Order">
  165. SELECT O.SALES_ORDERID salesOrderid, U.USER_NICKNAME userNickname, O.SALES_STATUS salesStatus,
  166. O.SALES_YET_AMOUNT salesYetAmount, O.SALES_INTEGRAL_NUM salesIntegralNum, O.SALES_RATE_AMOUNT salesRateAmount,
  167. O.SALES_POST_FIRM salesPostFirm, O.SALES_POST_NUM salesPostNum, O.SALES_CREATE_DATE salesCreateDate,
  168. O.SALES_ADDRESS_POSTNUM salesAddressPostnum, O.SALES_REWARD_INTEGRAL_NUM salesRewardIntegralNum,
  169. O.SALES_ADDRESS_NAME salesAddressName, O.SALES_ADDRESS_TEL salesAddressTel, O.SALES_SEND_DATE salesSendDate,
  170. O.SALES_USER_REMARK salesUserRemark, O.SALES_COLOR_TYPE salesColorType, O.SALES_ADMIN_REMARK salesAdminRemark,
  171. O.SALES_RETURN_DES salesReturnDes, O.SALES_ADDRESS_INFO salesAddressInfo, O.SALES_RETURN_DATE salesReturnDate,
  172. O.SALES_AMOUNT salesAmount, O.SALES_TRANSACTION_DATE salesTransactionDate, O.SALES_OPENID salesOpenid,
  173. O.SALES_COUPON_RECEIVE_ID couponId, O.SALES_BALANCE_AMOUNT balancePayAmount,O.sales_is_spell_order salesIsSpellOrder,
  174. O.sales_spell_order_id salesSpellOrderId
  175. FROM
  176. TB_IAMBERRY_SHOP_SALES_ORDER O LEFT JOIN TB_IAMBERRY_USER_USERINFO U
  177. ON O.SALES_OPENID = U.USER_OPENID
  178. WHERE
  179. O.SALES_ORDERID = #{0}
  180. AND
  181. O.SALES_ORDER_TYPE = 1
  182. </select>
  183. <!-- 根据orderId获取订单项数据 -->
  184. <select id="getShopOrderItemByOrderId" parameterType="String" resultType="OrderItem">
  185. SELECT I.ITEM_PRODUCT_NAME itemProductName, I.ITEM_PRODUCT_PIC itemProductPic, I.ITEM_PRODUCT_PRICE itemProductPrice,
  186. I.ITEM_PRODUCT_DISCOUNT itemProductDiscount, I.ITEM_NUM itemNum, I.ITEM_TOTAL itemTotal, C.COLOR_NAME productColor,
  187. C.COLOR_69CODE produectRemark
  188. FROM
  189. TB_IAMBERRY_SHOP_ORDER_ITEM I LEFT JOIN TB_IAMBERRY_PRODUCT_INFO P
  190. ON I.ITEM_PRODUCT_ID = P.PRODUCT_ID
  191. LEFT JOIN TB_IAMBERRY_PRODUCT_COLOR C ON I.ITEM_COLOR_ID = C.COLOR_ID
  192. WHERE
  193. ITEM_SALES_ORDERID = #{0}
  194. ORDER BY ITEM_ID DESC
  195. </select>
  196. <!-- 根据orderId查询订单状态 -->
  197. <select id="selectOrderStatusByOrderId" parameterType="String" resultType="Order">
  198. SELECT
  199. SALES_STATUS salesStatus, SALES_PROXY_REWARD salesProxyReward,
  200. SALES_POST_FIRM salesPostFirm, SALES_POST_NUM salesPostNum ,
  201. sales_openid salesOpenid
  202. FROM
  203. TB_IAMBERRY_SHOP_SALES_ORDER
  204. WHERE
  205. SALES_ORDERID = #{salesOrderid}
  206. </select>
  207. <!-- 根据orderId修改订单状态 -->
  208. <update id="updateOrderStatusByOrderId" parameterType="Order">
  209. UPDATE
  210. TB_IAMBERRY_SHOP_SALES_ORDER
  211. SET
  212. <if test="salesChangeOrderid != null and salesChangeOrderid != ''">
  213. SALES_CHANGE_ORDERID = #{salesChangeOrderid},
  214. </if>
  215. SALES_STATUS = #{salesStatus},
  216. sales_exchange_des = #{salesExchangeDes}
  217. WHERE
  218. SALES_ORDERID = #{salesOrderid}
  219. AND
  220. SALES_STATUS = #{oldStatus}
  221. </update>
  222. <!-- 根据orderId修改订单状态 -->
  223. <update id="updateOrderStatusByOrderIdAndToStatus" parameterType="Order">
  224. UPDATE
  225. TB_IAMBERRY_SHOP_SALES_ORDER
  226. SET
  227. SALES_STATUS = #{salesStatus}
  228. WHERE
  229. SALES_ORDERID = #{salesOrderid} AND SALES_STATUS = #{salesOpenid}
  230. </update>
  231. <!-- 根据orderid添加发货信息并修改状态 -->
  232. <update id="deliverOrderByOrderId" parameterType="Order">
  233. UPDATE
  234. TB_IAMBERRY_SHOP_SALES_ORDER
  235. SET
  236. SALES_STATUS = #{salesStatus},
  237. SALES_POST_NUM = #{salesPostNum},
  238. SALES_POST_FIRM = #{salesPostFirm},
  239. SALES_SEND_DATE = NOW()
  240. WHERE
  241. SALES_ORDERID = #{salesOrderid}
  242. </update>
  243. <!-- 根据orderid添加发货信息并修改状态 -->
  244. <update id="updateOrderDeliver" parameterType="Order">
  245. UPDATE
  246. TB_IAMBERRY_SHOP_SALES_ORDER
  247. SET
  248. SALES_STATUS = #{salesStatus},
  249. SALES_POST_NUM = #{salesPostNum},
  250. SALES_POST_FIRM = #{salesPostFirm},
  251. SALES_SEND_DATE = NOW()
  252. WHERE
  253. SALES_ORDERID = #{salesOrderid}
  254. AND
  255. SALES_STATUS = #{oldStatus}
  256. </update>
  257. <!-- 修改订单的备注信息 -->
  258. <update id="updateOrderAdminRemarkByOrderId" parameterType="Order" >
  259. UPDATE
  260. TB_IAMBERRY_SHOP_SALES_ORDER
  261. <set>
  262. <if test="salesColorType != null and salesColorType != ''">
  263. SALES_COLOR_TYPE = #{salesColorType},
  264. </if>
  265. <if test="salesAdminRemark != null and salesAdminRemark != ''">
  266. SALES_ADMIN_REMARK = #{salesAdminRemark}
  267. </if>
  268. </set>
  269. WHERE
  270. SALES_ORDERID = #{salesOrderid}
  271. </update>
  272. <!-- 查询订单中没有奖励积分的数据 -->
  273. <select id="selectOrderByIntegral" resultType="Order" resultMap="orderMap">
  274. SELECT
  275. O.SALES_ORDERID,
  276. O.SALES_OPENID,
  277. O.SALES_AMOUNT,
  278. O.SALES_REWARD_INTEGRAL_NUM
  279. FROM
  280. TB_IAMBERRY_SHOP_SALES_ORDER O
  281. WHERE
  282. O.SALES_PROXY_REWARD = 1
  283. AND
  284. <![CDATA[ TIMESTAMPDIFF(SECOND,O.SALES_SEND_DATE,NOW()) >= #{deadline} ]]>
  285. AND
  286. O.SALES_STATUS = 5
  287. ORDER BY O.SALES_SEND_DATE ASC
  288. LIMIT ${page.recordBegin},${page.pageSize}
  289. </select>
  290. <resultMap type="com.iamberry.wechat.core.entity.order.Order" id="orderMap">
  291. <id column="SALES_ORDERID" property="salesOrderid"/>
  292. <result column="SALES_OPENID" property="salesOpenid"/>
  293. <result column="SALES_AMOUNT" property="salesAmount"/>
  294. <result column="SALES_REWARD_INTEGRAL_NUM" property="salesRewardIntegralNum"/>
  295. <collection property="orderItemList" column="SALES_ORDERID" ofType="com.iamberry.wechat.core.entity.order.OrderItem" select="selectOrderItem"/>
  296. </resultMap>
  297. <!-- 查询订单的订单项 -->
  298. <select id="selectOrderItem" parameterType="String" resultType="com.iamberry.wechat.core.entity.order.OrderItem">
  299. SELECT I.ITEM_ID itemId,
  300. I.ITEM_SALES_ORDERID itemSalesOrderid, I.ITEM_PRODUCT_NAME itemProductName,
  301. I.ITEM_NUM itemNum, I.ITEM_PRODUCT_TYPE itemProductType
  302. FROM
  303. TB_IAMBERRY_SHOP_ORDER_ITEM I
  304. WHERE
  305. I.ITEM_SALES_ORDERID = #{itemSalesOrderid}
  306. ORDER BY I.ITEM_ID DESC
  307. </select>
  308. <!-- 通过openid查询用户购买商品的渠道 -->
  309. <select id="getUserByOpenId" parameterType="String" resultType="Member">
  310. SELECT
  311. USER_RES_TYPE userResType,
  312. USER_ID userId,
  313. USER_OPENID userOpenid,
  314. USER_INTEGRAL userIntegral,
  315. USER_INCOME userIncome,
  316. USER_DEALERS userDealers,
  317. USER_TEMPLATE_ID templateId,
  318. USER_SURPLUS_INTEGRAL userSurplusIntegral
  319. FROM
  320. TB_IAMBERRY_USER_USERINFO
  321. WHERE
  322. USER_OPENID = #{openId}
  323. </select>
  324. <!-- 根据推荐人id查询推荐人信息 -->
  325. <select id="getUserByUserRefereeid" parameterType="Integer" resultType="Member">
  326. SELECT
  327. USER_OPENID userOpenid,
  328. USER_INTEGRAL userIntegral,
  329. USER_INCOME userIncome,
  330. USER_SURPLUS_INTEGRAL userSurplusIntegral
  331. FROM
  332. TB_IAMBERRY_USER_USERINFO
  333. WHERE
  334. USER_ID = #{userId}
  335. </select>
  336. <!-- 根据userid修改会员表信息 -->
  337. <update id="updateUserByUserId" parameterType="Member">
  338. UPDATE
  339. TB_IAMBERRY_USER_USERINFO
  340. SET
  341. USER_INCOME =(USER_INCOME + #{userIncome})
  342. <where>
  343. <if test="userId != null and userId != ''">
  344. USER_ID = #{userId}
  345. </if>
  346. <if test="userOpenid != null and userOpenid != ''">
  347. AND USER_OPENID = #{userOpenid}
  348. </if>
  349. </where>
  350. </update>
  351. <update id="updatePlaceInfo" parameterType="PlaceInfo">
  352. update
  353. tb_iamberry_place_info
  354. SET
  355. PLACE_AMOUNT =(PLACE_AMOUNT + #{amount})
  356. WHERE
  357. PLACE_ID = #{id}
  358. </update>
  359. <select id="getPlaceInfoByPlaceId" parameterType="integer" resultType="PlaceInfo">
  360. SELECT
  361. PLACE_ID id,
  362. PLACE_SUPPER_ID supperId,
  363. PLACE_NAME name,
  364. PLACE_ADDR addr,
  365. PLACE_USERNAME userName,
  366. PLACE_TEL tel,
  367. PLACE_AMOUNT amount,
  368. PLACE_CREATE_DATE createDate,
  369. PLACE_STATUS status,
  370. PLACE_OPENID openid,
  371. PLACE_ROLE_ID roleId,
  372. PLACE_PID placePid ,
  373. PLACE_INIT_CODE initCode
  374. FROM tb_iamberry_place_info WHERE place_id = #{appid}
  375. </select>
  376. <!-- 根据id查询系统规则表信息 -->
  377. <select id="getReluByRid" parameterType="Integer" resultType="ShopSystemRule">
  378. SELECT R_NUM ruleNum, R_TYPE ruleType FROM TB_IAMBERRY_ADMIN_RELU WHERE R_ID = #{rId}
  379. </select>
  380. <!-- 根据类型查询系统推责表信息 -->
  381. <select id="getReluByRtype" parameterType="Integer" resultType="ShopSystemRule">
  382. SELECT R_NUM ruleNum FROM TB_IAMBERRY_ADMIN_RELU WHERE R_TYPE = #{ruleType}
  383. </select>
  384. <!-- 查询订单表中有多少是可以奖励积分的单的数量 -->
  385. <select id="getOrderNum" resultType="Integer" parameterType="Order">
  386. SELECT
  387. COUNT(SALES_ORDERID)
  388. FROM
  389. TB_IAMBERRY_SHOP_SALES_ORDER O
  390. WHERE
  391. O.SALES_PROXY_REWARD = 1
  392. AND
  393. <![CDATA[ TIMESTAMPDIFF(SECOND,O.SALES_SEND_DATE,NOW()) >= #{deadline} ]]>
  394. AND
  395. O.SALES_STATUS = 5
  396. ORDER BY O.SALES_SEND_DATE ASC
  397. </select>
  398. <!-- 对客户进行积分奖励 -->
  399. <update id="updateOrderIntegral" parameterType="String">
  400. UPDATE
  401. TB_IAMBERRY_SHOP_SALES_ORDER
  402. SET
  403. SALES_PROXY_REWARD = 2,
  404. SALES_STATUS = 12
  405. WHERE
  406. SALES_ORDERID = #{0}
  407. </update>
  408. <!-- 根据规定的订单关闭时间查询大于该时间且是待支付的订单 -->
  409. <select id="getOrderByCreateTime" resultType="Order" parameterType="Order">
  410. SELECT
  411. T.SALES_ORDERID salesOrderid,T.SALES_COUPON_RECEIVE_ID couponId,T.SALES_OPENID salesOpenid
  412. FROM
  413. TB_IAMBERRY_SHOP_SALES_ORDER T
  414. WHERE
  415. T.SALES_STATUS = 1
  416. AND
  417. <![CDATA[ TIMESTAMPDIFF(SECOND,T.SALES_CREATE_DATE,NOW()) >= #{deadline} ]]>
  418. </select>
  419. <!-- 根据规定的订单关闭时间查询大于该时间且是待支付的订单 -->
  420. <select id="getOrderByCreateTimeAndFiveMinutes" resultType="Order" parameterType="Order">
  421. SELECT
  422. T.SALES_ORDERID salesOrderid,T.SALES_OPENID salesOpenid ,
  423. T.SALES_CREATE_DATE salesCreateDate
  424. FROM
  425. TB_IAMBERRY_SHOP_SALES_ORDER T
  426. WHERE
  427. T.SALES_STATUS = 1
  428. AND
  429. <![CDATA[ #{deadline}-TIMESTAMPDIFF(SECOND,T.SALES_CREATE_DATE,NOW()) <= 900 ]]>
  430. </select>
  431. <!-- 根据orderId修改订单状态,关闭订单 -->
  432. <update id="updateOrderByOrderId" parameterType="java.util.List">
  433. UPDATE
  434. TB_IAMBERRY_SHOP_SALES_ORDER
  435. SET
  436. SALES_STATUS = 0
  437. WHERE
  438. SALES_ORDERID IN (
  439. <foreach collection="list" item="item" separator=",">
  440. #{item}
  441. </foreach>)
  442. </update>
  443. <!-- 获取某个订单的所有产品的总个数 -->
  444. <select id="getItemsNumByOrderId" parameterType="string" resultType="com.iamberry.wechat.core.entity.order.OrderItem">
  445. select
  446. sum(g.item_num) itemNum,
  447. c.color_69code produectRemark
  448. from
  449. tb_iamberry_shop_order_item g LEFT JOIN tb_iamberry_product_color c on g.item_color_id = c.color_id
  450. where
  451. g.item_sales_orderid=#{id}
  452. GROUP BY
  453. c.color_69code
  454. </select>
  455. <!-- 查询状态为待发货的所有订单号 -->
  456. <select id="getOrderList" resultType="Order" parameterType="Order">
  457. SELECT
  458. SALES_ORDERID salesOrderid
  459. FROM
  460. TB_IAMBERRY_SHOP_SALES_ORDER
  461. WHERE
  462. SALES_STATUS = #{salesStatus}
  463. </select>
  464. <!-- 批量修改订单状态 -->
  465. <update id="updateOrderListStatus" parameterType="java.util.List">
  466. <foreach collection="list" item="item" index="index" separator=";" open="" close="">
  467. UPDATE
  468. TB_IAMBERRY_SHOP_SALES_ORDER
  469. SET
  470. SALES_STATUS = 5,
  471. SALES_POST_NUM = #{item.salesPostNum,jdbcType=VARCHAR},
  472. SALES_POST_FIRM = #{item.salesPostFirm,jdbcType=VARCHAR},
  473. SALES_SEND_DATE = #{item.salesSendDate,javaType=DATE}
  474. WHERE
  475. SALES_ORDERID = #{item.salesOrderid,jdbcType=VARCHAR}
  476. </foreach>
  477. </update>
  478. </mapper>