统一财务统计与线下提号出款口径
This commit is contained in:
@@ -27,7 +27,9 @@ func TestDailyPaidOrdersUsePaidAtAndIncludeCreatedPickups(t *testing.T) {
|
||||
}
|
||||
if err := db.Exec(`CREATE TABLE admin_pickups (
|
||||
id INTEGER PRIMARY KEY,
|
||||
created_at DATETIME NOT NULL
|
||||
status TEXT NOT NULL,
|
||||
created_at DATETIME NOT NULL,
|
||||
completed_at DATETIME NULL
|
||||
)`).Error; err != nil {
|
||||
t.Fatalf("创建提号表失败: %v", err)
|
||||
}
|
||||
@@ -49,12 +51,12 @@ func TestDailyPaidOrdersUsePaidAtAndIncludeCreatedPickups(t *testing.T) {
|
||||
}
|
||||
}
|
||||
for _, row := range [][]any{
|
||||
{1, day(2)},
|
||||
{2, day(2)},
|
||||
{3, day(3)},
|
||||
{4, day(1)},
|
||||
{1, "completed", day(2), day(2)},
|
||||
{2, "picking_up", day(2), nil},
|
||||
{3, "completed", day(3), day(3)},
|
||||
{4, "cancelled", day(1), nil},
|
||||
} {
|
||||
if err := db.Exec(`INSERT INTO admin_pickups (id, created_at) VALUES (?, ?)`, row...).Error; err != nil {
|
||||
if err := db.Exec(`INSERT INTO admin_pickups (id, status, created_at, completed_at) VALUES (?, ?, ?, ?)`, row...).Error; err != nil {
|
||||
t.Fatalf("写入提号记录失败: %v", err)
|
||||
}
|
||||
}
|
||||
@@ -75,8 +77,8 @@ func TestDailyPaidOrdersUsePaidAtAndIncludeCreatedPickups(t *testing.T) {
|
||||
for _, row := range result {
|
||||
counts[row.Date] = row.PaidOrderCount
|
||||
}
|
||||
if counts["2026-08-02"] != 3 || counts["2026-08-03"] != 2 {
|
||||
t.Fatalf("每日已付款订单 = %#v, want 8月2日为3、8月3日为2", counts)
|
||||
if counts["2026-08-02"] != 2 || counts["2026-08-03"] != 2 {
|
||||
t.Fatalf("每日已付款订单 = %#v, want 8月2日为2、8月3日为2", counts)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -194,7 +196,9 @@ func TestPickupSummaryKeepsOriginalAndAdjustmentOnTheirOwnDates(t *testing.T) {
|
||||
status TEXT NOT NULL,
|
||||
settle_amount_cent INTEGER NOT NULL,
|
||||
profit_amount_cent INTEGER NOT NULL,
|
||||
completed_at DATETIME NULL
|
||||
completed_at DATETIME NULL,
|
||||
settlement_mode TEXT NOT NULL DEFAULT 'owner_wallet',
|
||||
offline_settlement_status TEXT NOT NULL DEFAULT 'none'
|
||||
)`).Error; err != nil {
|
||||
t.Fatalf("创建提号表失败: %v", err)
|
||||
}
|
||||
@@ -203,7 +207,9 @@ func TestPickupSummaryKeepsOriginalAndAdjustmentOnTheirOwnDates(t *testing.T) {
|
||||
pickup_id INTEGER NOT NULL,
|
||||
settle_delta_cent INTEGER NOT NULL,
|
||||
profit_delta_cent INTEGER NOT NULL,
|
||||
created_at DATETIME NOT NULL
|
||||
created_at DATETIME NOT NULL,
|
||||
settlement_mode TEXT NOT NULL DEFAULT 'owner_wallet',
|
||||
status TEXT NOT NULL DEFAULT 'settled'
|
||||
)`).Error; err != nil {
|
||||
t.Fatalf("创建提号调整表失败: %v", err)
|
||||
}
|
||||
@@ -267,11 +273,13 @@ func TestSummaryReturnsNormalOrderCountAndScopedExceptionCount(t *testing.T) {
|
||||
)`,
|
||||
`CREATE TABLE admin_pickups (
|
||||
id INTEGER PRIMARY KEY, status TEXT NOT NULL, settle_amount_cent INTEGER NOT NULL,
|
||||
profit_amount_cent INTEGER NOT NULL, completed_at DATETIME NULL
|
||||
profit_amount_cent INTEGER NOT NULL, completed_at DATETIME NULL,
|
||||
settlement_mode TEXT NOT NULL DEFAULT 'owner_wallet', offline_settlement_status TEXT NOT NULL DEFAULT 'none'
|
||||
)`,
|
||||
`CREATE TABLE admin_pickup_financial_adjustments (
|
||||
id INTEGER PRIMARY KEY, pickup_id INTEGER NOT NULL, settle_delta_cent INTEGER NOT NULL,
|
||||
profit_delta_cent INTEGER NOT NULL, created_at DATETIME NOT NULL
|
||||
profit_delta_cent INTEGER NOT NULL, created_at DATETIME NOT NULL,
|
||||
settlement_mode TEXT NOT NULL DEFAULT 'owner_wallet', status TEXT NOT NULL DEFAULT 'settled'
|
||||
)`,
|
||||
} {
|
||||
if err := db.Exec(statement).Error; err != nil {
|
||||
|
||||
Reference in New Issue
Block a user