first commit

This commit is contained in:
Mrx
2026-01-30 15:56:38 +08:00
commit 9227e845cb
609 changed files with 64736 additions and 0 deletions

View File

@@ -0,0 +1,33 @@
-- 银行卡提现功能数据库迁移脚本
-- 执行时间:请根据实际情况填写
-- 说明:为 agent_withdrawal 表添加银行卡提现相关字段
-- 1. 添加提现类型字段1-支付宝2-银行卡)
ALTER TABLE `agent_withdrawal`
ADD COLUMN `withdraw_type` TINYINT NOT NULL DEFAULT 1 COMMENT '提现类型:1-支付宝,2-银行卡' AFTER `agent_id`;
-- 2. 添加银行卡号字段
ALTER TABLE `agent_withdrawal`
ADD COLUMN `bank_card_no` VARCHAR(50) DEFAULT NULL COMMENT '银行卡号' AFTER `payeeAccount`;
-- 3. 添加开户支行字段
ALTER TABLE `agent_withdrawal`
ADD COLUMN `bank_name` VARCHAR(100) DEFAULT NULL COMMENT '开户支行' AFTER `bank_card_no`;
-- 4. 添加收款人姓名字段(银行卡提现需要,支付宝提现已有但字段名不同)
ALTER TABLE `agent_withdrawal`
ADD COLUMN `payee_name` VARCHAR(50) DEFAULT NULL COMMENT '收款人姓名' AFTER `bank_name`;
-- 5. 为银行卡号字段添加索引(可选,用于查询优化)
ALTER TABLE `agent_withdrawal`
ADD INDEX `idx_withdraw_type` (`withdraw_type`);
-- 6. 更新现有记录的 withdraw_type 为 1支付宝
UPDATE `agent_withdrawal` SET `withdraw_type` = 1 WHERE `withdraw_type` IS NULL OR `withdraw_type` = 0;
-- 说明:
-- 1. withdraw_type: 1=支付宝提现默认2=银行卡提现
-- 2. 现有支付宝提现记录的 withdraw_type 将自动设置为 1
-- 3. bank_card_no、bank_name、payee_name 字段允许为 NULL支付宝提现不需要这些字段
-- 4. 银行卡提现时payee_name 必须与实名认证的姓名一致

View File

@@ -0,0 +1,42 @@
-- 查询用户记录表
-- 用途:记录用户查询时输入的姓名、身份证、手机号,以及支付订单号等,用于通过查询条件追溯订单信息
-- 执行说明:在目标数据库执行此脚本创建表
--
-- 使用说明(需在业务代码中接入):
-- 1. 用户提交查询时queryservicelogic.CacheData 之后INSERT 记录 name, id_card, mobile已 AES-ECB+Base64 加密), product, query_no, user_id, agent_identifier
-- 2. 用户发起支付并创建 order 时paymentlogic.QueryOrderPayment 中 Insert order 之后UPDATE 本表 SET order_id WHERE query_no=outTradeNo
-- 3. 支付回调成功更新 order 后alipaycallbacklogic/wechatpaycallbacklogicUPDATE 本表 SET platform_order_id WHERE query_no=orderNo
--
-- 敏感字段加密name、id_card、mobile 使用 pkg/lzkit/crypto 的 AES-ECB+Base64 加密后入库,密钥为 config.Encrypt.SecretKeyhex
-- 解密:姓名 crypto.AesEcbDecrypt(rec.Name, key);身份证 crypto.DecryptIDCard(rec.IdCard, key);手机 crypto.DecryptMobile(rec.Mobile, secretKey)。
CREATE TABLE `query_user_record` (
`id` bigint NOT NULL AUTO_INCREMENT,
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`delete_time` datetime DEFAULT NULL COMMENT '删除时间',
`del_state` tinyint NOT NULL DEFAULT '0',
`version` bigint NOT NULL DEFAULT '0' COMMENT '版本号',
/* 业务字段 - 用户查询输入name、id_card、mobile 为 AES-ECB+Base64 密文) */
`user_id` bigint NOT NULL DEFAULT '0' COMMENT '用户ID',
`name` varchar(256) NOT NULL DEFAULT '' COMMENT '姓名密文AES-ECB+Base64',
`id_card` varchar(128) NOT NULL DEFAULT '' COMMENT '身份证号密文AES-ECB+Base64',
`mobile` varchar(128) NOT NULL DEFAULT '' COMMENT '手机号密文AES-ECB+Base64',
`product` varchar(50) NOT NULL DEFAULT '' COMMENT '产品类型,如 marriage/homeservice/riskassessment 等',
/* 关联字段 - 查询单号与订单 */
`query_no` varchar(64) NOT NULL DEFAULT '' COMMENT '查询单号(与 order.order_no 一致,如 Q_xxx用户提交查询时生成',
`order_id` bigint NOT NULL DEFAULT '0' COMMENT '订单ID关联 order 表,用户发起支付并创建订单后写入',
`platform_order_id` varchar(64) DEFAULT NULL COMMENT '支付平台订单号(支付宝/微信),支付成功后由回调写入',
`agent_identifier` varchar(255) DEFAULT NULL COMMENT '代理标识,代理渠道时有值',
PRIMARY KEY (`id`),
KEY `idx_user_id` (`user_id`),
KEY `idx_id_card` (`id_card`),
KEY `idx_mobile` (`mobile`),
KEY `idx_query_no` (`query_no`),
KEY `idx_order_id` (`order_id`),
KEY `idx_platform_order_id` (`platform_order_id`),
KEY `idx_create_time` (`create_time`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='查询用户记录表:姓名、身份证、手机号、支付订单号等,用于通过查询信息追溯订单';

20
deploy/sql/template.sql Normal file
View File

@@ -0,0 +1,20 @@
CREATE TABLE `` (
`id` bigint NOT NULL AUTO_INCREMENT,
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`delete_time` datetime DEFAULT NULL COMMENT '删除时间',
`del_state` tinyint NOT NULL DEFAULT '0',
`version` bigint NOT NULL DEFAULT '0' COMMENT '版本号',
/* 业务字段开始 */
`1` [] [DEFAULT ] [COMMENT '字段说明'],
`2` [] [DEFAULT ] [COMMENT '字段说明'],
/* 关联字段 - 软关联 */
`id` bigint [NOT NULL] [DEFAULT '0'] COMMENT '关联到XX表的id',
/* 业务字段结束 */
PRIMARY KEY (`id`),
/* 索引定义 */
UNIQUE KEY `` (``),
KEY `idx_关联字段` (`id`) COMMENT '优化关联查询'
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='表说明';