95 lines
9.4 KiB
SQL
95 lines
9.4 KiB
SQL
USE jinrong_core;
|
||||
|
|
|
|||
|
|
-- ============================================================================
|
|||
|
|
-- 08-seed-share-lot.sql · 份额批次种子
|
|||
|
|
-- 版本:v1.0(2026-09-10 · T-1 新增)
|
|||
|
|
-- 依据:PRD §4.1 `core_share_lot` + 架构 §5 D8/D18(批次为 FIFO 计费权威源)
|
|||
|
|
-- 生成规则:
|
|||
|
|
-- · 按 core_holding 逐行反推批次,**每个 (customer_id, product_id) 的
|
|||
|
|
-- Σ remain_qty 恒等于 core_holding.qty**(DoD ② 可逐行 SQL 断言)。
|
|||
|
|
-- · 主演示客户 CUST-9527 专门拆多批,用于跨批次 FIFO 与逐批计费演示:
|
|||
|
|
-- PROD-005827 50000 = 30000 + 15000 + 5000(覆盖 ≥365 / 30-180 / <7 三档)
|
|||
|
|
-- PROD-110022 80000 = 50000 + 30000 (覆盖 180-365 / 7-30 两档)
|
|||
|
|
-- PROD-000001 20000 = 20000 (单批,≥365 档)
|
|||
|
|
-- · 其余持仓每行 1 批,confirmed_at 按 D1→D5 循环,使整体覆盖全部 5 档。
|
|||
|
|
-- 日期模板(持有天数以 as_of = 2026-09-04 为参照计算,对应 07 档位表的区间):
|
|||
|
|
-- D1 = 2025-05-01 → 491 天 → [365, ∞) → rate 0.0000
|
|||
|
|
-- D2 = 2026-02-15 → 201 天 → [180, 365) → rate 0.0025
|
|||
|
|
-- D3 = 2026-08-01 → 34 天 → [30, 180) → rate 0.0050
|
|||
|
|
-- D4 = 2026-08-25 → 10 天 → [7, 30) → rate 0.0100
|
|||
|
|
-- D5 = 2026-09-01 → 3 天 → [0, 7) → rate 0.0150
|
|||
|
|
-- 重要说明:静态日期会随运行日期推移而整体后移(今天跑 D5 已是 7-30 档)。
|
|||
|
|
-- 因此 **分档边界单测必须用自建种子(相对 now 生成日期)**,不得依赖本文件;
|
|||
|
|
-- 本文件服务于模拟库人工演示与真库集成冒烟。
|
|||
|
|
-- 其他:nav 取 06-seed-nav.sql 的 2026-09-04 最新净值(模拟库近似,非逐批历史净值);
|
|||
|
|
-- source_trade_id 统一 NULL —— 04/05 两个种子各自独立造数,批次不回溯流水,
|
|||
|
|
-- 真实 TA 的批次由确认流水生成,模拟库不假装有这个链路。
|
|||
|
|
-- ============================================================================
|
|||
|
|
|
|||
|
|
INSERT INTO core_share_lot (lot_id, customer_id, product_id, qty, remain_qty, nav, confirmed_at, source_trade_id) VALUES
|
|||
|
|
-- ---- CUST-9527 主 demo:跨批次专项 ----
|
|||
|
|
('LOT-9527-005827-01', 'CUST-9527', 'PROD-005827', 30000.0000, 30000.0000, 0.9500, '2025-05-01 10:00:00.000', NULL),
|
|||
|
|
('LOT-9527-005827-02', 'CUST-9527', 'PROD-005827', 15000.0000, 15000.0000, 0.9500, '2026-08-01 10:00:00.000', NULL),
|
|||
|
|
('LOT-9527-005827-03', 'CUST-9527', 'PROD-005827', 5000.0000, 5000.0000, 0.9500, '2026-09-01 10:00:00.000', NULL),
|
|||
|
|
('LOT-9527-110022-01', 'CUST-9527', 'PROD-110022', 50000.0000, 50000.0000, 1.0300, '2026-02-15 10:00:00.000', NULL),
|
|||
|
|
('LOT-9527-110022-02', 'CUST-9527', 'PROD-110022', 30000.0000, 30000.0000, 1.0300, '2026-08-25 10:00:00.000', NULL),
|
|||
|
|
('LOT-9527-000001-01', 'CUST-9527', 'PROD-000001', 20000.0000, 20000.0000, 1.0020, '2025-05-01 10:00:00.000', NULL),
|
|||
|
|
-- ---- CUST-1001 ~ 1024(单批,日期循环覆盖 5 档)----
|
|||
|
|
('LOT-1001-110022-01', 'CUST-1001', 'PROD-110022', 30000.0000, 30000.0000, 1.0300, '2025-05-01 10:00:00.000', NULL),
|
|||
|
|
('LOT-1001-000001-01', 'CUST-1001', 'PROD-000001', 50000.0000, 50000.0000, 1.0020, '2026-02-15 10:00:00.000', NULL),
|
|||
|
|
('LOT-1002-005828-01', 'CUST-1002', 'PROD-005828', 40000.0000, 40000.0000, 1.0200, '2026-08-01 10:00:00.000', NULL),
|
|||
|
|
('LOT-1002-110023-01', 'CUST-1002', 'PROD-110023', 25000.0000, 25000.0000, 1.0200, '2026-08-25 10:00:00.000', NULL),
|
|||
|
|
('LOT-1003-110022-01', 'CUST-1003', 'PROD-110022', 120000.0000, 120000.0000, 1.0300, '2026-09-01 10:00:00.000', NULL),
|
|||
|
|
('LOT-1003-005828-01', 'CUST-1003', 'PROD-005828', 30000.0000, 30000.0000, 1.0200, '2025-05-01 10:00:00.000', NULL),
|
|||
|
|
('LOT-1004-161725-01', 'CUST-1004', 'PROD-161725', 60000.0000, 60000.0000, 1.0500, '2026-02-15 10:00:00.000', NULL),
|
|||
|
|
('LOT-1004-510300-01', 'CUST-1004', 'PROD-510300', 40000.0000, 40000.0000, 1.0300, '2026-08-01 10:00:00.000', NULL),
|
|||
|
|
('LOT-1005-005827-01', 'CUST-1005', 'PROD-005827', 35000.0000, 35000.0000, 0.9500, '2026-08-25 10:00:00.000', NULL),
|
|||
|
|
('LOT-1005-510300-01', 'CUST-1005', 'PROD-510300', 15000.0000, 15000.0000, 1.0300, '2026-09-01 10:00:00.000', NULL),
|
|||
|
|
('LOT-1006-110023-01', 'CUST-1006', 'PROD-110023', 90000.0000, 90000.0000, 1.0200, '2025-05-01 10:00:00.000', NULL),
|
|||
|
|
('LOT-1006-000002-01', 'CUST-1006', 'PROD-000002', 40000.0000, 40000.0000, 1.0050, '2026-02-15 10:00:00.000', NULL),
|
|||
|
|
('LOT-1007-005828-01', 'CUST-1007', 'PROD-005828', 45000.0000, 45000.0000, 1.0200, '2026-08-01 10:00:00.000', NULL),
|
|||
|
|
('LOT-1008-161726-01', 'CUST-1008', 'PROD-161726', 20000.0000, 20000.0000, 1.0500, '2026-08-25 10:00:00.000', NULL),
|
|||
|
|
('LOT-1008-510500-01', 'CUST-1008', 'PROD-510500', 10000.0000, 10000.0000, 0.9800, '2026-09-01 10:00:00.000', NULL),
|
|||
|
|
('LOT-1009-000001-01', 'CUST-1009', 'PROD-000001', 150000.0000, 150000.0000, 1.0020, '2025-05-01 10:00:00.000', NULL),
|
|||
|
|
('LOT-1009-110022-01', 'CUST-1009', 'PROD-110022', 80000.0000, 80000.0000, 1.0300, '2026-02-15 10:00:00.000', NULL),
|
|||
|
|
('LOT-1010-003095-01', 'CUST-1010', 'PROD-003095', 55000.0000, 55000.0000, 0.9500, '2026-08-01 10:00:00.000', NULL),
|
|||
|
|
('LOT-1010-005827-01', 'CUST-1010', 'PROD-005827', 30000.0000, 30000.0000, 0.9500, '2026-08-25 10:00:00.000', NULL),
|
|||
|
|
('LOT-1011-161725-01', 'CUST-1011', 'PROD-161725', 70000.0000, 70000.0000, 1.0500, '2026-09-01 10:00:00.000', NULL),
|
|||
|
|
('LOT-1012-510300-01', 'CUST-1012', 'PROD-510300', 65000.0000, 65000.0000, 1.0300, '2025-05-01 10:00:00.000', NULL),
|
|||
|
|
('LOT-1012-110023-01', 'CUST-1012', 'PROD-110023', 35000.0000, 35000.0000, 1.0200, '2026-02-15 10:00:00.000', NULL),
|
|||
|
|
('LOT-1013-005828-01', 'CUST-1013', 'PROD-005828', 28000.0000, 28000.0000, 1.0200, '2026-08-01 10:00:00.000', NULL),
|
|||
|
|
('LOT-1014-510500-01', 'CUST-1014', 'PROD-510500', 90000.0000, 90000.0000, 0.9800, '2026-08-25 10:00:00.000', NULL),
|
|||
|
|
('LOT-1014-161726-01', 'CUST-1014', 'PROD-161726', 40000.0000, 40000.0000, 1.0500, '2026-09-01 10:00:00.000', NULL),
|
|||
|
|
('LOT-1015-110022-01', 'CUST-1015', 'PROD-110022', 100000.0000, 100000.0000, 1.0300, '2025-05-01 10:00:00.000', NULL),
|
|||
|
|
('LOT-1016-005827-01', 'CUST-1016', 'PROD-005827', 42000.0000, 42000.0000, 0.9500, '2026-02-15 10:00:00.000', NULL),
|
|||
|
|
('LOT-1016-003095-01', 'CUST-1016', 'PROD-003095', 18000.0000, 18000.0000, 0.9500, '2026-08-01 10:00:00.000', NULL),
|
|||
|
|
('LOT-1017-510300-01', 'CUST-1017', 'PROD-510300', 32000.0000, 32000.0000, 1.0300, '2026-08-25 10:00:00.000', NULL),
|
|||
|
|
('LOT-1018-000001-01', 'CUST-1018', 'PROD-000001', 200000.0000, 200000.0000, 1.0020, '2026-09-01 10:00:00.000', NULL),
|
|||
|
|
('LOT-1019-110023-01', 'CUST-1019', 'PROD-110023', 48000.0000, 48000.0000, 1.0200, '2025-05-01 10:00:00.000', NULL),
|
|||
|
|
('LOT-1019-005828-01', 'CUST-1019', 'PROD-005828', 22000.0000, 22000.0000, 1.0200, '2026-02-15 10:00:00.000', NULL),
|
|||
|
|
('LOT-1020-161725-01', 'CUST-1020', 'PROD-161725', 85000.0000, 85000.0000, 1.0500, '2026-08-01 10:00:00.000', NULL),
|
|||
|
|
('LOT-1020-XYZ999-01', 'CUST-1020', 'PROD-XYZ999', 15000.0000, 15000.0000, 0.9000, '2026-08-25 10:00:00.000', NULL),
|
|||
|
|
('LOT-1021-005827-01', 'CUST-1021', 'PROD-005827', 15000.0000, 15000.0000, 0.9500, '2026-09-01 10:00:00.000', NULL),
|
|||
|
|
('LOT-1022-510300-01', 'CUST-1022', 'PROD-510300', 72000.0000, 72000.0000, 1.0300, '2025-05-01 10:00:00.000', NULL),
|
|||
|
|
('LOT-1022-110022-01', 'CUST-1022', 'PROD-110022', 48000.0000, 48000.0000, 1.0300, '2026-02-15 10:00:00.000', NULL),
|
|||
|
|
('LOT-1023-005828-01', 'CUST-1023', 'PROD-005828', 38000.0000, 38000.0000, 1.0200, '2026-08-01 10:00:00.000', NULL),
|
|||
|
|
('LOT-1024-161726-01', 'CUST-1024', 'PROD-161726', 95000.0000, 95000.0000, 1.0500, '2026-08-25 10:00:00.000', NULL),
|
|||
|
|
-- ---- CUST-3001 / 4001 / 4002(单批)----
|
|||
|
|
('LOT-3001-510300-01', 'CUST-3001', 'PROD-510300', 200000.0000, 200000.0000, 1.0300, '2026-09-01 10:00:00.000', NULL),
|
|||
|
|
('LOT-3001-005827-01', 'CUST-3001', 'PROD-005827', 150000.0000, 150000.0000, 0.9500, '2025-05-01 10:00:00.000', NULL),
|
|||
|
|
('LOT-4001-XYZ999-01', 'CUST-4001', 'PROD-XYZ999', 80000.0000, 80000.0000, 0.9000, '2026-02-15 10:00:00.000', NULL),
|
|||
|
|
('LOT-4001-161725-01', 'CUST-4001', 'PROD-161725', 50000.0000, 50000.0000, 1.0500, '2026-08-01 10:00:00.000', NULL),
|
|||
|
|
('LOT-4002-161725-01', 'CUST-4002', 'PROD-161725', 10000.0000, 10000.0000, 1.0500, '2026-08-25 10:00:00.000', NULL),
|
|||
|
|
-- ---- 手册示范客户 CUST-DEMO-A ~ E(单批)----
|
|||
|
|
('LOT-DEMOA-510300-01', 'CUST-DEMO-A', 'PROD-510300', 35000.0000, 35000.0000, 1.0300, '2026-09-01 10:00:00.000', NULL),
|
|||
|
|
('LOT-DEMOA-510500-01', 'CUST-DEMO-A', 'PROD-510500', 25000.0000, 25000.0000, 0.9800, '2025-05-01 10:00:00.000', NULL),
|
|||
|
|
('LOT-DEMOA-000001-01', 'CUST-DEMO-A', 'PROD-000001', 10000.0000, 10000.0000, 1.0020, '2026-02-15 10:00:00.000', NULL),
|
|||
|
|
('LOT-DEMOB-161725-01', 'CUST-DEMO-B', 'PROD-161725', 500000.0000, 500000.0000, 1.0500, '2026-08-01 10:00:00.000', NULL),
|
|||
|
|
('LOT-DEMOB-PRIV01-01', 'CUST-DEMO-B', 'PROD-PRIV01', 2500000.0000, 2500000.0000, 1.0800, '2026-08-25 10:00:00.000', NULL),
|
|||
|
|
('LOT-DEMOC-110022-01', 'CUST-DEMO-C', 'PROD-110022', 400000.0000, 400000.0000, 1.0300, '2026-09-01 10:00:00.000', NULL),
|
|||
|
|
('LOT-DEMOC-WMG001-01', 'CUST-DEMO-C', 'PROD-WMG001', 200000.0000, 200000.0000, 1.0150, '2025-05-01 10:00:00.000', NULL),
|
|||
|
|
('LOT-DEMOD-005827-01', 'CUST-DEMO-D', 'PROD-005827', 300000.0000, 300000.0000, 0.9500, '2026-02-15 10:00:00.000', NULL),
|
|||
|
|
('LOT-DEMOD-510300-01', 'CUST-DEMO-D', 'PROD-510300', 150000.0000, 150000.0000, 1.0300, '2026-08-01 10:00:00.000', NULL),
|
|||
|
|
('LOT-DEMOE-161725-01', 'CUST-DEMO-E', 'PROD-161725', 120000.0000, 120000.0000, 1.0500, '2026-08-25 10:00:00.000', NULL),
|
|||
|
|
('LOT-DEMOE-510500-01', 'CUST-DEMO-E', 'PROD-510500', 80000.0000, 80000.0000, 0.9800, '2026-09-01 10:00:00.000', NULL);
|