AND t.transactionTime >= #{vo.transactionTimeStart}
AND t.transactionTime <= #{vo.transactionTimeEnd}
AND t.boardingTime = #{vo.boardDate}
AND t.orderNo LIKE CONCAT('%', #{vo.orderNo}, '%')
AND t.travelAgencyName LIKE CONCAT('%', #{vo.customerName}, '%')
AND t.paymentMethod = #{vo.paymentMethod}
AND t.transactionType = #{vo.transactionType}
SELECT * FROM (
SELECT
DATE_FORMAT(pay.payment_date, '%Y-%m-%d %H:%i:%s') AS transactionTime,
DATE_FORMAT(voy.start_time, '%Y-%m-%d') AS boardingTime,
IFNULL(o1.order_no,o2.order_no) AS orderNo,
IFNULL(o1.source_name,o2.source_name) AS travelAgencyName,
pay.payment_type AS paymentMethod,
1 AS transactionType,
pay.pay_amount AS amount,
IFNULL(pay.payment_no, '') AS bankSerialNo
FROM trade_order_pay pay
LEFT JOIN trade_order o1 ON pay.order_id = o1.id AND o1.deleted = 0
LEFT JOIN trade_order o2 ON o1.id IS NULL AND pay.pos_no = o2.order_no AND o2.deleted = 0
LEFT JOIN product_voyage voy ON IFNULL(o1.voyage_id, o2.voyage_id) = voy.id AND voy.deleted = 0
WHERE pay.deleted = 0
AND pay.pay_status = 1
AND pay.payment_type in (1,2,3,4,5,6,9,10)
/* --- and o.order_status in (3,6,7,8,9,10,12,13,15)
-- AND pay.refund_amount = 0*/
UNION ALL
SELECT
DATE_FORMAT(pay.update_time, '%Y-%m-%d %H:%i:%s') AS transactionTime,
DATE_FORMAT(voy.start_time, '%Y-%m-%d') AS boardingTime,
o.order_no AS orderNo,
o.source_name AS travelAgencyName,
pay.payment_type AS paymentMethod,
2 AS transactionType,
-IFNULL(pay.refund_amount, 0) AS amount,
IFNULL(pay.payment_no, '') AS bankSerialNo
FROM trade_order_pay pay
LEFT JOIN trade_order o ON pay.order_id = o.id AND o.deleted = 0
LEFT JOIN product_voyage voy ON o.voyage_id = voy.id AND voy.deleted = 0
WHERE pay.deleted = 0
AND pay.pay_status = 1
AND pay.refund_amount IS NOT NULL
AND pay.refund_amount > 0
UNION ALL
/* SELECT
DATE_FORMAT(pay.payment_date, '%Y-%m-%d %H:%i:%s') AS transactionTime,
DATE_FORMAT(voy.start_time, '%Y-%m-%d') AS boardingTime,
pay.bill_no AS orderNo,
IFNULL(dsrs.name, '') AS travelAgencyName,
pay.payment_type AS paymentMethod,
3 AS transactionType,
pay.pay_amount AS amount,
IFNULL(pay.payment_no, '') AS bankSerialNo
FROM trade_order_pay pay
LEFT JOIN trade_order o ON pay.order_id = o.id AND o.deleted = 0
LEFT JOIN product_voyage voy ON o.voyage_id = voy.id AND voy.deleted = 0
LEFT JOIN ota_distributor_recharge dsr ON pay.order_id = dsr.id AND dsr.deleted = 0 AND dsr.status = 1
LEFT JOIN ota_distributor dsrs ON dsr.distributor_id = dsrs.id AND dsrs.deleted = 0
WHERE pay.deleted = 0
AND pay.pay_status = 1
AND pay.sell_method = 101
UNION ALL*/
SELECT
DATE_FORMAT(pay.payment_date, '%Y-%m-%d %H:%i:%s') AS transactionTime,
DATE_FORMAT(voy.start_time, '%Y-%m-%d') AS boardingTime,
pay.bill_no AS orderNo,
IFNULL(d.name, '') AS travelAgencyName,
pay.payment_type AS paymentMethod,
3 AS transactionType,
pay.pay_amount AS amount,
'' AS bankSerialNo
FROM ota_distributor_recharge r
INNER JOIN ota_distributor d ON r.distributor_id = d.id AND d.deleted = 0
INNER JOIN ota_trade_log tl ON r.recharge_log_id = tl.id AND tl.deleted = 0 AND tl.trade_type = 1
left join trade_order_pay pay on pay.order_id = tl.order_id
LEFT JOIN trade_order o ON pay.order_id = o.id AND o.deleted = 0
LEFT JOIN product_voyage voy ON o.voyage_id = voy.id AND voy.deleted = 0
WHERE r.deleted = 0
AND r.status = 1
UNION ALL
SELECT
DATE_FORMAT(pay.payment_date, '%Y-%m-%d %H:%i:%s') AS transactionTime,
'' AS boardingTime,
pay.bill_no AS orderNo,
IFNULL(o1.source_name, o2.source_name) AS travelAgencyName,
pay.payment_type AS paymentMethod,
4 AS transactionType,
pay.pay_amount AS amount,
IFNULL(pay.payment_no, '') AS bankSerialNo
FROM trade_order_pay pay
LEFT JOIN trade_order o1 ON pay.order_id = o1.id AND o1.deleted = 0
LEFT JOIN trade_order o2 ON o1.id IS NULL AND pay.pos_no = o2.order_no AND o2.deleted = 0
LEFT JOIN ota_bill_order obo ON obo.order_id = IFNULL(o1.id, o2.id)
INNER JOIN ota_bill bill ON bill.id = obo.bill_id AND bill.deleted = 0
WHERE pay.deleted = 0
AND pay.pay_status = 1
AND bill.bill_status in (1,2)
) t
WHERE 1 = 1
ORDER BY t.transactionTime DESC
SELECT * FROM (
SELECT
DATE_FORMAT(pay.payment_date, '%Y-%m-%d %H:%i:%s') AS transactionTime,
DATE_FORMAT(voy.start_time, '%Y-%m-%d') AS boardingTime,
IFNULL(o1.order_no,o2.order_no) AS orderNo,
IFNULL(o1.source_name,o2.source_name) AS travelAgencyName,
pay.payment_type AS paymentMethod,
1 AS transactionType,
pay.pay_amount AS amount,
IFNULL(pay.payment_no, '') AS bankSerialNo
FROM trade_order_pay pay
LEFT JOIN trade_order o1 ON pay.order_id = o1.id AND o1.deleted = 0
LEFT JOIN trade_order o2 ON o1.id IS NULL AND pay.pos_no = o2.order_no AND o2.deleted = 0
LEFT JOIN product_voyage voy ON IFNULL(o1.voyage_id, o2.voyage_id) = voy.id AND voy.deleted = 0
WHERE pay.deleted = 0
AND pay.pay_status = 1
AND pay.payment_type in (1,2,3,4,5,6,9,10)
/* -- and o.order_status in (3,6,7,8,9,10,12,13,15)
-- AND pay.refund_amount = 0*/
UNION ALL
SELECT
DATE_FORMAT(pay.update_time, '%Y-%m-%d %H:%i:%s') AS transactionTime,
DATE_FORMAT(voy.start_time, '%Y-%m-%d') AS boardingTime,
o.order_no AS orderNo,
o.source_name AS travelAgencyName,
pay.payment_type AS paymentMethod,
2 AS transactionType,
-IFNULL(pay.refund_amount, 0) AS amount,
IFNULL(pay.payment_no, '') AS bankSerialNo
FROM trade_order_pay pay
LEFT JOIN trade_order o ON pay.order_id = o.id AND o.deleted = 0
LEFT JOIN product_voyage voy ON o.voyage_id = voy.id AND voy.deleted = 0
WHERE pay.deleted = 0
AND pay.pay_status = 1
AND pay.refund_amount IS NOT NULL
AND pay.refund_amount > 0
UNION ALL
SELECT
DATE_FORMAT(pay.payment_date, '%Y-%m-%d %H:%i:%s') AS transactionTime,
DATE_FORMAT(voy.start_time, '%Y-%m-%d') AS boardingTime,
pay.bill_no AS orderNo,
IFNULL(d.name, '') AS travelAgencyName,
pay.payment_type AS paymentMethod,
3 AS transactionType,
pay.pay_amount AS amount,
'' AS bankSerialNo
FROM ota_distributor_recharge r
INNER JOIN ota_distributor d ON r.distributor_id = d.id AND d.deleted = 0
INNER JOIN ota_trade_log tl ON r.recharge_log_id = tl.id AND tl.deleted = 0 AND tl.trade_type = 1
left join trade_order_pay pay on pay.order_id = tl.order_id
LEFT JOIN trade_order o ON pay.order_id = o.id AND o.deleted = 0
LEFT JOIN product_voyage voy ON o.voyage_id = voy.id AND voy.deleted = 0
WHERE r.deleted = 0
AND r.status = 1
UNION ALL
SELECT
DATE_FORMAT(pay.payment_date, '%Y-%m-%d %H:%i:%s') AS transactionTime,
'' AS boardingTime,
pay.bill_no AS orderNo,
o.source_name AS travelAgencyName,
pay.payment_type AS paymentMethod,
4 AS transactionType,
pay.pay_amount AS amount,
IFNULL(pay.payment_no, '') AS bankSerialNo
FROM trade_order_pay pay
LEFT JOIN trade_order o ON pay.order_id = o.id AND o.deleted = 0
LEFT JOIN ota_bill_order obo ON obo.order_id = o.id
INNER JOIN ota_bill bill ON bill.id = obo.bill_id AND bill.deleted = 0
WHERE pay.deleted = 0
AND pay.pay_status = 1
AND bill.bill_status in (1,2)
) t
WHERE 1 = 1
ORDER BY t.transactionTime DESC