Files
sim-server/deploy/sql/agent_withdraw_migration.sql

52 lines
2.7 KiB
MySQL
Raw Normal View History

2026-02-08 16:19:37 +08:00
-- ============================================
-- 代理提现功能数据库迁移
-- 执行日期: 2025-01-XX
-- ============================================
-- 1. 修改 agent 表,增加冻结金额和累计提现字段
ALTER TABLE `agent_wallet`
ADD COLUMN `frozen_amount` decimal(10, 2) NOT NULL DEFAULT '0.00' COMMENT '冻结金额' AFTER `balance`,
ADD COLUMN `total_withdraw` decimal(10, 2) NOT NULL DEFAULT '0.00' COMMENT '累计提现金额' AFTER `frozen_amount`;
-- 2. 创建代理提现记录表(符合项目规范)
CREATE TABLE `agent_withdraw` (
`id` CHAR(36) NOT NULL COMMENT 'UUID主键',
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
`delete_time` datetime DEFAULT NULL COMMENT '删除时间',
`del_state` tinyint NOT NULL DEFAULT '0' COMMENT '删除状态0=正常1=已删除',
`version` bigint NOT NULL DEFAULT '0' COMMENT '版本号',
/* 业务字段开始 */
/* 代理信息 */
`agent_id` CHAR(36) NOT NULL COMMENT '代理ID关联agent表的id',
`agent_mobile` varchar(20) DEFAULT NULL COMMENT '代理手机号(冗余)',
`agent_code` bigint(20) DEFAULT NULL COMMENT '代理编码(冗余)',
/* 提现金额信息 */
`withdraw_amount` decimal(10, 2) NOT NULL COMMENT '提现金额',
`tax_amount` decimal(10, 2) NOT NULL DEFAULT '0.00' COMMENT '税费金额',
`actual_amount` decimal(10, 2) NOT NULL DEFAULT '0.00' COMMENT '实际到账金额(税后)',
`frozen_amount` decimal(10, 2) NOT NULL COMMENT '冻结金额(与提现金额相同)',
/* 银行卡信息 */
`account_name` varchar(100) NOT NULL COMMENT '收款人姓名',
`bank_card_number` varchar(50) NOT NULL COMMENT '银行卡号(明文,仅用于显示)',
`bank_card_number_encrypted` varchar(255) DEFAULT NULL COMMENT '加密的银行卡号',
`bank_branch` varchar(200) DEFAULT NULL COMMENT '开户支行',
/* 审核信息 */
`status` tinyint NOT NULL DEFAULT '0' COMMENT '状态0=待审核1=已通过2=已拒绝',
`audit_user_id` CHAR(36) DEFAULT NULL COMMENT '审核人ID',
`audit_time` datetime DEFAULT NULL COMMENT '审核时间',
`audit_remark` varchar(500) DEFAULT NULL COMMENT '审核备注(拒绝时必填)',
/* 业务字段结束 */
PRIMARY KEY (`id`),
/* 索引定义 */
KEY `idx_agent_id` (`agent_id`) COMMENT '优化代理查询',
KEY `idx_status` (`status`) COMMENT '优化状态筛选',
KEY `idx_create_time` (`create_time`) COMMENT '优化时间排序',
KEY `idx_del_state` (`del_state`) COMMENT '优化删除状态查询'
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='代理提现记录表';