yanderong
6 天以前 3ad5f38c2f98eb320a1860c51cc5e2c92c7b7469
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
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
-- VIN码充电订单独立存储增量脚本
-- MyCat 环境请分逻辑库执行:订单表在 charging_pile_order,菜单在 charging_pile_other。
 
USE charging_pile_order;
 
CREATE TABLE IF NOT EXISTS `t_vin_charging_order` (
  `id` bigint NOT NULL COMMENT '主键',
  `code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL COMMENT '订单编号',
  `vin_id` bigint NOT NULL COMMENT 'VIN管理记录ID(分片键)',
  `order_type` int DEFAULT '2' COMMENT '订单类型(VIN码充电订单)',
  `order_classification` int DEFAULT NULL COMMENT '订单分类(1=线上,2=线下)',
  `app_user_id` bigint DEFAULT NULL COMMENT '用户id',
  `app_user_car_id` bigint DEFAULT NULL COMMENT '充电车辆id',
  `plate_num` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL COMMENT '车牌号',
  `reservation_time` datetime DEFAULT NULL COMMENT '预约充电时间',
  `expected_vin` varchar(64) DEFAULT NULL COMMENT '支付车辆VIN快照',
  `actual_vin` varchar(64) DEFAULT NULL COMMENT '启动时设备识别VIN',
  `site_id` int DEFAULT NULL COMMENT '站点id',
  `parking_lot_id` int DEFAULT NULL COMMENT '停车场id',
  `charging_pile_id` int DEFAULT NULL COMMENT '充电桩id',
  `charging_gun_id` int DEFAULT NULL COMMENT '充电枪id',
  `charging_capacity` decimal(10,5) DEFAULT '0.00000' COMMENT '充电总度数',
  `charging_power` decimal(10,4) DEFAULT NULL COMMENT '充电功率',
  `start_time` datetime DEFAULT NULL COMMENT '充电开始时间',
  `end_time` datetime DEFAULT NULL COMMENT '充电结束时间',
  `status` int DEFAULT NULL COMMENT '订单状态',
  `end_mode` int DEFAULT NULL COMMENT '结束方式',
  `recharge_amount` decimal(10,4) DEFAULT '0.0000' COMMENT '充值金额',
  `recharge_payment_type` int DEFAULT NULL COMMENT '充值支付方式',
  `recharge_payment_status` int DEFAULT NULL COMMENT '充值支付状态',
  `pay_method` int DEFAULT NULL COMMENT '充电支付模式',
  `balance_pay_amount` decimal(10,2) DEFAULT '0.00' COMMENT '余额支付金额',
  `third_pay_amount` decimal(10,2) DEFAULT '0.00' COMMENT '第三方支付金额',
  `balance_refund_amount` decimal(10,2) DEFAULT '0.00' COMMENT '余额退款金额',
  `third_refund_amount` decimal(10,2) DEFAULT '0.00' COMMENT '第三方退款金额',
  `recharge_serial_number` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL COMMENT '充值支付第三方流水号',
  `charge_amount` decimal(10,2) DEFAULT NULL COMMENT '充电金额',
  `residual_amount` decimal(10,2) DEFAULT NULL COMMENT '充值剩余金额',
  `order_amount` decimal(10,4) DEFAULT NULL COMMENT '订单金额',
  `payment_amount` decimal(10,4) DEFAULT NULL COMMENT '支付金额',
  `refund_amount` decimal(10,4) DEFAULT '0.0000' COMMENT '退款金额',
  `app_coupon_id` bigint DEFAULT NULL COMMENT '优惠券id',
  `coupon_discount_amount` decimal(10,4) DEFAULT NULL COMMENT '优惠金额',
  `is_whitelist` tinyint NOT NULL DEFAULT '0' COMMENT '是否白名单订单',
  `whitelist_id` bigint DEFAULT NULL COMMENT '白名单用户ID',
  `whitelist_benefit_type` tinyint DEFAULT NULL COMMENT '白名单权益',
  `whitelist_discount_amount` decimal(10,2) NOT NULL DEFAULT '0.00' COMMENT '白名单减免金额',
  `whitelist_electric_refund_amount` decimal(10,2) NOT NULL DEFAULT '0.00' COMMENT '白名单电费退款金额',
  `whitelist_service_refund_amount` decimal(10,2) NOT NULL DEFAULT '0.00' COMMENT '白名单服务费退款金额',
  `vip_discount` decimal(10,2) DEFAULT NULL COMMENT '会员折扣',
  `vip_discount_amount` decimal(10,4) DEFAULT NULL COMMENT '会员优惠金额',
  `refund_code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL COMMENT '退款流水号',
  `refund_status` int DEFAULT NULL COMMENT '退款状态',
  `refund_serial_number` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL COMMENT '退款第三方流水号',
  `refund_time` datetime DEFAULT NULL COMMENT '退款成功时间',
  `create_time` datetime DEFAULT NULL COMMENT '添加时间',
  `del_flag` tinyint(1) DEFAULT '0' COMMENT '删除标记',
  `order_source` int DEFAULT '1' COMMENT '订单来源',
  `source_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL COMMENT '平台名称',
  `operator_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL COMMENT '运营商ID',
  `tripartite_platform_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL COMMENT '三方平台名称',
  `start_charge_seq` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL COMMENT '三方平台充电订单号',
  `commission_amount` decimal(10,4) DEFAULT '0.0000' COMMENT '手续费',
  `sharing_amount` decimal(10,4) DEFAULT '0.0000' COMMENT '分佣',
  `service_charge` decimal(10,4) DEFAULT NULL COMMENT '累计服务费',
  `electrovalence` decimal(10,4) DEFAULT NULL COMMENT '累计电费',
  `current` decimal(10,2) DEFAULT NULL COMMENT '电流',
  `voltage` decimal(10,2) DEFAULT NULL COMMENT '电压',
  `electricity` decimal(10,2) DEFAULT NULL COMMENT '电量',
  `power` decimal(10,2) DEFAULT NULL COMMENT '功率',
  `pay_time` datetime DEFAULT NULL COMMENT '最后支付时间',
  `phone` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL COMMENT '电话',
  `title` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL COMMENT '订单标题',
  `need_elec` decimal(10,2) DEFAULT NULL COMMENT '实时需求电流',
  `total_electricity` double DEFAULT NULL COMMENT '剩余电量',
  `start_soc` decimal(10,2) DEFAULT '0.00' COMMENT '开始SOC',
  `end_soc` decimal(10,2) DEFAULT NULL COMMENT '结束SOC',
  PRIMARY KEY USING BTREE (`id`),
  KEY `idx_vin_id` USING BTREE (`vin_id`),
  KEY `idx_code` USING BTREE (`code`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin ROW_FORMAT=DYNAMIC COMMENT='VIN码充电订单'
TBPARTITION BY MOD_HASH(vin_id) TBPARTITIONS 20;
 
CREATE TABLE IF NOT EXISTS `t_vin_accounting_strategy_detail_order` (
  `id` int NOT NULL COMMENT '计费策略明细主键id',
  `accounting_strategy_id` int DEFAULT NULL COMMENT '策略id',
  `type` int DEFAULT NULL COMMENT '阶段',
  `start_time` varchar(100) DEFAULT NULL COMMENT '开始时间',
  `end_time` varchar(100) DEFAULT NULL COMMENT '结束时间',
  `electrovalence` double(10,4) DEFAULT NULL COMMENT '电价',
  `service_charge` double(10,4) DEFAULT NULL COMMENT '服务费',
  `cost_service_charge` double(10,4) DEFAULT NULL COMMENT '原价服务费',
  `charging_order_id` bigint NOT NULL COMMENT 'VIN码充电订单id(分片键)',
  `create_time` datetime DEFAULT CURRENT_TIMESTAMP,
  `del_flag` int DEFAULT '0'
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin COMMENT='VIN码订单计费策略明细快照'
TBPARTITION BY MOD_HASH(charging_order_id) TBPARTITIONS 20;
 
CREATE TABLE IF NOT EXISTS `t_vin_accounting_strategy_order` (
  `id` int NOT NULL COMMENT '策略id',
  `site_id` int DEFAULT NULL COMMENT '站点id',
  `name` varchar(255) DEFAULT NULL COMMENT '策略名称',
  `description` varchar(255) DEFAULT NULL COMMENT '策略说明',
  `discount` double(10,2) DEFAULT NULL COMMENT '会员折扣',
  `create_time` datetime DEFAULT NULL COMMENT '添加时间',
  `del_flag` int DEFAULT '0' COMMENT '删除状态',
  `first_user_id` bigint DEFAULT NULL COMMENT '一级审核用户id',
  `two_user_id` bigint DEFAULT NULL COMMENT '二级审核用户id',
  `first_remark` varchar(255) DEFAULT NULL COMMENT '一级审核备注',
  `two_remark` varchar(255) DEFAULT NULL COMMENT '二级审核备注',
  `audit_status` int DEFAULT '1' COMMENT '审核状态',
  `first_audit_time` datetime DEFAULT NULL COMMENT '一级审核时间',
  `two_audit_time` datetime DEFAULT NULL COMMENT '二级审核时间',
  `user_id` bigint DEFAULT NULL COMMENT '申请人ID',
  `parent_id` int DEFAULT NULL COMMENT '父级id',
  `charging_order_id` bigint NOT NULL COMMENT 'VIN码充电订单id(分片键)'
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin COMMENT='VIN码订单计费策略快照'
TBPARTITION BY MOD_HASH(charging_order_id) TBPARTITIONS 20;
 
CREATE TABLE IF NOT EXISTS `t_vin_charging_order_accounting_strategy` (
  `id` bigint NOT NULL COMMENT '主键',
  `charging_order_id` bigint NOT NULL COMMENT 'VIN码充电订单id(分片键)',
  `accounting_strategy_detail_id` bigint DEFAULT NULL COMMENT '计费策略明细id',
  `type` int DEFAULT NULL COMMENT '阶段',
  `start_time` varchar(100) DEFAULT NULL COMMENT '开始时间',
  `end_time` varchar(100) DEFAULT NULL COMMENT '结束时间',
  `electrovalence` double(10,4) DEFAULT NULL COMMENT '电价',
  `service_charge` double(10,4) DEFAULT NULL COMMENT '服务费',
  `cost_service_charge` double(10,4) DEFAULT NULL COMMENT '原价服务费',
  `charging_capacity` decimal(10,4) DEFAULT NULL COMMENT '充电度数',
  `create_time` datetime DEFAULT NULL COMMENT '首次添加时间',
  `period_electric_price` decimal(10,4) DEFAULT NULL COMMENT '时段电费',
  `period_service_price` decimal(10,4) DEFAULT NULL COMMENT '时段服务费',
  `period_original_service_price` decimal(10,4) DEFAULT NULL COMMENT '时段原服务费',
  `vip_discount_amount` decimal(10,4) DEFAULT NULL COMMENT '会员折扣金额',
  `coupon_discount_amount` decimal(10,4) DEFAULT NULL COMMENT '优惠券抵扣金额',
  PRIMARY KEY USING BTREE (`id`),
  KEY `idx_vin_order_id` USING BTREE (`charging_order_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin COMMENT='VIN码充电订单计费明细'
TBPARTITION BY MOD_HASH(charging_order_id) TBPARTITIONS 20;
 
CREATE TABLE IF NOT EXISTS `t_vin_charging_order_refund` (
  `id` bigint NOT NULL COMMENT '主键',
  `charging_order_id` bigint NOT NULL COMMENT 'VIN码充电订单id(分片键)',
  `refund_code` varchar(255) DEFAULT NULL COMMENT '退款流水号',
  `refund_amount` decimal(10,2) DEFAULT NULL COMMENT '退款金额',
  `balance_refund_amount` decimal(10,2) NOT NULL DEFAULT '0.00' COMMENT '余额退款金额',
  `third_refund_amount` decimal(10,2) NOT NULL DEFAULT '0.00' COMMENT '第三方退款金额',
  `refund_status` int DEFAULT NULL COMMENT '退款状态',
  `refund_serial_number` varchar(255) DEFAULT NULL COMMENT '退款第三方流水号',
  `refund_time` datetime DEFAULT NULL COMMENT '退款成功时间',
  `code` varchar(255) DEFAULT NULL COMMENT '订单编号',
  `refund_title` varchar(255) DEFAULT NULL COMMENT '退款标题',
  `refund_content` varchar(255) DEFAULT NULL COMMENT '退款内容',
  `refund_reason` varchar(255) DEFAULT NULL COMMENT '退款原因',
  `refund_remark` varchar(255) DEFAULT NULL COMMENT '退款备注',
  `refund_total_amount` decimal(10,2) DEFAULT NULL COMMENT '累计退款金额',
  `refund_fee` decimal(10,2) DEFAULT '0.00' COMMENT '手续费',
  `pay_amount` decimal(10,2) DEFAULT NULL COMMENT '支付金额',
  `pay_type` int DEFAULT NULL COMMENT '支付类型',
  `create_time` datetime DEFAULT NULL,
  `del_flag` int DEFAULT '0'
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin COMMENT='VIN码充电退款明细'
TBPARTITION BY MOD_HASH(charging_order_id) TBPARTITIONS 20;
 
CREATE TABLE IF NOT EXISTS `t_vin_charging_order_share_record` (
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键',
  `charging_order_id` bigint DEFAULT NULL COMMENT 'VIN码充电订单ID',
  `charging_order_code` varchar(64) NOT NULL COMMENT 'VIN码充电订单号',
  `site_id` int DEFAULT NULL COMMENT '站点ID',
  `partner_id` int DEFAULT NULL COMMENT '合作商ID',
  `pay_channel` varchar(16) NOT NULL COMMENT '支付渠道',
  `channel_pay_amount` decimal(10,2) NOT NULL DEFAULT '0.00',
  `channel_gift_amount` decimal(10,2) NOT NULL DEFAULT '0.00',
  `channel_pay_ratio` decimal(10,6) NOT NULL DEFAULT '0.000000',
  `channel_electricity_amount` decimal(10,2) NOT NULL DEFAULT '0.00',
  `channel_service_amount` decimal(10,2) NOT NULL DEFAULT '0.00',
  `electricity_share_ratio` decimal(5,2) DEFAULT NULL,
  `service_share_ratio` decimal(5,2) DEFAULT NULL,
  `electricity_share_amount` decimal(10,2) NOT NULL DEFAULT '0.00',
  `service_share_amount` decimal(10,2) NOT NULL DEFAULT '0.00',
  `share_amount` decimal(10,2) NOT NULL DEFAULT '0.00',
  `need_online_share` tinyint(1) NOT NULL DEFAULT '0',
  `online_share_status` varchar(16) NOT NULL DEFAULT 'RECORDED',
  `seq_no` varchar(50) DEFAULT NULL,
  `busi_type` varchar(1) DEFAULT NULL,
  `ori_mer_id` varchar(20) DEFAULT NULL,
  `ori_trx_date` date DEFAULT NULL,
  `sub_order_id` varchar(50) DEFAULT NULL,
  `sub_mer_id` varchar(20) DEFAULT NULL,
  `sub_mer_prtcl_no` varchar(20) DEFAULT NULL,
  `mer_acct` varchar(34) DEFAULT NULL,
  `icbc_order_id` varchar(64) DEFAULT NULL,
  `sub_order_seq` varchar(32) DEFAULT NULL,
  `sub_order_trxid` varchar(64) DEFAULT NULL,
  `rec_result` varchar(8) DEFAULT NULL,
  `request_json` text,
  `response_json` text,
  `fail_reason` varchar(512) DEFAULT NULL,
  `retry_count` int NOT NULL DEFAULT '0',
  `last_retry_time` datetime DEFAULT NULL,
  `create_time` datetime DEFAULT NULL,
  `del_flag` int DEFAULT '0',
  PRIMARY KEY (`id`),
  UNIQUE KEY `uk_order_channel` (`charging_order_code`,`pay_channel`),
  KEY `idx_share_status` (`online_share_status`),
  KEY `idx_share_sub_order_id` (`sub_order_id`),
  KEY `idx_share_partner` (`partner_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin COMMENT='VIN码充电订单全渠道分账记录';
 
USE charging_pile_other;
 
INSERT INTO `sys_menu`
(`menu_name`,`parent_id`,`order_num`,`path`,`component`,`query`,`is_frame`,`is_cache`,`menu_type`,`visible`,`status`,`perms`,`icon`,`create_by`,`create_time`,`update_by`,`update_time`,`remark`)
SELECT 'VIN码充电订单', parent.menu_id, 2, 'vinChargingOrder', 'order/vinChargingOrder/index', '', 1, 0, 'C', '0', '0', '/vinChargingOrder/list', 'transaction', 'admin', NOW(), '', NULL, 'VIN码充电订单独立查询'
FROM `sys_menu` parent
WHERE parent.perms = '/vinManagement'
  AND NOT EXISTS (SELECT 1 FROM `sys_menu` WHERE `perms` = '/vinChargingOrder/list');
 
INSERT INTO `sys_menu`
(`menu_name`,`parent_id`,`order_num`,`path`,`component`,`query`,`is_frame`,`is_cache`,`menu_type`,`visible`,`status`,`perms`,`icon`,`create_by`,`create_time`,`update_by`,`update_time`,`remark`)
SELECT 'VIN订单详情', parent.menu_id, 1, '#', '', '', 1, 0, 'F', '0', '0', '/vinChargingOrder/detail', '#', 'admin', NOW(), '', NULL, ''
FROM `sys_menu` parent
WHERE parent.perms = '/vinChargingOrder/list'
  AND NOT EXISTS (SELECT 1 FROM `sys_menu` WHERE `perms` = '/vinChargingOrder/detail');
 
INSERT INTO `sys_menu`
(`menu_name`,`parent_id`,`order_num`,`path`,`component`,`query`,`is_frame`,`is_cache`,`menu_type`,`visible`,`status`,`perms`,`icon`,`create_by`,`create_time`,`update_by`,`update_time`,`remark`)
SELECT 'VIN订单导出', parent.menu_id, 2, '#', '', '', 1, 0, 'F', '0', '0', '/vinChargingOrder/export', '#', 'admin', NOW(), '', NULL, ''
FROM `sys_menu` parent
WHERE parent.perms = '/vinChargingOrder/list'
  AND NOT EXISTS (SELECT 1 FROM `sys_menu` WHERE `perms` = '/vinChargingOrder/export');
 
INSERT INTO `sys_role_menu` (`role_id`,`menu_id`)
SELECT 1, menu.menu_id
FROM `sys_menu` menu
WHERE menu.perms IN ('/vinChargingOrder/list','/vinChargingOrder/detail','/vinChargingOrder/export')
  AND NOT EXISTS (
    SELECT 1 FROM `sys_role_menu` role_menu
    WHERE role_menu.role_id = 1 AND role_menu.menu_id = menu.menu_id
  );