pay_wallet.sql 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248
  1. -- ----------------------------
  2. -- 转账单表
  3. -- ----------------------------
  4. DROP TABLE IF EXISTS `pay_transfer`;
  5. CREATE TABLE `pay_transfer`
  6. (
  7. `id` bigint NOT NULL AUTO_INCREMENT COMMENT '编号',
  8. `no` varchar(64) NOT NULL COMMENT '转账单号',
  9. `app_id` bigint NOT NULL COMMENT '应用编号',
  10. `channel_id` bigint NOT NULL COMMENT '转账渠道编号',
  11. `channel_code` varchar(32) NOT NULL COMMENT '转账渠道编码',
  12. `merchant_transfer_id` varchar(64) NOT NULL COMMENT '商户转账单编号',
  13. `type` int NOT NULL COMMENT '类型',
  14. `status` tinyint NOT NULL COMMENT '转账状态',
  15. `success_time` datetime NULL COMMENT '转账成功时间',
  16. `price` int NOT NULL COMMENT '转账金额,单位:分',
  17. `subject` varchar(512) NOT NULL COMMENT '转账标题',
  18. `user_name` varchar(64) NULL COMMENT '收款人姓名',
  19. `alipay_logon_id` varchar(64) NULL COMMENT '支付宝登录号',
  20. `openid` varchar(64) NULL COMMENT '微信 openId',
  21. `notify_url` varchar(1024) NOT NULL COMMENT '异步通知商户地址',
  22. `user_ip` varchar(50) NOT NULL COMMENT '用户 IP',
  23. `channel_extras` varchar(512) NULL DEFAULT NULL COMMENT '渠道的额外参数',
  24. `channel_transfer_no` varchar(64) NULL DEFAULT NULL COMMENT '渠道转账单号',
  25. `channel_error_code` varchar(128) NULL DEFAULT NULL COMMENT '调用渠道的错误码',
  26. `channel_error_msg` varchar(256) NULL DEFAULT NULL COMMENT '调用渠道的错误提示',
  27. `channel_notify_data` varchar(4096) NULL DEFAULT NULL COMMENT '渠道的同步/异步通知的内容',
  28. `creator` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT '' COMMENT '创建者',
  29. `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  30. `updater` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT '' COMMENT '更新者',
  31. `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  32. `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
  33. `tenant_id` bigint NOT NULL DEFAULT 0 COMMENT '租户编号',
  34. PRIMARY KEY (`id`) USING BTREE
  35. ) ENGINE=InnoDB COMMENT='转账单表';
  36. -- ----------------------------
  37. -- Table structure for pay_demo_transfer
  38. -- ----------------------------
  39. DROP TABLE IF EXISTS `pay_demo_transfer`;
  40. CREATE TABLE `pay_demo_transfer` (
  41. `id` bigint NOT NULL AUTO_INCREMENT COMMENT '订单编号',
  42. `app_id` bigint NOT NULL COMMENT '应用编号',
  43. `type` int NOT NULL COMMENT '转账类型',
  44. `price` int NOT NULL COMMENT '转账金额,单位:分',
  45. `user_name` varchar(64) NULL COMMENT '收款人姓名',
  46. `alipay_logon_id` varchar(64) NULL COMMENT '支付宝登录号',
  47. `openid` varchar(64) NULL COMMENT '微信 openId',
  48. `transfer_status` tinyint NOT NULL DEFAULT 0 COMMENT '转账状态',
  49. `pay_transfer_id` bigint NULL DEFAULT NULL COMMENT '转账订单编号',
  50. `pay_channel_code` varchar(16) NULL DEFAULT NULL COMMENT '转账支付成功渠道',
  51. `transfer_time` datetime NULL DEFAULT NULL COMMENT '转账支付时间',
  52. `creator` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT '' COMMENT '创建者',
  53. `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  54. `updater` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT '' COMMENT '更新者',
  55. `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  56. `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
  57. `tenant_id` bigint NOT NULL DEFAULT 0 COMMENT '租户编号',
  58. PRIMARY KEY (`id`) USING BTREE
  59. ) ENGINE = InnoDB COMMENT = '示例业务转账订单';
  60. ALTER TABLE `pay_channel`
  61. MODIFY COLUMN `config` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '支付渠道配置' AFTER `app_id`;
  62. -- ----------------------------
  63. -- 充值套餐表
  64. -- ----------------------------
  65. DROP TABLE IF EXISTS `pay_wallet_recharge_package`;
  66. CREATE TABLE `pay_wallet_recharge_package`
  67. (
  68. `id` bigint NOT NULL AUTO_INCREMENT COMMENT '编号',
  69. `name` varchar(64) NOT NULL COMMENT '套餐名',
  70. `pay_price` int NOT NULL COMMENT '支付金额',
  71. `bonus_price` int NOT NULL COMMENT '赠送金额',
  72. `status` tinyint NOT NULL COMMENT '状态',
  73. `creator` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT '' COMMENT '创建者',
  74. `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  75. `updater` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT '' COMMENT '更新者',
  76. `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  77. `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
  78. `tenant_id` bigint NOT NULL DEFAULT 0 COMMENT '租户编号',
  79. PRIMARY KEY (`id`) USING BTREE
  80. ) ENGINE=InnoDB COMMENT='充值套餐表';
  81. -- ----------------------------
  82. -- Table structure for pay_wallet_recharge
  83. -- ----------------------------
  84. DROP TABLE IF EXISTS `pay_wallet_recharge`;
  85. CREATE TABLE `pay_wallet_recharge` (
  86. `id` bigint(0) NOT NULL AUTO_INCREMENT COMMENT '编号',
  87. `wallet_id` bigint(0) NOT NULL COMMENT '会员钱包 id',
  88. `total_price` int(0) NOT NULL COMMENT '用户实际到账余额,例如充 100 送 20,则该值是 120',
  89. `pay_price` int(0) NOT NULL COMMENT '实际支付金额',
  90. `bonus_price` int(0) NOT NULL COMMENT '钱包赠送金额',
  91. `package_id` bigint(0) DEFAULT NULL COMMENT '充值套餐编号',
  92. `pay_status` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否已支付:[0:未支付 1:已经支付过]',
  93. `pay_order_id` bigint(0) DEFAULT NULL COMMENT '支付订单编号',
  94. `pay_channel_code` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '支付成功的支付渠道',
  95. `pay_time` datetime(0) DEFAULT NULL COMMENT '订单支付时间',
  96. `pay_refund_id` bigint(0) DEFAULT NULL COMMENT '支付退款单编号',
  97. `refund_total_price` int(0) NOT NULL DEFAULT 0 COMMENT '退款金额,包含赠送金额',
  98. `refund_pay_price` int(0) NOT NULL DEFAULT 0 COMMENT '退款支付金额',
  99. `refund_bonus_price` int(0) NOT NULL DEFAULT 0 COMMENT '退款钱包赠送金额',
  100. `refund_time` datetime(0) DEFAULT NULL COMMENT '退款时间',
  101. `refund_status` int(0) NOT NULL DEFAULT 0 COMMENT '退款状态',
  102. `creator` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT '' COMMENT '创建者',
  103. `create_time` datetime(0) NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  104. `updater` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT '' COMMENT '更新者',
  105. `update_time` datetime(0) NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP(0) COMMENT '更新时间',
  106. `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
  107. `tenant_id` bigint(0) NOT NULL DEFAULT 0 COMMENT '租户编号',
  108. PRIMARY KEY (`id`) USING BTREE
  109. ) ENGINE = InnoDB AUTO_INCREMENT = 9 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '会员钱包充值' ROW_FORMAT = Dynamic;
  110. -- 钱包充值套餐,钱包余额菜单脚本
  111. INSERT INTO system_menu(
  112. name, permission, type, sort, parent_id,
  113. path, icon, component, status, component_name
  114. )
  115. VALUES (
  116. '钱包管理', '', 1, 5, 1117,
  117. 'wallet', 'ep:caret-right', '', 0, ''
  118. );
  119. SELECT @parentId1 := LAST_INSERT_ID();
  120. INSERT INTO system_menu(
  121. name, permission, type, sort, parent_id,
  122. path, icon, component, status, component_name
  123. )
  124. VALUES (
  125. '充值套餐', '', 2, 2, @parentId1,
  126. 'wallet-recharge-package', 'fa:leaf', 'pay/wallet/rechargePackage/index', 0, 'WalletRechargePackage'
  127. );
  128. SELECT @parentId := LAST_INSERT_ID();
  129. -- 按钮 SQL
  130. INSERT INTO system_menu(
  131. name, permission, type, sort, parent_id,
  132. path, icon, component, status
  133. )
  134. VALUES (
  135. '钱包充值套餐查询', 'pay:wallet-recharge-package:query', 3, 1, @parentId,
  136. '', '', '', 0
  137. );
  138. INSERT INTO system_menu(
  139. name, permission, type, sort, parent_id,
  140. path, icon, component, status
  141. )
  142. VALUES (
  143. '钱包充值套餐创建', 'pay:wallet-recharge-package:create', 3, 2, @parentId,
  144. '', '', '', 0
  145. );
  146. INSERT INTO system_menu(
  147. name, permission, type, sort, parent_id,
  148. path, icon, component, status
  149. )
  150. VALUES (
  151. '钱包充值套餐更新', 'pay:wallet-recharge-package:update', 3, 3, @parentId,
  152. '', '', '', 0
  153. );
  154. INSERT INTO system_menu(
  155. name, permission, type, sort, parent_id,
  156. path, icon, component, status
  157. )
  158. VALUES (
  159. '钱包充值套餐删除', 'pay:wallet-recharge-package:delete', 3, 4, @parentId,
  160. '', '', '', 0
  161. );
  162. INSERT INTO system_menu(
  163. name, permission, type, sort, parent_id,
  164. path, icon, component, status, component_name
  165. )
  166. VALUES (
  167. '钱包余额', '', 2, 1, @parentId1,
  168. 'wallet-balance', 'fa:leaf', 'pay/wallet/balance/index', 0, 'WalletBalance'
  169. );
  170. SELECT @parentId := LAST_INSERT_ID();
  171. -- 按钮 SQL
  172. INSERT INTO system_menu(
  173. name, permission, type, sort, parent_id,
  174. path, icon, component, status
  175. )
  176. VALUES (
  177. '钱包余额查询', 'pay:wallet:query', 3, 1, @parentId,
  178. '', '', '', 0
  179. );
  180. -- 支付实战和转账实战数据库脚本
  181. update system_menu set deleted = 1 where id = 2161;
  182. INSERT INTO system_menu(
  183. name, permission, type, sort, parent_id,
  184. path, icon, component, status, component_name
  185. )
  186. VALUES (
  187. '接入示例', '', 1, 99, 1117,
  188. 'demo', 'ep:caret-right', '', 0, ''
  189. );
  190. SELECT @parentId1 := LAST_INSERT_ID();
  191. INSERT INTO system_menu(
  192. name, permission, type, sort, parent_id,
  193. path, icon, component, status, component_name
  194. )
  195. VALUES (
  196. '支付实战', '', 2, 1, @parentId1,
  197. 'demo-order', 'fa:leaf', 'pay/demo/order/index', 0, NULL
  198. );
  199. INSERT INTO system_menu(
  200. name, permission, type, sort, parent_id,
  201. path, icon, component, status, component_name
  202. )
  203. VALUES (
  204. '转账实战', '', 2, 1, @parentId1,
  205. 'demo-transfer', 'fa:leaf', 'pay/demo/transfer/index', 0, NULL
  206. );
  207. -- 转账状态和转账类型数据字典
  208. INSERT INTO `system_dict_type`(`name`, `type`, `status`, `remark`, `creator`, `create_time`, `updater`, `update_time`, `deleted`, `deleted_time`) VALUES ('支付转账类型', 'pay_transfer_type', 0, '', '1', '2023-10-28 16:27:18', '1', '2023-10-28 16:27:18', b'0', '1970-01-01 00:00:00');
  209. INSERT INTO `system_dict_type`(`name`, `type`, `status`, `remark`, `creator`, `create_time`, `updater`, `update_time`, `deleted`, `deleted_time`) VALUES ('转账订单状态', 'pay_transfer_status', 0, '', '1', '2023-10-28 16:18:32', '1', '2023-10-28 16:18:32', b'0', '1970-01-01 00:00:00');
  210. INSERT INTO `system_dict_data`(`sort`, `label`, `value`, `dict_type`, `status`, `color_type`, `css_class`, `remark`, `creator`, `create_time`, `updater`, `update_time`, `deleted`) VALUES (4, '钱包余额', '4', 'pay_transfer_type', 0, 'info', '', '', '1', '2023-10-28 16:28:37', '1', '2023-10-28 16:28:37', b'0');
  211. INSERT INTO `system_dict_data`(`sort`, `label`, `value`, `dict_type`, `status`, `color_type`, `css_class`, `remark`, `creator`, `create_time`, `updater`, `update_time`, `deleted`) VALUES (3, '银行卡', '3', 'pay_transfer_type', 0, 'default', '', '', '1', '2023-10-28 16:28:21', '1', '2023-10-28 16:28:21', b'0');
  212. INSERT INTO `system_dict_data`(`sort`, `label`, `value`, `dict_type`, `status`, `color_type`, `css_class`, `remark`, `creator`, `create_time`, `updater`, `update_time`, `deleted`) VALUES (2, '微信余额', '2', 'pay_transfer_type', 0, 'info', '', '', '1', '2023-10-28 16:28:07', '1', '2023-10-28 16:28:07', b'0');
  213. INSERT INTO `system_dict_data`(`sort`, `label`, `value`, `dict_type`, `status`, `color_type`, `css_class`, `remark`, `creator`, `create_time`, `updater`, `update_time`, `deleted`) VALUES (1, '支付宝余额', '1', 'pay_transfer_type', 0, 'default', '', '', '1', '2023-10-28 16:27:44', '1', '2023-10-28 16:27:44', b'0');
  214. INSERT INTO `system_dict_data`(`sort`, `label`, `value`, `dict_type`, `status`, `color_type`, `css_class`, `remark`, `creator`, `create_time`, `updater`, `update_time`, `deleted`) VALUES (4, '转账失败', '30', 'pay_transfer_status', 0, 'warning', '', '', '1', '2023-10-28 16:24:16', '1', '2023-10-28 16:24:16', b'0');
  215. INSERT INTO `system_dict_data`(`sort`, `label`, `value`, `dict_type`, `status`, `color_type`, `css_class`, `remark`, `creator`, `create_time`, `updater`, `update_time`, `deleted`) VALUES (3, '转账成功', '20', 'pay_transfer_status', 0, 'success', '', '', '1', '2023-10-28 16:23:50', '1', '2023-10-28 16:23:50', b'0');
  216. INSERT INTO `system_dict_data`(`sort`, `label`, `value`, `dict_type`, `status`, `color_type`, `css_class`, `remark`, `creator`, `create_time`, `updater`, `update_time`, `deleted`) VALUES (2, '转账进行中', '10', 'pay_transfer_status', 0, 'info', '', '', '1', '2023-10-28 16:23:12', '1', '2023-10-28 16:23:12', b'0');
  217. INSERT INTO `system_dict_data`(`sort`, `label`, `value`, `dict_type`, `status`, `color_type`, `css_class`, `remark`, `creator`, `create_time`, `updater`, `update_time`, `deleted`) VALUES (1, '等待转账', '0', 'pay_transfer_status', 0, 'default', '', '', '1', '2023-10-28 16:21:43', '1', '2023-10-28 16:23:22', b'0');
  218. -- 转账订单菜单脚本
  219. INSERT INTO system_menu(
  220. name, permission, type, sort, parent_id,
  221. path, icon, component, status, component_name
  222. )
  223. VALUES (
  224. '转账订单', '', 2, 3, 1117,
  225. 'transfer', 'ep:credit-card', 'pay/transfer/index', 0, 'PayTransfer'
  226. );