|
@@ -16,20 +16,21 @@
|
|
|
r.name AS routeName,
|
|
r.name AS routeName,
|
|
|
rm.room_model_name AS roomTypeName,
|
|
rm.room_model_name AS roomTypeName,
|
|
|
IFNULL(tot.use_room_total_num, 0) AS roomCount,
|
|
IFNULL(tot.use_room_total_num, 0) AS roomCount,
|
|
|
- IFNULL(tot.adult_total_num, 0) AS adultCount,
|
|
|
|
|
- IFNULL(tot.child_total_num, 0) AS childCount,
|
|
|
|
|
- IFNULL(tot.baby_total_num, 0) AS infantCount,
|
|
|
|
|
- IFNULL(tot.with_total_num, 0) AS companionCount,
|
|
|
|
|
- IFNULL(tot.free_num, 0) AS freeCount,
|
|
|
|
|
- (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(p.pay_amount, 0) - COALESCE(refund_fee_sum.refund_amount, 0) AS marketingPrice,
|
|
|
|
|
|
|
+ SUM(CASE WHEN tv.type IN ('adultPlus', 'adultTake') THEN 1 ELSE 0 END) AS adultCount,
|
|
|
|
|
+ SUM(CASE WHEN tv.type IN ('childTake','childPlus','childNonTake') THEN 1 ELSE 0 END) AS childCount,
|
|
|
|
|
+ SUM(CASE WHEN tv.type = 'with' THEN 1 ELSE 0 END) AS companionCount,
|
|
|
|
|
+ SUM(CASE WHEN tv.type = 'leader' THEN 1 ELSE 0 END) AS leaderCount,
|
|
|
|
|
+ SUM(CASE WHEN tv.type IN ('babyTake','babyPlus','babyNonTake') THEN 1 ELSE 0 END) AS infantCount,
|
|
|
|
|
+ SUM(CASE WHEN tv.type IN ('babyTake','babyPlus','babyNonTake','leader','with','childTake','childPlus','childNonTake','adultPlus', 'adultTake') THEN 1 ELSE 0 END) AS totalCount,
|
|
|
|
|
+ IFNULL(tot.free_num, 0) AS freeCount,
|
|
|
|
|
+ IFNULL(CASE WHEN o.pay_status = 1 THEN p.pay_amount else o.real_pay_amount END , 0) - COALESCE(refund_fee_sum.refund_amount, 0) AS marketingPrice,
|
|
|
o.free_amount AS discountAmount,
|
|
o.free_amount AS discountAmount,
|
|
|
- COALESCE(refund_fee_sum.refundFee, 0) AS refundFee,
|
|
|
|
|
- (IFNULL(p.pay_amount, 0) - IFNULL(o.free_amount, 0) - COALESCE(refund_fee_sum.refundFee, 0) - COALESCE(refund_fee_sum.refund_amount, 0)) AS actualSettlementPrice
|
|
|
|
|
|
|
+ COALESCE(refund_fee_sum.refund_amount, 0) AS refundFee,
|
|
|
|
|
+ (IFNULL(CASE WHEN o.pay_status = 1 THEN p.pay_amount else o.real_pay_amount END , 0) - IFNULL(o.free_amount, 0) - COALESCE(refund_fee_sum.refund_amount, 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
|
|
|
|
|
+ LEFT JOIN trade_visitor tv ON o.id = tv.order_id AND tv.deleted = 0
|
|
|
LEFT JOIN trade_order_total tot ON o.id = tot.old_order_id AND tot.deleted = 0
|
|
LEFT JOIN trade_order_total tot ON o.id = tot.old_order_id AND tot.deleted = 0
|
|
|
LEFT JOIN trade_order_pay p ON o.pay_status = 1 AND p.order_id = o.id AND p.deleted = 0 AND p.pay_status = 1
|
|
LEFT JOIN trade_order_pay p ON o.pay_status = 1 AND p.order_id = o.id AND p.deleted = 0 AND p.pay_status = 1
|
|
|
LEFT JOIN (
|
|
LEFT JOIN (
|
|
@@ -42,7 +43,7 @@
|
|
|
LEFT JOIN (
|
|
LEFT JOIN (
|
|
|
SELECT order_id, SUM(fee) AS refundFee, SUM(refund_amount) AS refund_amount
|
|
SELECT order_id, SUM(fee) AS refundFee, SUM(refund_amount) AS refund_amount
|
|
|
FROM trade_refund
|
|
FROM trade_refund
|
|
|
- WHERE deleted = 0 AND refund_status IN (6)
|
|
|
|
|
|
|
+ WHERE deleted = 0 AND refund_status IN (3,6)
|
|
|
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
|
|
@@ -90,6 +91,7 @@
|
|
|
AND orm2.room_model_name LIKE CONCAT('%', #{vo.roomTypeName}, '%')
|
|
AND orm2.room_model_name LIKE CONCAT('%', #{vo.roomTypeName}, '%')
|
|
|
)
|
|
)
|
|
|
</if>
|
|
</if>
|
|
|
|
|
+ GROUP BY o.id
|
|
|
ORDER BY o.create_time DESC
|
|
ORDER BY o.create_time DESC
|
|
|
</select>
|
|
</select>
|
|
|
|
|
|
|
@@ -107,20 +109,21 @@
|
|
|
r.name AS routeName,
|
|
r.name AS routeName,
|
|
|
rm.room_model_name AS roomTypeName,
|
|
rm.room_model_name AS roomTypeName,
|
|
|
IFNULL(tot.use_room_total_num, 0) AS roomCount,
|
|
IFNULL(tot.use_room_total_num, 0) AS roomCount,
|
|
|
- IFNULL(tot.adult_total_num, 0) AS adultCount,
|
|
|
|
|
- IFNULL(tot.child_total_num, 0) AS childCount,
|
|
|
|
|
- IFNULL(tot.baby_total_num, 0) AS infantCount,
|
|
|
|
|
- IFNULL(tot.with_total_num, 0) AS companionCount,
|
|
|
|
|
|
|
+ SUM(CASE WHEN tv.type IN ('adultPlus', 'adultTake') THEN 1 ELSE 0 END) AS adultCount,
|
|
|
|
|
+ SUM(CASE WHEN tv.type IN ('childTake','childPlus','childNonTake') THEN 1 ELSE 0 END) AS childCount,
|
|
|
|
|
+ SUM(CASE WHEN tv.type = 'with' THEN 1 ELSE 0 END) AS companionCount,
|
|
|
|
|
+ SUM(CASE WHEN tv.type = 'leader' THEN 1 ELSE 0 END) AS leaderCount,
|
|
|
|
|
+ SUM(CASE WHEN tv.type IN ('babyTake','babyPlus','babyNonTake') THEN 1 ELSE 0 END) AS infantCount,
|
|
|
|
|
+ SUM(CASE WHEN tv.type IN ('babyTake','babyPlus','babyNonTake','leader','with','childTake','childPlus','childNonTake','adultPlus', 'adultTake') THEN 1 ELSE 0 END) AS totalCount,
|
|
|
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.baby_total_num, 0) + IFNULL(tot.with_total_num, 0) + IFNULL(tot.free_num, 0)) AS totalCount,
|
|
|
|
|
- IFNULL(p.pay_amount, 0) - COALESCE(refund_fee_sum.refund_amount, 0) AS marketingPrice,
|
|
|
|
|
|
|
+ IFNULL(CASE WHEN o.pay_status = 1 THEN p.pay_amount else o.real_pay_amount END , 0) - COALESCE(refund_fee_sum.refund_amount, 0) AS marketingPrice,
|
|
|
o.free_amount AS discountAmount,
|
|
o.free_amount AS discountAmount,
|
|
|
- COALESCE(refund_fee_sum.refundFee, 0) AS refundFee,
|
|
|
|
|
- (IFNULL(p.pay_amount, 0) - IFNULL(o.free_amount, 0) - COALESCE(refund_fee_sum.refundFee, 0) - COALESCE(refund_fee_sum.refund_amount, 0)) AS actualSettlementPrice
|
|
|
|
|
|
|
+ COALESCE(refund_fee_sum.refund_amount, 0) AS refundFee,
|
|
|
|
|
+ (IFNULL(CASE WHEN o.pay_status = 1 THEN p.pay_amount else o.real_pay_amount END , 0) - IFNULL(o.free_amount, 0) - COALESCE(refund_fee_sum.refund_amount, 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
|
|
|
|
|
+ LEFT JOIN trade_visitor tv ON o.id = tv.order_id AND tv.deleted = 0
|
|
|
LEFT JOIN trade_order_total tot ON o.id = tot.old_order_id AND tot.deleted = 0
|
|
LEFT JOIN trade_order_total tot ON o.id = tot.old_order_id AND tot.deleted = 0
|
|
|
LEFT JOIN trade_order_pay p ON o.pay_status = 1 AND p.order_id = o.id AND p.deleted = 0 AND p.pay_status = 1
|
|
LEFT JOIN trade_order_pay p ON o.pay_status = 1 AND p.order_id = o.id AND p.deleted = 0 AND p.pay_status = 1
|
|
|
LEFT JOIN (
|
|
LEFT JOIN (
|
|
@@ -133,7 +136,7 @@
|
|
|
LEFT JOIN (
|
|
LEFT JOIN (
|
|
|
SELECT order_id, SUM(fee) AS refundFee, SUM(refund_amount) AS refund_amount
|
|
SELECT order_id, SUM(fee) AS refundFee, SUM(refund_amount) AS refund_amount
|
|
|
FROM trade_refund
|
|
FROM trade_refund
|
|
|
- WHERE deleted = 0 AND refund_status IN (6)
|
|
|
|
|
|
|
+ WHERE deleted = 0 AND refund_status IN (3,6)
|
|
|
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
|
|
@@ -181,6 +184,7 @@
|
|
|
AND orm2.room_model_name LIKE CONCAT('%', #{vo.roomTypeName}, '%')
|
|
AND orm2.room_model_name LIKE CONCAT('%', #{vo.roomTypeName}, '%')
|
|
|
)
|
|
)
|
|
|
</if>
|
|
</if>
|
|
|
|
|
+ GROUP BY o.id
|
|
|
ORDER BY o.create_time DESC
|
|
ORDER BY o.create_time DESC
|
|
|
</select>
|
|
</select>
|
|
|
|
|
|