fix: 完善资金充值/提现逻辑

- 添加交易账户余额检查
- 添加用户端订单管理页面
- 更新测试报告
This commit is contained in:
2026-03-23 21:25:37 +08:00
parent c294f66e1c
commit 5c8df495c3
16 changed files with 1014 additions and 347 deletions

View File

@@ -27,14 +27,23 @@ INSERT INTO `cold_wallet` (`name`, `address`, `network`, `is_default`, `status`)
('USDT-TRC20 主钱包', 'TRX1234567890abcdefghijklmnopqrstuvwxyz1234', 'TRC20', 1, 1),
('USDT-ERC20 备用钱包', '0x1234567890abcdef1234567890abcdef12345678', 'ERC20', 0, 1);
-- 为 order_fund 表添加钱包相关字段(如果不存在)
ALTER TABLE `order_fund`
ADD COLUMN IF NOT EXISTS `wallet_id` bigint(20) DEFAULT NULL COMMENT '钱包ID' AFTER `amount`,
ADD COLUMN IF NOT EXISTS `wallet_address` varchar(255) DEFAULT NULL COMMENT '钱包地址' AFTER `wallet_id`,
ADD COLUMN IF NOT EXISTS `pay_time` datetime DEFAULT NULL COMMENT '打款时间' AFTER `remark`,
ADD COLUMN IF NOT EXISTS `confirm_time` datetime DEFAULT NULL COMMENT '确认时间' AFTER `pay_time`,
ADD COLUMN IF NOT EXISTS `withdraw_contact` varchar(100) DEFAULT NULL COMMENT '提现联系方式' AFTER `wallet_address`;
-- 为 order_fund 表添加钱包相关字段
-- 注意:如果字段已存在会报错,可以忽略或手动检查后执行
-- 添加 wallet_id 字段
ALTER TABLE `order_fund` ADD COLUMN `wallet_id` bigint(20) DEFAULT NULL COMMENT '钱包ID' AFTER `amount`;
-- 添加 wallet_address 字段
ALTER TABLE `order_fund` ADD COLUMN `wallet_address` varchar(255) DEFAULT NULL COMMENT '钱包地址' AFTER `wallet_id`;
-- 添加 withdraw_contact 字段
ALTER TABLE `order_fund` ADD COLUMN `withdraw_contact` varchar(100) DEFAULT NULL COMMENT '提现联系方式' AFTER `wallet_address`;
-- 添加 pay_time 字段
ALTER TABLE `order_fund` ADD COLUMN `pay_time` datetime DEFAULT NULL COMMENT '打款时间' AFTER `remark`;
-- 添加 confirm_time 字段
ALTER TABLE `order_fund` ADD COLUMN `confirm_time` datetime DEFAULT NULL COMMENT '确认时间' AFTER `pay_time`;
-- 添加索引
ALTER TABLE `order_fund`
ADD INDEX IF NOT EXISTS `idx_wallet_id` (`wallet_id`);
ALTER TABLE `order_fund` ADD INDEX `idx_wallet_id` (`wallet_id`);

View File

@@ -0,0 +1,28 @@
-- =============================================
-- 补丁脚本:添加冷钱包表(修正版)
-- 版本: V1.2
-- 日期: 2026-03-23
-- =============================================
-- ---------------------------------------------
-- 11. 冷钱包地址表
-- ---------------------------------------------
DROP TABLE IF EXISTS `cold_wallet`;
CREATE TABLE `cold_wallet` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
`name` varchar(50) NOT NULL COMMENT '钱包名称',
`address` varchar(255) NOT NULL COMMENT '钱包地址',
`network` varchar(20) NOT NULL DEFAULT 'TRC20' COMMENT '网络类型: TRC20/ERC20/BEP20等',
`is_default` tinyint(1) NOT NULL DEFAULT '0' COMMENT '是否默认: 0-否 1-是',
`status` tinyint(1) NOT NULL DEFAULT '1' COMMENT '状态: 0-禁用 1-启用',
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`update_time` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
PRIMARY KEY (`id`),
KEY `idx_is_default` (`is_default`),
KEY `idx_status` (`status`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='冷钱包地址表';
-- 插入默认测试钱包地址
INSERT INTO `cold_wallet` (`name`, `address`, `network`, `is_default`, `status`) VALUES
('USDT-TRC20 主钱包', 'TRX1234567890abcdefghijklmnopqrstuvwxyz1234', 'TRC20', 1, 1),
('USDT-ERC20 备用钱包', '0x1234567890abcdef1234567890abcdef12345678', 'ERC20', 0, 1);