Appearance
支付模块数据库详细版
支付模块把业务订单和支付订单彻底解耦,支撑多应用、多渠道、多次提交、退款和异步回调重试。
模块关系总览
核心关系链:pay_app -> pay_channel、pay_order -> pay_order_extension、pay_order -> pay_refund、pay_notify_task -> pay_notify_log、pay_wallet -> pay_wallet_transaction。
表清单
pay_app(支付应用信息)pay_channel(支付渠道)pay_demo_order(示例订单)pay_demo_transfer(示例业务转账订单)pay_notify_log(支付通知 App 的日志)pay_notify_task(商户支付、退款等的通知)pay_order(支付订单)pay_order_extension(支付订单)pay_refund(退款订单)pay_transfer(转账单表)pay_wallet(会员钱包表)pay_wallet_recharge(会员钱包充值)pay_wallet_recharge_package(充值套餐表)pay_wallet_transaction(会员钱包流水表)
pay_app
- 表中文名:支付应用信息
- 表类型:主表
- 来源脚本:
sql/mysql/pay-2024-08.sql - 代码入口:
PayAppDO,路径/yudao-module-pay/src/main/java/cn/iocoder/yudao/module/pay/dal/dataobject/app/PayAppDO.java
设计作用
这张表用于承载当前模块中的一个核心对象或过程节点,表结构需要结合上下游表共同理解。
关联关系
tenant_id:用于租户数据隔离。
字段结构
| 字段名 | 类型 | 可空 | 中文注释 | 说明 |
|---|---|---|---|---|
id | bigint NOT NULL AUTO_INCREMENT | NOT NULL | 应用编号 | 主键,唯一标识当前记录。 |
app_key | varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL | NOT NULL | 应用标识 | 业务字段,需结合具体模块功能理解。 |
name | varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL | NOT NULL | 应用名 | 名称字段,通常是业务对象的可读展示名。 |
status | tinyint NOT NULL | NOT NULL | 开启状态 | 状态字段,通常配合字典或枚举使用。 |
remark | varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL | NULL | 备注 | 备注信息,补充非结构化说明。 |
order_notify_url | varchar(1024) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL | NOT NULL | 支付结果的回调地址 | URL 地址字段,通常保存文件、回调或页面跳转地址。 |
refund_notify_url | varchar(1024) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL | NOT NULL | 退款结果的回调地址 | URL 地址字段,通常保存文件、回调或页面跳转地址。 |
transfer_notify_url | varchar(1024) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL | NULL | 转账结果的回调地址 | URL 地址字段,通常保存文件、回调或页面跳转地址。 |
creator | varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT '' | NULL | 创建者 | 创建人。 |
create_time | datetime NOT NULL DEFAULT CURRENT_TIMESTAMP | NOT NULL | 创建时间 | 创建时间。 |
updater | varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT '' | NULL | 更新者 | 更新人。 |
update_time | datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP | NOT NULL | 更新时间 | 更新时间。 |
deleted | bit(1) NOT NULL DEFAULT b'0' | NOT NULL | 是否删除 | 逻辑删除标记。 |
tenant_id | bigint NOT NULL DEFAULT 0 | NOT NULL | 租户编号 | 租户编号,用于多租户数据隔离。 |
拆表原因
这张表是当前业务域的核心实体,通常会被其它子表、日志表或关联表引用。
pay_channel
- 表中文名:支付渠道
- 表类型:主表
- 来源脚本:
sql/mysql/pay-2024-08.sql - 代码入口:
PayChannelDO,路径/yudao-module-pay/src/main/java/cn/iocoder/yudao/module/pay/dal/dataobject/channel/PayChannelDO.java
设计作用
这张表用于承载当前模块中的一个核心对象或过程节点,表结构需要结合上下游表共同理解。
关联关系
app_id:关联应用主表。tenant_id:用于租户数据隔离。
字段结构
| 字段名 | 类型 | 可空 | 中文注释 | 说明 |
|---|---|---|---|---|
id | bigint NOT NULL AUTO_INCREMENT | NOT NULL | 商户编号 | 主键,唯一标识当前记录。 |
code | varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL | NOT NULL | 渠道编码 | 编码字段,常作为系统内业务唯一标识。 |
status | tinyint NOT NULL | NOT NULL | 开启状态 | 状态字段,通常配合字典或枚举使用。 |
remark | varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL | NULL | 备注 | 备注信息,补充非结构化说明。 |
fee_rate | double NOT NULL DEFAULT 0 | NOT NULL | 渠道费率,单位:百分比 | 业务字段,需结合具体模块功能理解。 |
app_id | bigint NOT NULL | NOT NULL | 应用编号 | 应用编号,常见于支付、公众号等模块。 |
config | varchar(15000) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL | NOT NULL | 支付渠道配置 | 业务字段,需结合具体模块功能理解。 |
creator | varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT '' | NULL | 创建者 | 创建人。 |
create_time | datetime NOT NULL DEFAULT CURRENT_TIMESTAMP | NOT NULL | 创建时间 | 创建时间。 |
updater | varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT '' | NULL | 更新者 | 更新人。 |
update_time | datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP | NOT NULL | 更新时间 | 更新时间。 |
deleted | bit(1) NOT NULL DEFAULT b'0' | NOT NULL | 是否删除 | 逻辑删除标记。 |
tenant_id | bigint NOT NULL DEFAULT 0 | NOT NULL | 租户编号 | 租户编号,用于多租户数据隔离。 |
拆表原因
这张表是当前业务域的核心实体,通常会被其它子表、日志表或关联表引用。
pay_demo_order
- 表中文名:示例订单
- 表类型:主表
- 来源脚本:
sql/mysql/pay-2024-08.sql - 代码入口:
PayDemoOrderDO,路径/yudao-module-pay/src/main/java/cn/iocoder/yudao/module/pay/dal/dataobject/demo/PayDemoOrderDO.java
设计作用
这张表用于承载当前模块中的一个核心对象或过程节点,表结构需要结合上下游表共同理解。
关联关系
user_id:关联用户主表,具体是后台用户还是会员用户要结合模块与user_type判断。spu_id:关联product_spu。tenant_id:用于租户数据隔离。
字段结构
| 字段名 | 类型 | 可空 | 中文注释 | 说明 |
|---|---|---|---|---|
id | bigint NOT NULL AUTO_INCREMENT | NOT NULL | 订单编号 | 主键,唯一标识当前记录。 |
user_id | bigint UNSIGNED NOT NULL | NOT NULL | 用户编号 | 用户编号,具体指向后台用户或会员用户要看模块与 user_type。 |
spu_id | bigint NOT NULL | NOT NULL | 商品编号 | SPU 编号,对应商品公共信息。 |
spu_name | varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL | NOT NULL | 商品名字 | 业务字段,需结合具体模块功能理解。 |
price | int NOT NULL | NOT NULL | 价格,单位:分 | 金额字段,通常需要结合模块约定确认单位(多数交易场景为分)。 |
pay_status | bit(1) NOT NULL DEFAULT b'0' | NOT NULL | 是否已支付:[0:未支付 1:已经支付过] | 业务状态字段,通常对应枚举或状态机。 |
pay_order_id | bigint NULL DEFAULT NULL | NULL | 支付订单编号 | 外键语义字段,用于关联其它主表,但项目整体以应用层维护关系为主。 |
pay_channel_code | varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL | NULL | 支付成功的支付渠道 | 业务字段,需结合具体模块功能理解。 |
pay_time | datetime NULL DEFAULT NULL | NULL | 订单支付时间 | 时间字段,用于记录业务发生时点或状态变更时间。 |
pay_refund_id | bigint NULL DEFAULT NULL | NULL | 退款订单编号 | 外键语义字段,用于关联其它主表,但项目整体以应用层维护关系为主。 |
refund_price | int NOT NULL DEFAULT 0 | NOT NULL | 退款金额,单位:分 | 金额字段,通常需要结合模块约定确认单位(多数交易场景为分)。 |
refund_time | datetime NULL DEFAULT NULL | NULL | 退款时间 | 时间字段,用于记录业务发生时点或状态变更时间。 |
creator | varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT '' | NULL | 创建者 | 创建人。 |
create_time | datetime NOT NULL DEFAULT CURRENT_TIMESTAMP | NOT NULL | 创建时间 | 创建时间。 |
updater | varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT '' | NULL | 更新者 | 更新人。 |
update_time | datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP | NOT NULL | 更新时间 | 更新时间。 |
deleted | bit(1) NOT NULL DEFAULT b'0' | NOT NULL | 是否删除 | 逻辑删除标记。 |
tenant_id | bigint NOT NULL DEFAULT 0 | NOT NULL | 租户编号 | 租户编号,用于多租户数据隔离。 |
拆表原因
这张表是当前业务域的核心实体,通常会被其它子表、日志表或关联表引用。
pay_demo_transfer
- 表中文名:示例业务转账订单
- 表类型:主表
- 来源脚本:
sql/mysql/pay-2024-08.sql - 代码入口:当前扫描未定位到对应 DO,可能是测试表、示例表或仓库版本差异。
设计作用
这张表用于承载当前模块中的一个核心对象或过程节点,表结构需要结合上下游表共同理解。
关联关系
app_id:关联应用主表。tenant_id:用于租户数据隔离。
字段结构
| 字段名 | 类型 | 可空 | 中文注释 | 说明 |
|---|---|---|---|---|
id | bigint NOT NULL AUTO_INCREMENT | NOT NULL | 订单编号 | 主键,唯一标识当前记录。 |
app_id | bigint NOT NULL | NOT NULL | 应用编号 | 应用编号,常见于支付、公众号等模块。 |
type | int NOT NULL | NOT NULL | 转账类型 | 业务字段,需结合具体模块功能理解。 |
price | int NOT NULL | NOT NULL | 转账金额,单位:分 | 金额字段,通常需要结合模块约定确认单位(多数交易场景为分)。 |
user_name | varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL | NULL | 收款人姓名 | 业务字段,需结合具体模块功能理解。 |
alipay_logon_id | varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL | NULL | 支付宝登录号 | 外键语义字段,用于关联其它主表,但项目整体以应用层维护关系为主。 |
openid | varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL | NULL | 微信 openId | 业务字段,需结合具体模块功能理解。 |
transfer_status | tinyint NOT NULL DEFAULT 0 | NOT NULL | 转账状态 | 业务状态字段,通常对应枚举或状态机。 |
pay_transfer_id | bigint NULL DEFAULT NULL | NULL | 转账订单编号 | 外键语义字段,用于关联其它主表,但项目整体以应用层维护关系为主。 |
pay_channel_code | varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL | NULL | 转账支付成功渠道 | 业务字段,需结合具体模块功能理解。 |
transfer_time | datetime NULL DEFAULT NULL | NULL | 转账支付时间 | 时间字段,用于记录业务发生时点或状态变更时间。 |
creator | varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT '' | NULL | 创建者 | 创建人。 |
create_time | datetime NOT NULL DEFAULT CURRENT_TIMESTAMP | NOT NULL | 创建时间 | 创建时间。 |
updater | varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT '' | NULL | 更新者 | 更新人。 |
update_time | datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP | NOT NULL | 更新时间 | 更新时间。 |
deleted | bit(1) NOT NULL DEFAULT b'0' | NOT NULL | 是否删除 | 逻辑删除标记。 |
tenant_id | bigint NOT NULL DEFAULT 0 | NOT NULL | 租户编号 | 租户编号,用于多租户数据隔离。 |
拆表原因
这张表是当前业务域的核心实体,通常会被其它子表、日志表或关联表引用。
pay_notify_log
- 表中文名:支付通知 App 的日志
- 表类型:日志表
- 来源脚本:
sql/mysql/pay-2024-08.sql - 代码入口:
PayNotifyLogDO,路径/yudao-module-pay/src/main/java/cn/iocoder/yudao/module/pay/dal/dataobject/notify/PayNotifyLogDO.java
设计作用
这张表用于承载当前模块中的一个核心对象或过程节点,表结构需要结合上下游表共同理解。
关联关系
tenant_id:用于租户数据隔离。
字段结构
| 字段名 | 类型 | 可空 | 中文注释 | 说明 |
|---|---|---|---|---|
id | bigint NOT NULL AUTO_INCREMENT | NOT NULL | 日志编号 | 主键,唯一标识当前记录。 |
task_id | bigint NOT NULL | NOT NULL | 通知任务编号 | 外键语义字段,用于关联其它主表,但项目整体以应用层维护关系为主。 |
notify_times | tinyint NOT NULL | NOT NULL | 第几次被通知 | 业务字段,需结合具体模块功能理解。 |
response | varchar(2048) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL | NOT NULL | 请求参数 | 业务字段,需结合具体模块功能理解。 |
status | tinyint NOT NULL | NOT NULL | 通知状态 | 状态字段,通常配合字典或枚举使用。 |
creator | varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT '' | NULL | 创建者 | 创建人。 |
create_time | datetime NOT NULL DEFAULT CURRENT_TIMESTAMP | NOT NULL | 创建时间 | 创建时间。 |
updater | varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT '' | NULL | 更新者 | 更新人。 |
update_time | datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP | NOT NULL | 更新时间 | 更新时间。 |
deleted | bit(1) NOT NULL DEFAULT b'0' | NOT NULL | 是否删除 | 逻辑删除标记。 |
tenant_id | bigint NOT NULL DEFAULT 0 | NOT NULL | 租户编号 | 租户编号,用于多租户数据隔离。 |
拆表原因
日志独立成表后,主业务表只保留当前态,历史变化则可无限追加,避免主表被高频写爆。
pay_notify_task
- 表中文名:商户支付、退款等的通知
- 表类型:主表
- 来源脚本:
sql/mysql/pay-2024-08.sql - 代码入口:
PayNotifyTaskDO,路径/yudao-module-pay/src/main/java/cn/iocoder/yudao/module/pay/dal/dataobject/notify/PayNotifyTaskDO.java
设计作用
这张表用于承载当前模块中的一个核心对象或过程节点,表结构需要结合上下游表共同理解。
关联关系
app_id:关联应用主表。tenant_id:用于租户数据隔离。
字段结构
| 字段名 | 类型 | 可空 | 中文注释 | 说明 |
|---|---|---|---|---|
id | bigint NOT NULL AUTO_INCREMENT | NOT NULL | 任务编号 | 主键,唯一标识当前记录。 |
app_id | bigint NOT NULL | NOT NULL | 应用编号 | 应用编号,常见于支付、公众号等模块。 |
type | tinyint NOT NULL | NOT NULL | 通知类型 | 业务字段,需结合具体模块功能理解。 |
data_id | bigint NOT NULL | NOT NULL | 数据编号 | 外键语义字段,用于关联其它主表,但项目整体以应用层维护关系为主。 |
status | tinyint NOT NULL | NOT NULL | 通知状态 | 状态字段,通常配合字典或枚举使用。 |
merchant_order_id | varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL | NULL | 商户订单编号 | 外键语义字段,用于关联其它主表,但项目整体以应用层维护关系为主。 |
merchant_transfer_id | varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL | NULL | 商户转账单编号 | 外键语义字段,用于关联其它主表,但项目整体以应用层维护关系为主。 |
next_notify_time | datetime NOT NULL DEFAULT CURRENT_TIMESTAMP | NOT NULL | 下一次通知时间 | 时间字段,用于记录业务发生时点或状态变更时间。 |
last_execute_time | datetime NOT NULL DEFAULT CURRENT_TIMESTAMP | NOT NULL | 最后一次执行时间 | 时间字段,用于记录业务发生时点或状态变更时间。 |
notify_times | tinyint NOT NULL | NOT NULL | 当前通知次数 | 业务字段,需结合具体模块功能理解。 |
max_notify_times | tinyint NOT NULL | NOT NULL | 最大可通知次数 | 业务字段,需结合具体模块功能理解。 |
notify_url | varchar(1024) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL | NOT NULL | 异步通知地址 | URL 地址字段,通常保存文件、回调或页面跳转地址。 |
creator | varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT '' | NULL | 创建者 | 创建人。 |
create_time | datetime NOT NULL DEFAULT CURRENT_TIMESTAMP | NOT NULL | 创建时间 | 创建时间。 |
updater | varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT '' | NULL | 更新者 | 更新人。 |
update_time | datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP | NOT NULL | 更新时间 | 更新时间。 |
deleted | bit(1) NOT NULL DEFAULT b'0' | NOT NULL | 是否删除 | 逻辑删除标记。 |
tenant_id | bigint NOT NULL DEFAULT 0 | NOT NULL | 租户编号 | 租户编号,用于多租户数据隔离。 |
拆表原因
这张表是当前业务域的核心实体,通常会被其它子表、日志表或关联表引用。
pay_order
- 表中文名:支付订单
- 表类型:主表
- 来源脚本:
sql/mysql/pay-2024-08.sql - 代码入口:
PayOrderDO,路径/yudao-module-pay/src/main/java/cn/iocoder/yudao/module/pay/dal/dataobject/order/PayOrderDO.java - 关键服务:
PayOrderServiceImpl
设计作用
支付订单主表将业务订单和支付渠道交互解耦,业务系统只关心商户单号与支付结果。
关联关系
app_id:关联应用主表。channel_id:关联渠道主表。tenant_id:用于租户数据隔离。
字段结构
| 字段名 | 类型 | 可空 | 中文注释 | 说明 |
|---|---|---|---|---|
id | bigint NOT NULL AUTO_INCREMENT | NOT NULL | 支付订单编号 | 主键,唯一标识当前记录。 |
app_id | bigint NOT NULL | NOT NULL | 应用编号 | 应用编号,常见于支付、公众号等模块。 |
channel_id | bigint NULL DEFAULT NULL | NULL | 渠道编号 | 渠道编号。 |
channel_code | varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL | NULL | 渠道编码 | 渠道编码,方便对接外部通道。 |
merchant_order_id | varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL | NOT NULL | 商户订单编号 | 外键语义字段,用于关联其它主表,但项目整体以应用层维护关系为主。 |
subject | varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL | NOT NULL | 商品标题 | 业务字段,需结合具体模块功能理解。 |
body | varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL | NOT NULL | 商品描述 | 业务字段,需结合具体模块功能理解。 |
notify_url | varchar(1024) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL | NOT NULL | 异步通知地址 | URL 地址字段,通常保存文件、回调或页面跳转地址。 |
price | bigint NOT NULL | NOT NULL | 支付金额,单位:分 | 金额字段,通常需要结合模块约定确认单位(多数交易场景为分)。 |
channel_fee_rate | double NULL DEFAULT 0 | NULL | 渠道手续费,单位:百分比 | 业务字段,需结合具体模块功能理解。 |
channel_fee_price | bigint NULL DEFAULT 0 | NULL | 渠道手续金额,单位:分 | 金额字段,通常需要结合模块约定确认单位(多数交易场景为分)。 |
status | tinyint NOT NULL | NOT NULL | 支付状态 | 状态字段,通常配合字典或枚举使用。 |
user_ip | varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL | NOT NULL | 用户 IP | 业务字段,需结合具体模块功能理解。 |
expire_time | datetime NOT NULL DEFAULT CURRENT_TIMESTAMP | NOT NULL | 订单失效时间 | 时间字段,用于记录业务发生时点或状态变更时间。 |
success_time | datetime NULL DEFAULT CURRENT_TIMESTAMP | NULL | 订单支付成功时间 | 时间字段,用于记录业务发生时点或状态变更时间。 |
extension_id | bigint NULL DEFAULT NULL | NULL | 支付成功的订单拓展单编号 | 外键语义字段,用于关联其它主表,但项目整体以应用层维护关系为主。 |
no | varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL | NULL | 支付订单号 | 单号字段,通常是对外或业务单据编号。 |
refund_price | bigint NOT NULL | NOT NULL | 退款总金额,单位:分 | 金额字段,通常需要结合模块约定确认单位(多数交易场景为分)。 |
channel_user_id | varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL | NULL | 渠道用户编号 | 外键语义字段,用于关联其它主表,但项目整体以应用层维护关系为主。 |
channel_order_no | varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL | NULL | 渠道订单号 | 业务字段,需结合具体模块功能理解。 |
creator | varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT '' | NULL | 创建者 | 创建人。 |
create_time | datetime NOT NULL DEFAULT CURRENT_TIMESTAMP | NOT NULL | 创建时间 | 创建时间。 |
updater | varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT '' | NULL | 更新者 | 更新人。 |
update_time | datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP | NOT NULL | 更新时间 | 更新时间。 |
deleted | bit(1) NOT NULL DEFAULT b'0' | NOT NULL | 是否删除 | 逻辑删除标记。 |
tenant_id | bigint NOT NULL DEFAULT 0 | NOT NULL | 租户编号 | 租户编号,用于多租户数据隔离。 |
拆表原因
这张表是当前业务域的核心实体,通常会被其它子表、日志表或关联表引用。
pay_order_extension
- 表中文名:支付订单
- 表类型:明细表
- 来源脚本:
sql/mysql/pay-2024-08.sql - 代码入口:
PayOrderExtensionDO,路径/yudao-module-pay/src/main/java/cn/iocoder/yudao/module/pay/dal/dataobject/order/PayOrderExtensionDO.java
设计作用
支付扩展单表示一次具体的支付提交尝试,因此一笔支付单可以有多条 extension 记录。
关联关系
order_id:关联头表订单。channel_id:关联渠道主表。tenant_id:用于租户数据隔离。
字段结构
| 字段名 | 类型 | 可空 | 中文注释 | 说明 |
|---|---|---|---|---|
id | bigint NOT NULL AUTO_INCREMENT | NOT NULL | 支付订单编号 | 主键,唯一标识当前记录。 |
no | varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL | NOT NULL | 支付订单号 | 单号字段,通常是对外或业务单据编号。 |
order_id | bigint NOT NULL | NOT NULL | 支付订单编号 | 头表订单编号。 |
channel_id | bigint NOT NULL | NOT NULL | 渠道编号 | 渠道编号。 |
channel_code | varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL | NOT NULL | 渠道编码 | 渠道编码,方便对接外部通道。 |
user_ip | varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL | NOT NULL | 用户 IP | 业务字段,需结合具体模块功能理解。 |
status | tinyint NOT NULL | NOT NULL | 支付状态 | 状态字段,通常配合字典或枚举使用。 |
channel_extras | varchar(256) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL | NULL | 支付渠道的额外参数 | 业务字段,需结合具体模块功能理解。 |
channel_error_code | varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL | NULL | 渠道调用报错时,错误码 | 业务字段,需结合具体模块功能理解。 |
channel_error_msg | varchar(256) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL | NULL | 渠道调用报错时,错误信息 | 业务字段,需结合具体模块功能理解。 |
channel_notify_data | varchar(4096) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL | NULL | 支付渠道异步通知的内容 | 业务字段,需结合具体模块功能理解。 |
creator | varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT '' | NULL | 创建者 | 创建人。 |
create_time | datetime NOT NULL DEFAULT CURRENT_TIMESTAMP | NOT NULL | 创建时间 | 创建时间。 |
updater | varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT '' | NULL | 更新者 | 更新人。 |
update_time | datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP | NOT NULL | 更新时间 | 更新时间。 |
deleted | bit(1) NOT NULL DEFAULT b'0' | NOT NULL | 是否删除 | 逻辑删除标记。 |
tenant_id | bigint NOT NULL DEFAULT 0 | NOT NULL | 租户编号 | 租户编号,用于多租户数据隔离。 |
拆表原因
头表只做汇总,明细表承载逐行数据,这样既方便列表汇总查询,也方便逐项追踪。
pay_refund
- 表中文名:退款订单
- 表类型:主表
- 来源脚本:
sql/mysql/pay-2024-08.sql - 代码入口:
PayRefundDO,路径/yudao-module-pay/src/main/java/cn/iocoder/yudao/module/pay/dal/dataobject/refund/PayRefundDO.java - 关键服务:
PayRefundServiceImpl
设计作用
退款主表独立存在,是为了支持一笔支付订单产生多次退款行为。
关联关系
app_id:关联应用主表。channel_id:关联渠道主表。order_id:关联头表订单。tenant_id:用于租户数据隔离。
字段结构
| 字段名 | 类型 | 可空 | 中文注释 | 说明 |
|---|---|---|---|---|
id | bigint NOT NULL AUTO_INCREMENT | NOT NULL | 支付退款编号 | 主键,唯一标识当前记录。 |
no | varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL | NOT NULL | 退款单号 | 单号字段,通常是对外或业务单据编号。 |
app_id | bigint NOT NULL | NOT NULL | 应用编号 | 应用编号,常见于支付、公众号等模块。 |
channel_id | bigint NOT NULL | NOT NULL | 渠道编号 | 渠道编号。 |
channel_code | varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL | NOT NULL | 渠道编码 | 渠道编码,方便对接外部通道。 |
order_id | bigint NOT NULL | NOT NULL | 支付订单编号 pay_order 表id | 头表订单编号。 |
order_no | varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL | NOT NULL | 支付订单 no | 业务字段,需结合具体模块功能理解。 |
merchant_order_id | varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL | NOT NULL | 商户订单编号(商户系统生成) | 外键语义字段,用于关联其它主表,但项目整体以应用层维护关系为主。 |
merchant_refund_id | varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL | NOT NULL | 商户退款订单号(商户系统生成) | 外键语义字段,用于关联其它主表,但项目整体以应用层维护关系为主。 |
notify_url | varchar(1024) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL | NOT NULL | 异步通知商户地址 | URL 地址字段,通常保存文件、回调或页面跳转地址。 |
status | tinyint NOT NULL | NOT NULL | 退款状态 | 状态字段,通常配合字典或枚举使用。 |
pay_price | bigint NOT NULL | NOT NULL | 支付金额,单位分 | 金额字段,通常需要结合模块约定确认单位(多数交易场景为分)。 |
refund_price | bigint NOT NULL | NOT NULL | 退款金额,单位分 | 金额字段,通常需要结合模块约定确认单位(多数交易场景为分)。 |
reason | varchar(256) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL | NOT NULL | 退款原因 | 业务字段,需结合具体模块功能理解。 |
user_ip | varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL | NULL | 用户 IP | 业务字段,需结合具体模块功能理解。 |
channel_order_no | varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL | NOT NULL | 渠道订单号,pay_order 中的 channel_order_no 对应 | 业务字段,需结合具体模块功能理解。 |
channel_refund_no | varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL | NULL | 渠道退款单号,渠道返回 | 业务字段,需结合具体模块功能理解。 |
success_time | datetime NULL DEFAULT NULL | NULL | 退款成功时间 | 时间字段,用于记录业务发生时点或状态变更时间。 |
channel_error_code | varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL | NULL | 渠道调用报错时,错误码 | 业务字段,需结合具体模块功能理解。 |
channel_error_msg | varchar(256) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL | NULL | 渠道调用报错时,错误信息 | 业务字段,需结合具体模块功能理解。 |
channel_notify_data | varchar(4096) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL | NULL | 支付渠道异步通知的内容 | 业务字段,需结合具体模块功能理解。 |
creator | varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT '' | NULL | 创建者 | 创建人。 |
create_time | datetime NOT NULL DEFAULT CURRENT_TIMESTAMP | NOT NULL | 创建时间 | 创建时间。 |
updater | varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT '' | NULL | 更新者 | 更新人。 |
update_time | datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP | NOT NULL | 更新时间 | 更新时间。 |
deleted | bit(1) NOT NULL DEFAULT b'0' | NOT NULL | 是否删除 | 逻辑删除标记。 |
tenant_id | bigint NOT NULL DEFAULT 0 | NOT NULL | 租户编号 | 租户编号,用于多租户数据隔离。 |
拆表原因
这张表是当前业务域的核心实体,通常会被其它子表、日志表或关联表引用。
pay_transfer
- 表中文名:转账单表
- 表类型:主表
- 来源脚本:
sql/mysql/pay-2024-08.sql - 代码入口:
PayTransferDO,路径/yudao-module-pay/src/main/java/cn/iocoder/yudao/module/pay/dal/dataobject/transfer/PayTransferDO.java
设计作用
这张表用于承载当前模块中的一个核心对象或过程节点,表结构需要结合上下游表共同理解。
关联关系
app_id:关联应用主表。channel_id:关联渠道主表。tenant_id:用于租户数据隔离。
字段结构
| 字段名 | 类型 | 可空 | 中文注释 | 说明 |
|---|---|---|---|---|
id | bigint NOT NULL AUTO_INCREMENT | NOT NULL | 编号 | 主键,唯一标识当前记录。 |
no | varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL | NOT NULL | 转账单号 | 单号字段,通常是对外或业务单据编号。 |
app_id | bigint NOT NULL | NOT NULL | 应用编号 | 应用编号,常见于支付、公众号等模块。 |
channel_id | bigint NOT NULL | NOT NULL | 转账渠道编号 | 渠道编号。 |
channel_code | varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL | NOT NULL | 转账渠道编码 | 渠道编码,方便对接外部通道。 |
merchant_transfer_id | varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL | NOT NULL | 商户转账单编号 | 外键语义字段,用于关联其它主表,但项目整体以应用层维护关系为主。 |
type | int NOT NULL | NOT NULL | 类型 | 业务字段,需结合具体模块功能理解。 |
status | tinyint NOT NULL | NOT NULL | 转账状态 | 状态字段,通常配合字典或枚举使用。 |
success_time | datetime NULL DEFAULT NULL | NULL | 转账成功时间 | 时间字段,用于记录业务发生时点或状态变更时间。 |
price | int NOT NULL | NOT NULL | 转账金额,单位:分 | 金额字段,通常需要结合模块约定确认单位(多数交易场景为分)。 |
subject | varchar(512) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL | NOT NULL | 转账标题 | 业务字段,需结合具体模块功能理解。 |
user_name | varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL | NULL | 收款人姓名 | 业务字段,需结合具体模块功能理解。 |
alipay_logon_id | varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL | NULL | 支付宝登录号 | 外键语义字段,用于关联其它主表,但项目整体以应用层维护关系为主。 |
openid | varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL | NULL | 微信 openId | 业务字段,需结合具体模块功能理解。 |
notify_url | varchar(1024) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL | NOT NULL | 异步通知商户地址 | URL 地址字段,通常保存文件、回调或页面跳转地址。 |
user_ip | varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL | NOT NULL | 用户 IP | 业务字段,需结合具体模块功能理解。 |
channel_extras | varchar(512) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL | NULL | 渠道的额外参数 | 业务字段,需结合具体模块功能理解。 |
channel_transfer_no | varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL | NULL | 渠道转账单号 | 业务字段,需结合具体模块功能理解。 |
channel_error_code | varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL | NULL | 调用渠道的错误码 | 业务字段,需结合具体模块功能理解。 |
channel_error_msg | varchar(256) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL | NULL | 调用渠道的错误提示 | 业务字段,需结合具体模块功能理解。 |
channel_notify_data | varchar(4096) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL | NULL | 渠道的同步/异步通知的内容 | 业务字段,需结合具体模块功能理解。 |
creator | varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT '' | NULL | 创建者 | 创建人。 |
create_time | datetime NOT NULL DEFAULT CURRENT_TIMESTAMP | NOT NULL | 创建时间 | 创建时间。 |
updater | varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT '' | NULL | 更新者 | 更新人。 |
update_time | datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP | NOT NULL | 更新时间 | 更新时间。 |
deleted | bit(1) NOT NULL DEFAULT b'0' | NOT NULL | 是否删除 | 逻辑删除标记。 |
tenant_id | bigint NOT NULL DEFAULT 0 | NOT NULL | 租户编号 | 租户编号,用于多租户数据隔离。 |
拆表原因
这张表是当前业务域的核心实体,通常会被其它子表、日志表或关联表引用。
pay_wallet
- 表中文名:会员钱包表
- 表类型:主表
- 来源脚本:
sql/mysql/pay-2024-08.sql - 代码入口:
PayWalletDO,路径/yudao-module-pay/src/main/java/cn/iocoder/yudao/module/pay/dal/dataobject/wallet/PayWalletDO.java
设计作用
这张表用于承载当前模块中的一个核心对象或过程节点,表结构需要结合上下游表共同理解。
关联关系
user_id:关联用户主表,具体是后台用户还是会员用户要结合模块与user_type判断。tenant_id:用于租户数据隔离。
字段结构
| 字段名 | 类型 | 可空 | 中文注释 | 说明 |
|---|---|---|---|---|
id | bigint NOT NULL AUTO_INCREMENT | NOT NULL | 编号 | 主键,唯一标识当前记录。 |
user_id | bigint NOT NULL | NOT NULL | 用户编号 | 用户编号,具体指向后台用户或会员用户要看模块与 user_type。 |
user_type | tinyint NOT NULL DEFAULT 0 | NOT NULL | 用户类型 | 用户类型,用于区分后台用户、会员等身份。 |
balance | int NOT NULL DEFAULT 0 | NOT NULL | 余额,单位分 | 业务字段,需结合具体模块功能理解。 |
total_expense | int NOT NULL DEFAULT 0 | NOT NULL | 累计支出,单位分 | 业务字段,需结合具体模块功能理解。 |
total_recharge | int NOT NULL DEFAULT 0 | NOT NULL | 累计充值,单位分 | 业务字段,需结合具体模块功能理解。 |
freeze_price | int NOT NULL DEFAULT 0 | NOT NULL | 冻结金额,单位分 | 金额字段,通常需要结合模块约定确认单位(多数交易场景为分)。 |
creator | varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT '' | NULL | 创建者 | 创建人。 |
create_time | datetime NOT NULL DEFAULT CURRENT_TIMESTAMP | NOT NULL | 创建时间 | 创建时间。 |
updater | varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT '' | NULL | 更新者 | 更新人。 |
update_time | datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP | NOT NULL | 更新时间 | 更新时间。 |
deleted | bit(1) NOT NULL DEFAULT b'0' | NOT NULL | 是否删除 | 逻辑删除标记。 |
tenant_id | bigint NOT NULL DEFAULT 0 | NOT NULL | 租户编号 | 租户编号,用于多租户数据隔离。 |
拆表原因
这张表是当前业务域的核心实体,通常会被其它子表、日志表或关联表引用。
pay_wallet_recharge
- 表中文名:会员钱包充值
- 表类型:主表
- 来源脚本:
sql/mysql/pay-2024-08.sql - 代码入口:
PayWalletRechargeDO,路径/yudao-module-pay/src/main/java/cn/iocoder/yudao/module/pay/dal/dataobject/wallet/PayWalletRechargeDO.java
设计作用
这张表用于承载当前模块中的一个核心对象或过程节点,表结构需要结合上下游表共同理解。
关联关系
tenant_id:用于租户数据隔离。
字段结构
| 字段名 | 类型 | 可空 | 中文注释 | 说明 |
|---|---|---|---|---|
id | bigint NOT NULL AUTO_INCREMENT | NOT NULL | 编号 | 主键,唯一标识当前记录。 |
wallet_id | bigint NOT NULL | NOT NULL | 会员钱包 id | 外键语义字段,用于关联其它主表,但项目整体以应用层维护关系为主。 |
total_price | int NOT NULL | NOT NULL | 用户实际到账余额,例如充 100 送 20,则该值是 120 | 金额字段,通常需要结合模块约定确认单位(多数交易场景为分)。 |
pay_price | int NOT NULL | NOT NULL | 实际支付金额 | 金额字段,通常需要结合模块约定确认单位(多数交易场景为分)。 |
bonus_price | int NOT NULL | NOT NULL | 钱包赠送金额 | 金额字段,通常需要结合模块约定确认单位(多数交易场景为分)。 |
package_id | bigint NULL DEFAULT NULL | NULL | 充值套餐编号 | 外键语义字段,用于关联其它主表,但项目整体以应用层维护关系为主。 |
pay_status | bit(1) NOT NULL DEFAULT b'0' | NOT NULL | 是否已支付:[0:未支付 1:已经支付过] | 业务状态字段,通常对应枚举或状态机。 |
pay_order_id | bigint NULL DEFAULT NULL | NULL | 支付订单编号 | 外键语义字段,用于关联其它主表,但项目整体以应用层维护关系为主。 |
pay_channel_code | varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL | NULL | 支付成功的支付渠道 | 业务字段,需结合具体模块功能理解。 |
pay_time | datetime NULL DEFAULT NULL | NULL | 订单支付时间 | 时间字段,用于记录业务发生时点或状态变更时间。 |
pay_refund_id | bigint NULL DEFAULT NULL | NULL | 支付退款单编号 | 外键语义字段,用于关联其它主表,但项目整体以应用层维护关系为主。 |
refund_total_price | int NOT NULL DEFAULT 0 | NOT NULL | 退款金额,包含赠送金额 | 金额字段,通常需要结合模块约定确认单位(多数交易场景为分)。 |
refund_pay_price | int NOT NULL DEFAULT 0 | NOT NULL | 退款支付金额 | 金额字段,通常需要结合模块约定确认单位(多数交易场景为分)。 |
refund_bonus_price | int NOT NULL DEFAULT 0 | NOT NULL | 退款钱包赠送金额 | 金额字段,通常需要结合模块约定确认单位(多数交易场景为分)。 |
refund_time | datetime NULL DEFAULT NULL | NULL | 退款时间 | 时间字段,用于记录业务发生时点或状态变更时间。 |
refund_status | int NOT NULL DEFAULT 0 | NOT NULL | 退款状态 | 业务状态字段,通常对应枚举或状态机。 |
creator | varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT '' | NULL | 创建者 | 创建人。 |
create_time | datetime NOT NULL DEFAULT CURRENT_TIMESTAMP | NOT NULL | 创建时间 | 创建时间。 |
updater | varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT '' | NULL | 更新者 | 更新人。 |
update_time | datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP | NOT NULL | 更新时间 | 更新时间。 |
deleted | bit(1) NOT NULL DEFAULT b'0' | NOT NULL | 是否删除 | 逻辑删除标记。 |
tenant_id | bigint NOT NULL DEFAULT 0 | NOT NULL | 租户编号 | 租户编号,用于多租户数据隔离。 |
拆表原因
这张表是当前业务域的核心实体,通常会被其它子表、日志表或关联表引用。
pay_wallet_recharge_package
- 表中文名:充值套餐表
- 表类型:主表
- 来源脚本:
sql/mysql/pay-2024-08.sql - 代码入口:
PayWalletRechargePackageDO,路径/yudao-module-pay/src/main/java/cn/iocoder/yudao/module/pay/dal/dataobject/wallet/PayWalletRechargePackageDO.java
设计作用
这张表用于承载当前模块中的一个核心对象或过程节点,表结构需要结合上下游表共同理解。
关联关系
tenant_id:用于租户数据隔离。
字段结构
| 字段名 | 类型 | 可空 | 中文注释 | 说明 |
|---|---|---|---|---|
id | bigint NOT NULL AUTO_INCREMENT | NOT NULL | 编号 | 主键,唯一标识当前记录。 |
name | varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL | NOT NULL | 套餐名 | 名称字段,通常是业务对象的可读展示名。 |
pay_price | int NOT NULL | NOT NULL | 支付金额 | 金额字段,通常需要结合模块约定确认单位(多数交易场景为分)。 |
bonus_price | int NOT NULL | NOT NULL | 赠送金额 | 金额字段,通常需要结合模块约定确认单位(多数交易场景为分)。 |
status | tinyint NOT NULL | NOT NULL | 状态 | 状态字段,通常配合字典或枚举使用。 |
creator | varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT '' | NULL | 创建者 | 创建人。 |
create_time | datetime NOT NULL DEFAULT CURRENT_TIMESTAMP | NOT NULL | 创建时间 | 创建时间。 |
updater | varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT '' | NULL | 更新者 | 更新人。 |
update_time | datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP | NOT NULL | 更新时间 | 更新时间。 |
deleted | bit(1) NOT NULL DEFAULT b'0' | NOT NULL | 是否删除 | 逻辑删除标记。 |
tenant_id | bigint NOT NULL DEFAULT 0 | NOT NULL | 租户编号 | 租户编号,用于多租户数据隔离。 |
拆表原因
这张表是当前业务域的核心实体,通常会被其它子表、日志表或关联表引用。
pay_wallet_transaction
- 表中文名:会员钱包流水表
- 表类型:主表
- 来源脚本:
sql/mysql/pay-2024-08.sql - 代码入口:
PayWalletTransactionDO,路径/yudao-module-pay/src/main/java/cn/iocoder/yudao/module/pay/dal/dataobject/wallet/PayWalletTransactionDO.java
设计作用
这张表用于承载当前模块中的一个核心对象或过程节点,表结构需要结合上下游表共同理解。
关联关系
tenant_id:用于租户数据隔离。
字段结构
| 字段名 | 类型 | 可空 | 中文注释 | 说明 |
|---|---|---|---|---|
id | bigint NOT NULL AUTO_INCREMENT | NOT NULL | 编号 | 主键,唯一标识当前记录。 |
wallet_id | bigint NOT NULL | NOT NULL | 会员钱包 id | 外键语义字段,用于关联其它主表,但项目整体以应用层维护关系为主。 |
biz_type | tinyint NOT NULL | NOT NULL | 关联类型 | 业务字段,需结合具体模块功能理解。 |
biz_id | varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL | NOT NULL | 关联业务编号 | 外键语义字段,用于关联其它主表,但项目整体以应用层维护关系为主。 |
no | varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL | NOT NULL | 流水号 | 单号字段,通常是对外或业务单据编号。 |
title | varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL | NOT NULL | 流水标题 | 业务字段,需结合具体模块功能理解。 |
price | int NOT NULL | NOT NULL | 交易金额, 单位分 | 金额字段,通常需要结合模块约定确认单位(多数交易场景为分)。 |
balance | int NOT NULL | NOT NULL | 余额, 单位分 | 业务字段,需结合具体模块功能理解。 |
creator | varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT '' | NULL | 创建者 | 创建人。 |
create_time | datetime NOT NULL DEFAULT CURRENT_TIMESTAMP | NOT NULL | 创建时间 | 创建时间。 |
updater | varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT '' | NULL | 更新者 | 更新人。 |
update_time | datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP | NOT NULL | 更新时间 | 更新时间。 |
deleted | bit(1) NOT NULL DEFAULT b'0' | NOT NULL | 是否删除 | 逻辑删除标记。 |
tenant_id | bigint NOT NULL DEFAULT 0 | NOT NULL | 租户编号 | 租户编号,用于多租户数据隔离。 |
拆表原因
这张表是当前业务域的核心实体,通常会被其它子表、日志表或关联表引用。
