forked from jeequan/jeepay
-
Notifications
You must be signed in to change notification settings - Fork 1
/
init_db.sql
169 lines (158 loc) · 10.6 KB
/
init_db.sql
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
/* 支付中心相关表结构 */
CREATE TABLE `t_mch_info` (
`MchId` varchar(30) NOT NULL COMMENT '商户ID',
`Name` varchar(30) NOT NULL COMMENT '名称',
`Type` varchar(24) NOT NULL COMMENT '类型',
`ReqKey` varchar(128) NOT NULL COMMENT '请求私钥',
`ResKey` varchar(128) NOT NULL COMMENT '响应私钥',
`State` tinyint(6) NOT NULL DEFAULT '1' COMMENT '商户状态,0-停止使用,1-使用中',
`CreateTime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`UpdateTime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
PRIMARY KEY (`MchId`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='商户信息表';
CREATE TABLE `t_pay_channel` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '渠道主键ID',
`ChannelId` varchar(24) NOT NULL COMMENT '渠道ID',
`ChannelName` varchar(30) NOT NULL COMMENT '渠道名称,如:alipay,wechat',
`ChannelMchId` varchar(32) NOT NULL COMMENT '渠道商户ID',
`MchId` varchar(30) NOT NULL COMMENT '商户ID',
`State` tinyint(6) NOT NULL DEFAULT '1' COMMENT '渠道状态,0-停止使用,1-使用中',
`Param` varchar(4096) NOT NULL COMMENT '配置参数,json字符串',
`Remark` varchar(128) DEFAULT NULL COMMENT '备注',
`CreateTime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`UpdateTime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
PRIMARY KEY (`ID`),
UNIQUE KEY `IDX_MchId_MchOrderNo` (`ChannelId`, `MchId`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='支付渠道表';
CREATE TABLE `t_pay_order` (
`PayOrderId` varchar(30) NOT NULL COMMENT '支付订单号',
`MchId` varchar(30) NOT NULL COMMENT '商户ID',
`MchOrderNo` varchar(30) NOT NULL COMMENT '商户订单号',
`ChannelId` varchar(24) NOT NULL COMMENT '渠道ID',
`Amount` bigint(20) NOT NULL COMMENT '支付金额,单位分',
`Currency` varchar(3) NOT NULL DEFAULT 'cny' COMMENT '三位货币代码,人民币:cny',
`Status` tinyint(6) NOT NULL DEFAULT '0' COMMENT '支付状态,0-订单生成,1-支付中(目前未使用),2-支付成功,3-业务处理完成',
`ClientIp` varchar(32) DEFAULT NULL COMMENT '客户端IP',
`Device` varchar(64) DEFAULT NULL COMMENT '设备',
`Subject` varchar(64) NOT NULL COMMENT '商品标题',
`Body` varchar(256) NOT NULL COMMENT '商品描述信息',
`Extra` varchar(512) DEFAULT NULL COMMENT '特定渠道发起时额外参数',
`ChannelMchId` varchar(32) NOT NULL COMMENT '渠道商户ID',
`ChannelOrderNo` varchar(64) DEFAULT NULL COMMENT '渠道订单号',
`ErrCode` varchar(64) DEFAULT NULL COMMENT '渠道支付错误码',
`ErrMsg` varchar(128) DEFAULT NULL COMMENT '渠道支付错误描述',
`Param1` varchar(64) DEFAULT NULL COMMENT '扩展参数1',
`Param2` varchar(64) DEFAULT NULL COMMENT '扩展参数2',
`NotifyUrl` varchar(128) NOT NULL COMMENT '通知地址',
`NotifyCount` tinyint(6) NOT NULL DEFAULT 0 COMMENT '通知次数',
`LastNotifyTime` bigint(20) DEFAULT NULL COMMENT '最后一次通知时间',
`ExpireTime` bigint(20) DEFAULT NULL COMMENT '订单失效时间',
`PaySuccTime` bigint(20) DEFAULT NULL COMMENT '订单支付成功时间',
`CreateTime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`UpdateTime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
PRIMARY KEY (`PayOrderId`),
UNIQUE KEY `IDX_MchId_MchOrderNo` (`MchId`, MchOrderNo)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='支付订单表';
CREATE TABLE `t_iap_receipt` (
`PayOrderId` varchar(30) NOT NULL COMMENT '支付订单号',
`MchId` varchar(30) NOT NULL COMMENT '商户ID',
`TransactionId` varchar(24) NOT NULL COMMENT 'IAP业务号',
`ReceiptData` TEXT NOT NULL COMMENT '渠道ID',
`Status` tinyint(6) NOT NULL DEFAULT '0' COMMENT '处理状态:0-未处理,1-处理成功,-1-处理失败',
`HandleCount` tinyint(6) NOT NULL DEFAULT 0 COMMENT '处理次数',
`CreateTime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`UpdateTime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
PRIMARY KEY (`PayOrderId`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='苹果支付凭据表';
CREATE TABLE `t_trans_order` (
`TransOrderId` varchar(30) NOT NULL COMMENT '转账订单号',
`MchId` varchar(30) NOT NULL COMMENT '商户ID',
`MchTransNo` varchar(30) NOT NULL COMMENT '商户转账单号',
`ChannelId` varchar(24) NOT NULL COMMENT '渠道ID',
`Amount` bigint(20) NOT NULL COMMENT '转账金额,单位分',
`Currency` varchar(3) NOT NULL DEFAULT 'cny' COMMENT '三位货币代码,人民币:cny',
`Status` tinyint(6) NOT NULL DEFAULT '0' COMMENT '转账状态:0-订单生成,1-转账中,2-转账成功,3-转账失败,4-业务处理完成',
`Result` tinyint(6) NOT NULL DEFAULT '0' COMMENT '转账结果:0-不确认结果,1-等待手动处理,2-确认成功,3-确认失败',
`ClientIp` varchar(32) DEFAULT NULL COMMENT '客户端IP',
`Device` varchar(64) DEFAULT NULL COMMENT '设备',
`RemarkInfo` varchar(256) DEFAULT NULL COMMENT '备注',
`ChannelUser` varchar(32) DEFAULT NULL COMMENT '渠道用户标识,如微信openId,支付宝账号',
`UserName` varchar(24) DEFAULT NULL COMMENT '用户姓名',
`ChannelMchId` varchar(32) NOT NULL COMMENT '渠道商户ID',
`ChannelOrderNo` varchar(32) DEFAULT NULL COMMENT '渠道订单号',
`ChannelErrCode` varchar(128) DEFAULT NULL COMMENT '渠道错误码',
`ChannelErrMsg` varchar(128) DEFAULT NULL COMMENT '渠道错误描述',
`Extra` varchar(512) DEFAULT NULL COMMENT '特定渠道发起时额外参数',
`NotifyUrl` varchar(128) NOT NULL COMMENT '通知地址',
`Param1` varchar(64) DEFAULT NULL COMMENT '扩展参数1',
`Param2` varchar(64) DEFAULT NULL COMMENT '扩展参数2',
`ExpireTime` datetime DEFAULT NULL COMMENT '订单失效时间',
`TransSuccTime` datetime DEFAULT NULL COMMENT '订单转账成功时间',
`CreateTime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`UpdateTime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
PRIMARY KEY (`TransOrderId`),
UNIQUE KEY `IDX_MchId_MchOrderNo` (`MchId`, MchTransNo)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='转账订单表';
CREATE TABLE `t_refund_order` (
`RefundOrderId` varchar(30) NOT NULL COMMENT '退款订单号',
`PayOrderId` varchar(30) NOT NULL COMMENT '支付订单号',
`ChannelPayOrderNo` varchar(64) DEFAULT NULL COMMENT '渠道支付单号',
`MchId` varchar(30) NOT NULL COMMENT '商户ID',
`MchRefundNo` varchar(30) NOT NULL COMMENT '商户退款单号',
`ChannelId` varchar(24) NOT NULL COMMENT '渠道ID',
`PayAmount` bigint(20) NOT NULL COMMENT '支付金额,单位分',
`RefundAmount` bigint(20) NOT NULL COMMENT '退款金额,单位分',
`Currency` varchar(3) NOT NULL DEFAULT 'cny' COMMENT '三位货币代码,人民币:cny',
`Status` tinyint(6) NOT NULL DEFAULT '0' COMMENT '退款状态:0-订单生成,1-退款中,2-退款成功,3-退款失败,4-业务处理完成',
`Result` tinyint(6) NOT NULL DEFAULT '0' COMMENT '退款结果:0-不确认结果,1-等待手动处理,2-确认成功,3-确认失败',
`ClientIp` varchar(32) DEFAULT NULL COMMENT '客户端IP',
`Device` varchar(64) DEFAULT NULL COMMENT '设备',
`RemarkInfo` varchar(256) DEFAULT NULL COMMENT '备注',
`ChannelUser` varchar(32) DEFAULT NULL COMMENT '渠道用户标识,如微信openId,支付宝账号',
`UserName` varchar(24) DEFAULT NULL COMMENT '用户姓名',
`ChannelMchId` varchar(32) NOT NULL COMMENT '渠道商户ID',
`ChannelOrderNo` varchar(32) DEFAULT NULL COMMENT '渠道订单号',
`ChannelErrCode` varchar(128) DEFAULT NULL COMMENT '渠道错误码',
`ChannelErrMsg` varchar(128) DEFAULT NULL COMMENT '渠道错误描述',
`Extra` varchar(512) DEFAULT NULL COMMENT '特定渠道发起时额外参数',
`NotifyUrl` varchar(128) NOT NULL COMMENT '通知地址',
`Param1` varchar(64) DEFAULT NULL COMMENT '扩展参数1',
`Param2` varchar(64) DEFAULT NULL COMMENT '扩展参数2',
`ExpireTime` datetime DEFAULT NULL COMMENT '订单失效时间',
`RefundSuccTime` datetime DEFAULT NULL COMMENT '订单退款成功时间',
`CreateTime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`UpdateTime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
PRIMARY KEY (`RefundOrderId`),
UNIQUE KEY `IDX_MchId_MchOrderNo` (`MchId`, MchRefundNo)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='退款订单表';
CREATE TABLE `t_mch_notify` (
`OrderId` varchar(24) NOT NULL COMMENT '订单ID',
`MchId` varchar(30) NOT NULL COMMENT '商户ID',
`MchOrderNo` varchar(30) NOT NULL COMMENT '商户订单号',
`OrderType` varchar(8) NOT NULL COMMENT '订单类型:1-支付,2-转账,3-退款',
`NotifyUrl` varchar(2048) NOT NULL COMMENT '通知地址',
`NotifyCount` tinyint(6) NOT NULL DEFAULT 0 COMMENT '通知次数',
`Result` varchar(2048) DEFAULT NULL COMMENT '通知响应结果',
`Status` tinyint(6) NOT NULL DEFAULT '1' COMMENT '通知状态,1-通知中,2-通知成功,3-通知失败',
`LastNotifyTime` datetime DEFAULT NULL COMMENT '最后一次通知时间',
`CreateTime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`UpdateTime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
PRIMARY KEY (`OrderId`),
UNIQUE KEY `IDX_MchId_OrderType_MchOrderNo` (`MchId`, `OrderType`, `MchOrderNo`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='商户通知表';
/* 支付演示商城相关表 */
CREATE TABLE `t_goods_order` (
`GoodsOrderId` varchar(30) NOT NULL COMMENT '商品订单ID',
`GoodsId` varchar(30) NOT NULL COMMENT '商品ID',
`GoodsName` varchar(64) NOT NULL DEFAULT '' COMMENT '商品名称',
`Amount` bigint(20) NOT NULL COMMENT '金额,单位分',
`UserId` varchar(30) NOT NULL COMMENT '用户ID',
`Status` tinyint(6) NOT NULL DEFAULT '0' COMMENT '订单状态,订单生成(0),支付成功(1),处理完成(2),处理失败(-1)',
`PayOrderId` varchar(30) DEFAULT NULL COMMENT '支付订单号',
`ChannelId` varchar(24) DEFAULT NULL COMMENT '渠道ID',
`ChannelUserId` varchar(64) DEFAULT NULL COMMENT '支付渠道用户ID(微信openID或支付宝账号等第三方支付账号)',
`CreateTime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`UpdateTime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
PRIMARY KEY (`GoodsOrderId`),
UNIQUE KEY `IDX_PayOrderId` (PayOrderId)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='商品订单表';