Files
baiyue-firstleg/scripts/db/seed-pda-single-sku-return-inventory.sql
T
2026-09-10 17:11:33 +08:00

138 lines
5.7 KiB
SQL

-- 本地验收数据:客户 17909216591 / 洛杉矶仓 / 单 SKU 退货单 + PDA 已签收库存。
-- 可重复执行;已存在的业务单据不会被覆盖或重复累计库存。
USE baiyue_lastleg;
START TRANSACTION;
DROP TEMPORARY TABLE IF EXISTS _seed_pda_single_sku_returns;
CREATE TEMPORARY TABLE _seed_pda_single_sku_returns (
seq INT NOT NULL PRIMARY KEY,
sku_code VARCHAR(128) NOT NULL,
product_name_zh VARCHAR(255) NOT NULL,
quantity BIGINT NOT NULL
);
INSERT INTO _seed_pda_single_sku_returns (seq, sku_code, product_name_zh, quantity) VALUES
(1, 'RET-LAX-PHONE-0909', '退货验收手机支架', 6),
(2, 'RET-LAX-LAMP-0909', '退货验收桌面灯具', 8),
(3, 'RET-LAX-RACK-0909', '退货验收厨房置物架', 10),
(4, 'RET-LAX-BAG-0909', '退货验收旅行收纳袋', 12),
(5, 'RET-LAX-FAN-0909', '退货验收便携风扇', 15);
INSERT IGNORE INTO ll_return_order
(id, customer_id, return_no, overseas_warehouse_id, customer_reference_no, need_relabel,
status, expected_sku_types, expected_quantity, received_quantity, remark,
idempotency_key, request_hash, created_by, created_at, updated_at)
SELECT
2097400000000000000 + seq,
'2093269089353961474',
CONCAT('RT-LAX-PDA-20260909-0', seq),
'193000000000200003',
CONCAT('17909216591-PDA-RETURN-0', seq),
0, 'COMPLETED', 1, quantity, quantity,
'单 SKU 退货单,已完成 PDA 签收验收',
CONCAT('seed-pda-single-sku-return-order-20260909-', seq),
SHA2(CONCAT('seed-pda-single-sku-return-order-20260909-', seq), 256),
'209608311713000001', DATE_SUB(NOW(3), INTERVAL (60 - seq) MINUTE), DATE_SUB(NOW(3), INTERVAL (45 - seq) MINUTE)
FROM _seed_pda_single_sku_returns;
INSERT IGNORE INTO ll_return_order_item
(id, return_order_id, customer_id, sku_code, product_name_zh,
expected_quantity, received_quantity, created_at, updated_at)
SELECT
2097400000000000100 + seq,
2097400000000000000 + seq,
'2093269089353961474', sku_code, product_name_zh,
quantity, quantity, DATE_SUB(NOW(3), INTERVAL (60 - seq) MINUTE), DATE_SUB(NOW(3), INTERVAL (45 - seq) MINUTE)
FROM _seed_pda_single_sku_returns;
INSERT IGNORE INTO ll_return_receipt
(id, return_order_id, customer_id, receipt_no, receipt_batch_no, carton_mark, tracking_no,
bound_by, status, received_quantity, operator_id, operator_name,
idempotency_key, request_hash, signed_at, created_at)
SELECT
2097400000000000200 + seq,
2097400000000000000 + seq,
'2093269089353961474',
CONCAT('RR-LAX-PDA-20260909-0', seq),
CONCAT('RB-LAX-PDA-20260909-0', seq),
CONCAT('RC-LAX-PDA-20260909-0', seq),
CONCAT('TRACK-17909216591-0909-0', seq),
'RETURN_NO', 'SIGNED', quantity,
'209608311713000001', '本地PDA验收员',
CONCAT('seed-pda-single-sku-return-receipt-20260909-', seq),
SHA2(CONCAT('seed-pda-single-sku-return-receipt-20260909-', seq), 256),
DATE_SUB(NOW(3), INTERVAL (45 - seq) MINUTE), DATE_SUB(NOW(3), INTERVAL (45 - seq) MINUTE)
FROM _seed_pda_single_sku_returns;
INSERT IGNORE INTO ll_return_receipt_item
(id, receipt_id, return_order_item_id, customer_id, sku_code, received_quantity)
SELECT
2097400000000000300 + seq,
2097400000000000200 + seq,
2097400000000000100 + seq,
'2093269089353961474', sku_code, quantity
FROM _seed_pda_single_sku_returns;
INSERT IGNORE INTO ll_return_receipt_batch
(id, return_order_id, receipt_id, customer_id, batch_no, overseas_warehouse_id,
storage_billing_status, storage_started_at, created_at)
SELECT
2097400000000000400 + seq,
2097400000000000000 + seq,
2097400000000000200 + seq,
'2093269089353961474',
CONCAT('RB-LAX-PDA-20260909-0', seq),
'193000000000200003', 'PENDING_PRICING',
DATE_SUB(NOW(3), INTERVAL (45 - seq) MINUTE), DATE_SUB(NOW(3), INTERVAL (45 - seq) MINUTE)
FROM _seed_pda_single_sku_returns;
INSERT IGNORE INTO ll_return_inventory_carton
(id, customer_id, overseas_warehouse_id, source_receipt_id, source_batch_no, source_return_no,
carton_mark, status, sku_types, total_quantity, created_at, updated_at)
SELECT
2097400000000000500 + seq,
'2093269089353961474', '193000000000200003',
2097400000000000200 + seq,
CONCAT('RB-LAX-PDA-20260909-0', seq),
CONCAT('RT-LAX-PDA-20260909-0', seq),
CONCAT('RC-LAX-PDA-20260909-0', seq),
'AVAILABLE', 1, quantity,
DATE_SUB(NOW(3), INTERVAL (45 - seq) MINUTE), DATE_SUB(NOW(3), INTERVAL (45 - seq) MINUTE)
FROM _seed_pda_single_sku_returns;
INSERT IGNORE INTO ll_return_inventory_carton_item
(id, carton_id, customer_id, sku_code, product_name_zh, quantity)
SELECT
2097400000000000600 + seq,
2097400000000000500 + seq,
'2093269089353961474', sku_code, product_name_zh, quantity
FROM _seed_pda_single_sku_returns;
INSERT IGNORE INTO ll_return_inventory_balance
(id, customer_id, overseas_warehouse_id, sku_code, product_name_zh,
total_quantity, available_quantity, carton_quantity, created_at, updated_at)
SELECT
2097400000000000700 + seq,
'2093269089353961474', '193000000000200003', sku_code, product_name_zh,
quantity, quantity, 1,
DATE_SUB(NOW(3), INTERVAL (45 - seq) MINUTE), DATE_SUB(NOW(3), INTERVAL (45 - seq) MINUTE)
FROM _seed_pda_single_sku_returns;
DROP TEMPORARY TABLE _seed_pda_single_sku_returns;
COMMIT;
SELECT o.return_no, o.status, o.expected_sku_types, o.expected_quantity, o.received_quantity,
r.receipt_no, r.status AS receipt_status, r.carton_mark,
b.sku_code, b.product_name_zh, b.total_quantity, b.available_quantity, b.carton_quantity
FROM ll_return_order o
JOIN ll_return_receipt r ON r.return_order_id = o.id
JOIN ll_return_inventory_balance b
ON b.customer_id = o.customer_id
AND b.overseas_warehouse_id = o.overseas_warehouse_id
JOIN ll_return_order_item oi
ON oi.return_order_id = o.id
AND oi.sku_code = b.sku_code
WHERE o.id BETWEEN 2097400000000000001 AND 2097400000000000005
ORDER BY o.return_no;