123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626 |
- <?xml version="1.0" encoding="UTF-8" ?>
- <!DOCTYPE mapper
- PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
- "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
- <mapper namespace="com.caimei.mapper.OrderMapper">
- <sql id="cm_Order_List">
- co.orderID AS orderId,
- co.orderNo,
- co.organizeID AS organizeId,
- co.userID AS userId,
- co.buyUserID AS buyUserId,
- co.status,
- co.shopOrderIDs AS shopOrderIds,
- co.receiptStatus,
- co.payStatus,
- co.sendOutStatus,
- co.refundType,
- co.onlinePayFlag,
- co.payTotalFee,
- co.payableAmount,
- co.balancePayFee,
- co.discountFee,
- co.promotionFullReduction,
- co.note,
- co.orderSource,
- co.orderTime,
- co.productCount,
- co.presentCount,
- co.promotionalGiftsCount,
- co.invoiceFlag,
- co.clauseID AS clauseId,
- co.clauseContent,
- co.clauseName,
- co.freePostFlag,
- co.freight,
- co.couponAmount,
- co.paySuccessCounter,
- co.closeReason,
- co.reductionAmount,
- if(chcm.id is not null,true,false) as collageFlag,
- chc.id as collageId,
- chc.status as collageStatus,
- chc.endTime as collageEndTime
- </sql>
- <select id="findOrderList" resultType="com.caimei.model.vo.OrderVo">
- select
- <include refid="cm_Order_List"></include>
- from cm_order co
- left join cm_hehe_collage_member chcm on co.orderID = chcm.orderId
- left join cm_hehe_collage chc on chcm.collageId = chc.id
- where co.delFlag = '0'
- AND co.orderType = 2
- <if test="userId != null ">
- AND co.userID = #{userId}
- </if>
- <if test="orderState == 1 ">
- AND co.status IN(11,12,13,21,22,23)
- </if>
- <if test="orderState == 2 ">
- AND co.status IN(11,12,21,22,31,32)
- </if>
- <if test="orderState == 3 ">
- AND co.status IN(12,13,22,23,32,33)
- </if>
- <if test="orderState == 4 ">
- AND co.refundType IN(1,2)
- </if>
- <if test="orderState == 5">
- AND chcm.id is not null and co.refundType not in (1,2) and chc.status = 1
- </if>
- ORDER BY co.orderTime DESC
- </select>
- <select id="findLogistics" resultType="com.caimei.model.vo.LogisticsBatchVo">
- SELECT
- `id`,
- `shopOrderID` AS shopOrderId,
- `orderID` AS orderId,
- `outStoreTimes`,
- `mailer`,
- `shopID` AS shopId,
- `deliveryTime`,
- `receiptTime`,
- `remarkImage`,
- `remark`,
- `status`
- FROM
- `cm_logistics_batch`
- WHERE
- orderID = #{orderId}
- </select>
- <select id="findAllShopOrder" resultType="com.caimei.model.vo.ShopOrderVo">
- SELECT
- cso.shopOrderID AS shopOrderId,
- cso.shopOrderNo,
- cso.orderID AS orderId,
- cso.userID AS userId,
- cso.shopID AS shopId,
- cso.itemCount,
- cso.totalAmount,
- cso.note,
- cso.shopPostFee,
- cso.needPayAmount,
- cso.eachDiscount,
- cso.realPay,
- cso.receiptAmount,
- cso.receiptStatus,
- (ifnull(cso.realPay,0)-ifnull(cso.receiptAmount,0)) as restAmount,
- s.name AS shopName,
- s.logo AS shopLogo
- FROM
- cm_shop_order cso
- LEFT JOIN shop s ON cso.shopID = s.shopID
- WHERE
- cso.orderID = #{orderId}
- AND cso.delFlag = '0'
- </select>
- <select id="findOrderProduct" resultType="com.caimei.model.vo.OrderProductVo">
- SELECT
- cop.orderProductID AS orderProductId,
- cop.orderID AS orderId,
- cop.shopOrderID AS shopOrderId,
- cop.shopID AS shopId,
- cop.productID AS productId,
- cop.num,
- cop.presentNum,
- cop.outStoreType,
- cop.productNo,
- cop.price,
- cop.normalPrice,
- cop.costPrice,
- cop.totalAmount,
- cop.totalFee,
- cop.shouldPayFee,
- cop.discount,
- cop.discountPrice,
- cop.includedTax,
- cop.invoiceType,
- cop.taxRate,
- cop.addedValueTax,
- cop.totalAddedValueTax,
- cop.notOutStore,
- cop.name,
- cop.productUnit,
- cop.productImage,
- cop.productType,
- cop.ladderPriceFlag,
- cop.heUserId
- FROM
- cm_order_product cop
- WHERE
- cop.shopOrderID = #{shopOrderId}
- </select>
- <select id="findDiscernReceipt" resultType="com.caimei.model.vo.DiscernReceiptVo">
- SELECT
- cdr.id,
- cdr.receiptDate,
- cror.associateAmount
- FROM
- cm_receipt_order_relation cror
- LEFT JOIN cm_discern_receipt cdr ON cror.receiptID = cdr.id
- WHERE
- cror.orderID = #{orderID}
- AND cror.relationType = '2'
- AND cror.delFlag = '0'
- AND cdr.delFlag = '0'
- AND cdr.receiptStatus = '3'
- AND cdr.payType != '16'
- ORDER BY
- cdr.receiptDate DESC
- </select>
- <select id="findUserInfo" resultType="com.caimei.model.vo.UserInfoVo">
- SELECT
- id,
- name,
- shouHuoRen,
- mobile,
- province as provinceName,
- city as cityName,
- town as townName,
- address
- FROM
- bp_order_userinfo
- WHERE
- orderId = #{orderID}
- </select>
- <select id="findOrder" resultType="com.caimei.model.vo.OrderVo">
- SELECT
- <include refid="cm_Order_List"></include>
- FROM
- cm_order co
- left join cm_hehe_collage_member chcm on co.orderID = chcm.orderId
- left join cm_hehe_collage chc on chcm.collageId = chc.id
- WHERE
- co.orderID = #{orderID}
- AND co.delFlag = '0'
- </select>
- <select id="returnedPurchase" resultType="integer">
- SELECT
- SUM(
- crpp.actualReturnedNum
- ) AS actualReturnedNum
- FROM
- cm_returned_purchase_product crpp
- LEFT JOIN cm_returned_purchase rp ON rp.id = crpp.returnedID
- WHERE
- crpp.productID = #{productId}
- AND crpp.shopOrderID = #{shopOrderId}
- AND rp.status = '2'
- AND rp.delFlag = '0'
- </select>
- <select id="actualCancelNum" resultType="integer">
- SELECT
- SUM(
- crpp.actualCancelNum
- ) AS actualCancelNum
- FROM
- cm_returned_purchase_product crpp
- LEFT JOIN cm_returned_purchase rp ON rp.id = crpp.returnedID
- WHERE
- crpp.productID = #{productId}
- AND crpp.shopOrderID = #{shopOrderId}
- AND rp.status = '2'
- AND rp.delFlag = '0'
- </select>
- <select id="findReturnedPurchase" resultType="java.math.BigDecimal">
- SELECT
- SUM(refundFee)
- FROM
- cm_returned_purchase
- WHERE
- orderID = #{orderId}
- AND STATUS = '2'
- </select>
- <select id="findLogisticsRecord" resultType="com.caimei.model.vo.LogisticsRecordVo">
- SELECT
- clr.id,
- clr.logisticsBatchID AS logisticsBatchId,
- clr.shopOrderID AS shopOrderId,
- clr.orderID AS orderId,
- clr.orderProductID AS orderProductId,
- clr.buyNum,
- clr.num,
- clr.productID AS productId,
- clr.productName,
- clr.image,
- cop.productID
- FROM
- cm_logistics_record clr
- LEFT JOIN cm_order_product cop ON clr.orderProductID = cop.orderProductID
- WHERE
- clr.shopOrderID = #{shopOrderId}
- and clr.logisticsBatchID = #{batchId}
- </select>
- <select id="findLogisticsInfo" resultType="com.caimei.model.vo.LogisticsInformationVo">
- SELECT DISTINCT
- li.`orderProductID` AS orderProductId,
- li.`shopOrderID` AS shopOrderId,
- li.`orderID` AS orderId,
- li.`nu`,
- li.`state`,
- li.`info`,
- li.`logisticsCompanyName`,
- li.`logisticsCompanyCode`,
- li.`shopID`,
- li.`remarks`,
- li.`logisticsBatchID` AS logisticsBatchId,
- clb.deliveryTime
- FROM
- logistics_information li
- LEFT JOIN cm_logistics_batch clb ON clb.id = li.logisticsBatchID
- LEFT JOIN cm_logistics_record clr ON clr.logisticsBatchID=clb.id
- WHERE
- li.logisticsBatchID = #{logisticsBatchId}
- </select>
- <update id="updateLogisticsBatch" parameterType="int">
- UPDATE
- cm_logistics_batch
- SET
- status = '1',
- updateDate = NOW(),
- receiptTime = NOW()
- WHERE
- orderID = #{orderId}
- </update>
- <update id="updateOrderStatus">
- UPDATE
- cm_order
- SET
- status = #{status},
- updateDate = NOW()
- WHERE
- orderID = #{orderId}
- </update>
- <update id="deleteOrder">
- UPDATE
- cm_order
- SET
- delFlag = 1,
- updateDate = NOW(),
- note = '用户发起删除订单'
- WHERE
- orderID = #{orderId}
- </update>
- <update id="deleteShopOrder">
- UPDATE cm_shop_order SET delFlag = 1 WHERE orderID = #{orderId}
- </update>
- <update id="deleteReceiptOrderRelation">
- UPDATE
- cm_receipt_order_relation
- SET
- delFlag = '1'
- WHERE
- orderID = #{orderID}
- </update>
- <update id="deleteDiscernReceipt">
- UPDATE
- cm_discern_receipt
- SET
- delFlag = '1'
- WHERE
- id = #{id}
- </update>
- <select id="findPayShopRecord" resultType="com.caimei.model.po.CmPayShopRecordPo">
- SELECT
- id,
- shopID,
- shopOrderID,
- shopOrderNo,
- payAmount,
- wipePayment,
- payType,
- payTime,
- payShopID,
- status,
- delFlag
- FROM
- cm_pay_shop_record
- WHERE
- delFlag = '0'
- AND shopOrderID = #{shopOrderId}
- ORDER BY payTime desc
- </select>
- <update id="deletePayShopRecord">
- UPDATE
- cm_pay_shop_record
- SET
- delFlag = '0'
- WHERE
- shopOrderID = #{shopOrderId}
- </update>
- <update id="updatePayShop">
- UPDATE
- cm_pay_shop
- SET
- delFlag = '0'
- WHERE
- id = #{payShopId}
- </update>
- <update id="cancelOrder">
- UPDATE
- cm_order
- SET
- STATUS = 6,
- updateDate = NOW(),
- closeReason = #{reason},
- closeTime = NOW()
- WHERE
- orderID = #{orderId}
- </update>
- <select id="searchOrder" resultType="com.caimei.model.vo.OrderVo">
- SELECT
- <include refid="cm_Order_List"></include>
- FROM
- cm_order co
- LEFT JOIN cm_order_product cop ON co.orderID = cop.orderID
- left join cm_hehe_collage_member chcm on co.orderID = chcm.orderId
- left join cm_hehe_collage chc on chcm.collageId = chc.id
- WHERE
- co.userID = #{userId}
- AND co.delFlag = '0'
- AND cop.name LIKE CONCAT('%',#{searchWord},'%')
- GROUP BY
- co.orderID
- ORDER BY
- co.orderTime DESC
- </select>
- <select id="getSearchHistoryList" resultType="string">
- SELECT
- searchWord
- FROM
- user_order_history
- WHERE
- userId = #{userId}
- AND delFlag = 0
- ORDER BY
- searchDate DESC
- LIMIT
- 10
- </select>
- <delete id="deleteSearchHistory">
- DELETE FROM user_order_history WHERE userId = #{userId}
- </delete>
- <insert id="insertHistory">
- INSERT INTO `user_order_history` (
- `userId`, `searchWord`, `searchDate`,
- `delFlag`
- )
- VALUES
- (
- #{userId}, #{searchWord}, #{searchDate},
- #{delFlag}
- )
- </insert>
- <select id="getHistoryIdByWord" resultType="long">
- SELECT
- id
- FROM
- user_order_history
- WHERE
- searchWord = #{userId}
- AND userId = #{searchWord}
- AND delFlag = 0
- </select>
- <update id="updateHistoryById">
- UPDATE user_order_history SET searchDate = #{searchDate} WHERE id = #{id}
- </update>
- <update id="revertCoupon">
- update cm_hehe_receive_coupon
- set source = 2,
- status = 1,
- orderId =null,
- useTime= null
- where id = #{receiveCouponId}
- </update>
- <delete id="deleteHistoryByUserId">
- DELETE FROM user_order_history
- WHERE userId=#{userId}
- AND id NOT IN (
- SELECT temp.id FROM (
- SELECT id FROM user_order_history WHERE userId=#{userId} ORDER BY id DESC LIMIT 10
- ) AS temp
- )
- </delete>
- <select id="findOrderCount" resultType="integer">
- SELECT
- COUNT(*)
- FROM
- cm_order co
- left join cm_hehe_collage_member chcm on co.orderID = chcm.orderId
- left join cm_hehe_collage chc on chcm.collageId = chc.id
- WHERE
- co.userId = #{userId}
- AND co.delFlag = '0'
- <if test="status == 0">
- AND co.status = '0'
- </if>
- <if test="status == 1 ">
- AND co.status IN(11,12,13,21,22,23)
- </if>
- <if test="status == 2 ">
- AND co.status IN(11,12,21,22,31,32)
- </if>
- <if test="status == 3 ">
- AND co.status IN(12,13,22,23,32,33)
- </if>
- <if test="status == 4 ">
- AND co.refundType IN(1,2)
- </if>
- <if test="status == 5">
- AND chcm.id is not null and co.refundType not in (1,2) and chc.status = 1
- </if>
- </select>
- <select id="dealerOrderList" resultType="com.caimei.model.vo.OrderVo">
- SELECT
- <include refid="cm_Order_List"></include>
- FROM
- cm_order co
- LEFT JOIN cm_order_product cop ON co.orderID = cop.orderID
- left join cm_hehe_collage_member chcm on co.orderID = chcm.orderId
- left join cm_hehe_collage chc on chcm.collageId = chc.id
- WHERE
- co.delFlag = '0'
- AND co.orderType = 2
- <if test="orderType == 0">
- AND (
- cop.heUserId = #{userId}
- OR co.userID = #{userId}
- )
- </if>
- <if test="orderType == 1">
- AND cop.heUserId = #{userId}
- AND co.userID != #{userId}
- </if>
- <if test="orderType == 2">
- AND co.userID = #{userId}
- </if>
- <if test="orderState == 1 ">
- AND co.status IN(11,12,13,21,22,23)
- </if>
- <if test="orderState == 2 ">
- AND co.status IN(11,12,21,22,31,32)
- </if>
- <if test="orderState == 3 ">
- AND co.status IN(12,13,22,23,32,33)
- </if>
- <if test="orderState == 4 ">
- AND co.refundType IN(1,2)
- </if>
- <if test="orderState == 5">
- AND chcm.id is not null and co.refundType not in (1,2) and chc.status = 1
- </if>
- <if test="searchWord != null and searchWord != ''">
- AND cop.name LIKE CONCAT('%',#{searchWord},'%')
- </if>
- GROUP BY
- co.orderID
- ORDER BY
- co.orderTime DESC
- </select>
- <select id="findOrderProductAll" resultType="com.caimei.model.vo.OrderProductVo">
- SELECT
- productID AS productId,
- heUserId,
- name,
- productImage,
- num
- FROM
- cm_order_product
- WHERE
- orderID = #{orderId}
- </select>
- <select id="findProductStatus" resultType="integer">
- SELECT validFlag FROM cm_hehe_product WHERE productId = #{productId}
- </select>
- <select id="findOrderCoupon" resultType="java.lang.Integer">
- select receiveCouponId from cm_hehe_coupon_order_record where orderId = #{orderId}
- </select>
- <select id="getShopOrderByOrderId" resultType="com.caimei.model.vo.ShopOrderVo">
- SELECT
- shopOrderID AS shopOrderId,
- shopOrderNo,
- orderID AS orderId,
- orderNo,
- shopID AS shopId,
- note,
- userID AS userId,
- clubID AS clubId,
- spID AS spId,
- orderPromotionsId,
- promotionFullReduction,
- brokerage,
- canRefundAmount,
- itemCount,
- totalAmount,
- productAmount,
- needPayAmount,
- shopProductAmount,
- shopPostFee,
- shopTaxFee,
- shouldPayShopAmount,
- orderTime,
- orderSubmitType,
- payStatus,
- sendOutStatus,
- splitFlag,
- realPay,
- receiptAmount,
- receiptStatus
- FROM cm_shop_order
- WHERE delFlag = 0
- AND shopOrderID = #{shopOrderId}
- </select>
- <select id="getShopOrderDiscernReceipt" resultType="com.caimei.model.vo.DiscernReceiptVo">
- SELECT
- cdr.id,
- cdr.payWay,
- cdr.payType,
- cdr.receiptType,
- cdr.receiptStatus,
- cdr.receiptAmount,
- cdr.confirmType,
- cdr.receiptDate,
- cdr.confirmDate,
- cdr.reviewDate,
- cdr.updateDate,
- cdr.delFlag,
- cror.associateAmount
- FROM cm_receipt_order_relation cror
- LEFT JOIN cm_discern_receipt cdr ON cror.receiptID = cdr.id
- WHERE cror.orderID = #{orderId} AND cror.relationType = '2'
- AND cror.delFlag = '0' AND cdr.delFlag = '0' AND cdr.receiptStatus = '3' AND cdr.payType != '16' AND cdr.receiptStatus IN(2,3)
- ORDER BY cdr.receiptDate DESC
- </select>
- </mapper>
|