-- ============================================
-- 代理提现表 - 添加银行卡提现支持
-- ============================================
-- 说明：为 agent_withdrawal 表添加提现方式字段和银行卡相关字段
-- 执行时间：2024-XX-XX
-- ============================================

-- 1. 添加提现方式字段（1=支付宝，2=银行卡）
ALTER TABLE `agent_withdrawal`
ADD COLUMN `withdrawal_type` tinyint NOT NULL DEFAULT 1 COMMENT '提现方式：1=支付宝，2=银行卡' AFTER `agent_id`;

-- 2. 添加银行卡号字段（银行卡提现时使用）
ALTER TABLE `agent_withdrawal`
ADD COLUMN `bank_card_no` varchar(100) DEFAULT NULL COMMENT '银行卡号（银行卡提现时使用）' AFTER `payee_account`;

-- 3. 添加开户行名称字段（银行卡提现时使用）
ALTER TABLE `agent_withdrawal`
ADD COLUMN `bank_name` varchar(100) DEFAULT NULL COMMENT '开户行名称（银行卡提现时使用）' AFTER `bank_card_no`;

-- 4. 为提现方式字段添加索引（用于按提现方式查询）
ALTER TABLE `agent_withdrawal`
ADD INDEX `idx_withdrawal_type` (`withdrawal_type`);

-- 5. 为提现方式和状态添加复合索引（用于后台审核查询）
ALTER TABLE `agent_withdrawal`
ADD INDEX `idx_type_status` (`withdrawal_type`, `status`);



-- ============================================
-- 说明：
-- 1. withdrawal_type 默认值为 1（支付宝），兼容历史数据
-- 2. bank_card_no 和 bank_name 为可选字段，支付宝提现时为空
-- 3. 对于支付宝提现，payee_account 存储支付宝账号
-- 4. 对于银行卡提现，payee_account 可以存储银行卡号（与 bank_card_no 保持一致），或留空
-- ============================================