|
@@ -3,7 +3,7 @@
|
|
|
<mapper namespace="com.caimei365.manager.dao.FinanceDao">
|
|
|
<insert id="insertReceiptUser" keyProperty="id" keyColumn="id" useGeneratedKeys="true">
|
|
|
INSERT INTO cm_receipt_user(name, password, user_type, mobile, create_time)
|
|
|
- VALUES(#{name}, #{password}, #{userType}, #{mobile}, NOW())
|
|
|
+ VALUES (#{name}, #{password}, #{userType}, #{mobile}, NOW())
|
|
|
</insert>
|
|
|
<update id="updateReceiptUser">
|
|
|
UPDATE cm_receipt_user SET name=#{name},
|
|
@@ -14,32 +14,332 @@
|
|
|
WHERE id = #{id}
|
|
|
</update>
|
|
|
<delete id="deleteReceiptUser">
|
|
|
- UPDATE cm_receipt_user SET del_flag=1, update_time=NOW() WHERE id = #{id}
|
|
|
+ UPDATE cm_receipt_user
|
|
|
+ SET del_flag=1,
|
|
|
+ update_time=NOW()
|
|
|
+ WHERE id = #{id}
|
|
|
</delete>
|
|
|
<delete id="deleteReceiptPermissionRelation">
|
|
|
- DELETE FROM cm_receipt_user_permission WHERE user_id = #{userId}
|
|
|
+ DELETE
|
|
|
+ FROM cm_receipt_user_permission
|
|
|
+ WHERE user_id = #{userId}
|
|
|
</delete>
|
|
|
<insert id="insertReceiptPermissionRelation">
|
|
|
- INSERT INTO cm_receipt_user_permission(user_id, permission_id) VALUES(#{userId}, #{permissionId})
|
|
|
+ INSERT INTO cm_receipt_user_permission(user_id, permission_id)
|
|
|
+ VALUES (#{userId}, #{permissionId})
|
|
|
</insert>
|
|
|
<select id="getReceiptUsers" resultType="com.caimei365.manager.entity.caimei.ReceiptUser">
|
|
|
SELECT id, user_type AS userType, name, mobile, openid, unionId, del_flag AS delFlag
|
|
|
- FROM cm_receipt_user WHERE del_flag = 0 ORDER BY id
|
|
|
+ FROM cm_receipt_user
|
|
|
+ WHERE del_flag = 0
|
|
|
+ ORDER BY id
|
|
|
</select>
|
|
|
<select id="getReceiptUserById" resultType="com.caimei365.manager.entity.caimei.ReceiptUser">
|
|
|
SELECT id, user_type AS userType, name, mobile, openid, unionId, del_flag AS delFlag
|
|
|
- FROM cm_receipt_user WHERE id = #{id}
|
|
|
+ FROM cm_receipt_user
|
|
|
+ WHERE id = #{id}
|
|
|
</select>
|
|
|
<select id="getReceiptUserByMobile" resultType="com.caimei365.manager.entity.caimei.ReceiptUser">
|
|
|
SELECT id, user_type AS userType, name, mobile, openid, unionId, del_flag AS delFlag
|
|
|
- FROM cm_receipt_user WHERE mobile = #{mobile}
|
|
|
+ FROM cm_receipt_user
|
|
|
+ WHERE mobile = #{mobile}
|
|
|
</select>
|
|
|
<select id="getReceiptPermissions" resultType="com.caimei365.manager.entity.caimei.ReceiptPermission">
|
|
|
- SELECT id, permission FROM cm_receipt_permission ORDER BY id
|
|
|
+ SELECT id, permission
|
|
|
+ FROM cm_receipt_permission
|
|
|
+ ORDER BY id
|
|
|
</select>
|
|
|
<select id="getReceiptPermissionsByUserId" resultType="com.caimei365.manager.entity.caimei.ReceiptPermission">
|
|
|
- SELECT p.id, p.permission FROM cm_receipt_permission p
|
|
|
- LEFT JOIN cm_receipt_user_permission crup ON crup.permission_id = p.id
|
|
|
+ SELECT p.id, p.permission
|
|
|
+ FROM cm_receipt_permission p
|
|
|
+ LEFT JOIN cm_receipt_user_permission crup ON crup.permission_id = p.id
|
|
|
WHERE crup.user_id = #{userId}
|
|
|
</select>
|
|
|
+ <select id="getReceiptType" resultType="com.caimei365.manager.entity.caimei.ReceiptType">
|
|
|
+ SELECT `id`, `type`
|
|
|
+ FROM cm_receipt_type
|
|
|
+ ORDER BY id
|
|
|
+ </select>
|
|
|
+ <select id="getReceiptList" resultType="com.caimei365.manager.entity.caimei.ReceiptList"
|
|
|
+ parameterType="com.caimei365.manager.entity.caimei.ReceiptParam">
|
|
|
+ -- relationType值为1是为子订单ID,为2时为主订单ID
|
|
|
+ SELECT DISTINCT
|
|
|
+ a.id,
|
|
|
+ a.receiptDate,
|
|
|
+ a.receiptAmount,
|
|
|
+ a.payWay,
|
|
|
+ a.payType,
|
|
|
+ a.receiptType,
|
|
|
+ a.receiptStatus,
|
|
|
+ (IF(crr.relationType = '1', cso_cr.orderType, cr.orderType)) AS orderType,
|
|
|
+ (IF(crr.relationType = '1',
|
|
|
+ CONCAT('子订单',cso.shopOrderNo,'(',cso.shopOrderID,')'),
|
|
|
+ CONCAT(cso.orderNo,'(',cr.orderID,')')
|
|
|
+ )) AS orders,
|
|
|
+ (IF(crr.relationType = '1', IFNULL(u_cr.userName, u_cr.name), IFNULL(u.userName, u.name ))) AS userName,
|
|
|
+ (IF(cr.organizeID = '1', '星范', (IF(cr.orderType = '2', '呵呵商城', '')) )) AS suffix
|
|
|
+ FROM cm_discern_receipt a
|
|
|
+ LEFT JOIN cm_receipt_order_relation crr ON crr.receiptID = a.id AND crr.delFlag = '0'
|
|
|
+ LEFT JOIN cm_coupon_buyrecord ccb ON crr.couponRecordId=ccb.id
|
|
|
+ -- 主订单
|
|
|
+ LEFT JOIN cm_order cr ON cr.orderID = crr.orderID
|
|
|
+ LEFT JOIN USER u ON u.userID = cr.userID
|
|
|
+ -- 子订单
|
|
|
+ LEFT JOIN cm_shop_order cso ON cso.shopOrderID = crr.orderID
|
|
|
+ LEFT JOIN cm_order cso_cr ON cso.orderID = cso_cr.orderID
|
|
|
+ LEFT JOIN USER u_cr ON u_cr.userID = cso_cr.userID
|
|
|
+ <where>
|
|
|
+ <if test="id != null and id != '' and id != 0 ">
|
|
|
+ AND a.id = #{id}
|
|
|
+ </if>
|
|
|
+ <if test="organizeId != null and organizeId != 9999 ">
|
|
|
+ AND cr.organizeID = #{organizeId}
|
|
|
+ </if>
|
|
|
+ <if test="organizeId == 9999 ">
|
|
|
+ AND cr.orderType = 2
|
|
|
+ </if>
|
|
|
+ <if test="startTime != null and startTime != ''">
|
|
|
+ AND (a.receiptDate > #{startTime} OR a.receiptDate = #{startTime})
|
|
|
+ </if>
|
|
|
+ <if test="endTime != null and endTime != ''">
|
|
|
+ AND (a.receiptDate < #{endTime} OR a.receiptDate = #{endTime})
|
|
|
+ </if>
|
|
|
+ <if test="payWay != null and payWay != ''">
|
|
|
+ AND a.payWay = #{payWay}
|
|
|
+ </if>
|
|
|
+ <if test="payType != null and payType != ''">
|
|
|
+ AND a.payType = #{payType}
|
|
|
+ </if>
|
|
|
+ <if test="receiptType != null and receiptType != ''">
|
|
|
+ AND a.receiptType = #{receiptType}
|
|
|
+ </if>
|
|
|
+ <if test="receiptStatus != null and receiptStatus != ''">
|
|
|
+ AND a.receiptStatus = #{receiptStatus}
|
|
|
+ </if>
|
|
|
+ <if test="orderNo != null and orderNo != ''">
|
|
|
+ AND ((cr.orderNo LIKE CONCAT('%',#{orderNo},'%')) OR (cso.shopOrderNo like concat('%',#{orderNo},'%')))
|
|
|
+ </if>
|
|
|
+ <if test="orderId != null and orderId != ''">
|
|
|
+ AND (cr.orderID = #{orderId} OR (crr.relationType = '1' AND cso_cr.orderID = #{orderId}))
|
|
|
+ </if>
|
|
|
+ <if test="userName != null and userName != ''">
|
|
|
+ AND (u.userName LIKE CONCAT('%',#{userName},'%') or u.name LIKE concat('%',#{userName},'%'))
|
|
|
+ </if>
|
|
|
+ <if test="receiptProgress != null and receiptProgress != ''">
|
|
|
+ AND (IF(crr.relationType = '1', cso_cr.receiptStatus, cr.receiptStatus)) = #{receiptProgress}
|
|
|
+ </if>
|
|
|
+ <if test="receiptOrderType != null and receiptOrderType != ''">
|
|
|
+ AND (IF(crr.relationType = '1', cso.orderType, cr.orderType)) = #{receiptOrderType}
|
|
|
+ </if>
|
|
|
+ <if test="associationNum != null and associationNum != ''">
|
|
|
+ <if test="associationNum == 1">
|
|
|
+ AND (SELECT COUNT(1) FROM cm_receipt_order_relation WHERE receiptID = a.id AND delFlag = '0') = 1
|
|
|
+ </if>
|
|
|
+ <if test="associationNum == 2">
|
|
|
+ AND (SELECT COUNT(1) FROM cm_receipt_order_relation WHERE receiptID = a.id AND delFlag = '0')
|
|
|
+ <![CDATA[ > ]]> 1
|
|
|
+ </if>
|
|
|
+ </if>
|
|
|
+ AND a.delFlag = '0' GROUP BY a.id
|
|
|
+ </where>
|
|
|
+ ORDER BY a.receiptDate DESC
|
|
|
+ </select>
|
|
|
+ <select id="getReceiptDetail" resultType="com.caimei365.manager.entity.caimei.ReceiptDetail">
|
|
|
+ SELECT DISTINCT cdr.id,
|
|
|
+ cdr.payWay,
|
|
|
+ cdr.payType,
|
|
|
+ cdr.receiptType,
|
|
|
+ cdr.receiptStatus,
|
|
|
+ cdr.receiptAmount,
|
|
|
+ cdr.smsContent,
|
|
|
+ cdr.smsMd5Code,
|
|
|
+ cdr.receiptDate,
|
|
|
+ cdr.confirmDate,
|
|
|
+ cdr.reviewDate,
|
|
|
+ cdr.cancelDate,
|
|
|
+ cdr.handlingFee,
|
|
|
+ cdr.orderFlag,
|
|
|
+ cdr.noOrderReason,
|
|
|
+ cdr.cancelReason,
|
|
|
+ cdr.confirmType,
|
|
|
+ cdr.reviewReason,
|
|
|
+ cdr.receiptUserPermissionID AS receiptUserPermissionId,
|
|
|
+ cdr.confirmUserPermissionID AS confirmUserPermissionId,
|
|
|
+ cdr.reviewUserPermissionID AS reviewUserPermissionId,
|
|
|
+ cdr.cancelUserPermissionID AS cancelUserPermissionId
|
|
|
+ FROM cm_discern_receipt cdr
|
|
|
+ WHERE cdr.id = #{id}
|
|
|
+ </select>
|
|
|
+ <select id="getReceiptRelations" resultType="com.caimei365.manager.entity.caimei.ReceiptRelation">
|
|
|
+ SELECT cror.id,
|
|
|
+ IFNULL(cror.relationType, 0) AS relationType,
|
|
|
+ cror.receiptID AS receiptId,
|
|
|
+ cror.associateAmount,
|
|
|
+ cror.orderID AS orderId
|
|
|
+ FROM cm_receipt_order_relation cror
|
|
|
+ WHERE cror.receiptID = #{receiptId}
|
|
|
+ AND cror.delFlag = 0
|
|
|
+ </select>
|
|
|
+ <select id="getReceiptOrderByShopOrderId" resultType="com.caimei365.manager.entity.caimei.ReceiptOrder">
|
|
|
+ SELECT cso.orderNo,
|
|
|
+ cso.orderID AS orderId,
|
|
|
+ co.payTotalFee AS orderAmount,
|
|
|
+ co.payableAmount,
|
|
|
+ (SELECT SUM(o.needPayAmount)
|
|
|
+ FROM cm_receipt_order_relation cror
|
|
|
+ LEFT JOIN cm_shop_order o ON cror.orderID = o.shopOrderID
|
|
|
+ LEFT JOIN cm_discern_receipt cdr ON cdr.id = cror.receiptID
|
|
|
+ WHERE o.orderID = cso.orderID
|
|
|
+ AND cror.delFlag = '0'
|
|
|
+ AND cdr.delFlag = '0'
|
|
|
+ AND cdr.receiptStatus = '2'
|
|
|
+ ) AS receiptAmount,
|
|
|
+ bou.name AS customerName,
|
|
|
+ co.receiptStatus,
|
|
|
+ co.orderType,
|
|
|
+ co.orderTime,
|
|
|
+ co.userID AS userId,
|
|
|
+ cso.shopOrderNo,
|
|
|
+ cso.shopOrderID AS shopOrderId,
|
|
|
+ cso.needPayAmount AS shopOrderAmount,
|
|
|
+ cso.shouldPayShopAmount,
|
|
|
+ cso.payedShopAmount,
|
|
|
+ s.name AS shopName
|
|
|
+ FROM cm_shop_order cso
|
|
|
+ LEFT JOIN cm_order co ON cso.orderID = co.orderID
|
|
|
+ LEFT JOIN shop s ON cso.shopID = s.shopID
|
|
|
+ LEFT JOIN bp_order_userinfo bou ON bou.orderId = cso.orderID
|
|
|
+ WHERE cso.shopOrderID = #{shopOrderId}
|
|
|
+ </select>
|
|
|
+ <select id="getOrderInfoByOrderId" resultType="com.caimei365.manager.entity.caimei.ReceiptOrder">
|
|
|
+ SELECT co.orderNo,
|
|
|
+ co.orderID AS orderId,
|
|
|
+ co.payTotalFee AS orderAmount,
|
|
|
+ co.payableAmount,
|
|
|
+ (SELECT SUM(cror.associateAmount)
|
|
|
+ FROM cm_receipt_order_relation cror
|
|
|
+ LEFT JOIN cm_order o ON o.orderID = cror.orderID
|
|
|
+ LEFT JOIN cm_discern_receipt cdr ON cdr.id = cror.receiptID
|
|
|
+ WHERE o.orderID = co.orderID
|
|
|
+ AND cror.delFlag = '0'
|
|
|
+ AND cdr.delFlag = '0'
|
|
|
+ AND cdr.receiptStatus = '3'
|
|
|
+ ) AS receiptAmount,
|
|
|
+ bou.name AS customerName,
|
|
|
+ co.receiptStatus,
|
|
|
+ co.orderType,
|
|
|
+ co.orderTime,
|
|
|
+ co.organizeID AS organizeId,
|
|
|
+ co.userID AS userId
|
|
|
+ FROM cm_order co
|
|
|
+ LEFT JOIN bp_order_userinfo bou ON bou.orderId = co.orderID
|
|
|
+ WHERE co.orderID = #{orderId}
|
|
|
+ </select>
|
|
|
+ <select id="getRefundAmountByShopOrder" resultType="java.lang.Double">
|
|
|
+ SELECT IFNULL(SUM(refundAmount), 0)
|
|
|
+ FROM cm_refund_shop_record
|
|
|
+ WHERE shopOrderID = #{shopOrderId}
|
|
|
+ AND delFlag = 0
|
|
|
+ </select>
|
|
|
+ <select id="getReceiptRecordByOrderId" resultType="com.caimei365.manager.entity.caimei.ReceiptRecord">
|
|
|
+ SELECT
|
|
|
+ cror.receiptID AS receiptID,
|
|
|
+ cdr.receiptDate AS receiptTime,
|
|
|
+ cdr.receiptStatus AS receiptStatus,
|
|
|
+ cdr.confirmType AS confirmType,
|
|
|
+ cdr.receiptType AS receiptType,
|
|
|
+ cdr.payType AS payType,
|
|
|
+ cdr.receiptAmount AS receiptAmount,
|
|
|
+ cror.associationType AS associationType,
|
|
|
+ cdr.payWay AS payWay,
|
|
|
+ cdr.transactionNum AS transactionNum,
|
|
|
+ cror.mbOrderId AS mbOrderId,
|
|
|
+ cdr.confirmUserPermissionID AS confirmUserPermissionID,
|
|
|
+ (SELECT cru.name FROM cm_receipt_user cru WHERE cru.id = cdr.confirmUserPermissionID) AS confirmUserName,
|
|
|
+ cdr.confirmDate AS confirmDate,
|
|
|
+ cdr.reviewUserPermissionID AS reviewUserPermissionID,
|
|
|
+ (SELECT cru.name FROM cm_receipt_user cru WHERE cru.id = cdr.reviewUserPermissionID) AS reviewUserName,
|
|
|
+ cdr.reviewDate AS reviewDate,
|
|
|
+ cdr.cancelUserPermissionID AS cancelUserPermissionID,
|
|
|
+ (SELECT su.name FROM sys_user su WHERE su.id = cdr.cancelUserPermissionID) AS cancelUserName,
|
|
|
+ cdr.cancelDate AS cancelDate,
|
|
|
+ cdr.cancelReason AS cancelReason
|
|
|
+ FROM cm_receipt_order_relation cror
|
|
|
+ JOIN cm_discern_receipt cdr ON cdr.id = cror.receiptID
|
|
|
+ WHERE cror.delFlag = '0' AND cdr.delFlag = '0'
|
|
|
+ <if test="relationType == 1">
|
|
|
+ AND cror.orderID IN (SELECT shopOrderID FROM cm_shop_order WHERE orderID = #{orderId}) and cror.relationType
|
|
|
+ = '1'
|
|
|
+ </if>
|
|
|
+ <if test="relationType == 2">
|
|
|
+ AND cror.orderID = #{orderId} and cror.relationType = '2'
|
|
|
+ </if>
|
|
|
+ </select>
|
|
|
+ <select id="getReturnBalanceAmount" resultType="java.lang.Double">
|
|
|
+ SELECT IFNULL(SUM(amount), 0)
|
|
|
+ FROM cm_user_balance_record
|
|
|
+ WHERE balanceType = 2
|
|
|
+ AND receiptId = #{receiptId}
|
|
|
+ AND delFlag = 0;
|
|
|
+ </select>
|
|
|
+ <select id="getAssociateAmountByOrderId" resultType="java.lang.Double">
|
|
|
+ SELECT IFNULL(SUM(cdr.receiptAmount), 0)
|
|
|
+ FROM cm_receipt_order_relation cror
|
|
|
+ LEFT JOIN cm_discern_receipt cdr ON cdr.id = cror.receiptID
|
|
|
+ WHERE cror.orderID = #{orderId}
|
|
|
+ AND cror.relationType = '2'
|
|
|
+ AND cdr.delFlag = 0
|
|
|
+ AND cror.delFlag = 0
|
|
|
+ AND cdr.receiptStatus = '3'
|
|
|
+ AND payWay != '3';
|
|
|
+ </select>
|
|
|
+ <select id="sumUserMoney" resultType="java.lang.Double">
|
|
|
+ SELECT IFNULL(SUM(amount), 0)
|
|
|
+ FROM cm_user_balance_record
|
|
|
+ WHERE orderId = #{orderId}
|
|
|
+ AND balanceType = 1
|
|
|
+ AND delflag = 0
|
|
|
+ </select>
|
|
|
+ <select id="sumOnlineMoney" resultType="java.lang.Double">
|
|
|
+ SELECT IFNULL(SUM(amount), 0)
|
|
|
+ FROM cm_user_balance_record
|
|
|
+ WHERE orderId = #{orderId}
|
|
|
+ AND balanceType = 10
|
|
|
+ AND delflag = 0
|
|
|
+ </select>
|
|
|
+ <select id="getReceiptVipInfo" resultType="com.caimei365.manager.entity.caimei.ReceiptVipInfo">
|
|
|
+ SELECT svipr.id,
|
|
|
+ svipr.userId,
|
|
|
+ svipr.packageId,
|
|
|
+ svipr.beginTime,
|
|
|
+ svipr.endTime,
|
|
|
+ svipr.price,
|
|
|
+ svipr.payTime,
|
|
|
+ cror.orderRequestNo,
|
|
|
+ cror.vipRecordId,
|
|
|
+ svipp.duration,
|
|
|
+ c.name AS clubName
|
|
|
+ FROM cm_svip_history svipr
|
|
|
+ LEFT JOIN cm_receipt_order_relation cror ON svipr.id = cror.vipRecordId
|
|
|
+ LEFT JOIN club c ON svipr.userId = c.clubID
|
|
|
+ LEFT JOIN cm_svip_package svipp ON svipp.id = svipr.packageId
|
|
|
+ WHERE cror.receiptID = #{receiptId}
|
|
|
+ LIMIT 1
|
|
|
+ </select>
|
|
|
+ <select id="getReceiptCouponInfo" resultType="com.caimei365.manager.entity.caimei.ReceiptCouponInfo">
|
|
|
+ SELECT c.name AS clubName,
|
|
|
+ cc.touchPrice,
|
|
|
+ cc.couponAmount,
|
|
|
+ cror.mborderId,
|
|
|
+ cc.couponType,
|
|
|
+ cdr.confirmDate
|
|
|
+ FROM cm_receipt_order_relation cror
|
|
|
+ LEFT JOIN cm_discern_receipt cdr ON cror.receiptID = cdr.id
|
|
|
+ LEFT JOIN cm_order co ON cror.orderId = co.orderID
|
|
|
+ LEFT JOIN club c ON co.userID = c.userID
|
|
|
+ LEFT JOIN cm_coupon_buyrecord ccb ON ccb.id = cror.couponRecordId
|
|
|
+ LEFT JOIN cm_coupon cc ON ccb.couponId = cc.id
|
|
|
+ WHERE receiptID = #{receiptId}
|
|
|
+ </select>
|
|
|
+
|
|
|
</mapper>
|