- 新建 admin_pickups 表独立于 rental_orders,不污染订单状态机与财务统计口径 - 提号中/已完成/已取消三态:创建锁定账号,完成时给卖家钱包加可用余额并下架 listing,取消解锁账号 - 完成时 listing 置 completed,复用现有 listingLockedForOwnerMutation 拦截再上架 - 管理端提号管理页(列表/创建/完成/取消/可提号账号搜索)+ 卖家端提号记录页 - 财务仪表盘新增线下提号独立统计块,与正常订单口径分离 - 钱包流水 label、状态标签、菜单入口同步补齐 - 优化卖家服务悬浮菜单为一行四个,尺寸与配色对齐买家服务
33 lines
1.4 KiB
SQL
33 lines
1.4 KiB
SQL
-- +goose Up
|
|
|
|
CREATE TABLE admin_pickups (
|
|
id BIGINT UNSIGNED NOT NULL AUTO_INCREMENT,
|
|
pickup_no VARCHAR(64) NOT NULL COMMENT '提号编号 PK+时间+随机',
|
|
listing_id BIGINT UNSIGNED NOT NULL COMMENT '关联的发布项',
|
|
account_id BIGINT UNSIGNED NOT NULL COMMENT '关联的游戏账号',
|
|
owner_id BIGINT UNSIGNED NOT NULL COMMENT '卖家(号主)',
|
|
admin_id BIGINT UNSIGNED NOT NULL COMMENT '操作管理员',
|
|
platform VARCHAR(32) NOT NULL DEFAULT '' COMMENT '线下交易渠道(微信/QQ/闲鱼等)',
|
|
settle_amount_cent BIGINT NOT NULL DEFAULT 0 COMMENT '完成时结算金额(分)',
|
|
status VARCHAR(20) NOT NULL DEFAULT 'picking_up' COMMENT '状态: picking_up提号中/completed已完成/cancelled已取消',
|
|
remark VARCHAR(255) NOT NULL DEFAULT '' COMMENT '创建备注',
|
|
complete_remark VARCHAR(255) NOT NULL DEFAULT '' COMMENT '完成备注',
|
|
created_at DATETIME NOT NULL,
|
|
completed_at DATETIME NULL,
|
|
cancelled_at DATETIME NULL,
|
|
PRIMARY KEY (id),
|
|
UNIQUE KEY uk_pickup_no (pickup_no),
|
|
KEY idx_listing (listing_id),
|
|
KEY idx_owner (owner_id),
|
|
KEY idx_status (status),
|
|
KEY idx_created (created_at)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='管理员线下提号记录,独立于 rental_orders';
|
|
|
|
INSERT INTO permissions (code, name, resource, action)
|
|
VALUES ('order:pickup', '管理员提号', 'order', 'pickup');
|
|
|
|
-- +goose Down
|
|
|
|
DROP TABLE IF EXISTS admin_pickups;
|
|
DELETE FROM permissions WHERE code = 'order:pickup';
|