|
@@ -23,10 +23,10 @@
|
|
|
IFNULL(tot.free_num, 0) AS freeCount,
|
|
IFNULL(tot.free_num, 0) AS freeCount,
|
|
|
(IFNULL(tot.adult_total_num, 0) + IFNULL(tot.child_total_num, 0) +
|
|
(IFNULL(tot.adult_total_num, 0) + IFNULL(tot.child_total_num, 0) +
|
|
|
IFNULL(tot.baby_total_num, 0) + IFNULL(tot.with_total_num, 0) + IFNULL(tot.free_num, 0)) AS totalCount,
|
|
IFNULL(tot.baby_total_num, 0) + IFNULL(tot.with_total_num, 0) + IFNULL(tot.free_num, 0)) AS totalCount,
|
|
|
- o.amount AS marketingPrice,
|
|
|
|
|
|
|
+ o.pay_amount AS marketingPrice,
|
|
|
o.free_amount AS discountAmount,
|
|
o.free_amount AS discountAmount,
|
|
|
COALESCE(refund_fee_sum.refundFee, 0) AS refundFee,
|
|
COALESCE(refund_fee_sum.refundFee, 0) AS refundFee,
|
|
|
- (o.amount - IFNULL(o.free_amount, 0) - COALESCE(refund_fee_sum.refundFee, 0)) AS actualSettlementPrice
|
|
|
|
|
|
|
+ (o.pay_amount - IFNULL(o.free_amount, 0) - COALESCE(refund_fee_sum.refundFee, 0)) AS actualSettlementPrice
|
|
|
FROM trade_order o
|
|
FROM trade_order o
|
|
|
INNER JOIN product_voyage v ON o.voyage_id = v.id AND v.deleted = 0
|
|
INNER JOIN product_voyage v ON o.voyage_id = v.id AND v.deleted = 0
|
|
|
INNER JOIN resource_route r ON v.route_id = r.id AND r.deleted = 0
|
|
INNER JOIN resource_route r ON v.route_id = r.id AND r.deleted = 0
|
|
@@ -41,24 +41,33 @@
|
|
|
LEFT JOIN (
|
|
LEFT JOIN (
|
|
|
SELECT order_id, SUM(fee) AS refundFee
|
|
SELECT order_id, SUM(fee) AS refundFee
|
|
|
FROM trade_refund
|
|
FROM trade_refund
|
|
|
- WHERE deleted = 0 AND refund_status = 6
|
|
|
|
|
|
|
+ WHERE deleted = 0 AND refund_status IN (3)
|
|
|
GROUP BY order_id
|
|
GROUP BY order_id
|
|
|
) refund_fee_sum ON o.id = refund_fee_sum.order_id
|
|
) refund_fee_sum ON o.id = refund_fee_sum.order_id
|
|
|
WHERE o.deleted = 0
|
|
WHERE o.deleted = 0
|
|
|
<if test="vo.orderNo != null and vo.orderNo != ''">
|
|
<if test="vo.orderNo != null and vo.orderNo != ''">
|
|
|
AND o.order_no LIKE CONCAT('%', #{vo.orderNo}, '%')
|
|
AND o.order_no LIKE CONCAT('%', #{vo.orderNo}, '%')
|
|
|
</if>
|
|
</if>
|
|
|
- <if test="vo.orderStatus != null">
|
|
|
|
|
- AND o.order_status = #{vo.orderStatus}
|
|
|
|
|
|
|
+ <if test="vo.orderStatus != null and vo.orderStatus.size() > 0">
|
|
|
|
|
+ AND o.order_status IN
|
|
|
|
|
+ <foreach collection="vo.orderStatus" item="item" open="(" separator="," close=")">
|
|
|
|
|
+ #{item}
|
|
|
|
|
+ </foreach>
|
|
|
</if>
|
|
</if>
|
|
|
- <if test="vo.paymentStatus != null">
|
|
|
|
|
- AND o.pay_status = #{vo.paymentStatus}
|
|
|
|
|
|
|
+ <if test="vo.paymentStatus != null and vo.paymentStatus.size() > 0">
|
|
|
|
|
+ AND o.pay_status IN
|
|
|
|
|
+ <foreach collection="vo.paymentStatus" item="item" open="(" separator="," close=")">
|
|
|
|
|
+ #{item}
|
|
|
|
|
+ </foreach>
|
|
|
</if>
|
|
</if>
|
|
|
<if test="vo.sailTime != null">
|
|
<if test="vo.sailTime != null">
|
|
|
AND DATE(v.start_time) = #{vo.sailTime}
|
|
AND DATE(v.start_time) = #{vo.sailTime}
|
|
|
</if>
|
|
</if>
|
|
|
- <if test="vo.travelAgency != null and vo.travelAgency != ''">
|
|
|
|
|
- AND o.source_name LIKE CONCAT('%', #{vo.travelAgency}, '%')
|
|
|
|
|
|
|
+ <if test="vo.travelAgency != null and vo.travelAgency.size() > 0">
|
|
|
|
|
+ AND o.source_name IN
|
|
|
|
|
+ <foreach collection="vo.travelAgency" item="item" open="(" separator="," close=")">
|
|
|
|
|
+ #{item}
|
|
|
|
|
+ </foreach>
|
|
|
</if>
|
|
</if>
|
|
|
<if test="vo.shipId != null">
|
|
<if test="vo.shipId != null">
|
|
|
AND v.ship_id = #{vo.shipId}
|
|
AND v.ship_id = #{vo.shipId}
|
|
@@ -97,10 +106,10 @@
|
|
|
IFNULL(tot.free_num, 0) AS freeCount,
|
|
IFNULL(tot.free_num, 0) AS freeCount,
|
|
|
(IFNULL(tot.adult_total_num, 0) + IFNULL(tot.child_total_num, 0) +
|
|
(IFNULL(tot.adult_total_num, 0) + IFNULL(tot.child_total_num, 0) +
|
|
|
IFNULL(tot.baby_total_num, 0) + IFNULL(tot.with_total_num, 0) + IFNULL(tot.free_num, 0)) AS totalCount,
|
|
IFNULL(tot.baby_total_num, 0) + IFNULL(tot.with_total_num, 0) + IFNULL(tot.free_num, 0)) AS totalCount,
|
|
|
- o.amount AS marketingPrice,
|
|
|
|
|
|
|
+ o.pay_amount AS marketingPrice,
|
|
|
o.free_amount AS discountAmount,
|
|
o.free_amount AS discountAmount,
|
|
|
COALESCE(refund_fee_sum.refundFee, 0) AS refundFee,
|
|
COALESCE(refund_fee_sum.refundFee, 0) AS refundFee,
|
|
|
- (o.amount - IFNULL(o.free_amount, 0) - COALESCE(refund_fee_sum.refundFee, 0)) AS actualSettlementPrice
|
|
|
|
|
|
|
+ (o.pay_amount - IFNULL(o.free_amount, 0) - COALESCE(refund_fee_sum.refundFee, 0)) AS actualSettlementPrice
|
|
|
FROM trade_order o
|
|
FROM trade_order o
|
|
|
INNER JOIN product_voyage v ON o.voyage_id = v.id AND v.deleted = 0
|
|
INNER JOIN product_voyage v ON o.voyage_id = v.id AND v.deleted = 0
|
|
|
INNER JOIN resource_route r ON v.route_id = r.id AND r.deleted = 0
|
|
INNER JOIN resource_route r ON v.route_id = r.id AND r.deleted = 0
|
|
@@ -115,24 +124,33 @@
|
|
|
LEFT JOIN (
|
|
LEFT JOIN (
|
|
|
SELECT order_id, SUM(fee) AS refundFee
|
|
SELECT order_id, SUM(fee) AS refundFee
|
|
|
FROM trade_refund
|
|
FROM trade_refund
|
|
|
- WHERE deleted = 0 AND refund_status = 6
|
|
|
|
|
|
|
+ WHERE deleted = 0 AND refund_status IN (3)
|
|
|
GROUP BY order_id
|
|
GROUP BY order_id
|
|
|
) refund_fee_sum ON o.id = refund_fee_sum.order_id
|
|
) refund_fee_sum ON o.id = refund_fee_sum.order_id
|
|
|
WHERE o.deleted = 0
|
|
WHERE o.deleted = 0
|
|
|
<if test="vo.orderNo != null and vo.orderNo != ''">
|
|
<if test="vo.orderNo != null and vo.orderNo != ''">
|
|
|
AND o.order_no LIKE CONCAT('%', #{vo.orderNo}, '%')
|
|
AND o.order_no LIKE CONCAT('%', #{vo.orderNo}, '%')
|
|
|
</if>
|
|
</if>
|
|
|
- <if test="vo.orderStatus != null">
|
|
|
|
|
- AND o.order_status = #{vo.orderStatus}
|
|
|
|
|
|
|
+ <if test="vo.orderStatus != null and vo.orderStatus.size() > 0">
|
|
|
|
|
+ AND o.order_status IN
|
|
|
|
|
+ <foreach collection="vo.orderStatus" item="item" open="(" separator="," close=")">
|
|
|
|
|
+ #{item}
|
|
|
|
|
+ </foreach>
|
|
|
</if>
|
|
</if>
|
|
|
- <if test="vo.paymentStatus != null">
|
|
|
|
|
- AND o.pay_status = #{vo.paymentStatus}
|
|
|
|
|
|
|
+ <if test="vo.paymentStatus != null and vo.paymentStatus.size() > 0">
|
|
|
|
|
+ AND o.pay_status IN
|
|
|
|
|
+ <foreach collection="vo.paymentStatus" item="item" open="(" separator="," close=")">
|
|
|
|
|
+ #{item}
|
|
|
|
|
+ </foreach>
|
|
|
</if>
|
|
</if>
|
|
|
<if test="vo.sailTime != null">
|
|
<if test="vo.sailTime != null">
|
|
|
AND DATE(v.start_time) = #{vo.sailTime}
|
|
AND DATE(v.start_time) = #{vo.sailTime}
|
|
|
</if>
|
|
</if>
|
|
|
- <if test="vo.travelAgency != null and vo.travelAgency != ''">
|
|
|
|
|
- AND o.source_name LIKE CONCAT('%', #{vo.travelAgency}, '%')
|
|
|
|
|
|
|
+ <if test="vo.travelAgency != null and vo.travelAgency.size() > 0">
|
|
|
|
|
+ AND o.source_name IN
|
|
|
|
|
+ <foreach collection="vo.travelAgency" item="item" open="(" separator="," close=")">
|
|
|
|
|
+ #{item}
|
|
|
|
|
+ </foreach>
|
|
|
</if>
|
|
</if>
|
|
|
<if test="vo.shipId != null">
|
|
<if test="vo.shipId != null">
|
|
|
AND v.ship_id = #{vo.shipId}
|
|
AND v.ship_id = #{vo.shipId}
|