Commit 53bda604b06efd583d1a57e86b12942fc1638f09

Authored by 芋道源码
Committed by Gitee
2 parents 27592d3d 4e93efdb

!45 增加管理后台的企业微信、钉钉的社交登陆方式

Merge pull request !45 from 芋道源码/admin-social-auth
Showing 114 changed files with 2765 additions and 1275 deletions
README.md
@@ -127,11 +127,11 @@ @@ -127,11 +127,11 @@
127 127
128 | 模块 | biu | biu | biu | 128 | 模块 | biu | biu | biu |
129 | --- | --- | --- | --- | 129 | --- | --- | --- | --- |
130 -| 登陆 & 首页 | ![登录](https://static.iocoder.cn/images/ruoyi-vue-pro/登录.jpg) | ![首页](https://static.iocoder.cn/images/ruoyi-vue-pro/首页.jpg) | ![个人中心](https://static.iocoder.cn/images/ruoyi-vue-pro/个人中心.jpg) | 130 +| 登录 & 首页 | ![登录](https://static.iocoder.cn/images/ruoyi-vue-pro/登录.jpg) | ![首页](https://static.iocoder.cn/images/ruoyi-vue-pro/首页.jpg) | ![个人中心](https://static.iocoder.cn/images/ruoyi-vue-pro/个人中心.jpg) |
131 | 用户 | ![用户管理](https://static.iocoder.cn/images/ruoyi-vue-pro/用户管理.jpg) | ![在线用户](https://static.iocoder.cn/images/ruoyi-vue-pro/在线用户.jpg) | - | 131 | 用户 | ![用户管理](https://static.iocoder.cn/images/ruoyi-vue-pro/用户管理.jpg) | ![在线用户](https://static.iocoder.cn/images/ruoyi-vue-pro/在线用户.jpg) | - |
132 | 部门 & 岗位 | ![部门管理](https://static.iocoder.cn/images/ruoyi-vue-pro/部门管理.jpg) | ![岗位管理](https://static.iocoder.cn/images/ruoyi-vue-pro/岗位管理.jpg) | - | 132 | 部门 & 岗位 | ![部门管理](https://static.iocoder.cn/images/ruoyi-vue-pro/部门管理.jpg) | ![岗位管理](https://static.iocoder.cn/images/ruoyi-vue-pro/岗位管理.jpg) | - |
133 | 菜单 & 角色 | ![菜单管理](https://static.iocoder.cn/images/ruoyi-vue-pro/菜单管理.jpg) | ![角色管理](https://static.iocoder.cn/images/ruoyi-vue-pro/角色管理.jpg) | - | 133 | 菜单 & 角色 | ![菜单管理](https://static.iocoder.cn/images/ruoyi-vue-pro/菜单管理.jpg) | ![角色管理](https://static.iocoder.cn/images/ruoyi-vue-pro/角色管理.jpg) | - |
134 -| 审计日志 | ![操作日志](https://static.iocoder.cn/images/ruoyi-vue-pro/操作日志.jpg) | ![登陆日志](https://static.iocoder.cn/images/ruoyi-vue-pro/登陆日志.jpg) | - | 134 +| 审计日志 | ![操作日志](https://static.iocoder.cn/images/ruoyi-vue-pro/操作日志.jpg) | ![登录日志](https://static.iocoder.cn/images/ruoyi-vue-pro/登录日志.jpg) | - |
135 | 短信 | ![短信渠道](https://static.iocoder.cn/images/ruoyi-vue-pro/短信渠道.jpg) | ![短信模板](https://static.iocoder.cn/images/ruoyi-vue-pro/短信模板.jpg) | ![短信日志](https://static.iocoder.cn/images/ruoyi-vue-pro/短信日志.jpg) | 135 | 短信 | ![短信渠道](https://static.iocoder.cn/images/ruoyi-vue-pro/短信渠道.jpg) | ![短信模板](https://static.iocoder.cn/images/ruoyi-vue-pro/短信模板.jpg) | ![短信日志](https://static.iocoder.cn/images/ruoyi-vue-pro/短信日志.jpg) |
136 | 字典 | ![字典类型](https://static.iocoder.cn/images/ruoyi-vue-pro/字典类型.jpg) | ![字典数据](https://static.iocoder.cn/images/ruoyi-vue-pro/字典数据.jpg) | - | 136 | 字典 | ![字典类型](https://static.iocoder.cn/images/ruoyi-vue-pro/字典类型.jpg) | ![字典数据](https://static.iocoder.cn/images/ruoyi-vue-pro/字典数据.jpg) | - |
137 | 错误码 & 通知 | ![错误码管理](https://static.iocoder.cn/images/ruoyi-vue-pro/错误码管理.jpg) | ![通知公告](https://static.iocoder.cn/images/ruoyi-vue-pro/通知公告.jpg) | - | 137 | 错误码 & 通知 | ![错误码管理](https://static.iocoder.cn/images/ruoyi-vue-pro/错误码管理.jpg) | ![通知公告](https://static.iocoder.cn/images/ruoyi-vue-pro/通知公告.jpg) | - |
sql/ruoyi-vue-pro.sql
1 /* 1 /*
2 Navicat Premium Data Transfer 2 Navicat Premium Data Transfer
3 3
4 - Source Server : local-mysql001 4 + Source Server : 127.0.0.1
5 Source Server Type : MySQL 5 Source Server Type : MySQL
6 - Source Server Version : 50718 6 + Source Server Version : 80026
7 Source Host : localhost:3306 7 Source Host : localhost:3306
8 Source Schema : ruoyi-vue-pro 8 Source Schema : ruoyi-vue-pro
9 9
10 Target Server Type : MySQL 10 Target Server Type : MySQL
11 - Target Server Version : 50718 11 + Target Server Version : 80026
12 File Encoding : 65001 12 File Encoding : 65001
13 13
14 - Date: 03/05/2021 12:02:03 14 + Date: 06/10/2021 01:02:54
15 */ 15 */
16 16
17 SET NAMES utf8mb4; 17 SET NAMES utf8mb4;
@@ -22,10 +22,10 @@ SET FOREIGN_KEY_CHECKS = 0; @@ -22,10 +22,10 @@ SET FOREIGN_KEY_CHECKS = 0;
22 -- ---------------------------- 22 -- ----------------------------
23 DROP TABLE IF EXISTS `inf_api_access_log`; 23 DROP TABLE IF EXISTS `inf_api_access_log`;
24 CREATE TABLE `inf_api_access_log` ( 24 CREATE TABLE `inf_api_access_log` (
25 - `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '日志主键', 25 + `id` bigint NOT NULL AUTO_INCREMENT COMMENT '日志主键',
26 `trace_id` varchar(64) NOT NULL DEFAULT '' COMMENT '链路追踪编å·', 26 `trace_id` varchar(64) NOT NULL DEFAULT '' COMMENT '链路追踪编å·',
27 - `user_id` bigint(20) NOT NULL DEFAULT '0' COMMENT '用户编å·',  
28 - `user_type` tinyint(4) NOT NULL DEFAULT '0' COMMENT '用户类型', 27 + `user_id` bigint NOT NULL DEFAULT '0' COMMENT '用户编å·',
  28 + `user_type` tinyint NOT NULL DEFAULT '0' COMMENT '用户类型',
29 `application_name` varchar(50) NOT NULL COMMENT '应用å', 29 `application_name` varchar(50) NOT NULL COMMENT '应用å',
30 `request_method` varchar(16) NOT NULL DEFAULT '' COMMENT '请求方法å', 30 `request_method` varchar(16) NOT NULL DEFAULT '' COMMENT '请求方法å',
31 `request_url` varchar(255) NOT NULL DEFAULT '' COMMENT '请求地å€', 31 `request_url` varchar(255) NOT NULL DEFAULT '' COMMENT '请求地å€',
@@ -34,8 +34,8 @@ CREATE TABLE `inf_api_access_log` ( @@ -34,8 +34,8 @@ CREATE TABLE `inf_api_access_log` (
34 `user_agent` varchar(512) NOT NULL COMMENT 'æµè§ˆå™¨ UA', 34 `user_agent` varchar(512) NOT NULL COMMENT 'æµè§ˆå™¨ UA',
35 `begin_time` datetime NOT NULL COMMENT '开始请求时间', 35 `begin_time` datetime NOT NULL COMMENT '开始请求时间',
36 `end_time` datetime NOT NULL COMMENT '结æŸè¯·æ±‚æ—¶é—´', 36 `end_time` datetime NOT NULL COMMENT '结æŸè¯·æ±‚æ—¶é—´',
37 - `duration` int(11) NOT NULL COMMENT '执行时长',  
38 - `result_code` int(11) NOT NULL DEFAULT '0' COMMENT '结果ç ', 37 + `duration` int NOT NULL COMMENT '执行时长',
  38 + `result_code` int NOT NULL DEFAULT '0' COMMENT '结果ç ',
39 `result_msg` varchar(512) DEFAULT '' COMMENT '结果æç¤º', 39 `result_msg` varchar(512) DEFAULT '' COMMENT '结果æç¤º',
40 `creator` varchar(64) DEFAULT '' COMMENT '创建者', 40 `creator` varchar(64) DEFAULT '' COMMENT '创建者',
41 `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', 41 `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
@@ -43,452 +43,12 @@ CREATE TABLE `inf_api_access_log` ( @@ -43,452 +43,12 @@ CREATE TABLE `inf_api_access_log` (
43 `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'æ›´æ–°æ—¶é—´', 43 `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'æ›´æ–°æ—¶é—´',
44 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是å¦åˆ é™¤', 44 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是å¦åˆ é™¤',
45 PRIMARY KEY (`id`) USING BTREE 45 PRIMARY KEY (`id`) USING BTREE
46 -) ENGINE=InnoDB AUTO_INCREMENT=441 DEFAULT CHARSET=utf8mb4 COMMENT='API 访问日志表'; 46 +) ENGINE=InnoDB AUTO_INCREMENT=1302 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='API 访问日志表';
47 47
48 -- ---------------------------- 48 -- ----------------------------
49 -- Records of inf_api_access_log 49 -- Records of inf_api_access_log
50 -- ---------------------------- 50 -- ----------------------------
51 BEGIN; 51 BEGIN;
52 -INSERT INTO `inf_api_access_log` VALUES (1, '1dd549318d6740a8bdc3fcdbd9158378.224.16193666352600001', 0, 2, 'dashboard', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:03:55', '2021-04-26 00:03:55', 116, 0, '', NULL, '2021-04-26 00:03:55', NULL, '2021-04-26 00:03:55', b'0');  
53 -INSERT INTO `inf_api_access_log` VALUES (2, '1dd549318d6740a8bdc3fcdbd9158378.216.16193666354070005', 0, 2, 'dashboard', 'POST', '/api/logout', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:03:55', '2021-04-26 00:03:55', 6, 0, '', NULL, '2021-04-26 00:03:55', NULL, '2021-04-26 00:03:55', b'0');  
54 -INSERT INTO `inf_api_access_log` VALUES (3, '1dd549318d6740a8bdc3fcdbd9158378.225.16193666352600001', 0, 2, 'dashboard', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:03:55', '2021-04-26 00:03:55', 116, 0, '', NULL, '2021-04-26 00:03:55', NULL, '2021-04-26 00:03:55', b'0');  
55 -INSERT INTO `inf_api_access_log` VALUES (4, '1dd549318d6740a8bdc3fcdbd9158378.218.16193666367110003', 0, 2, 'dashboard', 'POST', '/api/logout', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:03:57', '2021-04-26 00:03:57', 2, 0, '', NULL, '2021-04-26 00:03:57', NULL, '2021-04-26 00:03:57', b'0');  
56 -INSERT INTO `inf_api_access_log` VALUES (5, '1dd549318d6740a8bdc3fcdbd9158378.217.16193666355290003', 0, 2, 'dashboard', 'GET', '/api/system/captcha/get-image', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:03:56', '2021-04-26 00:03:58', 2407, 0, '', NULL, '2021-04-26 00:03:58', NULL, '2021-04-26 00:03:58', b'0');  
57 -INSERT INTO `inf_api_access_log` VALUES (6, '1dd549318d6740a8bdc3fcdbd9158378.220.16193666370340005', 0, 2, 'dashboard', 'GET', '/api/system/captcha/get-image', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:03:57', '2021-04-26 00:03:58', 903, 0, '', NULL, '2021-04-26 00:03:58', NULL, '2021-04-26 00:03:58', b'0');  
58 -INSERT INTO `inf_api_access_log` VALUES (7, '1dd549318d6740a8bdc3fcdbd9158378.222.16193666402630005', 0, 2, 'dashboard', 'POST', '/api/login', '{\"query\":{},\"body\":\"{\\\"username\\\":\\\"admin\\\",\\\"password\\\":\\\"admin123\\\",\\\"code\\\":\\\"f6jrk\\\",\\\"uuid\\\":\\\"0157d2688cec444da04472f263d0ca4b\\\"}\"}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:04:00', '2021-04-26 00:04:01', 284, 0, '', NULL, '2021-04-26 00:04:01', NULL, '2021-04-26 00:04:01', b'0');  
59 -INSERT INTO `inf_api_access_log` VALUES (8, '1dd549318d6740a8bdc3fcdbd9158378.223.16193666405640005', 1, 2, 'dashboard', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:04:01', '2021-04-26 00:04:01', 38, 0, '', NULL, '2021-04-26 00:04:01', NULL, '2021-04-26 00:04:01', b'0');  
60 -INSERT INTO `inf_api_access_log` VALUES (9, '1dd549318d6740a8bdc3fcdbd9158378.224.16193666405690003', 1, 2, 'dashboard', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:04:01', '2021-04-26 00:04:01', 43, 0, '', NULL, '2021-04-26 00:04:01', NULL, '2021-04-26 00:04:01', b'0');  
61 -INSERT INTO `inf_api_access_log` VALUES (10, '1dd549318d6740a8bdc3fcdbd9158378.225.16193666406230003', 1, 2, 'dashboard', 'GET', '/api/list-menus', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:04:01', '2021-04-26 00:04:01', 9, 0, '', NULL, '2021-04-26 00:04:01', NULL, '2021-04-26 00:04:01', b'0');  
62 -INSERT INTO `inf_api_access_log` VALUES (11, '1dd549318d6740a8bdc3fcdbd9158378.218.16193666440940005', 1, 2, 'dashboard', 'GET', '/api/system/dept/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:04:04', '2021-04-26 00:04:04', 46, 0, '', NULL, '2021-04-26 00:04:04', NULL, '2021-04-26 00:04:04', b'0');  
63 -INSERT INTO `inf_api_access_log` VALUES (12, '1dd549318d6740a8bdc3fcdbd9158378.219.16193666441100005', 1, 2, 'dashboard', 'GET', '/api/system/post/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:04:04', '2021-04-26 00:04:04', 42, 0, '', NULL, '2021-04-26 00:04:04', NULL, '2021-04-26 00:04:04', b'0');  
64 -INSERT INTO `inf_api_access_log` VALUES (13, '1dd549318d6740a8bdc3fcdbd9158378.220.16193666441100007', 1, 2, 'dashboard', 'GET', '/api/infra/config/get-value-by-key', '{\"query\":{\"key\":\"sys.user.init-password\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:04:04', '2021-04-26 00:04:04', 45, 0, '', NULL, '2021-04-26 00:04:04', NULL, '2021-04-26 00:04:04', b'0');  
65 -INSERT INTO `inf_api_access_log` VALUES (14, '1dd549318d6740a8bdc3fcdbd9158378.216.16193666440910007', 1, 2, 'dashboard', 'GET', '/api/system/user/page', '{\"query\":{\"pageNo\":\"1\",\"pageSize\":\"10\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:04:04', '2021-04-26 00:04:04', 186, 0, '', NULL, '2021-04-26 00:04:04', NULL, '2021-04-26 00:04:04', b'0');  
66 -INSERT INTO `inf_api_access_log` VALUES (15, '1dd549318d6740a8bdc3fcdbd9158378.224.16193666638290005', 1, 2, 'dashboard', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:04:24', '2021-04-26 00:04:24', 6, 0, '', NULL, '2021-04-26 00:04:24', NULL, '2021-04-26 00:04:24', b'0');  
67 -INSERT INTO `inf_api_access_log` VALUES (16, '1dd549318d6740a8bdc3fcdbd9158378.223.16193666638260007', 1, 2, 'dashboard', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:04:24', '2021-04-26 00:04:24', 14, 0, '', NULL, '2021-04-26 00:04:24', NULL, '2021-04-26 00:04:24', b'0');  
68 -INSERT INTO `inf_api_access_log` VALUES (17, '1dd549318d6740a8bdc3fcdbd9158378.225.16193666638590005', 1, 2, 'dashboard', 'GET', '/api/list-menus', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:04:24', '2021-04-26 00:04:24', 4, 0, '', NULL, '2021-04-26 00:04:24', NULL, '2021-04-26 00:04:24', b'0');  
69 -INSERT INTO `inf_api_access_log` VALUES (18, '1dd549318d6740a8bdc3fcdbd9158378.219.16193666644690007', 1, 2, 'dashboard', 'GET', '/api/system/dept/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:04:24', '2021-04-26 00:04:24', 12, 0, '', NULL, '2021-04-26 00:04:24', NULL, '2021-04-26 00:04:24', b'0');  
70 -INSERT INTO `inf_api_access_log` VALUES (19, '1dd549318d6740a8bdc3fcdbd9158378.218.16193666644660007', 1, 2, 'dashboard', 'GET', '/api/system/user/page', '{\"query\":{\"pageNo\":\"1\",\"pageSize\":\"10\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:04:24', '2021-04-26 00:04:24', 23, 0, '', NULL, '2021-04-26 00:04:24', NULL, '2021-04-26 00:04:24', b'0');  
71 -INSERT INTO `inf_api_access_log` VALUES (20, '1dd549318d6740a8bdc3fcdbd9158378.216.16193666644810009', 1, 2, 'dashboard', 'GET', '/api/infra/config/get-value-by-key', '{\"query\":{\"key\":\"sys.user.init-password\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:04:24', '2021-04-26 00:04:24', 12, 0, '', NULL, '2021-04-26 00:04:24', NULL, '2021-04-26 00:04:24', b'0');  
72 -INSERT INTO `inf_api_access_log` VALUES (21, '1dd549318d6740a8bdc3fcdbd9158378.220.16193666644810009', 1, 2, 'dashboard', 'GET', '/api/system/post/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:04:24', '2021-04-26 00:04:24', 15, 0, '', NULL, '2021-04-26 00:04:25', NULL, '2021-04-26 00:04:25', b'0');  
73 -INSERT INTO `inf_api_access_log` VALUES (22, '8562e90feff04d7298d0f7007c290adc.217.16193668641450001', 1, 2, 'dashboard', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:07:44', '2021-04-26 00:07:44', 159, 0, '', NULL, '2021-04-26 00:07:44', NULL, '2021-04-26 00:07:44', b'0');  
74 -INSERT INTO `inf_api_access_log` VALUES (23, '8562e90feff04d7298d0f7007c290adc.216.16193668641450001', 1, 2, 'dashboard', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:07:44', '2021-04-26 00:07:44', 145, 0, '', NULL, '2021-04-26 00:07:44', NULL, '2021-04-26 00:07:44', b'0');  
75 -INSERT INTO `inf_api_access_log` VALUES (24, '8562e90feff04d7298d0f7007c290adc.218.16193668643180001', 1, 2, 'dashboard', 'GET', '/api/list-menus', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:07:44', '2021-04-26 00:07:44', 12, 0, '', NULL, '2021-04-26 00:07:44', NULL, '2021-04-26 00:07:44', b'0');  
76 -INSERT INTO `inf_api_access_log` VALUES (25, '8562e90feff04d7298d0f7007c290adc.210.16193668649240003', 1, 2, 'dashboard', 'GET', '/api/system/post/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:07:45', '2021-04-26 00:07:45', 35, 0, '', NULL, '2021-04-26 00:07:45', NULL, '2021-04-26 00:07:45', b'0');  
77 -INSERT INTO `inf_api_access_log` VALUES (26, '8562e90feff04d7298d0f7007c290adc.211.16193668649240003', 1, 2, 'dashboard', 'GET', '/api/system/dept/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:07:45', '2021-04-26 00:07:45', 44, 0, '', NULL, '2021-04-26 00:07:45', NULL, '2021-04-26 00:07:45', b'0');  
78 -INSERT INTO `inf_api_access_log` VALUES (27, '8562e90feff04d7298d0f7007c290adc.212.16193668649240003', 1, 2, 'dashboard', 'GET', '/api/infra/config/get-value-by-key', '{\"query\":{\"key\":\"sys.user.init-password\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:07:45', '2021-04-26 00:07:45', 49, 0, '', NULL, '2021-04-26 00:07:45', NULL, '2021-04-26 00:07:45', b'0');  
79 -INSERT INTO `inf_api_access_log` VALUES (28, '8562e90feff04d7298d0f7007c290adc.209.16193668648990005', 1, 2, 'dashboard', 'GET', '/api/system/user/page', '{\"query\":{\"pageNo\":\"1\",\"pageSize\":\"10\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:07:45', '2021-04-26 00:07:45', 206, 0, '', NULL, '2021-04-26 00:07:45', NULL, '2021-04-26 00:07:45', b'0');  
80 -INSERT INTO `inf_api_access_log` VALUES (29, '8562e90feff04d7298d0f7007c290adc.213.16193668665060005', 1, 2, 'dashboard', 'GET', '/api/system/role/page', '{\"query\":{\"pageNo\":\"1\",\"pageSize\":\"10\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:07:47', '2021-04-26 00:07:47', 30, 0, '', NULL, '2021-04-26 00:07:47', NULL, '2021-04-26 00:07:47', b'0');  
81 -INSERT INTO `inf_api_access_log` VALUES (30, '4d04e567c10d4d47b5617eb4410cb779.217.16193673598720001', 1, 2, 'dashboard', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:16:00', '2021-04-26 00:16:05', 4667, 0, '', NULL, '2021-04-26 00:16:05', NULL, '2021-04-26 00:16:05', b'0');  
82 -INSERT INTO `inf_api_access_log` VALUES (31, '4d04e567c10d4d47b5617eb4410cb779.218.16193673598720001', 1, 2, 'dashboard', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:16:00', '2021-04-26 00:16:05', 4681, 500, '系统异常', NULL, '2021-04-26 00:16:05', NULL, '2021-04-26 00:16:05', b'0');  
83 -INSERT INTO `inf_api_access_log` VALUES (32, '4d04e567c10d4d47b5617eb4410cb779.211.16193673645730003', 0, 2, 'dashboard', 'POST', '/api/logout', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:16:05', '2021-04-26 00:16:05', 28, 0, '', NULL, '2021-04-26 00:16:05', NULL, '2021-04-26 00:16:05', b'0');  
84 -INSERT INTO `inf_api_access_log` VALUES (33, '4d04e567c10d4d47b5617eb4410cb779.212.16193673647080003', 0, 2, 'dashboard', 'GET', '/api/system/captcha/get-image', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:16:05', '2021-04-26 00:16:07', 1975, 0, '', NULL, '2021-04-26 00:16:07', NULL, '2021-04-26 00:16:07', b'0');  
85 -INSERT INTO `inf_api_access_log` VALUES (34, '4d04e567c10d4d47b5617eb4410cb779.213.16193673661600003', 0, 2, 'dashboard', 'GET', '/api/system/captcha/get-image', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:16:06', '2021-04-26 00:16:07', 523, 0, '', NULL, '2021-04-26 00:16:07', NULL, '2021-04-26 00:16:07', b'0');  
86 -INSERT INTO `inf_api_access_log` VALUES (35, '4d04e567c10d4d47b5617eb4410cb779.214.16193673709430005', 0, 2, 'dashboard', 'GET', '/api/system/captcha/get-image', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:16:11', '2021-04-26 00:16:11', 12, 0, '', NULL, '2021-04-26 00:16:11', NULL, '2021-04-26 00:16:11', b'0');  
87 -INSERT INTO `inf_api_access_log` VALUES (36, '4d04e567c10d4d47b5617eb4410cb779.216.16193673744440005', 0, 2, 'dashboard', 'POST', '/api/login', '{\"query\":{},\"body\":\"{\\\"username\\\":\\\"admin\\\",\\\"password\\\":\\\"admin123\\\",\\\"code\\\":\\\"2z1ts\\\",\\\"uuid\\\":\\\"9e55fa517a1247ad80ec39ba66fad48e\\\"}\"}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:16:14', '2021-04-26 00:16:15', 259, 0, '', NULL, '2021-04-26 00:16:15', NULL, '2021-04-26 00:16:15', b'0');  
88 -INSERT INTO `inf_api_access_log` VALUES (37, '4d04e567c10d4d47b5617eb4410cb779.210.16193673850970009', 0, 2, 'dashboard', 'POST', '/api/logout', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:16:25', '2021-04-26 00:16:35', 10079, 0, '', NULL, '2021-04-26 00:16:35', NULL, '2021-04-26 00:16:35', b'0');  
89 -INSERT INTO `inf_api_access_log` VALUES (38, '4d04e567c10d4d47b5617eb4410cb779.219.16193673747270003', 1, 2, 'dashboard', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:16:15', '2021-04-26 00:16:35', 20457, 0, '', NULL, '2021-04-26 00:16:35', NULL, '2021-04-26 00:16:35', b'0');  
90 -INSERT INTO `inf_api_access_log` VALUES (39, '4d04e567c10d4d47b5617eb4410cb779.217.16193673747310003', 1, 2, 'dashboard', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:16:15', '2021-04-26 00:16:35', 20453, 500, '系统异常', NULL, '2021-04-26 00:16:35', NULL, '2021-04-26 00:16:35', b'0');  
91 -INSERT INTO `inf_api_access_log` VALUES (40, '4d04e567c10d4d47b5617eb4410cb779.219.16193674041450005', 0, 2, 'dashboard', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:16:44', '2021-04-26 00:16:44', 8, 0, '', NULL, '2021-04-26 00:16:44', NULL, '2021-04-26 00:16:44', b'0');  
92 -INSERT INTO `inf_api_access_log` VALUES (41, '4d04e567c10d4d47b5617eb4410cb779.210.16193674041420011', 0, 2, 'dashboard', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:16:44', '2021-04-26 00:16:44', 11, 0, '', NULL, '2021-04-26 00:16:44', NULL, '2021-04-26 00:16:44', b'0');  
93 -INSERT INTO `inf_api_access_log` VALUES (42, '4d04e567c10d4d47b5617eb4410cb779.217.16193674042150005', 0, 2, 'dashboard', 'POST', '/api/logout', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:16:44', '2021-04-26 00:16:44', 3, 0, '', NULL, '2021-04-26 00:16:44', NULL, '2021-04-26 00:16:44', b'0');  
94 -INSERT INTO `inf_api_access_log` VALUES (43, '4d04e567c10d4d47b5617eb4410cb779.218.16193674042840005', 0, 2, 'dashboard', 'GET', '/api/system/captcha/get-image', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:16:44', '2021-04-26 00:16:44', 13, 0, '', NULL, '2021-04-26 00:16:44', NULL, '2021-04-26 00:16:44', b'0');  
95 -INSERT INTO `inf_api_access_log` VALUES (44, '4d04e567c10d4d47b5617eb4410cb779.211.16193674056570009', 0, 2, 'dashboard', 'POST', '/api/logout', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:16:46', '2021-04-26 00:16:46', 1, 0, '', NULL, '2021-04-26 00:16:46', NULL, '2021-04-26 00:16:46', b'0');  
96 -INSERT INTO `inf_api_access_log` VALUES (45, '4d04e567c10d4d47b5617eb4410cb779.213.16193674060750009', 0, 2, 'dashboard', 'GET', '/api/system/captcha/get-image', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:16:46', '2021-04-26 00:16:46', 19, 0, '', NULL, '2021-04-26 00:16:46', NULL, '2021-04-26 00:16:46', b'0');  
97 -INSERT INTO `inf_api_access_log` VALUES (46, '4d04e567c10d4d47b5617eb4410cb779.214.16193674101760009', 0, 2, 'dashboard', 'POST', '/api/login', '{\"query\":{},\"body\":\"{\\\"username\\\":\\\"admin\\\",\\\"password\\\":\\\"admin123\\\",\\\"code\\\":\\\"gvv8i\\\",\\\"uuid\\\":\\\"d18b2dfaf50f4038865117f99bd45c30\\\"}\"}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:16:50', '2021-04-26 00:16:50', 106, 0, '', NULL, '2021-04-26 00:16:50', NULL, '2021-04-26 00:16:50', b'0');  
98 -INSERT INTO `inf_api_access_log` VALUES (47, '4d04e567c10d4d47b5617eb4410cb779.215.16193674102970009', 1, 2, 'dashboard', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:16:50', '2021-04-26 00:18:34', 104198, 0, '', NULL, '2021-04-26 00:18:35', NULL, '2021-04-26 00:18:35', b'0');  
99 -INSERT INTO `inf_api_access_log` VALUES (48, '4d04e567c10d4d47b5617eb4410cb779.216.16193674103000011', 1, 2, 'dashboard', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:16:50', '2021-04-26 00:18:34', 104195, 500, '系统异常', NULL, '2021-04-26 00:18:35', NULL, '2021-04-26 00:18:35', b'0');  
100 -INSERT INTO `inf_api_access_log` VALUES (49, '4d04e567c10d4d47b5617eb4410cb779.210.16193674206550013', 0, 2, 'dashboard', 'POST', '/api/logout', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:17:01', '2021-04-26 00:18:35', 93861, 0, '', NULL, '2021-04-26 00:18:35', NULL, '2021-04-26 00:18:35', b'0');  
101 -INSERT INTO `inf_api_access_log` VALUES (50, '8fcad0f57c0444b98e31fba92379c125.220.16193677120320001', 0, 2, 'dashboard', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:21:52', '2021-04-26 00:21:52', 58, 0, '', NULL, '2021-04-26 00:21:52', NULL, '2021-04-26 00:21:52', b'0');  
102 -INSERT INTO `inf_api_access_log` VALUES (51, '8fcad0f57c0444b98e31fba92379c125.219.16193677120290001', 0, 2, 'dashboard', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:21:52', '2021-04-26 00:21:52', 62, 0, '', NULL, '2021-04-26 00:21:52', NULL, '2021-04-26 00:21:52', b'0');  
103 -INSERT INTO `inf_api_access_log` VALUES (52, '8fcad0f57c0444b98e31fba92379c125.211.16193677121150005', 0, 2, 'dashboard', 'POST', '/api/logout', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:21:52', '2021-04-26 00:21:52', 3, 0, '', NULL, '2021-04-26 00:21:52', NULL, '2021-04-26 00:21:52', b'0');  
104 -INSERT INTO `inf_api_access_log` VALUES (53, '8fcad0f57c0444b98e31fba92379c125.212.16193677121870003', 0, 2, 'dashboard', 'GET', '/api/system/captcha/get-image', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:21:52', '2021-04-26 00:21:53', 567, 0, '', NULL, '2021-04-26 00:21:53', NULL, '2021-04-26 00:21:53', b'0');  
105 -INSERT INTO `inf_api_access_log` VALUES (54, '8fcad0f57c0444b98e31fba92379c125.217.16193677106390001', 0, 2, 'dashboard', 'GET', '/api/system/captcha/get-image', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:21:51', '2021-04-26 00:21:53', 2114, 0, '', NULL, '2021-04-26 00:21:53', NULL, '2021-04-26 00:21:53', b'0');  
106 -INSERT INTO `inf_api_access_log` VALUES (55, '8fcad0f57c0444b98e31fba92379c125.213.16193677131800003', 0, 2, 'dashboard', 'POST', '/api/logout', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:21:53', '2021-04-26 00:21:53', 1, 0, '', NULL, '2021-04-26 00:21:53', NULL, '2021-04-26 00:21:53', b'0');  
107 -INSERT INTO `inf_api_access_log` VALUES (56, '8fcad0f57c0444b98e31fba92379c125.214.16193677135910003', 0, 2, 'dashboard', 'GET', '/api/system/captcha/get-image', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:21:54', '2021-04-26 00:21:54', 18, 0, '', NULL, '2021-04-26 00:21:54', NULL, '2021-04-26 00:21:54', b'0');  
108 -INSERT INTO `inf_api_access_log` VALUES (57, '8fcad0f57c0444b98e31fba92379c125.215.16193677160150005', 0, 2, 'dashboard', 'POST', '/api/login', '{\"query\":{},\"body\":\"{\\\"username\\\":\\\"admin\\\",\\\"password\\\":\\\"admin123\\\",\\\"code\\\":\\\"a3t87\\\",\\\"uuid\\\":\\\"4eb84c480a9b4f92a055c4c941169c24\\\"}\"}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:21:56', '2021-04-26 00:21:56', 253, 0, '', NULL, '2021-04-26 00:21:56', NULL, '2021-04-26 00:21:56', b'0');  
109 -INSERT INTO `inf_api_access_log` VALUES (58, '8fcad0f57c0444b98e31fba92379c125.216.16193677162850003', 1, 2, 'dashboard', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:21:56', '2021-04-26 00:21:59', 2353, 0, '', NULL, '2021-04-26 00:21:59', NULL, '2021-04-26 00:21:59', b'0');  
110 -INSERT INTO `inf_api_access_log` VALUES (59, '8fcad0f57c0444b98e31fba92379c125.220.16193677288070003', 0, 2, 'dashboard', 'POST', '/api/logout', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:22:09', '2021-04-26 00:22:09', 16, 0, '', NULL, '2021-04-26 00:22:09', NULL, '2021-04-26 00:22:09', b'0');  
111 -INSERT INTO `inf_api_access_log` VALUES (60, '8fcad0f57c0444b98e31fba92379c125.218.16193677162890005', 1, 2, 'dashboard', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:21:56', '2021-04-26 00:22:09', 12538, 500, '系统异常', NULL, '2021-04-26 00:22:09', NULL, '2021-04-26 00:22:09', b'0');  
112 -INSERT INTO `inf_api_access_log` VALUES (61, '8fcad0f57c0444b98e31fba92379c125.212.16193677306060005', 0, 2, 'dashboard', 'GET', '/api/system/captcha/get-image', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:22:11', '2021-04-26 00:22:11', 15, 0, '', NULL, '2021-04-26 00:22:11', NULL, '2021-04-26 00:22:11', b'0');  
113 -INSERT INTO `inf_api_access_log` VALUES (62, '8fcad0f57c0444b98e31fba92379c125.213.16193677330510005', 0, 2, 'dashboard', 'POST', '/api/login', '{\"query\":{},\"body\":\"{\\\"username\\\":\\\"admin\\\",\\\"password\\\":\\\"admin123\\\",\\\"code\\\":\\\"ywzb0\\\",\\\"uuid\\\":\\\"23ee9d7a21194e739c7d81829f215bc8\\\"}\"}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:22:13', '2021-04-26 00:22:13', 104, 0, '', NULL, '2021-04-26 00:22:13', NULL, '2021-04-26 00:22:13', b'0');  
114 -INSERT INTO `inf_api_access_log` VALUES (63, '8fcad0f57c0444b98e31fba92379c125.215.16193677331720007', 1, 2, 'dashboard', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:22:13', '2021-04-26 00:22:56', 42613, 500, '系统异常', NULL, '2021-04-26 00:22:56', NULL, '2021-04-26 00:22:56', b'0');  
115 -INSERT INTO `inf_api_access_log` VALUES (64, '8fcad0f57c0444b98e31fba92379c125.214.16193677331700005', 1, 2, 'dashboard', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:22:13', '2021-04-26 00:22:56', 42617, 0, '', NULL, '2021-04-26 00:22:56', NULL, '2021-04-26 00:22:56', b'0');  
116 -INSERT INTO `inf_api_access_log` VALUES (65, '8fcad0f57c0444b98e31fba92379c125.216.16193677757650005', 0, 2, 'dashboard', 'POST', '/api/logout', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:22:56', '2021-04-26 00:22:56', 34, 0, '', NULL, '2021-04-26 00:22:56', NULL, '2021-04-26 00:22:56', b'0');  
117 -INSERT INTO `inf_api_access_log` VALUES (66, 'b119944b67c14237b9434f5214688a2e.215.16193678204650001', 0, 2, 'dashboard', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:23:40', '2021-04-26 00:23:41', 110, 0, '', NULL, '2021-04-26 00:23:41', NULL, '2021-04-26 00:23:41', b'0');  
118 -INSERT INTO `inf_api_access_log` VALUES (67, 'b119944b67c14237b9434f5214688a2e.216.16193678204650001', 0, 2, 'dashboard', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:23:40', '2021-04-26 00:23:41', 110, 0, '', NULL, '2021-04-26 00:23:41', NULL, '2021-04-26 00:23:41', b'0');  
119 -INSERT INTO `inf_api_access_log` VALUES (68, 'b119944b67c14237b9434f5214688a2e.217.16193678205960001', 0, 2, 'dashboard', 'POST', '/api/logout', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:23:41', '2021-04-26 00:23:41', 4, 0, '', NULL, '2021-04-26 00:23:41', NULL, '2021-04-26 00:23:41', b'0');  
120 -INSERT INTO `inf_api_access_log` VALUES (69, 'b119944b67c14237b9434f5214688a2e.219.16193678225240001', 0, 2, 'dashboard', 'POST', '/api/logout', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:23:43', '2021-04-26 00:23:43', 2, 0, '', NULL, '2021-04-26 00:23:43', NULL, '2021-04-26 00:23:43', b'0');  
121 -INSERT INTO `inf_api_access_log` VALUES (70, 'b119944b67c14237b9434f5214688a2e.218.16193678206810001', 0, 2, 'dashboard', 'GET', '/api/system/captcha/get-image', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:23:41', '2021-04-26 00:23:43', 1869, 0, '', NULL, '2021-04-26 00:23:43', NULL, '2021-04-26 00:23:43', b'0');  
122 -INSERT INTO `inf_api_access_log` VALUES (71, 'b119944b67c14237b9434f5214688a2e.220.16193678228530001', 0, 2, 'dashboard', 'GET', '/api/system/captcha/get-image', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:23:43', '2021-04-26 00:23:43', 27, 0, '', NULL, '2021-04-26 00:23:43', NULL, '2021-04-26 00:23:43', b'0');  
123 -INSERT INTO `inf_api_access_log` VALUES (72, 'b119944b67c14237b9434f5214688a2e.212.16193678252850003', 0, 2, 'dashboard', 'POST', '/api/login', '{\"query\":{},\"body\":\"{\\\"username\\\":\\\"admin\\\",\\\"password\\\":\\\"admin123\\\",\\\"code\\\":\\\"stfe7\\\",\\\"uuid\\\":\\\"97fd340774184b218a38573a2bb5263a\\\"}\"}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:23:45', '2021-04-26 00:23:46', 261, 0, '', NULL, '2021-04-26 00:23:46', NULL, '2021-04-26 00:23:46', b'0');  
124 -INSERT INTO `inf_api_access_log` VALUES (73, 'b119944b67c14237b9434f5214688a2e.213.16193678255610003', 1, 2, 'dashboard', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:23:46', '2021-04-26 00:23:48', 2629, 0, '', NULL, '2021-04-26 00:23:48', NULL, '2021-04-26 00:23:48', b'0');  
125 -INSERT INTO `inf_api_access_log` VALUES (74, 'b119944b67c14237b9434f5214688a2e.216.16193678406290003', 0, 2, 'dashboard', 'POST', '/api/logout', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:24:01', '2021-04-26 00:24:01', 15, 0, '', NULL, '2021-04-26 00:24:01', NULL, '2021-04-26 00:24:01', b'0');  
126 -INSERT INTO `inf_api_access_log` VALUES (75, 'b119944b67c14237b9434f5214688a2e.214.16193678255650003', 1, 2, 'dashboard', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:23:46', '2021-04-26 00:24:01', 15102, 0, '', NULL, '2021-04-26 00:24:01', NULL, '2021-04-26 00:24:01', b'0');  
127 -INSERT INTO `inf_api_access_log` VALUES (76, 'b119944b67c14237b9434f5214688a2e.218.16193678481070003', 0, 2, 'dashboard', 'GET', '/api/system/captcha/get-image', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:24:08', '2021-04-26 00:24:08', 12, 0, '', NULL, '2021-04-26 00:24:08', NULL, '2021-04-26 00:24:08', b'0');  
128 -INSERT INTO `inf_api_access_log` VALUES (77, 'b119944b67c14237b9434f5214688a2e.211.16193678521510009', 0, 2, 'dashboard', 'POST', '/api/login', '{\"query\":{},\"body\":\"{\\\"username\\\":\\\"admin\\\",\\\"password\\\":\\\"admin123\\\",\\\"code\\\":\\\"55ffb\\\",\\\"uuid\\\":\\\"6b6441a82f9a4b01ad1f66f0b6804d4a\\\"}\"}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:24:12', '2021-04-26 00:24:12', 109, 0, '', NULL, '2021-04-26 00:24:12', NULL, '2021-04-26 00:24:12', b'0');  
129 -INSERT INTO `inf_api_access_log` VALUES (78, 'b119944b67c14237b9434f5214688a2e.213.16193678522770005', 1, 2, 'dashboard', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:24:12', '2021-04-26 00:24:12', 3, 0, '', NULL, '2021-04-26 00:24:12', NULL, '2021-04-26 00:24:12', b'0');  
130 -INSERT INTO `inf_api_access_log` VALUES (79, 'b119944b67c14237b9434f5214688a2e.212.16193678522750005', 1, 2, 'dashboard', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:24:12', '2021-04-26 00:24:12', 12, 0, '', NULL, '2021-04-26 00:24:12', NULL, '2021-04-26 00:24:12', b'0');  
131 -INSERT INTO `inf_api_access_log` VALUES (80, 'b119944b67c14237b9434f5214688a2e.217.16193678522930003', 0, 2, 'dashboard', 'POST', '/api/logout', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:24:12', '2021-04-26 00:24:12', 9, 0, '', NULL, '2021-04-26 00:24:12', NULL, '2021-04-26 00:24:12', b'0');  
132 -INSERT INTO `inf_api_access_log` VALUES (81, 'b119944b67c14237b9434f5214688a2e.213.16193680255310015', 0, 2, 'dashboard', 'GET', '/api/system/captcha/get-image', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:27:06', '2021-04-26 00:27:06', 13, 0, '', NULL, '2021-04-26 00:27:06', NULL, '2021-04-26 00:27:06', b'0');  
133 -INSERT INTO `inf_api_access_log` VALUES (82, 'b119944b67c14237b9434f5214688a2e.212.16193680284330011', 0, 2, 'dashboard', 'POST', '/api/login', '{\"query\":{},\"body\":\"{\\\"username\\\":\\\"admin\\\",\\\"password\\\":\\\"admin123\\\",\\\"code\\\":\\\"zdt4l\\\",\\\"uuid\\\":\\\"eaff2eefd71949e082c99f5a76eeeae9\\\"}\"}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:27:08', '2021-04-26 00:27:09', 107, 0, '', NULL, '2021-04-26 00:27:09', NULL, '2021-04-26 00:27:09', b'0');  
134 -INSERT INTO `inf_api_access_log` VALUES (83, 'b119944b67c14237b9434f5214688a2e.216.16193680285590017', 1, 2, 'dashboard', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:27:09', '2021-04-26 00:27:09', 6, 0, '', NULL, '2021-04-26 00:27:09', NULL, '2021-04-26 00:27:09', b'0');  
135 -INSERT INTO `inf_api_access_log` VALUES (84, 'b119944b67c14237b9434f5214688a2e.217.16193680285560013', 1, 2, 'dashboard', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:27:09', '2021-04-26 00:27:09', 10, 0, '', NULL, '2021-04-26 00:27:09', NULL, '2021-04-26 00:27:09', b'0');  
136 -INSERT INTO `inf_api_access_log` VALUES (85, 'b119944b67c14237b9434f5214688a2e.215.16193680285790017', 0, 2, 'dashboard', 'POST', '/api/logout', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:27:09', '2021-04-26 00:27:09', 9, 0, '', NULL, '2021-04-26 00:27:09', NULL, '2021-04-26 00:27:09', b'0');  
137 -INSERT INTO `inf_api_access_log` VALUES (86, 'bdc7777473f64f56bbd0b2daebd27fea.209.16193681795440001', 0, 2, 'dashboard', 'GET', '/api/system/captcha/get-image', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:29:40', '2021-04-26 00:29:42', 2215, 0, '', NULL, '2021-04-26 00:29:42', NULL, '2021-04-26 00:29:42', b'0');  
138 -INSERT INTO `inf_api_access_log` VALUES (87, 'bdc7777473f64f56bbd0b2daebd27fea.217.16193682004990001', 0, 2, 'dashboard', 'GET', '/api/system/captcha/get-image', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:30:00', '2021-04-26 00:30:01', 25, 0, '', NULL, '2021-04-26 00:30:01', NULL, '2021-04-26 00:30:01', b'0');  
139 -INSERT INTO `inf_api_access_log` VALUES (88, 'bdc7777473f64f56bbd0b2daebd27fea.218.16193682067910001', 0, 2, 'dashboard', 'POST', '/api/login', '{\"query\":{},\"body\":\"{\\\"username\\\":\\\"admin\\\",\\\"password\\\":\\\"admin123\\\",\\\"code\\\":\\\"vv1itn\\\",\\\"uuid\\\":\\\"35138f34e22f4953a8f0c6fdccf9ce92\\\"}\"}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:30:07', '2021-04-26 00:30:07', 278, 0, '', NULL, '2021-04-26 00:30:07', NULL, '2021-04-26 00:30:07', b'0');  
140 -INSERT INTO `inf_api_access_log` VALUES (89, 'bdc7777473f64f56bbd0b2daebd27fea.210.16193682070910005', 1, 2, 'dashboard', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:30:07', '2021-04-26 00:30:07', 46, 0, '', NULL, '2021-04-26 00:30:07', NULL, '2021-04-26 00:30:07', b'0');  
141 -INSERT INTO `inf_api_access_log` VALUES (90, 'bdc7777473f64f56bbd0b2daebd27fea.211.16193682070910003', 1, 2, 'dashboard', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:30:07', '2021-04-26 00:30:07', 57, 0, '', NULL, '2021-04-26 00:30:07', NULL, '2021-04-26 00:30:07', b'0');  
142 -INSERT INTO `inf_api_access_log` VALUES (91, 'bdc7777473f64f56bbd0b2daebd27fea.212.16193682071620003', 0, 2, 'dashboard', 'POST', '/api/logout', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:30:07', '2021-04-26 00:30:07', 17, 0, '', NULL, '2021-04-26 00:30:07', NULL, '2021-04-26 00:30:07', b'0');  
143 -INSERT INTO `inf_api_access_log` VALUES (92, 'bdc7777473f64f56bbd0b2daebd27fea.218.16193682495880003', 0, 2, 'dashboard', 'GET', '/api/system/captcha/get-image', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:30:50', '2021-04-26 00:30:50', 19, 0, '', NULL, '2021-04-26 00:30:50', NULL, '2021-04-26 00:30:50', b'0');  
144 -INSERT INTO `inf_api_access_log` VALUES (93, 'bdc7777473f64f56bbd0b2daebd27fea.211.16193682538310005', 0, 2, 'dashboard', 'GET', '/api/system/captcha/get-image', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:30:54', '2021-04-26 00:30:54', 12, 0, '', NULL, '2021-04-26 00:30:54', NULL, '2021-04-26 00:30:54', b'0');  
145 -INSERT INTO `inf_api_access_log` VALUES (94, 'bdc7777473f64f56bbd0b2daebd27fea.212.16193682564160005', 0, 2, 'dashboard', 'POST', '/api/login', '{\"query\":{},\"body\":\"{\\\"username\\\":\\\"admin\\\",\\\"password\\\":\\\"admin123\\\",\\\"code\\\":\\\"p1slm\\\",\\\"uuid\\\":\\\"4fdd42083d4142c2b22fb1bb58cbe56d\\\"}\"}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:30:56', '2021-04-26 00:30:57', 111, 0, '', NULL, '2021-04-26 00:30:57', NULL, '2021-04-26 00:30:57', b'0');  
146 -INSERT INTO `inf_api_access_log` VALUES (95, 'bdc7777473f64f56bbd0b2daebd27fea.209.16193682565500005', 1, 2, 'dashboard', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:30:57', '2021-04-26 00:30:57', 3, 0, '', NULL, '2021-04-26 00:30:57', NULL, '2021-04-26 00:30:57', b'0');  
147 -INSERT INTO `inf_api_access_log` VALUES (96, 'bdc7777473f64f56bbd0b2daebd27fea.213.16193682565470007', 1, 2, 'dashboard', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:30:57', '2021-04-26 00:30:57', 15, 0, '', NULL, '2021-04-26 00:30:57', NULL, '2021-04-26 00:30:57', b'0');  
148 -INSERT INTO `inf_api_access_log` VALUES (97, 'bdc7777473f64f56bbd0b2daebd27fea.214.16193682565730009', 0, 2, 'dashboard', 'POST', '/api/logout', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:30:57', '2021-04-26 00:30:57', 10, 0, '', NULL, '2021-04-26 00:30:57', NULL, '2021-04-26 00:30:57', b'0');  
149 -INSERT INTO `inf_api_access_log` VALUES (98, '4fb338297083428e960a39648cb42309.217.16193700241600001', 0, 2, 'dashboard', 'GET', '/api/system/captcha/get-image', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:00:24', '2021-04-26 01:00:27', 2351, 0, '', NULL, '2021-04-26 01:00:27', NULL, '2021-04-26 01:00:27', b'0');  
150 -INSERT INTO `inf_api_access_log` VALUES (99, '4fb338297083428e960a39648cb42309.220.16193700301270001', 0, 2, 'dashboard', 'POST', '/api/login', '{\"query\":{},\"body\":\"{\\\"username\\\":\\\"admin\\\",\\\"password\\\":\\\"admin123\\\",\\\"code\\\":\\\"6tlku\\\",\\\"uuid\\\":\\\"449bbaecaf7248c3888070fa93f87e8a\\\"}\"}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:00:30', '2021-04-26 01:00:30', 256, 0, '', NULL, '2021-04-26 01:00:30', NULL, '2021-04-26 01:00:30', b'0');  
151 -INSERT INTO `inf_api_access_log` VALUES (100, '4fb338297083428e960a39648cb42309.221.16193700304030001', 1, 2, 'dashboard', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:00:30', '2021-04-26 01:00:30', 42, 0, '', NULL, '2021-04-26 01:00:30', NULL, '2021-04-26 01:00:30', b'0');  
152 -INSERT INTO `inf_api_access_log` VALUES (101, '4fb338297083428e960a39648cb42309.212.16193700304060005', 1, 2, 'dashboard', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:00:30', '2021-04-26 01:00:30', 80, 0, '', NULL, '2021-04-26 01:00:30', NULL, '2021-04-26 01:00:30', b'0');  
153 -INSERT INTO `inf_api_access_log` VALUES (102, '4fb338297083428e960a39648cb42309.213.16193700304990003', 1, 2, 'dashboard', 'GET', '/api/list-menus', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:00:30', '2021-04-26 01:00:31', 13, 0, '', NULL, '2021-04-26 01:00:31', NULL, '2021-04-26 01:00:31', b'0');  
154 -INSERT INTO `inf_api_access_log` VALUES (103, '4fb338297083428e960a39648cb42309.217.16193700628720003', 1, 2, 'dashboard', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:01:03', '2021-04-26 01:01:13', 9784, 0, '', NULL, '2021-04-26 01:01:13', NULL, '2021-04-26 01:01:13', b'0');  
155 -INSERT INTO `inf_api_access_log` VALUES (104, '4fb338297083428e960a39648cb42309.219.16193700628760005', 1, 2, 'dashboard', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:01:03', '2021-04-26 01:01:13', 9780, 0, '', NULL, '2021-04-26 01:01:13', NULL, '2021-04-26 01:01:13', b'0');  
156 -INSERT INTO `inf_api_access_log` VALUES (105, '4fb338297083428e960a39648cb42309.212.16193700726780007', 1, 2, 'dashboard', 'GET', '/api/list-menus', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:01:13', '2021-04-26 01:01:13', 6, 0, '', NULL, '2021-04-26 01:01:13', NULL, '2021-04-26 01:01:13', b'0');  
157 -INSERT INTO `inf_api_access_log` VALUES (106, '4fb338297083428e960a39648cb42309.215.16193700789210005', 1, 2, 'dashboard', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:01:19', '2021-04-26 01:01:19', 8, 0, '', NULL, '2021-04-26 01:01:19', NULL, '2021-04-26 01:01:19', b'0');  
158 -INSERT INTO `inf_api_access_log` VALUES (107, '4fb338297083428e960a39648cb42309.214.16193700789180007', 1, 2, 'dashboard', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:01:19', '2021-04-26 01:01:19', 14, 0, '', NULL, '2021-04-26 01:01:19', NULL, '2021-04-26 01:01:19', b'0');  
159 -INSERT INTO `inf_api_access_log` VALUES (108, '4fb338297083428e960a39648cb42309.216.16193700790250009', 1, 2, 'dashboard', 'GET', '/api/list-menus', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:01:19', '2021-04-26 01:01:19', 4, 0, '', NULL, '2021-04-26 01:01:19', NULL, '2021-04-26 01:01:19', b'0');  
160 -INSERT INTO `inf_api_access_log` VALUES (109, '4fb338297083428e960a39648cb42309.218.16193700826390007', 1, 2, 'dashboard', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:01:23', '2021-04-26 01:01:23', 11, 0, '', NULL, '2021-04-26 01:01:23', NULL, '2021-04-26 01:01:23', b'0');  
161 -INSERT INTO `inf_api_access_log` VALUES (110, '4fb338297083428e960a39648cb42309.217.16193700826420005', 1, 2, 'dashboard', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:01:23', '2021-04-26 01:01:23', 7, 0, '', NULL, '2021-04-26 01:01:23', NULL, '2021-04-26 01:01:23', b'0');  
162 -INSERT INTO `inf_api_access_log` VALUES (111, '4fb338297083428e960a39648cb42309.220.16193700827430007', 1, 2, 'dashboard', 'GET', '/api/list-menus', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:01:23', '2021-04-26 01:01:23', 4, 0, '', NULL, '2021-04-26 01:01:23', NULL, '2021-04-26 01:01:23', b'0');  
163 -INSERT INTO `inf_api_access_log` VALUES (112, '4fb338297083428e960a39648cb42309.212.16193700901930009', 1, 2, 'dashboard', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:01:30', '2021-04-26 01:01:30', 9, 0, '', NULL, '2021-04-26 01:01:30', NULL, '2021-04-26 01:01:30', b'0');  
164 -INSERT INTO `inf_api_access_log` VALUES (113, '4fb338297083428e960a39648cb42309.213.16193700901960009', 1, 2, 'dashboard', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:01:30', '2021-04-26 01:01:30', 7, 0, '', NULL, '2021-04-26 01:01:30', NULL, '2021-04-26 01:01:30', b'0');  
165 -INSERT INTO `inf_api_access_log` VALUES (114, '4fb338297083428e960a39648cb42309.215.16193700902930007', 1, 2, 'dashboard', 'GET', '/api/list-menus', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:01:30', '2021-04-26 01:01:30', 5, 0, '', NULL, '2021-04-26 01:01:30', NULL, '2021-04-26 01:01:30', b'0');  
166 -INSERT INTO `inf_api_access_log` VALUES (115, '4fb338297083428e960a39648cb42309.221.16193701263150009', 1, 2, 'dashboard', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:02:06', '2021-04-26 01:02:06', 10, 0, '', NULL, '2021-04-26 01:02:06', NULL, '2021-04-26 01:02:06', b'0');  
167 -INSERT INTO `inf_api_access_log` VALUES (116, '4fb338297083428e960a39648cb42309.212.16193701263170011', 1, 2, 'dashboard', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:02:06', '2021-04-26 01:02:06', 9, 0, '', NULL, '2021-04-26 01:02:06', NULL, '2021-04-26 01:02:06', b'0');  
168 -INSERT INTO `inf_api_access_log` VALUES (117, '4fb338297083428e960a39648cb42309.213.16193701264160011', 1, 2, 'dashboard', 'GET', '/api/list-menus', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:02:06', '2021-04-26 01:02:06', 4, 0, '', NULL, '2021-04-26 01:02:06', NULL, '2021-04-26 01:02:06', b'0');  
169 -INSERT INTO `inf_api_access_log` VALUES (118, '2f1a2073dd49408fa1ca89aa1a34d68f.219.16193702755890001', 0, 2, 'dashboard', 'POST', '/api/logout', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:04:36', '2021-04-26 01:04:36', 113, 0, '', NULL, '2021-04-26 01:04:36', NULL, '2021-04-26 01:04:36', b'0');  
170 -INSERT INTO `inf_api_access_log` VALUES (119, '2f1a2073dd49408fa1ca89aa1a34d68f.214.16193701705220001', 1, 2, 'dashboard', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:02:51', '2021-04-26 01:04:36', 105168, 0, '', NULL, '2021-04-26 01:04:36', NULL, '2021-04-26 01:04:36', b'0');  
171 -INSERT INTO `inf_api_access_log` VALUES (120, '2f1a2073dd49408fa1ca89aa1a34d68f.215.16193701705220001', 1, 2, 'dashboard', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:02:51', '2021-04-26 01:04:39', 108059, 0, '', NULL, '2021-04-26 01:04:39', NULL, '2021-04-26 01:04:39', b'0');  
172 -INSERT INTO `inf_api_access_log` VALUES (121, '2f1a2073dd49408fa1ca89aa1a34d68f.217.16193702834320005', 0, 2, 'dashboard', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:04:43', '2021-04-26 01:04:43', 9, 0, '', NULL, '2021-04-26 01:04:43', NULL, '2021-04-26 01:04:43', b'0');  
173 -INSERT INTO `inf_api_access_log` VALUES (122, '2f1a2073dd49408fa1ca89aa1a34d68f.218.16193702834300005', 0, 2, 'dashboard', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:04:43', '2021-04-26 01:04:43', 11, 0, '', NULL, '2021-04-26 01:04:43', NULL, '2021-04-26 01:04:43', b'0');  
174 -INSERT INTO `inf_api_access_log` VALUES (123, '2f1a2073dd49408fa1ca89aa1a34d68f.215.16193702835460003', 0, 2, 'dashboard', 'POST', '/api/logout', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:04:44', '2021-04-26 01:04:44', 8, 0, '', NULL, '2021-04-26 01:04:44', NULL, '2021-04-26 01:04:44', b'0');  
175 -INSERT INTO `inf_api_access_log` VALUES (124, '2f1a2073dd49408fa1ca89aa1a34d68f.211.16193702849740009', 0, 2, 'dashboard', 'POST', '/api/logout', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:04:45', '2021-04-26 01:04:45', 2, 0, '', NULL, '2021-04-26 01:04:45', NULL, '2021-04-26 01:04:45', b'0');  
176 -INSERT INTO `inf_api_access_log` VALUES (125, '2f1a2073dd49408fa1ca89aa1a34d68f.210.16193702837180011', 0, 2, 'dashboard', 'GET', '/api/system/captcha/get-image', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:04:44', '2021-04-26 01:04:46', 2215, 0, '', NULL, '2021-04-26 01:04:46', NULL, '2021-04-26 01:04:46', b'0');  
177 -INSERT INTO `inf_api_access_log` VALUES (126, '2f1a2073dd49408fa1ca89aa1a34d68f.214.16193702859480007', 0, 2, 'dashboard', 'GET', '/api/system/captcha/get-image', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:04:46', '2021-04-26 01:04:46', 29, 0, '', NULL, '2021-04-26 01:04:46', NULL, '2021-04-26 01:04:46', b'0');  
178 -INSERT INTO `inf_api_access_log` VALUES (127, '2f1a2073dd49408fa1ca89aa1a34d68f.212.16193702896970009', 0, 2, 'dashboard', 'POST', '/api/login', '{\"query\":{},\"body\":\"{\\\"username\\\":\\\"admin\\\",\\\"password\\\":\\\"admin123\\\",\\\"code\\\":\\\"tvb0q\\\",\\\"uuid\\\":\\\"0ec98e6a2ca941838cfdeb059a65010f\\\"}\"}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:04:50', '2021-04-26 01:04:50', 199, 0, '', NULL, '2021-04-26 01:04:50', NULL, '2021-04-26 01:04:50', b'0');  
179 -INSERT INTO `inf_api_access_log` VALUES (128, '2f1a2073dd49408fa1ca89aa1a34d68f.216.16193702899170009', 1, 2, 'dashboard', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:04:50', '2021-04-26 01:04:59', 9275, 0, '', NULL, '2021-04-26 01:04:59', NULL, '2021-04-26 01:04:59', b'0');  
180 -INSERT INTO `inf_api_access_log` VALUES (129, '2f1a2073dd49408fa1ca89aa1a34d68f.213.16193702899130011', 1, 2, 'dashboard', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:04:50', '2021-04-26 01:04:59', 9280, 0, '', NULL, '2021-04-26 01:04:59', NULL, '2021-04-26 01:04:59', b'0');  
181 -INSERT INTO `inf_api_access_log` VALUES (130, '2f1a2073dd49408fa1ca89aa1a34d68f.215.16193702992130005', 1, 2, 'dashboard', 'GET', '/api/list-menus', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:04:59', '2021-04-26 01:04:59', 15, 0, '', NULL, '2021-04-26 01:04:59', NULL, '2021-04-26 01:04:59', b'0');  
182 -INSERT INTO `inf_api_access_log` VALUES (131, '2f1a2073dd49408fa1ca89aa1a34d68f.210.16193703048020013', 1, 2, 'dashboard', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:05:05', '2021-04-26 01:05:05', 6, 0, '', NULL, '2021-04-26 01:05:05', NULL, '2021-04-26 01:05:05', b'0');  
183 -INSERT INTO `inf_api_access_log` VALUES (132, '2f1a2073dd49408fa1ca89aa1a34d68f.211.16193703047990011', 1, 2, 'dashboard', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:05:05', '2021-04-26 01:05:05', 13, 0, '', NULL, '2021-04-26 01:05:05', NULL, '2021-04-26 01:05:05', b'0');  
184 -INSERT INTO `inf_api_access_log` VALUES (133, '2f1a2073dd49408fa1ca89aa1a34d68f.214.16193703048950009', 1, 2, 'dashboard', 'GET', '/api/list-menus', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:05:05', '2021-04-26 01:05:05', 4, 0, '', NULL, '2021-04-26 01:05:05', NULL, '2021-04-26 01:05:05', b'0');  
185 -INSERT INTO `inf_api_access_log` VALUES (134, '4682d31f87eb4e4384c2a27b1da12ec6.217.16193709109700001', 1, 2, 'dashboard', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:15:11', '2021-04-26 01:15:11', 251, 0, '', NULL, '2021-04-26 01:15:11', NULL, '2021-04-26 01:15:11', b'0');  
186 -INSERT INTO `inf_api_access_log` VALUES (135, '4682d31f87eb4e4384c2a27b1da12ec6.209.16193709109700005', 1, 2, 'dashboard', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:15:11', '2021-04-26 01:15:11', 282, 0, '', NULL, '2021-04-26 01:15:11', NULL, '2021-04-26 01:15:11', b'0');  
187 -INSERT INTO `inf_api_access_log` VALUES (136, '4682d31f87eb4e4384c2a27b1da12ec6.211.16193709112670003', 1, 2, 'dashboard', 'GET', '/api/list-menus', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:15:11', '2021-04-26 01:15:11', 13, 0, '', NULL, '2021-04-26 01:15:11', NULL, '2021-04-26 01:15:11', b'0');  
188 -INSERT INTO `inf_api_access_log` VALUES (137, '4682d31f87eb4e4384c2a27b1da12ec6.213.16193709137840005', 1, 2, 'dashboard', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:15:14', '2021-04-26 01:15:14', 7, 0, '', NULL, '2021-04-26 01:15:14', NULL, '2021-04-26 01:15:14', b'0');  
189 -INSERT INTO `inf_api_access_log` VALUES (138, '4682d31f87eb4e4384c2a27b1da12ec6.212.16193709137810003', 1, 2, 'dashboard', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:15:14', '2021-04-26 01:15:14', 13, 0, '', NULL, '2021-04-26 01:15:14', NULL, '2021-04-26 01:15:14', b'0');  
190 -INSERT INTO `inf_api_access_log` VALUES (139, '4682d31f87eb4e4384c2a27b1da12ec6.214.16193709138860003', 1, 2, 'dashboard', 'GET', '/api/list-menus', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:15:14', '2021-04-26 01:15:14', 5, 0, '', NULL, '2021-04-26 01:15:14', NULL, '2021-04-26 01:15:14', b'0');  
191 -INSERT INTO `inf_api_access_log` VALUES (140, '4682d31f87eb4e4384c2a27b1da12ec6.213.16193709550590007', 1, 2, 'dashboard', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:15:55', '2021-04-26 01:15:55', 8, 0, '', NULL, '2021-04-26 01:15:55', NULL, '2021-04-26 01:15:55', b'0');  
192 -INSERT INTO `inf_api_access_log` VALUES (141, '4682d31f87eb4e4384c2a27b1da12ec6.211.16193709550560005', 1, 2, 'dashboard', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:15:55', '2021-04-26 01:15:55', 11, 0, '', NULL, '2021-04-26 01:15:55', NULL, '2021-04-26 01:15:55', b'0');  
193 -INSERT INTO `inf_api_access_log` VALUES (142, '4682d31f87eb4e4384c2a27b1da12ec6.212.16193709551560005', 1, 2, 'dashboard', 'GET', '/api/list-menus', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:15:55', '2021-04-26 01:15:55', 4, 0, '', NULL, '2021-04-26 01:15:55', NULL, '2021-04-26 01:15:55', b'0');  
194 -INSERT INTO `inf_api_access_log` VALUES (143, 'ff8a9a0524574cd891b5987242f123a2.211.16193714354380001', 1, 2, 'dashboard', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:23:55', '2021-04-26 01:23:56', 211, 0, '', NULL, '2021-04-26 01:23:56', NULL, '2021-04-26 01:23:56', b'0');  
195 -INSERT INTO `inf_api_access_log` VALUES (144, 'ff8a9a0524574cd891b5987242f123a2.212.16193714354380001', 1, 2, 'dashboard', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:23:55', '2021-04-26 01:23:56', 267, 0, '', NULL, '2021-04-26 01:23:56', NULL, '2021-04-26 01:23:56', b'0');  
196 -INSERT INTO `inf_api_access_log` VALUES (145, 'ff8a9a0524574cd891b5987242f123a2.213.16193714357210001', 1, 2, 'dashboard', 'GET', '/api/list-menus', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:23:56', '2021-04-26 01:23:56', 14, 0, '', NULL, '2021-04-26 01:23:56', NULL, '2021-04-26 01:23:56', b'0');  
197 -INSERT INTO `inf_api_access_log` VALUES (146, 'c6ab13e4cd1d4ece8b67a95257fa3014.215.16193716888730001', 1, 2, 'dashboard', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:28:09', '2021-04-26 01:28:09', 261, 0, '', NULL, '2021-04-26 01:28:09', NULL, '2021-04-26 01:28:09', b'0');  
198 -INSERT INTO `inf_api_access_log` VALUES (147, 'c6ab13e4cd1d4ece8b67a95257fa3014.216.16193716888730001', 1, 2, 'dashboard', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:28:09', '2021-04-26 01:28:09', 290, 0, '', NULL, '2021-04-26 01:28:09', NULL, '2021-04-26 01:28:09', b'0');  
199 -INSERT INTO `inf_api_access_log` VALUES (148, 'c6ab13e4cd1d4ece8b67a95257fa3014.217.16193716891780001', 1, 2, 'dashboard', 'GET', '/api/list-menus', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:28:09', '2021-04-26 01:28:09', 12, 0, '', NULL, '2021-04-26 01:28:09', NULL, '2021-04-26 01:28:09', b'0');  
200 -INSERT INTO `inf_api_access_log` VALUES (149, 'c6ab13e4cd1d4ece8b67a95257fa3014.211.16193717074630003', 1, 2, 'dashboard', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:28:27', '2021-04-26 01:28:27', 7, 0, '', NULL, '2021-04-26 01:28:27', NULL, '2021-04-26 01:28:27', b'0');  
201 -INSERT INTO `inf_api_access_log` VALUES (150, 'c6ab13e4cd1d4ece8b67a95257fa3014.210.16193717074600003', 1, 2, 'dashboard', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:28:27', '2021-04-26 01:28:27', 14, 0, '', NULL, '2021-04-26 01:28:27', NULL, '2021-04-26 01:28:27', b'0');  
202 -INSERT INTO `inf_api_access_log` VALUES (151, 'c6ab13e4cd1d4ece8b67a95257fa3014.212.16193717075560003', 1, 2, 'dashboard', 'GET', '/api/list-menus', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:28:28', '2021-04-26 01:28:28', 5, 0, '', NULL, '2021-04-26 01:28:28', NULL, '2021-04-26 01:28:28', b'0');  
203 -INSERT INTO `inf_api_access_log` VALUES (152, 'e793f3f624794f1b939d34537025acbf.217.16193717695930001', 1, 2, 'dashboard', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:29:30', '2021-04-26 01:29:30', 203, 0, '', NULL, '2021-04-26 01:29:30', NULL, '2021-04-26 01:29:30', b'0');  
204 -INSERT INTO `inf_api_access_log` VALUES (153, 'e793f3f624794f1b939d34537025acbf.218.16193717695930001', 1, 2, 'dashboard', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:29:30', '2021-04-26 01:29:30', 262, 0, '', NULL, '2021-04-26 01:29:30', NULL, '2021-04-26 01:29:30', b'0');  
205 -INSERT INTO `inf_api_access_log` VALUES (154, 'e793f3f624794f1b939d34537025acbf.219.16193717698710001', 1, 2, 'dashboard', 'GET', '/api/list-menus', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:29:30', '2021-04-26 01:29:30', 12, 0, '', NULL, '2021-04-26 01:29:30', NULL, '2021-04-26 01:29:30', b'0');  
206 -INSERT INTO `inf_api_access_log` VALUES (155, 'e793f3f624794f1b939d34537025acbf.212.16193717812660005', 1, 2, 'dashboard', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:29:41', '2021-04-26 01:29:41', 13, 0, '', NULL, '2021-04-26 01:29:46', NULL, '2021-04-26 01:29:46', b'0');  
207 -INSERT INTO `inf_api_access_log` VALUES (156, 'e793f3f624794f1b939d34537025acbf.213.16193717812680003', 1, 2, 'dashboard', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:29:41', '2021-04-26 01:29:41', 10, 0, '', NULL, '2021-04-26 01:29:46', NULL, '2021-04-26 01:29:46', b'0');  
208 -INSERT INTO `inf_api_access_log` VALUES (157, 'e793f3f624794f1b939d34537025acbf.214.16193717855390003', 1, 2, 'dashboard', 'GET', '/api/list-menus', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:29:46', '2021-04-26 01:29:46', 8, 0, '', NULL, '2021-04-26 01:29:46', NULL, '2021-04-26 01:29:46', b'0');  
209 -INSERT INTO `inf_api_access_log` VALUES (158, 'e793f3f624794f1b939d34537025acbf.218.16193718077020003', 1, 2, 'dashboard', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:30:08', '2021-04-26 01:30:08', 12, 0, '', NULL, '2021-04-26 01:30:11', NULL, '2021-04-26 01:30:11', b'0');  
210 -INSERT INTO `inf_api_access_log` VALUES (159, 'e793f3f624794f1b939d34537025acbf.217.16193718077020003', 1, 2, 'dashboard', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:30:08', '2021-04-26 01:30:11', 2943, 0, '', NULL, '2021-04-26 01:30:11', NULL, '2021-04-26 01:30:11', b'0');  
211 -INSERT INTO `inf_api_access_log` VALUES (160, 'e793f3f624794f1b939d34537025acbf.219.16193718077030003', 0, 2, 'dashboard', 'POST', '/api/logout', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:30:08', '2021-04-26 01:30:11', 2942, 0, '', NULL, '2021-04-26 01:30:11', NULL, '2021-04-26 01:30:11', b'0');  
212 -INSERT INTO `inf_api_access_log` VALUES (161, 'e793f3f624794f1b939d34537025acbf.212.16193718107780007', 0, 2, 'dashboard', 'GET', '/api/system/captcha/get-image', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:30:11', '2021-04-26 01:30:13', 1918, 0, '', NULL, '2021-04-26 01:30:13', NULL, '2021-04-26 01:30:13', b'0');  
213 -INSERT INTO `inf_api_access_log` VALUES (162, 'e793f3f624794f1b939d34537025acbf.217.16193718590450005', 0, 2, 'dashboard', 'GET', '/api/system/captcha/get-image', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:30:59', '2021-04-26 01:30:59', 42, 0, '', NULL, '2021-04-26 01:30:59', NULL, '2021-04-26 01:30:59', b'0');  
214 -INSERT INTO `inf_api_access_log` VALUES (163, 'e793f3f624794f1b939d34537025acbf.219.16193718649040005', 0, 2, 'dashboard', 'GET', '/api/system/captcha/get-image', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:31:05', '2021-04-26 01:31:05', 14, 0, '', NULL, '2021-04-26 01:31:05', NULL, '2021-04-26 01:31:05', b'0');  
215 -INSERT INTO `inf_api_access_log` VALUES (164, 'e793f3f624794f1b939d34537025acbf.214.16193718672600009', 0, 2, 'dashboard', 'POST', '/api/login', '{\"query\":{},\"body\":\"{\\\"username\\\":\\\"admin\\\",\\\"password\\\":\\\"admin123\\\",\\\"code\\\":\\\"o2oqj\\\",\\\"uuid\\\":\\\"5af362e0318d46d88ae50c52dd92888e\\\"}\"}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:31:07', '2021-04-26 01:31:07', 232, 0, '', NULL, '2021-04-26 01:31:07', NULL, '2021-04-26 01:31:07', b'0');  
216 -INSERT INTO `inf_api_access_log` VALUES (165, 'e793f3f624794f1b939d34537025acbf.215.16193718675130009', 1, 2, 'dashboard', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:31:08', '2021-04-26 01:31:08', 12, 0, '', NULL, '2021-04-26 01:31:08', NULL, '2021-04-26 01:31:08', b'0');  
217 -INSERT INTO `inf_api_access_log` VALUES (166, 'e793f3f624794f1b939d34537025acbf.216.16193718675170011', 1, 2, 'dashboard', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:31:08', '2021-04-26 01:31:08', 8, 0, '', NULL, '2021-04-26 01:31:08', NULL, '2021-04-26 01:31:08', b'0');  
218 -INSERT INTO `inf_api_access_log` VALUES (167, 'e793f3f624794f1b939d34537025acbf.221.16193718675400009', 1, 2, 'dashboard', 'GET', '/api/list-menus', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:31:08', '2021-04-26 01:31:08', 5, 0, '', NULL, '2021-04-26 01:31:08', NULL, '2021-04-26 01:31:08', b'0');  
219 -INSERT INTO `inf_api_access_log` VALUES (168, 'e793f3f624794f1b939d34537025acbf.221.16193719096140011', 1, 2, 'dashboard', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:31:50', '2021-04-26 01:31:50', 8, 0, '', NULL, '2021-04-26 01:31:50', NULL, '2021-04-26 01:31:50', b'0');  
220 -INSERT INTO `inf_api_access_log` VALUES (169, 'e793f3f624794f1b939d34537025acbf.215.16193719096100011', 1, 2, 'dashboard', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:31:50', '2021-04-26 01:31:50', 14, 0, '', NULL, '2021-04-26 01:31:50', NULL, '2021-04-26 01:31:50', b'0');  
221 -INSERT INTO `inf_api_access_log` VALUES (170, 'e793f3f624794f1b939d34537025acbf.220.16193719097250013', 1, 2, 'dashboard', 'GET', '/api/list-menus', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:31:50', '2021-04-26 01:31:50', 5, 0, '', NULL, '2021-04-26 01:31:50', NULL, '2021-04-26 01:31:50', b'0');  
222 -INSERT INTO `inf_api_access_log` VALUES (171, 'e793f3f624794f1b939d34537025acbf.221.16193719501020013', 1, 2, 'dashboard', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:32:30', '2021-04-26 01:32:30', 5, 0, '', NULL, '2021-04-26 01:32:30', NULL, '2021-04-26 01:32:30', b'0');  
223 -INSERT INTO `inf_api_access_log` VALUES (172, 'e793f3f624794f1b939d34537025acbf.216.16193719500990017', 1, 2, 'dashboard', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:32:30', '2021-04-26 01:32:30', 11, 0, '', NULL, '2021-04-26 01:32:30', NULL, '2021-04-26 01:32:30', b'0');  
224 -INSERT INTO `inf_api_access_log` VALUES (173, 'e793f3f624794f1b939d34537025acbf.215.16193719502030013', 1, 2, 'dashboard', 'GET', '/api/list-menus', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 01:32:30', '2021-04-26 01:32:30', 5, 0, '', NULL, '2021-04-26 01:32:30', NULL, '2021-04-26 01:32:30', b'0');  
225 -INSERT INTO `inf_api_access_log` VALUES (174, 'e56742980bc6452cb95ef8856dee866e.233.16194476699730009', 0, 2, 'dashboard', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:34:30', '2021-04-26 22:34:30', 99, 0, '', NULL, '2021-04-26 22:34:30', NULL, '2021-04-26 22:34:30', b'0');  
226 -INSERT INTO `inf_api_access_log` VALUES (175, 'e56742980bc6452cb95ef8856dee866e.236.16194476699730011', 0, 2, 'dashboard', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:34:30', '2021-04-26 22:34:30', 99, 0, '', NULL, '2021-04-26 22:34:30', NULL, '2021-04-26 22:34:30', b'0');  
227 -INSERT INTO `inf_api_access_log` VALUES (176, 'e56742980bc6452cb95ef8856dee866e.227.16194476701120013', 0, 2, 'dashboard', 'POST', '/api/logout', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:34:30', '2021-04-26 22:34:30', 3, 0, '', NULL, '2021-04-26 22:34:30', NULL, '2021-04-26 22:34:30', b'0');  
228 -INSERT INTO `inf_api_access_log` VALUES (177, 'e56742980bc6452cb95ef8856dee866e.229.16194476714420013', 0, 2, 'dashboard', 'POST', '/api/logout', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:34:31', '2021-04-26 22:34:31', 1, 0, '', NULL, '2021-04-26 22:34:31', NULL, '2021-04-26 22:34:31', b'0');  
229 -INSERT INTO `inf_api_access_log` VALUES (178, 'e56742980bc6452cb95ef8856dee866e.230.16194476717950011', 0, 2, 'dashboard', 'GET', '/api/system/captcha/get-image', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:34:32', '2021-04-26 22:34:33', 1174, 0, '', NULL, '2021-04-26 22:34:33', NULL, '2021-04-26 22:34:33', b'0');  
230 -INSERT INTO `inf_api_access_log` VALUES (179, 'e56742980bc6452cb95ef8856dee866e.228.16194476702250015', 0, 2, 'dashboard', 'GET', '/api/system/captcha/get-image', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:34:30', '2021-04-26 22:34:33', 2744, 0, '', NULL, '2021-04-26 22:34:33', NULL, '2021-04-26 22:34:33', b'0');  
231 -INSERT INTO `inf_api_access_log` VALUES (180, 'e56742980bc6452cb95ef8856dee866e.232.16194476755560013', 0, 2, 'dashboard', 'POST', '/api/login', '{\"query\":{},\"body\":\"{\\\"username\\\":\\\"admin\\\",\\\"password\\\":\\\"admin123\\\",\\\"code\\\":\\\"bn1gy\\\",\\\"uuid\\\":\\\"b2cdfff7449f4a84a7f9f0d74db5f6bd\\\"}\"}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:34:36', '2021-04-26 22:34:36', 285, 0, '', NULL, '2021-04-26 22:34:36', NULL, '2021-04-26 22:34:36', b'0');  
232 -INSERT INTO `inf_api_access_log` VALUES (181, 'e56742980bc6452cb95ef8856dee866e.235.16194476758540011', 1, 2, 'dashboard', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:34:36', '2021-04-26 22:34:36', 40, 0, '', NULL, '2021-04-26 22:34:36', NULL, '2021-04-26 22:34:36', b'0');  
233 -INSERT INTO `inf_api_access_log` VALUES (182, 'e56742980bc6452cb95ef8856dee866e.234.16194476758540007', 1, 2, 'dashboard', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:34:36', '2021-04-26 22:34:36', 83, 0, '', NULL, '2021-04-26 22:34:36', NULL, '2021-04-26 22:34:36', b'0');  
234 -INSERT INTO `inf_api_access_log` VALUES (183, 'e56742980bc6452cb95ef8856dee866e.233.16194476759470011', 1, 2, 'dashboard', 'GET', '/api/list-menus', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:34:36', '2021-04-26 22:34:36', 11, 0, '', NULL, '2021-04-26 22:34:36', NULL, '2021-04-26 22:34:36', b'0');  
235 -INSERT INTO `inf_api_access_log` VALUES (184, 'e56742980bc6452cb95ef8856dee866e.227.16194476827060015', 1, 2, 'dashboard', 'GET', '/api/system/menu/list', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:34:43', '2021-04-26 22:34:43', 47, 0, '', NULL, '2021-04-26 22:34:43', NULL, '2021-04-26 22:34:43', b'0');  
236 -INSERT INTO `inf_api_access_log` VALUES (185, 'e56742980bc6452cb95ef8856dee866e.228.16194476906200017', 1, 2, 'dashboard', 'GET', '/api/system/menu/get', '{\"query\":{\"id\":\"108\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:34:51', '2021-04-26 22:34:51', 9, 0, '', NULL, '2021-04-26 22:34:51', NULL, '2021-04-26 22:34:51', b'0');  
237 -INSERT INTO `inf_api_access_log` VALUES (186, 'e56742980bc6452cb95ef8856dee866e.230.16194476906190013', 1, 2, 'dashboard', 'GET', '/api/system/menu/list', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:34:51', '2021-04-26 22:34:51', 17, 0, '', NULL, '2021-04-26 22:34:51', NULL, '2021-04-26 22:34:51', b'0');  
238 -INSERT INTO `inf_api_access_log` VALUES (187, 'e56742980bc6452cb95ef8856dee866e.232.16194476976500015', 1, 2, 'dashboard', 'PUT', '/api/system/menu/update', '{\"query\":{},\"body\":\"{\\\"id\\\":108,\\\"status\\\":0,\\\"createTime\\\":1609837428000,\\\"name\\\":\\\"审计日志\\\",\\\"permission\\\":\\\"\\\",\\\"type\\\":1,\\\"sort\\\":9,\\\"parentId\\\":1,\\\"path\\\":\\\"log\\\",\\\"icon\\\":\\\"log\\\",\\\"component\\\":\\\"\\\"}\"}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:34:58', '2021-04-26 22:34:58', 47, 0, '', NULL, '2021-04-26 22:34:58', NULL, '2021-04-26 22:34:58', b'0');  
239 -INSERT INTO `inf_api_access_log` VALUES (188, 'e56742980bc6452cb95ef8856dee866e.235.16194476977240013', 1, 2, 'dashboard', 'GET', '/api/system/menu/list', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:34:58', '2021-04-26 22:34:58', 15, 0, '', NULL, '2021-04-26 22:34:58', NULL, '2021-04-26 22:34:58', b'0');  
240 -INSERT INTO `inf_api_access_log` VALUES (189, 'e56742980bc6452cb95ef8856dee866e.236.16194477060930015', 1, 2, 'dashboard', 'GET', '/api/system/menu/list', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:35:06', '2021-04-26 22:35:06', 15, 0, '', NULL, '2021-04-26 22:35:06', NULL, '2021-04-26 22:35:06', b'0');  
241 -INSERT INTO `inf_api_access_log` VALUES (190, 'e56742980bc6452cb95ef8856dee866e.235.16194477445010015', 1, 2, 'dashboard', 'POST', '/api/system/menu/create', '{\"query\":{},\"body\":\"{\\\"parentId\\\":2,\\\"name\\\":\\\"日志中心\\\",\\\"icon\\\":\\\"log\\\",\\\"type\\\":2,\\\"sort\\\":8,\\\"status\\\":0,\\\"path\\\":\\\"infra/log\\\"}\"}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:35:45', '2021-04-26 22:35:45', 23, 0, '', NULL, '2021-04-26 22:35:45', NULL, '2021-04-26 22:35:45', b'0');  
242 -INSERT INTO `inf_api_access_log` VALUES (191, 'e56742980bc6452cb95ef8856dee866e.234.16194477445460011', 1, 2, 'dashboard', 'GET', '/api/system/menu/list', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:35:45', '2021-04-26 22:35:45', 14, 0, '', NULL, '2021-04-26 22:35:45', NULL, '2021-04-26 22:35:45', b'0');  
243 -INSERT INTO `inf_api_access_log` VALUES (192, 'e56742980bc6452cb95ef8856dee866e.236.16194477470830017', 1, 2, 'dashboard', 'GET', '/api/system/menu/get', '{\"query\":{\"id\":\"1077\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:35:47', '2021-04-26 22:35:47', 7, 0, '', NULL, '2021-04-26 22:35:47', NULL, '2021-04-26 22:35:47', b'0');  
244 -INSERT INTO `inf_api_access_log` VALUES (193, 'e56742980bc6452cb95ef8856dee866e.233.16194477470830017', 1, 2, 'dashboard', 'GET', '/api/system/menu/list', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:35:47', '2021-04-26 22:35:47', 13, 0, '', NULL, '2021-04-26 22:35:47', NULL, '2021-04-26 22:35:47', b'0');  
245 -INSERT INTO `inf_api_access_log` VALUES (194, 'e56742980bc6452cb95ef8856dee866e.227.16194477505500021', 1, 2, 'dashboard', 'GET', '/api/system/menu/get', '{\"query\":{\"id\":\"1116\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:35:51', '2021-04-26 22:35:51', 6, 0, '', NULL, '2021-04-26 22:35:51', NULL, '2021-04-26 22:35:51', b'0');  
246 -INSERT INTO `inf_api_access_log` VALUES (195, 'e56742980bc6452cb95ef8856dee866e.229.16194477505500021', 1, 2, 'dashboard', 'GET', '/api/system/menu/list', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:35:51', '2021-04-26 22:35:51', 13, 0, '', NULL, '2021-04-26 22:35:51', NULL, '2021-04-26 22:35:51', b'0');  
247 -INSERT INTO `inf_api_access_log` VALUES (196, 'e56742980bc6452cb95ef8856dee866e.233.16194477802930019', 1, 2, 'dashboard', 'GET', '/api/system/menu/get', '{\"query\":{\"id\":\"1116\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:36:20', '2021-04-26 22:36:20', 6, 0, '', NULL, '2021-04-26 22:36:20', NULL, '2021-04-26 22:36:20', b'0');  
248 -INSERT INTO `inf_api_access_log` VALUES (197, 'e56742980bc6452cb95ef8856dee866e.236.16194477802930019', 1, 2, 'dashboard', 'GET', '/api/system/menu/list', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:36:20', '2021-04-26 22:36:20', 14, 0, '', NULL, '2021-04-26 22:36:20', NULL, '2021-04-26 22:36:20', b'0');  
249 -INSERT INTO `inf_api_access_log` VALUES (198, 'e56742980bc6452cb95ef8856dee866e.229.16194477870040023', 1, 2, 'dashboard', 'PUT', '/api/system/menu/update', '{\"query\":{},\"body\":\"{\\\"id\\\":1116,\\\"status\\\":0,\\\"createTime\\\":1619447745000,\\\"name\\\":\\\"日志中心\\\",\\\"permission\\\":\\\"\\\",\\\"type\\\":2,\\\"sort\\\":8,\\\"parentId\\\":2,\\\"path\\\":\\\"log-center\\\",\\\"icon\\\":\\\"log\\\",\\\"component\\\":\\\"infra/log\\\"}\"}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:36:27', '2021-04-26 22:36:27', 17, 0, '', NULL, '2021-04-26 22:36:27', NULL, '2021-04-26 22:36:27', b'0');  
250 -INSERT INTO `inf_api_access_log` VALUES (199, 'e56742980bc6452cb95ef8856dee866e.228.16194477870590027', 1, 2, 'dashboard', 'GET', '/api/system/menu/list', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:36:27', '2021-04-26 22:36:27', 16, 0, '', NULL, '2021-04-26 22:36:27', NULL, '2021-04-26 22:36:27', b'0');  
251 -INSERT INTO `inf_api_access_log` VALUES (200, 'e56742980bc6452cb95ef8856dee866e.231.16194477892350031', 1, 2, 'dashboard', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:36:29', '2021-04-26 22:36:29', 6, 0, '', NULL, '2021-04-26 22:36:29', NULL, '2021-04-26 22:36:29', b'0');  
252 -INSERT INTO `inf_api_access_log` VALUES (201, 'e56742980bc6452cb95ef8856dee866e.230.16194477892350021', 1, 2, 'dashboard', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:36:29', '2021-04-26 22:36:29', 9, 0, '', NULL, '2021-04-26 22:36:29', NULL, '2021-04-26 22:36:29', b'0');  
253 -INSERT INTO `inf_api_access_log` VALUES (202, 'e56742980bc6452cb95ef8856dee866e.232.16194477892530025', 1, 2, 'dashboard', 'GET', '/api/list-menus', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:36:29', '2021-04-26 22:36:29', 4, 0, '', NULL, '2021-04-26 22:36:29', NULL, '2021-04-26 22:36:29', b'0');  
254 -INSERT INTO `inf_api_access_log` VALUES (203, 'e56742980bc6452cb95ef8856dee866e.235.16194477898060019', 1, 2, 'dashboard', 'GET', '/api/system/menu/list', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:36:30', '2021-04-26 22:36:30', 20, 0, '', NULL, '2021-04-26 22:36:30', NULL, '2021-04-26 22:36:30', b'0');  
255 -INSERT INTO `inf_api_access_log` VALUES (204, 'e56742980bc6452cb95ef8856dee866e.227.16194478113490027', 1, 2, 'dashboard', 'GET', '/api/system/error-code/page', '{\"query\":{\"pageNo\":\"1\",\"pageSize\":\"10\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:36:51', '2021-04-26 22:36:52', 158, 0, '', NULL, '2021-04-26 22:36:52', NULL, '2021-04-26 22:36:52', b'0');  
256 -INSERT INTO `inf_api_access_log` VALUES (205, 'e56742980bc6452cb95ef8856dee866e.230.16194478236430023', 1, 2, 'dashboard', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:37:04', '2021-04-26 22:37:04', 8, 0, '', NULL, '2021-04-26 22:37:04', NULL, '2021-04-26 22:37:04', b'0');  
257 -INSERT INTO `inf_api_access_log` VALUES (206, 'e56742980bc6452cb95ef8856dee866e.232.16194478236430027', 1, 2, 'dashboard', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:37:04', '2021-04-26 22:37:04', 13, 0, '', NULL, '2021-04-26 22:37:04', NULL, '2021-04-26 22:37:04', b'0');  
258 -INSERT INTO `inf_api_access_log` VALUES (207, 'e56742980bc6452cb95ef8856dee866e.235.16194478236690021', 1, 2, 'dashboard', 'GET', '/api/list-menus', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:37:04', '2021-04-26 22:37:04', 5, 0, '', NULL, '2021-04-26 22:37:04', NULL, '2021-04-26 22:37:04', b'0');  
259 -INSERT INTO `inf_api_access_log` VALUES (208, 'e56742980bc6452cb95ef8856dee866e.234.16194478242700019', 1, 2, 'dashboard', 'GET', '/api/system/error-code/page', '{\"query\":{\"pageNo\":\"1\",\"pageSize\":\"10\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:37:04', '2021-04-26 22:37:04', 15, 0, '', NULL, '2021-04-26 22:37:04', NULL, '2021-04-26 22:37:04', b'0');  
260 -INSERT INTO `inf_api_access_log` VALUES (209, 'e56742980bc6452cb95ef8856dee866e.233.16194478279420023', 1, 2, 'dashboard', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:37:08', '2021-04-26 22:37:08', 11, 0, '', NULL, '2021-04-26 22:37:08', NULL, '2021-04-26 22:37:08', b'0');  
261 -INSERT INTO `inf_api_access_log` VALUES (210, 'e56742980bc6452cb95ef8856dee866e.236.16194478279440025', 1, 2, 'dashboard', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:37:08', '2021-04-26 22:37:08', 11, 0, '', NULL, '2021-04-26 22:37:08', NULL, '2021-04-26 22:37:08', b'0');  
262 -INSERT INTO `inf_api_access_log` VALUES (211, 'e56742980bc6452cb95ef8856dee866e.227.16194478280180029', 1, 2, 'dashboard', 'GET', '/api/list-menus', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:37:08', '2021-04-26 22:37:08', 6, 0, '', NULL, '2021-04-26 22:37:08', NULL, '2021-04-26 22:37:08', b'0');  
263 -INSERT INTO `inf_api_access_log` VALUES (212, 'e56742980bc6452cb95ef8856dee866e.229.16194478285630029', 1, 2, 'dashboard', 'GET', '/api/system/error-code/page', '{\"query\":{\"pageNo\":\"1\",\"pageSize\":\"10\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:37:09', '2021-04-26 22:37:09', 14, 0, '', NULL, '2021-04-26 22:37:09', NULL, '2021-04-26 22:37:09', b'0');  
264 -INSERT INTO `inf_api_access_log` VALUES (213, 'e56742980bc6452cb95ef8856dee866e.231.16194478338900037', 1, 2, 'dashboard', 'GET', '/api/system/menu/list', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:37:14', '2021-04-26 22:37:14', 15, 0, '', NULL, '2021-04-26 22:37:14', NULL, '2021-04-26 22:37:14', b'0');  
265 -INSERT INTO `inf_api_access_log` VALUES (214, 'e56742980bc6452cb95ef8856dee866e.230.16194478381800025', 1, 2, 'dashboard', 'GET', '/api/system/menu/get', '{\"query\":{\"id\":\"1116\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:37:18', '2021-04-26 22:37:18', 6, 0, '', NULL, '2021-04-26 22:37:18', NULL, '2021-04-26 22:37:18', b'0');  
266 -INSERT INTO `inf_api_access_log` VALUES (215, 'e56742980bc6452cb95ef8856dee866e.232.16194478381800029', 1, 2, 'dashboard', 'GET', '/api/system/menu/list', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:37:18', '2021-04-26 22:37:18', 14, 0, '', NULL, '2021-04-26 22:37:18', NULL, '2021-04-26 22:37:18', b'0');  
267 -INSERT INTO `inf_api_access_log` VALUES (216, 'e56742980bc6452cb95ef8856dee866e.233.16194478446320025', 1, 2, 'dashboard', 'PUT', '/api/system/menu/update', '{\"query\":{},\"body\":\"{\\\"id\\\":1116,\\\"status\\\":0,\\\"createTime\\\":1619447745000,\\\"name\\\":\\\"日志中心\\\",\\\"permission\\\":\\\"\\\",\\\"type\\\":2,\\\"sort\\\":8,\\\"parentId\\\":2,\\\"path\\\":\\\"log-center\\\",\\\"icon\\\":\\\"log\\\",\\\"component\\\":\\\"infra/skywalking/log\\\"}\"}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:37:25', '2021-04-26 22:37:25', 19, 0, '', NULL, '2021-04-26 22:37:25', NULL, '2021-04-26 22:37:25', b'0');  
268 -INSERT INTO `inf_api_access_log` VALUES (217, 'e56742980bc6452cb95ef8856dee866e.236.16194478446750027', 1, 2, 'dashboard', 'GET', '/api/system/menu/list', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:37:25', '2021-04-26 22:37:25', 13, 0, '', NULL, '2021-04-26 22:37:25', NULL, '2021-04-26 22:37:25', b'0');  
269 -INSERT INTO `inf_api_access_log` VALUES (218, 'e56742980bc6452cb95ef8856dee866e.227.16194478466100031', 1, 2, 'dashboard', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:37:27', '2021-04-26 22:37:27', 7, 0, '', NULL, '2021-04-26 22:37:27', NULL, '2021-04-26 22:37:27', b'0');  
270 -INSERT INTO `inf_api_access_log` VALUES (219, 'e56742980bc6452cb95ef8856dee866e.229.16194478466100031', 1, 2, 'dashboard', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:37:27', '2021-04-26 22:37:27', 14, 0, '', NULL, '2021-04-26 22:37:27', NULL, '2021-04-26 22:37:27', b'0');  
271 -INSERT INTO `inf_api_access_log` VALUES (220, 'e56742980bc6452cb95ef8856dee866e.228.16194478466370035', 1, 2, 'dashboard', 'GET', '/api/list-menus', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:37:27', '2021-04-26 22:37:27', 5, 0, '', NULL, '2021-04-26 22:37:27', NULL, '2021-04-26 22:37:27', b'0');  
272 -INSERT INTO `inf_api_access_log` VALUES (221, 'e56742980bc6452cb95ef8856dee866e.231.16194478471780039', 1, 2, 'dashboard', 'GET', '/api/system/menu/list', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:37:27', '2021-04-26 22:37:27', 12, 0, '', NULL, '2021-04-26 22:37:27', NULL, '2021-04-26 22:37:27', b'0');  
273 -INSERT INTO `inf_api_access_log` VALUES (222, '59763086cbd842a49188a6b0e812b922.221.16194479143300001', 1, 2, 'dashboard', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:38:34', '2021-04-26 22:38:34', 149, 0, '', NULL, '2021-04-26 22:38:35', NULL, '2021-04-26 22:38:35', b'0');  
274 -INSERT INTO `inf_api_access_log` VALUES (223, '59763086cbd842a49188a6b0e812b922.220.16194479143300001', 1, 2, 'dashboard', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:38:34', '2021-04-26 22:38:35', 211, 0, '', NULL, '2021-04-26 22:38:35', NULL, '2021-04-26 22:38:35', b'0');  
275 -INSERT INTO `inf_api_access_log` VALUES (224, '59763086cbd842a49188a6b0e812b922.222.16194479145510001', 1, 2, 'dashboard', 'GET', '/api/list-menus', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:38:35', '2021-04-26 22:38:35', 11, 0, '', NULL, '2021-04-26 22:38:35', NULL, '2021-04-26 22:38:35', b'0');  
276 -INSERT INTO `inf_api_access_log` VALUES (225, '59763086cbd842a49188a6b0e812b922.220.16194484707170027', 1, 2, 'dashboard', 'GET', '/api/tool/test-demo/list', '{\"query\":{\"ids\":\"1\"},\"body\":null}', '127.0.0.1', 'Apache-HttpClient/4.5.12 (Java/11.0.9)', '2021-04-26 22:47:51', '2021-04-26 22:47:51', 78, 0, '', NULL, '2021-04-26 22:47:51', NULL, '2021-04-26 22:47:51', b'0');  
277 -INSERT INTO `inf_api_access_log` VALUES (226, '59763086cbd842a49188a6b0e812b922.214.16194484734110031', 1, 2, 'dashboard', 'GET', '/api/tool/test-demo/list', '{\"query\":{\"ids\":\"1\"},\"body\":null}', '127.0.0.1', 'Apache-HttpClient/4.5.12 (Java/11.0.9)', '2021-04-26 22:47:53', '2021-04-26 22:47:54', 1019, 429, '请求过于频ç¹ï¼Œè¯·ç¨åŽé‡è¯•', NULL, '2021-04-26 22:47:54', NULL, '2021-04-26 22:47:54', b'0');  
278 -INSERT INTO `inf_api_access_log` VALUES (227, '59763086cbd842a49188a6b0e812b922.216.16194484796440033', 1, 2, 'dashboard', 'GET', '/api/tool/test-demo/list', '{\"query\":{\"ids\":\"1\"},\"body\":null}', '127.0.0.1', 'Apache-HttpClient/4.5.12 (Java/11.0.9)', '2021-04-26 22:48:00', '2021-04-26 22:48:01', 1012, 429, '请求过于频ç¹ï¼Œè¯·ç¨åŽé‡è¯•', NULL, '2021-04-26 22:48:01', NULL, '2021-04-26 22:48:01', b'0');  
279 -INSERT INTO `inf_api_access_log` VALUES (228, '59763086cbd842a49188a6b0e812b922.220.16194485021960029', 0, 2, 'dashboard', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:48:22', '2021-04-26 22:48:22', 16, 0, '', NULL, '2021-04-26 22:48:22', NULL, '2021-04-26 22:48:22', b'0');  
280 -INSERT INTO `inf_api_access_log` VALUES (229, '59763086cbd842a49188a6b0e812b922.213.16194485021960035', 0, 2, 'dashboard', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:48:22', '2021-04-26 22:48:22', 15, 0, '', NULL, '2021-04-26 22:48:22', NULL, '2021-04-26 22:48:22', b'0');  
281 -INSERT INTO `inf_api_access_log` VALUES (230, '59763086cbd842a49188a6b0e812b922.214.16194485022790033', 0, 2, 'dashboard', 'POST', '/api/logout', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:48:22', '2021-04-26 22:48:22', 2, 0, '', NULL, '2021-04-26 22:48:22', NULL, '2021-04-26 22:48:22', b'0');  
282 -INSERT INTO `inf_api_access_log` VALUES (231, '59763086cbd842a49188a6b0e812b922.216.16194485036410035', 0, 2, 'dashboard', 'POST', '/api/logout', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:48:24', '2021-04-26 22:48:24', 2, 0, '', NULL, '2021-04-26 22:48:24', NULL, '2021-04-26 22:48:24', b'0');  
283 -INSERT INTO `inf_api_access_log` VALUES (232, '59763086cbd842a49188a6b0e812b922.215.16194485023870037', 0, 2, 'dashboard', 'GET', '/api/system/captcha/get-image', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:48:22', '2021-04-26 22:48:25', 2142, 0, '', NULL, '2021-04-26 22:48:25', NULL, '2021-04-26 22:48:25', b'0');  
284 -INSERT INTO `inf_api_access_log` VALUES (233, '59763086cbd842a49188a6b0e812b922.217.16194485042350035', 0, 2, 'dashboard', 'GET', '/api/system/captcha/get-image', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:48:24', '2021-04-26 22:48:25', 294, 0, '', NULL, '2021-04-26 22:48:25', NULL, '2021-04-26 22:48:25', b'0');  
285 -INSERT INTO `inf_api_access_log` VALUES (234, '59763086cbd842a49188a6b0e812b922.218.16194485070140035', 0, 2, 'dashboard', 'POST', '/api/login', '{\"query\":{},\"body\":\"{\\\"username\\\":\\\"admin\\\",\\\"password\\\":\\\"admin123\\\",\\\"code\\\":\\\"nwtci\\\",\\\"uuid\\\":\\\"4907e62f153a43fcaa0a8313c32c6b21\\\"}\"}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:48:27', '2021-04-26 22:48:27', 236, 0, '', NULL, '2021-04-26 22:48:27', NULL, '2021-04-26 22:48:27', b'0');  
286 -INSERT INTO `inf_api_access_log` VALUES (235, '59763086cbd842a49188a6b0e812b922.221.16194485072620037', 1, 2, 'dashboard', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:48:27', '2021-04-26 22:48:27', 6, 0, '', NULL, '2021-04-26 22:48:27', NULL, '2021-04-26 22:48:27', b'0');  
287 -INSERT INTO `inf_api_access_log` VALUES (236, '59763086cbd842a49188a6b0e812b922.219.16194485072620035', 1, 2, 'dashboard', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:48:27', '2021-04-26 22:48:27', 13, 0, '', NULL, '2021-04-26 22:48:27', NULL, '2021-04-26 22:48:27', b'0');  
288 -INSERT INTO `inf_api_access_log` VALUES (237, '59763086cbd842a49188a6b0e812b922.222.16194485072760039', 1, 2, 'dashboard', 'GET', '/api/list-menus', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 22:48:27', '2021-04-26 22:48:27', 5, 0, '', NULL, '2021-04-26 22:48:27', NULL, '2021-04-26 22:48:27', b'0');  
289 -INSERT INTO `inf_api_access_log` VALUES (238, 'e51b3ff642b04beba5a64bb5f8903626.218.16194486266180001', 1, 2, 'dashboard', 'GET', '/api/tool/test-demo/list', '{\"query\":{\"ids\":\"1\"},\"body\":null}', '127.0.0.1', 'Apache-HttpClient/4.5.12 (Java/11.0.9)', '2021-04-26 22:50:27', '2021-04-26 22:50:32', 5285, 0, '', NULL, '2021-04-26 22:50:32', NULL, '2021-04-26 22:50:32', b'0');  
290 -INSERT INTO `inf_api_access_log` VALUES (239, 'Ignored_Trace', 1, 2, 'dashboard', 'GET', '/api/tool/test-demo/list', '{\"query\":{\"ids\":\"1\"},\"body\":null}', '127.0.0.1', 'Apache-HttpClient/4.5.12 (Java/11.0.9)', '2021-04-26 23:04:21', '2021-04-26 23:04:24', 2668, 0, '', NULL, '2021-04-26 23:04:24', NULL, '2021-04-26 23:04:24', b'0');  
291 -INSERT INTO `inf_api_access_log` VALUES (240, 'e51b3ff642b04beba5a64bb5f8903626.214.16194495278530039', 1, 2, 'dashboard', 'GET', '/api/tool/test-demo/list', '{\"query\":{\"ids\":\"1\"},\"body\":null}', '127.0.0.1', 'Apache-HttpClient/4.5.12 (Java/11.0.9)', '2021-04-26 23:05:28', '2021-04-26 23:05:28', 15, 0, '', NULL, '2021-04-26 23:05:28', NULL, '2021-04-26 23:05:28', b'0');  
292 -INSERT INTO `inf_api_access_log` VALUES (241, '3e50cedeca3c4525ab87a9c31a65d53d.231.16194535668290009', 1, 2, 'dashboard', 'GET', '/api/tool/test-demo/list', '{\"query\":{\"ids\":\"1\"},\"body\":null}', '127.0.0.1', 'Apache-HttpClient/4.5.12 (Java/11.0.9)', '2021-04-27 00:12:47', '2021-04-27 00:12:47', 231, 500, '系统异常', NULL, '2021-04-27 00:12:47', NULL, '2021-04-27 00:12:47', b'0');  
293 -INSERT INTO `inf_api_access_log` VALUES (242, 'c34abf720d204a78b729c1297622d308.230.16194536457760001', 1, 2, 'dashboard', 'GET', '/api/tool/test-demo/list', '{\"query\":{\"ids\":\"1\"},\"body\":null}', '127.0.0.1', 'Apache-HttpClient/4.5.12 (Java/11.0.9)', '2021-04-27 00:14:06', '2021-04-27 00:14:06', 290, 0, '', NULL, '2021-04-27 00:14:06', NULL, '2021-04-27 00:14:06', b'0');  
294 -INSERT INTO `inf_api_access_log` VALUES (243, 'c34abf720d204a78b729c1297622d308.223.16194536563270005', 1, 2, 'dashboard', 'GET', '/api/tool/test-demo/list', '{\"query\":{\"ids\":\"1\"},\"body\":null}', '127.0.0.1', 'Apache-HttpClient/4.5.12 (Java/11.0.9)', '2021-04-27 00:14:16', '2021-04-27 00:14:16', 17, 0, '', NULL, '2021-04-27 00:14:16', NULL, '2021-04-27 00:14:16', b'0');  
295 -INSERT INTO `inf_api_access_log` VALUES (244, 'c34abf720d204a78b729c1297622d308.227.16194536692310005', 1, 2, 'dashboard', 'GET', '/api/tool/test-demo/list', '{\"query\":{\"ids\":\"1\"},\"body\":null}', '127.0.0.1', 'Apache-HttpClient/4.5.12 (Java/11.0.9)', '2021-04-27 00:14:29', '2021-04-27 00:14:45', 16032, 0, '', NULL, '2021-04-27 00:14:45', NULL, '2021-04-27 00:14:45', b'0');  
296 -INSERT INTO `inf_api_access_log` VALUES (245, 'c34abf720d204a78b729c1297622d308.223.16194536911790007', 1, 2, 'dashboard', 'GET', '/api/tool/test-demo/list', '{\"query\":{\"ids\":\"1\"},\"body\":null}', '127.0.0.1', 'Apache-HttpClient/4.5.12 (Java/11.0.9)', '2021-04-27 00:14:51', '2021-04-27 00:16:11', 80012, 0, '', NULL, '2021-04-27 00:16:11', NULL, '2021-04-27 00:16:11', b'0');  
297 -INSERT INTO `inf_api_access_log` VALUES (246, 'c34abf720d204a78b729c1297622d308.229.16194537805690011', 1, 2, 'dashboard', 'GET', '/api/tool/test-demo/list', '{\"query\":{\"ids\":\"1\"},\"body\":null}', '127.0.0.1', 'Apache-HttpClient/4.5.12 (Java/11.0.9)', '2021-04-27 00:16:21', '2021-04-27 00:16:33', 12271, 0, '', NULL, '2021-04-27 00:16:33', NULL, '2021-04-27 00:16:33', b'0');  
298 -INSERT INTO `inf_api_access_log` VALUES (247, 'e2b885d51d2146b6a280752f154b5708.226.16194538527310001', 1, 2, 'dashboard', 'GET', '/api/tool/test-demo/list', '{\"query\":{\"ids\":\"1\"},\"body\":null}', '127.0.0.1', 'Apache-HttpClient/4.5.12 (Java/11.0.9)', '2021-04-27 00:17:33', '2021-04-27 00:17:42', 9511, 0, '', NULL, '2021-04-27 00:17:42', NULL, '2021-04-27 00:17:42', b'0');  
299 -INSERT INTO `inf_api_access_log` VALUES (248, '6043420d70064408a6e905d644180cd5.231.16194540403810001', 1, 2, 'dashboard', 'GET', '/api/tool/test-demo/list', '{\"query\":{\"ids\":\"1\"},\"body\":null}', '127.0.0.1', 'Apache-HttpClient/4.5.12 (Java/11.0.9)', '2021-04-27 00:20:40', '2021-04-27 00:21:01', 20688, 0, '', NULL, '2021-04-27 00:21:01', NULL, '2021-04-27 00:21:01', b'0');  
300 -INSERT INTO `inf_api_access_log` VALUES (249, '3f00e2fa7e5948909f346063f918e30d.229.16194541263910001', 1, 2, 'dashboard', 'GET', '/api/tool/test-demo/list', '{\"query\":{\"ids\":\"1\"},\"body\":null}', '127.0.0.1', 'Apache-HttpClient/4.5.12 (Java/11.0.9)', '2021-04-27 00:22:06', '2021-04-27 00:22:18', 11769, 0, '', NULL, '2021-04-27 00:22:18', NULL, '2021-04-27 00:22:18', b'0');  
301 -INSERT INTO `inf_api_access_log` VALUES (250, 'e0ed1d328f6e46a191c851dcd88ac82a.228.16194543864800009', 1, 2, 'dashboard', 'GET', '/api/tool/test-demo/list', '{\"query\":{\"ids\":\"1\"},\"body\":null}', '127.0.0.1', 'Apache-HttpClient/4.5.12 (Java/11.0.9)', '2021-04-27 00:26:26', '2021-04-27 00:27:33', 66063, 0, '', NULL, '2021-04-27 00:27:33', NULL, '2021-04-27 00:27:33', b'0');  
302 -INSERT INTO `inf_api_access_log` VALUES (251, 'e0ed1d328f6e46a191c851dcd88ac82a.224.16194544618350013', 1, 2, 'dashboard', 'GET', '/api/tool/test-demo/list', '{\"query\":{\"ids\":\"1\"},\"body\":null}', '127.0.0.1', 'Apache-HttpClient/4.5.12 (Java/11.0.9)', '2021-04-27 00:27:42', '2021-04-27 00:27:57', 15562, 0, '', NULL, '2021-04-27 00:27:57', NULL, '2021-04-27 00:27:57', b'0');  
303 -INSERT INTO `inf_api_access_log` VALUES (252, 'cc218f4121a34d71afeb484a4304fc7b.231.16194546247370001', 1, 2, 'dashboard', 'GET', '/api/tool/test-demo/list', '{\"query\":{\"ids\":\"1\"},\"body\":null}', '127.0.0.1', 'Apache-HttpClient/4.5.12 (Java/11.0.9)', '2021-04-27 00:30:25', '2021-04-27 00:30:33', 8235, 0, '', NULL, '2021-04-27 00:30:33', NULL, '2021-04-27 00:30:33', b'0');  
304 -INSERT INTO `inf_api_access_log` VALUES (253, '', 0, 2, 'dashboard', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-01 22:33:51', '2021-05-01 22:33:51', 88, 0, '', NULL, '2021-05-01 22:33:51', NULL, '2021-05-01 22:33:51', b'0');  
305 -INSERT INTO `inf_api_access_log` VALUES (254, '', 0, 2, 'dashboard', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-01 22:33:51', '2021-05-01 22:33:51', 87, 0, '', NULL, '2021-05-01 22:33:51', NULL, '2021-05-01 22:33:51', b'0');  
306 -INSERT INTO `inf_api_access_log` VALUES (255, '', 0, 2, 'dashboard', 'POST', '/api/logout', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-01 22:33:51', '2021-05-01 22:33:51', 5, 0, '', NULL, '2021-05-01 22:33:51', NULL, '2021-05-01 22:33:51', b'0');  
307 -INSERT INTO `inf_api_access_log` VALUES (256, '', 0, 2, 'dashboard', 'POST', '/api/logout', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-01 22:33:53', '2021-05-01 22:33:53', 3, 0, '', NULL, '2021-05-01 22:33:53', NULL, '2021-05-01 22:33:53', b'0');  
308 -INSERT INTO `inf_api_access_log` VALUES (257, '', 0, 2, 'dashboard', 'GET', '/api/system/captcha/get-image', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-01 22:33:53', '2021-05-01 22:33:54', 990, 0, '', NULL, '2021-05-01 22:33:54', NULL, '2021-05-01 22:33:54', b'0');  
309 -INSERT INTO `inf_api_access_log` VALUES (258, '', 0, 2, 'dashboard', 'GET', '/api/system/captcha/get-image', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-01 22:33:51', '2021-05-01 22:33:54', 3189, 0, '', NULL, '2021-05-01 22:33:54', NULL, '2021-05-01 22:33:54', b'0');  
310 -INSERT INTO `inf_api_access_log` VALUES (259, '', 0, 2, 'dashboard', 'GET', '/api/system/captcha/get-image', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:01:12', '2021-05-02 23:01:14', 2086, 0, '', NULL, '2021-05-02 23:01:14', NULL, '2021-05-02 23:01:14', b'0');  
311 -INSERT INTO `inf_api_access_log` VALUES (260, '', 0, 2, 'dashboard', 'POST', '/api/login', '{\"query\":{},\"body\":\"{\\\"username\\\":\\\"admin\\\",\\\"password\\\":\\\"admin123\\\",\\\"code\\\":\\\"3xuym\\\",\\\"uuid\\\":\\\"bdc1e89eeb504a94836ef332f5605773\\\"}\"}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:01:26', '2021-05-02 23:01:26', 289, 0, '', NULL, '2021-05-02 23:01:26', NULL, '2021-05-02 23:01:26', b'0');  
312 -INSERT INTO `inf_api_access_log` VALUES (261, '', 1, 2, 'dashboard', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:01:26', '2021-05-02 23:01:26', 38, 0, '', NULL, '2021-05-02 23:01:26', NULL, '2021-05-02 23:01:26', b'0');  
313 -INSERT INTO `inf_api_access_log` VALUES (262, '', 1, 2, 'dashboard', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:01:26', '2021-05-02 23:01:26', 36, 0, '', NULL, '2021-05-02 23:01:26', NULL, '2021-05-02 23:01:26', b'0');  
314 -INSERT INTO `inf_api_access_log` VALUES (263, '', 1, 2, 'dashboard', 'GET', '/api/list-menus', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:01:26', '2021-05-02 23:01:26', 13, 0, '', NULL, '2021-05-02 23:01:26', NULL, '2021-05-02 23:01:26', b'0');  
315 -INSERT INTO `inf_api_access_log` VALUES (264, '', 1, 2, 'dashboard', 'GET', '/api/system/dept/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:01:29', '2021-05-02 23:01:30', 54, 0, '', NULL, '2021-05-02 23:01:30', NULL, '2021-05-02 23:01:30', b'0');  
316 -INSERT INTO `inf_api_access_log` VALUES (265, '', 1, 2, 'dashboard', 'GET', '/api/system/post/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:01:29', '2021-05-02 23:01:30', 34, 0, '', NULL, '2021-05-02 23:01:30', NULL, '2021-05-02 23:01:30', b'0');  
317 -INSERT INTO `inf_api_access_log` VALUES (266, '', 1, 2, 'dashboard', 'GET', '/api/infra/config/get-value-by-key', '{\"query\":{\"key\":\"sys.user.init-password\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:01:29', '2021-05-02 23:01:30', 60, 0, '', NULL, '2021-05-02 23:01:30', NULL, '2021-05-02 23:01:30', b'0');  
318 -INSERT INTO `inf_api_access_log` VALUES (267, '', 1, 2, 'dashboard', 'GET', '/api/system/user/page', '{\"query\":{\"pageNo\":\"1\",\"pageSize\":\"10\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:01:29', '2021-05-02 23:01:30', 168, 0, '', NULL, '2021-05-02 23:01:30', NULL, '2021-05-02 23:01:30', b'0');  
319 -INSERT INTO `inf_api_access_log` VALUES (268, '', 1, 2, 'dashboard', 'GET', '/api/system/dept/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:01:54', '2021-05-02 23:01:54', 11, 0, '', NULL, '2021-05-02 23:01:54', NULL, '2021-05-02 23:01:54', b'0');  
320 -INSERT INTO `inf_api_access_log` VALUES (269, '', 1, 2, 'dashboard', 'GET', '/api/system/user/get', '{\"query\":{\"id\":\"1\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:01:54', '2021-05-02 23:01:54', 9, 0, '', NULL, '2021-05-02 23:01:54', NULL, '2021-05-02 23:01:54', b'0');  
321 -INSERT INTO `inf_api_access_log` VALUES (270, '', 1, 2, 'dashboard', 'GET', '/api/system/post/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:01:54', '2021-05-02 23:01:54', 11, 0, '', NULL, '2021-05-02 23:01:54', NULL, '2021-05-02 23:01:54', b'0');  
322 -INSERT INTO `inf_api_access_log` VALUES (271, '', 1, 2, 'dashboard', 'PUT', '/api/system/user/update', '{\"query\":{},\"body\":\"{\\\"dept\\\":null,\\\"username\\\":\\\"admin\\\",\\\"nickname\\\":\\\"èŠ‹é“æºç \\\",\\\"remark\\\":\\\"管ç†å‘˜\\\",\\\"deptId\\\":103,\\\"postIds\\\":[1],\\\"email\\\":\\\"aoteman@126.com\\\",\\\"mobile\\\":\\\"15612345678\\\",\\\"sex\\\":1,\\\"avatar\\\":\\\"http://api-dashboard.yudao.iocoder.cn/api/infra/file/get/5e8609290e915c4fa8b08e67.jpg\\\",\\\"id\\\":1,\\\"status\\\":0,\\\"loginIp\\\":\\\"127.0.0.1\\\",\\\"loginDate\\\":1609837427000,\\\"createTime\\\":1609837427000,\\\"password\\\":\\\"\\\"}\"}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:01:55', '2021-05-02 23:01:55', 75, 0, '', NULL, '2021-05-02 23:01:55', NULL, '2021-05-02 23:01:55', b'0');  
323 -INSERT INTO `inf_api_access_log` VALUES (272, '', 1, 2, 'dashboard', 'GET', '/api/system/user/page', '{\"query\":{\"pageNo\":\"1\",\"pageSize\":\"10\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:01:55', '2021-05-02 23:01:55', 18, 0, '', NULL, '2021-05-02 23:01:55', NULL, '2021-05-02 23:01:55', b'0');  
324 -INSERT INTO `inf_api_access_log` VALUES (273, '', 1, 2, 'dashboard', 'GET', '/api/system/user/get', '{\"query\":{\"id\":\"1\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:03:20', '2021-05-02 23:03:23', 3079, 0, '', NULL, '2021-05-02 23:03:23', NULL, '2021-05-02 23:03:23', b'0');  
325 -INSERT INTO `inf_api_access_log` VALUES (274, '', 1, 2, 'dashboard', 'GET', '/api/system/post/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:03:20', '2021-05-02 23:03:23', 3079, 0, '', NULL, '2021-05-02 23:03:23', NULL, '2021-05-02 23:03:23', b'0');  
326 -INSERT INTO `inf_api_access_log` VALUES (275, '', 1, 2, 'dashboard', 'GET', '/api/system/dept/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:03:20', '2021-05-02 23:03:23', 3079, 0, '', NULL, '2021-05-02 23:03:23', NULL, '2021-05-02 23:03:23', b'0');  
327 -INSERT INTO `inf_api_access_log` VALUES (276, '', 1, 2, 'dashboard', 'PUT', '/api/system/user/update', '{\"query\":{},\"body\":\"{\\\"dept\\\":null,\\\"username\\\":\\\"admin\\\",\\\"nickname\\\":\\\"èŠ‹é“æºç \\\",\\\"remark\\\":\\\"管ç†å‘˜\\\",\\\"deptId\\\":103,\\\"postIds\\\":[1],\\\"email\\\":\\\"aoteman@126.com\\\",\\\"mobile\\\":\\\"15612345678\\\",\\\"sex\\\":1,\\\"avatar\\\":\\\"http://api-dashboard.yudao.iocoder.cn/api/infra/file/get/5e8609290e915c4fa8b08e67.jpg\\\",\\\"id\\\":1,\\\"status\\\":0,\\\"loginIp\\\":\\\"127.0.0.1\\\",\\\"loginDate\\\":1609837427000,\\\"createTime\\\":1609837427000,\\\"password\\\":\\\"\\\"}\"}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:03:24', '2021-05-02 23:03:24', 102, 0, '', NULL, '2021-05-02 23:03:24', NULL, '2021-05-02 23:03:24', b'0');  
328 -INSERT INTO `inf_api_access_log` VALUES (277, '', 1, 2, 'dashboard', 'GET', '/api/system/user/page', '{\"query\":{\"pageNo\":\"1\",\"pageSize\":\"10\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:03:24', '2021-05-02 23:03:25', 117, 0, '', NULL, '2021-05-02 23:03:25', NULL, '2021-05-02 23:03:25', b'0');  
329 -INSERT INTO `inf_api_access_log` VALUES (278, '', 1, 2, 'dashboard', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:07:15', '2021-05-02 23:07:15', 140, 0, '', NULL, '2021-05-02 23:07:15', NULL, '2021-05-02 23:07:15', b'0');  
330 -INSERT INTO `inf_api_access_log` VALUES (279, '', 1, 2, 'dashboard', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:07:15', '2021-05-02 23:07:15', 127, 0, '', NULL, '2021-05-02 23:07:15', NULL, '2021-05-02 23:07:15', b'0');  
331 -INSERT INTO `inf_api_access_log` VALUES (280, '', 1, 2, 'dashboard', 'GET', '/api/list-menus', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:07:15', '2021-05-02 23:07:15', 14, 0, '', NULL, '2021-05-02 23:07:15', NULL, '2021-05-02 23:07:15', b'0');  
332 -INSERT INTO `inf_api_access_log` VALUES (281, '', 1, 2, 'dashboard', 'GET', '/api/system/post/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:07:16', '2021-05-02 23:07:16', 48, 0, '', NULL, '2021-05-02 23:07:16', NULL, '2021-05-02 23:07:16', b'0');  
333 -INSERT INTO `inf_api_access_log` VALUES (282, '', 1, 2, 'dashboard', 'GET', '/api/system/dept/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:07:16', '2021-05-02 23:07:16', 56, 0, '', NULL, '2021-05-02 23:07:16', NULL, '2021-05-02 23:07:16', b'0');  
334 -INSERT INTO `inf_api_access_log` VALUES (283, '', 1, 2, 'dashboard', 'GET', '/api/infra/config/get-value-by-key', '{\"query\":{\"key\":\"sys.user.init-password\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:07:16', '2021-05-02 23:07:16', 58, 0, '', NULL, '2021-05-02 23:07:16', NULL, '2021-05-02 23:07:16', b'0');  
335 -INSERT INTO `inf_api_access_log` VALUES (284, '', 1, 2, 'dashboard', 'GET', '/api/system/user/page', '{\"query\":{\"pageNo\":\"1\",\"pageSize\":\"10\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:07:16', '2021-05-02 23:07:16', 202, 0, '', NULL, '2021-05-02 23:07:16', NULL, '2021-05-02 23:07:16', b'0');  
336 -INSERT INTO `inf_api_access_log` VALUES (285, '', 1, 2, 'dashboard', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:17:04', '2021-05-02 23:17:04', 149, 0, '', NULL, '2021-05-02 23:17:04', NULL, '2021-05-02 23:17:04', b'0');  
337 -INSERT INTO `inf_api_access_log` VALUES (286, '', 1, 2, 'dashboard', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:17:04', '2021-05-02 23:17:04', 143, 0, '', NULL, '2021-05-02 23:17:04', NULL, '2021-05-02 23:17:04', b'0');  
338 -INSERT INTO `inf_api_access_log` VALUES (287, '', 1, 2, 'dashboard', 'GET', '/api/list-menus', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:17:04', '2021-05-02 23:17:04', 17, 0, '', NULL, '2021-05-02 23:17:04', NULL, '2021-05-02 23:17:04', b'0');  
339 -INSERT INTO `inf_api_access_log` VALUES (288, '', 1, 2, 'dashboard', 'GET', '/api/system/dept/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:17:05', '2021-05-02 23:17:05', 46, 0, '', NULL, '2021-05-02 23:17:05', NULL, '2021-05-02 23:17:05', b'0');  
340 -INSERT INTO `inf_api_access_log` VALUES (289, '', 1, 2, 'dashboard', 'GET', '/api/system/post/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:17:05', '2021-05-02 23:17:05', 40, 0, '', NULL, '2021-05-02 23:17:05', NULL, '2021-05-02 23:17:05', b'0');  
341 -INSERT INTO `inf_api_access_log` VALUES (290, '', 1, 2, 'dashboard', 'GET', '/api/infra/config/get-value-by-key', '{\"query\":{\"key\":\"sys.user.init-password\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:17:05', '2021-05-02 23:17:05', 45, 0, '', NULL, '2021-05-02 23:17:05', NULL, '2021-05-02 23:17:05', b'0');  
342 -INSERT INTO `inf_api_access_log` VALUES (291, '', 1, 2, 'dashboard', 'GET', '/api/system/user/page', '{\"query\":{\"pageNo\":\"1\",\"pageSize\":\"10\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:17:05', '2021-05-02 23:17:05', 183, 0, '', NULL, '2021-05-02 23:17:05', NULL, '2021-05-02 23:17:05', b'0');  
343 -INSERT INTO `inf_api_access_log` VALUES (292, '', 1, 2, 'dashboard', 'GET', '/api/system/user/page', '{\"query\":{\"pageNo\":\"1\",\"deptId\":\"105\",\"pageSize\":\"10\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:17:06', '2021-05-02 23:17:06', 17, 0, '', NULL, '2021-05-02 23:17:06', NULL, '2021-05-02 23:17:06', b'0');  
344 -INSERT INTO `inf_api_access_log` VALUES (293, '', 1, 2, 'dashboard', 'GET', '/api/system/user/page', '{\"query\":{\"pageNo\":\"1\",\"deptId\":\"104\",\"pageSize\":\"10\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:17:07', '2021-05-02 23:17:07', 12, 0, '', NULL, '2021-05-02 23:17:07', NULL, '2021-05-02 23:17:07', b'0');  
345 -INSERT INTO `inf_api_access_log` VALUES (294, '', 1, 2, 'dashboard', 'GET', '/api/system/user/page', '{\"query\":{\"pageNo\":\"1\",\"deptId\":\"106\",\"pageSize\":\"10\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:17:08', '2021-05-02 23:17:08', 14, 0, '', NULL, '2021-05-02 23:17:08', NULL, '2021-05-02 23:17:08', b'0');  
346 -INSERT INTO `inf_api_access_log` VALUES (295, '', 1, 2, 'dashboard', 'GET', '/api/system/user/page', '{\"query\":{\"pageNo\":\"1\",\"deptId\":\"102\",\"pageSize\":\"10\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:17:09', '2021-05-02 23:17:09', 11, 0, '', NULL, '2021-05-02 23:17:09', NULL, '2021-05-02 23:17:09', b'0');  
347 -INSERT INTO `inf_api_access_log` VALUES (296, '', 1, 2, 'dashboard', 'GET', '/api/system/user/page', '{\"query\":{\"pageNo\":\"1\",\"deptId\":\"108\",\"pageSize\":\"10\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:17:09', '2021-05-02 23:17:10', 10, 0, '', NULL, '2021-05-02 23:17:10', NULL, '2021-05-02 23:17:10', b'0');  
348 -INSERT INTO `inf_api_access_log` VALUES (297, '', 1, 2, 'dashboard', 'GET', '/api/system/user/page', '{\"query\":{\"pageNo\":\"1\",\"deptId\":\"109\",\"pageSize\":\"10\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:17:10', '2021-05-02 23:17:10', 11, 0, '', NULL, '2021-05-02 23:17:10', NULL, '2021-05-02 23:17:10', b'0');  
349 -INSERT INTO `inf_api_access_log` VALUES (298, '', 1, 2, 'dashboard', 'GET', '/api/system/user/page', '{\"query\":{\"pageNo\":\"1\",\"deptId\":\"101\",\"pageSize\":\"10\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:17:11', '2021-05-02 23:17:11', 17, 0, '', NULL, '2021-05-02 23:17:11', NULL, '2021-05-02 23:17:11', b'0');  
350 -INSERT INTO `inf_api_access_log` VALUES (299, '', 1, 2, 'dashboard', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:17:12', '2021-05-02 23:17:12', 11, 0, '', NULL, '2021-05-02 23:17:12', NULL, '2021-05-02 23:17:12', b'0');  
351 -INSERT INTO `inf_api_access_log` VALUES (300, '', 1, 2, 'dashboard', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:17:12', '2021-05-02 23:17:12', 22, 0, '', NULL, '2021-05-02 23:17:12', NULL, '2021-05-02 23:17:12', b'0');  
352 -INSERT INTO `inf_api_access_log` VALUES (301, '', 1, 2, 'dashboard', 'GET', '/api/list-menus', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:17:12', '2021-05-02 23:17:12', 6, 0, '', NULL, '2021-05-02 23:17:12', NULL, '2021-05-02 23:17:12', b'0');  
353 -INSERT INTO `inf_api_access_log` VALUES (302, '', 1, 2, 'dashboard', 'GET', '/api/system/dept/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:17:12', '2021-05-02 23:17:12', 12, 0, '', NULL, '2021-05-02 23:17:12', NULL, '2021-05-02 23:17:12', b'0');  
354 -INSERT INTO `inf_api_access_log` VALUES (303, '', 1, 2, 'dashboard', 'GET', '/api/system/user/page', '{\"query\":{\"pageNo\":\"1\",\"pageSize\":\"10\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:17:12', '2021-05-02 23:17:12', 24, 0, '', NULL, '2021-05-02 23:17:12', NULL, '2021-05-02 23:17:12', b'0');  
355 -INSERT INTO `inf_api_access_log` VALUES (304, '', 1, 2, 'dashboard', 'GET', '/api/system/post/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:17:12', '2021-05-02 23:17:12', 13, 0, '', NULL, '2021-05-02 23:17:12', NULL, '2021-05-02 23:17:12', b'0');  
356 -INSERT INTO `inf_api_access_log` VALUES (305, '', 1, 2, 'dashboard', 'GET', '/api/infra/config/get-value-by-key', '{\"query\":{\"key\":\"sys.user.init-password\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:17:12', '2021-05-02 23:17:12', 12, 0, '', NULL, '2021-05-02 23:17:12', NULL, '2021-05-02 23:17:12', b'0');  
357 -INSERT INTO `inf_api_access_log` VALUES (306, '', 1, 2, 'dashboard', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:18:39', '2021-05-02 23:18:39', 99, 0, '', NULL, '2021-05-02 23:18:39', NULL, '2021-05-02 23:18:39', b'0');  
358 -INSERT INTO `inf_api_access_log` VALUES (307, '', 1, 2, 'dashboard', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:18:39', '2021-05-02 23:18:39', 121, 0, '', NULL, '2021-05-02 23:18:39', NULL, '2021-05-02 23:18:39', b'0');  
359 -INSERT INTO `inf_api_access_log` VALUES (308, '', 1, 2, 'dashboard', 'GET', '/api/list-menus', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:18:39', '2021-05-02 23:18:39', 13, 0, '', NULL, '2021-05-02 23:18:39', NULL, '2021-05-02 23:18:39', b'0');  
360 -INSERT INTO `inf_api_access_log` VALUES (309, '', 1, 2, 'dashboard', 'GET', '/api/system/post/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:18:39', '2021-05-02 23:18:39', 40, 0, '', NULL, '2021-05-02 23:18:39', NULL, '2021-05-02 23:18:39', b'0');  
361 -INSERT INTO `inf_api_access_log` VALUES (310, '', 1, 2, 'dashboard', 'GET', '/api/system/dept/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:18:39', '2021-05-02 23:18:39', 56, 0, '', NULL, '2021-05-02 23:18:39', NULL, '2021-05-02 23:18:39', b'0');  
362 -INSERT INTO `inf_api_access_log` VALUES (311, '', 1, 2, 'dashboard', 'GET', '/api/infra/config/get-value-by-key', '{\"query\":{\"key\":\"sys.user.init-password\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:18:39', '2021-05-02 23:18:39', 54, 0, '', NULL, '2021-05-02 23:18:39', NULL, '2021-05-02 23:18:39', b'0');  
363 -INSERT INTO `inf_api_access_log` VALUES (312, '', 1, 2, 'dashboard', 'GET', '/api/system/user/page', '{\"query\":{\"pageNo\":\"1\",\"pageSize\":\"10\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:18:39', '2021-05-02 23:18:40', 189, 0, '', NULL, '2021-05-02 23:18:40', NULL, '2021-05-02 23:18:40', b'0');  
364 -INSERT INTO `inf_api_access_log` VALUES (313, '', 0, 2, 'yudao-admin-server', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:52:43', '2021-05-02 23:52:43', 32, 0, '', NULL, '2021-05-02 23:52:43', NULL, '2021-05-02 23:52:43', b'0');  
365 -INSERT INTO `inf_api_access_log` VALUES (314, '', 0, 2, 'yudao-admin-server', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:52:43', '2021-05-02 23:52:43', 32, 0, '', NULL, '2021-05-02 23:52:43', NULL, '2021-05-02 23:52:43', b'0');  
366 -INSERT INTO `inf_api_access_log` VALUES (315, '', 0, 2, 'yudao-admin-server', 'POST', '/api/logout', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:52:43', '2021-05-02 23:52:43', 2, 0, '', NULL, '2021-05-02 23:52:43', NULL, '2021-05-02 23:52:43', b'0');  
367 -INSERT INTO `inf_api_access_log` VALUES (316, '', 0, 2, 'yudao-admin-server', 'GET', '/api/system/captcha/get-image', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:52:45', '2021-05-02 23:52:46', 597, 0, '', NULL, '2021-05-02 23:52:46', NULL, '2021-05-02 23:52:46', b'0');  
368 -INSERT INTO `inf_api_access_log` VALUES (317, '', 0, 2, 'yudao-admin-server', 'GET', '/api/system/captcha/get-image', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:52:43', '2021-05-02 23:52:46', 2400, 0, '', NULL, '2021-05-02 23:52:46', NULL, '2021-05-02 23:52:46', b'0');  
369 -INSERT INTO `inf_api_access_log` VALUES (318, '', 0, 2, 'yudao-admin-server', 'POST', '/api/login', '{\"query\":{},\"body\":\"{\\\"username\\\":\\\"admin\\\",\\\"password\\\":\\\"admin123\\\",\\\"code\\\":\\\"l6k8q\\\",\\\"uuid\\\":\\\"74dc72f370214f8789bea55779ea5342\\\"}\"}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:52:49', '2021-05-02 23:52:50', 263, 0, '', NULL, '2021-05-02 23:52:50', NULL, '2021-05-02 23:52:50', b'0');  
370 -INSERT INTO `inf_api_access_log` VALUES (319, '', 1, 2, 'yudao-admin-server', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:52:50', '2021-05-02 23:52:50', 23, 0, '', NULL, '2021-05-02 23:52:50', NULL, '2021-05-02 23:52:50', b'0');  
371 -INSERT INTO `inf_api_access_log` VALUES (320, '', 1, 2, 'yudao-admin-server', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:52:50', '2021-05-02 23:52:50', 32, 0, '', NULL, '2021-05-02 23:52:50', NULL, '2021-05-02 23:52:50', b'0');  
372 -INSERT INTO `inf_api_access_log` VALUES (321, '', 1, 2, 'yudao-admin-server', 'GET', '/api/list-menus', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:52:50', '2021-05-02 23:52:50', 8, 0, '', NULL, '2021-05-02 23:52:50', NULL, '2021-05-02 23:52:50', b'0');  
373 -INSERT INTO `inf_api_access_log` VALUES (322, '', 1, 2, 'yudao-admin-server', 'GET', '/api/tool/test-demo/page', '{\"query\":{\"pageNo\":\"1\",\"pageSize\":\"10\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:52:54', '2021-05-02 23:52:54', 114, 0, '', NULL, '2021-05-02 23:52:54', NULL, '2021-05-02 23:52:54', b'0');  
374 -INSERT INTO `inf_api_access_log` VALUES (323, '', 1, 2, 'yudao-admin-server', 'GET', '/api/tool/codegen/table/page', '{\"query\":{\"pageNo\":\"1\",\"pageSize\":\"10\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:52:56', '2021-05-02 23:52:56', 38, 0, '', NULL, '2021-05-02 23:52:56', NULL, '2021-05-02 23:52:56', b'0');  
375 -INSERT INTO `inf_api_access_log` VALUES (324, '', 1, 2, 'yudao-admin-server', 'GET', '/api/tool/codegen/table/page', '{\"query\":{\"pageNo\":\"2\",\"pageSize\":\"10\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:52:59', '2021-05-02 23:52:59', 15, 0, '', NULL, '2021-05-02 23:52:59', NULL, '2021-05-02 23:52:59', b'0');  
376 -INSERT INTO `inf_api_access_log` VALUES (325, '', 1, 2, 'yudao-admin-server', 'GET', '/api/tool/codegen/preview', '{\"query\":{\"tableId\":\"36\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-02 23:53:01', '2021-05-02 23:53:01', 207, 0, '', NULL, '2021-05-02 23:53:01', NULL, '2021-05-02 23:53:01', b'0');  
377 -INSERT INTO `inf_api_access_log` VALUES (326, '', 1, 2, 'yudao-admin-server', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 00:09:52', '2021-05-03 00:09:52', 147, 0, '', NULL, '2021-05-03 00:09:52', NULL, '2021-05-03 00:09:52', b'0');  
378 -INSERT INTO `inf_api_access_log` VALUES (327, '', 1, 2, 'yudao-admin-server', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 00:09:52', '2021-05-03 00:09:52', 149, 0, '', NULL, '2021-05-03 00:09:52', NULL, '2021-05-03 00:09:52', b'0');  
379 -INSERT INTO `inf_api_access_log` VALUES (328, '', 1, 2, 'yudao-admin-server', 'GET', '/api/list-menus', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 00:09:52', '2021-05-03 00:09:52', 16, 0, '', NULL, '2021-05-03 00:09:52', NULL, '2021-05-03 00:09:52', b'0');  
380 -INSERT INTO `inf_api_access_log` VALUES (329, '', 1, 2, 'yudao-admin-server', 'GET', '/api/tool/codegen/table/page', '{\"query\":{\"pageNo\":\"1\",\"pageSize\":\"10\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 00:09:52', '2021-05-03 00:09:53', 148, 0, '', NULL, '2021-05-03 00:09:53', NULL, '2021-05-03 00:09:53', b'0');  
381 -INSERT INTO `inf_api_access_log` VALUES (330, '', 1, 2, 'yudao-admin-server', 'GET', '/api/tool/codegen/table/page', '{\"query\":{\"pageNo\":\"2\",\"pageSize\":\"10\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 00:09:56', '2021-05-03 00:09:56', 18, 0, '', NULL, '2021-05-03 00:09:56', NULL, '2021-05-03 00:09:56', b'0');  
382 -INSERT INTO `inf_api_access_log` VALUES (331, '', 1, 2, 'yudao-admin-server', 'GET', '/api/tool/codegen/table/page', '{\"query\":{\"pageNo\":\"1\",\"pageSize\":\"10\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 00:09:59', '2021-05-03 00:09:59', 24, 0, '', NULL, '2021-05-03 00:09:59', NULL, '2021-05-03 00:09:59', b'0');  
383 -INSERT INTO `inf_api_access_log` VALUES (332, '', 1, 2, 'yudao-admin-server', 'DELETE', '/api/tool/codegen/delete', '{\"query\":{\"tableId\":\"20\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 00:10:03', '2021-05-03 00:10:03', 47, 0, '', NULL, '2021-05-03 00:10:03', NULL, '2021-05-03 00:10:03', b'0');  
384 -INSERT INTO `inf_api_access_log` VALUES (333, '', 1, 2, 'yudao-admin-server', 'GET', '/api/tool/codegen/table/page', '{\"query\":{\"pageNo\":\"1\",\"pageSize\":\"10\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 00:10:03', '2021-05-03 00:10:03', 17, 0, '', NULL, '2021-05-03 00:10:03', NULL, '2021-05-03 00:10:03', b'0');  
385 -INSERT INTO `inf_api_access_log` VALUES (334, '', 1, 2, 'yudao-admin-server', 'GET', '/api/tool/codegen/db/table/list', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 00:10:07', '2021-05-03 00:10:07', 51, 0, '', NULL, '2021-05-03 00:10:07', NULL, '2021-05-03 00:10:07', b'0');  
386 -INSERT INTO `inf_api_access_log` VALUES (335, '', 1, 2, 'yudao-admin-server', 'POST', '/api/tool/codegen/create-list-from-db', '{\"query\":{\"tableNames\":\"tool_test_demo\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 00:10:11', '2021-05-03 00:10:11', 133, 0, '', NULL, '2021-05-03 00:10:11', NULL, '2021-05-03 00:10:11', b'0');  
387 -INSERT INTO `inf_api_access_log` VALUES (336, '', 1, 2, 'yudao-admin-server', 'GET', '/api/tool/codegen/table/page', '{\"query\":{\"pageNo\":\"1\",\"pageSize\":\"10\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 00:10:11', '2021-05-03 00:10:11', 13, 0, '', NULL, '2021-05-03 00:10:11', NULL, '2021-05-03 00:10:11', b'0');  
388 -INSERT INTO `inf_api_access_log` VALUES (337, '', 1, 2, 'yudao-admin-server', 'GET', '/api/tool/codegen/table/page', '{\"query\":{\"pageNo\":\"2\",\"pageSize\":\"10\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 00:10:14', '2021-05-03 00:10:14', 14, 0, '', NULL, '2021-05-03 00:10:14', NULL, '2021-05-03 00:10:14', b'0');  
389 -INSERT INTO `inf_api_access_log` VALUES (338, '', 1, 2, 'yudao-admin-server', 'GET', '/api/tool/codegen/preview', '{\"query\":{\"tableId\":\"38\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 00:10:16', '2021-05-03 00:10:16', 234, 0, '', NULL, '2021-05-03 00:10:16', NULL, '2021-05-03 00:10:16', b'0');  
390 -INSERT INTO `inf_api_access_log` VALUES (339, '', 1, 2, 'yudao-admin-server', 'GET', '/api/tool/codegen/download', '{\"query\":{\"tableId\":\"38\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 00:11:58', '2021-05-03 00:11:58', 64, 0, '', NULL, '2021-05-03 00:11:58', NULL, '2021-05-03 00:11:58', b'0');  
391 -INSERT INTO `inf_api_access_log` VALUES (340, '', 1, 2, 'yudao-admin-server', 'GET', '/api/tool/codegen/detail', '{\"query\":{\"tableId\":\"38\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 00:13:00', '2021-05-03 00:13:00', 18, 0, '', NULL, '2021-05-03 00:13:00', NULL, '2021-05-03 00:13:00', b'0');  
392 -INSERT INTO `inf_api_access_log` VALUES (341, '', 1, 2, 'yudao-admin-server', 'GET', '/api/system/menu/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 00:13:00', '2021-05-03 00:13:00', 34, 0, '', NULL, '2021-05-03 00:13:00', NULL, '2021-05-03 00:13:00', b'0');  
393 -INSERT INTO `inf_api_access_log` VALUES (342, '', 1, 2, 'yudao-admin-server', 'GET', '/api/system/dict-type/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 00:13:00', '2021-05-03 00:13:00', 40, 0, '', NULL, '2021-05-03 00:13:00', NULL, '2021-05-03 00:13:00', b'0');  
394 -INSERT INTO `inf_api_access_log` VALUES (343, '', 1, 2, 'yudao-admin-server', 'PUT', '/api/tool/codegen/update', '{\"query\":{},\"body\":\"{\\\"table\\\":{\\\"importType\\\":1,\\\"tableName\\\":\\\"tool_test_demo\\\",\\\"tableComment\\\":\\\"字典类型表\\\",\\\"remark\\\":null,\\\"moduleName\\\":\\\"tool\\\",\\\"businessName\\\":\\\"test\\\",\\\"className\\\":\\\"ToolTestDemo\\\",\\\"classComment\\\":\\\"字典类型\\\",\\\"author\\\":\\\"芋艿\\\",\\\"templateType\\\":1,\\\"parentMenuId\\\":null,\\\"id\\\":38,\\\"createTime\\\":1619411151000,\\\"updateTime\\\":1619971811000},\\\"columns\\\":[{\\\"tableId\\\":38,\\\"columnName\\\":\\\"id\\\",\\\"columnType\\\":\\\"bigint(20)\\\",\\\"columnComment\\\":\\\"ç¼–å·\\\",\\\"nullable\\\":false,\\\"primaryKey\\\":true,\\\"autoIncrement\\\":\\\"true\\\",\\\"ordinalPosition\\\":1,\\\"javaType\\\":\\\"Long\\\",\\\"javaField\\\":\\\"id\\\",\\\"dictType\\\":\\\"\\\",\\\"example\\\":null,\\\"createOperation\\\":false,\\\"updateOperation\\\":true,\\\"listOperation\\\":false,\\\"listOperationCondition\\\":\\\"=\\\",\\\"listOperationResult\\\":true,\\\"htmlType\\\":\\\"input\\\",\\\"id\\\":458,\\\"createTime\\\":1619971811000},{\\\"tableId\\\":38,\\\"columnName\\\":\\\"name\\\",\\\"columnType\\\":\\\"varchar(100)\\\",\\\"columnComment\\\":\\\"åå­—\\\",\\\"nullable\\\":false,\\\"primaryKey\\\":false,\\\"autoIncrement\\\":\\\"false\\\",\\\"ordinalPosition\\\":2,\\\"javaType\\\":\\\"String\\\",\\\"javaField\\\":\\\"name\\\",\\\"dictType\\\":\\\"\\\",\\\"example\\\":null,\\\"createOperation\\\":true,\\\"updateOperation\\\":true,\\\"listOperation\\\":true,\\\"listOperationCondition\\\":\\\"LIKE\\\",\\\"listOperationResult\\\":true,\\\"htmlType\\\":\\\"input\\\",\\\"id\\\":459,\\\"createTime\\\":1619971811000},{\\\"tableId\\\":38,\\\"columnName\\\":\\\"status\\\",\\\"columnType\\\":\\\"tinyint(4)\\\",\\\"columnComment\\\":\\\"状æ€\\\",\\\"nullable\\\":false,\\\"primaryKey\\\":false,\\\"autoIncrement\\\":\\\"false\\\",\\\"ordinalPosition\\\":3,\\\"javaType\\\":\\\"Integer\\\",\\\"javaField\\\":\\\"status\\\",\\\"dictType\\\":\\\"\\\",\\\"example\\\":null,\\\"createOperation\\\":true,\\\"updateOperation\\\":true,\\\"listOperation\\\":true,\\\"listOperationCondition\\\":\\\"=\\\",\\\"listOperationResult\\\":true,\\\"htmlType\\\":\\\"radio\\\",\\\"id\\\":460,\\\"createTime\\\":1619971811000},{\\\"tableId\\\":38,\\\"columnName\\\":\\\"type\\\",\\\"columnType\\\":\\\"tinyint(4)\\\",\\\"columnComment\\\":\\\"类型\\\",\\\"nullable\\\":false,\\\"primaryKey\\\":false,\\\"autoIncrement\\\":\\\"false\\\",\\\"ordinalPosition\\\":4,\\\"javaType\\\":\\\"Integer\\\",\\\"javaField\\\":\\\"type\\\",\\\"dictType\\\":\\\"\\\",\\\"example\\\":null,\\\"createOperation\\\":true,\\\"updateOperation\\\":true,\\\"listOperation\\\":true,\\\"listOperationCondition\\\":\\\"=\\\",\\\"listOperationResult\\\":true,\\\"htmlType\\\":\\\"select\\\",\\\"id\\\":461,\\\"createTime\\\":1619971811000},{\\\"tableId\\\":38,\\\"columnName\\\":\\\"category\\\",\\\"columnType\\\":\\\"tinyint(4)\\\",\\\"columnComment\\\":\\\"分类\\\",\\\"nullable\\\":false,\\\"primaryKey\\\":false,\\\"autoIncrement\\\":\\\"false\\\",\\\"ordinalPosition\\\":5,\\\"javaType\\\":\\\"Integer\\\",\\\"javaField\\\":\\\"category\\\",\\\"dictType\\\":\\\"\\\",\\\"example\\\":null,\\\"createOperation\\\":true,\\\"updateOperation\\\":true,\\\"listOperation\\\":true,\\\"listOperationCondition\\\":\\\"=\\\",\\\"listOperationResult\\\":true,\\\"htmlType\\\":\\\"input\\\",\\\"id\\\":462,\\\"createTime\\\":1619971811000},{\\\"tableId\\\":38,\\\"columnName\\\":\\\"remark\\\",\\\"columnType\\\":\\\"varchar(500)\\\",\\\"columnComment\\\":\\\"备注\\\",\\\"nullable\\\":true,\\\"primaryKey\\\":false,\\\"autoIncrement\\\":\\\"false\\\",\\\"ordinalPosition\\\":6,\\\"javaType\\\":\\\"String\\\",\\\"javaField\\\":\\\"remark\\\",\\\"dictType\\\":\\\"\\\",\\\"example\\\":null,\\\"createOperation\\\":true,\\\"updateOperation\\\":true,\\\"listOperation\\\":true,\\\"listOperationCondition\\\":\\\"=\\\",\\\"listOperationResult\\\":true,\\\"htmlType\\\":\\\"input\\\",\\\"id\\\":463,\\\"createTime\\\":1619971811000},{\\\"tableId\\\":38,\\\"columnName\\\":\\\"creator\\\",\\\"columnType\\\":\\\"varchar(64)\\\",\\\"columnComment\\\":\\\"创建者\\\",\\\"nullable\\\":true,\\\"primaryKey\\\":false,\\\"autoIncrement\\\":\\\"false\\\",\\\"ordinalPosition\\\":7,\\\"javaType\\\":\\\"String\\\",\\\"javaField\\\":\\\"creator\\\",\\\"dictType\\\":\\\"\\\",\\\"example\\\":null,\\\"createOperation\\\":false,\\\"updateOperation\\\":false,\\\"listOperation\\\":false,\\\"listOperationCondition\\\":\\\"=\\\",\\\"listOperationResult\\\":false,\\\"htmlType\\\":\\\"input\\\",\\\"id\\\":464,\\\"createTime\\\":1619971811000},{\\\"tableId\\\":38,\\\"columnName\\\":\\\"create_time\\\",\\\"columnType\\\":\\\"datetime\\\",\\\"columnComment\\\":\\\"创建时间\\\",\\\"nullable\\\":false,\\\"primaryKey\\\":false,\\\"autoIncrement\\\":\\\"false\\\",\\\"ordinalPosition\\\":8,\\\"javaType\\\":\\\"Date\\\",\\\"javaField\\\":\\\"createTime\\\",\\\"dictType\\\":\\\"\\\",\\\"example\\\":null,\\\"createOperation\\\":false,\\\"updateOperation\\\":false,\\\"listOperation\\\":true,\\\"listOperationCondition\\\":\\\"BETWEEN\\\",\\\"listOperationResult\\\":true,\\\"htmlType\\\":\\\"datetime\\\",\\\"id\\\":465,\\\"createTime\\\":1619971811000},{\\\"tableId\\\":38,\\\"columnName\\\":\\\"updater\\\",\\\"columnType\\\":\\\"varchar(64)\\\",\\\"columnComment\\\":\\\"更新者\\\",\\\"nullable\\\":true,\\\"primaryKey\\\":false,\\\"autoIncrement\\\":\\\"false\\\",\\\"ordinalPosition\\\":9,\\\"javaType\\\":\\\"String\\\",\\\"javaField\\\":\\\"updater\\\",\\\"dictType\\\":\\\"\\\",\\\"example\\\":null,\\\"createOperation\\\":false,\\\"updateOperation\\\":false,\\\"listOperation\\\":false,\\\"listOperationCondition\\\":\\\"=\\\",\\\"listOperationResult\\\":false,\\\"htmlType\\\":\\\"input\\\",\\\"id\\\":466,\\\"createTime\\\":1619971811000},{\\\"tableId\\\":38,\\\"columnName\\\":\\\"update_time\\\",\\\"columnType\\\":\\\"datetime\\\",\\\"columnComment\\\":\\\"æ›´æ–°æ—¶é—´\\\",\\\"nullable\\\":false,\\\"primaryKey\\\":false,\\\"autoIncrement\\\":\\\"false\\\",\\\"ordinalPosition\\\":10,\\\"javaType\\\":\\\"Date\\\",\\\"javaField\\\":\\\"updateTime\\\",\\\"dictType\\\":\\\"\\\",\\\"example\\\":null,\\\"createOperation\\\":false,\\\"updateOperation\\\":false,\\\"listOperation\\\":false,\\\"listOperationCondition\\\":\\\"BETWEEN\\\",\\\"listOperationResult\\\":false,\\\"htmlType\\\":\\\"datetime\\\",\\\"id\\\":467,\\\"createTime\\\":1619971811000},{\\\"tableId\\\":38,\\\"columnName\\\":\\\"deleted\\\",\\\"columnType\\\":\\\"bit(1)\\\",\\\"columnComment\\\":\\\"是å¦åˆ é™¤\\\",\\\"nullable\\\":false,\\\"primaryKey\\\":false,\\\"autoIncrement\\\":\\\"false\\\",\\\"ordinalPosition\\\":11,\\\"javaType\\\":\\\"Boolean\\\",\\\"javaField\\\":\\\"deleted\\\",\\\"dictType\\\":\\\"\\\",\\\"example\\\":null,\\\"createOperation\\\":false,\\\"updateOperation\\\":false,\\\"listOperation\\\":false,\\\"listOperationCondition\\\":\\\"=\\\",\\\"listOperationResult\\\":false,\\\"htmlType\\\":\\\"radio\\\",\\\"id\\\":468,\\\"createTime\\\":1619971811000}],\\\"params\\\":{}}\"}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 00:13:05', '2021-05-03 00:13:05', 161, 0, '', NULL, '2021-05-03 00:13:05', NULL, '2021-05-03 00:13:05', b'0');  
395 -INSERT INTO `inf_api_access_log` VALUES (344, '', 1, 2, 'yudao-admin-server', 'GET', '/api/tool/codegen/table/page', '{\"query\":{\"pageNo\":\"1\",\"pageSize\":\"10\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 00:13:06', '2021-05-03 00:13:06', 18, 0, '', NULL, '2021-05-03 00:13:06', NULL, '2021-05-03 00:13:06', b'0');  
396 -INSERT INTO `inf_api_access_log` VALUES (345, '', 1, 2, 'yudao-admin-server', 'GET', '/api/tool/codegen/table/page', '{\"query\":{\"pageNo\":\"2\",\"pageSize\":\"10\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 00:13:09', '2021-05-03 00:13:09', 13, 0, '', NULL, '2021-05-03 00:13:09', NULL, '2021-05-03 00:13:09', b'0');  
397 -INSERT INTO `inf_api_access_log` VALUES (346, '', 1, 2, 'yudao-admin-server', 'GET', '/api/tool/codegen/preview', '{\"query\":{\"tableId\":\"38\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 00:27:56', '2021-05-03 00:27:56', 65, 0, '', NULL, '2021-05-03 00:27:56', NULL, '2021-05-03 00:27:56', b'0');  
398 -INSERT INTO `inf_api_access_log` VALUES (347, '', 1, 2, 'yudao-admin-server', 'GET', '/api/tool/codegen/download', '{\"query\":{\"tableId\":\"38\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 00:27:59', '2021-05-03 00:27:59', 60, 0, '', NULL, '2021-05-03 00:27:59', NULL, '2021-05-03 00:27:59', b'0');  
399 -INSERT INTO `inf_api_access_log` VALUES (348, '', 1, 2, 'yudao-admin-server', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 00:39:20', '2021-05-03 00:39:20', 159, 0, '', NULL, '2021-05-03 00:39:20', NULL, '2021-05-03 00:39:20', b'0');  
400 -INSERT INTO `inf_api_access_log` VALUES (349, '', 1, 2, 'yudao-admin-server', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 00:39:20', '2021-05-03 00:39:20', 159, 0, '', NULL, '2021-05-03 00:39:20', NULL, '2021-05-03 00:39:20', b'0');  
401 -INSERT INTO `inf_api_access_log` VALUES (350, '', 1, 2, 'yudao-admin-server', 'GET', '/api/list-menus', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 00:39:20', '2021-05-03 00:39:20', 24, 0, '', NULL, '2021-05-03 00:39:20', NULL, '2021-05-03 00:39:20', b'0');  
402 -INSERT INTO `inf_api_access_log` VALUES (351, '', 1, 2, 'yudao-admin-server', 'GET', '/api/tool/codegen/table/page', '{\"query\":{\"pageNo\":\"1\",\"pageSize\":\"10\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 00:39:21', '2021-05-03 00:39:21', 154, 0, '', NULL, '2021-05-03 00:39:21', NULL, '2021-05-03 00:39:21', b'0');  
403 -INSERT INTO `inf_api_access_log` VALUES (352, '', 1, 2, 'yudao-admin-server', 'GET', '/api/tool/codegen/table/page', '{\"query\":{\"pageNo\":\"2\",\"pageSize\":\"10\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 00:39:23', '2021-05-03 00:39:23', 18, 0, '', NULL, '2021-05-03 00:39:23', NULL, '2021-05-03 00:39:23', b'0');  
404 -INSERT INTO `inf_api_access_log` VALUES (353, '', 1, 2, 'yudao-admin-server', 'GET', '/api/tool/codegen/preview', '{\"query\":{\"tableId\":\"38\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 00:39:31', '2021-05-03 00:39:32', 261, 0, '', NULL, '2021-05-03 00:39:32', NULL, '2021-05-03 00:39:32', b'0');  
405 -INSERT INTO `inf_api_access_log` VALUES (354, '', 1, 2, 'yudao-admin-server', 'GET', '/api/system/dict-type/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 00:41:18', '2021-05-03 00:41:18', 37, 0, '', NULL, '2021-05-03 00:41:18', NULL, '2021-05-03 00:41:18', b'0');  
406 -INSERT INTO `inf_api_access_log` VALUES (355, '', 1, 2, 'yudao-admin-server', 'GET', '/api/tool/codegen/detail', '{\"query\":{\"tableId\":\"38\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 00:41:18', '2021-05-03 00:41:18', 56, 0, '', NULL, '2021-05-03 00:41:18', NULL, '2021-05-03 00:41:18', b'0');  
407 -INSERT INTO `inf_api_access_log` VALUES (356, '', 1, 2, 'yudao-admin-server', 'GET', '/api/system/menu/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 00:41:18', '2021-05-03 00:41:18', 50, 0, '', NULL, '2021-05-03 00:41:18', NULL, '2021-05-03 00:41:18', b'0');  
408 -INSERT INTO `inf_api_access_log` VALUES (357, '', 1, 2, 'yudao-admin-server', 'GET', '/api/tool/codegen/table/page', '{\"query\":{\"pageNo\":\"1\",\"pageSize\":\"10\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 00:43:01', '2021-05-03 00:43:01', 17, 0, '', NULL, '2021-05-03 00:43:01', NULL, '2021-05-03 00:43:01', b'0');  
409 -INSERT INTO `inf_api_access_log` VALUES (358, '', 1, 2, 'yudao-admin-server', 'GET', '/api/tool/codegen/table/page', '{\"query\":{\"pageNo\":\"2\",\"pageSize\":\"10\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 00:45:32', '2021-05-03 00:45:32', 14, 0, '', NULL, '2021-05-03 00:45:32', NULL, '2021-05-03 00:45:32', b'0');  
410 -INSERT INTO `inf_api_access_log` VALUES (359, '', 1, 2, 'yudao-admin-server', 'GET', '/api/tool/codegen/detail', '{\"query\":{\"tableId\":\"38\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 00:45:36', '2021-05-03 00:45:37', 17, 0, '', NULL, '2021-05-03 00:45:37', NULL, '2021-05-03 00:45:37', b'0');  
411 -INSERT INTO `inf_api_access_log` VALUES (360, '', 1, 2, 'yudao-admin-server', 'GET', '/api/system/dict-type/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 00:45:37', '2021-05-03 00:45:37', 10, 0, '', NULL, '2021-05-03 00:45:37', NULL, '2021-05-03 00:45:37', b'0');  
412 -INSERT INTO `inf_api_access_log` VALUES (361, '', 1, 2, 'yudao-admin-server', 'GET', '/api/system/menu/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 00:45:37', '2021-05-03 00:45:37', 20, 0, '', NULL, '2021-05-03 00:45:37', NULL, '2021-05-03 00:45:37', b'0');  
413 -INSERT INTO `inf_api_access_log` VALUES (362, '', 1, 2, 'yudao-admin-server', 'PUT', '/api/tool/codegen/update', '{\"query\":{},\"body\":\"{\\\"table\\\":{\\\"importType\\\":1,\\\"tableName\\\":\\\"tool_test_demo\\\",\\\"tableComment\\\":\\\"字典类型表\\\",\\\"remark\\\":null,\\\"moduleName\\\":\\\"tool\\\",\\\"businessName\\\":\\\"test\\\",\\\"className\\\":\\\"ToolTestDemo\\\",\\\"classComment\\\":\\\"字典类型\\\",\\\"author\\\":\\\"芋艿\\\",\\\"templateType\\\":1,\\\"parentMenuId\\\":null,\\\"id\\\":38,\\\"createTime\\\":1619411151000,\\\"updateTime\\\":1619971985000},\\\"columns\\\":[{\\\"tableId\\\":38,\\\"columnName\\\":\\\"id\\\",\\\"columnType\\\":\\\"bigint(20)\\\",\\\"columnComment\\\":\\\"ç¼–å·\\\",\\\"nullable\\\":false,\\\"primaryKey\\\":true,\\\"autoIncrement\\\":\\\"true\\\",\\\"ordinalPosition\\\":1,\\\"javaType\\\":\\\"Long\\\",\\\"javaField\\\":\\\"id\\\",\\\"dictType\\\":\\\"\\\",\\\"example\\\":null,\\\"createOperation\\\":false,\\\"updateOperation\\\":true,\\\"listOperation\\\":false,\\\"listOperationCondition\\\":\\\"=\\\",\\\"listOperationResult\\\":true,\\\"htmlType\\\":\\\"input\\\",\\\"id\\\":458,\\\"createTime\\\":1619971811000},{\\\"tableId\\\":38,\\\"columnName\\\":\\\"name\\\",\\\"columnType\\\":\\\"varchar(100)\\\",\\\"columnComment\\\":\\\"åå­—\\\",\\\"nullable\\\":false,\\\"primaryKey\\\":false,\\\"autoIncrement\\\":\\\"false\\\",\\\"ordinalPosition\\\":2,\\\"javaType\\\":\\\"String\\\",\\\"javaField\\\":\\\"name\\\",\\\"dictType\\\":\\\"\\\",\\\"example\\\":null,\\\"createOperation\\\":true,\\\"updateOperation\\\":true,\\\"listOperation\\\":true,\\\"listOperationCondition\\\":\\\"LIKE\\\",\\\"listOperationResult\\\":true,\\\"htmlType\\\":\\\"input\\\",\\\"id\\\":459,\\\"createTime\\\":1619971811000},{\\\"tableId\\\":38,\\\"columnName\\\":\\\"status\\\",\\\"columnType\\\":\\\"tinyint(4)\\\",\\\"columnComment\\\":\\\"状æ€\\\",\\\"nullable\\\":false,\\\"primaryKey\\\":false,\\\"autoIncrement\\\":\\\"false\\\",\\\"ordinalPosition\\\":3,\\\"javaType\\\":\\\"Integer\\\",\\\"javaField\\\":\\\"status\\\",\\\"dictType\\\":\\\"sys_notice_type\\\",\\\"example\\\":null,\\\"createOperation\\\":true,\\\"updateOperation\\\":true,\\\"listOperation\\\":true,\\\"listOperationCondition\\\":\\\"=\\\",\\\"listOperationResult\\\":true,\\\"htmlType\\\":\\\"radio\\\",\\\"id\\\":460,\\\"createTime\\\":1619971811000},{\\\"tableId\\\":38,\\\"columnName\\\":\\\"type\\\",\\\"columnType\\\":\\\"tinyint(4)\\\",\\\"columnComment\\\":\\\"类型\\\",\\\"nullable\\\":false,\\\"primaryKey\\\":false,\\\"autoIncrement\\\":\\\"false\\\",\\\"ordinalPosition\\\":4,\\\"javaType\\\":\\\"Integer\\\",\\\"javaField\\\":\\\"type\\\",\\\"dictType\\\":\\\"\\\",\\\"example\\\":null,\\\"createOperation\\\":true,\\\"updateOperation\\\":true,\\\"listOperation\\\":true,\\\"listOperationCondition\\\":\\\"=\\\",\\\"listOperationResult\\\":true,\\\"htmlType\\\":\\\"select\\\",\\\"id\\\":461,\\\"createTime\\\":1619971811000},{\\\"tableId\\\":38,\\\"columnName\\\":\\\"category\\\",\\\"columnType\\\":\\\"tinyint(4)\\\",\\\"columnComment\\\":\\\"分类\\\",\\\"nullable\\\":false,\\\"primaryKey\\\":false,\\\"autoIncrement\\\":\\\"false\\\",\\\"ordinalPosition\\\":5,\\\"javaType\\\":\\\"Integer\\\",\\\"javaField\\\":\\\"category\\\",\\\"dictType\\\":\\\"\\\",\\\"example\\\":null,\\\"createOperation\\\":true,\\\"updateOperation\\\":true,\\\"listOperation\\\":true,\\\"listOperationCondition\\\":\\\"=\\\",\\\"listOperationResult\\\":true,\\\"htmlType\\\":\\\"input\\\",\\\"id\\\":462,\\\"createTime\\\":1619971811000},{\\\"tableId\\\":38,\\\"columnName\\\":\\\"remark\\\",\\\"columnType\\\":\\\"varchar(500)\\\",\\\"columnComment\\\":\\\"备注\\\",\\\"nullable\\\":true,\\\"primaryKey\\\":false,\\\"autoIncrement\\\":\\\"false\\\",\\\"ordinalPosition\\\":6,\\\"javaType\\\":\\\"String\\\",\\\"javaField\\\":\\\"remark\\\",\\\"dictType\\\":\\\"\\\",\\\"example\\\":null,\\\"createOperation\\\":true,\\\"updateOperation\\\":true,\\\"listOperation\\\":true,\\\"listOperationCondition\\\":\\\"=\\\",\\\"listOperationResult\\\":true,\\\"htmlType\\\":\\\"input\\\",\\\"id\\\":463,\\\"createTime\\\":1619971811000},{\\\"tableId\\\":38,\\\"columnName\\\":\\\"creator\\\",\\\"columnType\\\":\\\"varchar(64)\\\",\\\"columnComment\\\":\\\"创建者\\\",\\\"nullable\\\":true,\\\"primaryKey\\\":false,\\\"autoIncrement\\\":\\\"false\\\",\\\"ordinalPosition\\\":7,\\\"javaType\\\":\\\"String\\\",\\\"javaField\\\":\\\"creator\\\",\\\"dictType\\\":\\\"\\\",\\\"example\\\":null,\\\"createOperation\\\":false,\\\"updateOperation\\\":false,\\\"listOperation\\\":false,\\\"listOperationCondition\\\":\\\"=\\\",\\\"listOperationResult\\\":false,\\\"htmlType\\\":\\\"input\\\",\\\"id\\\":464,\\\"createTime\\\":1619971811000},{\\\"tableId\\\":38,\\\"columnName\\\":\\\"create_time\\\",\\\"columnType\\\":\\\"datetime\\\",\\\"columnComment\\\":\\\"创建时间\\\",\\\"nullable\\\":false,\\\"primaryKey\\\":false,\\\"autoIncrement\\\":\\\"false\\\",\\\"ordinalPosition\\\":8,\\\"javaType\\\":\\\"Date\\\",\\\"javaField\\\":\\\"createTime\\\",\\\"dictType\\\":\\\"\\\",\\\"example\\\":null,\\\"createOperation\\\":false,\\\"updateOperation\\\":false,\\\"listOperation\\\":true,\\\"listOperationCondition\\\":\\\"BETWEEN\\\",\\\"listOperationResult\\\":true,\\\"htmlType\\\":\\\"datetime\\\",\\\"id\\\":465,\\\"createTime\\\":1619971811000},{\\\"tableId\\\":38,\\\"columnName\\\":\\\"updater\\\",\\\"columnType\\\":\\\"varchar(64)\\\",\\\"columnComment\\\":\\\"更新者\\\",\\\"nullable\\\":true,\\\"primaryKey\\\":false,\\\"autoIncrement\\\":\\\"false\\\",\\\"ordinalPosition\\\":9,\\\"javaType\\\":\\\"String\\\",\\\"javaField\\\":\\\"updater\\\",\\\"dictType\\\":\\\"\\\",\\\"example\\\":null,\\\"createOperation\\\":false,\\\"updateOperation\\\":false,\\\"listOperation\\\":false,\\\"listOperationCondition\\\":\\\"=\\\",\\\"listOperationResult\\\":false,\\\"htmlType\\\":\\\"input\\\",\\\"id\\\":466,\\\"createTime\\\":1619971811000},{\\\"tableId\\\":38,\\\"columnName\\\":\\\"update_time\\\",\\\"columnType\\\":\\\"datetime\\\",\\\"columnComment\\\":\\\"æ›´æ–°æ—¶é—´\\\",\\\"nullable\\\":false,\\\"primaryKey\\\":false,\\\"autoIncrement\\\":\\\"false\\\",\\\"ordinalPosition\\\":10,\\\"javaType\\\":\\\"Date\\\",\\\"javaField\\\":\\\"updateTime\\\",\\\"dictType\\\":\\\"\\\",\\\"example\\\":null,\\\"createOperation\\\":false,\\\"updateOperation\\\":false,\\\"listOperation\\\":false,\\\"listOperationCondition\\\":\\\"BETWEEN\\\",\\\"listOperationResult\\\":false,\\\"htmlType\\\":\\\"datetime\\\",\\\"id\\\":467,\\\"createTime\\\":1619971811000},{\\\"tableId\\\":38,\\\"columnName\\\":\\\"deleted\\\",\\\"columnType\\\":\\\"bit(1)\\\",\\\"columnComment\\\":\\\"是å¦åˆ é™¤\\\",\\\"nullable\\\":false,\\\"primaryKey\\\":false,\\\"autoIncrement\\\":\\\"false\\\",\\\"ordinalPosition\\\":11,\\\"javaType\\\":\\\"Boolean\\\",\\\"javaField\\\":\\\"deleted\\\",\\\"dictType\\\":\\\"\\\",\\\"example\\\":null,\\\"createOperation\\\":false,\\\"updateOperation\\\":false,\\\"listOperation\\\":false,\\\"listOperationCondition\\\":\\\"=\\\",\\\"listOperationResult\\\":false,\\\"htmlType\\\":\\\"radio\\\",\\\"id\\\":468,\\\"createTime\\\":1619971811000}],\\\"params\\\":{}}\"}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 00:45:45', '2021-05-03 00:45:45', 139, 0, '', NULL, '2021-05-03 00:45:45', NULL, '2021-05-03 00:45:45', b'0');  
414 -INSERT INTO `inf_api_access_log` VALUES (363, '', 1, 2, 'yudao-admin-server', 'GET', '/api/tool/codegen/table/page', '{\"query\":{\"pageNo\":\"1\",\"pageSize\":\"10\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 00:45:45', '2021-05-03 00:45:45', 15, 0, '', NULL, '2021-05-03 00:45:45', NULL, '2021-05-03 00:45:45', b'0');  
415 -INSERT INTO `inf_api_access_log` VALUES (364, '', 1, 2, 'yudao-admin-server', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 00:47:05', '2021-05-03 00:47:05', 282, 0, '', NULL, '2021-05-03 00:47:05', NULL, '2021-05-03 00:47:05', b'0');  
416 -INSERT INTO `inf_api_access_log` VALUES (365, '', 1, 2, 'yudao-admin-server', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 00:47:05', '2021-05-03 00:47:05', 282, 0, '', NULL, '2021-05-03 00:47:05', NULL, '2021-05-03 00:47:05', b'0');  
417 -INSERT INTO `inf_api_access_log` VALUES (366, '', 1, 2, 'yudao-admin-server', 'GET', '/api/list-menus', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 00:47:05', '2021-05-03 00:47:05', 30, 0, '', NULL, '2021-05-03 00:47:05', NULL, '2021-05-03 00:47:05', b'0');  
418 -INSERT INTO `inf_api_access_log` VALUES (367, '', 1, 2, 'yudao-admin-server', 'GET', '/api/tool/codegen/table/page', '{\"query\":{\"pageNo\":\"1\",\"pageSize\":\"10\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 00:47:06', '2021-05-03 00:47:06', 236, 0, '', NULL, '2021-05-03 00:47:06', NULL, '2021-05-03 00:47:06', b'0');  
419 -INSERT INTO `inf_api_access_log` VALUES (368, '', 1, 2, 'yudao-admin-server', 'GET', '/api/tool/codegen/table/page', '{\"query\":{\"pageNo\":\"2\",\"pageSize\":\"10\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 00:47:09', '2021-05-03 00:47:09', 26, 0, '', NULL, '2021-05-03 00:47:09', NULL, '2021-05-03 00:47:09', b'0');  
420 -INSERT INTO `inf_api_access_log` VALUES (369, '', 1, 2, 'yudao-admin-server', 'GET', '/api/system/dict-type/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 00:47:17', '2021-05-03 00:47:17', 36, 0, '', NULL, '2021-05-03 00:47:17', NULL, '2021-05-03 00:47:17', b'0');  
421 -INSERT INTO `inf_api_access_log` VALUES (370, '', 1, 2, 'yudao-admin-server', 'GET', '/api/tool/codegen/detail', '{\"query\":{\"tableId\":\"38\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 00:47:17', '2021-05-03 00:47:17', 37, 0, '', NULL, '2021-05-03 00:47:17', NULL, '2021-05-03 00:47:17', b'0');  
422 -INSERT INTO `inf_api_access_log` VALUES (371, '', 1, 2, 'yudao-admin-server', 'GET', '/api/system/menu/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 00:47:17', '2021-05-03 00:47:17', 44, 0, '', NULL, '2021-05-03 00:47:17', NULL, '2021-05-03 00:47:17', b'0');  
423 -INSERT INTO `inf_api_access_log` VALUES (372, '', 1, 2, 'yudao-admin-server', 'GET', '/api/tool/codegen/table/page', '{\"query\":{\"pageNo\":\"1\",\"pageSize\":\"10\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 00:47:26', '2021-05-03 00:47:26', 33, 0, '', NULL, '2021-05-03 00:47:26', NULL, '2021-05-03 00:47:26', b'0');  
424 -INSERT INTO `inf_api_access_log` VALUES (373, '', 1, 2, 'yudao-admin-server', 'GET', '/api/tool/codegen/preview', '{\"query\":{\"tableId\":\"34\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 00:47:28', '2021-05-03 00:47:28', 238, 0, '', NULL, '2021-05-03 00:47:28', NULL, '2021-05-03 00:47:28', b'0');  
425 -INSERT INTO `inf_api_access_log` VALUES (374, '', 1, 2, 'yudao-admin-server', 'GET', '/api/tool/codegen/table/page', '{\"query\":{\"pageNo\":\"2\",\"pageSize\":\"10\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 00:48:37', '2021-05-03 00:48:37', 14, 0, '', NULL, '2021-05-03 00:48:37', NULL, '2021-05-03 00:48:37', b'0');  
426 -INSERT INTO `inf_api_access_log` VALUES (375, '', 1, 2, 'yudao-admin-server', 'GET', '/api/tool/codegen/preview', '{\"query\":{\"tableId\":\"38\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 00:48:38', '2021-05-03 00:48:38', 59, 0, '', NULL, '2021-05-03 00:48:38', NULL, '2021-05-03 00:48:38', b'0');  
427 -INSERT INTO `inf_api_access_log` VALUES (376, '', 0, 2, 'yudao-admin-server', 'POST', '/api/logout', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 01:16:41', '2021-05-03 01:16:41', 14, 0, '', NULL, '2021-05-03 01:16:41', NULL, '2021-05-03 01:16:41', b'0');  
428 -INSERT INTO `inf_api_access_log` VALUES (377, '', 0, 2, 'yudao-admin-server', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 01:16:41', '2021-05-03 01:16:41', 167, 0, '', NULL, '2021-05-03 01:16:41', NULL, '2021-05-03 01:16:41', b'0');  
429 -INSERT INTO `inf_api_access_log` VALUES (378, '', 0, 2, 'yudao-admin-server', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 01:16:41', '2021-05-03 01:16:41', 167, 0, '', NULL, '2021-05-03 01:16:41', NULL, '2021-05-03 01:16:41', b'0');  
430 -INSERT INTO `inf_api_access_log` VALUES (379, '', 0, 2, 'yudao-admin-server', 'POST', '/api/logout', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 01:16:43', '2021-05-03 01:16:43', 3, 0, '', NULL, '2021-05-03 01:16:43', NULL, '2021-05-03 01:16:43', b'0');  
431 -INSERT INTO `inf_api_access_log` VALUES (380, '', 0, 2, 'yudao-admin-server', 'GET', '/api/system/captcha/get-image', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 01:16:44', '2021-05-03 01:16:45', 1370, 0, '', NULL, '2021-05-03 01:16:45', NULL, '2021-05-03 01:16:45', b'0');  
432 -INSERT INTO `inf_api_access_log` VALUES (381, '', 0, 2, 'yudao-admin-server', 'GET', '/api/system/captcha/get-image', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 01:16:42', '2021-05-03 01:16:45', 3431, 0, '', NULL, '2021-05-03 01:16:45', NULL, '2021-05-03 01:16:45', b'0');  
433 -INSERT INTO `inf_api_access_log` VALUES (382, '', 0, 2, 'yudao-admin-server', 'POST', '/api/login', '{\"query\":{},\"body\":\"{\\\"username\\\":\\\"admin\\\",\\\"password\\\":\\\"admin123\\\",\\\"code\\\":\\\"k2u2c\\\",\\\"uuid\\\":\\\"281caaa0a2f04f70baca9eec33bf6343\\\"}\"}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 01:16:50', '2021-05-03 01:16:50', 60, 1002000004, '验è¯ç ä¸æ­£ç¡®', NULL, '2021-05-03 01:16:50', NULL, '2021-05-03 01:16:50', b'0');  
434 -INSERT INTO `inf_api_access_log` VALUES (383, '', 0, 2, 'yudao-admin-server', 'GET', '/api/system/captcha/get-image', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 01:16:50', '2021-05-03 01:16:50', 15, 0, '', NULL, '2021-05-03 01:16:50', NULL, '2021-05-03 01:16:50', b'0');  
435 -INSERT INTO `inf_api_access_log` VALUES (384, '', 0, 2, 'yudao-admin-server', 'POST', '/api/login', '{\"query\":{},\"body\":\"{\\\"username\\\":\\\"admin\\\",\\\"password\\\":\\\"admin123\\\",\\\"code\\\":\\\"9xymj\\\",\\\"uuid\\\":\\\"5e85f2015f3a46139953e6b15d6399d8\\\"}\"}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 01:16:56', '2021-05-03 01:16:56', 242, 0, '', NULL, '2021-05-03 01:16:56', NULL, '2021-05-03 01:16:56', b'0');  
436 -INSERT INTO `inf_api_access_log` VALUES (385, '', 1, 2, 'yudao-admin-server', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 01:16:56', '2021-05-03 01:16:56', 23, 0, '', NULL, '2021-05-03 01:16:56', NULL, '2021-05-03 01:16:56', b'0');  
437 -INSERT INTO `inf_api_access_log` VALUES (386, '', 1, 2, 'yudao-admin-server', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 01:16:56', '2021-05-03 01:16:56', 32, 0, '', NULL, '2021-05-03 01:16:56', NULL, '2021-05-03 01:16:56', b'0');  
438 -INSERT INTO `inf_api_access_log` VALUES (387, '', 1, 2, 'yudao-admin-server', 'GET', '/api/list-menus', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 01:16:56', '2021-05-03 01:16:56', 12, 0, '', NULL, '2021-05-03 01:16:56', NULL, '2021-05-03 01:16:56', b'0');  
439 -INSERT INTO `inf_api_access_log` VALUES (388, '', 1, 2, 'yudao-admin-server', 'GET', '/api/infra/db-doc/export-html', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 01:17:05', '2021-05-03 01:17:06', 621, 0, '', NULL, '2021-05-03 01:17:06', NULL, '2021-05-03 01:17:06', b'0');  
440 -INSERT INTO `inf_api_access_log` VALUES (389, '', 0, 2, 'yudao-admin-server', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 02:02:49', '2021-05-03 02:02:49', 52, 0, '', NULL, '2021-05-03 02:02:49', NULL, '2021-05-03 02:02:49', b'0');  
441 -INSERT INTO `inf_api_access_log` VALUES (390, '', 0, 2, 'yudao-admin-server', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 02:02:49', '2021-05-03 02:02:49', 52, 0, '', NULL, '2021-05-03 02:02:49', NULL, '2021-05-03 02:02:49', b'0');  
442 -INSERT INTO `inf_api_access_log` VALUES (391, '', 0, 2, 'yudao-admin-server', 'POST', '/api/logout', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 02:02:49', '2021-05-03 02:02:49', 6, 0, '', NULL, '2021-05-03 02:02:49', NULL, '2021-05-03 02:02:49', b'0');  
443 -INSERT INTO `inf_api_access_log` VALUES (392, '', 0, 2, 'yudao-admin-server', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 02:02:50', '2021-05-03 02:02:50', 5, 0, '', NULL, '2021-05-03 02:02:51', NULL, '2021-05-03 02:02:51', b'0');  
444 -INSERT INTO `inf_api_access_log` VALUES (393, '', 0, 2, 'yudao-admin-server', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 02:02:50', '2021-05-03 02:02:51', 5, 0, '', NULL, '2021-05-03 02:02:51', NULL, '2021-05-03 02:02:51', b'0');  
445 -INSERT INTO `inf_api_access_log` VALUES (394, '', 0, 2, 'yudao-admin-server', 'POST', '/api/logout', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 02:02:51', '2021-05-03 02:02:51', 3, 0, '', NULL, '2021-05-03 02:02:51', NULL, '2021-05-03 02:02:51', b'0');  
446 -INSERT INTO `inf_api_access_log` VALUES (395, '', 0, 2, 'yudao-admin-server', 'GET', '/api/system/captcha/get-image', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 02:02:51', '2021-05-03 02:02:52', 1289, 0, '', NULL, '2021-05-03 02:02:52', NULL, '2021-05-03 02:02:52', b'0');  
447 -INSERT INTO `inf_api_access_log` VALUES (396, '', 0, 2, 'yudao-admin-server', 'GET', '/api/system/captcha/get-image', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 02:02:49', '2021-05-03 02:02:52', 3005, 0, '', NULL, '2021-05-03 02:02:52', NULL, '2021-05-03 02:02:52', b'0');  
448 -INSERT INTO `inf_api_access_log` VALUES (397, '', 0, 2, 'yudao-admin-server', 'POST', '/api/logout', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 02:02:52', '2021-05-03 02:02:52', 1, 0, '', NULL, '2021-05-03 02:02:52', NULL, '2021-05-03 02:02:52', b'0');  
449 -INSERT INTO `inf_api_access_log` VALUES (398, '', 0, 2, 'yudao-admin-server', 'GET', '/api/system/captcha/get-image', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 02:02:53', '2021-05-03 02:02:53', 34, 0, '', NULL, '2021-05-03 02:02:53', NULL, '2021-05-03 02:02:53', b'0');  
450 -INSERT INTO `inf_api_access_log` VALUES (399, '', 0, 2, 'yudao-admin-server', 'POST', '/api/login', '{\"query\":{},\"body\":\"{\\\"username\\\":\\\"admin\\\",\\\"password\\\":\\\"admin123\\\",\\\"code\\\":\\\"djf11\\\",\\\"uuid\\\":\\\"ed2a4bbf592841f5b2f86f48ac85d17a\\\"}\"}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 02:02:56', '2021-05-03 02:02:56', 286, 0, '', NULL, '2021-05-03 02:02:56', NULL, '2021-05-03 02:02:56', b'0');  
451 -INSERT INTO `inf_api_access_log` VALUES (400, '', 1, 2, 'yudao-admin-server', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 02:02:56', '2021-05-03 02:02:56', 26, 0, '', NULL, '2021-05-03 02:02:56', NULL, '2021-05-03 02:02:56', b'0');  
452 -INSERT INTO `inf_api_access_log` VALUES (401, '', 1, 2, 'yudao-admin-server', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 02:02:56', '2021-05-03 02:02:56', 40, 0, '', NULL, '2021-05-03 02:02:56', NULL, '2021-05-03 02:02:56', b'0');  
453 -INSERT INTO `inf_api_access_log` VALUES (402, '', 1, 2, 'yudao-admin-server', 'GET', '/api/list-menus', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 02:02:56', '2021-05-03 02:02:56', 12, 0, '', NULL, '2021-05-03 02:02:56', NULL, '2021-05-03 02:02:56', b'0');  
454 -INSERT INTO `inf_api_access_log` VALUES (403, '', 1, 2, 'yudao-admin-server', 'GET', '/api/system/sms-channel/page', '{\"query\":{\"pageNo\":\"1\",\"pageSize\":\"10\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 02:03:08', '2021-05-03 02:03:08', 147, 0, '', NULL, '2021-05-03 02:03:08', NULL, '2021-05-03 02:03:08', b'0');  
455 -INSERT INTO `inf_api_access_log` VALUES (404, '', 1, 2, 'yudao-admin-server', 'GET', '/api/system/sms-channel/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 02:03:10', '2021-05-03 02:03:10', 17, 0, '', NULL, '2021-05-03 02:03:10', NULL, '2021-05-03 02:03:10', b'0');  
456 -INSERT INTO `inf_api_access_log` VALUES (405, '', 1, 2, 'yudao-admin-server', 'GET', '/api/system/sms-template/page', '{\"query\":{\"pageNo\":\"1\",\"pageSize\":\"10\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 02:03:10', '2021-05-03 02:03:10', 45, 0, '', NULL, '2021-05-03 02:03:10', NULL, '2021-05-03 02:03:10', b'0');  
457 -INSERT INTO `inf_api_access_log` VALUES (406, '', 1, 2, 'yudao-admin-server', 'POST', '/api/system/sms-template/send-sms', '{\"query\":{},\"body\":\"{\\\"content\\\":\\\"您的验è¯ç {code},该验è¯ç 5分钟内有效,请勿泄æ¼äºŽä»–人ï¼\\\",\\\"params\\\":[\\\"code\\\"],\\\"mobile\\\":\\\"15601691399\\\",\\\"templateCode\\\":\\\"test_02\\\",\\\"templateParams\\\":{\\\"code\\\":\\\"0011\\\"}}\"}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 02:03:29', '2021-05-03 02:03:29', 45, 0, '', NULL, '2021-05-03 02:03:29', NULL, '2021-05-03 02:03:29', b'0');  
458 -INSERT INTO `inf_api_access_log` VALUES (407, '', 1, 2, 'yudao-admin-server', 'GET', '/api/system/sms-channel/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 02:03:56', '2021-05-03 02:03:56', 12, 0, '', NULL, '2021-05-03 02:03:56', NULL, '2021-05-03 02:03:56', b'0');  
459 -INSERT INTO `inf_api_access_log` VALUES (408, '', 1, 2, 'yudao-admin-server', 'GET', '/api/system/sms-log/page', '{\"query\":{\"pageNo\":\"1\",\"pageSize\":\"10\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 02:03:56', '2021-05-03 02:03:56', 51, 0, '', NULL, '2021-05-03 02:03:56', NULL, '2021-05-03 02:03:56', b'0');  
460 -INSERT INTO `inf_api_access_log` VALUES (409, '', 1, 2, 'yudao-admin-server', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 02:23:53', '2021-05-03 02:23:54', 409, 0, '', NULL, '2021-05-03 02:23:54', NULL, '2021-05-03 02:23:54', b'0');  
461 -INSERT INTO `inf_api_access_log` VALUES (410, '', 1, 2, 'yudao-admin-server', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 02:23:53', '2021-05-03 02:23:54', 409, 0, '', NULL, '2021-05-03 02:23:54', NULL, '2021-05-03 02:23:54', b'0');  
462 -INSERT INTO `inf_api_access_log` VALUES (411, '', 1, 2, 'yudao-admin-server', 'GET', '/api/list-menus', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 02:23:54', '2021-05-03 02:23:54', 49, 0, '', NULL, '2021-05-03 02:23:54', NULL, '2021-05-03 02:23:54', b'0');  
463 -INSERT INTO `inf_api_access_log` VALUES (412, '', 1, 2, 'yudao-admin-server', 'GET', '/api/system/sms-channel/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 02:23:55', '2021-05-03 02:23:55', 36, 0, '', NULL, '2021-05-03 02:23:55', NULL, '2021-05-03 02:23:55', b'0');  
464 -INSERT INTO `inf_api_access_log` VALUES (413, '', 1, 2, 'yudao-admin-server', 'GET', '/api/system/sms-template/page', '{\"query\":{\"pageNo\":\"1\",\"pageSize\":\"10\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 02:23:55', '2021-05-03 02:23:55', 181, 0, '', NULL, '2021-05-03 02:23:55', NULL, '2021-05-03 02:23:55', b'0');  
465 -INSERT INTO `inf_api_access_log` VALUES (414, '', 1, 2, 'yudao-admin-server', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 02:24:01', '2021-05-03 02:24:01', 15, 0, '', NULL, '2021-05-03 02:24:01', NULL, '2021-05-03 02:24:01', b'0');  
466 -INSERT INTO `inf_api_access_log` VALUES (415, '', 1, 2, 'yudao-admin-server', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 02:24:01', '2021-05-03 02:24:01', 31, 0, '', NULL, '2021-05-03 02:24:01', NULL, '2021-05-03 02:24:01', b'0');  
467 -INSERT INTO `inf_api_access_log` VALUES (416, '', 1, 2, 'yudao-admin-server', 'GET', '/api/list-menus', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 02:24:01', '2021-05-03 02:24:01', 12, 0, '', NULL, '2021-05-03 02:24:01', NULL, '2021-05-03 02:24:01', b'0');  
468 -INSERT INTO `inf_api_access_log` VALUES (417, '', 1, 2, 'yudao-admin-server', 'GET', '/api/system/sms-channel/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 02:24:02', '2021-05-03 02:24:02', 11, 0, '', NULL, '2021-05-03 02:24:02', NULL, '2021-05-03 02:24:02', b'0');  
469 -INSERT INTO `inf_api_access_log` VALUES (418, '', 1, 2, 'yudao-admin-server', 'GET', '/api/system/sms-template/page', '{\"query\":{\"pageNo\":\"1\",\"pageSize\":\"10\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 02:24:02', '2021-05-03 02:24:02', 20, 0, '', NULL, '2021-05-03 02:24:02', NULL, '2021-05-03 02:24:02', b'0');  
470 -INSERT INTO `inf_api_access_log` VALUES (419, '', 1, 2, 'yudao-admin-server', 'POST', '/api/system/sms-template/send-sms', '{\"query\":{},\"body\":\"{\\\"content\\\":\\\"您的验è¯ç {code},该验è¯ç 5分钟内有效,请勿泄æ¼äºŽä»–人ï¼\\\",\\\"params\\\":[\\\"code\\\"],\\\"mobile\\\":\\\"15601691399\\\",\\\"templateCode\\\":\\\"test_02\\\",\\\"templateParams\\\":{\\\"code\\\":\\\"1234\\\"}}\"}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 02:24:26', '2021-05-03 02:24:26', 49, 0, '', NULL, '2021-05-03 02:24:26', NULL, '2021-05-03 02:24:26', b'0');  
471 -INSERT INTO `inf_api_access_log` VALUES (420, '', 1, 2, 'yudao-admin-server', 'POST', '/api/system/sms-template/send-sms', '{\"query\":{},\"body\":\"{\\\"content\\\":\\\"您的验è¯ç {code},该验è¯ç 5分钟内有效,请勿泄æ¼äºŽä»–人ï¼\\\",\\\"params\\\":[\\\"code\\\"],\\\"mobile\\\":\\\"15601691399\\\",\\\"templateCode\\\":\\\"test_02\\\",\\\"templateParams\\\":{\\\"code\\\":\\\"0000\\\"}}\"}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 02:25:11', '2021-05-03 02:25:15', 4136, 0, '', NULL, '2021-05-03 02:25:19', NULL, '2021-05-03 02:25:19', b'0');  
472 -INSERT INTO `inf_api_access_log` VALUES (421, '', 1, 2, 'yudao-admin-server', 'POST', '/api/system/sms-template/send-sms', '{\"query\":{},\"body\":\"{\\\"content\\\":\\\"您的验è¯ç {code},该验è¯ç 5分钟内有效,请勿泄æ¼äºŽä»–人ï¼\\\",\\\"params\\\":[\\\"code\\\"],\\\"mobile\\\":\\\"15601691399\\\",\\\"templateCode\\\":\\\"test_02\\\",\\\"templateParams\\\":{\\\"code\\\":\\\"0000\\\"}}\"}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 02:26:23', '2021-05-03 02:26:28', 5139, 0, '', NULL, '2021-05-03 02:26:46', NULL, '2021-05-03 02:26:46', b'0');  
473 -INSERT INTO `inf_api_access_log` VALUES (422, '', 1, 2, 'yudao-admin-server', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 02:28:45', '2021-05-03 02:28:45', 137, 0, '', NULL, '2021-05-03 02:28:45', NULL, '2021-05-03 02:28:45', b'0');  
474 -INSERT INTO `inf_api_access_log` VALUES (423, '', 1, 2, 'yudao-admin-server', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 02:28:45', '2021-05-03 02:28:45', 125, 0, '', NULL, '2021-05-03 02:28:45', NULL, '2021-05-03 02:28:45', b'0');  
475 -INSERT INTO `inf_api_access_log` VALUES (424, '', 1, 2, 'yudao-admin-server', 'GET', '/api/list-menus', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 02:28:45', '2021-05-03 02:28:45', 16, 0, '', NULL, '2021-05-03 02:28:45', NULL, '2021-05-03 02:28:45', b'0');  
476 -INSERT INTO `inf_api_access_log` VALUES (425, '', 1, 2, 'yudao-admin-server', 'GET', '/api/system/sms-channel/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 02:28:46', '2021-05-03 02:28:46', 34, 0, '', NULL, '2021-05-03 02:28:46', NULL, '2021-05-03 02:28:46', b'0');  
477 -INSERT INTO `inf_api_access_log` VALUES (426, '', 1, 2, 'yudao-admin-server', 'GET', '/api/system/sms-template/page', '{\"query\":{\"pageNo\":\"1\",\"pageSize\":\"10\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 02:28:46', '2021-05-03 02:28:46', 170, 0, '', NULL, '2021-05-03 02:28:46', NULL, '2021-05-03 02:28:46', b'0');  
478 -INSERT INTO `inf_api_access_log` VALUES (427, '', 1, 2, 'yudao-admin-server', 'POST', '/api/system/sms-template/send-sms', '{\"query\":{},\"body\":\"{\\\"content\\\":\\\"您的验è¯ç {code},该验è¯ç 5分钟内有效,请勿泄æ¼äºŽä»–人ï¼\\\",\\\"params\\\":[\\\"code\\\"],\\\"mobile\\\":\\\"15601691399\\\",\\\"templateCode\\\":\\\"test_02\\\",\\\"templateParams\\\":{\\\"code\\\":\\\"0000\\\"}}\"}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 02:28:54', '2021-05-03 02:28:54', 66, 0, '', NULL, '2021-05-03 02:28:54', NULL, '2021-05-03 02:28:54', b'0');  
479 -INSERT INTO `inf_api_access_log` VALUES (428, '', 0, 2, 'yudao-admin-server', 'GET', '/api/system/captcha/get-image', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 10:45:03', '2021-05-03 10:45:05', 2247, 0, '', NULL, '2021-05-03 10:45:05', NULL, '2021-05-03 10:45:05', b'0');  
480 -INSERT INTO `inf_api_access_log` VALUES (429, '', 0, 2, 'yudao-admin-server', 'POST', '/api/login', '{\"query\":{},\"body\":\"{\\\"username\\\":\\\"admin\\\",\\\"password\\\":\\\"admin123\\\",\\\"code\\\":\\\"2vcmd\\\",\\\"uuid\\\":\\\"ae194ddaefa24de3ad183ec75698c798\\\"}\"}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 10:45:13', '2021-05-03 10:45:14', 295, 0, '', NULL, '2021-05-03 10:45:14', NULL, '2021-05-03 10:45:14', b'0');  
481 -INSERT INTO `inf_api_access_log` VALUES (430, '', 1, 2, 'yudao-admin-server', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 10:45:14', '2021-05-03 10:45:14', 48, 0, '', NULL, '2021-05-03 10:45:14', NULL, '2021-05-03 10:45:14', b'0');  
482 -INSERT INTO `inf_api_access_log` VALUES (431, '', 1, 2, 'yudao-admin-server', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 10:45:14', '2021-05-03 10:45:14', 43, 0, '', NULL, '2021-05-03 10:45:14', NULL, '2021-05-03 10:45:14', b'0');  
483 -INSERT INTO `inf_api_access_log` VALUES (432, '', 1, 2, 'yudao-admin-server', 'GET', '/api/list-menus', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 10:45:14', '2021-05-03 10:45:14', 13, 0, '', NULL, '2021-05-03 10:45:14', NULL, '2021-05-03 10:45:14', b'0');  
484 -INSERT INTO `inf_api_access_log` VALUES (433, '', 1, 2, 'yudao-admin-server', 'GET', '/api/system/sms-channel/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 10:45:23', '2021-05-03 10:45:23', 27, 0, '', NULL, '2021-05-03 10:45:23', NULL, '2021-05-03 10:45:23', b'0');  
485 -INSERT INTO `inf_api_access_log` VALUES (434, '', 1, 2, 'yudao-admin-server', 'GET', '/api/system/sms-template/page', '{\"query\":{\"pageNo\":\"1\",\"pageSize\":\"10\"},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 10:45:23', '2021-05-03 10:45:23', 174, 0, '', NULL, '2021-05-03 10:45:23', NULL, '2021-05-03 10:45:23', b'0');  
486 -INSERT INTO `inf_api_access_log` VALUES (435, '', 0, 2, 'yudao-admin-server', 'GET', '/api/system/dict-data/list-all-simple', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 10:45:30', '2021-05-03 10:45:30', 19, 0, '', NULL, '2021-05-03 10:45:30', NULL, '2021-05-03 10:45:30', b'0');  
487 -INSERT INTO `inf_api_access_log` VALUES (436, '', 0, 2, 'yudao-admin-server', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 10:45:30', '2021-05-03 10:45:30', 14, 0, '', NULL, '2021-05-03 10:45:30', NULL, '2021-05-03 10:45:30', b'0');  
488 -INSERT INTO `inf_api_access_log` VALUES (437, '', 0, 2, 'yudao-admin-server', 'POST', '/api/logout', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 10:45:30', '2021-05-03 10:45:30', 3, 0, '', NULL, '2021-05-03 10:45:30', NULL, '2021-05-03 10:45:30', b'0');  
489 -INSERT INTO `inf_api_access_log` VALUES (438, '', 0, 2, 'yudao-admin-server', 'GET', '/api/system/captcha/get-image', '{\"query\":{},\"body\":null}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 10:45:30', '2021-05-03 10:45:30', 25, 0, '', NULL, '2021-05-03 10:45:30', NULL, '2021-05-03 10:45:30', b'0');  
490 -INSERT INTO `inf_api_access_log` VALUES (439, '', 1, 2, 'yudao-admin-server', 'POST', '/api/system/sms-template/send-sms', '{\"query\":{},\"body\":\"{\\\"content\\\":\\\"您的验è¯ç {code},该验è¯ç 5分钟内有效,请勿泄æ¼äºŽä»–人ï¼\\\",\\\"params\\\":[\\\"code\\\"],\\\"mobile\\\":\\\"15601691399\\\",\\\"templateCode\\\":\\\"test_02\\\",\\\"templateParams\\\":{\\\"code\\\":\\\"1234\\\"}}\"}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 10:45:32', '2021-05-03 10:45:32', 69, 0, '', NULL, '2021-05-03 10:45:32', NULL, '2021-05-03 10:45:32', b'0');  
491 -INSERT INTO `inf_api_access_log` VALUES (440, '', 1, 2, 'yudao-admin-server', 'POST', '/api/system/sms-template/send-sms', '{\"query\":{},\"body\":\"{\\\"content\\\":\\\"您的验è¯ç {code},该验è¯ç 5分钟内有效,请勿泄æ¼äºŽä»–人ï¼\\\",\\\"params\\\":[\\\"code\\\"],\\\"mobile\\\":\\\"15601691399\\\",\\\"templateCode\\\":\\\"test_02\\\",\\\"templateParams\\\":{\\\"code\\\":\\\"1234\\\"}}\"}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-05-03 10:49:23', '2021-05-03 10:49:24', 176, 0, '', NULL, '2021-05-03 10:49:27', NULL, '2021-05-03 10:49:27', b'0');  
492 COMMIT; 52 COMMIT;
493 53
494 -- ---------------------------- 54 -- ----------------------------
@@ -496,10 +56,10 @@ COMMIT; @@ -496,10 +56,10 @@ COMMIT;
496 -- ---------------------------- 56 -- ----------------------------
497 DROP TABLE IF EXISTS `inf_api_error_log`; 57 DROP TABLE IF EXISTS `inf_api_error_log`;
498 CREATE TABLE `inf_api_error_log` ( 58 CREATE TABLE `inf_api_error_log` (
499 - `id` int(11) NOT NULL AUTO_INCREMENT COMMENT 'ç¼–å·', 59 + `id` int NOT NULL AUTO_INCREMENT COMMENT 'ç¼–å·',
500 `trace_id` varchar(64) NOT NULL COMMENT '链路追踪编å·\n *\n * 一般æ¥è¯´ï¼Œé€šè¿‡é“¾è·¯è¿½è¸ªç¼–å·ï¼Œå¯ä»¥å°†è®¿é—®æ—¥å¿—,错误日志,链路追踪日志,logger æ‰“å°æ—¥å¿—等,结åˆåœ¨ä¸€èµ·ï¼Œä»Žè€Œè¿›è¡ŒæŽ’错。', 60 `trace_id` varchar(64) NOT NULL COMMENT '链路追踪编å·\n *\n * 一般æ¥è¯´ï¼Œé€šè¿‡é“¾è·¯è¿½è¸ªç¼–å·ï¼Œå¯ä»¥å°†è®¿é—®æ—¥å¿—,错误日志,链路追踪日志,logger æ‰“å°æ—¥å¿—等,结åˆåœ¨ä¸€èµ·ï¼Œä»Žè€Œè¿›è¡ŒæŽ’错。',
501 - `user_id` int(11) NOT NULL DEFAULT '0' COMMENT '用户编å·',  
502 - `user_type` tinyint(4) NOT NULL DEFAULT '0' COMMENT '用户类型', 61 + `user_id` int NOT NULL DEFAULT '0' COMMENT '用户编å·',
  62 + `user_type` tinyint NOT NULL DEFAULT '0' COMMENT '用户类型',
503 `application_name` varchar(50) NOT NULL COMMENT '应用å\n *\n * ç›®å‰è¯»å– spring.application.name', 63 `application_name` varchar(50) NOT NULL COMMENT '应用å\n *\n * ç›®å‰è¯»å– spring.application.name',
504 `request_method` varchar(16) NOT NULL COMMENT '请求方法å', 64 `request_method` varchar(16) NOT NULL COMMENT '请求方法å',
505 `request_url` varchar(255) NOT NULL COMMENT '请求地å€', 65 `request_url` varchar(255) NOT NULL COMMENT '请求地å€',
@@ -514,28 +74,22 @@ CREATE TABLE `inf_api_error_log` ( @@ -514,28 +74,22 @@ CREATE TABLE `inf_api_error_log` (
514 `exception_class_name` varchar(512) NOT NULL COMMENT '异常å‘生的类全å\n *\n * {@link StackTraceElement#getClassName()}', 74 `exception_class_name` varchar(512) NOT NULL COMMENT '异常å‘生的类全å\n *\n * {@link StackTraceElement#getClassName()}',
515 `exception_file_name` varchar(512) NOT NULL COMMENT '异常å‘生的类文件\n *\n * {@link StackTraceElement#getFileName()}', 75 `exception_file_name` varchar(512) NOT NULL COMMENT '异常å‘生的类文件\n *\n * {@link StackTraceElement#getFileName()}',
516 `exception_method_name` varchar(512) NOT NULL COMMENT '异常å‘生的方法å\n *\n * {@link StackTraceElement#getMethodName()}', 76 `exception_method_name` varchar(512) NOT NULL COMMENT '异常å‘生的方法å\n *\n * {@link StackTraceElement#getMethodName()}',
517 - `exception_line_number` int(11) NOT NULL COMMENT '异常å‘生的方法所在行\n *\n * {@link StackTraceElement#getLineNumber()}',  
518 - `process_status` tinyint(4) NOT NULL COMMENT '处ç†çжæ€', 77 + `exception_line_number` int NOT NULL COMMENT '异常å‘生的方法所在行\n *\n * {@link StackTraceElement#getLineNumber()}',
  78 + `process_status` tinyint NOT NULL COMMENT '处ç†çжæ€',
519 `process_time` datetime DEFAULT NULL COMMENT 'å¤„ç†æ—¶é—´', 79 `process_time` datetime DEFAULT NULL COMMENT 'å¤„ç†æ—¶é—´',
520 - `process_user_id` int(11) DEFAULT '0' COMMENT '处ç†ç”¨æˆ·ç¼–å·', 80 + `process_user_id` int DEFAULT '0' COMMENT '处ç†ç”¨æˆ·ç¼–å·',
521 `creator` varchar(64) DEFAULT '' COMMENT '创建者', 81 `creator` varchar(64) DEFAULT '' COMMENT '创建者',
522 `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', 82 `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
523 `updater` varchar(64) DEFAULT '' COMMENT '更新者', 83 `updater` varchar(64) DEFAULT '' COMMENT '更新者',
524 `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'æ›´æ–°æ—¶é—´', 84 `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'æ›´æ–°æ—¶é—´',
525 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是å¦åˆ é™¤', 85 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是å¦åˆ é™¤',
526 PRIMARY KEY (`id`) USING BTREE 86 PRIMARY KEY (`id`) USING BTREE
527 -) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8mb4 COMMENT='系统异常日志'; 87 +) ENGINE=InnoDB AUTO_INCREMENT=42 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='系统异常日志';
528 88
529 -- ---------------------------- 89 -- ----------------------------
530 -- Records of inf_api_error_log 90 -- Records of inf_api_error_log
531 -- ---------------------------- 91 -- ----------------------------
532 BEGIN; 92 BEGIN;
533 -INSERT INTO `inf_api_error_log` VALUES (1, '4d04e567c10d4d47b5617eb4410cb779.218.16193673598720001', 1, 2, 'dashboard', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":\"\"}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:16:05', 'java.lang.ClassCastException', 'ClassCastException: java.lang.Integer cannot be cast to java.lang.String', 'ClassCastException: java.lang.Integer cannot be cast to java.lang.String', 'java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.String\n at cn.iocoder.dashboard.framework.tracer.core.annotation.BizTracingAop.tagBizInfo(BizTracingAop.java:22)\n at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\n at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)\n at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\n at java.lang.reflect.Method.invoke(Method.java:498)\n at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:634)\n at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethod(AbstractAspectJAdvice.java:624)\n at org.springframework.aop.aspectj.AspectJAroundAdvice.invoke(AspectJAroundAdvice.java:72)\n at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:175)\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:750)\n at org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.proceed(MethodInvocationProceedingJoinPoint.java:89)\n at cn.iocoder.dashboard.framework.logger.operatelog.core.aop.OperateLogAspect.around0(OperateLogAspect.java:88)\n at cn.iocoder.dashboard.framework.logger.operatelog.core.aop.OperateLogAspect.around(OperateLogAspect.java:75)\n at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\n at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)\n at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\n at java.lang.reflect.Method.invoke(Method.java:498)\n at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:634)\n at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethod(AbstractAspectJAdvice.java:624)\n at org.springframework.aop.aspectj.AspectJAroundAdvice.invoke(AspectJAroundAdvice.java:72)\n at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:175)\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:750)\n at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:97)\n at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:750)\n at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:692)\n at cn.iocoder.dashboard.modules.system.controller.auth.SysAuthController$$EnhancerBySpringCGLIB$$ffccfa6c.getPermissionInfo(<generated>)\n at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\n at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)\n at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\n at java.lang.reflect.Method.invoke(Method.java:498)\n at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:197)\n at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:141)\n at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:106)\n at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:894)\n at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)\n at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)\n at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1060)\n at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:962)\n at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)\n at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898)\n at javax.servlet.http.HttpServlet.service(HttpServlet.java:626)\n at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)\n at javax.servlet.http.HttpServlet.service(HttpServlet.java:733)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:227)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at de.codecentric.boot.admin.server.ui.web.servlet.HomepageForwardingFilter.doFilter(HomepageForwardingFilter.java:73)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:113)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at com.alibaba.druid.support.http.WebStatFilter.doFilter(WebStatFilter.java:124)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:327)\n at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:115)\n at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:81)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:119)\n at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:113)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:126)\n at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:81)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:105)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:149)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:63)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at cn.iocoder.dashboard.framework.security.core.filter.JwtAuthenticationTokenFilter.doFilterInternal(JwtAuthenticationTokenFilter.java:62)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103)\n at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90)\n at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110)\n at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:211)\n at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:183)\n at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:358)\n at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:271)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:103)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at cn.iocoder.dashboard.framework.logger.apilog.core.filter.ApiAccessLogFilter.doFilterInternal(ApiAccessLogFilter.java:59)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:103)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:93)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202)\n at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97)\n at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:542)\n at org.apache.catalina.core.StandardHostValve.invoke$original$yDisqqCY(StandardHostValve.java:143)\n at org.apache.catalina.core.StandardHostValve.invoke$original$yDisqqCY$accessor$0QzFifuw(StandardHostValve.java)\n at org.apache.catalina.core.StandardHostValve$auxiliary$kGr1IKxd.call(Unknown Source)\n at org.apache.skywalking.apm.agent.core.plugin.interceptor.enhance.InstMethodsInter.intercept(InstMethodsInter.java:86)\n at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java)\n at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)\n at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78)\n at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:357)\n at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:374)\n at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)\n at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893)\n at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1707)\n at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)\n at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)\n at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)\n at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)\n at java.lang.Thread.run(Thread.java:748)\n', 'cn.iocoder.dashboard.framework.tracer.core.annotation.BizTracingAop', 'BizTracingAop.java', 'tagBizInfo', 22, 0, NULL, 0, NULL, '2021-04-26 00:16:05', NULL, '2021-04-26 00:16:05', b'0');  
534 -INSERT INTO `inf_api_error_log` VALUES (2, '4d04e567c10d4d47b5617eb4410cb779.217.16193673747310003', 1, 2, 'dashboard', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":\"\"}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:16:35', 'java.lang.ClassCastException', 'ClassCastException: java.lang.Integer cannot be cast to java.lang.String', 'ClassCastException: java.lang.Integer cannot be cast to java.lang.String', 'java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.String\n at cn.iocoder.dashboard.framework.tracer.core.annotation.BizTracingAop.tagBizInfo(BizTracingAop.java:22)\n at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\n at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)\n at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\n at java.lang.reflect.Method.invoke(Method.java:498)\n at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:634)\n at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethod(AbstractAspectJAdvice.java:624)\n at org.springframework.aop.aspectj.AspectJAroundAdvice.invoke(AspectJAroundAdvice.java:72)\n at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:175)\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:750)\n at org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.proceed(MethodInvocationProceedingJoinPoint.java:89)\n at cn.iocoder.dashboard.framework.logger.operatelog.core.aop.OperateLogAspect.around0(OperateLogAspect.java:88)\n at cn.iocoder.dashboard.framework.logger.operatelog.core.aop.OperateLogAspect.around(OperateLogAspect.java:75)\n at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\n at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)\n at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\n at java.lang.reflect.Method.invoke(Method.java:498)\n at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:634)\n at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethod(AbstractAspectJAdvice.java:624)\n at org.springframework.aop.aspectj.AspectJAroundAdvice.invoke(AspectJAroundAdvice.java:72)\n at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:175)\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:750)\n at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:97)\n at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:750)\n at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:692)\n at cn.iocoder.dashboard.modules.system.controller.auth.SysAuthController$$EnhancerBySpringCGLIB$$ffccfa6c.getPermissionInfo(<generated>)\n at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\n at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)\n at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\n at java.lang.reflect.Method.invoke(Method.java:498)\n at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:197)\n at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:141)\n at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:106)\n at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:894)\n at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)\n at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)\n at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1060)\n at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:962)\n at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)\n at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898)\n at javax.servlet.http.HttpServlet.service(HttpServlet.java:626)\n at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)\n at javax.servlet.http.HttpServlet.service(HttpServlet.java:733)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:227)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at de.codecentric.boot.admin.server.ui.web.servlet.HomepageForwardingFilter.doFilter(HomepageForwardingFilter.java:73)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:113)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at com.alibaba.druid.support.http.WebStatFilter.doFilter(WebStatFilter.java:124)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:327)\n at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:115)\n at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:81)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:119)\n at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:113)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:126)\n at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:81)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:105)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:149)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:63)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at cn.iocoder.dashboard.framework.security.core.filter.JwtAuthenticationTokenFilter.doFilterInternal(JwtAuthenticationTokenFilter.java:62)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103)\n at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90)\n at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110)\n at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:211)\n at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:183)\n at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:358)\n at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:271)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:103)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at cn.iocoder.dashboard.framework.logger.apilog.core.filter.ApiAccessLogFilter.doFilterInternal(ApiAccessLogFilter.java:59)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:103)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:93)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202)\n at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97)\n at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:542)\n at org.apache.catalina.core.StandardHostValve.invoke$original$yDisqqCY(StandardHostValve.java:143)\n at org.apache.catalina.core.StandardHostValve.invoke$original$yDisqqCY$accessor$0QzFifuw(StandardHostValve.java)\n at org.apache.catalina.core.StandardHostValve$auxiliary$kGr1IKxd.call(Unknown Source)\n at org.apache.skywalking.apm.agent.core.plugin.interceptor.enhance.InstMethodsInter.intercept(InstMethodsInter.java:86)\n at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java)\n at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)\n at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78)\n at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:357)\n at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:374)\n at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)\n at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893)\n at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1707)\n at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)\n at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)\n at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)\n at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)\n at java.lang.Thread.run(Thread.java:748)\n', 'cn.iocoder.dashboard.framework.tracer.core.annotation.BizTracingAop', 'BizTracingAop.java', 'tagBizInfo', 22, 0, NULL, 0, NULL, '2021-04-26 00:16:35', NULL, '2021-04-26 00:16:35', b'0');  
535 -INSERT INTO `inf_api_error_log` VALUES (3, '4d04e567c10d4d47b5617eb4410cb779.216.16193674103000011', 1, 2, 'dashboard', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":\"\"}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:18:34', 'java.lang.ClassCastException', 'ClassCastException: java.lang.Integer cannot be cast to java.lang.String', 'ClassCastException: java.lang.Integer cannot be cast to java.lang.String', 'java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.String\n at cn.iocoder.dashboard.framework.tracer.core.annotation.BizTracingAop.tagBizInfo(BizTracingAop.java:22)\n at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\n at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)\n at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\n at java.lang.reflect.Method.invoke(Method.java:498)\n at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:634)\n at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethod(AbstractAspectJAdvice.java:624)\n at org.springframework.aop.aspectj.AspectJAroundAdvice.invoke(AspectJAroundAdvice.java:72)\n at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:175)\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:750)\n at org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.proceed(MethodInvocationProceedingJoinPoint.java:89)\n at cn.iocoder.dashboard.framework.logger.operatelog.core.aop.OperateLogAspect.around0(OperateLogAspect.java:88)\n at cn.iocoder.dashboard.framework.logger.operatelog.core.aop.OperateLogAspect.around(OperateLogAspect.java:75)\n at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\n at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)\n at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\n at java.lang.reflect.Method.invoke(Method.java:498)\n at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:634)\n at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethod(AbstractAspectJAdvice.java:624)\n at org.springframework.aop.aspectj.AspectJAroundAdvice.invoke(AspectJAroundAdvice.java:72)\n at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:175)\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:750)\n at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:97)\n at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:750)\n at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:692)\n at cn.iocoder.dashboard.modules.system.controller.auth.SysAuthController$$EnhancerBySpringCGLIB$$ffccfa6c.getPermissionInfo(<generated>)\n at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\n at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)\n at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\n at java.lang.reflect.Method.invoke(Method.java:498)\n at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:197)\n at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:141)\n at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:106)\n at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:894)\n at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)\n at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)\n at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1060)\n at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:962)\n at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)\n at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898)\n at javax.servlet.http.HttpServlet.service(HttpServlet.java:626)\n at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)\n at javax.servlet.http.HttpServlet.service(HttpServlet.java:733)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:227)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at de.codecentric.boot.admin.server.ui.web.servlet.HomepageForwardingFilter.doFilter(HomepageForwardingFilter.java:73)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:113)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at com.alibaba.druid.support.http.WebStatFilter.doFilter(WebStatFilter.java:124)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:327)\n at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:115)\n at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:81)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:119)\n at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:113)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:126)\n at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:81)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:105)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:149)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:63)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at cn.iocoder.dashboard.framework.security.core.filter.JwtAuthenticationTokenFilter.doFilterInternal(JwtAuthenticationTokenFilter.java:62)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103)\n at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90)\n at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110)\n at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:211)\n at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:183)\n at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:358)\n at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:271)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:103)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at cn.iocoder.dashboard.framework.logger.apilog.core.filter.ApiAccessLogFilter.doFilterInternal(ApiAccessLogFilter.java:59)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:103)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:93)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202)\n at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97)\n at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:542)\n at org.apache.catalina.core.StandardHostValve.invoke$original$yDisqqCY(StandardHostValve.java:143)\n at org.apache.catalina.core.StandardHostValve.invoke$original$yDisqqCY$accessor$0QzFifuw(StandardHostValve.java)\n at org.apache.catalina.core.StandardHostValve$auxiliary$kGr1IKxd.call(Unknown Source)\n at org.apache.skywalking.apm.agent.core.plugin.interceptor.enhance.InstMethodsInter.intercept(InstMethodsInter.java:86)\n at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java)\n at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)\n at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78)\n at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:357)\n at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:374)\n at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)\n at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893)\n at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1707)\n at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)\n at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)\n at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)\n at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)\n at java.lang.Thread.run(Thread.java:748)\n', 'cn.iocoder.dashboard.framework.tracer.core.annotation.BizTracingAop', 'BizTracingAop.java', 'tagBizInfo', 22, 0, NULL, 0, NULL, '2021-04-26 00:18:34', NULL, '2021-04-26 00:18:34', b'0');  
536 -INSERT INTO `inf_api_error_log` VALUES (4, '8fcad0f57c0444b98e31fba92379c125.218.16193677162890005', 1, 2, 'dashboard', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":\"\"}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:22:09', 'org.springframework.expression.spel.SpelEvaluationException', 'SpelEvaluationException: EL1007E: Property or field \'user\' cannot be found on null', 'SpelEvaluationException: EL1007E: Property or field \'user\' cannot be found on null', 'org.springframework.expression.spel.SpelEvaluationException: EL1007E: Property or field \'user\' cannot be found on null\n at org.springframework.expression.spel.ast.PropertyOrFieldReference.readProperty(PropertyOrFieldReference.java:213)\n at org.springframework.expression.spel.ast.PropertyOrFieldReference.getValueInternal(PropertyOrFieldReference.java:104)\n at org.springframework.expression.spel.ast.PropertyOrFieldReference.getValueInternal(PropertyOrFieldReference.java:91)\n at org.springframework.expression.spel.ast.SpelNodeImpl.getValue(SpelNodeImpl.java:112)\n at org.springframework.expression.spel.standard.SpelExpression.getValue(SpelExpression.java:272)\n at cn.iocoder.dashboard.util.sping.SpElUtil.analysisSpEl(SpElUtil.java:52)\n at cn.iocoder.dashboard.framework.tracer.core.annotation.BizTracingAop.tagBizInfo(BizTracingAop.java:23)\n at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\n at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)\n at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\n at java.lang.reflect.Method.invoke(Method.java:498)\n at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:634)\n at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethod(AbstractAspectJAdvice.java:624)\n at org.springframework.aop.aspectj.AspectJAroundAdvice.invoke(AspectJAroundAdvice.java:72)\n at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:175)\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:750)\n at org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.proceed(MethodInvocationProceedingJoinPoint.java:89)\n at cn.iocoder.dashboard.framework.logger.operatelog.core.aop.OperateLogAspect.around0(OperateLogAspect.java:88)\n at cn.iocoder.dashboard.framework.logger.operatelog.core.aop.OperateLogAspect.around(OperateLogAspect.java:75)\n at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\n at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)\n at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\n at java.lang.reflect.Method.invoke(Method.java:498)\n at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:634)\n at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethod(AbstractAspectJAdvice.java:624)\n at org.springframework.aop.aspectj.AspectJAroundAdvice.invoke(AspectJAroundAdvice.java:72)\n at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:175)\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:750)\n at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:97)\n at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:750)\n at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:692)\n at cn.iocoder.dashboard.modules.system.controller.auth.SysAuthController$$EnhancerBySpringCGLIB$$d50f634b.getPermissionInfo(<generated>)\n at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\n at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)\n at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\n at java.lang.reflect.Method.invoke(Method.java:498)\n at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:197)\n at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:141)\n at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:106)\n at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:894)\n at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)\n at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)\n at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1060)\n at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:962)\n at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)\n at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898)\n at javax.servlet.http.HttpServlet.service(HttpServlet.java:626)\n at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)\n at javax.servlet.http.HttpServlet.service(HttpServlet.java:733)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:227)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at de.codecentric.boot.admin.server.ui.web.servlet.HomepageForwardingFilter.doFilter(HomepageForwardingFilter.java:73)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:113)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at com.alibaba.druid.support.http.WebStatFilter.doFilter(WebStatFilter.java:124)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:327)\n at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:115)\n at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:81)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:119)\n at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:113)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:126)\n at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:81)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:105)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:149)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:63)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at cn.iocoder.dashboard.framework.security.core.filter.JwtAuthenticationTokenFilter.doFilterInternal(JwtAuthenticationTokenFilter.java:62)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103)\n at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90)\n at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110)\n at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:211)\n at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:183)\n at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:358)\n at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:271)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:103)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at cn.iocoder.dashboard.framework.logger.apilog.core.filter.ApiAccessLogFilter.doFilterInternal(ApiAccessLogFilter.java:59)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:103)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:93)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202)\n at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97)\n at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:542)\n at org.apache.catalina.core.StandardHostValve.invoke$original$uPhpg39d(StandardHostValve.java:143)\n at org.apache.catalina.core.StandardHostValve.invoke$original$uPhpg39d$accessor$3XH5QRTe(StandardHostValve.java)\n at org.apache.catalina.core.StandardHostValve$auxiliary$BqBArGXo.call(Unknown Source)\n at org.apache.skywalking.apm.agent.core.plugin.interceptor.enhance.InstMethodsInter.intercept(InstMethodsInter.java:86)\n at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java)\n at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)\n at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78)\n at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:357)\n at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:374)\n at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)\n at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893)\n at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1707)\n at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)\n at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)\n at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)\n at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)\n at java.lang.Thread.run(Thread.java:748)\n', 'org.springframework.expression.spel.ast.PropertyOrFieldReference', 'PropertyOrFieldReference.java', 'readProperty', 213, 0, NULL, 0, NULL, '2021-04-26 00:22:09', NULL, '2021-04-26 00:22:09', b'0');  
537 -INSERT INTO `inf_api_error_log` VALUES (5, '8fcad0f57c0444b98e31fba92379c125.215.16193677331720007', 1, 2, 'dashboard', 'GET', '/api/get-permission-info', '{\"query\":{},\"body\":\"\"}', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', '2021-04-26 00:22:56', 'org.springframework.expression.spel.SpelEvaluationException', 'SpelEvaluationException: EL1007E: Property or field \'user\' cannot be found on null', 'SpelEvaluationException: EL1007E: Property or field \'user\' cannot be found on null', 'org.springframework.expression.spel.SpelEvaluationException: EL1007E: Property or field \'user\' cannot be found on null\n at org.springframework.expression.spel.ast.PropertyOrFieldReference.readProperty(PropertyOrFieldReference.java:213)\n at org.springframework.expression.spel.ast.PropertyOrFieldReference.getValueInternal(PropertyOrFieldReference.java:104)\n at org.springframework.expression.spel.ast.PropertyOrFieldReference.getValueInternal(PropertyOrFieldReference.java:91)\n at org.springframework.expression.spel.ast.SpelNodeImpl.getValue(SpelNodeImpl.java:112)\n at org.springframework.expression.spel.standard.SpelExpression.getValue(SpelExpression.java:272)\n at cn.iocoder.dashboard.util.sping.SpElUtil.analysisSpEl(SpElUtil.java:52)\n at cn.iocoder.dashboard.framework.tracer.core.annotation.BizTracingAop.tagBizInfo(BizTracingAop.java:23)\n at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\n at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)\n at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\n at java.lang.reflect.Method.invoke(Method.java:498)\n at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:634)\n at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethod(AbstractAspectJAdvice.java:624)\n at org.springframework.aop.aspectj.AspectJAroundAdvice.invoke(AspectJAroundAdvice.java:72)\n at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:175)\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:750)\n at org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.proceed(MethodInvocationProceedingJoinPoint.java:89)\n at cn.iocoder.dashboard.framework.logger.operatelog.core.aop.OperateLogAspect.around0(OperateLogAspect.java:88)\n at cn.iocoder.dashboard.framework.logger.operatelog.core.aop.OperateLogAspect.around(OperateLogAspect.java:75)\n at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\n at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)\n at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\n at java.lang.reflect.Method.invoke(Method.java:498)\n at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:634)\n at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethod(AbstractAspectJAdvice.java:624)\n at org.springframework.aop.aspectj.AspectJAroundAdvice.invoke(AspectJAroundAdvice.java:72)\n at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:175)\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:750)\n at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:97)\n at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:750)\n at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:692)\n at cn.iocoder.dashboard.modules.system.controller.auth.SysAuthController$$EnhancerBySpringCGLIB$$d50f634b.getPermissionInfo(<generated>)\n at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\n at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)\n at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\n at java.lang.reflect.Method.invoke(Method.java:498)\n at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:197)\n at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:141)\n at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:106)\n at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:894)\n at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)\n at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)\n at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1060)\n at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:962)\n at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)\n at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898)\n at javax.servlet.http.HttpServlet.service(HttpServlet.java:626)\n at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)\n at javax.servlet.http.HttpServlet.service(HttpServlet.java:733)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:227)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at de.codecentric.boot.admin.server.ui.web.servlet.HomepageForwardingFilter.doFilter(HomepageForwardingFilter.java:73)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:113)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at com.alibaba.druid.support.http.WebStatFilter.doFilter(WebStatFilter.java:124)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:327)\n at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:115)\n at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:81)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:119)\n at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:113)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:126)\n at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:81)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:105)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:149)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:63)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at cn.iocoder.dashboard.framework.security.core.filter.JwtAuthenticationTokenFilter.doFilterInternal(JwtAuthenticationTokenFilter.java:62)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103)\n at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90)\n at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110)\n at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:211)\n at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:183)\n at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:358)\n at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:271)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:103)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at cn.iocoder.dashboard.framework.logger.apilog.core.filter.ApiAccessLogFilter.doFilterInternal(ApiAccessLogFilter.java:59)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:103)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:93)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202)\n at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97)\n at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:542)\n at org.apache.catalina.core.StandardHostValve.invoke$original$uPhpg39d(StandardHostValve.java:143)\n at org.apache.catalina.core.StandardHostValve.invoke$original$uPhpg39d$accessor$3XH5QRTe(StandardHostValve.java)\n at org.apache.catalina.core.StandardHostValve$auxiliary$BqBArGXo.call(Unknown Source)\n at org.apache.skywalking.apm.agent.core.plugin.interceptor.enhance.InstMethodsInter.intercept(InstMethodsInter.java:86)\n at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java)\n at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)\n at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78)\n at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:357)\n at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:374)\n at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)\n at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893)\n at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1707)\n at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)\n at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)\n at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)\n at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)\n at java.lang.Thread.run(Thread.java:748)\n', 'org.springframework.expression.spel.ast.PropertyOrFieldReference', 'PropertyOrFieldReference.java', 'readProperty', 213, 0, NULL, 0, NULL, '2021-04-26 00:22:56', NULL, '2021-04-26 00:22:56', b'0');  
538 -INSERT INTO `inf_api_error_log` VALUES (6, '3e50cedeca3c4525ab87a9c31a65d53d.231.16194535668290009', 1, 2, 'dashboard', 'GET', '/api/tool/test-demo/list', '{\"query\":{\"ids\":\"1\"},\"body\":\"\"}', '127.0.0.1', 'Apache-HttpClient/4.5.12 (Java/11.0.9)', '2021-04-27 00:12:47', 'org.springframework.web.util.NestedServletException', 'NestedServletException: Handler dispatch failed; nested exception is java.lang.NoClassDefFoundError: cn/iocoder/dashboard/util/sping/SpringElUtils', 'ClassNotFoundException: cn.iocoder.dashboard.util.sping.SpringElUtils', 'org.springframework.web.util.NestedServletException: Handler dispatch failed; nested exception is java.lang.NoClassDefFoundError: cn/iocoder/dashboard/util/sping/SpringElUtils\n at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1075)\n at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:962)\n at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)\n at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898)\n at javax.servlet.http.HttpServlet.service(HttpServlet.java:626)\n at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)\n at javax.servlet.http.HttpServlet.service(HttpServlet.java:733)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:227)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at de.codecentric.boot.admin.server.ui.web.servlet.HomepageForwardingFilter.doFilter(HomepageForwardingFilter.java:73)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:113)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at com.alibaba.druid.support.http.WebStatFilter.doFilter(WebStatFilter.java:124)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:327)\n at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:115)\n at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:81)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:119)\n at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:113)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:126)\n at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:81)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:105)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:149)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:63)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at cn.iocoder.dashboard.framework.security.core.filter.JwtAuthenticationTokenFilter.doFilterInternal(JwtAuthenticationTokenFilter.java:62)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:103)\n at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:89)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90)\n at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:110)\n at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:55)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:336)\n at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:211)\n at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:183)\n at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:358)\n at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:271)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:103)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at cn.iocoder.dashboard.framework.logger.apilog.core.filter.ApiAccessLogFilter.doFilterInternal(ApiAccessLogFilter.java:59)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:103)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:93)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at cn.iocoder.dashboard.framework.tracer.core.filter.TraceFilter.doFilterInternal(TraceFilter.java:30)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91)\n at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)\n at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)\n at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)\n at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202)\n at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97)\n at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:542)\n at org.apache.catalina.core.StandardHostValve.invoke$original$39fFhpn8(StandardHostValve.java:143)\n at org.apache.catalina.core.StandardHostValve.invoke$original$39fFhpn8$accessor$8ec9zcyk(StandardHostValve.java)\n at org.apache.catalina.core.StandardHostValve$auxiliary$QYHbON34.call(Unknown Source)\n at org.apache.skywalking.apm.agent.core.plugin.interceptor.enhance.InstMethodsInter.intercept(InstMethodsInter.java:86)\n at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java)\n at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)\n at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78)\n at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:357)\n at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:374)\n at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)\n at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893)\n at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1707)\n at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)\n at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)\n at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)\n at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)\n at java.lang.Thread.run(Thread.java:748)\nCaused by: java.lang.NoClassDefFoundError: cn/iocoder/dashboard/util/sping/SpringElUtils\n at cn.iocoder.dashboard.framework.tracer.core.aop.BizTraceAspect.setBizTag(BizTraceAspect.java:62)\n at cn.iocoder.dashboard.framework.tracer.core.aop.BizTraceAspect.around(BizTraceAspect.java:43)\n at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\n at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)\n at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\n at java.lang.reflect.Method.invoke(Method.java:498)\n at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:634)\n at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethod(AbstractAspectJAdvice.java:624)\n at org.springframework.aop.aspectj.AspectJAroundAdvice.invoke(AspectJAroundAdvice.java:72)\n at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:175)\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:750)\n at org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.proceed(MethodInvocationProceedingJoinPoint.java:89)\n at cn.iocoder.dashboard.framework.logger.operatelog.core.aop.OperateLogAspect.around0(OperateLogAspect.java:88)\n at cn.iocoder.dashboard.framework.logger.operatelog.core.aop.OperateLogAspect.around(OperateLogAspect.java:75)\n at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\n at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)\n at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\n at java.lang.reflect.Method.invoke(Method.java:498)\n at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:634)\n at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethod(AbstractAspectJAdvice.java:624)\n at org.springframework.aop.aspectj.AspectJAroundAdvice.invoke(AspectJAroundAdvice.java:72)\n at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:175)\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:750)\n at org.springframework.security.access.intercept.aopalliance.MethodSecurityInterceptor.invoke(MethodSecurityInterceptor.java:61)\n at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:750)\n at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:97)\n at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)\n at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:750)\n at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:692)\n at cn.iocoder.dashboard.modules.tool.controller.test.ToolTestDemoController$$EnhancerBySpringCGLIB$$36537346.getTestDemoList(<generated>)\n at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\n at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)\n at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\n at java.lang.reflect.Method.invoke(Method.java:498)\n at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:197)\n at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:141)\n at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:106)\n at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:894)\n at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)\n at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)\n at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1060)\n ... 115 more\nCaused by: java.lang.ClassNotFoundException: cn.iocoder.dashboard.util.sping.SpringElUtils\n at java.net.URLClassLoader.findClass(URLClassLoader.java:381)\n at java.lang.ClassLoader.loadClass(ClassLoader.java:424)\n at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:335)\n at java.lang.ClassLoader.loadClass(ClassLoader.java:357)\n ... 157 more\n', 'org.springframework.web.servlet.DispatcherServlet', 'DispatcherServlet.java', 'doDispatch', 1075, 0, NULL, 0, NULL, '2021-04-27 00:12:47', NULL, '2021-04-27 00:12:47', b'0');  
539 COMMIT; 93 COMMIT;
540 94
541 -- ---------------------------- 95 -- ----------------------------
@@ -543,9 +97,9 @@ COMMIT; @@ -543,9 +97,9 @@ COMMIT;
543 -- ---------------------------- 97 -- ----------------------------
544 DROP TABLE IF EXISTS `inf_config`; 98 DROP TABLE IF EXISTS `inf_config`;
545 CREATE TABLE `inf_config` ( 99 CREATE TABLE `inf_config` (
546 - `id` int(5) NOT NULL AUTO_INCREMENT COMMENT '傿•°ä¸»é”®', 100 + `id` int NOT NULL AUTO_INCREMENT COMMENT '傿•°ä¸»é”®',
547 `group` varchar(50) NOT NULL COMMENT '傿•°åˆ†ç»„', 101 `group` varchar(50) NOT NULL COMMENT '傿•°åˆ†ç»„',
548 - `type` tinyint(4) NOT NULL COMMENT '傿•°ç±»åž‹', 102 + `type` tinyint NOT NULL COMMENT '傿•°ç±»åž‹',
549 `name` varchar(100) NOT NULL DEFAULT '' COMMENT '傿•°åç§°', 103 `name` varchar(100) NOT NULL DEFAULT '' COMMENT '傿•°åç§°',
550 `key` varchar(100) NOT NULL DEFAULT '' COMMENT '傿•°é”®å', 104 `key` varchar(100) NOT NULL DEFAULT '' COMMENT '傿•°é”®å',
551 `value` varchar(500) NOT NULL DEFAULT '' COMMENT '傿•°é”®å€¼', 105 `value` varchar(500) NOT NULL DEFAULT '' COMMENT '傿•°é”®å€¼',
@@ -557,7 +111,7 @@ CREATE TABLE `inf_config` ( @@ -557,7 +111,7 @@ CREATE TABLE `inf_config` (
557 `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'æ›´æ–°æ—¶é—´', 111 `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'æ›´æ–°æ—¶é—´',
558 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是å¦åˆ é™¤', 112 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是å¦åˆ é™¤',
559 PRIMARY KEY (`id`) USING BTREE 113 PRIMARY KEY (`id`) USING BTREE
560 -) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8mb4 COMMENT='傿•°é…置表'; 114 +) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='傿•°é…置表';
561 115
562 -- ---------------------------- 116 -- ----------------------------
563 -- Records of inf_config 117 -- Records of inf_config
@@ -584,7 +138,7 @@ CREATE TABLE `inf_file` ( @@ -584,7 +138,7 @@ CREATE TABLE `inf_file` (
584 `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'æ›´æ–°æ—¶é—´', 138 `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'æ›´æ–°æ—¶é—´',
585 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是å¦åˆ é™¤', 139 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是å¦åˆ é™¤',
586 PRIMARY KEY (`id`) USING BTREE 140 PRIMARY KEY (`id`) USING BTREE
587 -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='文件表'; 141 +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='文件表';
588 142
589 -- ---------------------------- 143 -- ----------------------------
590 -- Records of inf_file 144 -- Records of inf_file
@@ -601,22 +155,22 @@ COMMIT; @@ -601,22 +155,22 @@ COMMIT;
601 -- ---------------------------- 155 -- ----------------------------
602 DROP TABLE IF EXISTS `inf_job`; 156 DROP TABLE IF EXISTS `inf_job`;
603 CREATE TABLE `inf_job` ( 157 CREATE TABLE `inf_job` (
604 - `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '任务编å·', 158 + `id` bigint NOT NULL AUTO_INCREMENT COMMENT '任务编å·',
605 `name` varchar(32) NOT NULL COMMENT '任务åç§°', 159 `name` varchar(32) NOT NULL COMMENT '任务åç§°',
606 - `status` tinyint(4) NOT NULL COMMENT '任务状æ€', 160 + `status` tinyint NOT NULL COMMENT '任务状æ€',
607 `handler_name` varchar(64) NOT NULL COMMENT '处ç†å™¨çš„åå­—', 161 `handler_name` varchar(64) NOT NULL COMMENT '处ç†å™¨çš„åå­—',
608 `handler_param` varchar(255) DEFAULT NULL COMMENT '处ç†å™¨çš„傿•°', 162 `handler_param` varchar(255) DEFAULT NULL COMMENT '处ç†å™¨çš„傿•°',
609 `cron_expression` varchar(32) NOT NULL COMMENT 'CRON 表达å¼', 163 `cron_expression` varchar(32) NOT NULL COMMENT 'CRON 表达å¼',
610 - `retry_count` int(11) NOT NULL DEFAULT '0' COMMENT 'é‡è¯•次数',  
611 - `retry_interval` int(11) NOT NULL DEFAULT '0' COMMENT 'é‡è¯•é—´éš”',  
612 - `monitor_timeout` int(11) NOT NULL DEFAULT '0' COMMENT '监控超时时间', 164 + `retry_count` int NOT NULL DEFAULT '0' COMMENT 'é‡è¯•次数',
  165 + `retry_interval` int NOT NULL DEFAULT '0' COMMENT 'é‡è¯•é—´éš”',
  166 + `monitor_timeout` int NOT NULL DEFAULT '0' COMMENT '监控超时时间',
613 `creator` varchar(64) DEFAULT '' COMMENT '创建者', 167 `creator` varchar(64) DEFAULT '' COMMENT '创建者',
614 `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', 168 `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
615 `updater` varchar(64) DEFAULT '' COMMENT '更新者', 169 `updater` varchar(64) DEFAULT '' COMMENT '更新者',
616 `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'æ›´æ–°æ—¶é—´', 170 `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'æ›´æ–°æ—¶é—´',
617 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是å¦åˆ é™¤', 171 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是å¦åˆ é™¤',
618 PRIMARY KEY (`id`) USING BTREE 172 PRIMARY KEY (`id`) USING BTREE
619 -) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8mb4 COMMENT='定时任务表'; 173 +) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='定时任务表';
620 174
621 -- ---------------------------- 175 -- ----------------------------
622 -- Records of inf_job 176 -- Records of inf_job
@@ -631,15 +185,15 @@ COMMIT; @@ -631,15 +185,15 @@ COMMIT;
631 -- ---------------------------- 185 -- ----------------------------
632 DROP TABLE IF EXISTS `inf_job_log`; 186 DROP TABLE IF EXISTS `inf_job_log`;
633 CREATE TABLE `inf_job_log` ( 187 CREATE TABLE `inf_job_log` (
634 - `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '日志编å·',  
635 - `job_id` bigint(20) NOT NULL COMMENT '任务编å·', 188 + `id` bigint NOT NULL AUTO_INCREMENT COMMENT '日志编å·',
  189 + `job_id` bigint NOT NULL COMMENT '任务编å·',
636 `handler_name` varchar(64) NOT NULL COMMENT '处ç†å™¨çš„åå­—', 190 `handler_name` varchar(64) NOT NULL COMMENT '处ç†å™¨çš„åå­—',
637 `handler_param` varchar(255) DEFAULT NULL COMMENT '处ç†å™¨çš„傿•°', 191 `handler_param` varchar(255) DEFAULT NULL COMMENT '处ç†å™¨çš„傿•°',
638 - `execute_index` tinyint(4) NOT NULL DEFAULT '1' COMMENT '第几次执行', 192 + `execute_index` tinyint NOT NULL DEFAULT '1' COMMENT '第几次执行',
639 `begin_time` datetime NOT NULL COMMENT '开始执行时间', 193 `begin_time` datetime NOT NULL COMMENT '开始执行时间',
640 `end_time` datetime DEFAULT NULL COMMENT 'ç»“æŸæ‰§è¡Œæ—¶é—´', 194 `end_time` datetime DEFAULT NULL COMMENT 'ç»“æŸæ‰§è¡Œæ—¶é—´',
641 - `duration` int(11) DEFAULT NULL COMMENT '执行时长',  
642 - `status` tinyint(4) NOT NULL COMMENT '任务状æ€', 195 + `duration` int DEFAULT NULL COMMENT '执行时长',
  196 + `status` tinyint NOT NULL COMMENT '任务状æ€',
643 `result` varchar(4000) DEFAULT '' COMMENT '结果数æ®', 197 `result` varchar(4000) DEFAULT '' COMMENT '结果数æ®',
644 `creator` varchar(64) DEFAULT '' COMMENT '创建者', 198 `creator` varchar(64) DEFAULT '' COMMENT '创建者',
645 `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', 199 `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
@@ -647,335 +201,12 @@ CREATE TABLE `inf_job_log` ( @@ -647,335 +201,12 @@ CREATE TABLE `inf_job_log` (
647 `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'æ›´æ–°æ—¶é—´', 201 `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'æ›´æ–°æ—¶é—´',
648 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是å¦åˆ é™¤', 202 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是å¦åˆ é™¤',
649 PRIMARY KEY (`id`) USING BTREE 203 PRIMARY KEY (`id`) USING BTREE
650 -) ENGINE=InnoDB AUTO_INCREMENT=324 DEFAULT CHARSET=utf8mb4 COMMENT='定时任务日志表'; 204 +) ENGINE=InnoDB AUTO_INCREMENT=1969 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='定时任务日志表';
651 205
652 -- ---------------------------- 206 -- ----------------------------
653 -- Records of inf_job_log 207 -- Records of inf_job_log
654 -- ---------------------------- 208 -- ----------------------------
655 BEGIN; 209 BEGIN;
656 -INSERT INTO `inf_job_log` VALUES (1, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-25 23:49:09', '2021-04-25 23:49:09', 187, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 1 个', NULL, '2021-04-25 23:49:09', NULL, '2021-04-25 23:49:09', b'0');  
657 -INSERT INTO `inf_job_log` VALUES (2, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 00:03:20', '2021-04-26 00:03:20', 44, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 00:03:20', NULL, '2021-04-26 00:03:20', b'0');  
658 -INSERT INTO `inf_job_log` VALUES (3, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 00:04:00', '2021-04-26 00:04:00', 7, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 00:04:00', NULL, '2021-04-26 00:04:00', b'0');  
659 -INSERT INTO `inf_job_log` VALUES (4, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 00:05:00', '2021-04-26 00:05:00', 6, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 00:05:00', NULL, '2021-04-26 00:05:00', b'0');  
660 -INSERT INTO `inf_job_log` VALUES (5, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 00:06:00', '2021-04-26 00:06:00', 6, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 00:06:00', NULL, '2021-04-26 00:06:00', b'0');  
661 -INSERT INTO `inf_job_log` VALUES (6, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 00:07:22', '2021-04-26 00:07:22', 40, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 00:07:22', NULL, '2021-04-26 00:07:22', b'0');  
662 -INSERT INTO `inf_job_log` VALUES (7, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 00:08:00', '2021-04-26 00:08:00', 9, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 00:08:00', NULL, '2021-04-26 00:08:00', b'0');  
663 -INSERT INTO `inf_job_log` VALUES (8, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 00:09:00', '2021-04-26 00:09:00', 6, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 00:09:00', NULL, '2021-04-26 00:09:00', b'0');  
664 -INSERT INTO `inf_job_log` VALUES (9, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 00:10:00', '2021-04-26 00:10:00', 6, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 00:10:00', NULL, '2021-04-26 00:10:00', b'0');  
665 -INSERT INTO `inf_job_log` VALUES (10, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 00:11:00', '2021-04-26 00:11:00', 7, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 00:11:00', NULL, '2021-04-26 00:11:00', b'0');  
666 -INSERT INTO `inf_job_log` VALUES (11, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 00:12:00', '2021-04-26 00:12:00', 7, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 00:12:00', NULL, '2021-04-26 00:12:00', b'0');  
667 -INSERT INTO `inf_job_log` VALUES (12, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 00:13:00', '2021-04-26 00:13:00', 4, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 00:13:00', NULL, '2021-04-26 00:13:00', b'0');  
668 -INSERT INTO `inf_job_log` VALUES (13, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 00:14:00', '2021-04-26 00:14:00', 5, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 00:14:00', NULL, '2021-04-26 00:14:00', b'0');  
669 -INSERT INTO `inf_job_log` VALUES (14, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 00:15:33', '2021-04-26 00:15:33', 34, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 00:15:33', NULL, '2021-04-26 00:15:33', b'0');  
670 -INSERT INTO `inf_job_log` VALUES (15, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 00:16:02', '2021-04-26 00:16:02', 13, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 00:16:02', NULL, '2021-04-26 00:16:02', b'0');  
671 -INSERT INTO `inf_job_log` VALUES (16, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 00:18:35', '2021-04-26 00:18:35', 6, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 00:18:35', NULL, '2021-04-26 00:18:35', b'0');  
672 -INSERT INTO `inf_job_log` VALUES (17, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 00:21:31', '2021-04-26 00:21:32', 42, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 00:21:31', NULL, '2021-04-26 00:21:32', b'0');  
673 -INSERT INTO `inf_job_log` VALUES (18, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 00:22:04', '2021-04-26 00:22:04', 6, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 00:22:04', NULL, '2021-04-26 00:22:04', b'0');  
674 -INSERT INTO `inf_job_log` VALUES (19, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 00:23:35', '2021-04-26 00:23:35', 39, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 00:23:35', NULL, '2021-04-26 00:23:35', b'0');  
675 -INSERT INTO `inf_job_log` VALUES (20, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 00:24:01', '2021-04-26 00:24:01', 7, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 00:24:01', NULL, '2021-04-26 00:24:01', b'0');  
676 -INSERT INTO `inf_job_log` VALUES (21, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 00:25:00', '2021-04-26 00:25:00', 7, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 00:25:00', NULL, '2021-04-26 00:25:00', b'0');  
677 -INSERT INTO `inf_job_log` VALUES (22, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 00:26:00', '2021-04-26 00:26:00', 7, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 00:26:00', NULL, '2021-04-26 00:26:00', b'0');  
678 -INSERT INTO `inf_job_log` VALUES (23, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 00:27:00', '2021-04-26 00:27:00', 5, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 00:27:00', NULL, '2021-04-26 00:27:00', b'0');  
679 -INSERT INTO `inf_job_log` VALUES (24, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 00:28:00', '2021-04-26 00:28:00', 4, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 00:28:00', NULL, '2021-04-26 00:28:00', b'0');  
680 -INSERT INTO `inf_job_log` VALUES (25, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 00:29:00', '2021-04-26 00:29:00', 5, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 00:29:00', NULL, '2021-04-26 00:29:00', b'0');  
681 -INSERT INTO `inf_job_log` VALUES (26, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 00:30:00', '2021-04-26 00:30:00', 20, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 00:30:00', NULL, '2021-04-26 00:30:00', b'0');  
682 -INSERT INTO `inf_job_log` VALUES (27, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 00:31:00', '2021-04-26 00:31:00', 6, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 00:31:00', NULL, '2021-04-26 00:31:00', b'0');  
683 -INSERT INTO `inf_job_log` VALUES (28, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 00:32:34', '2021-04-26 00:32:34', 37, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 00:32:34', NULL, '2021-04-26 00:32:34', b'0');  
684 -INSERT INTO `inf_job_log` VALUES (29, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 00:33:00', '2021-04-26 00:33:00', 6, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 00:33:00', NULL, '2021-04-26 00:33:00', b'0');  
685 -INSERT INTO `inf_job_log` VALUES (30, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 01:00:07', '2021-04-26 01:00:07', 29, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 01:00:07', NULL, '2021-04-26 01:00:07', b'0');  
686 -INSERT INTO `inf_job_log` VALUES (31, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 01:01:00', '2021-04-26 01:01:00', 6, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 01:01:00', NULL, '2021-04-26 01:01:00', b'0');  
687 -INSERT INTO `inf_job_log` VALUES (32, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 01:02:00', '2021-04-26 01:02:00', 6, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 01:02:00', NULL, '2021-04-26 01:02:00', b'0');  
688 -INSERT INTO `inf_job_log` VALUES (33, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 01:04:36', '2021-04-26 01:04:36', 40, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 01:04:36', NULL, '2021-04-26 01:04:36', b'0');  
689 -INSERT INTO `inf_job_log` VALUES (34, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 01:04:39', '2021-04-26 01:04:39', 8, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 01:04:39', NULL, '2021-04-26 01:04:39', b'0');  
690 -INSERT INTO `inf_job_log` VALUES (35, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 01:05:00', '2021-04-26 01:05:00', 9, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 01:05:00', NULL, '2021-04-26 01:05:00', b'0');  
691 -INSERT INTO `inf_job_log` VALUES (36, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 01:06:00', '2021-04-26 01:06:00', 5, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 01:06:00', NULL, '2021-04-26 01:06:00', b'0');  
692 -INSERT INTO `inf_job_log` VALUES (37, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 01:07:00', '2021-04-26 01:07:00', 10, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 01:07:00', NULL, '2021-04-26 01:07:00', b'0');  
693 -INSERT INTO `inf_job_log` VALUES (38, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 01:08:00', '2021-04-26 01:08:00', 6, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 01:08:00', NULL, '2021-04-26 01:08:00', b'0');  
694 -INSERT INTO `inf_job_log` VALUES (39, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 01:09:00', '2021-04-26 01:09:00', 5, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 01:09:00', NULL, '2021-04-26 01:09:00', b'0');  
695 -INSERT INTO `inf_job_log` VALUES (40, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 01:10:00', '2021-04-26 01:10:00', 4, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 01:10:00', NULL, '2021-04-26 01:10:00', b'0');  
696 -INSERT INTO `inf_job_log` VALUES (41, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 01:11:00', '2021-04-26 01:11:00', 6, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 01:11:00', NULL, '2021-04-26 01:11:00', b'0');  
697 -INSERT INTO `inf_job_log` VALUES (42, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 01:14:31', '2021-04-26 01:14:31', 35, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 01:14:31', NULL, '2021-04-26 01:14:31', b'0');  
698 -INSERT INTO `inf_job_log` VALUES (43, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 01:15:00', '2021-04-26 01:15:00', 6, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 01:15:00', NULL, '2021-04-26 01:15:00', b'0');  
699 -INSERT INTO `inf_job_log` VALUES (44, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 01:16:00', '2021-04-26 01:16:00', 16, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 01:16:00', NULL, '2021-04-26 01:16:00', b'0');  
700 -INSERT INTO `inf_job_log` VALUES (45, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 01:17:00', '2021-04-26 01:17:00', 7, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 01:17:00', NULL, '2021-04-26 01:17:00', b'0');  
701 -INSERT INTO `inf_job_log` VALUES (46, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 01:18:00', '2021-04-26 01:18:00', 5, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 01:18:00', NULL, '2021-04-26 01:18:00', b'0');  
702 -INSERT INTO `inf_job_log` VALUES (47, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 01:19:00', '2021-04-26 01:19:00', 5, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 01:19:00', NULL, '2021-04-26 01:19:00', b'0');  
703 -INSERT INTO `inf_job_log` VALUES (48, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 01:20:00', '2021-04-26 01:20:00', 5, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 01:20:00', NULL, '2021-04-26 01:20:00', b'0');  
704 -INSERT INTO `inf_job_log` VALUES (49, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 01:21:00', '2021-04-26 01:21:00', 4, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 01:21:00', NULL, '2021-04-26 01:21:00', b'0');  
705 -INSERT INTO `inf_job_log` VALUES (50, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 01:22:00', '2021-04-26 01:22:00', 4, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 01:22:00', NULL, '2021-04-26 01:22:00', b'0');  
706 -INSERT INTO `inf_job_log` VALUES (51, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 01:23:00', '2021-04-26 01:23:00', 5, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 01:23:00', NULL, '2021-04-26 01:23:00', b'0');  
707 -INSERT INTO `inf_job_log` VALUES (52, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 01:24:00', '2021-04-26 01:24:00', 23, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 01:24:00', NULL, '2021-04-26 01:24:00', b'0');  
708 -INSERT INTO `inf_job_log` VALUES (53, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 01:25:00', '2021-04-26 01:25:00', 6, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 01:25:00', NULL, '2021-04-26 01:25:00', b'0');  
709 -INSERT INTO `inf_job_log` VALUES (54, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 01:26:00', '2021-04-26 01:26:00', 7, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 01:26:00', NULL, '2021-04-26 01:26:00', b'0');  
710 -INSERT INTO `inf_job_log` VALUES (55, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 01:27:51', '2021-04-26 01:27:51', 39, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 01:27:51', NULL, '2021-04-26 01:27:51', b'0');  
711 -INSERT INTO `inf_job_log` VALUES (56, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 01:28:00', '2021-04-26 01:28:00', 8, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 01:28:00', NULL, '2021-04-26 01:28:00', b'0');  
712 -INSERT INTO `inf_job_log` VALUES (57, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 01:29:19', '2021-04-26 01:29:19', 34, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 01:29:19', NULL, '2021-04-26 01:29:19', b'0');  
713 -INSERT INTO `inf_job_log` VALUES (58, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 01:30:11', '2021-04-26 01:30:11', 8, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 01:30:11', NULL, '2021-04-26 01:30:11', b'0');  
714 -INSERT INTO `inf_job_log` VALUES (59, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 01:31:00', '2021-04-26 01:31:00', 8, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 01:31:00', NULL, '2021-04-26 01:31:00', b'0');  
715 -INSERT INTO `inf_job_log` VALUES (60, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 01:32:00', '2021-04-26 01:32:00', 7, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 01:32:00', NULL, '2021-04-26 01:32:00', b'0');  
716 -INSERT INTO `inf_job_log` VALUES (61, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 01:33:00', '2021-04-26 01:33:00', 6, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 01:33:00', NULL, '2021-04-26 01:33:00', b'0');  
717 -INSERT INTO `inf_job_log` VALUES (62, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 09:22:34', '2021-04-26 09:22:34', 167, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 1 个', NULL, '2021-04-26 09:22:34', NULL, '2021-04-26 09:22:34', b'0');  
718 -INSERT INTO `inf_job_log` VALUES (63, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 09:23:00', '2021-04-26 09:23:00', 8, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 09:23:00', NULL, '2021-04-26 09:23:00', b'0');  
719 -INSERT INTO `inf_job_log` VALUES (64, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 09:24:00', '2021-04-26 09:24:00', 7, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 09:24:00', NULL, '2021-04-26 09:24:00', b'0');  
720 -INSERT INTO `inf_job_log` VALUES (65, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 09:25:21', '2021-04-26 09:25:21', 47, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 09:25:21', NULL, '2021-04-26 09:25:21', b'0');  
721 -INSERT INTO `inf_job_log` VALUES (66, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 09:39:49', '2021-04-26 09:39:49', 38, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 09:39:49', NULL, '2021-04-26 09:39:49', b'0');  
722 -INSERT INTO `inf_job_log` VALUES (67, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 09:40:00', '2021-04-26 09:40:00', 8, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 09:40:00', NULL, '2021-04-26 09:40:00', b'0');  
723 -INSERT INTO `inf_job_log` VALUES (68, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 09:41:57', '2021-04-26 09:41:57', 46, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 09:41:57', NULL, '2021-04-26 09:41:57', b'0');  
724 -INSERT INTO `inf_job_log` VALUES (69, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 09:42:00', '2021-04-26 09:42:00', 7, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 09:42:00', NULL, '2021-04-26 09:42:00', b'0');  
725 -INSERT INTO `inf_job_log` VALUES (70, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 09:43:00', '2021-04-26 09:43:00', 20, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 09:43:00', NULL, '2021-04-26 09:43:00', b'0');  
726 -INSERT INTO `inf_job_log` VALUES (71, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 09:44:38', '2021-04-26 09:44:38', 30, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 09:44:38', NULL, '2021-04-26 09:44:38', b'0');  
727 -INSERT INTO `inf_job_log` VALUES (72, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 09:45:00', '2021-04-26 09:45:00', 6, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 09:45:00', NULL, '2021-04-26 09:45:00', b'0');  
728 -INSERT INTO `inf_job_log` VALUES (73, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 09:46:00', '2021-04-26 09:46:00', 7, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 09:46:00', NULL, '2021-04-26 09:46:00', b'0');  
729 -INSERT INTO `inf_job_log` VALUES (74, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 09:47:00', '2021-04-26 09:47:00', 7, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 09:47:00', NULL, '2021-04-26 09:47:00', b'0');  
730 -INSERT INTO `inf_job_log` VALUES (75, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 09:48:00', '2021-04-26 09:48:00', 6, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 09:48:00', NULL, '2021-04-26 09:48:00', b'0');  
731 -INSERT INTO `inf_job_log` VALUES (76, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 09:50:41', '2021-04-26 09:50:41', 25, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 09:50:41', NULL, '2021-04-26 09:50:41', b'0');  
732 -INSERT INTO `inf_job_log` VALUES (77, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 09:57:21', '2021-04-26 09:57:21', 8, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 09:57:21', NULL, '2021-04-26 09:57:21', b'0');  
733 -INSERT INTO `inf_job_log` VALUES (78, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 10:00:42', '2021-04-26 10:00:42', 6, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 10:00:42', NULL, '2021-04-26 10:00:42', b'0');  
734 -INSERT INTO `inf_job_log` VALUES (79, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 10:01:14', '2021-04-26 10:01:14', 20, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 10:01:14', NULL, '2021-04-26 10:01:14', b'0');  
735 -INSERT INTO `inf_job_log` VALUES (80, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 10:02:01', '2021-04-26 10:02:01', 22, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 10:02:01', NULL, '2021-04-26 10:02:01', b'0');  
736 -INSERT INTO `inf_job_log` VALUES (81, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 18:48:51', '2021-04-26 18:48:51', 15, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 18:48:51', NULL, '2021-04-26 18:48:51', b'0');  
737 -INSERT INTO `inf_job_log` VALUES (82, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 18:49:00', '2021-04-26 18:49:00', 6, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 18:49:00', NULL, '2021-04-26 18:49:00', b'0');  
738 -INSERT INTO `inf_job_log` VALUES (83, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 18:50:00', '2021-04-26 18:50:00', 9, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 18:50:00', NULL, '2021-04-26 18:50:00', b'0');  
739 -INSERT INTO `inf_job_log` VALUES (84, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 18:51:00', '2021-04-26 18:51:00', 7, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 18:51:00', NULL, '2021-04-26 18:51:00', b'0');  
740 -INSERT INTO `inf_job_log` VALUES (85, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 18:52:00', '2021-04-26 18:52:00', 6, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 18:52:00', NULL, '2021-04-26 18:52:00', b'0');  
741 -INSERT INTO `inf_job_log` VALUES (86, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 18:53:00', '2021-04-26 18:53:00', 6, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 18:53:00', NULL, '2021-04-26 18:53:00', b'0');  
742 -INSERT INTO `inf_job_log` VALUES (87, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 18:54:00', '2021-04-26 18:54:00', 5, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 18:54:00', NULL, '2021-04-26 18:54:00', b'0');  
743 -INSERT INTO `inf_job_log` VALUES (88, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 18:55:00', '2021-04-26 18:55:00', 6, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 18:55:00', NULL, '2021-04-26 18:55:00', b'0');  
744 -INSERT INTO `inf_job_log` VALUES (89, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 18:56:00', '2021-04-26 18:56:00', 5, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 18:56:00', NULL, '2021-04-26 18:56:00', b'0');  
745 -INSERT INTO `inf_job_log` VALUES (90, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 18:57:00', '2021-04-26 18:57:00', 5, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 18:57:00', NULL, '2021-04-26 18:57:00', b'0');  
746 -INSERT INTO `inf_job_log` VALUES (91, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 18:58:00', '2021-04-26 18:58:00', 5, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 18:58:00', NULL, '2021-04-26 18:58:00', b'0');  
747 -INSERT INTO `inf_job_log` VALUES (92, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 18:59:00', '2021-04-26 18:59:00', 5, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 18:59:00', NULL, '2021-04-26 18:59:00', b'0');  
748 -INSERT INTO `inf_job_log` VALUES (93, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 19:00:00', '2021-04-26 19:00:00', 5, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 19:00:00', NULL, '2021-04-26 19:00:00', b'0');  
749 -INSERT INTO `inf_job_log` VALUES (94, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 19:01:00', '2021-04-26 19:01:00', 5, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 19:01:00', NULL, '2021-04-26 19:01:00', b'0');  
750 -INSERT INTO `inf_job_log` VALUES (95, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 19:02:00', '2021-04-26 19:02:00', 5, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 19:02:00', NULL, '2021-04-26 19:02:00', b'0');  
751 -INSERT INTO `inf_job_log` VALUES (96, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 19:03:00', '2021-04-26 19:03:00', 5, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 19:03:00', NULL, '2021-04-26 19:03:00', b'0');  
752 -INSERT INTO `inf_job_log` VALUES (97, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 19:04:00', '2021-04-26 19:04:00', 5, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 19:04:00', NULL, '2021-04-26 19:04:00', b'0');  
753 -INSERT INTO `inf_job_log` VALUES (98, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 19:05:00', '2021-04-26 19:05:00', 6, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 19:05:00', NULL, '2021-04-26 19:05:00', b'0');  
754 -INSERT INTO `inf_job_log` VALUES (99, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 19:06:00', '2021-04-26 19:06:00', 5, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 19:06:00', NULL, '2021-04-26 19:06:00', b'0');  
755 -INSERT INTO `inf_job_log` VALUES (100, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 19:07:00', '2021-04-26 19:07:00', 5, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 19:07:00', NULL, '2021-04-26 19:07:00', b'0');  
756 -INSERT INTO `inf_job_log` VALUES (101, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 19:08:00', '2021-04-26 19:08:00', 5, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 19:08:00', NULL, '2021-04-26 19:08:00', b'0');  
757 -INSERT INTO `inf_job_log` VALUES (102, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 19:09:00', '2021-04-26 19:09:00', 5, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 19:09:00', NULL, '2021-04-26 19:09:00', b'0');  
758 -INSERT INTO `inf_job_log` VALUES (103, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 19:10:00', '2021-04-26 19:10:00', 4, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 19:10:00', NULL, '2021-04-26 19:10:00', b'0');  
759 -INSERT INTO `inf_job_log` VALUES (104, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 19:11:00', '2021-04-26 19:11:00', 6, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 19:11:00', NULL, '2021-04-26 19:11:00', b'0');  
760 -INSERT INTO `inf_job_log` VALUES (105, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 19:12:00', '2021-04-26 19:12:00', 5, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 19:12:00', NULL, '2021-04-26 19:12:00', b'0');  
761 -INSERT INTO `inf_job_log` VALUES (106, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 19:13:00', '2021-04-26 19:13:00', 5, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 19:13:00', NULL, '2021-04-26 19:13:00', b'0');  
762 -INSERT INTO `inf_job_log` VALUES (107, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 19:14:00', '2021-04-26 19:14:00', 7, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 19:14:00', NULL, '2021-04-26 19:14:00', b'0');  
763 -INSERT INTO `inf_job_log` VALUES (108, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 19:15:00', '2021-04-26 19:15:00', 5, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 19:15:00', NULL, '2021-04-26 19:15:00', b'0');  
764 -INSERT INTO `inf_job_log` VALUES (109, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 19:16:00', '2021-04-26 19:16:00', 5, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 19:16:00', NULL, '2021-04-26 19:16:00', b'0');  
765 -INSERT INTO `inf_job_log` VALUES (110, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 19:17:00', '2021-04-26 19:17:00', 5, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 19:17:00', NULL, '2021-04-26 19:17:00', b'0');  
766 -INSERT INTO `inf_job_log` VALUES (111, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 19:18:00', '2021-04-26 19:18:00', 5, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 19:18:00', NULL, '2021-04-26 19:18:00', b'0');  
767 -INSERT INTO `inf_job_log` VALUES (112, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 19:21:46', '2021-04-26 19:21:46', 21, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 19:21:46', NULL, '2021-04-26 19:21:46', b'0');  
768 -INSERT INTO `inf_job_log` VALUES (113, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 19:22:00', '2021-04-26 19:22:00', 17, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 19:22:00', NULL, '2021-04-26 19:22:00', b'0');  
769 -INSERT INTO `inf_job_log` VALUES (114, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 19:25:03', '2021-04-26 19:25:03', 23, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 19:25:03', NULL, '2021-04-26 19:25:03', b'0');  
770 -INSERT INTO `inf_job_log` VALUES (115, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 19:26:36', '2021-04-26 19:26:36', 20, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 19:26:36', NULL, '2021-04-26 19:26:36', b'0');  
771 -INSERT INTO `inf_job_log` VALUES (116, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 19:27:00', '2021-04-26 19:27:00', 18, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 19:27:00', NULL, '2021-04-26 19:27:00', b'0');  
772 -INSERT INTO `inf_job_log` VALUES (117, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 20:26:21', '2021-04-26 20:26:21', 37, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 20:26:21', NULL, '2021-04-26 20:26:21', b'0');  
773 -INSERT INTO `inf_job_log` VALUES (118, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 20:27:51', '2021-04-26 20:27:51', 27, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 20:27:51', NULL, '2021-04-26 20:27:51', b'0');  
774 -INSERT INTO `inf_job_log` VALUES (119, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 20:28:00', '2021-04-26 20:28:00', 10, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 20:28:00', NULL, '2021-04-26 20:28:00', b'0');  
775 -INSERT INTO `inf_job_log` VALUES (120, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 20:29:00', '2021-04-26 20:29:00', 6, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 20:29:00', NULL, '2021-04-26 20:29:00', b'0');  
776 -INSERT INTO `inf_job_log` VALUES (121, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 20:41:08', '2021-04-26 20:41:08', 33, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 20:41:08', NULL, '2021-04-26 20:41:08', b'0');  
777 -INSERT INTO `inf_job_log` VALUES (122, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 20:44:03', '2021-04-26 20:44:03', 31, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 20:44:03', NULL, '2021-04-26 20:44:03', b'0');  
778 -INSERT INTO `inf_job_log` VALUES (123, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 20:46:30', '2021-04-26 20:46:30', 39, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 20:46:30', NULL, '2021-04-26 20:46:30', b'0');  
779 -INSERT INTO `inf_job_log` VALUES (124, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 20:47:00', '2021-04-26 20:47:00', 11, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 20:47:00', NULL, '2021-04-26 20:47:00', b'0');  
780 -INSERT INTO `inf_job_log` VALUES (125, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 21:29:29', '2021-04-26 21:29:29', 57, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 21:29:29', NULL, '2021-04-26 21:29:29', b'0');  
781 -INSERT INTO `inf_job_log` VALUES (126, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 21:49:35', '2021-04-26 21:49:35', 49, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 21:49:35', NULL, '2021-04-26 21:49:35', b'0');  
782 -INSERT INTO `inf_job_log` VALUES (127, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 21:50:00', '2021-04-26 21:50:00', 13, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 21:50:00', NULL, '2021-04-26 21:50:00', b'0');  
783 -INSERT INTO `inf_job_log` VALUES (128, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 21:59:55', '2021-04-26 21:59:55', 51, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 21:59:55', NULL, '2021-04-26 21:59:55', b'0');  
784 -INSERT INTO `inf_job_log` VALUES (129, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 22:00:00', '2021-04-26 22:00:00', 13, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 22:00:00', NULL, '2021-04-26 22:00:00', b'0');  
785 -INSERT INTO `inf_job_log` VALUES (130, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 22:32:23', '2021-04-26 22:32:23', 8, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 22:32:23', NULL, '2021-04-26 22:32:23', b'0');  
786 -INSERT INTO `inf_job_log` VALUES (131, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 22:33:00', '2021-04-26 22:33:00', 6, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 22:33:00', NULL, '2021-04-26 22:33:00', b'0');  
787 -INSERT INTO `inf_job_log` VALUES (132, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 22:34:00', '2021-04-26 22:34:00', 14, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 22:34:00', NULL, '2021-04-26 22:34:00', b'0');  
788 -INSERT INTO `inf_job_log` VALUES (133, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 22:35:00', '2021-04-26 22:35:00', 8, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 22:35:00', NULL, '2021-04-26 22:35:00', b'0');  
789 -INSERT INTO `inf_job_log` VALUES (134, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 22:36:00', '2021-04-26 22:36:00', 6, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 22:36:00', NULL, '2021-04-26 22:36:00', b'0');  
790 -INSERT INTO `inf_job_log` VALUES (135, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 22:37:00', '2021-04-26 22:37:00', 9, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 22:37:00', NULL, '2021-04-26 22:37:00', b'0');  
791 -INSERT INTO `inf_job_log` VALUES (136, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 22:38:21', '2021-04-26 22:38:21', 37, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 22:38:21', NULL, '2021-04-26 22:38:21', b'0');  
792 -INSERT INTO `inf_job_log` VALUES (137, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 22:39:00', '2021-04-26 22:39:00', 8, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 22:39:00', NULL, '2021-04-26 22:39:00', b'0');  
793 -INSERT INTO `inf_job_log` VALUES (138, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 22:40:00', '2021-04-26 22:40:00', 8, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 22:40:00', NULL, '2021-04-26 22:40:00', b'0');  
794 -INSERT INTO `inf_job_log` VALUES (139, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 22:41:00', '2021-04-26 22:41:00', 10, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 22:41:00', NULL, '2021-04-26 22:41:00', b'0');  
795 -INSERT INTO `inf_job_log` VALUES (140, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 22:42:00', '2021-04-26 22:42:00', 9, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 22:42:00', NULL, '2021-04-26 22:42:00', b'0');  
796 -INSERT INTO `inf_job_log` VALUES (141, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 22:43:00', '2021-04-26 22:43:00', 7, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 22:43:00', NULL, '2021-04-26 22:43:00', b'0');  
797 -INSERT INTO `inf_job_log` VALUES (142, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 22:44:00', '2021-04-26 22:44:00', 9, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 22:44:00', NULL, '2021-04-26 22:44:00', b'0');  
798 -INSERT INTO `inf_job_log` VALUES (143, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 22:45:00', '2021-04-26 22:45:00', 8, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 22:45:00', NULL, '2021-04-26 22:45:00', b'0');  
799 -INSERT INTO `inf_job_log` VALUES (144, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 22:46:00', '2021-04-26 22:46:00', 9, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 22:46:00', NULL, '2021-04-26 22:46:00', b'0');  
800 -INSERT INTO `inf_job_log` VALUES (145, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 22:47:00', '2021-04-26 22:47:00', 7, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 22:47:00', NULL, '2021-04-26 22:47:00', b'0');  
801 -INSERT INTO `inf_job_log` VALUES (146, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 22:48:00', '2021-04-26 22:48:00', 7, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 22:48:00', NULL, '2021-04-26 22:48:00', b'0');  
802 -INSERT INTO `inf_job_log` VALUES (147, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 22:49:00', '2021-04-26 22:49:00', 6, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 22:49:00', NULL, '2021-04-26 22:49:00', b'0');  
803 -INSERT INTO `inf_job_log` VALUES (148, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 22:50:04', '2021-04-26 22:50:04', 44, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 22:50:04', NULL, '2021-04-26 22:50:04', b'0');  
804 -INSERT INTO `inf_job_log` VALUES (149, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 22:51:00', '2021-04-26 22:51:00', 10, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 22:51:00', NULL, '2021-04-26 22:51:00', b'0');  
805 -INSERT INTO `inf_job_log` VALUES (150, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 22:52:00', '2021-04-26 22:52:00', 15, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 22:52:00', NULL, '2021-04-26 22:52:00', b'0');  
806 -INSERT INTO `inf_job_log` VALUES (151, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 22:53:00', '2021-04-26 22:53:00', 8, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 22:53:00', NULL, '2021-04-26 22:53:00', b'0');  
807 -INSERT INTO `inf_job_log` VALUES (152, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 22:54:00', '2021-04-26 22:54:00', 6, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 22:54:00', NULL, '2021-04-26 22:54:00', b'0');  
808 -INSERT INTO `inf_job_log` VALUES (153, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 22:55:00', '2021-04-26 22:55:00', 6, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 22:55:00', NULL, '2021-04-26 22:55:00', b'0');  
809 -INSERT INTO `inf_job_log` VALUES (154, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 22:56:00', '2021-04-26 22:56:00', 6, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 22:56:00', NULL, '2021-04-26 22:56:00', b'0');  
810 -INSERT INTO `inf_job_log` VALUES (155, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 22:57:00', '2021-04-26 22:57:00', 8, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 22:57:00', NULL, '2021-04-26 22:57:00', b'0');  
811 -INSERT INTO `inf_job_log` VALUES (156, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 22:58:00', '2021-04-26 22:58:00', 7, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 22:58:00', NULL, '2021-04-26 22:58:00', b'0');  
812 -INSERT INTO `inf_job_log` VALUES (157, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 22:59:00', '2021-04-26 22:59:00', 7, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 22:59:00', NULL, '2021-04-26 22:59:00', b'0');  
813 -INSERT INTO `inf_job_log` VALUES (158, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 23:00:00', '2021-04-26 23:00:00', 7, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 23:00:00', NULL, '2021-04-26 23:00:00', b'0');  
814 -INSERT INTO `inf_job_log` VALUES (159, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 23:01:00', '2021-04-26 23:01:00', 10, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 23:01:00', NULL, '2021-04-26 23:01:00', b'0');  
815 -INSERT INTO `inf_job_log` VALUES (160, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 23:02:00', '2021-04-26 23:02:00', 6, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 23:02:00', NULL, '2021-04-26 23:02:00', b'0');  
816 -INSERT INTO `inf_job_log` VALUES (161, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 23:03:00', '2021-04-26 23:03:00', 5, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 23:03:00', NULL, '2021-04-26 23:03:00', b'0');  
817 -INSERT INTO `inf_job_log` VALUES (162, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 23:04:00', '2021-04-26 23:04:00', 6, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 23:04:00', NULL, '2021-04-26 23:04:00', b'0');  
818 -INSERT INTO `inf_job_log` VALUES (163, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 23:05:00', '2021-04-26 23:05:00', 32, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 1 个', NULL, '2021-04-26 23:05:00', NULL, '2021-04-26 23:05:00', b'0');  
819 -INSERT INTO `inf_job_log` VALUES (164, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 23:06:00', '2021-04-26 23:06:00', 5, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 23:06:00', NULL, '2021-04-26 23:06:00', b'0');  
820 -INSERT INTO `inf_job_log` VALUES (165, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 23:07:00', '2021-04-26 23:07:00', 9, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 23:07:00', NULL, '2021-04-26 23:07:00', b'0');  
821 -INSERT INTO `inf_job_log` VALUES (166, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 23:08:00', '2021-04-26 23:08:00', 7, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 23:08:00', NULL, '2021-04-26 23:08:00', b'0');  
822 -INSERT INTO `inf_job_log` VALUES (167, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 23:09:00', '2021-04-26 23:09:00', 5, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 23:09:00', NULL, '2021-04-26 23:09:00', b'0');  
823 -INSERT INTO `inf_job_log` VALUES (168, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 23:10:00', '2021-04-26 23:10:00', 8, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 23:10:00', NULL, '2021-04-26 23:10:00', b'0');  
824 -INSERT INTO `inf_job_log` VALUES (169, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 23:11:00', '2021-04-26 23:11:00', 5, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 23:11:00', NULL, '2021-04-26 23:11:00', b'0');  
825 -INSERT INTO `inf_job_log` VALUES (170, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 23:12:00', '2021-04-26 23:12:00', 5, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 23:12:00', NULL, '2021-04-26 23:12:00', b'0');  
826 -INSERT INTO `inf_job_log` VALUES (171, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 23:13:00', '2021-04-26 23:13:00', 6, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 23:13:00', NULL, '2021-04-26 23:13:00', b'0');  
827 -INSERT INTO `inf_job_log` VALUES (172, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 23:14:00', '2021-04-26 23:14:00', 5, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 23:14:00', NULL, '2021-04-26 23:14:00', b'0');  
828 -INSERT INTO `inf_job_log` VALUES (173, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 23:15:00', '2021-04-26 23:15:00', 6, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 23:15:00', NULL, '2021-04-26 23:15:00', b'0');  
829 -INSERT INTO `inf_job_log` VALUES (174, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 23:16:00', '2021-04-26 23:16:00', 6, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 23:16:00', NULL, '2021-04-26 23:16:00', b'0');  
830 -INSERT INTO `inf_job_log` VALUES (175, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 23:17:00', '2021-04-26 23:17:00', 6, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 23:17:00', NULL, '2021-04-26 23:17:00', b'0');  
831 -INSERT INTO `inf_job_log` VALUES (176, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-26 23:18:00', '2021-04-26 23:18:00', 6, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-26 23:18:00', NULL, '2021-04-26 23:18:00', b'0');  
832 -INSERT INTO `inf_job_log` VALUES (177, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-27 00:10:53', '2021-04-27 00:10:53', 217, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 1 个', NULL, '2021-04-27 00:10:53', NULL, '2021-04-27 00:10:53', b'0');  
833 -INSERT INTO `inf_job_log` VALUES (178, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-27 00:11:00', '2021-04-27 00:11:00', 11, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-27 00:11:00', NULL, '2021-04-27 00:11:00', b'0');  
834 -INSERT INTO `inf_job_log` VALUES (179, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-27 00:12:00', '2021-04-27 00:12:00', 9, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-27 00:12:00', NULL, '2021-04-27 00:12:00', b'0');  
835 -INSERT INTO `inf_job_log` VALUES (180, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-27 00:13:42', '2021-04-27 00:13:42', 51, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-27 00:13:42', NULL, '2021-04-27 00:13:42', b'0');  
836 -INSERT INTO `inf_job_log` VALUES (181, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-27 00:14:00', '2021-04-27 00:14:00', 12, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-27 00:14:00', NULL, '2021-04-27 00:14:00', b'0');  
837 -INSERT INTO `inf_job_log` VALUES (182, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-27 00:16:11', '2021-04-27 00:16:11', 11, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-27 00:16:11', NULL, '2021-04-27 00:16:11', b'0');  
838 -INSERT INTO `inf_job_log` VALUES (183, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-27 00:16:11', '2021-04-27 00:16:11', 13, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-27 00:16:11', NULL, '2021-04-27 00:16:11', b'0');  
839 -INSERT INTO `inf_job_log` VALUES (184, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-27 00:17:33', '2021-04-27 00:17:33', 57, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-27 00:17:33', NULL, '2021-04-27 00:17:33', b'0');  
840 -INSERT INTO `inf_job_log` VALUES (185, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-27 00:18:00', '2021-04-27 00:18:00', 10, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-27 00:18:00', NULL, '2021-04-27 00:18:00', b'0');  
841 -INSERT INTO `inf_job_log` VALUES (186, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-27 00:19:00', '2021-04-27 00:19:00', 11, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-27 00:19:00', NULL, '2021-04-27 00:19:00', b'0');  
842 -INSERT INTO `inf_job_log` VALUES (187, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-27 00:20:20', '2021-04-27 00:20:20', 54, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-27 00:20:20', NULL, '2021-04-27 00:20:20', b'0');  
843 -INSERT INTO `inf_job_log` VALUES (188, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-27 00:21:01', '2021-04-27 00:21:01', 13, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-27 00:21:01', NULL, '2021-04-27 00:21:01', b'0');  
844 -INSERT INTO `inf_job_log` VALUES (189, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-27 00:22:00', '2021-04-27 00:22:00', 32, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-27 00:22:00', NULL, '2021-04-27 00:22:00', b'0');  
845 -INSERT INTO `inf_job_log` VALUES (190, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-27 00:23:58', '2021-04-27 00:23:58', 41, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-27 00:23:58', NULL, '2021-04-27 00:23:58', b'0');  
846 -INSERT INTO `inf_job_log` VALUES (191, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-27 00:24:00', '2021-04-27 00:24:00', 7, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-27 00:24:00', NULL, '2021-04-27 00:24:00', b'0');  
847 -INSERT INTO `inf_job_log` VALUES (192, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-27 00:25:00', '2021-04-27 00:25:00', 8, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-27 00:25:00', NULL, '2021-04-27 00:25:00', b'0');  
848 -INSERT INTO `inf_job_log` VALUES (193, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-27 00:26:00', '2021-04-27 00:26:00', 9, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-27 00:26:00', NULL, '2021-04-27 00:26:00', b'0');  
849 -INSERT INTO `inf_job_log` VALUES (194, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-27 00:27:32', '2021-04-27 00:27:33', 12, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-27 00:27:32', NULL, '2021-04-27 00:27:33', b'0');  
850 -INSERT INTO `inf_job_log` VALUES (195, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-27 00:29:59', '2021-04-27 00:29:59', 54, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-27 00:29:59', NULL, '2021-04-27 00:29:59', b'0');  
851 -INSERT INTO `inf_job_log` VALUES (196, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-27 00:30:00', '2021-04-27 00:30:00', 10, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-27 00:30:00', NULL, '2021-04-27 00:30:00', b'0');  
852 -INSERT INTO `inf_job_log` VALUES (197, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-28 00:06:48', '2021-04-28 00:06:48', 29, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-28 00:06:48', NULL, '2021-04-28 00:06:48', b'0');  
853 -INSERT INTO `inf_job_log` VALUES (198, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-28 00:07:00', '2021-04-28 00:07:00', 11, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-28 00:07:00', NULL, '2021-04-28 00:07:00', b'0');  
854 -INSERT INTO `inf_job_log` VALUES (199, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-30 00:10:40', '2021-04-30 00:10:40', 39, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-30 00:10:40', NULL, '2021-04-30 00:10:40', b'0');  
855 -INSERT INTO `inf_job_log` VALUES (200, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-30 00:11:00', '2021-04-30 00:11:00', 8, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-30 00:11:00', NULL, '2021-04-30 00:11:00', b'0');  
856 -INSERT INTO `inf_job_log` VALUES (201, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-30 00:34:29', '2021-04-30 00:34:29', 35, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-30 00:34:29', NULL, '2021-04-30 00:34:29', b'0');  
857 -INSERT INTO `inf_job_log` VALUES (202, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-30 00:35:00', '2021-04-30 00:35:00', 9, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-30 00:35:00', NULL, '2021-04-30 00:35:00', b'0');  
858 -INSERT INTO `inf_job_log` VALUES (203, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-30 17:44:58', '2021-04-30 17:44:58', 76, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-30 17:44:58', NULL, '2021-04-30 17:44:58', b'0');  
859 -INSERT INTO `inf_job_log` VALUES (204, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-04-30 17:45:00', '2021-04-30 17:45:00', 16, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-04-30 17:45:00', NULL, '2021-04-30 17:45:00', b'0');  
860 -INSERT INTO `inf_job_log` VALUES (205, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-01 22:19:00', '2021-05-01 22:19:00', 49, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-01 22:19:00', NULL, '2021-05-01 22:19:00', b'0');  
861 -INSERT INTO `inf_job_log` VALUES (206, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-01 22:19:00', '2021-05-01 22:19:00', 9, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-01 22:19:00', NULL, '2021-05-01 22:19:00', b'0');  
862 -INSERT INTO `inf_job_log` VALUES (207, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-01 22:31:24', '2021-05-01 22:31:24', 44, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-01 22:31:24', NULL, '2021-05-01 22:31:24', b'0');  
863 -INSERT INTO `inf_job_log` VALUES (208, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-01 22:32:00', '2021-05-01 22:32:00', 11, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-01 22:32:00', NULL, '2021-05-01 22:32:00', b'0');  
864 -INSERT INTO `inf_job_log` VALUES (209, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-01 22:33:00', '2021-05-01 22:33:00', 13, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-01 22:33:00', NULL, '2021-05-01 22:33:00', b'0');  
865 -INSERT INTO `inf_job_log` VALUES (210, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-01 22:34:00', '2021-05-01 22:34:00', 16, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-01 22:34:00', NULL, '2021-05-01 22:34:00', b'0');  
866 -INSERT INTO `inf_job_log` VALUES (211, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-01 22:36:33', '2021-05-01 22:36:33', 49, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-01 22:36:33', NULL, '2021-05-01 22:36:33', b'0');  
867 -INSERT INTO `inf_job_log` VALUES (212, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-02 22:59:37', '2021-05-02 22:59:37', 48, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-02 22:59:37', NULL, '2021-05-02 22:59:37', b'0');  
868 -INSERT INTO `inf_job_log` VALUES (213, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-02 23:00:00', '2021-05-02 23:00:00', 10, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-02 23:00:00', NULL, '2021-05-02 23:00:00', b'0');  
869 -INSERT INTO `inf_job_log` VALUES (214, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-02 23:01:00', '2021-05-02 23:01:00', 9, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-02 23:01:00', NULL, '2021-05-02 23:01:00', b'0');  
870 -INSERT INTO `inf_job_log` VALUES (215, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-02 23:02:55', '2021-05-02 23:02:55', 42, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-02 23:02:55', NULL, '2021-05-02 23:02:55', b'0');  
871 -INSERT INTO `inf_job_log` VALUES (216, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-02 23:03:00', '2021-05-02 23:03:00', 11, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-02 23:03:00', NULL, '2021-05-02 23:03:00', b'0');  
872 -INSERT INTO `inf_job_log` VALUES (217, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-02 23:06:49', '2021-05-02 23:06:49', 41, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-02 23:06:49', NULL, '2021-05-02 23:06:49', b'0');  
873 -INSERT INTO `inf_job_log` VALUES (218, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-02 23:07:00', '2021-05-02 23:07:00', 10, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-02 23:07:00', NULL, '2021-05-02 23:07:00', b'0');  
874 -INSERT INTO `inf_job_log` VALUES (219, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-02 23:16:44', '2021-05-02 23:16:44', 47, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-02 23:16:44', NULL, '2021-05-02 23:16:44', b'0');  
875 -INSERT INTO `inf_job_log` VALUES (220, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-02 23:17:00', '2021-05-02 23:17:00', 11, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-02 23:17:00', NULL, '2021-05-02 23:17:00', b'0');  
876 -INSERT INTO `inf_job_log` VALUES (221, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-02 23:18:32', '2021-05-02 23:18:32', 44, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-02 23:18:32', NULL, '2021-05-02 23:18:32', b'0');  
877 -INSERT INTO `inf_job_log` VALUES (222, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-02 23:51:55', '2021-05-02 23:51:55', 83, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 1 个', NULL, '2021-05-02 23:51:55', NULL, '2021-05-02 23:51:55', b'0');  
878 -INSERT INTO `inf_job_log` VALUES (223, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-02 23:52:00', '2021-05-02 23:52:00', 7, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-02 23:52:00', NULL, '2021-05-02 23:52:00', b'0');  
879 -INSERT INTO `inf_job_log` VALUES (224, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-02 23:53:00', '2021-05-02 23:53:00', 10, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-02 23:53:00', NULL, '2021-05-02 23:53:00', b'0');  
880 -INSERT INTO `inf_job_log` VALUES (225, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-02 23:54:00', '2021-05-02 23:54:00', 9, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-02 23:54:00', NULL, '2021-05-02 23:54:00', b'0');  
881 -INSERT INTO `inf_job_log` VALUES (226, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-02 23:55:00', '2021-05-02 23:55:00', 10, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-02 23:55:00', NULL, '2021-05-02 23:55:00', b'0');  
882 -INSERT INTO `inf_job_log` VALUES (227, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-02 23:56:00', '2021-05-02 23:56:00', 7, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-02 23:56:00', NULL, '2021-05-02 23:56:00', b'0');  
883 -INSERT INTO `inf_job_log` VALUES (228, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-02 23:57:00', '2021-05-02 23:57:00', 7, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-02 23:57:00', NULL, '2021-05-02 23:57:00', b'0');  
884 -INSERT INTO `inf_job_log` VALUES (229, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-02 23:58:00', '2021-05-02 23:58:00', 8, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-02 23:58:00', NULL, '2021-05-02 23:58:00', b'0');  
885 -INSERT INTO `inf_job_log` VALUES (230, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 00:09:40', '2021-05-03 00:09:40', 40, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 00:09:40', NULL, '2021-05-03 00:09:40', b'0');  
886 -INSERT INTO `inf_job_log` VALUES (231, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 00:10:00', '2021-05-03 00:10:00', 10, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 00:10:00', NULL, '2021-05-03 00:10:00', b'0');  
887 -INSERT INTO `inf_job_log` VALUES (232, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 00:11:00', '2021-05-03 00:11:00', 6, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 00:11:00', NULL, '2021-05-03 00:11:00', b'0');  
888 -INSERT INTO `inf_job_log` VALUES (233, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 00:12:00', '2021-05-03 00:12:00', 12, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 00:12:00', NULL, '2021-05-03 00:12:00', b'0');  
889 -INSERT INTO `inf_job_log` VALUES (234, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 00:13:00', '2021-05-03 00:13:00', 6, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 00:13:00', NULL, '2021-05-03 00:13:00', b'0');  
890 -INSERT INTO `inf_job_log` VALUES (235, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 00:14:00', '2021-05-03 00:14:00', 7, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 00:14:00', NULL, '2021-05-03 00:14:00', b'0');  
891 -INSERT INTO `inf_job_log` VALUES (236, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 00:15:00', '2021-05-03 00:15:00', 10, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 00:15:00', NULL, '2021-05-03 00:15:00', b'0');  
892 -INSERT INTO `inf_job_log` VALUES (237, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 00:16:00', '2021-05-03 00:16:00', 9, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 00:16:00', NULL, '2021-05-03 00:16:00', b'0');  
893 -INSERT INTO `inf_job_log` VALUES (238, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 00:17:00', '2021-05-03 00:17:00', 8, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 00:17:00', NULL, '2021-05-03 00:17:00', b'0');  
894 -INSERT INTO `inf_job_log` VALUES (239, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 00:18:00', '2021-05-03 00:18:00', 8, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 00:18:00', NULL, '2021-05-03 00:18:00', b'0');  
895 -INSERT INTO `inf_job_log` VALUES (240, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 00:19:00', '2021-05-03 00:19:00', 7, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 00:19:00', NULL, '2021-05-03 00:19:00', b'0');  
896 -INSERT INTO `inf_job_log` VALUES (241, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 00:20:00', '2021-05-03 00:20:00', 6, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 00:20:00', NULL, '2021-05-03 00:20:00', b'0');  
897 -INSERT INTO `inf_job_log` VALUES (242, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 00:21:00', '2021-05-03 00:21:00', 9, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 00:21:00', NULL, '2021-05-03 00:21:00', b'0');  
898 -INSERT INTO `inf_job_log` VALUES (243, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 00:22:00', '2021-05-03 00:22:00', 10, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 00:22:00', NULL, '2021-05-03 00:22:00', b'0');  
899 -INSERT INTO `inf_job_log` VALUES (244, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 00:23:00', '2021-05-03 00:23:00', 11, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 00:23:00', NULL, '2021-05-03 00:23:00', b'0');  
900 -INSERT INTO `inf_job_log` VALUES (245, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 00:24:00', '2021-05-03 00:24:00', 9, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 00:24:00', NULL, '2021-05-03 00:24:00', b'0');  
901 -INSERT INTO `inf_job_log` VALUES (246, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 00:25:00', '2021-05-03 00:25:00', 7, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 00:25:00', NULL, '2021-05-03 00:25:00', b'0');  
902 -INSERT INTO `inf_job_log` VALUES (247, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 00:26:00', '2021-05-03 00:26:00', 7, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 00:26:00', NULL, '2021-05-03 00:26:00', b'0');  
903 -INSERT INTO `inf_job_log` VALUES (248, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 00:27:00', '2021-05-03 00:27:00', 6, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 00:27:00', NULL, '2021-05-03 00:27:00', b'0');  
904 -INSERT INTO `inf_job_log` VALUES (249, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 00:28:00', '2021-05-03 00:28:00', 7, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 00:28:00', NULL, '2021-05-03 00:28:00', b'0');  
905 -INSERT INTO `inf_job_log` VALUES (250, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 00:29:00', '2021-05-03 00:29:00', 8, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 00:29:00', NULL, '2021-05-03 00:29:00', b'0');  
906 -INSERT INTO `inf_job_log` VALUES (251, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 00:30:01', '2021-05-03 00:30:01', 5, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 00:30:01', NULL, '2021-05-03 00:30:01', b'0');  
907 -INSERT INTO `inf_job_log` VALUES (252, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 00:31:00', '2021-05-03 00:31:00', 5, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 00:31:00', NULL, '2021-05-03 00:31:00', b'0');  
908 -INSERT INTO `inf_job_log` VALUES (253, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 00:32:00', '2021-05-03 00:32:00', 7, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 00:32:00', NULL, '2021-05-03 00:32:00', b'0');  
909 -INSERT INTO `inf_job_log` VALUES (254, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 00:33:00', '2021-05-03 00:33:00', 5, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 00:33:00', NULL, '2021-05-03 00:33:00', b'0');  
910 -INSERT INTO `inf_job_log` VALUES (255, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 00:34:00', '2021-05-03 00:34:00', 5, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 00:34:00', NULL, '2021-05-03 00:34:00', b'0');  
911 -INSERT INTO `inf_job_log` VALUES (256, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 00:38:43', '2021-05-03 00:38:43', 63, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 00:38:43', NULL, '2021-05-03 00:38:43', b'0');  
912 -INSERT INTO `inf_job_log` VALUES (257, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 00:39:00', '2021-05-03 00:39:00', 9, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 00:39:00', NULL, '2021-05-03 00:39:00', b'0');  
913 -INSERT INTO `inf_job_log` VALUES (258, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 00:40:00', '2021-05-03 00:40:00', 9, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 00:40:00', NULL, '2021-05-03 00:40:00', b'0');  
914 -INSERT INTO `inf_job_log` VALUES (259, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 00:41:00', '2021-05-03 00:41:00', 9, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 00:41:00', NULL, '2021-05-03 00:41:00', b'0');  
915 -INSERT INTO `inf_job_log` VALUES (260, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 00:42:00', '2021-05-03 00:42:00', 9, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 00:42:00', NULL, '2021-05-03 00:42:00', b'0');  
916 -INSERT INTO `inf_job_log` VALUES (261, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 00:43:00', '2021-05-03 00:43:00', 12, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 00:43:00', NULL, '2021-05-03 00:43:00', b'0');  
917 -INSERT INTO `inf_job_log` VALUES (262, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 00:44:00', '2021-05-03 00:44:00', 8, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 00:44:00', NULL, '2021-05-03 00:44:00', b'0');  
918 -INSERT INTO `inf_job_log` VALUES (263, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 00:45:00', '2021-05-03 00:45:00', 8, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 00:45:00', NULL, '2021-05-03 00:45:00', b'0');  
919 -INSERT INTO `inf_job_log` VALUES (264, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 00:46:00', '2021-05-03 00:46:00', 10, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 00:46:00', NULL, '2021-05-03 00:46:00', b'0');  
920 -INSERT INTO `inf_job_log` VALUES (265, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 00:47:07', '2021-05-03 00:47:07', 32, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 00:47:07', NULL, '2021-05-03 00:47:07', b'0');  
921 -INSERT INTO `inf_job_log` VALUES (266, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 00:48:00', '2021-05-03 00:48:00', 11, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 00:48:00', NULL, '2021-05-03 00:48:00', b'0');  
922 -INSERT INTO `inf_job_log` VALUES (267, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 00:49:00', '2021-05-03 00:49:00', 8, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 00:49:00', NULL, '2021-05-03 00:49:00', b'0');  
923 -INSERT INTO `inf_job_log` VALUES (268, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 00:50:00', '2021-05-03 00:50:00', 8, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 00:50:00', NULL, '2021-05-03 00:50:00', b'0');  
924 -INSERT INTO `inf_job_log` VALUES (269, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 00:51:00', '2021-05-03 00:51:00', 7, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 00:51:00', NULL, '2021-05-03 00:51:00', b'0');  
925 -INSERT INTO `inf_job_log` VALUES (270, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 00:52:00', '2021-05-03 00:52:00', 8, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 00:52:00', NULL, '2021-05-03 00:52:00', b'0');  
926 -INSERT INTO `inf_job_log` VALUES (271, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 00:53:00', '2021-05-03 00:53:00', 10, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 00:53:00', NULL, '2021-05-03 00:53:00', b'0');  
927 -INSERT INTO `inf_job_log` VALUES (272, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 00:54:00', '2021-05-03 00:54:00', 8, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 00:54:00', NULL, '2021-05-03 00:54:00', b'0');  
928 -INSERT INTO `inf_job_log` VALUES (273, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 00:55:00', '2021-05-03 00:55:00', 7, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 00:55:00', NULL, '2021-05-03 00:55:00', b'0');  
929 -INSERT INTO `inf_job_log` VALUES (274, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 00:56:00', '2021-05-03 00:56:00', 6, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 00:56:00', NULL, '2021-05-03 00:56:00', b'0');  
930 -INSERT INTO `inf_job_log` VALUES (275, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 00:57:00', '2021-05-03 00:57:00', 6, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 00:57:00', NULL, '2021-05-03 00:57:00', b'0');  
931 -INSERT INTO `inf_job_log` VALUES (276, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 00:58:00', '2021-05-03 00:58:00', 7, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 00:58:00', NULL, '2021-05-03 00:58:00', b'0');  
932 -INSERT INTO `inf_job_log` VALUES (277, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 00:59:00', '2021-05-03 00:59:00', 7, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 00:59:00', NULL, '2021-05-03 00:59:00', b'0');  
933 -INSERT INTO `inf_job_log` VALUES (278, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 01:00:00', '2021-05-03 01:00:00', 8, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 01:00:00', NULL, '2021-05-03 01:00:00', b'0');  
934 -INSERT INTO `inf_job_log` VALUES (279, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 01:01:00', '2021-05-03 01:01:00', 6, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 01:01:00', NULL, '2021-05-03 01:01:00', b'0');  
935 -INSERT INTO `inf_job_log` VALUES (280, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 01:02:00', '2021-05-03 01:02:00', 6, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 01:02:00', NULL, '2021-05-03 01:02:00', b'0');  
936 -INSERT INTO `inf_job_log` VALUES (281, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 01:03:00', '2021-05-03 01:03:00', 8, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 01:03:00', NULL, '2021-05-03 01:03:00', b'0');  
937 -INSERT INTO `inf_job_log` VALUES (282, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 01:04:00', '2021-05-03 01:04:00', 7, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 01:04:00', NULL, '2021-05-03 01:04:00', b'0');  
938 -INSERT INTO `inf_job_log` VALUES (283, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 01:05:00', '2021-05-03 01:05:00', 7, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 01:05:00', NULL, '2021-05-03 01:05:00', b'0');  
939 -INSERT INTO `inf_job_log` VALUES (284, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 01:06:00', '2021-05-03 01:06:00', 7, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 01:06:00', NULL, '2021-05-03 01:06:00', b'0');  
940 -INSERT INTO `inf_job_log` VALUES (285, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 01:07:00', '2021-05-03 01:07:00', 6, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 01:07:00', NULL, '2021-05-03 01:07:00', b'0');  
941 -INSERT INTO `inf_job_log` VALUES (286, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 01:08:00', '2021-05-03 01:08:00', 6, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 01:08:00', NULL, '2021-05-03 01:08:00', b'0');  
942 -INSERT INTO `inf_job_log` VALUES (287, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 01:09:00', '2021-05-03 01:09:00', 6, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 01:09:00', NULL, '2021-05-03 01:09:00', b'0');  
943 -INSERT INTO `inf_job_log` VALUES (288, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 01:10:00', '2021-05-03 01:10:00', 30, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 1 个', NULL, '2021-05-03 01:10:00', NULL, '2021-05-03 01:10:00', b'0');  
944 -INSERT INTO `inf_job_log` VALUES (289, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 01:11:00', '2021-05-03 01:11:00', 5, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 01:11:00', NULL, '2021-05-03 01:11:00', b'0');  
945 -INSERT INTO `inf_job_log` VALUES (290, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 01:12:00', '2021-05-03 01:12:00', 5, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 01:12:00', NULL, '2021-05-03 01:12:00', b'0');  
946 -INSERT INTO `inf_job_log` VALUES (291, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 01:13:00', '2021-05-03 01:13:00', 5, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 01:13:00', NULL, '2021-05-03 01:13:00', b'0');  
947 -INSERT INTO `inf_job_log` VALUES (292, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 01:14:00', '2021-05-03 01:14:00', 8, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 01:14:00', NULL, '2021-05-03 01:14:00', b'0');  
948 -INSERT INTO `inf_job_log` VALUES (293, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 01:15:00', '2021-05-03 01:15:00', 7, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 01:15:00', NULL, '2021-05-03 01:15:00', b'0');  
949 -INSERT INTO `inf_job_log` VALUES (294, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 01:16:00', '2021-05-03 01:16:00', 6, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 01:16:00', NULL, '2021-05-03 01:16:00', b'0');  
950 -INSERT INTO `inf_job_log` VALUES (295, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 01:17:00', '2021-05-03 01:17:00', 35, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 01:17:00', NULL, '2021-05-03 01:17:00', b'0');  
951 -INSERT INTO `inf_job_log` VALUES (296, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 02:01:41', '2021-05-03 02:01:42', 905, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 1 个', NULL, '2021-05-03 02:01:41', NULL, '2021-05-03 02:01:42', b'0');  
952 -INSERT INTO `inf_job_log` VALUES (297, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 02:02:00', '2021-05-03 02:02:00', 15, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 02:02:00', NULL, '2021-05-03 02:02:00', b'0');  
953 -INSERT INTO `inf_job_log` VALUES (298, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 02:03:00', '2021-05-03 02:03:00', 12, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 02:03:00', NULL, '2021-05-03 02:03:00', b'0');  
954 -INSERT INTO `inf_job_log` VALUES (299, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 02:04:00', '2021-05-03 02:04:00', 8, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 02:04:00', NULL, '2021-05-03 02:04:00', b'0');  
955 -INSERT INTO `inf_job_log` VALUES (300, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 02:05:00', '2021-05-03 02:05:00', 10, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 02:05:00', NULL, '2021-05-03 02:05:00', b'0');  
956 -INSERT INTO `inf_job_log` VALUES (301, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 02:06:00', '2021-05-03 02:06:00', 9, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 02:06:00', NULL, '2021-05-03 02:06:00', b'0');  
957 -INSERT INTO `inf_job_log` VALUES (302, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 02:07:00', '2021-05-03 02:07:00', 11, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 02:07:00', NULL, '2021-05-03 02:07:00', b'0');  
958 -INSERT INTO `inf_job_log` VALUES (303, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 02:08:00', '2021-05-03 02:08:00', 14, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 02:08:00', NULL, '2021-05-03 02:08:00', b'0');  
959 -INSERT INTO `inf_job_log` VALUES (304, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 02:23:54', '2021-05-03 02:23:54', 35, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 02:23:54', NULL, '2021-05-03 02:23:54', b'0');  
960 -INSERT INTO `inf_job_log` VALUES (305, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 02:24:00', '2021-05-03 02:24:00', 8, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 02:24:00', NULL, '2021-05-03 02:24:00', b'0');  
961 -INSERT INTO `inf_job_log` VALUES (306, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 02:25:00', '2021-05-03 02:25:00', 10, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 02:25:00', NULL, '2021-05-03 02:25:00', b'0');  
962 -INSERT INTO `inf_job_log` VALUES (307, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 02:26:46', '2021-05-03 02:26:46', 10, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 02:26:46', NULL, '2021-05-03 02:26:46', b'0');  
963 -INSERT INTO `inf_job_log` VALUES (308, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 02:28:38', '2021-05-03 02:28:38', 40, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 02:28:38', NULL, '2021-05-03 02:28:38', b'0');  
964 -INSERT INTO `inf_job_log` VALUES (309, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 02:29:02', '2021-05-03 02:29:02', 9, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 02:29:02', NULL, '2021-05-03 02:29:02', b'0');  
965 -INSERT INTO `inf_job_log` VALUES (310, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 10:18:38', '2021-05-03 10:18:39', 138, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 1 个', NULL, '2021-05-03 10:18:38', NULL, '2021-05-03 10:18:39', b'0');  
966 -INSERT INTO `inf_job_log` VALUES (311, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 10:19:00', '2021-05-03 10:19:00', 11, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 10:19:00', NULL, '2021-05-03 10:19:00', b'0');  
967 -INSERT INTO `inf_job_log` VALUES (312, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 10:20:21', '2021-05-03 10:20:21', 57, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 10:20:21', NULL, '2021-05-03 10:20:21', b'0');  
968 -INSERT INTO `inf_job_log` VALUES (313, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 10:21:00', '2021-05-03 10:21:00', 11, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 10:21:00', NULL, '2021-05-03 10:21:00', b'0');  
969 -INSERT INTO `inf_job_log` VALUES (314, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 10:29:25', '2021-05-03 10:29:25', 36, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 10:29:25', NULL, '2021-05-03 10:29:25', b'0');  
970 -INSERT INTO `inf_job_log` VALUES (315, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 10:30:00', '2021-05-03 10:30:00', 11, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 10:30:00', NULL, '2021-05-03 10:30:00', b'0');  
971 -INSERT INTO `inf_job_log` VALUES (316, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 10:43:29', '2021-05-03 10:43:29', 46, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 10:43:29', NULL, '2021-05-03 10:43:29', b'0');  
972 -INSERT INTO `inf_job_log` VALUES (317, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 10:44:00', '2021-05-03 10:44:00', 8, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 10:44:00', NULL, '2021-05-03 10:44:00', b'0');  
973 -INSERT INTO `inf_job_log` VALUES (318, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 10:45:00', '2021-05-03 10:45:00', 10, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 10:45:00', NULL, '2021-05-03 10:45:00', b'0');  
974 -INSERT INTO `inf_job_log` VALUES (319, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 10:46:00', '2021-05-03 10:46:00', 10, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 10:46:00', NULL, '2021-05-03 10:46:00', b'0');  
975 -INSERT INTO `inf_job_log` VALUES (320, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 10:47:00', '2021-05-03 10:47:00', 9, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 10:47:00', NULL, '2021-05-03 10:47:00', b'0');  
976 -INSERT INTO `inf_job_log` VALUES (321, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 10:48:54', '2021-05-03 10:48:54', 36, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 10:48:54', NULL, '2021-05-03 10:48:54', b'0');  
977 -INSERT INTO `inf_job_log` VALUES (322, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 10:49:00', '2021-05-03 10:49:00', 10, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 10:49:00', NULL, '2021-05-03 10:49:00', b'0');  
978 -INSERT INTO `inf_job_log` VALUES (323, 3, 'sysUserSessionTimeoutJob', NULL, 1, '2021-05-03 10:50:00', '2021-05-03 10:50:00', 8, 1, 'ç§»é™¤åœ¨çº¿ä¼šè¯æ•°é‡ä¸º 0 个', NULL, '2021-05-03 10:50:00', NULL, '2021-05-03 10:50:00', b'0');  
979 COMMIT; 210 COMMIT;
980 211
981 -- ---------------------------- 212 -- ----------------------------
@@ -983,21 +214,21 @@ COMMIT; @@ -983,21 +214,21 @@ COMMIT;
983 -- ---------------------------- 214 -- ----------------------------
984 DROP TABLE IF EXISTS `sys_dept`; 215 DROP TABLE IF EXISTS `sys_dept`;
985 CREATE TABLE `sys_dept` ( 216 CREATE TABLE `sys_dept` (
986 - `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '部门id', 217 + `id` bigint NOT NULL AUTO_INCREMENT COMMENT '部门id',
987 `name` varchar(30) NOT NULL DEFAULT '' COMMENT '部门åç§°', 218 `name` varchar(30) NOT NULL DEFAULT '' COMMENT '部门åç§°',
988 - `parent_id` bigint(20) NOT NULL DEFAULT '0' COMMENT '父部门id',  
989 - `sort` int(4) NOT NULL DEFAULT '0' COMMENT '显示顺åº', 219 + `parent_id` bigint NOT NULL DEFAULT '0' COMMENT '父部门id',
  220 + `sort` int NOT NULL DEFAULT '0' COMMENT '显示顺åº',
990 `leader` varchar(20) DEFAULT NULL COMMENT '负责人', 221 `leader` varchar(20) DEFAULT NULL COMMENT '负责人',
991 `phone` varchar(11) DEFAULT NULL COMMENT 'è”系电è¯', 222 `phone` varchar(11) DEFAULT NULL COMMENT 'è”系电è¯',
992 `email` varchar(50) DEFAULT NULL COMMENT '邮箱', 223 `email` varchar(50) DEFAULT NULL COMMENT '邮箱',
993 - `status` tinyint(4) NOT NULL COMMENT '部门状æ€ï¼ˆ0正常 1åœç”¨ï¼‰', 224 + `status` tinyint NOT NULL COMMENT '部门状æ€ï¼ˆ0正常 1åœç”¨ï¼‰',
994 `creator` varchar(64) DEFAULT '' COMMENT '创建者', 225 `creator` varchar(64) DEFAULT '' COMMENT '创建者',
995 `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', 226 `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
996 `updater` varchar(64) DEFAULT '' COMMENT '更新者', 227 `updater` varchar(64) DEFAULT '' COMMENT '更新者',
997 `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'æ›´æ–°æ—¶é—´', 228 `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'æ›´æ–°æ—¶é—´',
998 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是å¦åˆ é™¤', 229 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是å¦åˆ é™¤',
999 PRIMARY KEY (`id`) USING BTREE 230 PRIMARY KEY (`id`) USING BTREE
1000 -) ENGINE=InnoDB AUTO_INCREMENT=110 DEFAULT CHARSET=utf8mb4 COMMENT='部门表'; 231 +) ENGINE=InnoDB AUTO_INCREMENT=110 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='部门表';
1001 232
1002 -- ---------------------------- 233 -- ----------------------------
1003 -- Records of sys_dept 234 -- Records of sys_dept
@@ -1020,12 +251,12 @@ COMMIT; @@ -1020,12 +251,12 @@ COMMIT;
1020 -- ---------------------------- 251 -- ----------------------------
1021 DROP TABLE IF EXISTS `sys_dict_data`; 252 DROP TABLE IF EXISTS `sys_dict_data`;
1022 CREATE TABLE `sys_dict_data` ( 253 CREATE TABLE `sys_dict_data` (
1023 - `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '字典编ç ',  
1024 - `sort` int(4) NOT NULL DEFAULT '0' COMMENT '字典排åº', 254 + `id` bigint NOT NULL AUTO_INCREMENT COMMENT '字典编ç ',
  255 + `sort` int NOT NULL DEFAULT '0' COMMENT '字典排åº',
1025 `label` varchar(100) NOT NULL DEFAULT '' COMMENT '字典标签', 256 `label` varchar(100) NOT NULL DEFAULT '' COMMENT '字典标签',
1026 `value` varchar(100) NOT NULL DEFAULT '' COMMENT '字典键值', 257 `value` varchar(100) NOT NULL DEFAULT '' COMMENT '字典键值',
1027 `dict_type` varchar(100) NOT NULL DEFAULT '' COMMENT '字典类型', 258 `dict_type` varchar(100) NOT NULL DEFAULT '' COMMENT '字典类型',
1028 - `status` tinyint(4) NOT NULL DEFAULT '0' COMMENT '状æ€ï¼ˆ0正常 1åœç”¨ï¼‰', 259 + `status` tinyint NOT NULL DEFAULT '0' COMMENT '状æ€ï¼ˆ0正常 1åœç”¨ï¼‰',
1029 `remark` varchar(500) DEFAULT NULL COMMENT '备注', 260 `remark` varchar(500) DEFAULT NULL COMMENT '备注',
1030 `creator` varchar(64) DEFAULT '' COMMENT '创建者', 261 `creator` varchar(64) DEFAULT '' COMMENT '创建者',
1031 `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', 262 `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
@@ -1033,7 +264,7 @@ CREATE TABLE `sys_dict_data` ( @@ -1033,7 +264,7 @@ CREATE TABLE `sys_dict_data` (
1033 `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'æ›´æ–°æ—¶é—´', 264 `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'æ›´æ–°æ—¶é—´',
1034 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是å¦åˆ é™¤', 265 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是å¦åˆ é™¤',
1035 PRIMARY KEY (`id`) USING BTREE 266 PRIMARY KEY (`id`) USING BTREE
1036 -) ENGINE=InnoDB AUTO_INCREMENT=80 DEFAULT CHARSET=utf8mb4 COMMENT='字典数æ®è¡¨'; 267 +) ENGINE=InnoDB AUTO_INCREMENT=86 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='字典数æ®è¡¨';
1037 268
1038 -- ---------------------------- 269 -- ----------------------------
1039 -- Records of sys_dict_data 270 -- Records of sys_dict_data
@@ -1068,12 +299,12 @@ INSERT INTO `sys_dict_data` VALUES (35, 2, &#39;æŒ‡å®šéƒ¨é—¨æ•°æ®æƒé™&#39;, &#39;2&#39;, &#39;sys @@ -1068,12 +299,12 @@ INSERT INTO `sys_dict_data` VALUES (35, 2, &#39;æŒ‡å®šéƒ¨é—¨æ•°æ®æƒé™&#39;, &#39;2&#39;, &#39;sys
1068 INSERT INTO `sys_dict_data` VALUES (36, 3, 'æœ¬éƒ¨é—¨æ•°æ®æƒé™', '3', 'sys_data_scope', 0, 'æœ¬éƒ¨é—¨æ•°æ®æƒé™', 'admin', '2021-01-05 17:03:48', '', '2021-01-06 19:38:29', b'0'); 299 INSERT INTO `sys_dict_data` VALUES (36, 3, 'æœ¬éƒ¨é—¨æ•°æ®æƒé™', '3', 'sys_data_scope', 0, 'æœ¬éƒ¨é—¨æ•°æ®æƒé™', 'admin', '2021-01-05 17:03:48', '', '2021-01-06 19:38:29', b'0');
1069 INSERT INTO `sys_dict_data` VALUES (37, 4, '本部门åŠä»¥ä¸‹æ•°æ®æƒé™', '4', 'sys_data_scope', 0, '本部门åŠä»¥ä¸‹æ•°æ®æƒé™', 'admin', '2021-01-05 17:03:48', '', '2021-01-06 19:38:32', b'0'); 300 INSERT INTO `sys_dict_data` VALUES (37, 4, '本部门åŠä»¥ä¸‹æ•°æ®æƒé™', '4', 'sys_data_scope', 0, '本部门åŠä»¥ä¸‹æ•°æ®æƒé™', 'admin', '2021-01-05 17:03:48', '', '2021-01-06 19:38:32', b'0');
1070 INSERT INTO `sys_dict_data` VALUES (38, 5, 'ä»…æœ¬äººæ•°æ®æƒé™', '5', 'sys_data_scope', 0, 'ä»…æœ¬äººæ•°æ®æƒé™', 'admin', '2021-01-05 17:03:48', '', '2021-01-06 19:38:38', b'0'); 301 INSERT INTO `sys_dict_data` VALUES (38, 5, 'ä»…æœ¬äººæ•°æ®æƒé™', '5', 'sys_data_scope', 0, 'ä»…æœ¬äººæ•°æ®æƒé™', 'admin', '2021-01-05 17:03:48', '', '2021-01-06 19:38:38', b'0');
1071 -INSERT INTO `sys_dict_data` VALUES (39, 0, 'æˆåŠŸ', '0', 'sys_login_result', 0, '登陆结果 - æˆåŠŸ', '', '2021-01-18 06:17:36', '', '2021-01-18 06:17:36', b'0');  
1072 -INSERT INTO `sys_dict_data` VALUES (40, 10, 'è´¦å·æˆ–密ç ä¸æ­£ç¡®', '10', 'sys_login_result', 0, '登陆结果 - è´¦å·æˆ–密ç ä¸æ­£ç¡®', '', '2021-01-18 06:17:54', '', '2021-01-18 06:17:54', b'0');  
1073 -INSERT INTO `sys_dict_data` VALUES (41, 20, '用户被ç¦ç”¨', '20', 'sys_login_result', 0, '登陆结果 - 用户被ç¦ç”¨', '', '2021-01-18 06:17:54', '', '2021-01-18 06:19:02', b'0');  
1074 -INSERT INTO `sys_dict_data` VALUES (42, 30, '验è¯ç ä¸å­˜åœ¨', '30', 'sys_login_result', 0, '登陆结果 - 验è¯ç ä¸å­˜åœ¨', '', '2021-01-18 06:17:54', '', '2021-01-18 06:19:24', b'0');  
1075 -INSERT INTO `sys_dict_data` VALUES (43, 31, '验è¯ç ä¸æ­£ç¡®', '31', 'sys_login_result', 0, '登陆结果 - 验è¯ç ä¸æ­£ç¡®', '', '2021-01-18 06:17:54', '', '2021-01-18 06:19:33', b'0');  
1076 -INSERT INTO `sys_dict_data` VALUES (44, 100, '未知异常', '100', 'sys_login_result', 0, '登陆结果 - 未知异常', '', '2021-01-18 06:17:54', '', '2021-01-18 06:19:57', b'0'); 302 +INSERT INTO `sys_dict_data` VALUES (39, 0, 'æˆåŠŸ', '0', 'sys_login_result', 0, '登录结果 - æˆåŠŸ', '', '2021-01-18 06:17:36', '', '2021-01-18 06:17:36', b'0');
  303 +INSERT INTO `sys_dict_data` VALUES (40, 10, 'è´¦å·æˆ–密ç ä¸æ­£ç¡®', '10', 'sys_login_result', 0, '登录结果 - è´¦å·æˆ–密ç ä¸æ­£ç¡®', '', '2021-01-18 06:17:54', '', '2021-01-18 06:17:54', b'0');
  304 +INSERT INTO `sys_dict_data` VALUES (41, 20, '用户被ç¦ç”¨', '20', 'sys_login_result', 0, '登录结果 - 用户被ç¦ç”¨', '', '2021-01-18 06:17:54', '', '2021-01-18 06:19:02', b'0');
  305 +INSERT INTO `sys_dict_data` VALUES (42, 30, '验è¯ç ä¸å­˜åœ¨', '30', 'sys_login_result', 0, '登录结果 - 验è¯ç ä¸å­˜åœ¨', '', '2021-01-18 06:17:54', '', '2021-01-18 06:19:24', b'0');
  306 +INSERT INTO `sys_dict_data` VALUES (43, 31, '验è¯ç ä¸æ­£ç¡®', '31', 'sys_login_result', 0, '登录结果 - 验è¯ç ä¸æ­£ç¡®', '', '2021-01-18 06:17:54', '', '2021-01-18 06:19:33', b'0');
  307 +INSERT INTO `sys_dict_data` VALUES (44, 100, '未知异常', '100', 'sys_login_result', 0, '登录结果 - 未知异常', '', '2021-01-18 06:17:54', '', '2021-01-18 06:19:57', b'0');
1077 INSERT INTO `sys_dict_data` VALUES (45, 1, '是', 'true', 'sys_boolean_string', 0, 'Boolean 是å¦ç±»åž‹ - 是', '', '2021-01-19 03:20:55', '', '2021-01-19 03:21:08', b'0'); 308 INSERT INTO `sys_dict_data` VALUES (45, 1, '是', 'true', 'sys_boolean_string', 0, 'Boolean 是å¦ç±»åž‹ - 是', '', '2021-01-19 03:20:55', '', '2021-01-19 03:21:08', b'0');
1078 INSERT INTO `sys_dict_data` VALUES (46, 1, 'å¦', 'false', 'sys_boolean_string', 0, 'Boolean 是å¦ç±»åž‹ - å¦', '', '2021-01-19 03:20:55', '', '2021-01-19 03:21:39', b'0'); 309 INSERT INTO `sys_dict_data` VALUES (46, 1, 'å¦', 'false', 'sys_boolean_string', 0, 'Boolean 是å¦ç±»åž‹ - å¦', '', '2021-01-19 03:20:55', '', '2021-01-19 03:21:39', b'0');
1079 INSERT INTO `sys_dict_data` VALUES (47, 1, 'æ°¸ä¸è¶…æ—¶', '1', 'inf_redis_timeout_type', 0, 'Redis 未设置超时的情况', '', '2021-01-26 00:53:17', '', '2021-01-26 00:53:17', b'0'); 310 INSERT INTO `sys_dict_data` VALUES (47, 1, 'æ°¸ä¸è¶…æ—¶', '1', 'inf_redis_timeout_type', 0, 'Redis 未设置超时的情况', '', '2021-01-26 00:53:17', '', '2021-01-26 00:53:17', b'0');
@@ -1108,6 +339,12 @@ INSERT INTO `sys_dict_data` VALUES (76, 2, &#39;接收失败&#39;, &#39;20&#39;, &#39;sys_sms_receiv @@ -1108,6 +339,12 @@ INSERT INTO `sys_dict_data` VALUES (76, 2, &#39;接收失败&#39;, &#39;20&#39;, &#39;sys_sms_receiv
1108 INSERT INTO `sys_dict_data` VALUES (77, 0, '调试(钉钉)', 'DEBUG_DING_TALK', 'sys_sms_channel_code', 0, NULL, '1', '2021-04-13 00:20:37', '1', '2021-04-13 00:20:37', b'0'); 339 INSERT INTO `sys_dict_data` VALUES (77, 0, '调试(钉钉)', 'DEBUG_DING_TALK', 'sys_sms_channel_code', 0, NULL, '1', '2021-04-13 00:20:37', '1', '2021-04-13 00:20:37', b'0');
1109 INSERT INTO `sys_dict_data` VALUES (78, 1, '自动生æˆ', '1', 'sys_error_code_type', 0, NULL, '1', '2021-04-21 00:06:48', '1', '2021-04-13 22:06:44', b'0'); 340 INSERT INTO `sys_dict_data` VALUES (78, 1, '自动生æˆ', '1', 'sys_error_code_type', 0, NULL, '1', '2021-04-21 00:06:48', '1', '2021-04-13 22:06:44', b'0');
1110 INSERT INTO `sys_dict_data` VALUES (79, 2, '手动编辑', '2', 'sys_error_code_type', 0, NULL, '1', '2021-04-21 00:07:14', '1', '2021-04-13 22:06:49', b'0'); 341 INSERT INTO `sys_dict_data` VALUES (79, 2, '手动编辑', '2', 'sys_error_code_type', 0, NULL, '1', '2021-04-21 00:07:14', '1', '2021-04-13 22:06:49', b'0');
  342 +INSERT INTO `sys_dict_data` VALUES (80, 100, 'è´¦å·ç™»å½•', '100', 'sys_login_type', 0, 'è´¦å·ç™»å½•', '1', '2021-10-06 00:52:02', '1', '2021-10-06 00:52:43', b'0');
  343 +INSERT INTO `sys_dict_data` VALUES (81, 101, '社交登录', '101', 'sys_login_type', 0, '社交登录', '1', '2021-10-06 00:52:17', '1', '2021-10-06 00:52:17', b'0');
  344 +INSERT INTO `sys_dict_data` VALUES (82, 102, 'Mock 登录', '102', 'sys_login_type', 0, 'Mock 登录', '1', '2021-10-06 00:52:32', '1', '2021-10-06 00:52:39', b'0');
  345 +INSERT INTO `sys_dict_data` VALUES (83, 200, '主动登出', '200', 'sys_login_type', 0, '主动登出', '1', '2021-10-06 00:52:58', '1', '2021-10-06 00:52:58', b'0');
  346 +INSERT INTO `sys_dict_data` VALUES (84, 201, '超时登出', '201', 'sys_login_type', 0, '超时登出', '1', '2021-10-06 00:53:17', '1', '2021-10-06 00:53:17', b'0');
  347 +INSERT INTO `sys_dict_data` VALUES (85, 202, '强制登出', '202', 'sys_login_type', 0, '强制退出', '1', '2021-10-06 00:53:41', '1', '2021-10-06 00:53:41', b'0');
1111 COMMIT; 348 COMMIT;
1112 349
1113 -- ---------------------------- 350 -- ----------------------------
@@ -1115,10 +352,10 @@ COMMIT; @@ -1115,10 +352,10 @@ COMMIT;
1115 -- ---------------------------- 352 -- ----------------------------
1116 DROP TABLE IF EXISTS `sys_dict_type`; 353 DROP TABLE IF EXISTS `sys_dict_type`;
1117 CREATE TABLE `sys_dict_type` ( 354 CREATE TABLE `sys_dict_type` (
1118 - `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '字典主键', 355 + `id` bigint NOT NULL AUTO_INCREMENT COMMENT '字典主键',
1119 `name` varchar(100) NOT NULL DEFAULT '' COMMENT 'å­—å…¸åç§°', 356 `name` varchar(100) NOT NULL DEFAULT '' COMMENT 'å­—å…¸åç§°',
1120 `type` varchar(100) NOT NULL DEFAULT '' COMMENT '字典类型', 357 `type` varchar(100) NOT NULL DEFAULT '' COMMENT '字典类型',
1121 - `status` tinyint(4) NOT NULL DEFAULT '0' COMMENT '状æ€ï¼ˆ0正常 1åœç”¨ï¼‰', 358 + `status` tinyint NOT NULL DEFAULT '0' COMMENT '状æ€ï¼ˆ0正常 1åœç”¨ï¼‰',
1122 `remark` varchar(500) DEFAULT NULL COMMENT '备注', 359 `remark` varchar(500) DEFAULT NULL COMMENT '备注',
1123 `creator` varchar(64) DEFAULT '' COMMENT '创建者', 360 `creator` varchar(64) DEFAULT '' COMMENT '创建者',
1124 `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', 361 `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
@@ -1127,7 +364,7 @@ CREATE TABLE `sys_dict_type` ( @@ -1127,7 +364,7 @@ CREATE TABLE `sys_dict_type` (
1127 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是å¦åˆ é™¤', 364 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是å¦åˆ é™¤',
1128 PRIMARY KEY (`id`) USING BTREE, 365 PRIMARY KEY (`id`) USING BTREE,
1129 UNIQUE KEY `dict_type` (`type`) 366 UNIQUE KEY `dict_type` (`type`)
1130 -) ENGINE=InnoDB AUTO_INCREMENT=116 DEFAULT CHARSET=utf8mb4 COMMENT='字典类型表'; 367 +) ENGINE=InnoDB AUTO_INCREMENT=117 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='字典类型表';
1131 368
1132 -- ---------------------------- 369 -- ----------------------------
1133 -- Records of sys_dict_type 370 -- Records of sys_dict_type
@@ -1143,7 +380,7 @@ INSERT INTO `sys_dict_type` VALUES (8, &#39;通知状æ€&#39;, &#39;sys_notice_status&#39;, 0, N @@ -1143,7 +380,7 @@ INSERT INTO `sys_dict_type` VALUES (8, &#39;通知状æ€&#39;, &#39;sys_notice_status&#39;, 0, N
1143 INSERT INTO `sys_dict_type` VALUES (9, 'æ“作类型', 'sys_oper_type', 0, NULL, 'admin', '2021-01-05 17:03:48', '', '2021-01-05 17:03:48', b'0'); 380 INSERT INTO `sys_dict_type` VALUES (9, 'æ“作类型', 'sys_oper_type', 0, NULL, 'admin', '2021-01-05 17:03:48', '', '2021-01-05 17:03:48', b'0');
1144 INSERT INTO `sys_dict_type` VALUES (10, '系统状æ€', 'sys_common_status', 0, NULL, 'admin', '2021-01-05 17:03:48', '', '2021-01-05 17:03:48', b'0'); 381 INSERT INTO `sys_dict_type` VALUES (10, '系统状æ€', 'sys_common_status', 0, NULL, 'admin', '2021-01-05 17:03:48', '', '2021-01-05 17:03:48', b'0');
1145 INSERT INTO `sys_dict_type` VALUES (11, 'Boolean 是å¦ç±»åž‹', 'sys_boolean_string', 0, 'boolean 转是å¦', '', '2021-01-19 03:20:08', '', '2021-01-19 03:20:08', b'0'); 382 INSERT INTO `sys_dict_type` VALUES (11, 'Boolean 是å¦ç±»åž‹', 'sys_boolean_string', 0, 'boolean 转是å¦', '', '2021-01-19 03:20:08', '', '2021-01-19 03:20:08', b'0');
1146 -INSERT INTO `sys_dict_type` VALUES (104, '登陆结果', 'sys_login_result', 0, '登陆结果', '', '2021-01-18 06:17:11', '', '2021-01-18 06:17:11', b'0'); 383 +INSERT INTO `sys_dict_type` VALUES (104, '登录结果', 'sys_login_result', 0, '登录结果', '', '2021-01-18 06:17:11', '', '2021-01-18 06:17:11', b'0');
1147 INSERT INTO `sys_dict_type` VALUES (105, 'Redis 超时类型', 'inf_redis_timeout_type', 0, 'RedisKeyDefine.TimeoutTypeEnum', '', '2021-01-26 00:52:50', '', '2021-01-26 00:52:50', b'0'); 384 INSERT INTO `sys_dict_type` VALUES (105, 'Redis 超时类型', 'inf_redis_timeout_type', 0, 'RedisKeyDefine.TimeoutTypeEnum', '', '2021-01-26 00:52:50', '', '2021-01-26 00:52:50', b'0');
1148 INSERT INTO `sys_dict_type` VALUES (106, '代ç ç”Ÿæˆæ¨¡æ¿ç±»åž‹', 'tool_codegen_template_type', 0, NULL, '', '2021-02-05 07:08:06', '', '2021-02-05 07:08:06', b'0'); 385 INSERT INTO `sys_dict_type` VALUES (106, '代ç ç”Ÿæˆæ¨¡æ¿ç±»åž‹', 'tool_codegen_template_type', 0, NULL, '', '2021-02-05 07:08:06', '', '2021-02-05 07:08:06', b'0');
1149 INSERT INTO `sys_dict_type` VALUES (107, '定时任务状æ€', 'inf_job_status', 0, NULL, '', '2021-02-07 07:44:16', '', '2021-02-07 07:44:16', b'0'); 386 INSERT INTO `sys_dict_type` VALUES (107, '定时任务状æ€', 'inf_job_status', 0, NULL, '', '2021-02-07 07:44:16', '', '2021-02-07 07:44:16', b'0');
@@ -1155,6 +392,7 @@ INSERT INTO `sys_dict_type` VALUES (112, &#39;短信模æ¿çš„类型&#39;, &#39;sys_sms_templ @@ -1155,6 +392,7 @@ INSERT INTO `sys_dict_type` VALUES (112, &#39;短信模æ¿çš„类型&#39;, &#39;sys_sms_templ
1155 INSERT INTO `sys_dict_type` VALUES (113, '短信å‘é€çжæ€', 'sys_sms_send_status', 0, NULL, '1', '2021-04-11 20:18:03', '1', '2021-04-11 09:30:02', b'0'); 392 INSERT INTO `sys_dict_type` VALUES (113, '短信å‘é€çжæ€', 'sys_sms_send_status', 0, NULL, '1', '2021-04-11 20:18:03', '1', '2021-04-11 09:30:02', b'0');
1156 INSERT INTO `sys_dict_type` VALUES (114, '短信接收状æ€', 'sys_sms_receive_status', 0, NULL, '1', '2021-04-11 20:27:14', '1', '2021-04-11 20:27:14', b'0'); 393 INSERT INTO `sys_dict_type` VALUES (114, '短信接收状æ€', 'sys_sms_receive_status', 0, NULL, '1', '2021-04-11 20:27:14', '1', '2021-04-11 20:27:14', b'0');
1157 INSERT INTO `sys_dict_type` VALUES (115, '错误ç çš„类型', 'sys_error_code_type', 0, NULL, '1', '2021-04-21 00:06:30', '1', '2021-04-13 22:07:12', b'0'); 394 INSERT INTO `sys_dict_type` VALUES (115, '错误ç çš„类型', 'sys_error_code_type', 0, NULL, '1', '2021-04-21 00:06:30', '1', '2021-04-13 22:07:12', b'0');
  395 +INSERT INTO `sys_dict_type` VALUES (116, '登录日志的类型', 'sys_login_type', 0, '登录日志的类型', '1', '2021-10-06 00:50:46', '1', '2021-10-06 00:50:46', b'0');
1158 COMMIT; 396 COMMIT;
1159 397
1160 -- ---------------------------- 398 -- ----------------------------
@@ -1162,10 +400,10 @@ COMMIT; @@ -1162,10 +400,10 @@ COMMIT;
1162 -- ---------------------------- 400 -- ----------------------------
1163 DROP TABLE IF EXISTS `sys_error_code`; 401 DROP TABLE IF EXISTS `sys_error_code`;
1164 CREATE TABLE `sys_error_code` ( 402 CREATE TABLE `sys_error_code` (
1165 - `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '错误ç ç¼–å·',  
1166 - `type` tinyint(4) NOT NULL DEFAULT '0' COMMENT '错误ç ç±»åž‹', 403 + `id` bigint NOT NULL AUTO_INCREMENT COMMENT '错误ç ç¼–å·',
  404 + `type` tinyint NOT NULL DEFAULT '0' COMMENT '错误ç ç±»åž‹',
1167 `application_name` varchar(50) NOT NULL COMMENT '应用å', 405 `application_name` varchar(50) NOT NULL COMMENT '应用å',
1168 - `code` int(11) NOT NULL DEFAULT '0' COMMENT '错误ç ç¼–ç ', 406 + `code` int NOT NULL DEFAULT '0' COMMENT '错误ç ç¼–ç ',
1169 `message` varchar(512) NOT NULL DEFAULT '' COMMENT '错误ç é”™è¯¯æç¤º', 407 `message` varchar(512) NOT NULL DEFAULT '' COMMENT '错误ç é”™è¯¯æç¤º',
1170 `memo` varchar(512) DEFAULT '' COMMENT '备注', 408 `memo` varchar(512) DEFAULT '' COMMENT '备注',
1171 `creator` varchar(64) DEFAULT '' COMMENT '创建者', 409 `creator` varchar(64) DEFAULT '' COMMENT '创建者',
@@ -1174,7 +412,7 @@ CREATE TABLE `sys_error_code` ( @@ -1174,7 +412,7 @@ CREATE TABLE `sys_error_code` (
1174 `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'æ›´æ–°æ—¶é—´', 412 `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'æ›´æ–°æ—¶é—´',
1175 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是å¦åˆ é™¤', 413 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是å¦åˆ é™¤',
1176 PRIMARY KEY (`id`) USING BTREE 414 PRIMARY KEY (`id`) USING BTREE
1177 -) ENGINE=InnoDB AUTO_INCREMENT=4016 DEFAULT CHARSET=utf8mb4 COMMENT='错误ç è¡¨'; 415 +) ENGINE=InnoDB AUTO_INCREMENT=4019 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='错误ç è¡¨';
1178 416
1179 -- ---------------------------- 417 -- ----------------------------
1180 -- Records of sys_error_code 418 -- Records of sys_error_code
@@ -1257,6 +495,9 @@ INSERT INTO `sys_error_code` VALUES (4012, 2, &#39;dashboard&#39;, 1201002000, &#39;å•¦å•¦å• @@ -1257,6 +495,9 @@ INSERT INTO `sys_error_code` VALUES (4012, 2, &#39;dashboard&#39;, 1201002000, &#39;啦啦å•
1257 INSERT INTO `sys_error_code` VALUES (4013, 1, 'dashboard', 1001002000, 'API 错误日志ä¸å­˜åœ¨', '', NULL, '2021-04-21 23:48:44', NULL, '2021-04-21 23:48:44', b'0'); 495 INSERT INTO `sys_error_code` VALUES (4013, 1, 'dashboard', 1001002000, 'API 错误日志ä¸å­˜åœ¨', '', NULL, '2021-04-21 23:48:44', NULL, '2021-04-21 23:48:44', b'0');
1258 INSERT INTO `sys_error_code` VALUES (4014, 1, 'dashboard', 1002013000, '错误ç ä¸å­˜åœ¨', '', NULL, '2021-04-22 00:04:06', NULL, '2021-04-22 00:04:06', b'0'); 496 INSERT INTO `sys_error_code` VALUES (4014, 1, 'dashboard', 1002013000, '错误ç ä¸å­˜åœ¨', '', NULL, '2021-04-22 00:04:06', NULL, '2021-04-22 00:04:06', b'0');
1259 INSERT INTO `sys_error_code` VALUES (4015, 1, 'dashboard', 1002013001, 'å·²ç»å­˜åœ¨ç¼–ç ä¸ºã€{}】的错误ç ', '', NULL, '2021-04-22 00:04:06', NULL, '2021-04-22 00:04:06', b'0'); 497 INSERT INTO `sys_error_code` VALUES (4015, 1, 'dashboard', 1002013001, 'å·²ç»å­˜åœ¨ç¼–ç ä¸ºã€{}】的错误ç ', '', NULL, '2021-04-22 00:04:06', NULL, '2021-04-22 00:04:06', b'0');
  498 +INSERT INTO `sys_error_code` VALUES (4016, 1, 'yudao-admin-server', 1002000005, '未绑定账å·ï¼Œéœ€è¦è¿›è¡Œç»‘定', '', NULL, '2021-10-02 22:14:57', NULL, '2021-10-02 22:14:57', b'0');
  499 +INSERT INTO `sys_error_code` VALUES (4017, 1, 'yudao-admin-server', 1002000006, '三方授æƒå¤±è´¥ï¼ŒåŽŸå› æ˜¯ï¼š{}', '', NULL, '2021-10-02 22:14:57', NULL, '2021-10-02 22:14:57', b'0');
  500 +INSERT INTO `sys_error_code` VALUES (4018, 1, 'yudao-admin-server', 1002014000, '社交授æƒå¤±è´¥ï¼ŒåŽŸå› æ˜¯ï¼š{}', '', NULL, '2021-10-05 23:23:10', NULL, '2021-10-05 23:23:10', b'0');
1260 COMMIT; 501 COMMIT;
1261 502
1262 -- ---------------------------- 503 -- ----------------------------
@@ -1264,11 +505,13 @@ COMMIT; @@ -1264,11 +505,13 @@ COMMIT;
1264 -- ---------------------------- 505 -- ----------------------------
1265 DROP TABLE IF EXISTS `sys_login_log`; 506 DROP TABLE IF EXISTS `sys_login_log`;
1266 CREATE TABLE `sys_login_log` ( 507 CREATE TABLE `sys_login_log` (
1267 - `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '访问ID',  
1268 - `log_type` bigint(4) NOT NULL COMMENT '日志类型', 508 + `id` bigint NOT NULL AUTO_INCREMENT COMMENT '访问ID',
  509 + `log_type` bigint NOT NULL COMMENT '日志类型',
1269 `trace_id` varchar(64) NOT NULL DEFAULT '' COMMENT '链路追踪编å·', 510 `trace_id` varchar(64) NOT NULL DEFAULT '' COMMENT '链路追踪编å·',
  511 + `user_id` bigint NOT NULL DEFAULT '0' COMMENT '用户编å·',
  512 + `user_type` tinyint NOT NULL DEFAULT '0' COMMENT '用户类型',
1270 `username` varchar(50) NOT NULL DEFAULT '' COMMENT '用户账å·', 513 `username` varchar(50) NOT NULL DEFAULT '' COMMENT '用户账å·',
1271 - `result` tinyint(4) NOT NULL COMMENT '登陆结果', 514 + `result` tinyint NOT NULL COMMENT '登录结果',
1272 `user_ip` varchar(50) NOT NULL COMMENT '用户 IP', 515 `user_ip` varchar(50) NOT NULL COMMENT '用户 IP',
1273 `user_agent` varchar(512) NOT NULL COMMENT 'æµè§ˆå™¨ UA', 516 `user_agent` varchar(512) NOT NULL COMMENT 'æµè§ˆå™¨ UA',
1274 `creator` varchar(64) DEFAULT '' COMMENT '创建者', 517 `creator` varchar(64) DEFAULT '' COMMENT '创建者',
@@ -1277,53 +520,12 @@ CREATE TABLE `sys_login_log` ( @@ -1277,53 +520,12 @@ CREATE TABLE `sys_login_log` (
1277 `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'æ›´æ–°æ—¶é—´', 520 `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'æ›´æ–°æ—¶é—´',
1278 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是å¦åˆ é™¤', 521 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是å¦åˆ é™¤',
1279 PRIMARY KEY (`id`) USING BTREE 522 PRIMARY KEY (`id`) USING BTREE
1280 -) ENGINE=InnoDB AUTO_INCREMENT=42 DEFAULT CHARSET=utf8mb4 COMMENT='系统访问记录'; 523 +) ENGINE=InnoDB AUTO_INCREMENT=108 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='系统访问记录';
1281 524
1282 -- ---------------------------- 525 -- ----------------------------
1283 -- Records of sys_login_log 526 -- Records of sys_login_log
1284 -- ---------------------------- 527 -- ----------------------------
1285 BEGIN; 528 BEGIN;
1286 -INSERT INTO `sys_login_log` VALUES (1, 201, '', 'admin', 0, '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-25 23:49:09', NULL, '2021-04-25 23:49:09', b'0');  
1287 -INSERT INTO `sys_login_log` VALUES (2, 100, '1dd549318d6740a8bdc3fcdbd9158378.222.16193666402630005', 'admin', 0, '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-26 00:04:01', NULL, '2021-04-26 00:04:01', b'0');  
1288 -INSERT INTO `sys_login_log` VALUES (3, 200, '4d04e567c10d4d47b5617eb4410cb779.211.16193673645730003', '', 0, '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-26 00:16:05', NULL, '2021-04-26 00:16:05', b'0');  
1289 -INSERT INTO `sys_login_log` VALUES (4, 100, '4d04e567c10d4d47b5617eb4410cb779.216.16193673744440005', 'admin', 0, '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-26 00:16:15', NULL, '2021-04-26 00:16:15', b'0');  
1290 -INSERT INTO `sys_login_log` VALUES (5, 200, '4d04e567c10d4d47b5617eb4410cb779.210.16193673850970009', '', 0, '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-26 00:16:29', NULL, '2021-04-26 00:16:29', b'0');  
1291 -INSERT INTO `sys_login_log` VALUES (6, 100, '4d04e567c10d4d47b5617eb4410cb779.214.16193674101760009', 'admin', 0, '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-26 00:16:50', NULL, '2021-04-26 00:16:50', b'0');  
1292 -INSERT INTO `sys_login_log` VALUES (7, 200, '4d04e567c10d4d47b5617eb4410cb779.210.16193674206550013', '', 0, '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-26 00:18:35', NULL, '2021-04-26 00:18:35', b'0');  
1293 -INSERT INTO `sys_login_log` VALUES (8, 100, '8fcad0f57c0444b98e31fba92379c125.215.16193677160150005', 'admin', 0, '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-26 00:21:56', NULL, '2021-04-26 00:21:56', b'0');  
1294 -INSERT INTO `sys_login_log` VALUES (9, 200, '8fcad0f57c0444b98e31fba92379c125.220.16193677288070003', '', 0, '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-26 00:22:09', NULL, '2021-04-26 00:22:09', b'0');  
1295 -INSERT INTO `sys_login_log` VALUES (10, 100, '8fcad0f57c0444b98e31fba92379c125.213.16193677330510005', 'admin', 0, '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-26 00:22:13', NULL, '2021-04-26 00:22:13', b'0');  
1296 -INSERT INTO `sys_login_log` VALUES (11, 200, '8fcad0f57c0444b98e31fba92379c125.216.16193677757650005', '', 0, '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-26 00:22:56', NULL, '2021-04-26 00:22:56', b'0');  
1297 -INSERT INTO `sys_login_log` VALUES (12, 100, 'b119944b67c14237b9434f5214688a2e.212.16193678252850003', 'admin', 0, '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-26 00:23:46', NULL, '2021-04-26 00:23:46', b'0');  
1298 -INSERT INTO `sys_login_log` VALUES (13, 200, 'b119944b67c14237b9434f5214688a2e.216.16193678406290003', '', 0, '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-26 00:24:01', NULL, '2021-04-26 00:24:01', b'0');  
1299 -INSERT INTO `sys_login_log` VALUES (14, 100, 'b119944b67c14237b9434f5214688a2e.211.16193678521510009', 'admin', 0, '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-26 00:24:12', NULL, '2021-04-26 00:24:12', b'0');  
1300 -INSERT INTO `sys_login_log` VALUES (15, 200, 'b119944b67c14237b9434f5214688a2e.217.16193678522930003', '', 0, '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-26 00:24:12', NULL, '2021-04-26 00:24:12', b'0');  
1301 -INSERT INTO `sys_login_log` VALUES (16, 100, 'b119944b67c14237b9434f5214688a2e.212.16193680284330011', 'admin', 0, '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-26 00:27:09', NULL, '2021-04-26 00:27:09', b'0');  
1302 -INSERT INTO `sys_login_log` VALUES (17, 200, 'b119944b67c14237b9434f5214688a2e.215.16193680285790017', '', 0, '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-26 00:27:09', NULL, '2021-04-26 00:27:09', b'0');  
1303 -INSERT INTO `sys_login_log` VALUES (18, 100, 'bdc7777473f64f56bbd0b2daebd27fea.218.16193682067910001', 'admin', 0, '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-26 00:30:07', NULL, '2021-04-26 00:30:07', b'0');  
1304 -INSERT INTO `sys_login_log` VALUES (19, 200, 'bdc7777473f64f56bbd0b2daebd27fea.212.16193682071620003', '', 0, '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-26 00:30:07', NULL, '2021-04-26 00:30:07', b'0');  
1305 -INSERT INTO `sys_login_log` VALUES (20, 100, 'bdc7777473f64f56bbd0b2daebd27fea.212.16193682564160005', 'admin', 0, '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-26 00:30:57', NULL, '2021-04-26 00:30:57', b'0');  
1306 -INSERT INTO `sys_login_log` VALUES (21, 200, 'bdc7777473f64f56bbd0b2daebd27fea.214.16193682565730009', '', 0, '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-26 00:30:57', NULL, '2021-04-26 00:30:57', b'0');  
1307 -INSERT INTO `sys_login_log` VALUES (22, 100, '4fb338297083428e960a39648cb42309.220.16193700301270001', 'admin', 0, '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-26 01:00:30', NULL, '2021-04-26 01:00:30', b'0');  
1308 -INSERT INTO `sys_login_log` VALUES (23, 200, '2f1a2073dd49408fa1ca89aa1a34d68f.219.16193702755890001', '', 0, '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-26 01:04:36', NULL, '2021-04-26 01:04:36', b'0');  
1309 -INSERT INTO `sys_login_log` VALUES (24, 100, '2f1a2073dd49408fa1ca89aa1a34d68f.212.16193702896970009', 'admin', 0, '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-26 01:04:50', NULL, '2021-04-26 01:04:50', b'0');  
1310 -INSERT INTO `sys_login_log` VALUES (25, 200, 'e793f3f624794f1b939d34537025acbf.219.16193718077030003', '', 0, '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-26 01:30:11', NULL, '2021-04-26 01:30:11', b'0');  
1311 -INSERT INTO `sys_login_log` VALUES (26, 100, 'e793f3f624794f1b939d34537025acbf.214.16193718672600009', 'admin', 0, '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-26 01:31:07', NULL, '2021-04-26 01:31:07', b'0');  
1312 -INSERT INTO `sys_login_log` VALUES (27, 201, 'N/A', 'admin', 0, '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-26 09:22:34', NULL, '2021-04-26 09:22:34', b'0');  
1313 -INSERT INTO `sys_login_log` VALUES (28, 100, 'e56742980bc6452cb95ef8856dee866e.232.16194476755560013', 'admin', 0, '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-26 22:34:36', NULL, '2021-04-26 22:34:36', b'0');  
1314 -INSERT INTO `sys_login_log` VALUES (29, 100, '59763086cbd842a49188a6b0e812b922.218.16194485070140035', 'admin', 0, '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-26 22:48:27', NULL, '2021-04-26 22:48:27', b'0');  
1315 -INSERT INTO `sys_login_log` VALUES (30, 201, 'N/A', 'admin', 0, '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-26 23:05:00', NULL, '2021-04-26 23:05:00', b'0');  
1316 -INSERT INTO `sys_login_log` VALUES (31, 201, 'N/A', 'admin', 0, '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-27 00:10:53', NULL, '2021-04-27 00:10:53', b'0');  
1317 -INSERT INTO `sys_login_log` VALUES (32, 100, '', 'admin', 0, '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-05-02 23:01:26', NULL, '2021-05-02 23:01:26', b'0');  
1318 -INSERT INTO `sys_login_log` VALUES (33, 201, '', 'admin', 0, '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-05-02 23:51:55', NULL, '2021-05-02 23:51:55', b'0');  
1319 -INSERT INTO `sys_login_log` VALUES (34, 100, '', 'admin', 0, '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-05-02 23:52:50', NULL, '2021-05-02 23:52:50', b'0');  
1320 -INSERT INTO `sys_login_log` VALUES (35, 201, '', 'admin', 0, '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-05-03 01:10:00', NULL, '2021-05-03 01:10:00', b'0');  
1321 -INSERT INTO `sys_login_log` VALUES (36, 100, '', 'admin', 31, '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-05-03 01:16:50', NULL, '2021-05-03 01:16:50', b'0');  
1322 -INSERT INTO `sys_login_log` VALUES (37, 100, '', 'admin', 0, '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-05-03 01:16:56', NULL, '2021-05-03 01:16:56', b'0');  
1323 -INSERT INTO `sys_login_log` VALUES (38, 201, '', 'admin', 0, '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-05-03 02:01:42', NULL, '2021-05-03 02:01:42', b'0');  
1324 -INSERT INTO `sys_login_log` VALUES (39, 100, '', 'admin', 0, '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-05-03 02:02:56', NULL, '2021-05-03 02:02:56', b'0');  
1325 -INSERT INTO `sys_login_log` VALUES (40, 201, '', 'admin', 0, '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-05-03 10:18:39', NULL, '2021-05-03 10:18:39', b'0');  
1326 -INSERT INTO `sys_login_log` VALUES (41, 100, '', 'admin', 0, '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-05-03 10:45:14', NULL, '2021-05-03 10:45:14', b'0');  
1327 COMMIT; 529 COMMIT;
1328 530
1329 -- ---------------------------- 531 -- ----------------------------
@@ -1331,23 +533,23 @@ COMMIT; @@ -1331,23 +533,23 @@ COMMIT;
1331 -- ---------------------------- 533 -- ----------------------------
1332 DROP TABLE IF EXISTS `sys_menu`; 534 DROP TABLE IF EXISTS `sys_menu`;
1333 CREATE TABLE `sys_menu` ( 535 CREATE TABLE `sys_menu` (
1334 - `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'èœå•ID', 536 + `id` bigint NOT NULL AUTO_INCREMENT COMMENT 'èœå•ID',
1335 `name` varchar(50) NOT NULL COMMENT 'èœå•åç§°', 537 `name` varchar(50) NOT NULL COMMENT 'èœå•åç§°',
1336 `permission` varchar(100) NOT NULL DEFAULT '' COMMENT 'æƒé™æ ‡è¯†', 538 `permission` varchar(100) NOT NULL DEFAULT '' COMMENT 'æƒé™æ ‡è¯†',
1337 - `menu_type` tinyint(4) NOT NULL COMMENT 'èœå•类型(M目录 Cèœå• F按钮)',  
1338 - `sort` int(11) NOT NULL DEFAULT '0' COMMENT '显示顺åº',  
1339 - `parent_id` bigint(20) NOT NULL DEFAULT '0' COMMENT '父èœå•ID', 539 + `menu_type` tinyint NOT NULL COMMENT 'èœå•类型(M目录 Cèœå• F按钮)',
  540 + `sort` int NOT NULL DEFAULT '0' COMMENT '显示顺åº',
  541 + `parent_id` bigint NOT NULL DEFAULT '0' COMMENT '父èœå•ID',
1340 `path` varchar(200) DEFAULT '' COMMENT '路由地å€', 542 `path` varchar(200) DEFAULT '' COMMENT '路由地å€',
1341 `icon` varchar(100) DEFAULT '#' COMMENT 'èœå•图标', 543 `icon` varchar(100) DEFAULT '#' COMMENT 'èœå•图标',
1342 `component` varchar(255) DEFAULT NULL COMMENT '组件路径', 544 `component` varchar(255) DEFAULT NULL COMMENT '组件路径',
1343 - `status` tinyint(4) NOT NULL DEFAULT '0' COMMENT 'èœå•状æ€ï¼ˆ0正常 1åœç”¨ï¼‰', 545 + `status` tinyint NOT NULL DEFAULT '0' COMMENT 'èœå•状æ€ï¼ˆ0正常 1åœç”¨ï¼‰',
1344 `creator` varchar(64) DEFAULT '' COMMENT '创建者', 546 `creator` varchar(64) DEFAULT '' COMMENT '创建者',
1345 `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', 547 `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
1346 `updater` varchar(64) DEFAULT '' COMMENT '更新者', 548 `updater` varchar(64) DEFAULT '' COMMENT '更新者',
1347 `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'æ›´æ–°æ—¶é—´', 549 `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'æ›´æ–°æ—¶é—´',
1348 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是å¦åˆ é™¤', 550 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是å¦åˆ é™¤',
1349 PRIMARY KEY (`id`) USING BTREE 551 PRIMARY KEY (`id`) USING BTREE
1350 -) ENGINE=InnoDB AUTO_INCREMENT=1117 DEFAULT CHARSET=utf8mb4 COMMENT='èœå•æƒé™è¡¨'; 552 +) ENGINE=InnoDB AUTO_INCREMENT=1117 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='èœå•æƒé™è¡¨';
1351 553
1352 -- ---------------------------- 554 -- ----------------------------
1353 -- Records of sys_menu 555 -- Records of sys_menu
@@ -1492,18 +694,18 @@ COMMIT; @@ -1492,18 +694,18 @@ COMMIT;
1492 -- ---------------------------- 694 -- ----------------------------
1493 DROP TABLE IF EXISTS `sys_notice`; 695 DROP TABLE IF EXISTS `sys_notice`;
1494 CREATE TABLE `sys_notice` ( 696 CREATE TABLE `sys_notice` (
1495 - `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '公告ID', 697 + `id` bigint NOT NULL AUTO_INCREMENT COMMENT '公告ID',
1496 `title` varchar(50) NOT NULL COMMENT '公告标题', 698 `title` varchar(50) NOT NULL COMMENT '公告标题',
1497 `content` text NOT NULL COMMENT '公告内容', 699 `content` text NOT NULL COMMENT '公告内容',
1498 - `notice_type` tinyint(4) NOT NULL COMMENT '公告类型(1通知 2公告)',  
1499 - `status` tinyint(4) NOT NULL DEFAULT '0' COMMENT '公告状æ€ï¼ˆ0正常 1关闭)', 700 + `notice_type` tinyint NOT NULL COMMENT '公告类型(1通知 2公告)',
  701 + `status` tinyint NOT NULL DEFAULT '0' COMMENT '公告状æ€ï¼ˆ0正常 1关闭)',
1500 `creator` varchar(64) DEFAULT '' COMMENT '创建者', 702 `creator` varchar(64) DEFAULT '' COMMENT '创建者',
1501 `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', 703 `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
1502 `updater` varchar(64) DEFAULT '' COMMENT '更新者', 704 `updater` varchar(64) DEFAULT '' COMMENT '更新者',
1503 `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'æ›´æ–°æ—¶é—´', 705 `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'æ›´æ–°æ—¶é—´',
1504 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是å¦åˆ é™¤', 706 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是å¦åˆ é™¤',
1505 PRIMARY KEY (`id`) USING BTREE 707 PRIMARY KEY (`id`) USING BTREE
1506 -) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8mb4 COMMENT='通知公告表'; 708 +) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='通知公告表';
1507 709
1508 -- ---------------------------- 710 -- ----------------------------
1509 -- Records of sys_notice 711 -- Records of sys_notice
@@ -1519,12 +721,12 @@ COMMIT; @@ -1519,12 +721,12 @@ COMMIT;
1519 -- ---------------------------- 721 -- ----------------------------
1520 DROP TABLE IF EXISTS `sys_operate_log`; 722 DROP TABLE IF EXISTS `sys_operate_log`;
1521 CREATE TABLE `sys_operate_log` ( 723 CREATE TABLE `sys_operate_log` (
1522 - `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '日志主键', 724 + `id` bigint NOT NULL AUTO_INCREMENT COMMENT '日志主键',
1523 `trace_id` varchar(64) NOT NULL DEFAULT '' COMMENT '链路追踪编å·', 725 `trace_id` varchar(64) NOT NULL DEFAULT '' COMMENT '链路追踪编å·',
1524 - `user_id` bigint(20) NOT NULL COMMENT '用户编å·', 726 + `user_id` bigint NOT NULL COMMENT '用户编å·',
1525 `module` varchar(50) NOT NULL COMMENT 'æ¨¡å—æ ‡é¢˜', 727 `module` varchar(50) NOT NULL COMMENT 'æ¨¡å—æ ‡é¢˜',
1526 `name` varchar(50) NOT NULL COMMENT 'æ“作å', 728 `name` varchar(50) NOT NULL COMMENT 'æ“作å',
1527 - `operate_type` bigint(4) NOT NULL DEFAULT '0' COMMENT 'æ“作分类', 729 + `operate_type` bigint NOT NULL DEFAULT '0' COMMENT 'æ“作分类',
1528 `content` varchar(2000) NOT NULL DEFAULT '' COMMENT 'æ“作内容', 730 `content` varchar(2000) NOT NULL DEFAULT '' COMMENT 'æ“作内容',
1529 `exts` varchar(512) NOT NULL DEFAULT '' COMMENT '拓展字段', 731 `exts` varchar(512) NOT NULL DEFAULT '' COMMENT '拓展字段',
1530 `request_method` varchar(16) DEFAULT '' COMMENT '请求方法å', 732 `request_method` varchar(16) DEFAULT '' COMMENT '请求方法å',
@@ -1534,8 +736,8 @@ CREATE TABLE `sys_operate_log` ( @@ -1534,8 +736,8 @@ CREATE TABLE `sys_operate_log` (
1534 `java_method` varchar(512) NOT NULL DEFAULT '' COMMENT 'Java 方法å', 736 `java_method` varchar(512) NOT NULL DEFAULT '' COMMENT 'Java 方法å',
1535 `java_method_args` varchar(8000) DEFAULT '' COMMENT 'Java æ–¹æ³•çš„å‚æ•°', 737 `java_method_args` varchar(8000) DEFAULT '' COMMENT 'Java æ–¹æ³•çš„å‚æ•°',
1536 `start_time` datetime NOT NULL COMMENT 'æ“作时间', 738 `start_time` datetime NOT NULL COMMENT 'æ“作时间',
1537 - `duration` int(11) NOT NULL COMMENT '执行时长',  
1538 - `result_code` int(11) NOT NULL DEFAULT '0' COMMENT '结果ç ', 739 + `duration` int NOT NULL COMMENT '执行时长',
  740 + `result_code` int NOT NULL DEFAULT '0' COMMENT '结果ç ',
1539 `result_msg` varchar(512) DEFAULT '' COMMENT '结果æç¤º', 741 `result_msg` varchar(512) DEFAULT '' COMMENT '结果æç¤º',
1540 `result_data` varchar(4000) DEFAULT '' COMMENT '结果数æ®', 742 `result_data` varchar(4000) DEFAULT '' COMMENT '结果数æ®',
1541 `creator` varchar(64) DEFAULT '' COMMENT '创建者', 743 `creator` varchar(64) DEFAULT '' COMMENT '创建者',
@@ -1544,27 +746,12 @@ CREATE TABLE `sys_operate_log` ( @@ -1544,27 +746,12 @@ CREATE TABLE `sys_operate_log` (
1544 `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'æ›´æ–°æ—¶é—´', 746 `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'æ›´æ–°æ—¶é—´',
1545 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是å¦åˆ é™¤', 747 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是å¦åˆ é™¤',
1546 PRIMARY KEY (`id`) USING BTREE 748 PRIMARY KEY (`id`) USING BTREE
1547 -) ENGINE=InnoDB AUTO_INCREMENT=16 DEFAULT CHARSET=utf8mb4 COMMENT='æ“作日志记录'; 749 +) ENGINE=InnoDB AUTO_INCREMENT=26 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='æ“作日志记录';
1548 750
1549 -- ---------------------------- 751 -- ----------------------------
1550 -- Records of sys_operate_log 752 -- Records of sys_operate_log
1551 -- ---------------------------- 753 -- ----------------------------
1552 BEGIN; 754 BEGIN;
1553 -INSERT INTO `sys_operate_log` VALUES (1, 'e56742980bc6452cb95ef8856dee866e.232.16194476976500015', 1, 'èœå•', '修改èœå•', 3, '', '', 'PUT', '/api/system/menu/update', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', 'CommonResult cn.iocoder.dashboard.modules.system.controller.permission.SysMenuController.updateMenu(SysMenuUpdateReqVO)', '{\"reqVO\":{\"name\":\"审计日志\",\"permission\":\"\",\"type\":1,\"sort\":9,\"parentId\":1,\"path\":\"log\",\"icon\":\"log\",\"component\":\"\",\"status\":0,\"id\":108}}', '2021-04-26 22:34:58', 25, 0, '', 'true', NULL, '2021-04-26 22:34:58', NULL, '2021-04-26 22:34:58', b'0');  
1554 -INSERT INTO `sys_operate_log` VALUES (2, 'e56742980bc6452cb95ef8856dee866e.235.16194477445010015', 1, 'èœå•', '创建èœå•', 2, '', '', 'POST', '/api/system/menu/create', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', 'CommonResult cn.iocoder.dashboard.modules.system.controller.permission.SysMenuController.createMenu(SysMenuCreateReqVO)', '{\"reqVO\":{\"name\":\"日志中心\",\"permission\":null,\"type\":2,\"sort\":8,\"parentId\":2,\"path\":\"infra/log\",\"icon\":\"log\",\"component\":null,\"status\":0}}', '2021-04-26 22:35:45', 15, 0, '', '1116', NULL, '2021-04-26 22:35:45', NULL, '2021-04-26 22:35:45', b'0');  
1555 -INSERT INTO `sys_operate_log` VALUES (3, 'e56742980bc6452cb95ef8856dee866e.229.16194477870040023', 1, 'èœå•', '修改èœå•', 3, '', '', 'PUT', '/api/system/menu/update', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', 'CommonResult cn.iocoder.dashboard.modules.system.controller.permission.SysMenuController.updateMenu(SysMenuUpdateReqVO)', '{\"reqVO\":{\"name\":\"日志中心\",\"permission\":\"\",\"type\":2,\"sort\":8,\"parentId\":2,\"path\":\"log-center\",\"icon\":\"log\",\"component\":\"infra/log\",\"status\":0,\"id\":1116}}', '2021-04-26 22:36:27', 13, 0, '', 'true', NULL, '2021-04-26 22:36:27', NULL, '2021-04-26 22:36:27', b'0');  
1556 -INSERT INTO `sys_operate_log` VALUES (4, 'e56742980bc6452cb95ef8856dee866e.233.16194478446320025', 1, 'èœå•', '修改èœå•', 3, '', '', 'PUT', '/api/system/menu/update', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', 'CommonResult cn.iocoder.dashboard.modules.system.controller.permission.SysMenuController.updateMenu(SysMenuUpdateReqVO)', '{\"reqVO\":{\"name\":\"日志中心\",\"permission\":\"\",\"type\":2,\"sort\":8,\"parentId\":2,\"path\":\"log-center\",\"icon\":\"log\",\"component\":\"infra/skywalking/log\",\"status\":0,\"id\":1116}}', '2021-04-26 22:37:25', 15, 0, '', 'true', NULL, '2021-04-26 22:37:25', NULL, '2021-04-26 22:37:25', b'0');  
1557 -INSERT INTO `sys_operate_log` VALUES (5, '', 1, '用户', '修改用户', 3, '', '', 'PUT', '/api/system/user/update', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', 'CommonResult cn.iocoder.dashboard.modules.system.controller.user.SysUserController.updateUser(SysUserUpdateReqVO)', '{\"reqVO\":{\"username\":\"admin\",\"nickname\":\"èŠ‹é“æºç \",\"remark\":\"管ç†å‘˜\",\"deptId\":103,\"postIds\":[1],\"email\":\"aoteman@126.com\",\"mobile\":\"15612345678\",\"sex\":1,\"avatar\":\"http://api-dashboard.yudao.iocoder.cn/api/infra/file/get/5e8609290e915c4fa8b08e67.jpg\",\"id\":1}}', '2021-05-02 23:03:24', 52, 0, '', 'true', NULL, '2021-05-02 23:03:24', NULL, '2021-05-02 23:03:24', b'0');  
1558 -INSERT INTO `sys_operate_log` VALUES (6, '', 1, '代ç ç”Ÿæˆå™¨', '删除数æ®åº“的表和字段定义', 4, '', '', 'DELETE', '/api/tool/codegen/delete', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', 'CommonResult cn.iocoder.yudao.adminserver.modules.tool.controller.codegen.ToolCodegenController.deleteCodegen(Long)', '{\"tableId\":20}', '2021-05-03 00:10:03', 41, 0, '', 'true', NULL, '2021-05-03 00:10:03', NULL, '2021-05-03 00:10:03', b'0');  
1559 -INSERT INTO `sys_operate_log` VALUES (7, '', 1, '代ç ç”Ÿæˆå™¨', 'æ›´æ–°æ•°æ®åº“的表和字段定义', 3, '', '', 'PUT', '/api/tool/codegen/update', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', 'CommonResult cn.iocoder.yudao.adminserver.modules.tool.controller.codegen.ToolCodegenController.updateCodegen(ToolCodegenUpdateReqVO)', '{\"updateReqVO\":{\"table\":{\"importType\":1,\"tableName\":\"tool_test_demo\",\"tableComment\":\"字典类型表\",\"remark\":null,\"moduleName\":\"tool\",\"businessName\":\"test\",\"className\":\"ToolTestDemo\",\"classComment\":\"字典类型\",\"author\":\"芋艿\",\"templateType\":1,\"parentMenuId\":null,\"id\":38},\"columns\":[{\"tableId\":38,\"columnName\":\"id\",\"columnType\":\"bigint(20)\",\"columnComment\":\"ç¼–å·\",\"nullable\":false,\"primaryKey\":true,\"autoIncrement\":\"true\",\"ordinalPosition\":1,\"javaType\":\"Long\",\"javaField\":\"id\",\"dictType\":\"\",\"example\":null,\"createOperation\":false,\"updateOperation\":true,\"listOperation\":false,\"listOperationCondition\":\"=\",\"listOperationResult\":true,\"htmlType\":\"input\",\"id\":458},{\"tableId\":38,\"columnName\":\"name\",\"columnType\":\"varchar(100)\",\"columnComment\":\"åå­—\",\"nullable\":false,\"primaryKey\":false,\"autoIncrement\":\"false\",\"ordinalPosition\":2,\"javaType\":\"String\",\"javaField\":\"name\",\"dictType\":\"\",\"example\":null,\"createOperation\":true,\"updateOperation\":true,\"listOperation\":true,\"listOperationCondition\":\"LIKE\",\"listOperationResult\":true,\"htmlType\":\"input\",\"id\":459},{\"tableId\":38,\"columnName\":\"status\",\"columnType\":\"tinyint(4)\",\"columnComment\":\"状æ€\",\"nullable\":false,\"primaryKey\":false,\"autoIncrement\":\"false\",\"ordinalPosition\":3,\"javaType\":\"Integer\",\"javaField\":\"status\",\"dictType\":\"\",\"example\":null,\"createOperation\":true,\"updateOperation\":true,\"listOperation\":true,\"listOperationCondition\":\"=\",\"listOperationResult\":true,\"htmlType\":\"radio\",\"id\":460},{\"tableId\":38,\"columnName\":\"type\",\"columnType\":\"tinyint(4)\",\"columnComment\":\"类型\",\"nullable\":false,\"primaryKey\":false,\"autoIncrement\":\"false\",\"ordinalPosition\":4,\"javaType\":\"Integer\",\"javaField\":\"type\",\"dictType\":\"\",\"example\":null,\"createOperation\":true,\"updateOperation\":true,\"listOperation\":true,\"listOperationCondition\":\"=\",\"listOperationResult\":true,\"htmlType\":\"select\",\"id\":461},{\"tableId\":38,\"columnName\":\"category\",\"columnType\":\"tinyint(4)\",\"columnComment\":\"分类\",\"nullable\":false,\"primaryKey\":false,\"autoIncrement\":\"false\",\"ordinalPosition\":5,\"javaType\":\"Integer\",\"javaField\":\"category\",\"dictType\":\"\",\"example\":null,\"createOperation\":true,\"updateOperation\":true,\"listOperation\":true,\"listOperationCondition\":\"=\",\"listOperationResult\":true,\"htmlType\":\"input\",\"id\":462},{\"tableId\":38,\"columnName\":\"remark\",\"columnType\":\"varchar(500)\",\"columnComment\":\"备注\",\"nullable\":true,\"primaryKey\":false,\"autoIncrement\":\"false\",\"ordinalPosition\":6,\"javaType\":\"String\",\"javaField\":\"remark\",\"dictType\":\"\",\"example\":null,\"createOperation\":true,\"updateOperation\":true,\"listOperation\":true,\"listOperationCondition\":\"=\",\"listOperationResult\":true,\"htmlType\":\"input\",\"id\":463},{\"tableId\":38,\"columnName\":\"creator\",\"columnType\":\"varchar(64)\",\"columnComment\":\"创建者\",\"nullable\":true,\"primaryKey\":false,\"autoIncrement\":\"false\",\"ordinalPosition\":7,\"javaType\":\"String\",\"javaField\":\"creator\",\"dictType\":\"\",\"example\":null,\"createOperation\":false,\"updateOperation\":false,\"listOperation\":false,\"listOperationCondition\":\"=\",\"listOperationResult\":false,\"htmlType\":\"input\",\"id\":464},{\"tableId\":38,\"columnName\":\"create_time\",\"columnType\":\"datetime\",\"columnComment\":\"创建时间\",\"nullable\":false,\"primaryKey\":false,\"autoIncrement\":\"false\",\"ordinalPosition\":8,\"javaType\":\"Date\",\"javaField\":\"createTime\",\"dictType\":\"\",\"example\":null,\"createOperation\":false,\"updateOperation\":false,\"listOperation\":true,\"listOperationCondition\":\"BETWEEN\",\"listOperationResult\":true,\"htmlType\":\"datetime\",\"id\":465},{\"tableId\":38,\"columnName\":\"updater\",\"columnType\":\"varchar(64)\",\"columnComment\":\"更新者\",\"nullable\":true,\"primaryKey\":false,\"autoIncrement\":\"false\",\"ordinalPosition\":9,\"javaType\":\"String\",\"javaField\":\"updater\",\"dictType\":\"\",\"example\":null,\"createOperation\":false,\"updateOperation\":false,\"listOperation\":false,\"listOperationCondition\":\"=\",\"listOperationResult\":false,\"htmlType\":\"input\",\"id\":466},{\"tableId\":38,\"columnName\":\"update_time\",\"columnType\":\"datetime\",\"columnComment\":\"æ›´æ–°æ—¶é—´\",\"nullable\":false,\"primaryKey\":false,\"autoIncrement\":\"false\",\"ordinalPosition\":10,\"javaType\":\"Date\",\"javaField\":\"updateTime\",\"dictType\":\"\",\"example\":null,\"createOperation\":false,\"updateOperation\":false,\"listOperation\":false,\"listOperationCondition\":\"BETWEEN\",\"listOperationResult\":false,\"htmlType\":\"datetime\",\"id\":467},{\"tableId\":38,\"columnName\":\"deleted\",\"columnType\":\"bit(1)\",\"columnComment\":\"是å¦åˆ é™¤\",\"nullable\":false,\"primaryKey\":false,\"autoIncrement\":\"false\",\"ordinalPosition\":11,\"javaType\":\"Boolean\",\"javaField\":\"deleted\",\"dictType\":\"\",\"example\":null,\"createOperation\":false,\"updateOperation\":false,\"listOperation\":false,\"listOperationCondition\":\"=\",\"listOperationResult\":false,\"htmlType\":\"radio\",\"id\":468}]}}', '2021-05-03 00:13:05', 69, 0, '', 'true', NULL, '2021-05-03 00:13:05', NULL, '2021-05-03 00:13:05', b'0');  
1560 -INSERT INTO `sys_operate_log` VALUES (8, '', 1, '代ç ç”Ÿæˆå™¨', 'æ›´æ–°æ•°æ®åº“的表和字段定义', 3, '', '', 'PUT', '/api/tool/codegen/update', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', 'CommonResult cn.iocoder.yudao.adminserver.modules.tool.controller.codegen.ToolCodegenController.updateCodegen(ToolCodegenUpdateReqVO)', '{\"updateReqVO\":{\"table\":{\"importType\":1,\"tableName\":\"tool_test_demo\",\"tableComment\":\"字典类型表\",\"remark\":null,\"moduleName\":\"tool\",\"businessName\":\"test\",\"className\":\"ToolTestDemo\",\"classComment\":\"字典类型\",\"author\":\"芋艿\",\"templateType\":1,\"parentMenuId\":null,\"id\":38},\"columns\":[{\"tableId\":38,\"columnName\":\"id\",\"columnType\":\"bigint(20)\",\"columnComment\":\"ç¼–å·\",\"nullable\":false,\"primaryKey\":true,\"autoIncrement\":\"true\",\"ordinalPosition\":1,\"javaType\":\"Long\",\"javaField\":\"id\",\"dictType\":\"\",\"example\":null,\"createOperation\":false,\"updateOperation\":true,\"listOperation\":false,\"listOperationCondition\":\"=\",\"listOperationResult\":true,\"htmlType\":\"input\",\"id\":458},{\"tableId\":38,\"columnName\":\"name\",\"columnType\":\"varchar(100)\",\"columnComment\":\"åå­—\",\"nullable\":false,\"primaryKey\":false,\"autoIncrement\":\"false\",\"ordinalPosition\":2,\"javaType\":\"String\",\"javaField\":\"name\",\"dictType\":\"\",\"example\":null,\"createOperation\":true,\"updateOperation\":true,\"listOperation\":true,\"listOperationCondition\":\"LIKE\",\"listOperationResult\":true,\"htmlType\":\"input\",\"id\":459},{\"tableId\":38,\"columnName\":\"status\",\"columnType\":\"tinyint(4)\",\"columnComment\":\"状æ€\",\"nullable\":false,\"primaryKey\":false,\"autoIncrement\":\"false\",\"ordinalPosition\":3,\"javaType\":\"Integer\",\"javaField\":\"status\",\"dictType\":\"sys_notice_type\",\"example\":null,\"createOperation\":true,\"updateOperation\":true,\"listOperation\":true,\"listOperationCondition\":\"=\",\"listOperationResult\":true,\"htmlType\":\"radio\",\"id\":460},{\"tableId\":38,\"columnName\":\"type\",\"columnType\":\"tinyint(4)\",\"columnComment\":\"类型\",\"nullable\":false,\"primaryKey\":false,\"autoIncrement\":\"false\",\"ordinalPosition\":4,\"javaType\":\"Integer\",\"javaField\":\"type\",\"dictType\":\"\",\"example\":null,\"createOperation\":true,\"updateOperation\":true,\"listOperation\":true,\"listOperationCondition\":\"=\",\"listOperationResult\":true,\"htmlType\":\"select\",\"id\":461},{\"tableId\":38,\"columnName\":\"category\",\"columnType\":\"tinyint(4)\",\"columnComment\":\"分类\",\"nullable\":false,\"primaryKey\":false,\"autoIncrement\":\"false\",\"ordinalPosition\":5,\"javaType\":\"Integer\",\"javaField\":\"category\",\"dictType\":\"\",\"example\":null,\"createOperation\":true,\"updateOperation\":true,\"listOperation\":true,\"listOperationCondition\":\"=\",\"listOperationResult\":true,\"htmlType\":\"input\",\"id\":462},{\"tableId\":38,\"columnName\":\"remark\",\"columnType\":\"varchar(500)\",\"columnComment\":\"备注\",\"nullable\":true,\"primaryKey\":false,\"autoIncrement\":\"false\",\"ordinalPosition\":6,\"javaType\":\"String\",\"javaField\":\"remark\",\"dictType\":\"\",\"example\":null,\"createOperation\":true,\"updateOperation\":true,\"listOperation\":true,\"listOperationCondition\":\"=\",\"listOperationResult\":true,\"htmlType\":\"input\",\"id\":463},{\"tableId\":38,\"columnName\":\"creator\",\"columnType\":\"varchar(64)\",\"columnComment\":\"创建者\",\"nullable\":true,\"primaryKey\":false,\"autoIncrement\":\"false\",\"ordinalPosition\":7,\"javaType\":\"String\",\"javaField\":\"creator\",\"dictType\":\"\",\"example\":null,\"createOperation\":false,\"updateOperation\":false,\"listOperation\":false,\"listOperationCondition\":\"=\",\"listOperationResult\":false,\"htmlType\":\"input\",\"id\":464},{\"tableId\":38,\"columnName\":\"create_time\",\"columnType\":\"datetime\",\"columnComment\":\"创建时间\",\"nullable\":false,\"primaryKey\":false,\"autoIncrement\":\"false\",\"ordinalPosition\":8,\"javaType\":\"Date\",\"javaField\":\"createTime\",\"dictType\":\"\",\"example\":null,\"createOperation\":false,\"updateOperation\":false,\"listOperation\":true,\"listOperationCondition\":\"BETWEEN\",\"listOperationResult\":true,\"htmlType\":\"datetime\",\"id\":465},{\"tableId\":38,\"columnName\":\"updater\",\"columnType\":\"varchar(64)\",\"columnComment\":\"更新者\",\"nullable\":true,\"primaryKey\":false,\"autoIncrement\":\"false\",\"ordinalPosition\":9,\"javaType\":\"String\",\"javaField\":\"updater\",\"dictType\":\"\",\"example\":null,\"createOperation\":false,\"updateOperation\":false,\"listOperation\":false,\"listOperationCondition\":\"=\",\"listOperationResult\":false,\"htmlType\":\"input\",\"id\":466},{\"tableId\":38,\"columnName\":\"update_time\",\"columnType\":\"datetime\",\"columnComment\":\"æ›´æ–°æ—¶é—´\",\"nullable\":false,\"primaryKey\":false,\"autoIncrement\":\"false\",\"ordinalPosition\":10,\"javaType\":\"Date\",\"javaField\":\"updateTime\",\"dictType\":\"\",\"example\":null,\"createOperation\":false,\"updateOperation\":false,\"listOperation\":false,\"listOperationCondition\":\"BETWEEN\",\"listOperationResult\":false,\"htmlType\":\"datetime\",\"id\":467},{\"tableId\":38,\"columnName\":\"deleted\",\"columnType\":\"bit(1)\",\"columnComment\":\"是å¦åˆ é™¤\",\"nullable\":false,\"primaryKey\":false,\"autoIncrement\":\"false\",\"ordinalPosition\":11,\"javaType\":\"Boolean\",\"javaField\":\"deleted\",\"dictType\":\"\",\"example\":null,\"createOperation\":false,\"updateOperation\":false,\"listOperation\":false,\"listOperationCondition\":\"=\",\"listOperationResult\":false,\"htmlType\":\"radio\",\"id\":468}]}}', '2021-05-03 00:45:45', 73, 0, '', 'true', NULL, '2021-05-03 00:45:45', NULL, '2021-05-03 00:45:45', b'0');  
1561 -INSERT INTO `sys_operate_log` VALUES (9, '', 1, '短信模æ¿', 'å‘é€çŸ­ä¿¡', 2, '', '', 'POST', '/api/system/sms-template/send-sms', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', 'CommonResult cn.iocoder.yudao.adminserver.modules.system.controller.sms.SysSmsTemplateController.sendSms(SysSmsTemplateSendReqVO)', '{\"sendReqVO\":{\"mobile\":\"15601691399\",\"templateCode\":\"test_02\",\"templateParams\":{\"code\":\"0011\"}}}', '2021-05-03 02:03:29', 33, 0, '', '2', NULL, '2021-05-03 02:03:29', NULL, '2021-05-03 02:03:29', b'0');  
1562 -INSERT INTO `sys_operate_log` VALUES (10, '', 1, '短信模æ¿', 'å‘é€çŸ­ä¿¡', 2, '', '', 'POST', '/api/system/sms-template/send-sms', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', 'CommonResult cn.iocoder.yudao.adminserver.modules.system.controller.sms.SysSmsTemplateController.sendSms(SysSmsTemplateSendReqVO)', '{\"sendReqVO\":{\"mobile\":\"15601691399\",\"templateCode\":\"test_02\",\"templateParams\":{\"code\":\"1234\"}}}', '2021-05-03 02:24:26', 36, 0, '', '3', NULL, '2021-05-03 02:24:26', NULL, '2021-05-03 02:24:26', b'0');  
1563 -INSERT INTO `sys_operate_log` VALUES (11, '', 1, '短信模æ¿', 'å‘é€çŸ­ä¿¡', 2, '', '', 'POST', '/api/system/sms-template/send-sms', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', 'CommonResult cn.iocoder.yudao.adminserver.modules.system.controller.sms.SysSmsTemplateController.sendSms(SysSmsTemplateSendReqVO)', '{\"sendReqVO\":{\"mobile\":\"15601691399\",\"templateCode\":\"test_02\",\"templateParams\":{\"code\":\"0000\"}}}', '2021-05-03 02:25:11', 10, 0, '', '4', NULL, '2021-05-03 02:25:16', NULL, '2021-05-03 02:25:16', b'0');  
1564 -INSERT INTO `sys_operate_log` VALUES (12, '', 1, '短信模æ¿', 'å‘é€çŸ­ä¿¡', 2, '', '', 'POST', '/api/system/sms-template/send-sms', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', 'CommonResult cn.iocoder.yudao.adminserver.modules.system.controller.sms.SysSmsTemplateController.sendSms(SysSmsTemplateSendReqVO)', '{\"sendReqVO\":{\"mobile\":\"15601691399\",\"templateCode\":\"test_02\",\"templateParams\":{\"code\":\"0000\"}}}', '2021-05-03 02:26:23', 7, 0, '', '5', NULL, '2021-05-03 02:26:26', NULL, '2021-05-03 02:26:26', b'0');  
1565 -INSERT INTO `sys_operate_log` VALUES (13, '', 1, '短信模æ¿', 'å‘é€çŸ­ä¿¡', 2, '', '', 'POST', '/api/system/sms-template/send-sms', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', 'CommonResult cn.iocoder.yudao.adminserver.modules.system.controller.sms.SysSmsTemplateController.sendSms(SysSmsTemplateSendReqVO)', '{\"sendReqVO\":{\"mobile\":\"15601691399\",\"templateCode\":\"test_02\",\"templateParams\":{\"code\":\"0000\"}}}', '2021-05-03 02:28:54', 51, 0, '', '6', NULL, '2021-05-03 02:28:54', NULL, '2021-05-03 02:28:54', b'0');  
1566 -INSERT INTO `sys_operate_log` VALUES (14, '', 1, '短信模æ¿', 'å‘é€çŸ­ä¿¡', 2, '', '', 'POST', '/api/system/sms-template/send-sms', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', 'CommonResult cn.iocoder.yudao.adminserver.modules.system.controller.sms.SysSmsTemplateController.sendSms(SysSmsTemplateSendReqVO)', '{\"sendReqVO\":{\"mobile\":\"15601691399\",\"templateCode\":\"test_02\",\"templateParams\":{\"code\":\"1234\"}}}', '2021-05-03 10:45:32', 60, 0, '', '7', NULL, '2021-05-03 10:45:32', NULL, '2021-05-03 10:45:32', b'0');  
1567 -INSERT INTO `sys_operate_log` VALUES (15, '', 1, '短信模æ¿', 'å‘é€çŸ­ä¿¡', 2, '', '', 'POST', '/api/system/sms-template/send-sms', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', 'CommonResult cn.iocoder.yudao.adminserver.modules.system.controller.sms.SysSmsTemplateController.sendSms(SysSmsTemplateSendReqVO)', '{\"sendReqVO\":{\"mobile\":\"15601691399\",\"templateCode\":\"test_02\",\"templateParams\":{\"code\":\"1234\"}}}', '2021-05-03 10:49:24', 67, 0, '', '8', NULL, '2021-05-03 10:49:24', NULL, '2021-05-03 10:49:24', b'0');  
1568 COMMIT; 755 COMMIT;
1569 756
1570 -- ---------------------------- 757 -- ----------------------------
@@ -1572,11 +759,11 @@ COMMIT; @@ -1572,11 +759,11 @@ COMMIT;
1572 -- ---------------------------- 759 -- ----------------------------
1573 DROP TABLE IF EXISTS `sys_post`; 760 DROP TABLE IF EXISTS `sys_post`;
1574 CREATE TABLE `sys_post` ( 761 CREATE TABLE `sys_post` (
1575 - `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'å²—ä½ID', 762 + `id` bigint NOT NULL AUTO_INCREMENT COMMENT 'å²—ä½ID',
1576 `code` varchar(64) NOT NULL COMMENT 'å²—ä½ç¼–ç ', 763 `code` varchar(64) NOT NULL COMMENT 'å²—ä½ç¼–ç ',
1577 `name` varchar(50) NOT NULL COMMENT 'å²—ä½åç§°', 764 `name` varchar(50) NOT NULL COMMENT 'å²—ä½åç§°',
1578 - `sort` int(4) NOT NULL COMMENT '显示顺åº',  
1579 - `status` tinyint(4) NOT NULL COMMENT '状æ€ï¼ˆ0正常 1åœç”¨ï¼‰', 765 + `sort` int NOT NULL COMMENT '显示顺åº',
  766 + `status` tinyint NOT NULL COMMENT '状æ€ï¼ˆ0正常 1åœç”¨ï¼‰',
1580 `remark` varchar(500) DEFAULT NULL COMMENT '备注', 767 `remark` varchar(500) DEFAULT NULL COMMENT '备注',
1581 `creator` varchar(64) DEFAULT '' COMMENT '创建者', 768 `creator` varchar(64) DEFAULT '' COMMENT '创建者',
1582 `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', 769 `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
@@ -1584,7 +771,7 @@ CREATE TABLE `sys_post` ( @@ -1584,7 +771,7 @@ CREATE TABLE `sys_post` (
1584 `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'æ›´æ–°æ—¶é—´', 771 `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'æ›´æ–°æ—¶é—´',
1585 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是å¦åˆ é™¤', 772 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是å¦åˆ é™¤',
1586 PRIMARY KEY (`id`) USING BTREE 773 PRIMARY KEY (`id`) USING BTREE
1587 -) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8mb4 COMMENT='å²—ä½ä¿¡æ¯è¡¨'; 774 +) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='å²—ä½ä¿¡æ¯è¡¨';
1588 775
1589 -- ---------------------------- 776 -- ----------------------------
1590 -- Records of sys_post 777 -- Records of sys_post
@@ -1602,14 +789,14 @@ COMMIT; @@ -1602,14 +789,14 @@ COMMIT;
1602 -- ---------------------------- 789 -- ----------------------------
1603 DROP TABLE IF EXISTS `sys_role`; 790 DROP TABLE IF EXISTS `sys_role`;
1604 CREATE TABLE `sys_role` ( 791 CREATE TABLE `sys_role` (
1605 - `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '角色ID', 792 + `id` bigint NOT NULL AUTO_INCREMENT COMMENT '角色ID',
1606 `name` varchar(30) NOT NULL COMMENT '角色åç§°', 793 `name` varchar(30) NOT NULL COMMENT '角色åç§°',
1607 `code` varchar(100) NOT NULL COMMENT '角色æƒé™å­—符串', 794 `code` varchar(100) NOT NULL COMMENT '角色æƒé™å­—符串',
1608 - `sort` int(4) NOT NULL COMMENT '显示顺åº',  
1609 - `data_scope` tinyint(4) NOT NULL DEFAULT '1' COMMENT 'æ•°æ®èŒƒå›´ï¼ˆ1ï¼šå…¨éƒ¨æ•°æ®æƒé™ 2ï¼šè‡ªå®šæ•°æ®æƒé™ 3ï¼šæœ¬éƒ¨é—¨æ•°æ®æƒé™ 4:本部门åŠä»¥ä¸‹æ•°æ®æƒé™ï¼‰', 795 + `sort` int NOT NULL COMMENT '显示顺åº',
  796 + `data_scope` tinyint NOT NULL DEFAULT '1' COMMENT 'æ•°æ®èŒƒå›´ï¼ˆ1ï¼šå…¨éƒ¨æ•°æ®æƒé™ 2ï¼šè‡ªå®šæ•°æ®æƒé™ 3ï¼šæœ¬éƒ¨é—¨æ•°æ®æƒé™ 4:本部门åŠä»¥ä¸‹æ•°æ®æƒé™ï¼‰',
1610 `data_scope_dept_ids` varchar(500) NOT NULL DEFAULT '' COMMENT 'æ•°æ®èŒƒå›´(指定部门数组)', 797 `data_scope_dept_ids` varchar(500) NOT NULL DEFAULT '' COMMENT 'æ•°æ®èŒƒå›´(指定部门数组)',
1611 - `status` tinyint(4) NOT NULL COMMENT '角色状æ€ï¼ˆ0正常 1åœç”¨ï¼‰',  
1612 - `type` tinyint(4) NOT NULL COMMENT '角色类型', 798 + `status` tinyint NOT NULL COMMENT '角色状æ€ï¼ˆ0正常 1åœç”¨ï¼‰',
  799 + `type` tinyint NOT NULL COMMENT '角色类型',
1613 `remark` varchar(500) DEFAULT NULL COMMENT '备注', 800 `remark` varchar(500) DEFAULT NULL COMMENT '备注',
1614 `creator` varchar(64) DEFAULT '' COMMENT '创建者', 801 `creator` varchar(64) DEFAULT '' COMMENT '创建者',
1615 `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', 802 `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
@@ -1617,7 +804,7 @@ CREATE TABLE `sys_role` ( @@ -1617,7 +804,7 @@ CREATE TABLE `sys_role` (
1617 `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'æ›´æ–°æ—¶é—´', 804 `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'æ›´æ–°æ—¶é—´',
1618 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是å¦åˆ é™¤', 805 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是å¦åˆ é™¤',
1619 PRIMARY KEY (`id`) USING BTREE 806 PRIMARY KEY (`id`) USING BTREE
1620 -) ENGINE=InnoDB AUTO_INCREMENT=102 DEFAULT CHARSET=utf8mb4 COMMENT='角色信æ¯è¡¨'; 807 +) ENGINE=InnoDB AUTO_INCREMENT=102 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='角色信æ¯è¡¨';
1621 808
1622 -- ---------------------------- 809 -- ----------------------------
1623 -- Records of sys_role 810 -- Records of sys_role
@@ -1633,16 +820,16 @@ COMMIT; @@ -1633,16 +820,16 @@ COMMIT;
1633 -- ---------------------------- 820 -- ----------------------------
1634 DROP TABLE IF EXISTS `sys_role_menu`; 821 DROP TABLE IF EXISTS `sys_role_menu`;
1635 CREATE TABLE `sys_role_menu` ( 822 CREATE TABLE `sys_role_menu` (
1636 - `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '自增编å·',  
1637 - `role_id` bigint(20) NOT NULL COMMENT '角色ID',  
1638 - `menu_id` bigint(20) NOT NULL COMMENT 'èœå•ID', 823 + `id` bigint NOT NULL AUTO_INCREMENT COMMENT '自增编å·',
  824 + `role_id` bigint NOT NULL COMMENT '角色ID',
  825 + `menu_id` bigint NOT NULL COMMENT 'èœå•ID',
1639 `creator` varchar(64) DEFAULT '' COMMENT '创建者', 826 `creator` varchar(64) DEFAULT '' COMMENT '创建者',
1640 `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', 827 `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
1641 `updater` varchar(64) DEFAULT '' COMMENT '更新者', 828 `updater` varchar(64) DEFAULT '' COMMENT '更新者',
1642 `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'æ›´æ–°æ—¶é—´', 829 `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'æ›´æ–°æ—¶é—´',
1643 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是å¦åˆ é™¤', 830 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是å¦åˆ é™¤',
1644 PRIMARY KEY (`id`) USING BTREE 831 PRIMARY KEY (`id`) USING BTREE
1645 -) ENGINE=InnoDB AUTO_INCREMENT=239 DEFAULT CHARSET=utf8mb4 COMMENT='角色和èœå•å…³è”表'; 832 +) ENGINE=InnoDB AUTO_INCREMENT=239 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='角色和èœå•å…³è”表';
1646 833
1647 -- ---------------------------- 834 -- ----------------------------
1648 -- Records of sys_role_menu 835 -- Records of sys_role_menu
@@ -1809,10 +996,10 @@ COMMIT; @@ -1809,10 +996,10 @@ COMMIT;
1809 -- ---------------------------- 996 -- ----------------------------
1810 DROP TABLE IF EXISTS `sys_sms_channel`; 997 DROP TABLE IF EXISTS `sys_sms_channel`;
1811 CREATE TABLE `sys_sms_channel` ( 998 CREATE TABLE `sys_sms_channel` (
1812 - `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'ç¼–å·', 999 + `id` bigint NOT NULL AUTO_INCREMENT COMMENT 'ç¼–å·',
1813 `signature` varchar(10) NOT NULL COMMENT '短信签å', 1000 `signature` varchar(10) NOT NULL COMMENT '短信签å',
1814 `code` varchar(63) NOT NULL COMMENT '渠é“ç¼–ç ', 1001 `code` varchar(63) NOT NULL COMMENT '渠é“ç¼–ç ',
1815 - `status` tinyint(4) NOT NULL COMMENT 'å¼€å¯çжæ€', 1002 + `status` tinyint NOT NULL COMMENT 'å¼€å¯çжæ€',
1816 `remark` varchar(255) DEFAULT NULL COMMENT '备注', 1003 `remark` varchar(255) DEFAULT NULL COMMENT '备注',
1817 `api_key` varchar(128) NOT NULL COMMENT '短信 API 的账å·', 1004 `api_key` varchar(128) NOT NULL COMMENT '短信 API 的账å·',
1818 `api_secret` varchar(128) DEFAULT NULL COMMENT '短信 API 的秘钥', 1005 `api_secret` varchar(128) DEFAULT NULL COMMENT '短信 API 的秘钥',
@@ -1823,7 +1010,7 @@ CREATE TABLE `sys_sms_channel` ( @@ -1823,7 +1010,7 @@ CREATE TABLE `sys_sms_channel` (
1823 `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'æ›´æ–°æ—¶é—´', 1010 `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'æ›´æ–°æ—¶é—´',
1824 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是å¦åˆ é™¤', 1011 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是å¦åˆ é™¤',
1825 PRIMARY KEY (`id`) USING BTREE 1012 PRIMARY KEY (`id`) USING BTREE
1826 -) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8mb4 COMMENT='短信渠é“'; 1013 +) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='短信渠é“';
1827 1014
1828 -- ---------------------------- 1015 -- ----------------------------
1829 -- Records of sys_sms_channel 1016 -- Records of sys_sms_channel
@@ -1840,27 +1027,27 @@ COMMIT; @@ -1840,27 +1027,27 @@ COMMIT;
1840 -- ---------------------------- 1027 -- ----------------------------
1841 DROP TABLE IF EXISTS `sys_sms_log`; 1028 DROP TABLE IF EXISTS `sys_sms_log`;
1842 CREATE TABLE `sys_sms_log` ( 1029 CREATE TABLE `sys_sms_log` (
1843 - `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'ç¼–å·',  
1844 - `channel_id` bigint(20) NOT NULL COMMENT '短信渠é“ç¼–å·', 1030 + `id` bigint NOT NULL AUTO_INCREMENT COMMENT 'ç¼–å·',
  1031 + `channel_id` bigint NOT NULL COMMENT '短信渠é“ç¼–å·',
1845 `channel_code` varchar(63) NOT NULL COMMENT '短信渠é“ç¼–ç ', 1032 `channel_code` varchar(63) NOT NULL COMMENT '短信渠é“ç¼–ç ',
1846 - `template_id` bigint(20) NOT NULL COMMENT '模æ¿ç¼–å·', 1033 + `template_id` bigint NOT NULL COMMENT '模æ¿ç¼–å·',
1847 `template_code` varchar(63) NOT NULL COMMENT '模æ¿ç¼–ç ', 1034 `template_code` varchar(63) NOT NULL COMMENT '模æ¿ç¼–ç ',
1848 - `template_type` tinyint(4) NOT NULL COMMENT '短信类型', 1035 + `template_type` tinyint NOT NULL COMMENT '短信类型',
1849 `template_content` varchar(255) NOT NULL COMMENT '短信内容', 1036 `template_content` varchar(255) NOT NULL COMMENT '短信内容',
1850 `template_params` varchar(255) NOT NULL COMMENT 'çŸ­ä¿¡å‚æ•°', 1037 `template_params` varchar(255) NOT NULL COMMENT 'çŸ­ä¿¡å‚æ•°',
1851 `api_template_id` varchar(63) NOT NULL COMMENT '短信 API 的模æ¿ç¼–å·', 1038 `api_template_id` varchar(63) NOT NULL COMMENT '短信 API 的模æ¿ç¼–å·',
1852 `mobile` varchar(11) NOT NULL COMMENT '手机å·', 1039 `mobile` varchar(11) NOT NULL COMMENT '手机å·',
1853 - `user_id` bigint(20) DEFAULT NULL COMMENT '用户编å·',  
1854 - `user_type` tinyint(4) DEFAULT NULL COMMENT '用户类型',  
1855 - `send_status` tinyint(4) NOT NULL DEFAULT '0' COMMENT 'å‘é€çжæ€', 1040 + `user_id` bigint DEFAULT NULL COMMENT '用户编å·',
  1041 + `user_type` tinyint DEFAULT NULL COMMENT '用户类型',
  1042 + `send_status` tinyint NOT NULL DEFAULT '0' COMMENT 'å‘é€çжæ€',
1856 `send_time` datetime DEFAULT NULL COMMENT 'å‘逿—¶é—´', 1043 `send_time` datetime DEFAULT NULL COMMENT 'å‘逿—¶é—´',
1857 - `send_code` int(11) DEFAULT NULL COMMENT 'å‘é€ç»“果的编ç ', 1044 + `send_code` int DEFAULT NULL COMMENT 'å‘é€ç»“果的编ç ',
1858 `send_msg` varchar(255) DEFAULT NULL COMMENT 'å‘é€ç»“果的æç¤º', 1045 `send_msg` varchar(255) DEFAULT NULL COMMENT 'å‘é€ç»“果的æç¤º',
1859 `api_send_code` varchar(63) DEFAULT NULL COMMENT '短信 API å‘é€ç»“果的编ç ', 1046 `api_send_code` varchar(63) DEFAULT NULL COMMENT '短信 API å‘é€ç»“果的编ç ',
1860 `api_send_msg` varchar(255) DEFAULT NULL COMMENT '短信 API å‘é€å¤±è´¥çš„æç¤º', 1047 `api_send_msg` varchar(255) DEFAULT NULL COMMENT '短信 API å‘é€å¤±è´¥çš„æç¤º',
1861 `api_request_id` varchar(255) DEFAULT NULL COMMENT '短信 API å‘é€è¿”回的唯一请求 ID', 1048 `api_request_id` varchar(255) DEFAULT NULL COMMENT '短信 API å‘é€è¿”回的唯一请求 ID',
1862 `api_serial_no` varchar(255) DEFAULT NULL COMMENT '短信 API å‘é€è¿”回的åºå·', 1049 `api_serial_no` varchar(255) DEFAULT NULL COMMENT '短信 API å‘é€è¿”回的åºå·',
1863 - `receive_status` tinyint(4) NOT NULL DEFAULT '0' COMMENT '接收状æ€', 1050 + `receive_status` tinyint NOT NULL DEFAULT '0' COMMENT '接收状æ€',
1864 `receive_time` datetime DEFAULT NULL COMMENT '接收时间', 1051 `receive_time` datetime DEFAULT NULL COMMENT '接收时间',
1865 `api_receive_code` varchar(63) DEFAULT NULL COMMENT 'API 接收结果的编ç ', 1052 `api_receive_code` varchar(63) DEFAULT NULL COMMENT 'API 接收结果的编ç ',
1866 `api_receive_msg` varchar(255) DEFAULT NULL COMMENT 'API 接收结果的说明', 1053 `api_receive_msg` varchar(255) DEFAULT NULL COMMENT 'API 接收结果的说明',
@@ -1870,20 +1057,12 @@ CREATE TABLE `sys_sms_log` ( @@ -1870,20 +1057,12 @@ CREATE TABLE `sys_sms_log` (
1870 `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'æ›´æ–°æ—¶é—´', 1057 `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'æ›´æ–°æ—¶é—´',
1871 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是å¦åˆ é™¤', 1058 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是å¦åˆ é™¤',
1872 PRIMARY KEY (`id`) USING BTREE 1059 PRIMARY KEY (`id`) USING BTREE
1873 -) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=utf8mb4 COMMENT='短信日志'; 1060 +) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='短信日志';
1874 1061
1875 -- ---------------------------- 1062 -- ----------------------------
1876 -- Records of sys_sms_log 1063 -- Records of sys_sms_log
1877 -- ---------------------------- 1064 -- ----------------------------
1878 BEGIN; 1065 BEGIN;
1879 -INSERT INTO `sys_sms_log` VALUES (1, 1, 'YUN_PIAN', 2, 'test_01', 1, '正在进行登录æ“作登陆,您的验è¯ç æ˜¯1234', '{\"code\":\"1234\",\"operation\":\"登陆\"}', '4383920', '15601691399', 1, 2, 10, '2021-05-03 02:01:36', 0, 'æˆåŠŸ', '0', 'å‘逿ˆåŠŸ', NULL, '63650626024', 0, NULL, NULL, NULL, NULL, '2021-05-03 01:42:49', NULL, '2021-05-03 02:01:36', b'0');  
1880 -INSERT INTO `sys_sms_log` VALUES (2, 2, 'ALIYUN', 3, 'test_02', 1, '您的验è¯ç 0011,该验è¯ç 5分钟内有效,请勿泄æ¼äºŽä»–人ï¼', '{\"code\":\"0011\"}', 'SMS_207945135', '15601691399', NULL, NULL, 20, '2021-05-03 02:03:29', 2001000999, 'ClassNotFoundException: io.opentracing.noop.NoopTracerFactory', NULL, NULL, NULL, NULL, 0, NULL, NULL, NULL, '1', '2021-05-03 02:03:29', NULL, '2021-05-03 02:03:29', b'0');  
1881 -INSERT INTO `sys_sms_log` VALUES (3, 2, 'ALIYUN', 3, 'test_02', 1, '您的验è¯ç 1234,该验è¯ç 5分钟内有效,请勿泄æ¼äºŽä»–人ï¼', '{\"code\":\"1234\"}', 'SMS_207945135', '15601691399', NULL, NULL, 20, '2021-05-03 02:24:26', 2001000999, 'ClassNotFoundException: io.opentracing.noop.NoopTracerFactory', NULL, NULL, NULL, NULL, 0, NULL, NULL, NULL, '1', '2021-05-03 02:24:26', NULL, '2021-05-03 02:24:26', b'0');  
1882 -INSERT INTO `sys_sms_log` VALUES (4, 2, 'ALIYUN', 3, 'test_02', 1, '您的验è¯ç 0000,该验è¯ç 5分钟内有效,请勿泄æ¼äºŽä»–人ï¼', '{\"code\":\"0000\"}', 'SMS_207945135', '15601691399', NULL, NULL, 20, '2021-05-03 02:26:13', 2001000999, 'NoClassDefFoundError: Could not initialize class io.opentracing.util.GlobalTracer', NULL, NULL, NULL, NULL, 0, NULL, NULL, NULL, '1', '2021-05-03 02:25:11', NULL, '2021-05-03 02:26:13', b'0');  
1883 -INSERT INTO `sys_sms_log` VALUES (5, 2, 'ALIYUN', 3, 'test_02', 1, '您的验è¯ç 0000,该验è¯ç 5分钟内有效,请勿泄æ¼äºŽä»–人ï¼', '{\"code\":\"0000\"}', 'SMS_207945135', '15601691399', NULL, NULL, 20, '2021-05-03 02:26:46', 2001000999, 'NoClassDefFoundError: Could not initialize class io.opentracing.util.GlobalTracer', NULL, NULL, NULL, NULL, 0, NULL, NULL, NULL, '1', '2021-05-03 02:26:23', NULL, '2021-05-03 02:26:46', b'0');  
1884 -INSERT INTO `sys_sms_log` VALUES (6, 2, 'ALIYUN', 3, 'test_02', 1, '您的验è¯ç 0000,该验è¯ç 5分钟内有效,请勿泄æ¼äºŽä»–人ï¼', '{\"code\":\"0000\"}', 'SMS_207945135', '15601691399', NULL, NULL, 20, '2021-05-03 02:29:02', 2001000999, 'ClassNotFoundException: io.opentracing.noop.NoopTracerFactory', NULL, NULL, NULL, NULL, 0, NULL, NULL, NULL, '1', '2021-05-03 02:28:54', NULL, '2021-05-03 02:29:02', b'0');  
1885 -INSERT INTO `sys_sms_log` VALUES (7, 2, 'ALIYUN', 3, 'test_02', 1, '您的验è¯ç 1234,该验è¯ç 5分钟内有效,请勿泄æ¼äºŽä»–人ï¼', '{\"code\":\"1234\"}', 'SMS_207945135', '15601691399', NULL, NULL, 10, '2021-05-03 10:45:43', 0, 'æˆåŠŸ', 'OK', 'OK', 'FB024B47-5401-49FB-918E-A87A05E98AA3', '697902220009942759^0', 0, NULL, NULL, NULL, '1', '2021-05-03 10:45:32', NULL, '2021-05-03 10:45:43', b'0');  
1886 -INSERT INTO `sys_sms_log` VALUES (8, 2, 'ALIYUN', 3, 'test_02', 1, '您的验è¯ç 1234,该验è¯ç 5分钟内有效,请勿泄æ¼äºŽä»–人ï¼', '{\"code\":\"1234\"}', 'SMS_207945135', '15601691399', NULL, NULL, 20, '2021-05-03 10:49:40', 2001000999, 'NoSuchMethodError: io.opentracing.Span.setTag(Ljava/lang/String;Ljava/lang/Number;)Lio/opentracing/Span;', NULL, NULL, NULL, NULL, 0, NULL, NULL, NULL, '1', '2021-05-03 10:49:24', NULL, '2021-05-03 10:49:40', b'0');  
1887 COMMIT; 1066 COMMIT;
1888 1067
1889 -- ---------------------------- 1068 -- ----------------------------
@@ -1891,16 +1070,16 @@ COMMIT; @@ -1891,16 +1070,16 @@ COMMIT;
1891 -- ---------------------------- 1070 -- ----------------------------
1892 DROP TABLE IF EXISTS `sys_sms_template`; 1071 DROP TABLE IF EXISTS `sys_sms_template`;
1893 CREATE TABLE `sys_sms_template` ( 1072 CREATE TABLE `sys_sms_template` (
1894 - `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'ç¼–å·',  
1895 - `type` tinyint(4) NOT NULL COMMENT '短信签å',  
1896 - `status` tinyint(4) NOT NULL COMMENT 'å¼€å¯çжæ€', 1073 + `id` bigint NOT NULL AUTO_INCREMENT COMMENT 'ç¼–å·',
  1074 + `type` tinyint NOT NULL COMMENT '短信签å',
  1075 + `status` tinyint NOT NULL COMMENT 'å¼€å¯çжæ€',
1897 `code` varchar(63) NOT NULL COMMENT '模æ¿ç¼–ç ', 1076 `code` varchar(63) NOT NULL COMMENT '模æ¿ç¼–ç ',
1898 `name` varchar(63) NOT NULL COMMENT '模æ¿åç§°', 1077 `name` varchar(63) NOT NULL COMMENT '模æ¿åç§°',
1899 `content` varchar(255) NOT NULL COMMENT '模æ¿å†…容', 1078 `content` varchar(255) NOT NULL COMMENT '模æ¿å†…容',
1900 `params` varchar(255) NOT NULL COMMENT '傿•°æ•°ç»„', 1079 `params` varchar(255) NOT NULL COMMENT '傿•°æ•°ç»„',
1901 `remark` varchar(255) DEFAULT NULL COMMENT '备注', 1080 `remark` varchar(255) DEFAULT NULL COMMENT '备注',
1902 `api_template_id` varchar(63) NOT NULL COMMENT '短信 API 的模æ¿ç¼–å·', 1081 `api_template_id` varchar(63) NOT NULL COMMENT '短信 API 的模æ¿ç¼–å·',
1903 - `channel_id` bigint(20) NOT NULL COMMENT '短信渠é“ç¼–å·', 1082 + `channel_id` bigint NOT NULL COMMENT '短信渠é“ç¼–å·',
1904 `channel_code` varchar(63) NOT NULL COMMENT '短信渠é“ç¼–ç ', 1083 `channel_code` varchar(63) NOT NULL COMMENT '短信渠é“ç¼–ç ',
1905 `creator` varchar(64) DEFAULT '' COMMENT '创建者', 1084 `creator` varchar(64) DEFAULT '' COMMENT '创建者',
1906 `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', 1085 `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
@@ -1908,7 +1087,7 @@ CREATE TABLE `sys_sms_template` ( @@ -1908,7 +1087,7 @@ CREATE TABLE `sys_sms_template` (
1908 `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'æ›´æ–°æ—¶é—´', 1087 `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'æ›´æ–°æ—¶é—´',
1909 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是å¦åˆ é™¤', 1088 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是å¦åˆ é™¤',
1910 PRIMARY KEY (`id`) USING BTREE 1089 PRIMARY KEY (`id`) USING BTREE
1911 -) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=utf8mb4 COMMENT='短信模æ¿'; 1090 +) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='短信模æ¿';
1912 1091
1913 -- ---------------------------- 1092 -- ----------------------------
1914 -- Records of sys_sms_template 1093 -- Records of sys_sms_template
@@ -1923,22 +1102,53 @@ INSERT INTO `sys_sms_template` VALUES (7, 3, 0, &#39;test-04&#39;, &#39;测试下&#39;, &#39;è€é¸¡{ @@ -1923,22 +1102,53 @@ INSERT INTO `sys_sms_template` VALUES (7, 3, 0, &#39;test-04&#39;, &#39;测试下&#39;, &#39;è€é¸¡{
1923 COMMIT; 1102 COMMIT;
1924 1103
1925 -- ---------------------------- 1104 -- ----------------------------
  1105 +-- Table structure for sys_social_user
  1106 +-- ----------------------------
  1107 +DROP TABLE IF EXISTS `sys_social_user`;
  1108 +CREATE TABLE `sys_social_user` (
  1109 + `id` bigint unsigned NOT NULL AUTO_INCREMENT COMMENT '主键(自增策略)',
  1110 + `user_id` bigint NOT NULL COMMENT 'å…³è”的用户编å·',
  1111 + `user_type` tinyint NOT NULL DEFAULT '0' COMMENT '用户类型',
  1112 + `type` tinyint NOT NULL COMMENT '社交平å°çš„类型',
  1113 + `openid` varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '社交 openid',
  1114 + `token` varchar(256) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '社交 token',
  1115 + `union_id` varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '社交的全局编å·',
  1116 + `raw_token_info` varchar(1024) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '原始 Token æ•°æ®ï¼Œä¸€èˆ¬æ˜¯ JSON æ ¼å¼',
  1117 + `nickname` varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '用户昵称',
  1118 + `avatar` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '用户头åƒ',
  1119 + `raw_user_info` varchar(1024) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '原始用户数æ®ï¼Œä¸€èˆ¬æ˜¯ JSON æ ¼å¼',
  1120 + `creator` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT '' COMMENT '创建者',
  1121 + `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  1122 + `updater` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT '' COMMENT '更新者',
  1123 + `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'æ›´æ–°æ—¶é—´',
  1124 + `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是å¦åˆ é™¤',
  1125 + PRIMARY KEY (`id`) USING BTREE
  1126 +) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC COMMENT='社交用户\n';
  1127 +
  1128 +-- ----------------------------
  1129 +-- Records of sys_social_user
  1130 +-- ----------------------------
  1131 +BEGIN;
  1132 +INSERT INTO `sys_social_user` VALUES (4, 1, 2, 20, 'IPRmJ0wvBptiPIlGEZiPewGwiEiE', NULL, 'IPRmJ0wvBptiPIlGEZiPewGwiEiE', '{\"accessToken\":null,\"expireIn\":0,\"refreshToken\":null,\"refreshTokenExpireIn\":0,\"uid\":null,\"openId\":\"0TvabQWZs9g6UedEWZKSegiEiE\",\"accessCode\":null,\"unionId\":\"IPRmJ0wvBptiPIlGEZiPewGwiEiE\",\"scope\":null,\"tokenType\":null,\"idToken\":null,\"macAlgorithm\":null,\"macKey\":null,\"code\":null,\"oauthToken\":null,\"oauthTokenSecret\":null,\"userId\":null,\"screenName\":null,\"oauthCallbackConfirmed\":null}', '王文斌(芋艿)(正在输出)', NULL, '{\"nick\":\"王文斌(芋艿)(正在输出)\",\"unionid\":\"IPRmJ0wvBptiPIlGEZiPewGwiEiE\",\"dingId\":\"$:LWCP_v1:$r28ct/waSBPp5Gk7a6kDXA==\",\"openid\":\"0TvabQWZs9g6UedEWZKSegiEiE\",\"main_org_auth_high_level\":false}', NULL, '2021-10-06 00:43:17', NULL, '2021-10-06 00:43:34', b'0');
  1133 +COMMIT;
  1134 +
  1135 +-- ----------------------------
1926 -- Table structure for sys_user 1136 -- Table structure for sys_user
1927 -- ---------------------------- 1137 -- ----------------------------
1928 DROP TABLE IF EXISTS `sys_user`; 1138 DROP TABLE IF EXISTS `sys_user`;
1929 CREATE TABLE `sys_user` ( 1139 CREATE TABLE `sys_user` (
1930 - `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '用户ID', 1140 + `id` bigint NOT NULL AUTO_INCREMENT COMMENT '用户ID',
1931 `username` varchar(30) NOT NULL COMMENT '用户账å·', 1141 `username` varchar(30) NOT NULL COMMENT '用户账å·',
1932 `password` varchar(100) NOT NULL DEFAULT '' COMMENT '密ç ', 1142 `password` varchar(100) NOT NULL DEFAULT '' COMMENT '密ç ',
1933 `nickname` varchar(30) NOT NULL COMMENT '用户昵称', 1143 `nickname` varchar(30) NOT NULL COMMENT '用户昵称',
1934 `remark` varchar(500) DEFAULT NULL COMMENT '备注', 1144 `remark` varchar(500) DEFAULT NULL COMMENT '备注',
1935 - `dept_id` bigint(20) DEFAULT NULL COMMENT '部门ID', 1145 + `dept_id` bigint DEFAULT NULL COMMENT '部门ID',
1936 `post_ids` varchar(255) DEFAULT NULL COMMENT 'å²—ä½ç¼–å·æ•°ç»„', 1146 `post_ids` varchar(255) DEFAULT NULL COMMENT 'å²—ä½ç¼–å·æ•°ç»„',
1937 `email` varchar(50) DEFAULT '' COMMENT '用户邮箱', 1147 `email` varchar(50) DEFAULT '' COMMENT '用户邮箱',
1938 `mobile` varchar(11) DEFAULT '' COMMENT '手机å·ç ', 1148 `mobile` varchar(11) DEFAULT '' COMMENT '手机å·ç ',
1939 - `sex` tinyint(4) DEFAULT '0' COMMENT '用户性别', 1149 + `sex` tinyint DEFAULT '0' COMMENT '用户性别',
1940 `avatar` varchar(100) DEFAULT '' COMMENT '头åƒåœ°å€', 1150 `avatar` varchar(100) DEFAULT '' COMMENT '头åƒåœ°å€',
1941 - `status` tinyint(4) NOT NULL DEFAULT '0' COMMENT 'å¸å·çжæ€ï¼ˆ0正常 1åœç”¨ï¼‰', 1151 + `status` tinyint NOT NULL DEFAULT '0' COMMENT 'å¸å·çжæ€ï¼ˆ0正常 1åœç”¨ï¼‰',
1942 `login_ip` varchar(50) DEFAULT '' COMMENT '最åŽç™»å½•IP', 1152 `login_ip` varchar(50) DEFAULT '' COMMENT '最åŽç™»å½•IP',
1943 `login_date` datetime DEFAULT NULL COMMENT '最åŽç™»å½•æ—¶é—´', 1153 `login_date` datetime DEFAULT NULL COMMENT '最åŽç™»å½•æ—¶é—´',
1944 `creator` varchar(64) DEFAULT '' COMMENT '创建者', 1154 `creator` varchar(64) DEFAULT '' COMMENT '创建者',
@@ -1947,7 +1157,7 @@ CREATE TABLE `sys_user` ( @@ -1947,7 +1157,7 @@ CREATE TABLE `sys_user` (
1947 `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'æ›´æ–°æ—¶é—´', 1157 `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'æ›´æ–°æ—¶é—´',
1948 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是å¦åˆ é™¤', 1158 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是å¦åˆ é™¤',
1949 PRIMARY KEY (`id`) USING BTREE 1159 PRIMARY KEY (`id`) USING BTREE
1950 -) ENGINE=InnoDB AUTO_INCREMENT=105 DEFAULT CHARSET=utf8mb4 COMMENT='用户信æ¯è¡¨'; 1160 +) ENGINE=InnoDB AUTO_INCREMENT=107 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='用户信æ¯è¡¨';
1951 1161
1952 -- ---------------------------- 1162 -- ----------------------------
1953 -- Records of sys_user 1163 -- Records of sys_user
@@ -1958,6 +1168,7 @@ INSERT INTO `sys_user` VALUES (2, &#39;ry&#39;, &#39;$2a$10$7JB720yubVSZvUI0rEqK/.VqGOZTH.ul @@ -1958,6 +1168,7 @@ INSERT INTO `sys_user` VALUES (2, &#39;ry&#39;, &#39;$2a$10$7JB720yubVSZvUI0rEqK/.VqGOZTH.ul
1958 INSERT INTO `sys_user` VALUES (100, 'yudao', '$2a$10$11U48RhyJ5pSBYWSn12AD./ld671.ycSzJHbyrtpeoMeYiw31eo8a', '芋é“', 'ä¸è¦å“我', 100, '[1]', 'yudao@iocoder.cn', '15601691300', 1, '', 1, '', NULL, '', '2021-01-07 09:07:17', '1', '2021-03-14 22:35:17', b'0'); 1168 INSERT INTO `sys_user` VALUES (100, 'yudao', '$2a$10$11U48RhyJ5pSBYWSn12AD./ld671.ycSzJHbyrtpeoMeYiw31eo8a', '芋é“', 'ä¸è¦å“我', 100, '[1]', 'yudao@iocoder.cn', '15601691300', 1, '', 1, '', NULL, '', '2021-01-07 09:07:17', '1', '2021-03-14 22:35:17', b'0');
1959 INSERT INTO `sys_user` VALUES (103, 'yuanma', '', 'æºç ', NULL, 100, NULL, 'yuanma@iocoder.cn', '15601701300', 0, '', 0, '', NULL, '', '2021-01-13 23:50:35', '', '2021-01-13 23:50:35', b'0'); 1169 INSERT INTO `sys_user` VALUES (103, 'yuanma', '', 'æºç ', NULL, 100, NULL, 'yuanma@iocoder.cn', '15601701300', 0, '', 0, '', NULL, '', '2021-01-13 23:50:35', '', '2021-01-13 23:50:35', b'0');
1960 INSERT INTO `sys_user` VALUES (104, 'test', '$2a$10$.TOFpaIiI3PzEwkGrNq0Eu6Cc3rOqJMxTb1DqeSEM8StxaGPBRKoi', '测试å·', NULL, 100, '[]', '', '15601691200', 1, '', 0, '', NULL, '', '2021-01-21 02:13:53', '1', '2021-03-14 22:36:38', b'0'); 1170 INSERT INTO `sys_user` VALUES (104, 'test', '$2a$10$.TOFpaIiI3PzEwkGrNq0Eu6Cc3rOqJMxTb1DqeSEM8StxaGPBRKoi', '测试å·', NULL, 100, '[]', '', '15601691200', 1, '', 0, '', NULL, '', '2021-01-21 02:13:53', '1', '2021-03-14 22:36:38', b'0');
  1171 +INSERT INTO `sys_user` VALUES (106, 'zhijiantianya', '$2a$10$Y0hSfV2udA8quqMeWukhTuHEoKpQ5tDhclG8WUWSOH7o/MGw185Ti', 'èŠ‹é“æºç ', '', NULL, NULL, '', '', 3, 'https://portrait.gitee.com/uploads/avatars/user/0/176_zhijiantianya_1578913741.png', 0, '', NULL, NULL, '2021-09-28 09:40:59', NULL, '2021-09-28 09:40:59', b'0');
1961 COMMIT; 1172 COMMIT;
1962 1173
1963 -- ---------------------------- 1174 -- ----------------------------
@@ -1965,16 +1176,16 @@ COMMIT; @@ -1965,16 +1176,16 @@ COMMIT;
1965 -- ---------------------------- 1176 -- ----------------------------
1966 DROP TABLE IF EXISTS `sys_user_role`; 1177 DROP TABLE IF EXISTS `sys_user_role`;
1967 CREATE TABLE `sys_user_role` ( 1178 CREATE TABLE `sys_user_role` (
1968 - `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '自增编å·',  
1969 - `user_id` bigint(20) NOT NULL COMMENT '用户ID',  
1970 - `role_id` bigint(20) NOT NULL COMMENT '角色ID', 1179 + `id` bigint NOT NULL AUTO_INCREMENT COMMENT '自增编å·',
  1180 + `user_id` bigint NOT NULL COMMENT '用户ID',
  1181 + `role_id` bigint NOT NULL COMMENT '角色ID',
1971 `creator` varchar(64) DEFAULT '' COMMENT '创建者', 1182 `creator` varchar(64) DEFAULT '' COMMENT '创建者',
1972 `create_time` datetime DEFAULT NULL COMMENT '创建时间', 1183 `create_time` datetime DEFAULT NULL COMMENT '创建时间',
1973 `updater` varchar(64) DEFAULT '' COMMENT '更新者', 1184 `updater` varchar(64) DEFAULT '' COMMENT '更新者',
1974 `update_time` datetime DEFAULT NULL COMMENT 'æ›´æ–°æ—¶é—´', 1185 `update_time` datetime DEFAULT NULL COMMENT 'æ›´æ–°æ—¶é—´',
1975 `deleted` bit(1) DEFAULT b'0' COMMENT '是å¦åˆ é™¤', 1186 `deleted` bit(1) DEFAULT b'0' COMMENT '是å¦åˆ é™¤',
1976 PRIMARY KEY (`id`) USING BTREE 1187 PRIMARY KEY (`id`) USING BTREE
1977 -) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=utf8mb4 COMMENT='用户和角色关è”表'; 1188 +) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='用户和角色关è”表';
1978 1189
1979 -- ---------------------------- 1190 -- ----------------------------
1980 -- Records of sys_user_role 1191 -- Records of sys_user_role
@@ -1987,6 +1198,7 @@ INSERT INTO `sys_user_role` VALUES (4, 100, 101, &#39;&#39;, NULL, &#39;&#39;, NULL, b&#39;0&#39;); @@ -1987,6 +1198,7 @@ INSERT INTO `sys_user_role` VALUES (4, 100, 101, &#39;&#39;, NULL, &#39;&#39;, NULL, b&#39;0&#39;);
1987 INSERT INTO `sys_user_role` VALUES (5, 100, 1, '', NULL, '', NULL, b'0'); 1198 INSERT INTO `sys_user_role` VALUES (5, 100, 1, '', NULL, '', NULL, b'0');
1988 INSERT INTO `sys_user_role` VALUES (6, 100, 2, '', NULL, '', NULL, b'0'); 1199 INSERT INTO `sys_user_role` VALUES (6, 100, 2, '', NULL, '', NULL, b'0');
1989 INSERT INTO `sys_user_role` VALUES (7, 104, 101, '', NULL, '', NULL, b'0'); 1200 INSERT INTO `sys_user_role` VALUES (7, 104, 101, '', NULL, '', NULL, b'0');
  1201 +INSERT INTO `sys_user_role` VALUES (8, 106, 1, NULL, '2021-09-28 09:40:59', NULL, '2021-09-28 09:40:59', b'0');
1990 COMMIT; 1202 COMMIT;
1991 1203
1992 -- ---------------------------- 1204 -- ----------------------------
@@ -1995,7 +1207,7 @@ COMMIT; @@ -1995,7 +1207,7 @@ COMMIT;
1995 DROP TABLE IF EXISTS `sys_user_session`; 1207 DROP TABLE IF EXISTS `sys_user_session`;
1996 CREATE TABLE `sys_user_session` ( 1208 CREATE TABLE `sys_user_session` (
1997 `id` varchar(32) NOT NULL COMMENT '会è¯ç¼–å·', 1209 `id` varchar(32) NOT NULL COMMENT '会è¯ç¼–å·',
1998 - `user_id` bigint(20) NOT NULL COMMENT '用户编å·', 1210 + `user_id` bigint NOT NULL COMMENT '用户编å·',
1999 `session_timeout` datetime NOT NULL COMMENT '会è¯è¶…æ—¶æ—¶é—´', 1211 `session_timeout` datetime NOT NULL COMMENT '会è¯è¶…æ—¶æ—¶é—´',
2000 `username` varchar(30) NOT NULL COMMENT '用户账å·', 1212 `username` varchar(30) NOT NULL COMMENT '用户账å·',
2001 `user_ip` varchar(50) NOT NULL COMMENT '用户 IP', 1213 `user_ip` varchar(50) NOT NULL COMMENT '用户 IP',
@@ -2006,74 +1218,12 @@ CREATE TABLE `sys_user_session` ( @@ -2006,74 +1218,12 @@ CREATE TABLE `sys_user_session` (
2006 `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'æ›´æ–°æ—¶é—´', 1218 `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'æ›´æ–°æ—¶é—´',
2007 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是å¦åˆ é™¤', 1219 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是å¦åˆ é™¤',
2008 PRIMARY KEY (`id`) USING BTREE 1220 PRIMARY KEY (`id`) USING BTREE
2009 -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='用户在线 Session'; 1221 +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='用户在线 Session';
2010 1222
2011 -- ---------------------------- 1223 -- ----------------------------
2012 -- Records of sys_user_session 1224 -- Records of sys_user_session
2013 -- ---------------------------- 1225 -- ----------------------------
2014 BEGIN; 1226 BEGIN;
2015 -INSERT INTO `sys_user_session` VALUES ('04c6624c7bf14b1ba1a01cb976a9d876', 1, '2021-04-05 21:40:12', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-05 20:21:09', NULL, '2021-04-01 12:25:35', b'1');  
2016 -INSERT INTO `sys_user_session` VALUES ('0e235ce5ae7342a09b372a00bd7d1b41', 1, '2021-04-05 01:43:22', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-05 00:51:03', NULL, '2021-04-01 04:18:06', b'1');  
2017 -INSERT INTO `sys_user_session` VALUES ('0e6943f8ca9b4215a014843eb489ccc7', 1, '2021-04-05 22:53:22', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-05 21:43:59', NULL, '2021-04-01 17:25:41', b'1');  
2018 -INSERT INTO `sys_user_session` VALUES ('12166cd28b4f448ea468d13c471dfc6e', 1, '2021-04-09 19:48:58', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-09 19:18:58', NULL, '2021-04-02 04:33:15', b'1');  
2019 -INSERT INTO `sys_user_session` VALUES ('134d908ae33146bd9b5291471c04f604', 1, '2021-04-10 00:29:28', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-09 23:10:26', NULL, '2021-04-02 08:08:17', b'1');  
2020 -INSERT INTO `sys_user_session` VALUES ('1407ce21e47947b9b8d93bff1b55c7d6', 1, '2021-04-07 01:09:11', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-07 00:07:43', NULL, '2021-04-01 18:10:44', b'1');  
2021 -INSERT INTO `sys_user_session` VALUES ('1477c38290ff4cee8887ebfe593faa02', 1, '2021-04-17 23:34:57', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-17 23:04:57', NULL, '2021-04-12 21:36:29', b'1');  
2022 -INSERT INTO `sys_user_session` VALUES ('347ec49c06d74d138a95266cbb5535a0', 1, '2021-04-21 00:45:41', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-21 00:03:50', NULL, '2021-04-13 18:38:39', b'1');  
2023 -INSERT INTO `sys_user_session` VALUES ('352fd65e03cd48c19240d26fbc5dab07', 1, '2021-04-26 01:30:30', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-26 01:00:30', NULL, '2021-04-25 17:04:39', b'1');  
2024 -INSERT INTO `sys_user_session` VALUES ('36b6673599134b00aa2b25d4a2a7d9f9', 1, '2021-04-26 02:01:07', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-26 01:31:07', NULL, '2021-04-25 17:56:14', b'1');  
2025 -INSERT INTO `sys_user_session` VALUES ('36c310c5a56e4858bb96877547f1c67b', 1, '2021-05-03 11:15:14', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-05-03 10:45:14', NULL, '2021-05-03 10:45:14', b'0');  
2026 -INSERT INTO `sys_user_session` VALUES ('39fc76e86c7b469fa04b246523da536d', 1, '2021-04-26 23:04:36', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-26 22:34:36', NULL, '2021-04-26 13:39:54', b'1');  
2027 -INSERT INTO `sys_user_session` VALUES ('3c75ea73e13b4857a18eb57ca2eea80f', 1, '2021-04-11 20:06:52', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-11 19:36:52', NULL, '2021-04-11 09:10:53', b'1');  
2028 -INSERT INTO `sys_user_session` VALUES ('4092c5d0a1d74fca9fb69e2702ef83a2', 1, '2021-04-26 01:00:07', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-26 00:30:07', NULL, '2021-04-25 16:30:09', b'1');  
2029 -INSERT INTO `sys_user_session` VALUES ('40d532d8900c43b791266429a7911751', 1, '2021-04-05 22:11:34', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-05 21:41:34', NULL, '2021-04-01 12:28:20', b'1');  
2030 -INSERT INTO `sys_user_session` VALUES ('43676e85d0e04980b2a67181f8d9933b', 1, '2021-04-11 10:41:09', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-11 09:56:31', NULL, '2021-04-02 17:32:07', b'1');  
2031 -INSERT INTO `sys_user_session` VALUES ('505b4e7d8b0d4b40aa23bf540da81234', 1, '2021-03-14 01:25:13', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.96 Safari/537.36', NULL, '2021-03-14 00:31:43', NULL, '2021-03-13 07:35:26', b'1');  
2032 -INSERT INTO `sys_user_session` VALUES ('53c07f8d545349618f3633a1ffb2fc40', 1, '2021-04-26 23:18:27', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-26 22:48:27', NULL, '2021-04-26 14:45:51', b'1');  
2033 -INSERT INTO `sys_user_session` VALUES ('56a92b99f7b642ccbb7508042a25cb0c', 1, '2021-04-11 21:16:33', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-11 20:14:54', NULL, '2021-04-11 10:08:20', b'1');  
2034 -INSERT INTO `sys_user_session` VALUES ('5a7248bf87d14e7e9f0578b05969986c', 1, '2021-03-13 10:42:50', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.96 Safari/537.36', NULL, '2021-03-13 09:37:36', NULL, '2021-03-12 19:53:07', b'1');  
2035 -INSERT INTO `sys_user_session` VALUES ('5c30d80eb72048daa1a24d3d4f01317b', 1, '2021-04-12 00:31:10', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-11 23:08:14', NULL, '2021-04-11 15:47:45', b'1');  
2036 -INSERT INTO `sys_user_session` VALUES ('5dca80a5c61541479a4dbb6e004c2e28', 1, '2021-04-14 00:57:25', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-13 23:38:30', NULL, '2021-04-12 17:33:48', b'1');  
2037 -INSERT INTO `sys_user_session` VALUES ('6108c616991b45b9b891ff46163f95b1', 1, '2021-04-26 00:52:13', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-26 00:22:13', NULL, '2021-04-25 16:22:57', b'1');  
2038 -INSERT INTO `sys_user_session` VALUES ('72e0d4e1398642e2a5dc7cac2fd9c3a0', 1, '2021-04-26 01:58:09', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-26 01:04:50', NULL, '2021-04-25 17:30:12', b'1');  
2039 -INSERT INTO `sys_user_session` VALUES ('7324a76b029a49ee95bf54ceb4164ba9', 1, '2021-04-13 01:29:14', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-13 00:18:40', NULL, '2021-04-11 23:15:00', b'1');  
2040 -INSERT INTO `sys_user_session` VALUES ('749619894bc441bb9773902515f81e6a', 1, '2021-04-11 00:39:51', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-11 00:09:51', NULL, '2021-04-02 16:50:56', b'1');  
2041 -INSERT INTO `sys_user_session` VALUES ('750dca41b315488b8c17e1c0f8b6a519', 1, '2021-04-21 01:24:28', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-21 00:54:28', NULL, '2021-04-13 21:42:10', b'1');  
2042 -INSERT INTO `sys_user_session` VALUES ('7768ae62ad974fd989f5159649a4be82', 1, '2021-04-11 00:53:39', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-10 23:23:27', NULL, '2021-04-02 17:04:58', b'1');  
2043 -INSERT INTO `sys_user_session` VALUES ('79efcb8f64aa42af9f4b327fb383532f', 1, '2021-04-11 22:44:07', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-11 21:34:53', NULL, '2021-04-11 14:10:45', b'1');  
2044 -INSERT INTO `sys_user_session` VALUES ('7b412bc5c1fe48d7897f10e30a75fa93', 1, '2021-05-03 02:53:53', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-05-03 02:02:56', NULL, '2021-04-29 21:28:43', b'1');  
2045 -INSERT INTO `sys_user_session` VALUES ('7eea227a8ef5445189f5fbec39f799c1', 1, '2021-04-26 00:46:00', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-26 00:04:01', NULL, '2021-04-25 16:16:06', b'1');  
2046 -INSERT INTO `sys_user_session` VALUES ('7ff1aa5bba8a42f295cd438f4aacc40f', 1, '2021-04-26 00:46:15', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-26 00:16:15', NULL, '2021-04-25 16:16:28', b'1');  
2047 -INSERT INTO `sys_user_session` VALUES ('83b227ad356f4343b01d321ad26807ce', 1, '2021-04-22 00:49:12', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-21 23:33:02', NULL, '2021-04-25 15:49:09', b'1');  
2048 -INSERT INTO `sys_user_session` VALUES ('87d5b95fdad9447189a95abf8a5152df', 1, '2021-04-17 23:01:18', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-17 22:31:18', NULL, '2021-04-12 21:03:27', b'1');  
2049 -INSERT INTO `sys_user_session` VALUES ('8b3eac5e4a104a4191c8070e03d553ea', 1, '2021-04-05 02:45:12', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-05 02:15:12', NULL, '2021-04-01 11:05:25', b'1');  
2050 -INSERT INTO `sys_user_session` VALUES ('931c0b94936542d884bff469a37d8501', 1, '2021-04-26 00:53:46', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-26 00:23:46', NULL, '2021-04-25 16:24:02', b'1');  
2051 -INSERT INTO `sys_user_session` VALUES ('961970e9418d4d20a3f6487f2003d489', 1, '2021-05-03 01:46:56', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-05-03 01:16:56', NULL, '2021-04-29 17:51:38', b'1');  
2052 -INSERT INTO `sys_user_session` VALUES ('9ae27346d8b7491aad1385f51e8aa196', 1, '2021-03-13 14:02:12', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.96 Safari/537.36', NULL, '2021-03-13 10:43:06', NULL, '2021-03-13 06:40:35', b'1');  
2053 -INSERT INTO `sys_user_session` VALUES ('a2fb443b31c049008975ff8ee5499db1', 1, '2021-04-11 09:42:09', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-11 09:12:09', NULL, '2021-04-02 17:16:00', b'1');  
2054 -INSERT INTO `sys_user_session` VALUES ('a71a74adf9d141e2849d2a411d558205', 1, '2021-04-17 18:24:44', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-17 17:54:44', NULL, '2021-04-12 17:54:50', b'1');  
2055 -INSERT INTO `sys_user_session` VALUES ('ab2099c12f5c4b0288c60abe8cfff307', 1, '2021-04-18 01:41:46', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-18 01:01:35', NULL, '2021-04-13 05:14:54', b'1');  
2056 -INSERT INTO `sys_user_session` VALUES ('ae9ee7452ee54e4b983d658188c15c4d', 1, '2021-03-14 21:32:57', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.96 Safari/537.36', NULL, '2021-03-14 20:25:00', NULL, '2021-03-13 15:19:10', b'1');  
2057 -INSERT INTO `sys_user_session` VALUES ('b25659890f4645049d1fa0e2767649ae', 1, '2021-05-02 23:47:04', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-05-02 23:01:26', NULL, '2021-04-29 15:41:42', b'1');  
2058 -INSERT INTO `sys_user_session` VALUES ('b727853eccea4c8589e006ffea985146', 1, '2021-04-12 01:36:00', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-12 01:06:00', NULL, '2021-04-11 19:40:07', b'1');  
2059 -INSERT INTO `sys_user_session` VALUES ('b97cce5f119c474fb7dcff9c46541dc5', 1, '2021-04-26 00:57:09', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-26 00:27:09', NULL, '2021-04-25 16:27:10', b'1');  
2060 -INSERT INTO `sys_user_session` VALUES ('b9ee6fde7bf74ed49cad99abf86c94d6', 1, '2021-04-18 20:21:02', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-18 19:18:52', NULL, '2021-04-13 06:36:39', b'1');  
2061 -INSERT INTO `sys_user_session` VALUES ('bb4ad4579bd1436c859b94228967582f', 1, '2021-04-18 20:52:38', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-18 20:22:38', NULL, '2021-04-13 07:14:58', b'1');  
2062 -INSERT INTO `sys_user_session` VALUES ('c095616db95044c5bed66a3f84519b8b', 1, '2021-04-11 19:59:33', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-11 19:29:33', NULL, '2021-04-11 09:04:19', b'1');  
2063 -INSERT INTO `sys_user_session` VALUES ('c8805f37eb76432c89d6d54feb14756f', 1, '2021-04-18 21:54:56', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-18 21:00:38', NULL, '2021-04-13 17:45:30', b'1');  
2064 -INSERT INTO `sys_user_session` VALUES ('ccec247d69f5445cabd9f2cc2c219ead', 1, '2021-04-26 00:51:56', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-26 00:21:56', NULL, '2021-04-25 16:22:10', b'1');  
2065 -INSERT INTO `sys_user_session` VALUES ('cee634e685c746bda24d43debab7abd8', 1, '2021-04-26 00:54:12', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-26 00:24:12', NULL, '2021-04-25 16:24:14', b'1');  
2066 -INSERT INTO `sys_user_session` VALUES ('d07fa3ca0a6b4a1aa77e7cc24b521fa5', 1, '2021-04-26 01:00:57', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-26 00:30:57', NULL, '2021-04-25 16:30:58', b'1');  
2067 -INSERT INTO `sys_user_session` VALUES ('d0adf48f82914212b947e5ab04d9fb65', 1, '2021-03-21 19:16:28', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-03-21 18:13:37', NULL, '2021-03-15 05:53:20', b'1');  
2068 -INSERT INTO `sys_user_session` VALUES ('dfbce0af867547f4bb01ac6f2e583337', 1, '2021-04-11 17:06:15', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-11 16:36:15', NULL, '2021-04-11 08:24:03', b'1');  
2069 -INSERT INTO `sys_user_session` VALUES ('e154d98c038c4bf187325c6c6bb72b13', 1, '2021-05-03 01:09:20', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-05-02 23:52:50', NULL, '2021-04-29 16:59:52', b'1');  
2070 -INSERT INTO `sys_user_session` VALUES ('e5ecf10e40a5463b8f9b5b453cb1649b', 1, '2021-04-11 17:06:22', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-11 16:36:22', NULL, '2021-04-11 08:24:03', b'1');  
2071 -INSERT INTO `sys_user_session` VALUES ('e80c2400724042a2ab73732166cde8fc', 1, '2021-03-21 21:17:12', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-03-21 20:47:12', NULL, '2021-03-15 08:18:56', b'1');  
2072 -INSERT INTO `sys_user_session` VALUES ('e8872f5192584440a548641b83c877ef', 1, '2021-03-21 18:36:01', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-03-21 17:51:48', NULL, '2021-03-15 03:54:20', b'1');  
2073 -INSERT INTO `sys_user_session` VALUES ('f1ab99b09b5a475795579ff99d60ac78', 1, '2021-03-14 23:04:31', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.96 Safari/537.36', NULL, '2021-03-14 21:12:44', NULL, '2021-03-15 03:32:38', b'1');  
2074 -INSERT INTO `sys_user_session` VALUES ('f2a4182f62ea4559b9946a523928fac4', 1, '2021-04-10 01:45:57', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-10 00:55:38', NULL, '2021-04-02 14:52:48', b'1');  
2075 -INSERT INTO `sys_user_session` VALUES ('f853b50d064340a581e9a49bba9411fc', 1, '2021-03-10 01:55:41', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.96 Safari/537.36', NULL, '2021-03-10 01:11:53', NULL, '2021-03-12 18:37:05', b'1');  
2076 -INSERT INTO `sys_user_session` VALUES ('fb341cc0cfdd4cc7b5058f2a3bc279bc', 1, '2021-04-26 00:46:50', 'admin', '127.0.0.1', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36', NULL, '2021-04-26 00:16:50', NULL, '2021-04-25 16:18:36', b'1');  
2077 COMMIT; 1227 COMMIT;
2078 1228
2079 -- ---------------------------- 1229 -- ----------------------------
@@ -2081,15 +1231,15 @@ COMMIT; @@ -2081,15 +1231,15 @@ COMMIT;
2081 -- ---------------------------- 1231 -- ----------------------------
2082 DROP TABLE IF EXISTS `tool_codegen_column`; 1232 DROP TABLE IF EXISTS `tool_codegen_column`;
2083 CREATE TABLE `tool_codegen_column` ( 1233 CREATE TABLE `tool_codegen_column` (
2084 - `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'ç¼–å·',  
2085 - `table_id` bigint(20) NOT NULL COMMENT '表编å·', 1234 + `id` bigint NOT NULL AUTO_INCREMENT COMMENT 'ç¼–å·',
  1235 + `table_id` bigint NOT NULL COMMENT '表编å·',
2086 `column_name` varchar(200) NOT NULL COMMENT '字段å', 1236 `column_name` varchar(200) NOT NULL COMMENT '字段å',
2087 `column_type` varchar(100) NOT NULL COMMENT '字段类型', 1237 `column_type` varchar(100) NOT NULL COMMENT '字段类型',
2088 `column_comment` varchar(500) NOT NULL COMMENT '字段æè¿°', 1238 `column_comment` varchar(500) NOT NULL COMMENT '字段æè¿°',
2089 `nullable` bit(1) NOT NULL COMMENT '是å¦å…许为空', 1239 `nullable` bit(1) NOT NULL COMMENT '是å¦å…许为空',
2090 `primary_key` bit(1) NOT NULL COMMENT '是å¦ä¸»é”®', 1240 `primary_key` bit(1) NOT NULL COMMENT '是å¦ä¸»é”®',
2091 `auto_Increment` char(1) NOT NULL COMMENT '是å¦è‡ªå¢ž', 1241 `auto_Increment` char(1) NOT NULL COMMENT '是å¦è‡ªå¢ž',
2092 - `ordinal_position` int(11) NOT NULL COMMENT '排åº', 1242 + `ordinal_position` int NOT NULL COMMENT '排åº',
2093 `java_type` varchar(32) NOT NULL COMMENT 'Java 属性类型', 1243 `java_type` varchar(32) NOT NULL COMMENT 'Java 属性类型',
2094 `java_field` varchar(64) NOT NULL COMMENT 'Java 属性å', 1244 `java_field` varchar(64) NOT NULL COMMENT 'Java 属性å',
2095 `dict_type` varchar(200) DEFAULT '' COMMENT '字典类型', 1245 `dict_type` varchar(200) DEFAULT '' COMMENT '字典类型',
@@ -2106,7 +1256,7 @@ CREATE TABLE `tool_codegen_column` ( @@ -2106,7 +1256,7 @@ CREATE TABLE `tool_codegen_column` (
2106 `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'æ›´æ–°æ—¶é—´', 1256 `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'æ›´æ–°æ—¶é—´',
2107 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是å¦åˆ é™¤', 1257 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是å¦åˆ é™¤',
2108 PRIMARY KEY (`id`) USING BTREE 1258 PRIMARY KEY (`id`) USING BTREE
2109 -) ENGINE=InnoDB AUTO_INCREMENT=469 DEFAULT CHARSET=utf8mb4 COMMENT='代ç ç”Ÿæˆè¡¨å­—段定义'; 1259 +) ENGINE=InnoDB AUTO_INCREMENT=469 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='代ç ç”Ÿæˆè¡¨å­—段定义';
2110 1260
2111 -- ---------------------------- 1261 -- ----------------------------
2112 -- Records of tool_codegen_column 1262 -- Records of tool_codegen_column
@@ -2355,8 +1505,8 @@ COMMIT; @@ -2355,8 +1505,8 @@ COMMIT;
2355 -- ---------------------------- 1505 -- ----------------------------
2356 DROP TABLE IF EXISTS `tool_codegen_table`; 1506 DROP TABLE IF EXISTS `tool_codegen_table`;
2357 CREATE TABLE `tool_codegen_table` ( 1507 CREATE TABLE `tool_codegen_table` (
2358 - `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'ç¼–å·',  
2359 - `import_type` tinyint(4) NOT NULL DEFAULT '1' COMMENT '导入类型', 1508 + `id` bigint NOT NULL AUTO_INCREMENT COMMENT 'ç¼–å·',
  1509 + `import_type` tinyint NOT NULL DEFAULT '1' COMMENT '导入类型',
2360 `table_name` varchar(200) NOT NULL DEFAULT '' COMMENT '表åç§°', 1510 `table_name` varchar(200) NOT NULL DEFAULT '' COMMENT '表åç§°',
2361 `table_comment` varchar(500) NOT NULL DEFAULT '' COMMENT '表æè¿°', 1511 `table_comment` varchar(500) NOT NULL DEFAULT '' COMMENT '表æè¿°',
2362 `remark` varchar(500) DEFAULT NULL COMMENT '备注', 1512 `remark` varchar(500) DEFAULT NULL COMMENT '备注',
@@ -2365,15 +1515,15 @@ CREATE TABLE `tool_codegen_table` ( @@ -2365,15 +1515,15 @@ CREATE TABLE `tool_codegen_table` (
2365 `class_name` varchar(100) NOT NULL DEFAULT '' COMMENT 'ç±»åç§°', 1515 `class_name` varchar(100) NOT NULL DEFAULT '' COMMENT 'ç±»åç§°',
2366 `class_comment` varchar(50) NOT NULL COMMENT 'ç±»æè¿°', 1516 `class_comment` varchar(50) NOT NULL COMMENT 'ç±»æè¿°',
2367 `author` varchar(50) NOT NULL COMMENT '作者', 1517 `author` varchar(50) NOT NULL COMMENT '作者',
2368 - `template_type` tinyint(4) NOT NULL DEFAULT '1' COMMENT '模æ¿ç±»åž‹',  
2369 - `parent_menu_id` bigint(20) DEFAULT NULL COMMENT '父èœå•ç¼–å·', 1518 + `template_type` tinyint NOT NULL DEFAULT '1' COMMENT '模æ¿ç±»åž‹',
  1519 + `parent_menu_id` bigint DEFAULT NULL COMMENT '父èœå•ç¼–å·',
2370 `creator` varchar(64) DEFAULT '' COMMENT '创建者', 1520 `creator` varchar(64) DEFAULT '' COMMENT '创建者',
2371 `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', 1521 `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
2372 `updater` varchar(64) DEFAULT '' COMMENT '更新者', 1522 `updater` varchar(64) DEFAULT '' COMMENT '更新者',
2373 `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'æ›´æ–°æ—¶é—´', 1523 `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'æ›´æ–°æ—¶é—´',
2374 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是å¦åˆ é™¤', 1524 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是å¦åˆ é™¤',
2375 PRIMARY KEY (`id`) USING BTREE 1525 PRIMARY KEY (`id`) USING BTREE
2376 -) ENGINE=InnoDB AUTO_INCREMENT=39 DEFAULT CHARSET=utf8mb4 COMMENT='代ç ç”Ÿæˆè¡¨å®šä¹‰'; 1526 +) ENGINE=InnoDB AUTO_INCREMENT=39 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='代ç ç”Ÿæˆè¡¨å®šä¹‰';
2377 1527
2378 -- ---------------------------- 1528 -- ----------------------------
2379 -- Records of tool_codegen_table 1529 -- Records of tool_codegen_table
@@ -2403,11 +1553,11 @@ COMMIT; @@ -2403,11 +1553,11 @@ COMMIT;
2403 -- ---------------------------- 1553 -- ----------------------------
2404 DROP TABLE IF EXISTS `tool_test_demo`; 1554 DROP TABLE IF EXISTS `tool_test_demo`;
2405 CREATE TABLE `tool_test_demo` ( 1555 CREATE TABLE `tool_test_demo` (
2406 - `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'ç¼–å·', 1556 + `id` bigint NOT NULL AUTO_INCREMENT COMMENT 'ç¼–å·',
2407 `name` varchar(100) NOT NULL DEFAULT '' COMMENT 'åå­—', 1557 `name` varchar(100) NOT NULL DEFAULT '' COMMENT 'åå­—',
2408 - `status` tinyint(4) NOT NULL DEFAULT '0' COMMENT '状æ€',  
2409 - `type` tinyint(4) NOT NULL COMMENT '类型',  
2410 - `category` tinyint(4) NOT NULL COMMENT '分类', 1558 + `status` tinyint NOT NULL DEFAULT '0' COMMENT '状æ€',
  1559 + `type` tinyint NOT NULL COMMENT '类型',
  1560 + `category` tinyint NOT NULL COMMENT '分类',
2411 `remark` varchar(500) DEFAULT NULL COMMENT '备注', 1561 `remark` varchar(500) DEFAULT NULL COMMENT '备注',
2412 `creator` varchar(64) DEFAULT '' COMMENT '创建者', 1562 `creator` varchar(64) DEFAULT '' COMMENT '创建者',
2413 `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', 1563 `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
@@ -2415,7 +1565,7 @@ CREATE TABLE `tool_test_demo` ( @@ -2415,7 +1565,7 @@ CREATE TABLE `tool_test_demo` (
2415 `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'æ›´æ–°æ—¶é—´', 1565 `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'æ›´æ–°æ—¶é—´',
2416 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是å¦åˆ é™¤', 1566 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是å¦åˆ é™¤',
2417 PRIMARY KEY (`id`) USING BTREE 1567 PRIMARY KEY (`id`) USING BTREE
2418 -) ENGINE=InnoDB AUTO_INCREMENT=108 DEFAULT CHARSET=utf8mb4 COMMENT='字典类型表'; 1568 +) ENGINE=InnoDB AUTO_INCREMENT=108 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='字典类型表';
2419 1569
2420 -- ---------------------------- 1570 -- ----------------------------
2421 -- Records of tool_test_demo 1571 -- Records of tool_test_demo
@@ -2425,4 +1575,46 @@ INSERT INTO `tool_test_demo` VALUES (106, &#39;è€äº”1&#39;, 0, 1, 1, &#39;牛逼哈2&#39;, &#39;&#39;, @@ -2425,4 +1575,46 @@ INSERT INTO `tool_test_demo` VALUES (106, &#39;è€äº”1&#39;, 0, 1, 1, &#39;牛逼哈2&#39;, &#39;&#39;,
2425 INSERT INTO `tool_test_demo` VALUES (107, '哈哈哈哈', 1, 0, 1, 'biubiubui', '', '2021-02-06 14:00:54', '', '2021-02-06 14:00:54', b'0'); 1575 INSERT INTO `tool_test_demo` VALUES (107, '哈哈哈哈', 1, 0, 1, 'biubiubui', '', '2021-02-06 14:00:54', '', '2021-02-06 14:00:54', b'0');
2426 COMMIT; 1576 COMMIT;
2427 1577
  1578 +-- ----------------------------
  1579 +-- Table structure for mbr_user
  1580 +-- ----------------------------
  1581 +CREATE TABLE `mbr_user` (
  1582 + `id` bigint NOT NULL AUTO_INCREMENT COMMENT 'ç¼–å·',
  1583 + `nickname` varchar(30) NOT NULL COMMENT '用户昵称',
  1584 + `avatar` varchar(255) DEFAULT NULL COMMENT '头åƒ',
  1585 + `status` tinyint(4) NOT NULL COMMENT '状æ€',
  1586 + `mobile` varchar(11) NOT NULL COMMENT '手机å·',
  1587 + `password` varchar(100) NOT NULL DEFAULT '' COMMENT '密ç ',
  1588 + `register_ip` varchar(32) NOT NULL COMMENT '注册 IP',
  1589 + `creator` varchar(64) DEFAULT '' COMMENT '创建者',
  1590 + `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  1591 + `updater` varchar(64) DEFAULT '' COMMENT '更新者',
  1592 + `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'æ›´æ–°æ—¶é—´',
  1593 + `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是å¦åˆ é™¤',
  1594 + PRIMARY KEY (`id`) USING BTREE,
  1595 + UNIQUE KEY `uk_mobile` (`mobile`) USING BTREE COMMENT '手机å·'
  1596 +) ENGINE=InnoDB AUTO_INCREMENT=245 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin COMMENT='用户';
  1597 +
  1598 +-- ----------------------------
  1599 +-- Table structure for mbr_sms_code
  1600 +-- ----------------------------
  1601 +CREATE TABLE `mbr_sms_code` (
  1602 + `id` bigint NOT NULL AUTO_INCREMENT COMMENT 'ç¼–å·',
  1603 + `mobile` varchar(11) NOT NULL COMMENT '手机å·',
  1604 + `code` varchar(6) NOT NULL COMMENT '验è¯ç ',
  1605 + `create_ip` varchar(15) NOT NULL COMMENT '创建 IP',
  1606 + `scene` tinyint(4) NOT NULL COMMENT 'å‘é€åœºæ™¯',
  1607 + `today_index` tinyint(4) NOT NULL COMMENT '今日å‘é€çš„第几æ¡',
  1608 + `used` tinyint(4) NOT NULL COMMENT '是å¦ä½¿ç”¨',
  1609 + `used_time` datetime DEFAULT NULL COMMENT '使用时间',
  1610 + `used_ip` varchar(255) DEFAULT NULL COMMENT '使用 IP',
  1611 + `creator` varchar(64) DEFAULT '' COMMENT '创建者',
  1612 + `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  1613 + `updater` varchar(64) DEFAULT '' COMMENT '更新者',
  1614 + `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'æ›´æ–°æ—¶é—´',
  1615 + `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是å¦åˆ é™¤',
  1616 + PRIMARY KEY (`id`) USING BTREE,
  1617 + KEY `idx_mobile` (`mobile`) USING BTREE COMMENT '手机å·'
  1618 +) ENGINE=InnoDB AUTO_INCREMENT=445 DEFAULT CHARSET=utf8mb4 COMMENT='手机验è¯ç ';
  1619 +
2428 SET FOREIGN_KEY_CHECKS = 1; 1620 SET FOREIGN_KEY_CHECKS = 1;
yudao-admin-server/pom.xml
@@ -117,6 +117,12 @@ @@ -117,6 +117,12 @@
117 <artifactId>screw-core</artifactId> <!-- 实现数据库文档 --> 117 <artifactId>screw-core</artifactId> <!-- 实现数据库文档 -->
118 </dependency> 118 </dependency>
119 119
  120 + <!-- TODO 后续看情况,进行调整 -->
  121 + <dependency>
  122 + <groupId>com.xkcoding.justauth</groupId>
  123 + <artifactId>justauth-spring-boot-starter</artifactId>
  124 + <version>1.4.0</version>
  125 + </dependency>
120 </dependencies> 126 </dependencies>
121 127
122 <build> 128 <build>
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/infra/controller/file/InfFileController.java
@@ -41,7 +41,7 @@ public class InfFileController { @@ -41,7 +41,7 @@ public class InfFileController {
41 @ApiOperation("上传文件") 41 @ApiOperation("上传文件")
42 @ApiImplicitParams({ 42 @ApiImplicitParams({
43 @ApiImplicitParam(name = "file", value = "文件附件", required = true, dataTypeClass = MultipartFile.class), 43 @ApiImplicitParam(name = "file", value = "文件附件", required = true, dataTypeClass = MultipartFile.class),
44 - @ApiImplicitParam(name = "path", value = "文件路径", required = false, example = "yudaoyuanma.png", dataTypeClass = String.class) 44 + @ApiImplicitParam(name = "path", value = "文件路径", example = "yudaoyuanma.png", dataTypeClass = String.class)
45 }) 45 })
46 public CommonResult<String> uploadFile(@RequestParam("file") MultipartFile file, 46 public CommonResult<String> uploadFile(@RequestParam("file") MultipartFile file,
47 @RequestParam("path") String path) throws IOException { 47 @RequestParam("path") String path) throws IOException {
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/system/controller/auth/SysAuthController.java
1 package cn.iocoder.yudao.adminserver.modules.system.controller.auth; 1 package cn.iocoder.yudao.adminserver.modules.system.controller.auth;
2 2
3 -import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;  
4 -import cn.iocoder.yudao.framework.common.pojo.CommonResult;  
5 -import cn.iocoder.yudao.framework.operatelog.core.annotations.OperateLog;  
6 -import cn.iocoder.yudao.adminserver.modules.system.controller.auth.vo.auth.SysAuthLoginReqVO;  
7 -import cn.iocoder.yudao.adminserver.modules.system.controller.auth.vo.auth.SysAuthLoginRespVO;  
8 -import cn.iocoder.yudao.adminserver.modules.system.controller.auth.vo.auth.SysAuthMenuRespVO;  
9 -import cn.iocoder.yudao.adminserver.modules.system.controller.auth.vo.auth.SysAuthPermissionInfoRespVO; 3 +import cn.iocoder.yudao.adminserver.modules.system.controller.auth.vo.auth.*;
10 import cn.iocoder.yudao.adminserver.modules.system.convert.auth.SysAuthConvert; 4 import cn.iocoder.yudao.adminserver.modules.system.convert.auth.SysAuthConvert;
11 import cn.iocoder.yudao.adminserver.modules.system.dal.dataobject.permission.SysMenuDO; 5 import cn.iocoder.yudao.adminserver.modules.system.dal.dataobject.permission.SysMenuDO;
12 import cn.iocoder.yudao.adminserver.modules.system.dal.dataobject.permission.SysRoleDO; 6 import cn.iocoder.yudao.adminserver.modules.system.dal.dataobject.permission.SysRoleDO;
@@ -15,10 +9,17 @@ import cn.iocoder.yudao.adminserver.modules.system.enums.permission.MenuTypeEnum @@ -15,10 +9,17 @@ import cn.iocoder.yudao.adminserver.modules.system.enums.permission.MenuTypeEnum
15 import cn.iocoder.yudao.adminserver.modules.system.service.auth.SysAuthService; 9 import cn.iocoder.yudao.adminserver.modules.system.service.auth.SysAuthService;
16 import cn.iocoder.yudao.adminserver.modules.system.service.permission.SysPermissionService; 10 import cn.iocoder.yudao.adminserver.modules.system.service.permission.SysPermissionService;
17 import cn.iocoder.yudao.adminserver.modules.system.service.permission.SysRoleService; 11 import cn.iocoder.yudao.adminserver.modules.system.service.permission.SysRoleService;
  12 +import cn.iocoder.yudao.adminserver.modules.system.service.social.SysSocialService;
18 import cn.iocoder.yudao.adminserver.modules.system.service.user.SysUserService; 13 import cn.iocoder.yudao.adminserver.modules.system.service.user.SysUserService;
  14 +import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
  15 +import cn.iocoder.yudao.framework.common.pojo.CommonResult;
19 import cn.iocoder.yudao.framework.common.util.collection.SetUtils; 16 import cn.iocoder.yudao.framework.common.util.collection.SetUtils;
  17 +import cn.iocoder.yudao.framework.operatelog.core.annotations.OperateLog;
20 import io.swagger.annotations.Api; 18 import io.swagger.annotations.Api;
  19 +import io.swagger.annotations.ApiImplicitParam;
  20 +import io.swagger.annotations.ApiImplicitParams;
21 import io.swagger.annotations.ApiOperation; 21 import io.swagger.annotations.ApiOperation;
  22 +import lombok.extern.slf4j.Slf4j;
22 import org.springframework.validation.annotation.Validated; 23 import org.springframework.validation.annotation.Validated;
23 import org.springframework.web.bind.annotation.*; 24 import org.springframework.web.bind.annotation.*;
24 25
@@ -27,15 +28,16 @@ import javax.validation.Valid; @@ -27,15 +28,16 @@ import javax.validation.Valid;
27 import java.util.List; 28 import java.util.List;
28 29
29 import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success; 30 import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
30 -import static cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils.getLoginUserId;  
31 -import static cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils.getLoginUserRoleIds;  
32 import static cn.iocoder.yudao.framework.common.util.servlet.ServletUtils.getClientIP; 31 import static cn.iocoder.yudao.framework.common.util.servlet.ServletUtils.getClientIP;
33 import static cn.iocoder.yudao.framework.common.util.servlet.ServletUtils.getUserAgent; 32 import static cn.iocoder.yudao.framework.common.util.servlet.ServletUtils.getUserAgent;
  33 +import static cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils.getLoginUserId;
  34 +import static cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils.getLoginUserRoleIds;
34 35
35 @Api(tags = "认证") 36 @Api(tags = "认证")
36 @RestController 37 @RestController
37 @RequestMapping("/") 38 @RequestMapping("/")
38 @Validated 39 @Validated
  40 +@Slf4j
39 public class SysAuthController { 41 public class SysAuthController {
40 42
41 @Resource 43 @Resource
@@ -46,6 +48,8 @@ public class SysAuthController { @@ -46,6 +48,8 @@ public class SysAuthController {
46 private SysRoleService roleService; 48 private SysRoleService roleService;
47 @Resource 49 @Resource
48 private SysPermissionService permissionService; 50 private SysPermissionService permissionService;
  51 + @Resource
  52 + private SysSocialService socialService;
49 53
50 @PostMapping("/login") 54 @PostMapping("/login")
51 @ApiOperation("使用账号密码登录") 55 @ApiOperation("使用账号密码登录")
@@ -57,7 +61,7 @@ public class SysAuthController { @@ -57,7 +61,7 @@ public class SysAuthController {
57 } 61 }
58 62
59 @GetMapping("/get-permission-info") 63 @GetMapping("/get-permission-info")
60 - @ApiOperation("获取登陆用户的权限信息") 64 + @ApiOperation("获取登录用户的权限信息")
61 public CommonResult<SysAuthPermissionInfoRespVO> getPermissionInfo() { 65 public CommonResult<SysAuthPermissionInfoRespVO> getPermissionInfo() {
62 // 获得用户信息 66 // 获得用户信息
63 SysUserDO user = userService.getUser(getLoginUserId()); 67 SysUserDO user = userService.getUser(getLoginUserId());
@@ -68,7 +72,7 @@ public class SysAuthController { @@ -68,7 +72,7 @@ public class SysAuthController {
68 List<SysRoleDO> roleList = roleService.getRolesFromCache(getLoginUserRoleIds()); 72 List<SysRoleDO> roleList = roleService.getRolesFromCache(getLoginUserRoleIds());
69 // 获得菜单列表 73 // 获得菜单列表
70 List<SysMenuDO> menuList = permissionService.getRoleMenusFromCache( 74 List<SysMenuDO> menuList = permissionService.getRoleMenusFromCache(
71 - getLoginUserRoleIds(), // 注意,基于登陆的角色,因为后续的权限判断也是基于它 75 + getLoginUserRoleIds(), // 注意,基于登录的角色,因为后续的权限判断也是基于它
72 SetUtils.asSet(MenuTypeEnum.DIR.getType(), MenuTypeEnum.MENU.getType(), MenuTypeEnum.BUTTON.getType()), 76 SetUtils.asSet(MenuTypeEnum.DIR.getType(), MenuTypeEnum.MENU.getType(), MenuTypeEnum.BUTTON.getType()),
73 SetUtils.asSet(CommonStatusEnum.ENABLE.getStatus())); 77 SetUtils.asSet(CommonStatusEnum.ENABLE.getStatus()));
74 // 拼接结果返回 78 // 拼接结果返回
@@ -76,15 +80,60 @@ public class SysAuthController { @@ -76,15 +80,60 @@ public class SysAuthController {
76 } 80 }
77 81
78 @GetMapping("list-menus") 82 @GetMapping("list-menus")
79 - @ApiOperation("获得登陆用户的菜单列表") 83 + @ApiOperation("获得登录用户的菜单列表")
80 public CommonResult<List<SysAuthMenuRespVO>> getMenus() { 84 public CommonResult<List<SysAuthMenuRespVO>> getMenus() {
81 // 获得用户拥有的菜单列表 85 // 获得用户拥有的菜单列表
82 List<SysMenuDO> menuList = permissionService.getRoleMenusFromCache( 86 List<SysMenuDO> menuList = permissionService.getRoleMenusFromCache(
83 - getLoginUserRoleIds(), // 注意,基于登陆的角色,因为后续的权限判断也是基于它 87 + getLoginUserRoleIds(), // 注意,基于登录的角色,因为后续的权限判断也是基于它
84 SetUtils.asSet(MenuTypeEnum.DIR.getType(), MenuTypeEnum.MENU.getType()), // 只要目录和菜单类型 88 SetUtils.asSet(MenuTypeEnum.DIR.getType(), MenuTypeEnum.MENU.getType()), // 只要目录和菜单类型
85 SetUtils.asSet(CommonStatusEnum.ENABLE.getStatus())); // 只要开启的 89 SetUtils.asSet(CommonStatusEnum.ENABLE.getStatus())); // 只要开启的
86 // 转换成 Tree 结构返回 90 // 转换成 Tree 结构返回
87 return success(SysAuthConvert.INSTANCE.buildMenuTree(menuList)); 91 return success(SysAuthConvert.INSTANCE.buildMenuTree(menuList));
88 } 92 }
89 93
  94 + // ========== 社交登录相关 ==========
  95 +
  96 + @GetMapping("/social-auth-redirect")
  97 + @ApiOperation("社交授权的跳转")
  98 + @ApiImplicitParams({
  99 + @ApiImplicitParam(name = "type", value = "社交类型", required = true, dataTypeClass = Integer.class),
  100 + @ApiImplicitParam(name = "redirectUri", value = "回调路径", dataTypeClass = String.class)
  101 + })
  102 + public CommonResult<String> socialAuthRedirect(@RequestParam("type") Integer type,
  103 + @RequestParam("redirectUri") String redirectUri) {
  104 + return CommonResult.success(socialService.getAuthorizeUrl(type, redirectUri));
  105 + }
  106 +
  107 + @PostMapping("/social-login")
  108 + @ApiOperation("社交登录,使用 code 授权码")
  109 + @OperateLog(enable = false) // 避免 Post 请求被记录操作日志
  110 + public CommonResult<SysAuthLoginRespVO> socialLogin(@RequestBody @Valid SysAuthSocialLoginReqVO reqVO) {
  111 + String token = authService.socialLogin(reqVO, getClientIP(), getUserAgent());
  112 + // 返回结果
  113 + return success(SysAuthLoginRespVO.builder().token(token).build());
  114 + }
  115 +
  116 + @PostMapping("/social-login2")
  117 + @ApiOperation("社交登录,使用 code 授权码 + 账号密码")
  118 + @OperateLog(enable = false) // 避免 Post 请求被记录操作日志
  119 + public CommonResult<SysAuthLoginRespVO> socialLogin2(@RequestBody @Valid SysAuthSocialLogin2ReqVO reqVO) {
  120 + String token = authService.socialLogin2(reqVO, getClientIP(), getUserAgent());
  121 + // 返回结果
  122 + return success(SysAuthLoginRespVO.builder().token(token).build());
  123 + }
  124 +
  125 + @PostMapping("/social-bind")
  126 + @ApiOperation("社交绑定,使用 code 授权码")
  127 + public CommonResult<Boolean> socialBind(@RequestBody @Valid SysAuthSocialBindReqVO reqVO) {
  128 + authService.socialBind(getLoginUserId(), reqVO);
  129 + return CommonResult.success(true);
  130 + }
  131 +
  132 + @DeleteMapping("/social-unbind")
  133 + @ApiOperation("取消社交绑定")
  134 + public CommonResult<Boolean> socialUnbind(@RequestBody SysAuthSocialUnbindReqVO reqVO) {
  135 + socialService.unbindSocialUser(getLoginUserId(), reqVO.getType(), reqVO.getUnionId());
  136 + return CommonResult.success(true);
  137 + }
  138 +
90 } 139 }
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/system/controller/auth/vo/auth/SysAuthLoginReqVO.java
@@ -11,7 +11,7 @@ import org.hibernate.validator.constraints.Length; @@ -11,7 +11,7 @@ import org.hibernate.validator.constraints.Length;
11 import javax.validation.constraints.NotEmpty; 11 import javax.validation.constraints.NotEmpty;
12 import javax.validation.constraints.Pattern; 12 import javax.validation.constraints.Pattern;
13 13
14 -@ApiModel("账号密码登陆 Request VO") 14 +@ApiModel("账号密码登录 Request VO")
15 @Data 15 @Data
16 @NoArgsConstructor 16 @NoArgsConstructor
17 @AllArgsConstructor 17 @AllArgsConstructor
@@ -19,7 +19,7 @@ import javax.validation.constraints.Pattern; @@ -19,7 +19,7 @@ import javax.validation.constraints.Pattern;
19 public class SysAuthLoginReqVO { 19 public class SysAuthLoginReqVO {
20 20
21 @ApiModelProperty(value = "账号", required = true, example = "yudaoyuanma") 21 @ApiModelProperty(value = "账号", required = true, example = "yudaoyuanma")
22 - @NotEmpty(message = "登陆账号不能为空") 22 + @NotEmpty(message = "登录账号不能为空")
23 @Length(min = 4, max = 16, message = "账号长度为 4-16 位") 23 @Length(min = 4, max = 16, message = "账号长度为 4-16 位")
24 @Pattern(regexp = "^[A-Za-z0-9]+$", message = "账号格式为数字以及字母") 24 @Pattern(regexp = "^[A-Za-z0-9]+$", message = "账号格式为数字以及字母")
25 private String username; 25 private String username;
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/system/controller/auth/vo/auth/SysAuthLoginRespVO.java
@@ -7,7 +7,7 @@ import lombok.Builder; @@ -7,7 +7,7 @@ import lombok.Builder;
7 import lombok.Data; 7 import lombok.Data;
8 import lombok.NoArgsConstructor; 8 import lombok.NoArgsConstructor;
9 9
10 -@ApiModel("账号密码登陆 Response VO") 10 +@ApiModel("账号密码登录 Response VO")
11 @Data 11 @Data
12 @NoArgsConstructor 12 @NoArgsConstructor
13 @AllArgsConstructor 13 @AllArgsConstructor
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/system/controller/auth/vo/auth/SysAuthMenuRespVO.java
@@ -9,7 +9,7 @@ import lombok.NoArgsConstructor; @@ -9,7 +9,7 @@ import lombok.NoArgsConstructor;
9 9
10 import java.util.List; 10 import java.util.List;
11 11
12 -@ApiModel("登陆用户的菜单信息 Response VO") 12 +@ApiModel("登录用户的菜单信息 Response VO")
13 @Data 13 @Data
14 @NoArgsConstructor 14 @NoArgsConstructor
15 @AllArgsConstructor 15 @AllArgsConstructor
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/system/controller/auth/vo/auth/SysAuthPermissionInfoRespVO.java
@@ -9,7 +9,7 @@ import lombok.NoArgsConstructor; @@ -9,7 +9,7 @@ import lombok.NoArgsConstructor;
9 9
10 import java.util.Set; 10 import java.util.Set;
11 11
12 -@ApiModel(value = "登陆用户的权限信息 Response VO", description = "额外包括用户信息和角色列表") 12 +@ApiModel(value = "登录用户的权限信息 Response VO", description = "额外包括用户信息和角色列表")
13 @Data 13 @Data
14 @NoArgsConstructor 14 @NoArgsConstructor
15 @AllArgsConstructor 15 @AllArgsConstructor
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/system/controller/auth/vo/auth/SysAuthSocialBindReqVO.java 0 → 100644
  1 +package cn.iocoder.yudao.adminserver.modules.system.controller.auth.vo.auth;
  2 +
  3 +import cn.iocoder.yudao.adminserver.modules.system.enums.social.SysSocialTypeEnum;
  4 +import cn.iocoder.yudao.framework.common.validation.InEnum;
  5 +import io.swagger.annotations.ApiModel;
  6 +import io.swagger.annotations.ApiModelProperty;
  7 +import lombok.AllArgsConstructor;
  8 +import lombok.Builder;
  9 +import lombok.Data;
  10 +import lombok.NoArgsConstructor;
  11 +
  12 +import javax.validation.constraints.NotEmpty;
  13 +import javax.validation.constraints.NotNull;
  14 +
  15 +@ApiModel("社交绑定 Request VO,使用 code 授权码")
  16 +@Data
  17 +@NoArgsConstructor
  18 +@AllArgsConstructor
  19 +@Builder
  20 +public class SysAuthSocialBindReqVO {
  21 +
  22 + @ApiModelProperty(value = "社交平台的类型", required = true, example = "10", notes = "参见 SysUserSocialTypeEnum 枚举值")
  23 + @InEnum(SysSocialTypeEnum.class)
  24 + @NotNull(message = "社交平台的类型不能为空")
  25 + private Integer type;
  26 +
  27 + @ApiModelProperty(value = "授权码", required = true, example = "1024")
  28 + @NotEmpty(message = "授权码不能为空")
  29 + private String code;
  30 +
  31 + @ApiModelProperty(value = "state", required = true, example = "9b2ffbc1-7425-4155-9894-9d5c08541d62")
  32 + @NotEmpty(message = "state 不能为空")
  33 + private String state;
  34 +
  35 +}
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/system/controller/auth/vo/auth/SysAuthSocialLogin2ReqVO.java 0 → 100644
  1 +package cn.iocoder.yudao.adminserver.modules.system.controller.auth.vo.auth;
  2 +
  3 +import cn.iocoder.yudao.adminserver.modules.system.enums.social.SysSocialTypeEnum;
  4 +import cn.iocoder.yudao.framework.common.validation.InEnum;
  5 +import io.swagger.annotations.ApiModel;
  6 +import io.swagger.annotations.ApiModelProperty;
  7 +import lombok.AllArgsConstructor;
  8 +import lombok.Builder;
  9 +import lombok.Data;
  10 +import lombok.NoArgsConstructor;
  11 +import org.hibernate.validator.constraints.Length;
  12 +
  13 +import javax.validation.constraints.NotEmpty;
  14 +import javax.validation.constraints.NotNull;
  15 +import javax.validation.constraints.Pattern;
  16 +
  17 +@ApiModel("社交登录 Request VO,使用 code 授权码 + 账号密码")
  18 +@Data
  19 +@NoArgsConstructor
  20 +@AllArgsConstructor
  21 +@Builder
  22 +public class SysAuthSocialLogin2ReqVO {
  23 +
  24 + @ApiModelProperty(value = "社交平台的类型", required = true, example = "10", notes = "参见 SysUserSocialTypeEnum 枚举值")
  25 + @InEnum(SysSocialTypeEnum.class)
  26 + @NotNull(message = "社交平台的类型不能为空")
  27 + private Integer type;
  28 +
  29 + @ApiModelProperty(value = "授权码", required = true, example = "1024")
  30 + @NotEmpty(message = "授权码不能为空")
  31 + private String code;
  32 +
  33 + @ApiModelProperty(value = "state", required = true, example = "9b2ffbc1-7425-4155-9894-9d5c08541d62")
  34 + @NotEmpty(message = "state 不能为空")
  35 + private String state;
  36 +
  37 + @ApiModelProperty(value = "账号", required = true, example = "yudaoyuanma")
  38 + @NotEmpty(message = "登录账号不能为空")
  39 + @Length(min = 4, max = 16, message = "账号长度为 4-16 位")
  40 + @Pattern(regexp = "^[A-Za-z0-9]+$", message = "账号格式为数字以及字母")
  41 + private String username;
  42 +
  43 + @ApiModelProperty(value = "密码", required = true, example = "buzhidao")
  44 + @NotEmpty(message = "密码不能为空")
  45 + @Length(min = 4, max = 16, message = "密码长度为 4-16 位")
  46 + private String password;
  47 +
  48 +}
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/system/controller/auth/vo/auth/SysAuthSocialLoginReqVO.java 0 → 100644
  1 +package cn.iocoder.yudao.adminserver.modules.system.controller.auth.vo.auth;
  2 +
  3 +import cn.iocoder.yudao.adminserver.modules.system.enums.social.SysSocialTypeEnum;
  4 +import cn.iocoder.yudao.framework.common.validation.InEnum;
  5 +import io.swagger.annotations.ApiModel;
  6 +import io.swagger.annotations.ApiModelProperty;
  7 +import lombok.AllArgsConstructor;
  8 +import lombok.Builder;
  9 +import lombok.Data;
  10 +import lombok.NoArgsConstructor;
  11 +
  12 +import javax.validation.constraints.NotEmpty;
  13 +import javax.validation.constraints.NotNull;
  14 +
  15 +@ApiModel("社交登录 Request VO,使用 code 授权码")
  16 +@Data
  17 +@NoArgsConstructor
  18 +@AllArgsConstructor
  19 +@Builder
  20 +public class SysAuthSocialLoginReqVO {
  21 +
  22 + @ApiModelProperty(value = "社交平台的类型", required = true, example = "10", notes = "参见 SysUserSocialTypeEnum 枚举值")
  23 + @InEnum(SysSocialTypeEnum.class)
  24 + @NotNull(message = "社交平台的类型不能为空")
  25 + private Integer type;
  26 +
  27 + @ApiModelProperty(value = "授权码", required = true, example = "1024")
  28 + @NotEmpty(message = "授权码不能为空")
  29 + private String code;
  30 +
  31 + @ApiModelProperty(value = "state", required = true, example = "9b2ffbc1-7425-4155-9894-9d5c08541d62")
  32 + @NotEmpty(message = "state 不能为空")
  33 + private String state;
  34 +
  35 +}
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/system/controller/auth/vo/auth/SysAuthSocialUnbindReqVO.java 0 → 100644
  1 +package cn.iocoder.yudao.adminserver.modules.system.controller.auth.vo.auth;
  2 +
  3 +import cn.iocoder.yudao.adminserver.modules.system.enums.social.SysSocialTypeEnum;
  4 +import cn.iocoder.yudao.framework.common.validation.InEnum;
  5 +import io.swagger.annotations.ApiModel;
  6 +import io.swagger.annotations.ApiModelProperty;
  7 +import lombok.AllArgsConstructor;
  8 +import lombok.Builder;
  9 +import lombok.Data;
  10 +import lombok.NoArgsConstructor;
  11 +
  12 +import javax.validation.constraints.NotEmpty;
  13 +import javax.validation.constraints.NotNull;
  14 +
  15 +@ApiModel("取消社交绑定 Request VO,使用 code 授权码")
  16 +@Data
  17 +@NoArgsConstructor
  18 +@AllArgsConstructor
  19 +@Builder
  20 +public class SysAuthSocialUnbindReqVO {
  21 +
  22 + @ApiModelProperty(value = "社交平台的类型", required = true, example = "10", notes = "参见 SysUserSocialTypeEnum 枚举值")
  23 + @InEnum(SysSocialTypeEnum.class)
  24 + @NotNull(message = "社交平台的类型不能为空")
  25 + private Integer type;
  26 +
  27 + @ApiModelProperty(value = "社交的全局编号", required = true, example = "IPRmJ0wvBptiPIlGEZiPewGwiEiE")
  28 + @NotEmpty(message = "社交的全局编号不能为空")
  29 + private String unionId;
  30 +
  31 +}
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/system/controller/auth/vo/session/SysUserSessionPageItemRespVO.java
@@ -26,7 +26,7 @@ public class SysUserSessionPageItemRespVO extends PageParam { @@ -26,7 +26,7 @@ public class SysUserSessionPageItemRespVO extends PageParam {
26 @ApiModelProperty(value = "浏览器 UserAgent", required = true, example = "Mozilla/5.0") 26 @ApiModelProperty(value = "浏览器 UserAgent", required = true, example = "Mozilla/5.0")
27 private String userAgent; 27 private String userAgent;
28 28
29 - @ApiModelProperty(value = "登陆时间", required = true) 29 + @ApiModelProperty(value = "登录时间", required = true)
30 private Date createTime; 30 private Date createTime;
31 31
32 @ApiModelProperty(value = "用户账号", required = true, example = "yudao") 32 @ApiModelProperty(value = "用户账号", required = true, example = "yudao")
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/system/controller/logger/SysLoginLogController.java
@@ -27,7 +27,7 @@ import java.util.List; @@ -27,7 +27,7 @@ import java.util.List;
27 27
28 import static cn.iocoder.yudao.framework.operatelog.core.enums.OperateTypeEnum.EXPORT; 28 import static cn.iocoder.yudao.framework.operatelog.core.enums.OperateTypeEnum.EXPORT;
29 29
30 -@Api(tags = "登陆日志") 30 +@Api(tags = "登录日志")
31 @RestController 31 @RestController
32 @RequestMapping("/system/login-log") 32 @RequestMapping("/system/login-log")
33 @Validated 33 @Validated
@@ -37,7 +37,7 @@ public class SysLoginLogController { @@ -37,7 +37,7 @@ public class SysLoginLogController {
37 private SysLoginLogService loginLogService; 37 private SysLoginLogService loginLogService;
38 38
39 @GetMapping("/page") 39 @GetMapping("/page")
40 - @ApiOperation("获得登陆日志分页列表") 40 + @ApiOperation("获得登录日志分页列表")
41 @PreAuthorize("@ss.hasPermission('system:login-log:query')") 41 @PreAuthorize("@ss.hasPermission('system:login-log:query')")
42 public CommonResult<PageResult<SysLoginLogRespVO>> getLoginLogPage(@Valid SysLoginLogPageReqVO reqVO) { 42 public CommonResult<PageResult<SysLoginLogRespVO>> getLoginLogPage(@Valid SysLoginLogPageReqVO reqVO) {
43 PageResult<SysLoginLogDO> page = loginLogService.getLoginLogPage(reqVO); 43 PageResult<SysLoginLogDO> page = loginLogService.getLoginLogPage(reqVO);
@@ -45,7 +45,7 @@ public class SysLoginLogController { @@ -45,7 +45,7 @@ public class SysLoginLogController {
45 } 45 }
46 46
47 @GetMapping("/export") 47 @GetMapping("/export")
48 - @ApiOperation("导出登陆日志 Excel") 48 + @ApiOperation("导出登录日志 Excel")
49 @PreAuthorize("@ss.hasPermission('system:login-log:export')") 49 @PreAuthorize("@ss.hasPermission('system:login-log:export')")
50 @OperateLog(type = EXPORT) 50 @OperateLog(type = EXPORT)
51 public void exportLoginLog(HttpServletResponse response, @Valid SysLoginLogExportReqVO reqVO) throws IOException { 51 public void exportLoginLog(HttpServletResponse response, @Valid SysLoginLogExportReqVO reqVO) throws IOException {
@@ -53,7 +53,7 @@ public class SysLoginLogController { @@ -53,7 +53,7 @@ public class SysLoginLogController {
53 // 拼接数据 53 // 拼接数据
54 List<SysLoginLogExcelVO> data = SysLoginLogConvert.INSTANCE.convertList(list); 54 List<SysLoginLogExcelVO> data = SysLoginLogConvert.INSTANCE.convertList(list);
55 // 输出 55 // 输出
56 - ExcelUtils.write(response, "登陆日志.xls", "数据列表", SysLoginLogExcelVO.class, data); 56 + ExcelUtils.write(response, "登录日志.xls", "数据列表", SysLoginLogExcelVO.class, data);
57 } 57 }
58 58
59 } 59 }
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/system/controller/logger/vo/loginlog/SysLoginLogBaseVO.java
@@ -9,7 +9,7 @@ import javax.validation.constraints.NotNull; @@ -9,7 +9,7 @@ import javax.validation.constraints.NotNull;
9 import javax.validation.constraints.Size; 9 import javax.validation.constraints.Size;
10 10
11 /** 11 /**
12 - * 登陆日志 Base VO,提供给添加、修改、详细的子 VO 使用 12 + * 登录日志 Base VO,提供给添加、修改、详细的子 VO 使用
13 * 如果子 VO 存在差异的字段,请不要添加到这里,影响 Swagger 文档生成 13 * 如果子 VO 存在差异的字段,请不要添加到这里,影响 Swagger 文档生成
14 */ 14 */
15 @Data 15 @Data
@@ -28,8 +28,8 @@ public class SysLoginLogBaseVO { @@ -28,8 +28,8 @@ public class SysLoginLogBaseVO {
28 @Size(max = 30, message = "用户账号长度不能超过30个字符") 28 @Size(max = 30, message = "用户账号长度不能超过30个字符")
29 private String username; 29 private String username;
30 30
31 - @ApiModelProperty(value = "登陆结果", required = true, example = "1", notes = "参见 SysLoginResultEnum 枚举类")  
32 - @NotNull(message = "登陆结果不能为空") 31 + @ApiModelProperty(value = "登录结果", required = true, example = "1", notes = "参见 SysLoginResultEnum 枚举类")
  32 + @NotNull(message = "登录结果不能为空")
33 private Integer result; 33 private Integer result;
34 34
35 @ApiModelProperty(value = "用户 IP", required = true, example = "127.0.0.1") 35 @ApiModelProperty(value = "用户 IP", required = true, example = "127.0.0.1")
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/system/controller/logger/vo/loginlog/SysLoginLogCreateReqVO.java
@@ -5,8 +5,8 @@ import lombok.Data; @@ -5,8 +5,8 @@ import lombok.Data;
5 import lombok.EqualsAndHashCode; 5 import lombok.EqualsAndHashCode;
6 import lombok.ToString; 6 import lombok.ToString;
7 7
8 -@ApiModel(value = "登陆日志创建 Request VO",  
9 - description = "暂时提供给前端,仅仅后端记录登陆日志时,进行使用") 8 +@ApiModel(value = "登录日志创建 Request VO",
  9 + description = "暂时提供给前端,仅仅后端记录登录日志时,进行使用")
10 @Data 10 @Data
11 @EqualsAndHashCode(callSuper = true) 11 @EqualsAndHashCode(callSuper = true)
12 @ToString(callSuper = true) 12 @ToString(callSuper = true)
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/system/controller/logger/vo/loginlog/SysLoginLogExcelVO.java
@@ -9,7 +9,7 @@ import lombok.Data; @@ -9,7 +9,7 @@ import lombok.Data;
9 import java.util.Date; 9 import java.util.Date;
10 10
11 /** 11 /**
12 - * 登陆日志 Excel 导出响应 VO 12 + * 登录日志 Excel 导出响应 VO
13 */ 13 */
14 @Data 14 @Data
15 public class SysLoginLogExcelVO { 15 public class SysLoginLogExcelVO {
@@ -20,17 +20,21 @@ public class SysLoginLogExcelVO { @@ -20,17 +20,21 @@ public class SysLoginLogExcelVO {
20 @ExcelProperty("用户账号") 20 @ExcelProperty("用户账号")
21 private String username; 21 private String username;
22 22
23 - @ExcelProperty(value = "登陆结果", converter = DictConvert.class) 23 + @ExcelProperty(value = "日志类型", converter = DictConvert.class)
  24 + @DictFormat(SysDictTypeConstants.LOGIN_TYPE)
  25 + private Integer logType;
  26 +
  27 + @ExcelProperty(value = "登录结果", converter = DictConvert.class)
24 @DictFormat(SysDictTypeConstants.LOGIN_RESULT) 28 @DictFormat(SysDictTypeConstants.LOGIN_RESULT)
25 private Integer result; 29 private Integer result;
26 30
27 - @ExcelProperty("登陆 IP") 31 + @ExcelProperty("登录 IP")
28 private String userIp; 32 private String userIp;
29 33
30 @ExcelProperty("浏览器 UA") 34 @ExcelProperty("浏览器 UA")
31 private String userAgent; 35 private String userAgent;
32 36
33 - @ExcelProperty("登陆时间") 37 + @ExcelProperty("登录时间")
34 private Date createTime; 38 private Date createTime;
35 39
36 } 40 }
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/system/controller/logger/vo/loginlog/SysLoginLogExportReqVO.java
@@ -9,7 +9,7 @@ import java.util.Date; @@ -9,7 +9,7 @@ import java.util.Date;
9 9
10 import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND; 10 import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
11 11
12 -@ApiModel("登陆日志分页列表 Request VO") 12 +@ApiModel("登录日志分页列表 Request VO")
13 @Data 13 @Data
14 public class SysLoginLogExportReqVO { 14 public class SysLoginLogExportReqVO {
15 15
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/system/controller/logger/vo/loginlog/SysLoginLogPageReqVO.java
@@ -11,7 +11,7 @@ import java.util.Date; @@ -11,7 +11,7 @@ import java.util.Date;
11 11
12 import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND; 12 import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
13 13
14 -@ApiModel("登陆日志分页列表 Request VO") 14 +@ApiModel("登录日志分页列表 Request VO")
15 @Data 15 @Data
16 @EqualsAndHashCode(callSuper = true) 16 @EqualsAndHashCode(callSuper = true)
17 public class SysLoginLogPageReqVO extends PageParam { 17 public class SysLoginLogPageReqVO extends PageParam {
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/system/controller/logger/vo/loginlog/SysLoginLogRespVO.java
@@ -6,9 +6,10 @@ import lombok.Data; @@ -6,9 +6,10 @@ import lombok.Data;
6 import lombok.EqualsAndHashCode; 6 import lombok.EqualsAndHashCode;
7 import lombok.ToString; 7 import lombok.ToString;
8 8
  9 +import javax.validation.constraints.NotNull;
9 import java.util.Date; 10 import java.util.Date;
10 11
11 -@ApiModel("登陆日志 Response VO") 12 +@ApiModel("登录日志 Response VO")
12 @Data 13 @Data
13 @EqualsAndHashCode(callSuper = true) 14 @EqualsAndHashCode(callSuper = true)
14 @ToString(callSuper = true) 15 @ToString(callSuper = true)
@@ -17,7 +18,15 @@ public class SysLoginLogRespVO extends SysLoginLogBaseVO { @@ -17,7 +18,15 @@ public class SysLoginLogRespVO extends SysLoginLogBaseVO {
17 @ApiModelProperty(value = "日志编号", required = true, example = "1024") 18 @ApiModelProperty(value = "日志编号", required = true, example = "1024")
18 private Long id; 19 private Long id;
19 20
20 - @ApiModelProperty(value = "登陆时间", required = true) 21 + @ApiModelProperty(value = "用户编号", required = true, example = "666")
  22 + @NotNull(message = "用户编号不能为空")
  23 + private Long userId;
  24 +
  25 + @ApiModelProperty(value = "用户类型", required = true, example = "2", notes = "参见 UserTypeEnum 枚举")
  26 + @NotNull(message = "用户类型不能为空")
  27 + private Integer userType;
  28 +
  29 + @ApiModelProperty(value = "登录时间", required = true)
21 private Date createTime; 30 private Date createTime;
22 31
23 } 32 }
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/system/controller/user/SysUserProfileController.http 0 → 100644
  1 +### 请求 /system/user/profile/get 接口 => 没有权限
  2 +GET {{baseUrl}}/system/user/profile/get
  3 +Authorization: Bearer test1
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/system/controller/user/SysUserProfileController.java
1 package cn.iocoder.yudao.adminserver.modules.system.controller.user; 1 package cn.iocoder.yudao.adminserver.modules.system.controller.user;
2 2
3 import cn.hutool.core.collection.CollUtil; 3 import cn.hutool.core.collection.CollUtil;
  4 +import cn.iocoder.yudao.adminserver.modules.system.dal.dataobject.social.SysSocialUserDO;
  5 +import cn.iocoder.yudao.adminserver.modules.system.service.social.SysSocialService;
4 import cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil; 6 import cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil;
5 import cn.iocoder.yudao.framework.common.pojo.CommonResult; 7 import cn.iocoder.yudao.framework.common.pojo.CommonResult;
6 import cn.iocoder.yudao.adminserver.modules.system.controller.user.vo.profile.SysUserProfileRespVO; 8 import cn.iocoder.yudao.adminserver.modules.system.controller.user.vo.profile.SysUserProfileRespVO;
@@ -52,6 +54,8 @@ public class SysUserProfileController { @@ -52,6 +54,8 @@ public class SysUserProfileController {
52 private SysPermissionService permissionService; 54 private SysPermissionService permissionService;
53 @Resource 55 @Resource
54 private SysRoleService roleService; 56 private SysRoleService roleService;
  57 + @Resource
  58 + private SysSocialService socialService;
55 59
56 @GetMapping("/get") 60 @GetMapping("/get")
57 @ApiOperation("获得登录用户信息") 61 @ApiOperation("获得登录用户信息")
@@ -72,6 +76,9 @@ public class SysUserProfileController { @@ -72,6 +76,9 @@ public class SysUserProfileController {
72 List<SysPostDO> posts = postService.getPosts(user.getPostIds()); 76 List<SysPostDO> posts = postService.getPosts(user.getPostIds());
73 resp.setPosts(SysUserConvert.INSTANCE.convertList02(posts)); 77 resp.setPosts(SysUserConvert.INSTANCE.convertList02(posts));
74 } 78 }
  79 + // 获得社交用户信息
  80 + List<SysSocialUserDO> socialUsers = socialService.getSocialUserList(user.getId());
  81 + resp.setSocialUsers(SysUserConvert.INSTANCE.convertList03(socialUsers));
75 return success(resp); 82 return success(resp);
76 } 83 }
77 84
@@ -89,14 +96,14 @@ public class SysUserProfileController { @@ -89,14 +96,14 @@ public class SysUserProfileController {
89 return success(true); 96 return success(true);
90 } 97 }
91 98
92 - @PutMapping("/upload-avatar") 99 + @PutMapping("/update-avatar")
93 @ApiOperation("上传用户个人头像") 100 @ApiOperation("上传用户个人头像")
94 - public CommonResult<Boolean> updateUserAvatar(@RequestParam("avatarFile") MultipartFile file) throws IOException { 101 + public CommonResult<String> updateUserAvatar(@RequestParam("avatarFile") MultipartFile file) throws IOException {
95 if (file.isEmpty()) { 102 if (file.isEmpty()) {
96 throw ServiceExceptionUtil.exception(FILE_IS_EMPTY); 103 throw ServiceExceptionUtil.exception(FILE_IS_EMPTY);
97 } 104 }
98 - userService.updateUserAvatar(getLoginUserId(), file.getInputStream());  
99 - return success(true); 105 + String avatar = userService.updateUserAvatar(getLoginUserId(), file.getInputStream());
  106 + return success(avatar);
100 } 107 }
101 108
102 } 109 }
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/system/controller/user/vo/profile/SysUserProfileRespVO.java
@@ -25,7 +25,7 @@ public class SysUserProfileRespVO extends SysUserBaseVO { @@ -25,7 +25,7 @@ public class SysUserProfileRespVO extends SysUserBaseVO {
25 @ApiModelProperty(value = "状态", required = true, example = "1", notes = "参见 SysCommonStatusEnum 枚举类") 25 @ApiModelProperty(value = "状态", required = true, example = "1", notes = "参见 SysCommonStatusEnum 枚举类")
26 private Integer status; 26 private Integer status;
27 27
28 - @ApiModelProperty(value = "最后登陆 IP", required = true, example = "192.168.1.1") 28 + @ApiModelProperty(value = "最后登录 IP", required = true, example = "192.168.1.1")
29 private String loginIp; 29 private String loginIp;
30 30
31 @ApiModelProperty(value = "最后登录时间", required = true, example = "时间戳格式") 31 @ApiModelProperty(value = "最后登录时间", required = true, example = "时间戳格式")
@@ -48,6 +48,10 @@ public class SysUserProfileRespVO extends SysUserBaseVO { @@ -48,6 +48,10 @@ public class SysUserProfileRespVO extends SysUserBaseVO {
48 * 所属岗位数组 48 * 所属岗位数组
49 */ 49 */
50 private List<Post> posts; 50 private List<Post> posts;
  51 + /**
  52 + * 社交用户数组
  53 + */
  54 + private List<SocialUser> socialUsers;
51 55
52 @ApiModel("角色") 56 @ApiModel("角色")
53 @Data 57 @Data
@@ -85,4 +89,16 @@ public class SysUserProfileRespVO extends SysUserBaseVO { @@ -85,4 +89,16 @@ public class SysUserProfileRespVO extends SysUserBaseVO {
85 89
86 } 90 }
87 91
  92 + @ApiModel("社交用户")
  93 + @Data
  94 + public static class SocialUser {
  95 +
  96 + @ApiModelProperty(value = "社交平台的类型", required = true, example = "10", notes = "参见 SysSocialTypeEnum 枚举类")
  97 + private Integer type;
  98 +
  99 + @ApiModelProperty(value = "社交的全局编号", required = true, example = "IPRmJ0wvBptiPIlGEZiPewGwiEiE")
  100 + private String unionId;
  101 +
  102 + }
  103 +
88 } 104 }
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/system/controller/user/vo/user/SysUserRespVO.java
@@ -19,7 +19,7 @@ public class SysUserRespVO extends SysUserBaseVO { @@ -19,7 +19,7 @@ public class SysUserRespVO extends SysUserBaseVO {
19 @ApiModelProperty(value = "状态", required = true, example = "1", notes = "参见 SysCommonStatusEnum 枚举类") 19 @ApiModelProperty(value = "状态", required = true, example = "1", notes = "参见 SysCommonStatusEnum 枚举类")
20 private Integer status; 20 private Integer status;
21 21
22 - @ApiModelProperty(value = "最后登陆 IP", required = true, example = "192.168.1.1") 22 + @ApiModelProperty(value = "最后登录 IP", required = true, example = "192.168.1.1")
23 private String loginIp; 23 private String loginIp;
24 24
25 @ApiModelProperty(value = "最后登录时间", required = true, example = "时间戳格式") 25 @ApiModelProperty(value = "最后登录时间", required = true, example = "时间戳格式")
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/system/convert/auth/SysAuthConvert.java
1 package cn.iocoder.yudao.adminserver.modules.system.convert.auth; 1 package cn.iocoder.yudao.adminserver.modules.system.convert.auth;
2 2
3 -import cn.iocoder.yudao.framework.security.core.LoginUser;  
4 import cn.iocoder.yudao.adminserver.modules.system.controller.auth.vo.auth.SysAuthMenuRespVO; 3 import cn.iocoder.yudao.adminserver.modules.system.controller.auth.vo.auth.SysAuthMenuRespVO;
5 import cn.iocoder.yudao.adminserver.modules.system.controller.auth.vo.auth.SysAuthPermissionInfoRespVO; 4 import cn.iocoder.yudao.adminserver.modules.system.controller.auth.vo.auth.SysAuthPermissionInfoRespVO;
  5 +import cn.iocoder.yudao.adminserver.modules.system.controller.auth.vo.auth.SysAuthSocialLogin2ReqVO;
  6 +import cn.iocoder.yudao.adminserver.modules.system.controller.auth.vo.auth.SysAuthSocialLoginReqVO;
6 import cn.iocoder.yudao.adminserver.modules.system.controller.user.vo.profile.SysUserProfileUpdatePasswordReqVO; 7 import cn.iocoder.yudao.adminserver.modules.system.controller.user.vo.profile.SysUserProfileUpdatePasswordReqVO;
7 import cn.iocoder.yudao.adminserver.modules.system.controller.user.vo.profile.SysUserProfileUpdateReqVO; 8 import cn.iocoder.yudao.adminserver.modules.system.controller.user.vo.profile.SysUserProfileUpdateReqVO;
8 import cn.iocoder.yudao.adminserver.modules.system.dal.dataobject.permission.SysMenuDO; 9 import cn.iocoder.yudao.adminserver.modules.system.dal.dataobject.permission.SysMenuDO;
@@ -10,16 +11,14 @@ import cn.iocoder.yudao.adminserver.modules.system.dal.dataobject.permission.Sys @@ -10,16 +11,14 @@ import cn.iocoder.yudao.adminserver.modules.system.dal.dataobject.permission.Sys
10 import cn.iocoder.yudao.adminserver.modules.system.dal.dataobject.user.SysUserDO; 11 import cn.iocoder.yudao.adminserver.modules.system.dal.dataobject.user.SysUserDO;
11 import cn.iocoder.yudao.adminserver.modules.system.enums.permission.MenuIdEnum; 12 import cn.iocoder.yudao.adminserver.modules.system.enums.permission.MenuIdEnum;
12 import cn.iocoder.yudao.framework.common.util.collection.CollectionUtils; 13 import cn.iocoder.yudao.framework.common.util.collection.CollectionUtils;
  14 +import cn.iocoder.yudao.framework.security.core.LoginUser;
  15 +import me.zhyd.oauth.model.AuthCallback;
13 import org.mapstruct.Mapper; 16 import org.mapstruct.Mapper;
14 import org.mapstruct.Mapping; 17 import org.mapstruct.Mapping;
15 import org.mapstruct.factory.Mappers; 18 import org.mapstruct.factory.Mappers;
16 import org.slf4j.LoggerFactory; 19 import org.slf4j.LoggerFactory;
17 20
18 -import java.util.ArrayList;  
19 -import java.util.Comparator;  
20 -import java.util.LinkedHashMap;  
21 -import java.util.List;  
22 -import java.util.Map; 21 +import java.util.*;
23 22
24 @Mapper 23 @Mapper
25 public interface SysAuthConvert { 24 public interface SysAuthConvert {
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/system/convert/user/SysUserConvert.java
@@ -7,6 +7,7 @@ import cn.iocoder.yudao.adminserver.modules.system.controller.user.vo.user.*; @@ -7,6 +7,7 @@ import cn.iocoder.yudao.adminserver.modules.system.controller.user.vo.user.*;
7 import cn.iocoder.yudao.adminserver.modules.system.dal.dataobject.dept.SysDeptDO; 7 import cn.iocoder.yudao.adminserver.modules.system.dal.dataobject.dept.SysDeptDO;
8 import cn.iocoder.yudao.adminserver.modules.system.dal.dataobject.dept.SysPostDO; 8 import cn.iocoder.yudao.adminserver.modules.system.dal.dataobject.dept.SysPostDO;
9 import cn.iocoder.yudao.adminserver.modules.system.dal.dataobject.permission.SysRoleDO; 9 import cn.iocoder.yudao.adminserver.modules.system.dal.dataobject.permission.SysRoleDO;
  10 +import cn.iocoder.yudao.adminserver.modules.system.dal.dataobject.social.SysSocialUserDO;
10 import cn.iocoder.yudao.adminserver.modules.system.dal.dataobject.user.SysUserDO; 11 import cn.iocoder.yudao.adminserver.modules.system.dal.dataobject.user.SysUserDO;
11 import org.mapstruct.Mapper; 12 import org.mapstruct.Mapper;
12 import org.mapstruct.factory.Mappers; 13 import org.mapstruct.factory.Mappers;
@@ -42,4 +43,6 @@ public interface SysUserConvert { @@ -42,4 +43,6 @@ public interface SysUserConvert {
42 43
43 List<SysUserProfileRespVO.Post> convertList02(List<SysPostDO> list); 44 List<SysUserProfileRespVO.Post> convertList02(List<SysPostDO> list);
44 45
  46 + List<SysUserProfileRespVO.SocialUser> convertList03(List<SysSocialUserDO> list);
  47 +
45 } 48 }
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/system/dal/dataobject/logger/SysLoginLogDO.java
1 package cn.iocoder.yudao.adminserver.modules.system.dal.dataobject.logger; 1 package cn.iocoder.yudao.adminserver.modules.system.dal.dataobject.logger;
2 2
  3 +import cn.iocoder.yudao.framework.common.enums.UserTypeEnum;
3 import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; 4 import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
4 import cn.iocoder.yudao.adminserver.modules.system.enums.logger.SysLoginLogTypeEnum; 5 import cn.iocoder.yudao.adminserver.modules.system.enums.logger.SysLoginLogTypeEnum;
5 import cn.iocoder.yudao.adminserver.modules.system.enums.logger.SysLoginResultEnum; 6 import cn.iocoder.yudao.adminserver.modules.system.enums.logger.SysLoginResultEnum;
@@ -9,9 +10,9 @@ import lombok.EqualsAndHashCode; @@ -9,9 +10,9 @@ import lombok.EqualsAndHashCode;
9 import lombok.ToString; 10 import lombok.ToString;
10 11
11 /** 12 /**
12 - * 登陆日志表 13 + * 登录日志表
13 * 14 *
14 - * 注意,包括登陆和登出两种行为 15 + * 注意,包括登录和登出两种行为
15 * 16 *
16 * @author ruoyi 17 * @author ruoyi
17 */ 18 */
@@ -36,13 +37,23 @@ public class SysLoginLogDO extends BaseDO { @@ -36,13 +37,23 @@ public class SysLoginLogDO extends BaseDO {
36 */ 37 */
37 private String traceId; 38 private String traceId;
38 /** 39 /**
  40 + * 用户编号
  41 + */
  42 + private Long userId;
  43 + /**
  44 + * 用户类型
  45 + *
  46 + * 枚举 {@link UserTypeEnum}
  47 + */
  48 + private Integer userType;
  49 + /**
39 * 用户账号 50 * 用户账号
40 * 51 *
41 * 冗余,因为账号可以变更 52 * 冗余,因为账号可以变更
42 */ 53 */
43 private String username; 54 private String username;
44 /** 55 /**
45 - * 登陆结果 56 + * 登录结果
46 * 57 *
47 * 枚举 {@link SysLoginResultEnum} 58 * 枚举 {@link SysLoginResultEnum}
48 */ 59 */
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/system/dal/dataobject/social/SysSocialUserDO.java 0 → 100644
  1 +package cn.iocoder.yudao.adminserver.modules.system.dal.dataobject.social;
  2 +
  3 +import cn.iocoder.yudao.adminserver.modules.system.dal.dataobject.user.SysUserDO;
  4 +import cn.iocoder.yudao.framework.common.enums.UserTypeEnum;
  5 +import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
  6 +import com.baomidou.mybatisplus.annotation.TableId;
  7 +import com.baomidou.mybatisplus.annotation.TableName;
  8 +import lombok.*;
  9 +
  10 +/**
  11 + * 社交用户
  12 + * 通过 {@link SysSocialUserDO#getUserId()} 关联到对应的 {@link SysUserDO}
  13 + *
  14 + * @author weir
  15 + */
  16 +@TableName(value = "sys_social_user", autoResultMap = true)
  17 +@Data
  18 +@EqualsAndHashCode(callSuper = true)
  19 +@Builder
  20 +@NoArgsConstructor
  21 +@AllArgsConstructor
  22 +public class SysSocialUserDO extends BaseDO {
  23 +
  24 + /**
  25 + * 自增主键
  26 + */
  27 + @TableId
  28 + private Long id;
  29 + /**
  30 + * 关联的用户编号
  31 + */
  32 + private Long userId;
  33 + /**
  34 + * 用户类型
  35 + *
  36 + * 枚举 {@link UserTypeEnum}
  37 + */
  38 + private Integer userType;
  39 +
  40 + /**
  41 + * 社交平台的类型
  42 + *
  43 + * 枚举 {@link UserTypeEnum}
  44 + */
  45 + private Integer type;
  46 +
  47 + /**
  48 + * 社交 openid
  49 + */
  50 + private String openid;
  51 + /**
  52 + * 社交 token
  53 + */
  54 + private String token;
  55 + /**
  56 + * 社交的全局编号
  57 + *
  58 + * 例如说,微信平台的 https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/union-id.html
  59 + * 如果没有 unionId 的平台,直接使用 openid 作为该字段的值
  60 + */
  61 + private String unionId;
  62 + /**
  63 + * 原始 Token 数据,一般是 JSON 格式
  64 + */
  65 + private String rawTokenInfo;
  66 +
  67 + /**
  68 + * 用户昵称
  69 + */
  70 + private String nickname;
  71 + /**
  72 + * 用户头像
  73 + */
  74 + private String avatar;
  75 + /**
  76 + * 原始用户数据,一般是 JSON 格式
  77 + */
  78 + private String rawUserInfo;
  79 +
  80 +}
  81 +
  82 +
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/system/dal/dataobject/user/SysUserDO.java
@@ -14,7 +14,7 @@ import java.util.Date; @@ -14,7 +14,7 @@ import java.util.Date;
14 import java.util.Set; 14 import java.util.Set;
15 15
16 /** 16 /**
17 - * 用户 DO 17 + * 管理后台的用户 DO
18 * 18 *
19 * @author ruoyi 19 * @author ruoyi
20 */ 20 */
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/system/dal/mysql/social/SysSocialUserMapper.java 0 → 100644
  1 +package cn.iocoder.yudao.adminserver.modules.system.dal.mysql.social;
  2 +
  3 +import cn.iocoder.yudao.adminserver.modules.system.dal.dataobject.social.SysSocialUserDO;
  4 +import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
  5 +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
  6 +import org.apache.ibatis.annotations.Mapper;
  7 +
  8 +import java.util.Collection;
  9 +import java.util.List;
  10 +
  11 +@Mapper
  12 +public interface SysSocialUserMapper extends BaseMapperX<SysSocialUserDO> {
  13 +
  14 + default List<SysSocialUserDO> selectListByTypeAndUnionId(Integer userType, Collection<Integer> types, String unionId) {
  15 + return selectList(new QueryWrapper<SysSocialUserDO>().eq("user_type", userType)
  16 + .in("type", types).eq("union_id", unionId));
  17 + }
  18 +
  19 + default List<SysSocialUserDO> selectListByTypeAndUserId(Integer userType, Collection<Integer> types, Long userId) {
  20 + return selectList(new QueryWrapper<SysSocialUserDO>().eq("user_type", userType)
  21 + .in("type", types).eq("user_id", userId));
  22 + }
  23 +
  24 + default List<SysSocialUserDO> selectListByUserId(Integer userType, Long userId) {
  25 + return selectList(new QueryWrapper<SysSocialUserDO>().eq("user_type", userType).eq("user_id", userId));
  26 + }
  27 +
  28 +}
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/system/dal/redis/SysRedisKeyConstants.java
@@ -2,6 +2,9 @@ package cn.iocoder.yudao.adminserver.modules.system.dal.redis; @@ -2,6 +2,9 @@ package cn.iocoder.yudao.adminserver.modules.system.dal.redis;
2 2
3 import cn.iocoder.yudao.framework.redis.core.RedisKeyDefine; 3 import cn.iocoder.yudao.framework.redis.core.RedisKeyDefine;
4 import cn.iocoder.yudao.framework.security.core.LoginUser; 4 import cn.iocoder.yudao.framework.security.core.LoginUser;
  5 +import me.zhyd.oauth.model.AuthUser;
  6 +
  7 +import java.time.Duration;
5 8
6 import static cn.iocoder.yudao.framework.redis.core.RedisKeyDefine.KeyTypeEnum.STRING; 9 import static cn.iocoder.yudao.framework.redis.core.RedisKeyDefine.KeyTypeEnum.STRING;
7 10
@@ -12,7 +15,7 @@ import static cn.iocoder.yudao.framework.redis.core.RedisKeyDefine.KeyTypeEnum.S @@ -12,7 +15,7 @@ import static cn.iocoder.yudao.framework.redis.core.RedisKeyDefine.KeyTypeEnum.S
12 */ 15 */
13 public interface SysRedisKeyConstants { 16 public interface SysRedisKeyConstants {
14 17
15 - RedisKeyDefine LOGIN_USER = new RedisKeyDefine("登陆用户的缓存", 18 + RedisKeyDefine LOGIN_USER = new RedisKeyDefine("登录用户的缓存",
16 "login_user:%s", // 参数为 sessionId 19 "login_user:%s", // 参数为 sessionId
17 STRING, LoginUser.class, RedisKeyDefine.TimeoutTypeEnum.DYNAMIC); 20 STRING, LoginUser.class, RedisKeyDefine.TimeoutTypeEnum.DYNAMIC);
18 21
@@ -20,4 +23,12 @@ public interface SysRedisKeyConstants { @@ -20,4 +23,12 @@ public interface SysRedisKeyConstants {
20 "captcha_code:%s", // 参数为 uuid 23 "captcha_code:%s", // 参数为 uuid
21 STRING, String.class, RedisKeyDefine.TimeoutTypeEnum.DYNAMIC); 24 STRING, String.class, RedisKeyDefine.TimeoutTypeEnum.DYNAMIC);
22 25
  26 + RedisKeyDefine SOCIAL_AUTH_USER = new RedisKeyDefine("社交的授权用户",
  27 + "social_auth_user:%d:%s", // 参数为 type,code
  28 + STRING, AuthUser.class, Duration.ofDays(1));
  29 +
  30 + RedisKeyDefine SOCIAL_AUTH_STATE = new RedisKeyDefine("社交的 state",
  31 + "social_auth_state:%s", // 参数为 state
  32 + STRING, String.class, Duration.ofHours(24)); // 值为 state
  33 +
23 } 34 }
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/system/dal/redis/auth/SysLoginUserRedisDAO.java
@@ -22,7 +22,7 @@ public class SysLoginUserRedisDAO { @@ -22,7 +22,7 @@ public class SysLoginUserRedisDAO {
22 @Resource 22 @Resource
23 private StringRedisTemplate stringRedisTemplate; 23 private StringRedisTemplate stringRedisTemplate;
24 @Resource 24 @Resource
25 - private SysUserSessionService sysUserSessionService; 25 + private SysUserSessionService sysUserSessionService; // TODO 芋艿:得看看怎么拿出去
26 26
27 public LoginUser get(String sessionId) { 27 public LoginUser get(String sessionId) {
28 String redisKey = formatKey(sessionId); 28 String redisKey = formatKey(sessionId);
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/system/dal/redis/social/SysSocialAuthUserRedisDAO.java 0 → 100644
  1 +package cn.iocoder.yudao.adminserver.modules.system.dal.redis.social;
  2 +
  3 +import cn.iocoder.yudao.framework.common.util.json.JsonUtils;
  4 +import me.zhyd.oauth.model.AuthCallback;
  5 +import me.zhyd.oauth.model.AuthUser;
  6 +import org.springframework.data.redis.core.StringRedisTemplate;
  7 +import org.springframework.stereotype.Repository;
  8 +
  9 +import javax.annotation.Resource;
  10 +
  11 +import static cn.iocoder.yudao.adminserver.modules.system.dal.redis.SysRedisKeyConstants.SOCIAL_AUTH_USER;
  12 +
  13 +/**
  14 + * 社交 {@link me.zhyd.oauth.model.AuthUser} 的 RedisDAO
  15 + *
  16 + * @author 芋道源码
  17 + */
  18 +@Repository
  19 +public class SysSocialAuthUserRedisDAO {
  20 +
  21 + @Resource
  22 + private StringRedisTemplate stringRedisTemplate;
  23 +
  24 + public AuthUser get(Integer type, AuthCallback authCallback) {
  25 + String redisKey = formatKey(type, authCallback.getCode());
  26 + return JsonUtils.parseObject(stringRedisTemplate.opsForValue().get(redisKey), AuthUser.class);
  27 + }
  28 +
  29 + public void set(Integer type, AuthCallback authCallback, AuthUser authUser) {
  30 + String redisKey = formatKey(type, authCallback.getCode());
  31 + stringRedisTemplate.opsForValue().set(redisKey, JsonUtils.toJsonString(authUser), SOCIAL_AUTH_USER.getTimeout());
  32 + }
  33 +
  34 + private static String formatKey(Integer type, String code) {
  35 + return String.format(SOCIAL_AUTH_USER.getKeyTemplate(), type, code);
  36 + }
  37 +
  38 +}
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/system/enums/SysDictTypeConstants.java
@@ -12,7 +12,8 @@ public interface SysDictTypeConstants { @@ -12,7 +12,8 @@ public interface SysDictTypeConstants {
12 12
13 String USER_SEX = "sys_user_sex"; // 用户性别 13 String USER_SEX = "sys_user_sex"; // 用户性别
14 String OPERATE_TYPE = "sys_operate_type"; // 操作类型 14 String OPERATE_TYPE = "sys_operate_type"; // 操作类型
15 - String LOGIN_RESULT = "sys_login_result"; // 登陆结果 15 + String LOGIN_TYPE = "sys_login_type"; // 登录日志的类型
  16 + String LOGIN_RESULT = "sys_login_result"; // 登录结果
16 String CONFIG_TYPE = "sys_config_type"; // 参数配置类型 17 String CONFIG_TYPE = "sys_config_type"; // 参数配置类型
17 String BOOLEAN_STRING = "sys_boolean_string"; // Boolean 是否类型 18 String BOOLEAN_STRING = "sys_boolean_string"; // Boolean 是否类型
18 19
@@ -21,5 +22,4 @@ public interface SysDictTypeConstants { @@ -21,5 +22,4 @@ public interface SysDictTypeConstants {
21 String SMS_SEND_STATUS = "sys_sms_send_status"; // 短信发送状态 22 String SMS_SEND_STATUS = "sys_sms_send_status"; // 短信发送状态
22 String SMS_RECEIVE_STATUS = "sys_sms_receive_status"; // 短信接收状态 23 String SMS_RECEIVE_STATUS = "sys_sms_receive_status"; // 短信接收状态
23 24
24 -  
25 } 25 }
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/system/enums/SysErrorCodeConstants.java
1 package cn.iocoder.yudao.adminserver.modules.system.enums; 1 package cn.iocoder.yudao.adminserver.modules.system.enums;
2 2
  3 +import cn.iocoder.yudao.adminserver.modules.tool.framework.errorcode.config.ErrorCodeConfiguration;
3 import cn.iocoder.yudao.framework.common.exception.ErrorCode; 4 import cn.iocoder.yudao.framework.common.exception.ErrorCode;
  5 +import org.springframework.validation.Errors;
4 6
5 /** 7 /**
6 * System 错误码枚举类 8 * System 错误码枚举类
@@ -12,9 +14,10 @@ public interface SysErrorCodeConstants { @@ -12,9 +14,10 @@ public interface SysErrorCodeConstants {
12 // ========== AUTH 模块 1002000000 ========== 14 // ========== AUTH 模块 1002000000 ==========
13 ErrorCode AUTH_LOGIN_BAD_CREDENTIALS = new ErrorCode(1002000000, "登录失败,账号密码不正确"); 15 ErrorCode AUTH_LOGIN_BAD_CREDENTIALS = new ErrorCode(1002000000, "登录失败,账号密码不正确");
14 ErrorCode AUTH_LOGIN_USER_DISABLED = new ErrorCode(1002000001, "登录失败,账号被禁用"); 16 ErrorCode AUTH_LOGIN_USER_DISABLED = new ErrorCode(1002000001, "登录失败,账号被禁用");
15 - ErrorCode AUTH_LOGIN_FAIL_UNKNOWN = new ErrorCode(1002000002, "登录失败"); // 登陆失败的兜底,位置原因 17 + ErrorCode AUTH_LOGIN_FAIL_UNKNOWN = new ErrorCode(1002000002, "登录失败"); // 登录失败的兜底,位置原因
16 ErrorCode AUTH_LOGIN_CAPTCHA_NOT_FOUND = new ErrorCode(1002000003, "验证码不存在"); 18 ErrorCode AUTH_LOGIN_CAPTCHA_NOT_FOUND = new ErrorCode(1002000003, "验证码不存在");
17 ErrorCode AUTH_LOGIN_CAPTCHA_CODE_ERROR = new ErrorCode(1002000004, "验证码不正确"); 19 ErrorCode AUTH_LOGIN_CAPTCHA_CODE_ERROR = new ErrorCode(1002000004, "验证码不正确");
  20 + ErrorCode AUTH_THIRD_LOGIN_NOT_BIND = new ErrorCode(1002000005, "未绑定账号,需要进行绑定");
18 21
19 // ========== TOKEN 模块 1002001000 ========== 22 // ========== TOKEN 模块 1002001000 ==========
20 ErrorCode TOKEN_EXPIRED = new ErrorCode(1002001000, "Token 已经过期"); 23 ErrorCode TOKEN_EXPIRED = new ErrorCode(1002001000, "Token 已经过期");
@@ -95,4 +98,8 @@ public interface SysErrorCodeConstants { @@ -95,4 +98,8 @@ public interface SysErrorCodeConstants {
95 ErrorCode ERROR_CODE_NOT_EXISTS = new ErrorCode(1002013000, "错误码不存在"); 98 ErrorCode ERROR_CODE_NOT_EXISTS = new ErrorCode(1002013000, "错误码不存在");
96 ErrorCode ERROR_CODE_DUPLICATE = new ErrorCode(1002013001, "已经存在编码为【{}】的错误码"); 99 ErrorCode ERROR_CODE_DUPLICATE = new ErrorCode(1002013001, "已经存在编码为【{}】的错误码");
97 100
  101 + // ========== 社交模块 1002014000 ==========
  102 + ErrorCode SOCIAL_AUTH_FAILURE = new ErrorCode(1002014000, "社交授权失败,原因是:{}");
  103 + ErrorCode SOCIAL_UNBIND_NOT_SELF = new ErrorCode(1002014001, "社交解绑失败,非当前用户绑定");
  104 +
98 } 105 }
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/system/enums/common/SysSexEnum.java
@@ -11,10 +11,12 @@ import lombok.Getter; @@ -11,10 +11,12 @@ import lombok.Getter;
11 @Getter 11 @Getter
12 @AllArgsConstructor 12 @AllArgsConstructor
13 public enum SysSexEnum { 13 public enum SysSexEnum {
14 -  
15 - MALE(1), // 男  
16 - FEMALE(2); // 女  
17 - 14 + /** 男 */
  15 + MALE(1),
  16 + /** 女 */
  17 + FEMALE(2),
  18 + /* 未知 */
  19 + UNKNOWN(3);
18 /** 20 /**
19 * 性别 21 * 性别
20 */ 22 */
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/system/enums/logger/SysLoginLogTypeEnum.java
@@ -4,13 +4,15 @@ import lombok.AllArgsConstructor; @@ -4,13 +4,15 @@ import lombok.AllArgsConstructor;
4 import lombok.Getter; 4 import lombok.Getter;
5 5
6 /** 6 /**
7 - * 登陆日志的类型枚举 7 + * 登录日志的类型枚举
8 */ 8 */
9 @Getter 9 @Getter
10 @AllArgsConstructor 10 @AllArgsConstructor
11 public enum SysLoginLogTypeEnum { 11 public enum SysLoginLogTypeEnum {
12 12
13 LOGIN_USERNAME(100), // 使用账号登录 13 LOGIN_USERNAME(100), // 使用账号登录
  14 + LOGIN_SOCIAL(101), // 使用社交登录
  15 + LOGIN_MOCK(102), // 使用 Mock 登录
14 16
15 LOGOUT_SELF(200), // 自己主动登出 17 LOGOUT_SELF(200), // 自己主动登出
16 LOGOUT_TIMEOUT(201), // 超时登出 18 LOGOUT_TIMEOUT(201), // 超时登出
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/system/enums/logger/SysLoginResultEnum.java
@@ -4,7 +4,7 @@ import lombok.AllArgsConstructor; @@ -4,7 +4,7 @@ import lombok.AllArgsConstructor;
4 import lombok.Getter; 4 import lombok.Getter;
5 5
6 /** 6 /**
7 - * 登陆结果的枚举类 7 + * 登录结果的枚举类
8 */ 8 */
9 @Getter 9 @Getter
10 @AllArgsConstructor 10 @AllArgsConstructor
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/system/enums/social/SysSocialTypeEnum.java 0 → 100644
  1 +package cn.iocoder.yudao.adminserver.modules.system.enums.social;
  2 +
  3 +import cn.hutool.core.collection.ListUtil;
  4 +import cn.hutool.core.util.ArrayUtil;
  5 +import cn.iocoder.yudao.framework.common.core.IntArrayValuable;
  6 +import lombok.AllArgsConstructor;
  7 +import lombok.Getter;
  8 +
  9 +import java.util.Arrays;
  10 +import java.util.List;
  11 +
  12 +/**
  13 + * 社交平台的类型枚举
  14 + *
  15 + * @author 芋道源码
  16 + */
  17 +@Getter
  18 +@AllArgsConstructor
  19 +public enum SysSocialTypeEnum implements IntArrayValuable {
  20 +
  21 + GITEE(10, "GITEE"), // https://gitee.com/api/v5/oauth_doc#/
  22 + DINGTALK(20, "DINGTALK"), // https://developers.dingtalk.com/document/app/obtain-identity-credentials
  23 + WECHAT_ENTERPRISE(30, "WECHAT_ENTERPRISE"), // https://xkcoding.com/2019/08/06/use-justauth-integration-wechat-enterprise.html
  24 + ;
  25 +
  26 + public static final int[] ARRAYS = Arrays.stream(values()).mapToInt(SysSocialTypeEnum::getType).toArray();
  27 +
  28 + public static final List<Integer> WECHAT_ALL = ListUtil.toList(WECHAT_ENTERPRISE.type);
  29 +
  30 + /**
  31 + * 类型
  32 + */
  33 + private final Integer type;
  34 + /**
  35 + * 类型的标识
  36 + */
  37 + private final String source;
  38 +
  39 + @Override
  40 + public int[] array() {
  41 + return ARRAYS;
  42 + }
  43 +
  44 + public static SysSocialTypeEnum valueOfType(Integer type) {
  45 + return ArrayUtil.firstMatch(o -> o.getType().equals(type), values());
  46 + }
  47 +
  48 + public static List<Integer> getRelationTypes(Integer type) {
  49 + if (WECHAT_ALL.contains(type)) {
  50 + return WECHAT_ALL;
  51 + }
  52 + return ListUtil.toList(type);
  53 + }
  54 +
  55 +}
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/system/service/auth/SysAuthService.java
1 package cn.iocoder.yudao.adminserver.modules.system.service.auth; 1 package cn.iocoder.yudao.adminserver.modules.system.service.auth;
2 2
  3 +import cn.iocoder.yudao.adminserver.modules.system.controller.auth.vo.auth.*;
3 import cn.iocoder.yudao.framework.security.core.service.SecurityAuthFrameworkService; 4 import cn.iocoder.yudao.framework.security.core.service.SecurityAuthFrameworkService;
4 -import cn.iocoder.yudao.adminserver.modules.system.controller.auth.vo.auth.SysAuthLoginReqVO; 5 +
  6 +import javax.validation.Valid;
5 7
6 /** 8 /**
7 * 认证 Service 接口 9 * 认证 Service 接口
8 * 10 *
9 - * 提供用户的账号密码登陆、token 的校验等认证相关的功能 11 + * 提供用户的账号密码登录、token 的校验等认证相关的功能
10 * 12 *
11 * @author 芋道源码 13 * @author 芋道源码
12 */ 14 */
13 public interface SysAuthService extends SecurityAuthFrameworkService { 15 public interface SysAuthService extends SecurityAuthFrameworkService {
14 16
15 /** 17 /**
16 - * 登陆用户 18 + * 账号登录
  19 + *
  20 + * @param reqVO 登录信息
  21 + * @param userIp 用户 IP
  22 + * @param userAgent 用户 UA
  23 + * @return 身份令牌,使用 JWT 方式
  24 + */
  25 + String login(@Valid SysAuthLoginReqVO reqVO, String userIp, String userAgent);
  26 +
  27 + /**
  28 + * 社交登录,使用 code 授权码
17 * 29 *
18 - * @param reqVO 登陆信息 30 + * @param reqVO 登录信息
19 * @param userIp 用户 IP 31 * @param userIp 用户 IP
20 * @param userAgent 用户 UA 32 * @param userAgent 用户 UA
21 * @return 身份令牌,使用 JWT 方式 33 * @return 身份令牌,使用 JWT 方式
22 */ 34 */
23 - String login(SysAuthLoginReqVO reqVO, String userIp, String userAgent); 35 + String socialLogin(@Valid SysAuthSocialLoginReqVO reqVO, String userIp, String userAgent);
  36 +
  37 + /**
  38 + * 社交登录,使用 code 授权码 + 账号密码
  39 + *
  40 + * @param reqVO 登录信息
  41 + * @param userIp 用户 IP
  42 + * @param userAgent 用户 UA
  43 + * @return 身份令牌,使用 JWT 方式
  44 + */
  45 + String socialLogin2(@Valid SysAuthSocialLogin2ReqVO reqVO, String userIp, String userAgent);
  46 +
  47 + /**
  48 + * 社交绑定,使用 code 授权码
  49 + *
  50 + * @param userId 用户编号
  51 + * @param reqVO 绑定信息
  52 + */
  53 + void socialBind(Long userId, @Valid SysAuthSocialBindReqVO reqVO);
24 54
25 } 55 }
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/system/service/auth/SysUserSessionService.java
@@ -15,7 +15,7 @@ public interface SysUserSessionService { @@ -15,7 +15,7 @@ public interface SysUserSessionService {
15 /** 15 /**
16 * 创建在线用户 Session 16 * 创建在线用户 Session
17 * 17 *
18 - * @param loginUser 登陆用户 18 + * @param loginUser 登录用户
19 * @param userIp 用户 IP 19 * @param userIp 用户 IP
20 * @param userAgent 用户 UA 20 * @param userAgent 用户 UA
21 * @return Session 编号 21 * @return Session 编号
@@ -26,7 +26,7 @@ public interface SysUserSessionService { @@ -26,7 +26,7 @@ public interface SysUserSessionService {
26 * 刷新在线用户 Session 的更新时间 26 * 刷新在线用户 Session 的更新时间
27 * 27 *
28 * @param sessionId Session 编号 28 * @param sessionId Session 编号
29 - * @param loginUser 登陆用户 29 + * @param loginUser 登录用户
30 */ 30 */
31 void refreshUserSession(String sessionId, LoginUser loginUser); 31 void refreshUserSession(String sessionId, LoginUser loginUser);
32 32
@@ -46,6 +46,13 @@ public interface SysUserSessionService { @@ -46,6 +46,13 @@ public interface SysUserSessionService {
46 LoginUser getLoginUser(String sessionId); 46 LoginUser getLoginUser(String sessionId);
47 47
48 /** 48 /**
  49 + * 获取当前登录用户信息
  50 + * @param username 用户名称
  51 + * @return 在线用户
  52 + */
  53 + String getSessionId(String username);
  54 +
  55 + /**
49 * 获得 Session 超时时间,单位:毫秒 56 * 获得 Session 超时时间,单位:毫秒
50 * 57 *
51 * @return 超时时间 58 * @return 超时时间
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/system/service/auth/impl/SysAuthServiceImpl.java
1 package cn.iocoder.yudao.adminserver.modules.system.service.auth.impl; 1 package cn.iocoder.yudao.adminserver.modules.system.service.auth.impl;
2 2
3 -import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;  
4 -import cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil;  
5 -import cn.iocoder.yudao.framework.security.core.LoginUser;  
6 -import cn.iocoder.yudao.framework.common.util.monitor.TracerUtils; 3 +import cn.hutool.core.collection.CollUtil;
7 import cn.iocoder.yudao.adminserver.modules.system.controller.auth.vo.auth.SysAuthLoginReqVO; 4 import cn.iocoder.yudao.adminserver.modules.system.controller.auth.vo.auth.SysAuthLoginReqVO;
  5 +import cn.iocoder.yudao.adminserver.modules.system.controller.auth.vo.auth.SysAuthSocialBindReqVO;
  6 +import cn.iocoder.yudao.adminserver.modules.system.controller.auth.vo.auth.SysAuthSocialLogin2ReqVO;
  7 +import cn.iocoder.yudao.adminserver.modules.system.controller.auth.vo.auth.SysAuthSocialLoginReqVO;
8 import cn.iocoder.yudao.adminserver.modules.system.controller.logger.vo.loginlog.SysLoginLogCreateReqVO; 8 import cn.iocoder.yudao.adminserver.modules.system.controller.logger.vo.loginlog.SysLoginLogCreateReqVO;
9 import cn.iocoder.yudao.adminserver.modules.system.convert.auth.SysAuthConvert; 9 import cn.iocoder.yudao.adminserver.modules.system.convert.auth.SysAuthConvert;
  10 +import cn.iocoder.yudao.adminserver.modules.system.dal.dataobject.social.SysSocialUserDO;
10 import cn.iocoder.yudao.adminserver.modules.system.dal.dataobject.user.SysUserDO; 11 import cn.iocoder.yudao.adminserver.modules.system.dal.dataobject.user.SysUserDO;
11 import cn.iocoder.yudao.adminserver.modules.system.enums.logger.SysLoginLogTypeEnum; 12 import cn.iocoder.yudao.adminserver.modules.system.enums.logger.SysLoginLogTypeEnum;
12 import cn.iocoder.yudao.adminserver.modules.system.enums.logger.SysLoginResultEnum; 13 import cn.iocoder.yudao.adminserver.modules.system.enums.logger.SysLoginResultEnum;
@@ -15,9 +16,14 @@ import cn.iocoder.yudao.adminserver.modules.system.service.auth.SysUserSessionSe @@ -15,9 +16,14 @@ import cn.iocoder.yudao.adminserver.modules.system.service.auth.SysUserSessionSe
15 import cn.iocoder.yudao.adminserver.modules.system.service.common.SysCaptchaService; 16 import cn.iocoder.yudao.adminserver.modules.system.service.common.SysCaptchaService;
16 import cn.iocoder.yudao.adminserver.modules.system.service.logger.SysLoginLogService; 17 import cn.iocoder.yudao.adminserver.modules.system.service.logger.SysLoginLogService;
17 import cn.iocoder.yudao.adminserver.modules.system.service.permission.SysPermissionService; 18 import cn.iocoder.yudao.adminserver.modules.system.service.permission.SysPermissionService;
  19 +import cn.iocoder.yudao.adminserver.modules.system.service.social.SysSocialService;
18 import cn.iocoder.yudao.adminserver.modules.system.service.user.SysUserService; 20 import cn.iocoder.yudao.adminserver.modules.system.service.user.SysUserService;
  21 +import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
  22 +import cn.iocoder.yudao.framework.common.util.monitor.TracerUtils;
19 import cn.iocoder.yudao.framework.common.util.servlet.ServletUtils; 23 import cn.iocoder.yudao.framework.common.util.servlet.ServletUtils;
  24 +import cn.iocoder.yudao.framework.security.core.LoginUser;
20 import lombok.extern.slf4j.Slf4j; 25 import lombok.extern.slf4j.Slf4j;
  26 +import me.zhyd.oauth.model.AuthUser;
21 import org.springframework.context.annotation.Lazy; 27 import org.springframework.context.annotation.Lazy;
22 import org.springframework.security.authentication.AuthenticationManager; 28 import org.springframework.security.authentication.AuthenticationManager;
23 import org.springframework.security.authentication.BadCredentialsException; 29 import org.springframework.security.authentication.BadCredentialsException;
@@ -31,10 +37,11 @@ import org.springframework.stereotype.Service; @@ -31,10 +37,11 @@ import org.springframework.stereotype.Service;
31 import org.springframework.util.Assert; 37 import org.springframework.util.Assert;
32 38
33 import javax.annotation.Resource; 39 import javax.annotation.Resource;
  40 +import java.util.List;
34 import java.util.Set; 41 import java.util.Set;
35 42
36 -import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;  
37 import static cn.iocoder.yudao.adminserver.modules.system.enums.SysErrorCodeConstants.*; 43 import static cn.iocoder.yudao.adminserver.modules.system.enums.SysErrorCodeConstants.*;
  44 +import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
38 import static java.util.Collections.singleton; 45 import static java.util.Collections.singleton;
39 46
40 /** 47 /**
@@ -49,6 +56,7 @@ public class SysAuthServiceImpl implements SysAuthService { @@ -49,6 +56,7 @@ public class SysAuthServiceImpl implements SysAuthService {
49 @Resource 56 @Resource
50 @Lazy // 延迟加载,因为存在相互依赖的问题 57 @Lazy // 延迟加载,因为存在相互依赖的问题
51 private AuthenticationManager authenticationManager; 58 private AuthenticationManager authenticationManager;
  59 +
52 @Resource 60 @Resource
53 private SysUserService userService; 61 private SysUserService userService;
54 @Resource 62 @Resource
@@ -59,6 +67,8 @@ public class SysAuthServiceImpl implements SysAuthService { @@ -59,6 +67,8 @@ public class SysAuthServiceImpl implements SysAuthService {
59 private SysLoginLogService loginLogService; 67 private SysLoginLogService loginLogService;
60 @Resource 68 @Resource
61 private SysUserSessionService userSessionService; 69 private SysUserSessionService userSessionService;
  70 + @Resource
  71 + private SysSocialService socialService;
62 72
63 @Override 73 @Override
64 public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException { 74 public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException {
@@ -78,6 +88,8 @@ public class SysAuthServiceImpl implements SysAuthService { @@ -78,6 +88,8 @@ public class SysAuthServiceImpl implements SysAuthService {
78 if (user == null) { 88 if (user == null) {
79 throw new UsernameNotFoundException(String.valueOf(userId)); 89 throw new UsernameNotFoundException(String.valueOf(userId));
80 } 90 }
  91 + this.createLoginLog(user.getUsername(), SysLoginLogTypeEnum.LOGIN_MOCK, SysLoginResultEnum.SUCCESS);
  92 +
81 // 创建 LoginUser 对象 93 // 创建 LoginUser 对象
82 LoginUser loginUser = SysAuthConvert.INSTANCE.convert(user); 94 LoginUser loginUser = SysAuthConvert.INSTANCE.convert(user);
83 loginUser.setRoleIds(this.getUserRoleIds(loginUser.getId())); // 获取用户角色列表 95 loginUser.setRoleIds(this.getUserRoleIds(loginUser.getId())); // 获取用户角色列表
@@ -89,33 +101,35 @@ public class SysAuthServiceImpl implements SysAuthService { @@ -89,33 +101,35 @@ public class SysAuthServiceImpl implements SysAuthService {
89 // 判断验证码是否正确 101 // 判断验证码是否正确
90 this.verifyCaptcha(reqVO.getUsername(), reqVO.getUuid(), reqVO.getCode()); 102 this.verifyCaptcha(reqVO.getUsername(), reqVO.getUuid(), reqVO.getCode());
91 103
92 - // 使用账号密码,进行登陆。 104 + // 使用账号密码,进行登录。
93 LoginUser loginUser = this.login0(reqVO.getUsername(), reqVO.getPassword()); 105 LoginUser loginUser = this.login0(reqVO.getUsername(), reqVO.getPassword());
94 loginUser.setRoleIds(this.getUserRoleIds(loginUser.getId())); // 获取用户角色列表 106 loginUser.setRoleIds(this.getUserRoleIds(loginUser.getId())); // 获取用户角色列表
95 107
96 - // 缓存登陆用户到 Redis 中,返回 sessionId 编号 108 + // 缓存登录用户到 Redis 中,返回 sessionId 编号
97 return userSessionService.createUserSession(loginUser, userIp, userAgent); 109 return userSessionService.createUserSession(loginUser, userIp, userAgent);
98 } 110 }
99 111
100 private void verifyCaptcha(String username, String captchaUUID, String captchaCode) { 112 private void verifyCaptcha(String username, String captchaUUID, String captchaCode) {
  113 + final SysLoginLogTypeEnum logTypeEnum = SysLoginLogTypeEnum.LOGIN_USERNAME;
101 String code = captchaService.getCaptchaCode(captchaUUID); 114 String code = captchaService.getCaptchaCode(captchaUUID);
102 // 验证码不存在 115 // 验证码不存在
103 if (code == null) { 116 if (code == null) {
104 - // 创建登陆失败日志(验证码不存在)  
105 - this.createLoginLog(username, SysLoginResultEnum.CAPTCHA_NOT_FOUND);  
106 - throw ServiceExceptionUtil.exception(AUTH_LOGIN_CAPTCHA_NOT_FOUND); 117 + // 创建登录失败日志(验证码不存在)
  118 + this.createLoginLog(username, logTypeEnum, SysLoginResultEnum.CAPTCHA_NOT_FOUND);
  119 + throw exception(AUTH_LOGIN_CAPTCHA_NOT_FOUND);
107 } 120 }
108 // 验证码不正确 121 // 验证码不正确
109 if (!code.equals(captchaCode)) { 122 if (!code.equals(captchaCode)) {
110 - // 创建登陆失败日志(验证码不正确)  
111 - this.createLoginLog(username, SysLoginResultEnum.CAPTCHA_CODE_ERROR);  
112 - throw ServiceExceptionUtil.exception(AUTH_LOGIN_CAPTCHA_CODE_ERROR); 123 + // 创建登录失败日志(验证码不正确)
  124 + this.createLoginLog(username, logTypeEnum, SysLoginResultEnum.CAPTCHA_CODE_ERROR);
  125 + throw exception(AUTH_LOGIN_CAPTCHA_CODE_ERROR);
113 } 126 }
114 // 正确,所以要删除下验证码 127 // 正确,所以要删除下验证码
115 captchaService.deleteCaptchaCode(captchaUUID); 128 captchaService.deleteCaptchaCode(captchaUUID);
116 } 129 }
117 130
118 private LoginUser login0(String username, String password) { 131 private LoginUser login0(String username, String password) {
  132 + final SysLoginLogTypeEnum logTypeEnum = SysLoginLogTypeEnum.LOGIN_USERNAME;
119 // 用户验证 133 // 用户验证
120 Authentication authentication; 134 Authentication authentication;
121 try { 135 try {
@@ -123,25 +137,25 @@ public class SysAuthServiceImpl implements SysAuthService { @@ -123,25 +137,25 @@ public class SysAuthServiceImpl implements SysAuthService {
123 // 在其内部,会调用到 loadUserByUsername 方法,获取 User 信息 137 // 在其内部,会调用到 loadUserByUsername 方法,获取 User 信息
124 authentication = authenticationManager.authenticate(new UsernamePasswordAuthenticationToken(username, password)); 138 authentication = authenticationManager.authenticate(new UsernamePasswordAuthenticationToken(username, password));
125 } catch (BadCredentialsException badCredentialsException) { 139 } catch (BadCredentialsException badCredentialsException) {
126 - this.createLoginLog(username, SysLoginResultEnum.BAD_CREDENTIALS); 140 + this.createLoginLog(username, logTypeEnum, SysLoginResultEnum.BAD_CREDENTIALS);
127 throw exception(AUTH_LOGIN_BAD_CREDENTIALS); 141 throw exception(AUTH_LOGIN_BAD_CREDENTIALS);
128 } catch (DisabledException disabledException) { 142 } catch (DisabledException disabledException) {
129 - this.createLoginLog(username, SysLoginResultEnum.USER_DISABLED); 143 + this.createLoginLog(username, logTypeEnum, SysLoginResultEnum.USER_DISABLED);
130 throw exception(AUTH_LOGIN_USER_DISABLED); 144 throw exception(AUTH_LOGIN_USER_DISABLED);
131 } catch (AuthenticationException authenticationException) { 145 } catch (AuthenticationException authenticationException) {
132 log.error("[login0][username({}) 发生未知异常]", username, authenticationException); 146 log.error("[login0][username({}) 发生未知异常]", username, authenticationException);
133 - this.createLoginLog(username, SysLoginResultEnum.UNKNOWN_ERROR); 147 + this.createLoginLog(username, logTypeEnum, SysLoginResultEnum.UNKNOWN_ERROR);
134 throw exception(AUTH_LOGIN_FAIL_UNKNOWN); 148 throw exception(AUTH_LOGIN_FAIL_UNKNOWN);
135 } 149 }
136 - // 登陆成功 150 + // 登录成功的日志
137 Assert.notNull(authentication.getPrincipal(), "Principal 不会为空"); 151 Assert.notNull(authentication.getPrincipal(), "Principal 不会为空");
138 - this.createLoginLog(username, SysLoginResultEnum.SUCCESS); 152 + this.createLoginLog(username, logTypeEnum, SysLoginResultEnum.SUCCESS);
139 return (LoginUser) authentication.getPrincipal(); 153 return (LoginUser) authentication.getPrincipal();
140 } 154 }
141 155
142 - private void createLoginLog(String username, SysLoginResultEnum loginResult) { 156 + private void createLoginLog(String username, SysLoginLogTypeEnum logTypeEnum, SysLoginResultEnum loginResult) {
143 SysLoginLogCreateReqVO reqVO = new SysLoginLogCreateReqVO(); 157 SysLoginLogCreateReqVO reqVO = new SysLoginLogCreateReqVO();
144 - reqVO.setLogType(SysLoginLogTypeEnum.LOGIN_USERNAME.getType()); 158 + reqVO.setLogType(logTypeEnum.getType());
145 reqVO.setTraceId(TracerUtils.getTraceId()); 159 reqVO.setTraceId(TracerUtils.getTraceId());
146 reqVO.setUsername(username); 160 reqVO.setUsername(username);
147 reqVO.setUserAgent(ServletUtils.getUserAgent()); 161 reqVO.setUserAgent(ServletUtils.getUserAgent());
@@ -161,6 +175,65 @@ public class SysAuthServiceImpl implements SysAuthService { @@ -161,6 +175,65 @@ public class SysAuthServiceImpl implements SysAuthService {
161 } 175 }
162 176
163 @Override 177 @Override
  178 + public String socialLogin(SysAuthSocialLoginReqVO reqVO, String userIp, String userAgent) {
  179 + // 使用 code 授权码,进行登录
  180 + AuthUser authUser = socialService.getAuthUser(reqVO.getType(), reqVO.getCode(), reqVO.getState());
  181 + Assert.notNull(authUser, "授权用户不为空");
  182 +
  183 + // 如果未绑定 SysSocialUserDO 用户,则无法自动登录,进行报错
  184 + String unionId = socialService.getAuthUserUnionId(authUser);
  185 + List<SysSocialUserDO> socialUsers = socialService.getAllSocialUserList(reqVO.getType(), unionId);
  186 + if (CollUtil.isEmpty(socialUsers)) {
  187 + throw exception(AUTH_THIRD_LOGIN_NOT_BIND);
  188 + }
  189 +
  190 + // 自动登录
  191 + SysUserDO user = userService.getUser(socialUsers.get(0).getUserId());
  192 + if (user == null) {
  193 + throw exception(USER_NOT_EXISTS);
  194 + }
  195 + this.createLoginLog(user.getUsername(), SysLoginLogTypeEnum.LOGIN_SOCIAL, SysLoginResultEnum.SUCCESS);
  196 +
  197 + // 创建 LoginUser 对象
  198 + LoginUser loginUser = SysAuthConvert.INSTANCE.convert(user);
  199 + // TODO 芋艿:需要改造下,增加各种登录方式
  200 + loginUser.setRoleIds(this.getUserRoleIds(loginUser.getId())); // 获取用户角色列表
  201 +
  202 + // 绑定社交用户(更新)
  203 + socialService.bindSocialUser(loginUser.getId(), reqVO.getType(), authUser);
  204 +
  205 + // 缓存登录用户到 Redis 中,返回 sessionId 编号
  206 + return userSessionService.createUserSession(loginUser, userIp, userAgent);
  207 + }
  208 +
  209 + @Override
  210 + public String socialLogin2(SysAuthSocialLogin2ReqVO reqVO, String userIp, String userAgent) {
  211 + // 使用 code 授权码,进行登录
  212 + AuthUser authUser = socialService.getAuthUser(reqVO.getType(), reqVO.getCode(), reqVO.getState());
  213 + Assert.notNull(authUser, "授权用户不为空");
  214 +
  215 + // 使用账号密码,进行登录。
  216 + LoginUser loginUser = this.login0(reqVO.getUsername(), reqVO.getPassword());
  217 + loginUser.setRoleIds(this.getUserRoleIds(loginUser.getId())); // 获取用户角色列表
  218 +
  219 + // 绑定社交用户(新增)
  220 + socialService.bindSocialUser(loginUser.getId(), reqVO.getType(), authUser);
  221 +
  222 + // 缓存登录用户到 Redis 中,返回 sessionId 编号
  223 + return userSessionService.createUserSession(loginUser, userIp, userAgent);
  224 + }
  225 +
  226 + @Override
  227 + public void socialBind(Long userId, SysAuthSocialBindReqVO reqVO) {
  228 + // 使用 code 授权码,进行登录
  229 + AuthUser authUser = socialService.getAuthUser(reqVO.getType(), reqVO.getCode(), reqVO.getState());
  230 + Assert.notNull(authUser, "授权用户不为空");
  231 +
  232 + // 绑定社交用户(新增)
  233 + socialService.bindSocialUser(userId, reqVO.getType(), authUser);
  234 + }
  235 +
  236 + @Override
164 public void logout(String token) { 237 public void logout(String token) {
165 // 查询用户信息 238 // 查询用户信息
166 LoginUser loginUser = userSessionService.getLoginUser(token); 239 LoginUser loginUser = userSessionService.getLoginUser(token);
@@ -206,7 +279,7 @@ public class SysAuthServiceImpl implements SysAuthService { @@ -206,7 +279,7 @@ public class SysAuthServiceImpl implements SysAuthService {
206 // 重新加载 SysUserDO 信息 279 // 重新加载 SysUserDO 信息
207 SysUserDO user = userService.getUser(loginUser.getId()); 280 SysUserDO user = userService.getUser(loginUser.getId());
208 if (user == null || CommonStatusEnum.DISABLE.getStatus().equals(user.getStatus())) { 281 if (user == null || CommonStatusEnum.DISABLE.getStatus().equals(user.getStatus())) {
209 - throw exception(TOKEN_EXPIRED); // 校验 token 时,用户被禁用的情况下,也认为 token 过期,方便前端跳转到登陆界面 282 + throw exception(TOKEN_EXPIRED); // 校验 token 时,用户被禁用的情况下,也认为 token 过期,方便前端跳转到登录界面
210 } 283 }
211 284
212 // 刷新 LoginUser 缓存 285 // 刷新 LoginUser 缓存
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/system/service/auth/impl/SysUserSessionServiceImpl.java
@@ -18,7 +18,11 @@ import cn.iocoder.yudao.adminserver.modules.system.enums.logger.SysLoginResultEn @@ -18,7 +18,11 @@ import cn.iocoder.yudao.adminserver.modules.system.enums.logger.SysLoginResultEn
18 import cn.iocoder.yudao.adminserver.modules.system.service.auth.SysUserSessionService; 18 import cn.iocoder.yudao.adminserver.modules.system.service.auth.SysUserSessionService;
19 import cn.iocoder.yudao.adminserver.modules.system.service.logger.SysLoginLogService; 19 import cn.iocoder.yudao.adminserver.modules.system.service.logger.SysLoginLogService;
20 import cn.iocoder.yudao.adminserver.modules.system.service.user.SysUserService; 20 import cn.iocoder.yudao.adminserver.modules.system.service.user.SysUserService;
  21 +import com.baomidou.mybatisplus.core.conditions.Wrapper;
  22 +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
  23 +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
21 import com.google.common.collect.Lists; 24 import com.google.common.collect.Lists;
  25 +import lombok.extern.slf4j.Slf4j;
22 import org.springframework.stereotype.Service; 26 import org.springframework.stereotype.Service;
23 27
24 import javax.annotation.Resource; 28 import javax.annotation.Resource;
@@ -34,6 +38,7 @@ import static cn.iocoder.yudao.framework.common.util.date.DateUtils.addTime; @@ -34,6 +38,7 @@ import static cn.iocoder.yudao.framework.common.util.date.DateUtils.addTime;
34 * 38 *
35 * @author 芋道源码 39 * @author 芋道源码
36 */ 40 */
  41 +@Slf4j
37 @Service 42 @Service
38 public class SysUserSessionServiceImpl implements SysUserSessionService { 43 public class SysUserSessionServiceImpl implements SysUserSessionService {
39 44
@@ -92,6 +97,15 @@ public class SysUserSessionServiceImpl implements SysUserSessionService { @@ -92,6 +97,15 @@ public class SysUserSessionServiceImpl implements SysUserSessionService {
92 } 97 }
93 98
94 @Override 99 @Override
  100 + public String getSessionId(String username) {
  101 + QueryWrapper<SysUserSessionDO> wrapper = new QueryWrapper<>();
  102 + wrapper.eq("username", username);
  103 + wrapper.orderByDesc("create_time");
  104 + SysUserSessionDO sysUserSessionDO = userSessionMapper.selectOne(wrapper);
  105 + return sysUserSessionDO.getId();
  106 + }
  107 +
  108 + @Override
95 public Long getSessionTimeoutMillis() { 109 public Long getSessionTimeoutMillis() {
96 return securityProperties.getSessionTimeout().toMillis(); 110 return securityProperties.getSessionTimeout().toMillis();
97 } 111 }
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/system/service/logger/SysLoginLogService.java
@@ -9,30 +9,30 @@ import cn.iocoder.yudao.adminserver.modules.system.dal.dataobject.logger.SysLogi @@ -9,30 +9,30 @@ import cn.iocoder.yudao.adminserver.modules.system.dal.dataobject.logger.SysLogi
9 import java.util.List; 9 import java.util.List;
10 10
11 /** 11 /**
12 - * 登陆日志 Service 接口 12 + * 登录日志 Service 接口
13 */ 13 */
14 public interface SysLoginLogService { 14 public interface SysLoginLogService {
15 15
16 /** 16 /**
17 - * 创建登陆日志 17 + * 创建登录日志
18 * 18 *
19 * @param reqVO 日志信息 19 * @param reqVO 日志信息
20 */ 20 */
21 void createLoginLog(SysLoginLogCreateReqVO reqVO); 21 void createLoginLog(SysLoginLogCreateReqVO reqVO);
22 22
23 /** 23 /**
24 - * 获得登陆日志分页 24 + * 获得登录日志分页
25 * 25 *
26 * @param reqVO 分页条件 26 * @param reqVO 分页条件
27 - * @return 登陆日志分页 27 + * @return 登录日志分页
28 */ 28 */
29 PageResult<SysLoginLogDO> getLoginLogPage(SysLoginLogPageReqVO reqVO); 29 PageResult<SysLoginLogDO> getLoginLogPage(SysLoginLogPageReqVO reqVO);
30 30
31 /** 31 /**
32 - * 获得登陆日志列表 32 + * 获得登录日志列表
33 * 33 *
34 * @param reqVO 列表条件 34 * @param reqVO 列表条件
35 - * @return 登陆日志列表 35 + * @return 登录日志列表
36 */ 36 */
37 List<SysLoginLogDO> getLoginLogList(SysLoginLogExportReqVO reqVO); 37 List<SysLoginLogDO> getLoginLogList(SysLoginLogExportReqVO reqVO);
38 38
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/system/service/logger/impl/SysLoginLogServiceImpl.java
1 package cn.iocoder.yudao.adminserver.modules.system.service.logger.impl; 1 package cn.iocoder.yudao.adminserver.modules.system.service.logger.impl;
2 2
  3 +import cn.iocoder.yudao.adminserver.modules.system.dal.dataobject.user.SysUserDO;
  4 +import cn.iocoder.yudao.adminserver.modules.system.service.user.SysUserService;
  5 +import cn.iocoder.yudao.framework.common.enums.UserTypeEnum;
3 import cn.iocoder.yudao.framework.common.pojo.PageResult; 6 import cn.iocoder.yudao.framework.common.pojo.PageResult;
4 import cn.iocoder.yudao.adminserver.modules.system.controller.logger.vo.loginlog.SysLoginLogCreateReqVO; 7 import cn.iocoder.yudao.adminserver.modules.system.controller.logger.vo.loginlog.SysLoginLogCreateReqVO;
5 import cn.iocoder.yudao.adminserver.modules.system.controller.logger.vo.loginlog.SysLoginLogExportReqVO; 8 import cn.iocoder.yudao.adminserver.modules.system.controller.logger.vo.loginlog.SysLoginLogExportReqVO;
@@ -14,17 +17,26 @@ import javax.annotation.Resource; @@ -14,17 +17,26 @@ import javax.annotation.Resource;
14 import java.util.List; 17 import java.util.List;
15 18
16 /** 19 /**
17 - * 登陆日志 Service 实现 20 + * 登录日志 Service 实现
18 */ 21 */
19 @Service 22 @Service
20 public class SysLoginLogServiceImpl implements SysLoginLogService { 23 public class SysLoginLogServiceImpl implements SysLoginLogService {
21 24
22 @Resource 25 @Resource
23 private SysLoginLogMapper loginLogMapper; 26 private SysLoginLogMapper loginLogMapper;
  27 + @Resource
  28 + private SysUserService userService;
24 29
25 @Override 30 @Override
26 public void createLoginLog(SysLoginLogCreateReqVO reqVO) { 31 public void createLoginLog(SysLoginLogCreateReqVO reqVO) {
27 SysLoginLogDO loginLog = SysLoginLogConvert.INSTANCE.convert(reqVO); 32 SysLoginLogDO loginLog = SysLoginLogConvert.INSTANCE.convert(reqVO);
  33 + // 获得用户
  34 + SysUserDO user = userService.getUserByUsername(reqVO.getUsername());
  35 + if (user != null) {
  36 + loginLog.setUserId(user.getId());
  37 + }
  38 + loginLog.setUserType(UserTypeEnum.ADMIN.getValue());
  39 + // 插入
28 loginLogMapper.insert(loginLog); 40 loginLogMapper.insert(loginLog);
29 } 41 }
30 42
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/system/service/permission/impl/SysPermissionServiceImpl.java
@@ -280,7 +280,7 @@ public class SysPermissionServiceImpl implements SysPermissionService { @@ -280,7 +280,7 @@ public class SysPermissionServiceImpl implements SysPermissionService {
280 return true; 280 return true;
281 } 281 }
282 282
283 - // 获得当前登陆的角色。如果为空,说明没有权限 283 + // 获得当前登录的角色。如果为空,说明没有权限
284 Set<Long> roleIds = SecurityFrameworkUtils.getLoginUserRoleIds(); 284 Set<Long> roleIds = SecurityFrameworkUtils.getLoginUserRoleIds();
285 if (CollUtil.isEmpty(roleIds)) { 285 if (CollUtil.isEmpty(roleIds)) {
286 return false; 286 return false;
@@ -315,7 +315,7 @@ public class SysPermissionServiceImpl implements SysPermissionService { @@ -315,7 +315,7 @@ public class SysPermissionServiceImpl implements SysPermissionService {
315 return true; 315 return true;
316 } 316 }
317 317
318 - // 获得当前登陆的角色。如果为空,说明没有权限 318 + // 获得当前登录的角色。如果为空,说明没有权限
319 Set<Long> roleIds = SecurityFrameworkUtils.getLoginUserRoleIds(); 319 Set<Long> roleIds = SecurityFrameworkUtils.getLoginUserRoleIds();
320 if (CollUtil.isEmpty(roleIds)) { 320 if (CollUtil.isEmpty(roleIds)) {
321 return false; 321 return false;
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/system/service/social/SysSocialService.java 0 → 100644
  1 +package cn.iocoder.yudao.adminserver.modules.system.service.social;
  2 +
  3 +import cn.hutool.core.util.StrUtil;
  4 +import cn.iocoder.yudao.adminserver.modules.system.dal.dataobject.social.SysSocialUserDO;
  5 +import cn.iocoder.yudao.adminserver.modules.system.enums.social.SysSocialTypeEnum;
  6 +import cn.iocoder.yudao.framework.common.exception.ServiceException;
  7 +import me.zhyd.oauth.model.AuthUser;
  8 +
  9 +import javax.validation.constraints.NotNull;
  10 +import java.util.List;
  11 +
  12 +/**
  13 + * 社交 Service 接口,例如说社交平台的授权登录
  14 + *
  15 + * @author 芋道源码
  16 + */
  17 +public interface SysSocialService {
  18 +
  19 + /**
  20 + * 获得社交平台的授权 URL
  21 + *
  22 + * @param type 社交平台的类型 {@link SysSocialTypeEnum}
  23 + * @param redirectUri 重定向 URL
  24 + * @return 社交平台的授权 URL
  25 + */
  26 + String getAuthorizeUrl(Integer type, String redirectUri);
  27 +
  28 + /**
  29 + * 获得授权的用户
  30 + * 如果授权失败,则会抛出 {@link ServiceException} 异常
  31 + *
  32 + * @param type 社交平台的类型 {@link SysSocialTypeEnum}
  33 + * @param code 授权码
  34 + * @param state state
  35 + * @return 授权用户
  36 + */
  37 + @NotNull
  38 + AuthUser getAuthUser(Integer type, String code, String state);
  39 +
  40 + default String getAuthUserUnionId(AuthUser authUser) {
  41 + return StrUtil.blankToDefault(authUser.getToken().getUnionId(), authUser.getUuid());
  42 + }
  43 +
  44 + /**
  45 + * 获得 unionId 对应的某个社交平台的“所有”社交用户
  46 + * 注意,这里的“所有”,指的是类似【微信】平台,包括了小程序、公众号、PC 网站,他们的 unionId 是一致的
  47 + *
  48 + * @param type 社交平台的类型 {@link SysSocialTypeEnum}
  49 + * @param unionId 社交平台的 unionId
  50 + * @return 社交用户列表
  51 + */
  52 + List<SysSocialUserDO> getAllSocialUserList(Integer type, String unionId);
  53 +
  54 + /**
  55 + * 获得指定用户的社交用户列表
  56 + *
  57 + * @param userId 用户编号
  58 + * @return 社交用户列表
  59 + */
  60 + List<SysSocialUserDO> getSocialUserList(Long userId);
  61 +
  62 + /**
  63 + * 绑定社交用户
  64 + *
  65 + * @param userId 用户编号
  66 + * @param type 社交平台的类型 {@link SysSocialTypeEnum}
  67 + * @param authUser 授权用户
  68 + */
  69 + void bindSocialUser(Long userId, Integer type, AuthUser authUser);
  70 +
  71 + /**
  72 + * 取消绑定社交用户
  73 + *
  74 + * @param userId 用户编号
  75 + * @param type 社交平台的类型 {@link SysSocialTypeEnum}
  76 + * @param unionId 社交平台的 unionId
  77 + */
  78 + void unbindSocialUser(Long userId, Integer type, String unionId);
  79 +
  80 +}
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/system/service/social/impl/SysSocialServiceImpl.java 0 → 100644
  1 +package cn.iocoder.yudao.adminserver.modules.system.service.social.impl;
  2 +
  3 +import cn.hutool.core.collection.CollUtil;
  4 +import cn.iocoder.yudao.adminserver.modules.system.dal.dataobject.social.SysSocialUserDO;
  5 +import cn.iocoder.yudao.adminserver.modules.system.dal.mysql.social.SysSocialUserMapper;
  6 +import cn.iocoder.yudao.adminserver.modules.system.dal.redis.social.SysSocialAuthUserRedisDAO;
  7 +import cn.iocoder.yudao.adminserver.modules.system.enums.social.SysSocialTypeEnum;
  8 +import cn.iocoder.yudao.adminserver.modules.system.service.social.SysSocialService;
  9 +import cn.iocoder.yudao.framework.common.enums.UserTypeEnum;
  10 +import cn.iocoder.yudao.framework.common.util.collection.CollectionUtils;
  11 +import cn.iocoder.yudao.framework.common.util.http.HttpUtils;
  12 +import com.google.common.annotations.VisibleForTesting;
  13 +import com.xkcoding.justauth.AuthRequestFactory;
  14 +import lombok.extern.slf4j.Slf4j;
  15 +import me.zhyd.oauth.model.AuthCallback;
  16 +import me.zhyd.oauth.model.AuthResponse;
  17 +import me.zhyd.oauth.model.AuthUser;
  18 +import me.zhyd.oauth.request.AuthRequest;
  19 +import me.zhyd.oauth.utils.AuthStateUtils;
  20 +import org.springframework.stereotype.Service;
  21 +import org.springframework.transaction.annotation.Transactional;
  22 +
  23 +import javax.annotation.Resource;
  24 +import javax.validation.Valid;
  25 +import java.util.List;
  26 +import java.util.Objects;
  27 +
  28 +import static cn.iocoder.yudao.adminserver.modules.system.enums.SysErrorCodeConstants.SOCIAL_AUTH_FAILURE;
  29 +import static cn.iocoder.yudao.adminserver.modules.system.enums.SysErrorCodeConstants.SOCIAL_UNBIND_NOT_SELF;
  30 +import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
  31 +import static cn.iocoder.yudao.framework.common.util.json.JsonUtils.toJsonString;
  32 +
  33 +/**
  34 + * 社交 Service 实现类
  35 + *
  36 + * @author 芋道源码
  37 + */
  38 +@Service
  39 +@Valid
  40 +@Slf4j
  41 +public class SysSocialServiceImpl implements SysSocialService {
  42 +
  43 + @Resource
  44 + private AuthRequestFactory authRequestFactory;
  45 +
  46 + @Resource
  47 + private SysSocialAuthUserRedisDAO authSocialUserRedisDAO;
  48 +
  49 + @Resource
  50 + private SysSocialUserMapper socialUserMapper;
  51 +
  52 + @Override
  53 + public String getAuthorizeUrl(Integer type, String redirectUri) {
  54 + // 获得对应的 AuthRequest 实现
  55 + AuthRequest authRequest = authRequestFactory.get(SysSocialTypeEnum.valueOfType(type).getSource());
  56 + // 生成跳转地址
  57 + String authorizeUri = authRequest.authorize(AuthStateUtils.createState());
  58 + return HttpUtils.replaceUrlQuery(authorizeUri, "redirect_uri", redirectUri);
  59 + }
  60 +
  61 + @Override
  62 + public AuthUser getAuthUser(Integer type, String code, String state) {
  63 + AuthCallback authCallback = buildAuthCallback(code, state);
  64 + // 从缓存中获取
  65 + AuthUser authUser = authSocialUserRedisDAO.get(type, authCallback);
  66 + if (authUser != null) {
  67 + return authUser;
  68 + }
  69 +
  70 + // 请求获取
  71 + authUser = this.getAuthUser0(type, authCallback);
  72 + // 缓存。原因是 code 有且可以使用一次。在社交登录时,当未绑定 User 时,需要绑定登录,此时需要 code 使用两次
  73 + authSocialUserRedisDAO.set(type, authCallback, authUser);
  74 + return authUser;
  75 + }
  76 +
  77 + @Override
  78 + public List<SysSocialUserDO> getAllSocialUserList(Integer type, String unionId) {
  79 + List<Integer> types = SysSocialTypeEnum.getRelationTypes(type);
  80 + return socialUserMapper.selectListByTypeAndUnionId(UserTypeEnum.ADMIN.getValue(), types, unionId);
  81 + }
  82 +
  83 + @Override
  84 + public List<SysSocialUserDO> getSocialUserList(Long userId) {
  85 + return socialUserMapper.selectListByUserId(UserTypeEnum.ADMIN.getValue(), userId);
  86 + }
  87 +
  88 + @Override
  89 + @Transactional
  90 + public void bindSocialUser(Long userId, Integer type, AuthUser authUser) {
  91 + // 获得 unionId 对应的 SysSocialUserDO 列表
  92 + String unionId = getAuthUserUnionId(authUser);
  93 + List<SysSocialUserDO> socialUsers = this.getAllSocialUserList(type, unionId);
  94 +
  95 + // 逻辑一:如果 userId 之前绑定过该 type 的其它账号,需要进行解绑
  96 + this.unbindOldSocialUser(userId, type, unionId);
  97 +
  98 + // 逻辑二:如果 socialUsers 指定的 userId 改变,需要进行更新
  99 + // 例如说,一个微信 unionId 对应了多个社交账号,结果其中有个关联了新的 userId,则其它也要跟着修改
  100 + // 考虑到 socialUsers 一般比较少,直接 for 循环更新即可
  101 + socialUsers.forEach(socialUser -> {
  102 + if (Objects.equals(socialUser.getUserId(), userId)) {
  103 + return;
  104 + }
  105 + socialUserMapper.updateById(new SysSocialUserDO().setId(socialUser.getId()).setUserId(userId));
  106 + });
  107 +
  108 + // 逻辑三:如果 authUser 不存在于 socialUsers 中,则进行新增;否则,进行更新
  109 + SysSocialUserDO socialUser = CollUtil.findOneByField(socialUsers, "openid", authUser.getUuid());
  110 + SysSocialUserDO saveSocialUser = SysSocialUserDO.builder() // 新增和更新的通用属性
  111 + .token(authUser.getToken().getAccessToken()).rawTokenInfo(toJsonString(authUser.getToken()))
  112 + .nickname(authUser.getNickname()).avatar(authUser.getAvatar()).rawUserInfo(toJsonString(authUser.getRawUserInfo()))
  113 + .build();
  114 + if (socialUser == null) {
  115 + saveSocialUser.setUserId(userId).setUserType(UserTypeEnum.ADMIN.getValue())
  116 + .setType(type).setOpenid(authUser.getUuid()).setUnionId(unionId);
  117 + socialUserMapper.insert(saveSocialUser);
  118 + } else {
  119 + saveSocialUser.setId(socialUser.getId());
  120 + socialUserMapper.updateById(saveSocialUser);
  121 + }
  122 + }
  123 +
  124 + @Override
  125 + public void unbindSocialUser(Long userId, Integer type, String unionId) {
  126 + // 获得 unionId 对应的所有 SysSocialUserDO 社交用户
  127 + List<SysSocialUserDO> socialUsers = this.getAllSocialUserList(type, unionId);
  128 + if (CollUtil.isEmpty(socialUsers)) {
  129 + return;
  130 + }
  131 + // 校验,是否解绑的是非自己的
  132 + socialUsers.forEach(socialUser -> {
  133 + if (!Objects.equals(socialUser.getUserId(), userId)) {
  134 + throw exception(SOCIAL_UNBIND_NOT_SELF);
  135 + }
  136 + });
  137 +
  138 + // 解绑
  139 + socialUserMapper.deleteBatchIds(CollectionUtils.convertSet(socialUsers, SysSocialUserDO::getId));
  140 + }
  141 +
  142 + @VisibleForTesting
  143 + public void unbindOldSocialUser(Long userId, Integer type, String newUnionId) {
  144 + List<Integer> types = SysSocialTypeEnum.getRelationTypes(type);
  145 + List<SysSocialUserDO> oldSocialUsers = socialUserMapper.selectListByTypeAndUserId(
  146 + UserTypeEnum.ADMIN.getValue(), types, userId);
  147 + // 如果新老的 unionId 是一致的,说明无需解绑
  148 + if (CollUtil.isEmpty(oldSocialUsers) || Objects.equals(newUnionId, oldSocialUsers.get(0).getUnionId())) {
  149 + return;
  150 + }
  151 +
  152 + // 解绑
  153 + socialUserMapper.deleteBatchIds(CollectionUtils.convertSet(oldSocialUsers, SysSocialUserDO::getId));
  154 + }
  155 +
  156 + /**
  157 + * 请求社交平台,获得授权的用户
  158 + *
  159 + * @param type 社交平台的类型
  160 + * @param authCallback 授权回调
  161 + * @return 授权的用户
  162 + */
  163 + private AuthUser getAuthUser0(Integer type, AuthCallback authCallback) {
  164 + AuthRequest authRequest = authRequestFactory.get(SysSocialTypeEnum.valueOfType(type).getSource());
  165 + AuthResponse<?> authResponse = authRequest.login(authCallback);
  166 + log.info("[getAuthUser0][请求社交平台 type({}) request({}) response({})]", type, toJsonString(authCallback),
  167 + toJsonString(authResponse));
  168 + if (!authResponse.ok()) {
  169 + throw exception(SOCIAL_AUTH_FAILURE, authResponse.getMsg());
  170 + }
  171 + return (AuthUser) authResponse.getData();
  172 + }
  173 +
  174 + private static AuthCallback buildAuthCallback(String code, String state) {
  175 + return AuthCallback.builder().code(code).state(state).build();
  176 + }
  177 +
  178 +}
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/system/service/user/SysUserService.java
@@ -63,7 +63,7 @@ public interface SysUserService { @@ -63,7 +63,7 @@ public interface SysUserService {
63 * @param id 用户 id 63 * @param id 用户 id
64 * @param avatarFile 头像文件 64 * @param avatarFile 头像文件
65 */ 65 */
66 - void updateUserAvatar(Long id, InputStream avatarFile); 66 + String updateUserAvatar(Long id, InputStream avatarFile);
67 67
68 /** 68 /**
69 * 修改密码 69 * 修改密码
yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/system/service/user/SysUserServiceImpl.java renamed to yudao-admin-server/src/main/java/cn/iocoder/yudao/adminserver/modules/system/service/user/impl/SysUserServiceImpl.java
1 -package cn.iocoder.yudao.adminserver.modules.system.service.user; 1 +package cn.iocoder.yudao.adminserver.modules.system.service.user.impl;
2 2
3 import cn.hutool.core.collection.CollUtil; 3 import cn.hutool.core.collection.CollUtil;
4 import cn.hutool.core.io.IoUtil; 4 import cn.hutool.core.io.IoUtil;
5 import cn.hutool.core.util.IdUtil; 5 import cn.hutool.core.util.IdUtil;
6 import cn.hutool.core.util.StrUtil; 6 import cn.hutool.core.util.StrUtil;
7 -import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;  
8 -import cn.iocoder.yudao.framework.common.exception.ServiceException;  
9 -import cn.iocoder.yudao.framework.common.pojo.PageResult;  
10 import cn.iocoder.yudao.adminserver.modules.infra.service.file.InfFileService; 7 import cn.iocoder.yudao.adminserver.modules.infra.service.file.InfFileService;
11 import cn.iocoder.yudao.adminserver.modules.system.controller.user.vo.profile.SysUserProfileUpdatePasswordReqVO; 8 import cn.iocoder.yudao.adminserver.modules.system.controller.user.vo.profile.SysUserProfileUpdatePasswordReqVO;
12 import cn.iocoder.yudao.adminserver.modules.system.controller.user.vo.profile.SysUserProfileUpdateReqVO; 9 import cn.iocoder.yudao.adminserver.modules.system.controller.user.vo.profile.SysUserProfileUpdateReqVO;
@@ -19,6 +16,10 @@ import cn.iocoder.yudao.adminserver.modules.system.dal.mysql.user.SysUserMapper; @@ -19,6 +16,10 @@ import cn.iocoder.yudao.adminserver.modules.system.dal.mysql.user.SysUserMapper;
19 import cn.iocoder.yudao.adminserver.modules.system.service.dept.SysDeptService; 16 import cn.iocoder.yudao.adminserver.modules.system.service.dept.SysDeptService;
20 import cn.iocoder.yudao.adminserver.modules.system.service.dept.SysPostService; 17 import cn.iocoder.yudao.adminserver.modules.system.service.dept.SysPostService;
21 import cn.iocoder.yudao.adminserver.modules.system.service.permission.SysPermissionService; 18 import cn.iocoder.yudao.adminserver.modules.system.service.permission.SysPermissionService;
  19 +import cn.iocoder.yudao.adminserver.modules.system.service.user.SysUserService;
  20 +import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
  21 +import cn.iocoder.yudao.framework.common.exception.ServiceException;
  22 +import cn.iocoder.yudao.framework.common.pojo.PageResult;
22 import cn.iocoder.yudao.framework.common.util.collection.CollectionUtils; 23 import cn.iocoder.yudao.framework.common.util.collection.CollectionUtils;
23 import com.google.common.annotations.VisibleForTesting; 24 import com.google.common.annotations.VisibleForTesting;
24 import lombok.extern.slf4j.Slf4j; 25 import lombok.extern.slf4j.Slf4j;
@@ -31,9 +32,8 @@ import javax.annotation.Resource; @@ -31,9 +32,8 @@ import javax.annotation.Resource;
31 import java.io.InputStream; 32 import java.io.InputStream;
32 import java.util.*; 33 import java.util.*;
33 34
34 -import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;  
35 import static cn.iocoder.yudao.adminserver.modules.system.enums.SysErrorCodeConstants.*; 35 import static cn.iocoder.yudao.adminserver.modules.system.enums.SysErrorCodeConstants.*;
36 - 36 +import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
37 37
38 /** 38 /**
39 * 用户 Service 实现类 39 * 用户 Service 实现类
@@ -105,7 +105,7 @@ public class SysUserServiceImpl implements SysUserService { @@ -105,7 +105,7 @@ public class SysUserServiceImpl implements SysUserService {
105 } 105 }
106 106
107 @Override 107 @Override
108 - public void updateUserAvatar(Long id, InputStream avatarFile) { 108 + public String updateUserAvatar(Long id, InputStream avatarFile) {
109 this.checkUserExists(id); 109 this.checkUserExists(id);
110 // 存储文件 110 // 存储文件
111 String avatar = fileService.createFile(IdUtil.fastUUID(), IoUtil.readBytes(avatarFile)); 111 String avatar = fileService.createFile(IdUtil.fastUUID(), IoUtil.readBytes(avatarFile));
@@ -114,6 +114,7 @@ public class SysUserServiceImpl implements SysUserService { @@ -114,6 +114,7 @@ public class SysUserServiceImpl implements SysUserService {
114 sysUserDO.setId(id); 114 sysUserDO.setId(id);
115 sysUserDO.setAvatar(avatar); 115 sysUserDO.setAvatar(avatar);
116 userMapper.updateById(sysUserDO); 116 userMapper.updateById(sysUserDO);
  117 + return avatar;
117 } 118 }
118 119
119 @Override 120 @Override
@@ -216,7 +217,7 @@ public class SysUserServiceImpl implements SysUserService { @@ -216,7 +217,7 @@ public class SysUserServiceImpl implements SysUserService {
216 } 217 }
217 218
218 @VisibleForTesting 219 @VisibleForTesting
219 - void checkUserExists(Long id) { 220 + public void checkUserExists(Long id) {
220 if (id == null) { 221 if (id == null) {
221 return; 222 return;
222 } 223 }
@@ -227,7 +228,7 @@ public class SysUserServiceImpl implements SysUserService { @@ -227,7 +228,7 @@ public class SysUserServiceImpl implements SysUserService {
227 } 228 }
228 229
229 @VisibleForTesting 230 @VisibleForTesting
230 - void checkUsernameUnique(Long id, String username) { 231 + public void checkUsernameUnique(Long id, String username) {
231 if (StrUtil.isBlank(username)) { 232 if (StrUtil.isBlank(username)) {
232 return; 233 return;
233 } 234 }
@@ -245,7 +246,7 @@ public class SysUserServiceImpl implements SysUserService { @@ -245,7 +246,7 @@ public class SysUserServiceImpl implements SysUserService {
245 } 246 }
246 247
247 @VisibleForTesting 248 @VisibleForTesting
248 - void checkEmailUnique(Long id, String email) { 249 + public void checkEmailUnique(Long id, String email) {
249 if (StrUtil.isBlank(email)) { 250 if (StrUtil.isBlank(email)) {
250 return; 251 return;
251 } 252 }
@@ -263,7 +264,7 @@ public class SysUserServiceImpl implements SysUserService { @@ -263,7 +264,7 @@ public class SysUserServiceImpl implements SysUserService {
263 } 264 }
264 265
265 @VisibleForTesting 266 @VisibleForTesting
266 - void checkMobileUnique(Long id, String mobile) { 267 + public void checkMobileUnique(Long id, String mobile) {
267 if (StrUtil.isBlank(mobile)) { 268 if (StrUtil.isBlank(mobile)) {
268 return; 269 return;
269 } 270 }
@@ -281,7 +282,7 @@ public class SysUserServiceImpl implements SysUserService { @@ -281,7 +282,7 @@ public class SysUserServiceImpl implements SysUserService {
281 } 282 }
282 283
283 @VisibleForTesting 284 @VisibleForTesting
284 - void checkDeptEnable(Long deptId) { 285 + public void checkDeptEnable(Long deptId) {
285 if (deptId == null) { // 允许不选择 286 if (deptId == null) { // 允许不选择
286 return; 287 return;
287 } 288 }
@@ -295,7 +296,7 @@ public class SysUserServiceImpl implements SysUserService { @@ -295,7 +296,7 @@ public class SysUserServiceImpl implements SysUserService {
295 } 296 }
296 297
297 @VisibleForTesting 298 @VisibleForTesting
298 - void checkPostEnable(Set<Long> postIds) { 299 + public void checkPostEnable(Set<Long> postIds) {
299 if (CollUtil.isEmpty(postIds)) { // 允许不选择 300 if (CollUtil.isEmpty(postIds)) { // 允许不选择
300 return; 301 return;
301 } 302 }
@@ -322,7 +323,7 @@ public class SysUserServiceImpl implements SysUserService { @@ -322,7 +323,7 @@ public class SysUserServiceImpl implements SysUserService {
322 * @param oldPassword 旧密码 323 * @param oldPassword 旧密码
323 */ 324 */
324 @VisibleForTesting 325 @VisibleForTesting
325 - void checkOldPassword(Long id, String oldPassword) { 326 + public void checkOldPassword(Long id, String oldPassword) {
326 SysUserDO user = userMapper.selectById(id); 327 SysUserDO user = userMapper.selectById(id);
327 if (user == null) { 328 if (user == null) {
328 throw exception(USER_NOT_EXISTS); 329 throw exception(USER_NOT_EXISTS);
yudao-admin-server/src/main/resources/application-dev.yaml
@@ -44,13 +44,13 @@ spring: @@ -44,13 +44,13 @@ spring:
44 datasource: 44 datasource:
45 master: 45 master:
46 name: ruoyi-vue-pro 46 name: ruoyi-vue-pro
47 - url: jdbc:mysql://400-infra.server.iocoder.cn:3306/${spring.datasource.dynamic.datasource.master.name}?useSSL=false&useUnicode=true&characterEncoding=UTF-8&serverTimezone=CTT 47 + url: jdbc:mysql://400-infra.server.iocoder.cn:3306/${spring.datasource.dynamic.datasource.master.name}?useSSL=false&allowPublicKeyRetrieval=true&useUnicode=true&characterEncoding=UTF-8&serverTimezone=CTT
48 driver-class-name: com.mysql.jdbc.Driver 48 driver-class-name: com.mysql.jdbc.Driver
49 username: root 49 username: root
50 password: 3WLiVUBEwTbvAfsh 50 password: 3WLiVUBEwTbvAfsh
51 slave: # 模拟从库,可根据自己需要修改 # 模拟从库,可根据自己需要修改 51 slave: # 模拟从库,可根据自己需要修改 # 模拟从库,可根据自己需要修改
52 name: ruoyi-vue-pro 52 name: ruoyi-vue-pro
53 - url: jdbc:mysql://400-infra.server.iocoder.cn:3306/${spring.datasource.dynamic.datasource.slave.name}?useSSL=false&useUnicode=true&characterEncoding=UTF-8&serverTimezone=CTT 53 + url: jdbc:mysql://400-infra.server.iocoder.cn:3306/${spring.datasource.dynamic.datasource.slave.name}?useSSL=false&allowPublicKeyRetrieval=true&useUnicode=true&characterEncoding=UTF-8&serverTimezone=CTT
54 driver-class-name: com.mysql.jdbc.Driver 54 driver-class-name: com.mysql.jdbc.Driver
55 username: root 55 username: root
56 password: 3WLiVUBEwTbvAfsh 56 password: 3WLiVUBEwTbvAfsh
yudao-admin-server/src/main/resources/application-local.yaml
@@ -44,13 +44,13 @@ spring: @@ -44,13 +44,13 @@ spring:
44 datasource: 44 datasource:
45 master: 45 master:
46 name: ruoyi-vue-pro 46 name: ruoyi-vue-pro
47 - url: jdbc:mysql://127.0.0.1:3306/${spring.datasource.dynamic.datasource.master.name}?useSSL=false&useUnicode=true&characterEncoding=UTF-8&serverTimezone=CTT 47 + url: jdbc:mysql://127.0.0.1:3306/${spring.datasource.dynamic.datasource.master.name}?useSSL=false&allowPublicKeyRetrieval=true&useUnicode=true&characterEncoding=UTF-8&serverTimezone=CTT
48 driver-class-name: com.mysql.jdbc.Driver 48 driver-class-name: com.mysql.jdbc.Driver
49 username: root 49 username: root
50 password: 123456 50 password: 123456
51 slave: # 模拟从库,可根据自己需要修改 51 slave: # 模拟从库,可根据自己需要修改
52 name: ruoyi-vue-pro 52 name: ruoyi-vue-pro
53 - url: jdbc:mysql://127.0.0.1:3306/${spring.datasource.dynamic.datasource.slave.name}?useSSL=false&useUnicode=true&characterEncoding=UTF-8&serverTimezone=CTT 53 + url: jdbc:mysql://127.0.0.1:3306/${spring.datasource.dynamic.datasource.slave.name}?useSSL=false&allowPublicKeyRetrieval=true&useUnicode=true&characterEncoding=UTF-8&serverTimezone=CTT
54 driver-class-name: com.mysql.jdbc.Driver 54 driver-class-name: com.mysql.jdbc.Driver
55 username: root 55 username: root
56 password: 123456 56 password: 123456
@@ -167,3 +167,24 @@ yudao: @@ -167,3 +167,24 @@ yudao:
167 - ${spring.boot.admin.context-path}/** # 不处理 Spring Boot Admin 的请求 167 - ${spring.boot.admin.context-path}/** # 不处理 Spring Boot Admin 的请求
168 - ${management.endpoints.web.base-path}/** # 不处理 Actuator 的请求 168 - ${management.endpoints.web.base-path}/** # 不处理 Actuator 的请求
169 demo: false # 关闭演示模式 169 demo: false # 关闭演示模式
  170 +
  171 +justauth:
  172 + enabled: true
  173 + type:
  174 + GITEE: # Gitee
  175 + client-id: ee61f0374a4c6c404a8717094caa7a410d76950e45ff60348015830c519ba5c1
  176 + client-secret: 7c044a5671be3b051414db0cf2cec6ad702dd298d2416ba24ceaf608e6fa26f9
  177 + ignore-check-redirect-uri: true
  178 + DINGTALK: # 钉钉
  179 + client-id: dingvrnreaje3yqvzhxg
  180 + client-secret: i8E6iZyDvZj51JIb0tYsYfVQYOks9Cq1lgryEjFRqC79P3iJcrxEwT6Qk2QvLrLI
  181 + ignore-check-redirect-uri: true
  182 + WECHAT_ENTERPRISE: # 企业微信
  183 + client-id: wwd411c69a39ad2e54
  184 + client-secret: 1wTb7hYxnpT2TUbIeHGXGo7T0odav1ic10mLdyyATOw
  185 + agent-id: 1000004
  186 + ignore-check-redirect-uri: true
  187 + cache:
  188 + type: REDIS
  189 + prefix: 'social_auth_state:' # 缓存前缀,目前只对 Redis 缓存生效,默认 JUSTAUTH::STATE::
  190 + timeout: 24h # 超时时长,目前只对 Redis 缓存生效,默认 3 分钟
yudao-admin-server/src/test-integration/java/cn/iocoder/yudao/adminserver/modules/system/service/sms/SysSmsServiceIntegrationTest.java
@@ -41,7 +41,7 @@ public class SysSmsServiceIntegrationTest extends BaseDbAndRedisIntegrationTest @@ -41,7 +41,7 @@ public class SysSmsServiceIntegrationTest extends BaseDbAndRedisIntegrationTest
41 Integer userType = UserTypeEnum.ADMIN.getValue(); 41 Integer userType = UserTypeEnum.ADMIN.getValue();
42 String templateCode = "test_01"; 42 String templateCode = "test_01";
43 Map<String, Object> templateParams = MapUtil.<String, Object>builder() 43 Map<String, Object> templateParams = MapUtil.<String, Object>builder()
44 - .put("operation", "登陆").put("code", "1234").build(); 44 + .put("operation", "登录").put("code", "1234").build();
45 // 调用 45 // 调用
46 smsService.sendSingleSms(mobile, userId, userType, templateCode, templateParams); 46 smsService.sendSingleSms(mobile, userId, userType, templateCode, templateParams);
47 47
yudao-admin-server/src/test/java/cn/iocoder/yudao/adminserver/BaseMockitoUnitTest.java deleted
1 -package cn.iocoder.yudao.adminserver;  
2 -  
3 -import org.junit.jupiter.api.extension.ExtendWith;  
4 -import org.mockito.junit.jupiter.MockitoExtension;  
5 -  
6 -/**  
7 - * 纯 Mockito 的单元测试  
8 - *  
9 - * @author 芋道源码  
10 - */  
11 -@ExtendWith(MockitoExtension.class)  
12 -public class BaseMockitoUnitTest {  
13 -}  
yudao-admin-server/src/test/java/cn/iocoder/yudao/adminserver/modules/system/service/auth/SysAuthServiceImplTest.java
@@ -236,7 +236,7 @@ public class SysAuthServiceImplTest extends BaseDbUnitTest { @@ -236,7 +236,7 @@ public class SysAuthServiceImplTest extends BaseDbUnitTest {
236 when(authentication.getPrincipal()).thenReturn(loginUser); 236 when(authentication.getPrincipal()).thenReturn(loginUser);
237 // mock 获得 User 拥有的角色编号数组 237 // mock 获得 User 拥有的角色编号数组
238 when(permissionService.getUserRoleIds(userId, singleton(CommonStatusEnum.ENABLE.getStatus()))).thenReturn(userRoleIds); 238 when(permissionService.getUserRoleIds(userId, singleton(CommonStatusEnum.ENABLE.getStatus()))).thenReturn(userRoleIds);
239 - // mock 缓存登陆用户到 Redis 239 + // mock 缓存登录用户到 Redis
240 when(userSessionService.createUserSession(loginUser, userIp, userAgent)).thenReturn(sessionId); 240 when(userSessionService.createUserSession(loginUser, userIp, userAgent)).thenReturn(sessionId);
241 // 调用, 并断言异常 241 // 调用, 并断言异常
242 String login = authService.login(reqVO, userIp, userAgent); 242 String login = authService.login(reqVO, userIp, userAgent);
yudao-admin-server/src/test/java/cn/iocoder/yudao/adminserver/modules/system/service/auth/SysUserSessionServiceImplTest.java
@@ -41,7 +41,7 @@ import cn.iocoder.yudao.adminserver.modules.system.enums.common.SysSexEnum; @@ -41,7 +41,7 @@ import cn.iocoder.yudao.adminserver.modules.system.enums.common.SysSexEnum;
41 import cn.iocoder.yudao.adminserver.modules.system.service.auth.impl.SysUserSessionServiceImpl; 41 import cn.iocoder.yudao.adminserver.modules.system.service.auth.impl.SysUserSessionServiceImpl;
42 import cn.iocoder.yudao.adminserver.modules.system.service.dept.impl.SysDeptServiceImpl; 42 import cn.iocoder.yudao.adminserver.modules.system.service.dept.impl.SysDeptServiceImpl;
43 import cn.iocoder.yudao.adminserver.modules.system.service.logger.impl.SysLoginLogServiceImpl; 43 import cn.iocoder.yudao.adminserver.modules.system.service.logger.impl.SysLoginLogServiceImpl;
44 -import cn.iocoder.yudao.adminserver.modules.system.service.user.SysUserServiceImpl; 44 +import cn.iocoder.yudao.adminserver.modules.system.service.user.impl.SysUserServiceImpl;
45 import cn.iocoder.yudao.framework.test.core.util.AssertUtils; 45 import cn.iocoder.yudao.framework.test.core.util.AssertUtils;
46 import cn.iocoder.yudao.framework.test.core.util.RandomUtils; 46 import cn.iocoder.yudao.framework.test.core.util.RandomUtils;
47 import cn.iocoder.yudao.framework.common.util.object.ObjectUtils; 47 import cn.iocoder.yudao.framework.common.util.object.ObjectUtils;
yudao-admin-server/src/test/java/cn/iocoder/yudao/adminserver/modules/system/service/sms/SysSmsServiceTest.java
1 package cn.iocoder.yudao.adminserver.modules.system.service.sms; 1 package cn.iocoder.yudao.adminserver.modules.system.service.sms;
2 2
3 import cn.hutool.core.map.MapUtil; 3 import cn.hutool.core.map.MapUtil;
4 -import cn.iocoder.yudao.adminserver.BaseMockitoUnitTest;  
5 import cn.iocoder.yudao.framework.common.core.KeyValue; 4 import cn.iocoder.yudao.framework.common.core.KeyValue;
6 import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum; 5 import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
7 import cn.iocoder.yudao.framework.common.enums.UserTypeEnum; 6 import cn.iocoder.yudao.framework.common.enums.UserTypeEnum;
@@ -14,6 +13,7 @@ import cn.iocoder.yudao.adminserver.modules.system.dal.dataobject.sms.SysSmsTemp @@ -14,6 +13,7 @@ import cn.iocoder.yudao.adminserver.modules.system.dal.dataobject.sms.SysSmsTemp
14 import cn.iocoder.yudao.adminserver.modules.system.mq.message.sms.SysSmsSendMessage; 13 import cn.iocoder.yudao.adminserver.modules.system.mq.message.sms.SysSmsSendMessage;
15 import cn.iocoder.yudao.adminserver.modules.system.mq.producer.sms.SysSmsProducer; 14 import cn.iocoder.yudao.adminserver.modules.system.mq.producer.sms.SysSmsProducer;
16 import cn.iocoder.yudao.adminserver.modules.system.service.sms.impl.SysSmsServiceImpl; 15 import cn.iocoder.yudao.adminserver.modules.system.service.sms.impl.SysSmsServiceImpl;
  16 +import cn.iocoder.yudao.framework.test.core.ut.BaseMockitoUnitTest;
17 import org.assertj.core.util.Lists; 17 import org.assertj.core.util.Lists;
18 import org.junit.jupiter.api.Test; 18 import org.junit.jupiter.api.Test;
19 import org.mockito.InjectMocks; 19 import org.mockito.InjectMocks;
yudao-admin-server/src/test/java/cn/iocoder/yudao/adminserver/modules/system/service/social/SysSocialServiceTest.java 0 → 100644
  1 +package cn.iocoder.yudao.adminserver.modules.system.service.social;
  2 +
  3 +import cn.iocoder.yudao.adminserver.BaseDbAndRedisUnitTest;
  4 +import cn.iocoder.yudao.adminserver.modules.system.dal.dataobject.social.SysSocialUserDO;
  5 +import cn.iocoder.yudao.adminserver.modules.system.dal.mysql.social.SysSocialUserMapper;
  6 +import cn.iocoder.yudao.adminserver.modules.system.dal.redis.social.SysSocialAuthUserRedisDAO;
  7 +import cn.iocoder.yudao.adminserver.modules.system.enums.social.SysSocialTypeEnum;
  8 +import cn.iocoder.yudao.adminserver.modules.system.service.social.impl.SysSocialServiceImpl;
  9 +import cn.iocoder.yudao.framework.common.enums.UserTypeEnum;
  10 +import com.xkcoding.justauth.AuthRequestFactory;
  11 +import me.zhyd.oauth.model.AuthUser;
  12 +import org.junit.jupiter.api.Test;
  13 +import org.springframework.boot.test.mock.mockito.MockBean;
  14 +import org.springframework.context.annotation.Import;
  15 +
  16 +import javax.annotation.Resource;
  17 +import java.util.List;
  18 +
  19 +import static cn.hutool.core.util.RandomUtil.randomEle;
  20 +import static cn.hutool.core.util.RandomUtil.randomString;
  21 +import static cn.iocoder.yudao.framework.common.util.json.JsonUtils.toJsonString;
  22 +import static cn.iocoder.yudao.framework.test.core.util.RandomUtils.randomLongId;
  23 +import static cn.iocoder.yudao.framework.test.core.util.RandomUtils.randomPojo;
  24 +import static org.junit.jupiter.api.Assertions.assertEquals;
  25 +
  26 +/**
  27 + * {@link SysSocialServiceImpl} 的单元测试类
  28 + *
  29 + * @author 芋道源码
  30 + */
  31 +@Import({SysSocialServiceImpl.class, SysSocialAuthUserRedisDAO.class})
  32 +public class SysSocialServiceTest extends BaseDbAndRedisUnitTest {
  33 +
  34 + @Resource
  35 + private SysSocialServiceImpl socialService;
  36 +
  37 + @Resource
  38 + private SysSocialUserMapper socialUserMapper;
  39 +
  40 + @MockBean
  41 + private AuthRequestFactory authRequestFactory;
  42 +
  43 + /**
  44 + * 情况一,创建 SysSocialUserDO 的情况
  45 + */
  46 + @Test
  47 + public void testBindSocialUser_create() {
  48 + // mock 数据
  49 + // 准备参数
  50 + Long userId = randomLongId();
  51 + Integer type = randomEle(SysSocialTypeEnum.values()).getType();
  52 + AuthUser authUser = randomPojo(AuthUser.class);
  53 + // mock 方法
  54 +
  55 + // 调用
  56 + socialService.bindSocialUser(userId, type, authUser);
  57 + // 断言
  58 + List<SysSocialUserDO> socialUsers = socialUserMapper.selectList("user_id", userId);
  59 + assertEquals(1, socialUsers.size());
  60 + assertBindSocialUser(socialUsers.get(0), authUser, userId, type);
  61 + }
  62 +
  63 + /**
  64 + * 情况二,更新 SysSocialUserDO 的情况
  65 + */
  66 + @Test
  67 + public void testBindSocialUser_update() {
  68 + // mock 数据
  69 + SysSocialUserDO dbSocialUser = randomPojo(SysSocialUserDO.class, socialUserDO -> {
  70 + socialUserDO.setUserType(UserTypeEnum.ADMIN.getValue());
  71 + socialUserDO.setType(randomEle(SysSocialTypeEnum.values()).getType());
  72 + });
  73 + socialUserMapper.insert(dbSocialUser);
  74 + // 准备参数
  75 + Long userId = dbSocialUser.getUserId();
  76 + Integer type = dbSocialUser.getType();
  77 + AuthUser authUser = randomPojo(AuthUser.class);
  78 + // mock 方法
  79 +
  80 + // 调用
  81 + socialService.bindSocialUser(userId, type, authUser);
  82 + // 断言
  83 + List<SysSocialUserDO> socialUsers = socialUserMapper.selectList("user_id", userId);
  84 + assertEquals(1, socialUsers.size());
  85 + assertBindSocialUser(socialUsers.get(0), authUser, userId, type);
  86 + }
  87 +
  88 + /**
  89 + * 情况一和二都存在的,逻辑二的场景
  90 + */
  91 + @Test
  92 + public void testBindSocialUser_userId() {
  93 + // mock 数据
  94 + SysSocialUserDO dbSocialUser = randomPojo(SysSocialUserDO.class, socialUserDO -> {
  95 + socialUserDO.setUserType(UserTypeEnum.ADMIN.getValue());
  96 + socialUserDO.setType(randomEle(SysSocialTypeEnum.values()).getType());
  97 + });
  98 + socialUserMapper.insert(dbSocialUser);
  99 + // 准备参数
  100 + Long userId = randomLongId();
  101 + Integer type = dbSocialUser.getType();
  102 + AuthUser authUser = randomPojo(AuthUser.class);
  103 + // mock 方法
  104 +
  105 + // 调用
  106 + socialService.bindSocialUser(userId, type, authUser);
  107 + // 断言
  108 + List<SysSocialUserDO> socialUsers = socialUserMapper.selectList("user_id", userId);
  109 + assertEquals(1, socialUsers.size());
  110 + }
  111 +
  112 + private void assertBindSocialUser(SysSocialUserDO socialUser, AuthUser authUser, Long userId,
  113 + Integer type) {
  114 + assertEquals(authUser.getToken().getAccessToken(), socialUser.getToken());
  115 + assertEquals(toJsonString(authUser.getToken()), socialUser.getRawTokenInfo());
  116 + assertEquals(authUser.getNickname(), socialUser.getNickname());
  117 + assertEquals(authUser.getAvatar(), socialUser.getAvatar());
  118 + assertEquals(toJsonString(authUser.getRawUserInfo()), socialUser.getRawUserInfo());
  119 + assertEquals(userId, socialUser.getUserId());
  120 + assertEquals(UserTypeEnum.ADMIN.getValue(), socialUser.getUserType());
  121 + assertEquals(type, socialUser.getType());
  122 + assertEquals(authUser.getUuid(), socialUser.getOpenid());
  123 + assertEquals(socialService.getAuthUserUnionId(authUser), socialUser.getUnionId());
  124 + }
  125 +
  126 + /**
  127 + * 情况一,如果新老的 unionId 是一致的,无需解绑
  128 + */
  129 + @Test
  130 + public void testUnbindOldSocialUser_no() {
  131 + // mock 数据
  132 + SysSocialUserDO oldSocialUser = randomPojo(SysSocialUserDO.class, socialUserDO -> {
  133 + socialUserDO.setUserType(UserTypeEnum.ADMIN.getValue());
  134 + socialUserDO.setType(randomEle(SysSocialTypeEnum.values()).getType());
  135 + });
  136 + socialUserMapper.insert(oldSocialUser);
  137 + // 准备参数
  138 + Long userId = oldSocialUser.getUserId();
  139 + Integer type = oldSocialUser.getType();
  140 + String newUnionId = oldSocialUser.getUnionId();
  141 +
  142 + // 调用
  143 + socialService.unbindOldSocialUser(userId, type, newUnionId);
  144 + // 断言
  145 + assertEquals(1L, socialUserMapper.selectCount(null).longValue());
  146 + }
  147 +
  148 +
  149 + /**
  150 + * 情况二,如果新老的 unionId 不一致的,需解绑
  151 + */
  152 + @Test
  153 + public void testUnbindOldSocialUser_yes() {
  154 + // mock 数据
  155 + SysSocialUserDO oldSocialUser = randomPojo(SysSocialUserDO.class, socialUserDO -> {
  156 + socialUserDO.setUserType(UserTypeEnum.ADMIN.getValue());
  157 + socialUserDO.setType(randomEle(SysSocialTypeEnum.values()).getType());
  158 + });
  159 + socialUserMapper.insert(oldSocialUser);
  160 + // 准备参数
  161 + Long userId = oldSocialUser.getUserId();
  162 + Integer type = oldSocialUser.getType();
  163 + String newUnionId = randomString(10);
  164 +
  165 + // 调用
  166 + socialService.unbindOldSocialUser(userId, type, newUnionId);
  167 + // 断言
  168 + assertEquals(0L, socialUserMapper.selectCount(null).longValue());
  169 + }
  170 +
  171 +}
yudao-admin-server/src/test/java/cn/iocoder/yudao/adminserver/modules/system/service/user/SysUserServiceImplTest.java
@@ -3,6 +3,7 @@ package cn.iocoder.yudao.adminserver.modules.system.service.user; @@ -3,6 +3,7 @@ package cn.iocoder.yudao.adminserver.modules.system.service.user;
3 import cn.hutool.core.collection.CollUtil; 3 import cn.hutool.core.collection.CollUtil;
4 import cn.hutool.core.util.RandomUtil; 4 import cn.hutool.core.util.RandomUtil;
5 import cn.iocoder.yudao.adminserver.BaseDbUnitTest; 5 import cn.iocoder.yudao.adminserver.BaseDbUnitTest;
  6 +import cn.iocoder.yudao.adminserver.modules.system.service.user.impl.SysUserServiceImpl;
6 import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum; 7 import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
7 import cn.iocoder.yudao.framework.common.pojo.PageResult; 8 import cn.iocoder.yudao.framework.common.pojo.PageResult;
8 import cn.iocoder.yudao.adminserver.modules.infra.service.file.InfFileService; 9 import cn.iocoder.yudao.adminserver.modules.infra.service.file.InfFileService;
yudao-admin-server/src/test/resources/sql/clean.sql
@@ -23,3 +23,4 @@ DELETE FROM &quot;sys_sms_channel&quot;; @@ -23,3 +23,4 @@ DELETE FROM &quot;sys_sms_channel&quot;;
23 DELETE FROM "sys_sms_template"; 23 DELETE FROM "sys_sms_template";
24 DELETE FROM "sys_sms_log"; 24 DELETE FROM "sys_sms_log";
25 DELETE FROM "sys_error_code"; 25 DELETE FROM "sys_error_code";
  26 +DELETE FROM "sys_social_user";
yudao-admin-server/src/test/resources/sql/create_tables.sql
@@ -426,3 +426,23 @@ CREATE TABLE IF NOT EXISTS &quot;sys_error_code&quot; ( @@ -426,3 +426,23 @@ CREATE TABLE IF NOT EXISTS &quot;sys_error_code&quot; (
426 "deleted" bit NOT NULL DEFAULT FALSE, 426 "deleted" bit NOT NULL DEFAULT FALSE,
427 PRIMARY KEY ("id") 427 PRIMARY KEY ("id")
428 ) COMMENT '错误码表'; 428 ) COMMENT '错误码表';
  429 +
  430 +CREATE TABLE IF NOT EXISTS "sys_social_user" (
  431 + "id" number NOT NULL GENERATED BY DEFAULT AS IDENTITY,
  432 + "user_id" bigint NOT NULL,
  433 + "user_type" tinyint NOT NULL DEFAULT '0',
  434 + "type" tinyint NOT NULL,
  435 + "openid" varchar(32) NOT NULL,
  436 + "token" varchar(256) DEFAULT NULL,
  437 + "union_id" varchar(32) NOT NULL,
  438 + "raw_token_info" varchar(1024) NOT NULL,
  439 + "nickname" varchar(32) NOT NULL,
  440 + "avatar" varchar(255) DEFAULT NULL,
  441 + "raw_user_info" varchar(1024) NOT NULL,
  442 + "creator" varchar(64) DEFAULT '',
  443 + "create_time" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  444 + "updater" varchar(64) DEFAULT '',
  445 + "update_time" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  446 + "deleted" bit NOT NULL DEFAULT FALSE,
  447 + PRIMARY KEY ("id")
  448 +) COMMENT '社交用户';
yudao-admin-ui/.env.production
@@ -4,7 +4,7 @@ ENV = &#39;production&#39; @@ -4,7 +4,7 @@ ENV = &#39;production&#39;
4 # 芋道管理系统/生产环境 4 # 芋道管理系统/生产环境
5 VUE_APP_BASE_API = '/prod-api' 5 VUE_APP_BASE_API = '/prod-api'
6 # 根据服务器或域名修改 6 # 根据服务器或域名修改
7 -PUBLIC_PATH = 'http://you_ip.cn/yudao-admin/' 7 +PUBLIC_PATH = 'http://my-pi.com:8888/yudao-admin/'
8 # 二级部署路径 8 # 二级部署路径
9 VUE_APP_APP_NAME ='yudao-admin' 9 VUE_APP_APP_NAME ='yudao-admin'
10 10
yudao-admin-ui/src/api/login.js
@@ -38,3 +38,64 @@ export function getCodeImg() { @@ -38,3 +38,64 @@ export function getCodeImg() {
38 method: 'get' 38 method: 'get'
39 }) 39 })
40 } 40 }
  41 +
  42 +// 社交授权的跳转
  43 +export function socialAuthRedirect(type, redirectUri) {
  44 + return request({
  45 + url: '/social-auth-redirect?type=' + type + '&redirectUri=' + redirectUri,
  46 + method: 'get'
  47 + })
  48 +}
  49 +
  50 +// 社交登录,使用 code 授权码
  51 +export function socialLogin(type, code, state) {
  52 + return request({
  53 + url: '/social-login',
  54 + method: 'post',
  55 + data: {
  56 + type,
  57 + code,
  58 + state
  59 + }
  60 + })
  61 +}
  62 +
  63 +// 社交登录,使用 code 授权码 + + 账号密码
  64 +export function socialLogin2(type, code, state, username, password) {
  65 + return request({
  66 + url: '/social-login2',
  67 + method: 'post',
  68 + data: {
  69 + type,
  70 + code,
  71 + state,
  72 + username,
  73 + password
  74 + }
  75 + })
  76 +}
  77 +
  78 +// 社交绑定,使用 code 授权码
  79 +export function socialBind(type, code, state) {
  80 + return request({
  81 + url: '/social-bind',
  82 + method: 'post',
  83 + data: {
  84 + type,
  85 + code,
  86 + state,
  87 + }
  88 + })
  89 +}
  90 +
  91 +// 取消社交绑定
  92 +export function socialUnbind(type, unionId) {
  93 + return request({
  94 + url: '/social-unbind',
  95 + method: 'delete',
  96 + data: {
  97 + type,
  98 + unionId
  99 + }
  100 + })
  101 +}
yudao-admin-ui/src/api/system/user.js
@@ -113,7 +113,7 @@ export function updateUserPwd(oldPassword, newPassword) { @@ -113,7 +113,7 @@ export function updateUserPwd(oldPassword, newPassword) {
113 // 用户头像上传 113 // 用户头像上传
114 export function uploadAvatar(data) { 114 export function uploadAvatar(data) {
115 return request({ 115 return request({
116 - url: '/system/user/profile/avatar', 116 + url: '/system/user/profile/update-avatar',
117 method: 'put', 117 method: 'put',
118 data: data 118 data: data
119 }) 119 })
yudao-admin-ui/src/permission.js
@@ -7,7 +7,7 @@ import { getToken } from &#39;@/utils/auth&#39; @@ -7,7 +7,7 @@ import { getToken } from &#39;@/utils/auth&#39;
7 7
8 NProgress.configure({ showSpinner: false }) 8 NProgress.configure({ showSpinner: false })
9 9
10 -const whiteList = ['/login', '/auth-redirect', '/bind', '/register'] 10 +const whiteList = ['/login', '/social-login', '/auth-redirect', '/bind', '/register', '/oauthLogin/gitee']
11 11
12 router.beforeEach((to, from, next) => { 12 router.beforeEach((to, from, next) => {
13 NProgress.start() 13 NProgress.start()
yudao-admin-ui/src/router/index.js
@@ -44,6 +44,11 @@ export const constantRoutes = [ @@ -44,6 +44,11 @@ export const constantRoutes = [
44 hidden: true 44 hidden: true
45 }, 45 },
46 { 46 {
  47 + path: '/social-login',
  48 + component: (resolve) => require(['@/views/socialLogin'], resolve),
  49 + hidden: true
  50 + },
  51 + {
47 path: '/404', 52 path: '/404',
48 component: (resolve) => require(['@/views/error/404'], resolve), 53 component: (resolve) => require(['@/views/error/404'], resolve),
49 hidden: true 54 hidden: true
yudao-admin-ui/src/store/modules/user.js
1 -import { login, logout, getInfo } from '@/api/login' 1 +import {login, logout, getInfo, socialLogin, socialLogin2} from '@/api/login'
2 import { getToken, setToken, removeToken } from '@/utils/auth' 2 import { getToken, setToken, removeToken } from '@/utils/auth'
3 3
4 const user = { 4 const user = {
@@ -47,6 +47,42 @@ const user = { @@ -47,6 +47,42 @@ const user = {
47 }) 47 })
48 }, 48 },
49 49
  50 + // 社交登录
  51 + SocialLogin({ commit }, userInfo) {
  52 + const code = userInfo.code
  53 + const state = userInfo.state
  54 + const type = userInfo.type
  55 + return new Promise((resolve, reject) => {
  56 + socialLogin(type, code, state).then(res => {
  57 + res = res.data;
  58 + setToken(res.token)
  59 + commit('SET_TOKEN', res.token)
  60 + resolve()
  61 + }).catch(error => {
  62 + reject(error)
  63 + })
  64 + })
  65 + },
  66 +
  67 + // 社交登录
  68 + SocialLogin2({ commit }, userInfo) {
  69 + const code = userInfo.code
  70 + const state = userInfo.state
  71 + const type = userInfo.type
  72 + const username = userInfo.username.trim()
  73 + const password = userInfo.password
  74 + return new Promise((resolve, reject) => {
  75 + socialLogin2(type, code, state, username, password).then(res => {
  76 + res = res.data;
  77 + setToken(res.token)
  78 + commit('SET_TOKEN', res.token)
  79 + resolve()
  80 + }).catch(error => {
  81 + reject(error)
  82 + })
  83 + })
  84 + },
  85 +
50 // 获取用户信息 86 // 获取用户信息
51 GetInfo({ commit, state }) { 87 GetInfo({ commit, state }) {
52 return new Promise((resolve, reject) => { 88 return new Promise((resolve, reject) => {
yudao-admin-ui/src/utils/constants.js
@@ -66,3 +66,27 @@ export const InfApiErrorLogProcessStatusEnum = { @@ -66,3 +66,27 @@ export const InfApiErrorLogProcessStatusEnum = {
66 DONE: 1, // 已处理 66 DONE: 1, // 已处理
67 IGNORE: 2, // 已忽略 67 IGNORE: 2, // 已忽略
68 } 68 }
  69 +
  70 +/**
  71 + * 用户的社交平台的类型枚举
  72 + */
  73 +export const SysUserSocialTypeEnum = {
  74 + // GITEE: {
  75 + // title: "码云",
  76 + // type: 10,
  77 + // source: "gitee",
  78 + // img: "https://cdn.jsdelivr.net/gh/justauth/justauth-oauth-logo@1.11/gitee.png",
  79 + // },
  80 + DINGTALK: {
  81 + title: "钉钉",
  82 + type: 20,
  83 + source: "dingtalk",
  84 + img: "https://cdn.jsdelivr.net/gh/justauth/justauth-oauth-logo@1.11/dingtalk.png",
  85 + },
  86 + WECHAT_ENTERPRISE: {
  87 + title: "企业微信",
  88 + type: 30,
  89 + source: "wechat_enterprise",
  90 + img: "https://cdn.jsdelivr.net/gh/justauth/justauth-oauth-logo@1.11/wechat_enterprise.png",
  91 + }
  92 +}
yudao-admin-ui/src/utils/dict.js
@@ -15,6 +15,7 @@ export const DICT_TYPE = { @@ -15,6 +15,7 @@ export const DICT_TYPE = {
15 SYS_USER_SEX: 'sys_user_sex', 15 SYS_USER_SEX: 'sys_user_sex',
16 SYS_NOTICE_TYPE: 'sys_notice_type', 16 SYS_NOTICE_TYPE: 'sys_notice_type',
17 SYS_OPERATE_TYPE: 'sys_operate_type', 17 SYS_OPERATE_TYPE: 'sys_operate_type',
  18 + SYS_LOGIN_TYPE: 'sys_login_type',
18 SYS_LOGIN_RESULT: 'sys_login_result', 19 SYS_LOGIN_RESULT: 'sys_login_result',
19 SYS_CONFIG_TYPE: 'sys_config_type', 20 SYS_CONFIG_TYPE: 'sys_config_type',
20 SYS_SMS_CHANNEL_CODE: 'sys_sms_channel_code', 21 SYS_SMS_CHANNEL_CODE: 'sys_sms_channel_code',
yudao-admin-ui/src/views/index_old.vue
@@ -419,7 +419,7 @@ @@ -419,7 +419,7 @@
419 <li>修复表格时间为空出现的异常</li> 419 <li>修复表格时间为空出现的异常</li>
420 <li>添加Jackson日期反序列化时区配置</li> 420 <li>添加Jackson日期反序列化时区配置</li>
421 <li>调整根据用户权限加载菜单数据树形结构</li> 421 <li>调整根据用户权限加载菜单数据树形结构</li>
422 - <li>调整成功登陆不恢复按钮,防止多次点击</li> 422 + <li>调整成功登录不恢复按钮,防止多次点击</li>
423 <li>修改用户个人资料同步缓存信息</li> 423 <li>修改用户个人资料同步缓存信息</li>
424 <li>修复页面同时出现el-upload和Editor不显示处理</li> 424 <li>修复页面同时出现el-upload和Editor不显示处理</li>
425 <li>修复在角色管理页修改菜单权限偶尔未选中问题</li> 425 <li>修复在角色管理页修改菜单权限偶尔未选中问题</li>
yudao-admin-ui/src/views/login.vue
@@ -8,24 +8,12 @@ @@ -8,24 +8,12 @@
8 </el-input> 8 </el-input>
9 </el-form-item> 9 </el-form-item>
10 <el-form-item prop="password"> 10 <el-form-item prop="password">
11 - <el-input  
12 - v-model="loginForm.password"  
13 - type="password"  
14 - auto-complete="off"  
15 - placeholder="密码"  
16 - @keyup.enter.native="handleLogin"  
17 - > 11 + <el-input v-model="loginForm.password" type="password" auto-complete="off" placeholder="密码" @keyup.enter.native="handleLogin">
18 <svg-icon slot="prefix" icon-class="password" class="el-input__icon input-icon" /> 12 <svg-icon slot="prefix" icon-class="password" class="el-input__icon input-icon" />
19 </el-input> 13 </el-input>
20 </el-form-item> 14 </el-form-item>
21 <el-form-item prop="code"> 15 <el-form-item prop="code">
22 - <el-input  
23 - v-model="loginForm.code"  
24 - auto-complete="off"  
25 - placeholder="验证码"  
26 - style="width: 63%"  
27 - @keyup.enter.native="handleLogin"  
28 - > 16 + <el-input v-model="loginForm.code" auto-complete="off" placeholder="验证码" style="width: 63%" @keyup.enter.native="handleLogin">
29 <svg-icon slot="prefix" icon-class="validCode" class="el-input__icon input-icon" /> 17 <svg-icon slot="prefix" icon-class="validCode" class="el-input__icon input-icon" />
30 </el-input> 18 </el-input>
31 <div class="login-code"> 19 <div class="login-code">
@@ -34,17 +22,20 @@ @@ -34,17 +22,20 @@
34 </el-form-item> 22 </el-form-item>
35 <el-checkbox v-model="loginForm.rememberMe" style="margin:0px 0px 25px 0px;">记住密码</el-checkbox> 23 <el-checkbox v-model="loginForm.rememberMe" style="margin:0px 0px 25px 0px;">记住密码</el-checkbox>
36 <el-form-item style="width:100%;"> 24 <el-form-item style="width:100%;">
37 - <el-button  
38 - :loading="loading"  
39 - size="medium"  
40 - type="primary"  
41 - style="width:100%;"  
42 - @click.native.prevent="handleLogin"  
43 - > 25 + <el-button :loading="loading" size="medium" type="primary" style="width:100%;" @click.native.prevent="handleLogin">
44 <span v-if="!loading">登 录</span> 26 <span v-if="!loading">登 录</span>
45 <span v-else>登 录 中...</span> 27 <span v-else>登 录 中...</span>
46 </el-button> 28 </el-button>
47 </el-form-item> 29 </el-form-item>
  30 +
  31 + <el-form-item style="width:100%;">
  32 + <div class="oauth-login" style="display:flex">
  33 + <div class="oauth-login-item" v-for="item in SysUserSocialTypeEnum" :key="item.type" @click="doSocialLogin(item)">
  34 + <img :src="item.img" height="25px" width="25px" alt="登录" >
  35 + <span>{{item.title}}</span>
  36 + </div>
  37 + </div>
  38 + </el-form-item>
48 </el-form> 39 </el-form>
49 <!-- 底部 --> 40 <!-- 底部 -->
50 <div class="el-login-footer"> 41 <div class="el-login-footer">
@@ -54,16 +45,16 @@ @@ -54,16 +45,16 @@
54 </template> 45 </template>
55 46
56 <script> 47 <script>
57 -import { getCodeImg } from "@/api/login"; 48 +import { getCodeImg,socialAuthRedirect } from "@/api/login";
58 import Cookies from "js-cookie"; 49 import Cookies from "js-cookie";
59 import { encrypt, decrypt } from '@/utils/jsencrypt' 50 import { encrypt, decrypt } from '@/utils/jsencrypt'
  51 +import {InfApiErrorLogProcessStatusEnum, SysUserSocialTypeEnum} from "@/utils/constants";
60 52
61 export default { 53 export default {
62 name: "Login", 54 name: "Login",
63 data() { 55 data() {
64 return { 56 return {
65 codeUrl: "", 57 codeUrl: "",
66 - cookiePassword: "",  
67 loginForm: { 58 loginForm: {
68 username: "admin", 59 username: "admin",
69 password: "admin123", 60 password: "admin123",
@@ -81,18 +72,22 @@ export default { @@ -81,18 +72,22 @@ export default {
81 code: [{ required: true, trigger: "change", message: "验证码不能为空" }] 72 code: [{ required: true, trigger: "change", message: "验证码不能为空" }]
82 }, 73 },
83 loading: false, 74 loading: false,
84 - redirect: undefined 75 + redirect: undefined,
  76 + // 枚举
  77 + SysUserSocialTypeEnum: SysUserSocialTypeEnum,
85 }; 78 };
86 }, 79 },
87 - watch: {  
88 - $route: {  
89 - handler: function(route) {  
90 - this.redirect = route.query && route.query.redirect;  
91 - },  
92 - immediate: true  
93 - }  
94 - }, 80 + // watch: {
  81 + // $route: {
  82 + // handler: function(route) {
  83 + // this.redirect = route.query && route.query.redirect;
  84 + // },
  85 + // immediate: true
  86 + // }
  87 + // },
95 created() { 88 created() {
  89 + // 重定向地址
  90 + this.redirect = this.$route.query.redirect;
96 this.getCode(); 91 this.getCode();
97 this.getCookie(); 92 this.getCookie();
98 }, 93 },
@@ -135,6 +130,20 @@ export default { @@ -135,6 +130,20 @@ export default {
135 }); 130 });
136 } 131 }
137 }); 132 });
  133 + },
  134 + doSocialLogin(socialTypeEnum) {
  135 + // console.log("开始Oauth登录...%o", socialTypeEnum.code);
  136 + // 设置登录中
  137 + this.loading = true;
  138 + // 计算 redirectUri
  139 + const redirectUri = location.origin + '/social-login?type=' + socialTypeEnum.type + '&redirect=' + (this.redirect || "/"); // 重定向不能丢
  140 + // const redirectUri = 'http://127.0.0.1:48080/api/gitee/callback';
  141 + // const redirectUri = 'http://127.0.0.1:48080/api/dingtalk/callback';
  142 + // 进行跳转
  143 + socialAuthRedirect(socialTypeEnum.type, encodeURIComponent(redirectUri)).then((res) => {
  144 + // console.log(res.url);
  145 + window.location.href = res.data;
  146 + });
138 } 147 }
139 } 148 }
140 }; 149 };
@@ -201,4 +210,21 @@ export default { @@ -201,4 +210,21 @@ export default {
201 .login-code-img { 210 .login-code-img {
202 height: 38px; 211 height: 38px;
203 } 212 }
  213 +.oauth-login {
  214 + display: flex;
  215 + cursor:pointer;
  216 +}
  217 +.oauth-login-item {
  218 + display: flex;
  219 + align-items: center;
  220 + margin-right: 10px;
  221 +}
  222 +.oauth-login-item img {
  223 + height: 25px;
  224 + width: 25px;
  225 +}
  226 +.oauth-login-item span:hover {
  227 + text-decoration: underline red;
  228 + color: red;
  229 +}
204 </style> 230 </style>
yudao-admin-ui/src/views/socialLogin.vue 0 → 100644
  1 +<template>
  2 + <div class="login">
  3 + <el-form ref="loginForm" :model="loginForm" :rules="loginRules" class="login-form">
  4 + <h3 class="title">绑定账号</h3>
  5 + <el-form-item prop="username">
  6 + <el-input v-model="loginForm.username" type="text" auto-complete="off" placeholder="账号">
  7 + <svg-icon slot="prefix" icon-class="user" class="el-input__icon input-icon" />
  8 + </el-input>
  9 + </el-form-item>
  10 + <el-form-item prop="password">
  11 + <el-input v-model="loginForm.password" type="password" auto-complete="off" placeholder="密码" @keyup.enter.native="handleLogin">
  12 + <svg-icon slot="prefix" icon-class="password" class="el-input__icon input-icon" />
  13 + </el-input>
  14 + </el-form-item>
  15 + <el-form-item style="width:100%;">
  16 + <el-button :loading="loading" size="medium" type="primary" style="width:100%;" @click.native.prevent="handleLogin">
  17 + <span v-if="!loading">提 交</span>
  18 + <span v-else>提 交 中...</span>
  19 + </el-button>
  20 + </el-form-item>
  21 +
  22 + </el-form>
  23 + <!-- 底部 -->
  24 + <div class="el-login-footer">
  25 + <span>Copyright © 2020-2021 iocoder.cn All Rights Reserved.</span>
  26 + </div>
  27 + </div>
  28 +</template>
  29 +
  30 +<script>
  31 +import { socialLogin } from "@/api/login";
  32 +import Cookies from "js-cookie";
  33 +import { encrypt, decrypt } from '@/utils/jsencrypt'
  34 +
  35 +export default {
  36 + name: "ThirdLogin",
  37 + data() {
  38 + return {
  39 + loginForm: {
  40 + username: "admin",
  41 + password: "admin123",
  42 + rememberMe: false, // TODO 芋艿:后面看情况,去掉这块
  43 + },
  44 + loginRules: {
  45 + username: [
  46 + { required: true, trigger: "blur", message: "用户名不能为空" }
  47 + ],
  48 + password: [
  49 + { required: true, trigger: "blur", message: "密码不能为空" }
  50 + ],
  51 + },
  52 + loading: false,
  53 + redirect: undefined,
  54 + // 社交登录相关
  55 + type: undefined,
  56 + code: undefined,
  57 + state: undefined,
  58 + };
  59 + },
  60 + // watch: {
  61 + // $route: {
  62 + // handler: function(route) {
  63 + // this.redirect = route.query && route.query.redirect;
  64 + // },
  65 + // immediate: true
  66 + // }
  67 + // },
  68 + created() {
  69 + this.getCookie();
  70 + // 重定向地址
  71 + this.redirect = this.$route.query.redirect;
  72 + // 社交登录相关
  73 + this.type = this.$route.query.type;
  74 + this.code = this.$route.query.code;
  75 + this.state = this.$route.query.state;
  76 + this.$store.dispatch("SocialLogin", {
  77 + code: this.code,
  78 + state: this.state,
  79 + type: this.type
  80 + }).then(() => {
  81 + this.$router.push({ path: this.redirect || "/" }).catch(()=>{});
  82 + }).catch(() => {
  83 + this.loading = false;
  84 + });
  85 + },
  86 + methods: {
  87 + getCookie() {
  88 + const username = Cookies.get("username");
  89 + const password = Cookies.get("password");
  90 + const rememberMe = Cookies.get('rememberMe')
  91 + this.loginForm = {
  92 + username: username === undefined ? this.loginForm.username : username,
  93 + password: password === undefined ? this.loginForm.password : decrypt(password),
  94 + rememberMe: rememberMe === undefined ? false : Boolean(rememberMe)
  95 + };
  96 + },
  97 + handleLogin() {
  98 + this.$refs.loginForm.validate(valid => {
  99 + if (valid) {
  100 + this.loading = true;
  101 + if (this.loginForm.rememberMe) {
  102 + Cookies.set("username", this.loginForm.username, { expires: 30 });
  103 + Cookies.set("password", encrypt(this.loginForm.password), { expires: 30 });
  104 + } else {
  105 + Cookies.remove("username");
  106 + Cookies.remove("password");
  107 + }
  108 + this.$store.dispatch("SocialLogin2", {
  109 + code: this.code,
  110 + state: this.state,
  111 + type: this.type,
  112 + username: this.loginForm.username,
  113 + password: this.loginForm.password
  114 + }).then(() => {
  115 + this.$router.push({ path: this.redirect || "/" }).catch(()=>{});
  116 + }).catch(() => {
  117 + this.loading = false;
  118 + });
  119 + }
  120 + });
  121 + }
  122 + }
  123 +};
  124 +</script>
  125 +
  126 +<style rel="stylesheet/scss" lang="scss">
  127 +.login {
  128 + display: flex;
  129 + justify-content: center;
  130 + align-items: center;
  131 + height: 100%;
  132 + background-image: url("http://static.yudao.iocoder.cn/login-background.jpg");
  133 + background-size: cover;
  134 +}
  135 +.title {
  136 + margin: 0px auto 30px auto;
  137 + text-align: center;
  138 + color: #707070;
  139 +}
  140 +
  141 +.login-form {
  142 + border-radius: 6px;
  143 + background: #ffffff;
  144 + width: 400px;
  145 + padding: 25px 25px 5px 25px;
  146 + .el-input {
  147 + height: 38px;
  148 + input {
  149 + height: 38px;
  150 + }
  151 + }
  152 + .input-icon {
  153 + height: 39px;
  154 + width: 14px;
  155 + margin-left: 2px;
  156 + }
  157 +}
  158 +.login-tip {
  159 + font-size: 13px;
  160 + text-align: center;
  161 + color: #bfbfbf;
  162 +}
  163 +.login-code {
  164 + width: 33%;
  165 + height: 38px;
  166 + float: right;
  167 + img {
  168 + cursor: pointer;
  169 + vertical-align: middle;
  170 + }
  171 +}
  172 +.el-login-footer {
  173 + height: 40px;
  174 + line-height: 40px;
  175 + position: fixed;
  176 + bottom: 0;
  177 + width: 100%;
  178 + text-align: center;
  179 + color: #fff;
  180 + font-family: Arial;
  181 + font-size: 12px;
  182 + letter-spacing: 1px;
  183 +}
  184 +.login-code-img {
  185 + height: 38px;
  186 +}
  187 +</style>
yudao-admin-ui/src/views/system/loginlog/index.vue
@@ -37,7 +37,7 @@ @@ -37,7 +37,7 @@
37 <el-table-column label="访问编号" align="center" prop="id" /> 37 <el-table-column label="访问编号" align="center" prop="id" />
38 <el-table-column label="日志类型" align="center" prop="logType"> 38 <el-table-column label="日志类型" align="center" prop="logType">
39 <template slot-scope="scope"> 39 <template slot-scope="scope">
40 - <span>{{ scope.row.logType === 100 ? '登录' : '退出' }}</span> 40 + <span>{{ getDictDataLabel(DICT_TYPE.SYS_LOGIN_TYPE, scope.row.logType) }}</span>
41 </template> 41 </template>
42 </el-table-column> 42 </el-table-column>
43 <el-table-column label="用户名称" align="center" prop="username" /> 43 <el-table-column label="用户名称" align="center" prop="username" />
@@ -132,7 +132,7 @@ export default { @@ -132,7 +132,7 @@ export default {
132 }).then(function() { 132 }).then(function() {
133 return exportLoginLog(queryParams); 133 return exportLoginLog(queryParams);
134 }).then(response => { 134 }).then(response => {
135 - this.downloadExcel(response, '登陆日志.xls'); 135 + this.downloadExcel(response, '登录日志.xls');
136 }) 136 })
137 } 137 }
138 } 138 }
yudao-admin-ui/src/views/system/session/index.vue
@@ -2,22 +2,10 @@ @@ -2,22 +2,10 @@
2 <div class="app-container"> 2 <div class="app-container">
3 <el-form :model="queryParams" ref="queryForm" :inline="true" label-width="68px"> 3 <el-form :model="queryParams" ref="queryForm" :inline="true" label-width="68px">
4 <el-form-item label="登录地址" prop="userIp"> 4 <el-form-item label="登录地址" prop="userIp">
5 - <el-input  
6 - v-model="queryParams.userIp"  
7 - placeholder="请输入登录地址"  
8 - clearable  
9 - size="small"  
10 - @keyup.enter.native="handleQuery"  
11 - /> 5 + <el-input v-model="queryParams.userIp" placeholder="请输入登录地址" clearable size="small" @keyup.enter.native="handleQuery"/>
12 </el-form-item> 6 </el-form-item>
13 <el-form-item label="用户名称" prop="username"> 7 <el-form-item label="用户名称" prop="username">
14 - <el-input  
15 - v-model="queryParams.username"  
16 - placeholder="请输入用户名称"  
17 - clearable  
18 - size="small"  
19 - @keyup.enter.native="handleQuery"  
20 - /> 8 + <el-input v-model="queryParams.username" placeholder="请输入用户名称" clearable size="small" @keyup.enter.native="handleQuery"/>
21 </el-form-item> 9 </el-form-item>
22 <el-form-item> 10 <el-form-item>
23 <el-button type="cyan" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button> 11 <el-button type="cyan" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
@@ -25,15 +13,11 @@ @@ -25,15 +13,11 @@
25 </el-form-item> 13 </el-form-item>
26 14
27 </el-form> 15 </el-form>
28 - <el-table  
29 - v-loading="loading"  
30 - :data="list"  
31 - style="width: 100%;"  
32 - > 16 + <el-table v-loading="loading" :data="list" style="width: 100%;">
33 <el-table-column label="会话编号" align="center" prop="id" width="300" /> 17 <el-table-column label="会话编号" align="center" prop="id" width="300" />
34 <el-table-column label="登录名称" align="center" prop="username" width="100" /> 18 <el-table-column label="登录名称" align="center" prop="username" width="100" />
35 <el-table-column label="部门名称" align="center" prop="deptName" width="100" /> 19 <el-table-column label="部门名称" align="center" prop="deptName" width="100" />
36 - <el-table-column label="登陆地址" align="center" prop="userIp" width="100" /> 20 + <el-table-column label="登录地址" align="center" prop="userIp" width="100" />
37 <el-table-column label="userAgent" align="center" prop="userAgent" :show-overflow-tooltip="true" /> 21 <el-table-column label="userAgent" align="center" prop="userAgent" :show-overflow-tooltip="true" />
38 <el-table-column label="登录时间" align="center" prop="createTime" width="180"> 22 <el-table-column label="登录时间" align="center" prop="createTime" width="180">
39 <template slot-scope="scope"> 23 <template slot-scope="scope">
@@ -42,13 +26,8 @@ @@ -42,13 +26,8 @@
42 </el-table-column> 26 </el-table-column>
43 <el-table-column label="操作" align="center" class-name="small-padding fixed-width"> 27 <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
44 <template slot-scope="scope"> 28 <template slot-scope="scope">
45 - <el-button  
46 - size="mini"  
47 - type="text"  
48 - icon="el-icon-delete"  
49 - @click="handleForceLogout(scope.row)"  
50 - v-hasPermi="['system:user-session:delete']"  
51 - >强退</el-button> 29 + <el-button size="mini" type="text" icon="el-icon-delete" @click="handleForceLogout(scope.row)"
  30 + v-hasPermi="['system:user-session:delete']">强退</el-button>
52 </template> 31 </template>
53 </el-table-column> 32 </el-table-column>
54 </el-table> 33 </el-table>
yudao-admin-ui/src/views/system/user/profile/index.vue
@@ -33,7 +33,7 @@ @@ -33,7 +33,7 @@
33 </li> 33 </li>
34 <li class="list-group-item"> 34 <li class="list-group-item">
35 <svg-icon icon-class="peoples" />所属角色 35 <svg-icon icon-class="peoples" />所属角色
36 - <div class="pull-right">{{ user.roles.map(post => post.name).join(',') }}</div> 36 + <div class="pull-right" v-if="user.roles">{{ user.roles.map(role => role.name).join(',') }}</div>
37 </li> 37 </li>
38 <li class="list-group-item"> 38 <li class="list-group-item">
39 <svg-icon icon-class="date" />创建日期 39 <svg-icon icon-class="date" />创建日期
@@ -55,6 +55,9 @@ @@ -55,6 +55,9 @@
55 <el-tab-pane label="修改密码" name="resetPwd"> 55 <el-tab-pane label="修改密码" name="resetPwd">
56 <resetPwd :user="user" /> 56 <resetPwd :user="user" />
57 </el-tab-pane> 57 </el-tab-pane>
  58 + <el-tab-pane label="社交信息" name="userSocial">
  59 + <userSocial :user="user" :getUser="getUser" :setActiveTab="setActiveTab" />
  60 + </el-tab-pane>
58 </el-tabs> 61 </el-tabs>
59 </el-card> 62 </el-card>
60 </el-col> 63 </el-col>
@@ -66,11 +69,12 @@ @@ -66,11 +69,12 @@
66 import userAvatar from "./userAvatar"; 69 import userAvatar from "./userAvatar";
67 import userInfo from "./userInfo"; 70 import userInfo from "./userInfo";
68 import resetPwd from "./resetPwd"; 71 import resetPwd from "./resetPwd";
  72 +import userSocial from "./userSocial";
69 import { getUserProfile } from "@/api/system/user"; 73 import { getUserProfile } from "@/api/system/user";
70 74
71 export default { 75 export default {
72 name: "Profile", 76 name: "Profile",
73 - components: { userAvatar, userInfo, resetPwd }, 77 + components: { userAvatar, userInfo, resetPwd, userSocial },
74 data() { 78 data() {
75 return { 79 return {
76 user: {}, 80 user: {},
@@ -87,6 +91,9 @@ export default { @@ -87,6 +91,9 @@ export default {
87 getUserProfile().then(response => { 91 getUserProfile().then(response => {
88 this.user = response.data; 92 this.user = response.data;
89 }); 93 });
  94 + },
  95 + setActiveTab(activeTab) {
  96 + this.activeTab = activeTab
90 } 97 }
91 } 98 }
92 }; 99 };
yudao-admin-ui/src/views/system/user/profile/userAvatar.vue
@@ -123,11 +123,11 @@ export default { @@ -123,11 +123,11 @@ export default {
123 uploadImg() { 123 uploadImg() {
124 this.$refs.cropper.getCropBlob(data => { 124 this.$refs.cropper.getCropBlob(data => {
125 let formData = new FormData(); 125 let formData = new FormData();
126 - formData.append("avatarfile", data);  
127 - uploadAvatar(formData).then(response => { 126 + formData.append("avatarFile", data);
  127 + uploadAvatar(formData).then(resp => {
128 this.open = false; 128 this.open = false;
129 - this.options.img = process.env.VUE_APP_BASE_API + response.imgUrl;  
130 - store.commit('SET_AVATAR', this.options.img); 129 + // this.options.img = process.env.VUE_APP_BASE_API + response.imgUrl;
  130 + store.commit('SET_AVATAR', resp.data);
131 this.msgSuccess("修改成功"); 131 this.msgSuccess("修改成功");
132 this.visible = false; 132 this.visible = false;
133 }); 133 });
@@ -164,4 +164,4 @@ export default { @@ -164,4 +164,4 @@ export default {
164 line-height: 110px; 164 line-height: 110px;
165 border-radius: 50%; 165 border-radius: 50%;
166 } 166 }
167 -</style>  
168 \ No newline at end of file 167 \ No newline at end of file
  168 +</style>
yudao-admin-ui/src/views/system/user/profile/userSocial.vue 0 → 100644
  1 +<template>
  2 + <el-table :data="socialUsers" :show-header="false">
  3 + <el-table-column label="社交平台" align="left" width="120">
  4 + <template slot-scope="scope">
  5 + <img style="height:20px;vertical-align: middle;" :src="scope.row.img" /> {{ scope.row.title }}
  6 + </template>
  7 + </el-table-column>
  8 + <el-table-column label="操作" align="left" >
  9 + <template slot-scope="scope">
  10 + <div v-if="scope.row.unionId">
  11 + 已绑定
  12 + <el-button size="large" type="text" @click="unbind(scope.row)">(解绑)</el-button>
  13 + </div>
  14 + <div v-else>
  15 + 未绑定
  16 + <el-button size="large" type="text" @click="bind(scope.row)">(绑定)</el-button>
  17 + </div>
  18 + </template>
  19 + </el-table-column>
  20 + </el-table>
  21 +</template>
  22 +
  23 +<script>
  24 +
  25 +import {SysUserSocialTypeEnum} from "@/utils/constants";
  26 +import {socialAuthRedirect, socialBind, socialUnbind} from "@/api/login";
  27 +
  28 +export default {
  29 + props: {
  30 + user: {
  31 + type: Object
  32 + },
  33 + getUser: { // 刷新用户
  34 + type: Function
  35 + },
  36 + setActiveTab: { // 设置激活的
  37 + type: Function
  38 + }
  39 + },
  40 + data() {
  41 + return {
  42 + };
  43 + },
  44 + computed: {
  45 + socialUsers (){
  46 + const socialUsers = [];
  47 + for (const i in SysUserSocialTypeEnum) {
  48 + const socialUser = {...SysUserSocialTypeEnum[i]};
  49 + socialUsers.push(socialUser);
  50 + if (this.user.socialUsers) {
  51 + for (const j in this.user.socialUsers) {
  52 + if (socialUser.type === this.user.socialUsers[j].type) {
  53 + socialUser.unionId = this.user.socialUsers[j].unionId;
  54 + break;
  55 + }
  56 + }
  57 + }
  58 + }
  59 + return socialUsers;
  60 + }
  61 + },
  62 + created() {
  63 + // 社交绑定
  64 + const type = this.$route.query.type;
  65 + const code = this.$route.query.code;
  66 + const state = this.$route.query.state;
  67 + if (!code) {
  68 + return;
  69 + }
  70 + socialBind(type, code, state).then(resp => {
  71 + this.msgSuccess("绑定成功");
  72 + this.$router.replace('/user/profile');
  73 + // 调用父组件, 刷新
  74 + this.getUser();
  75 + this.setActiveTab('userSocial');
  76 + });
  77 + },
  78 + methods: {
  79 + bind(socialUser) {
  80 + // 计算 redirectUri
  81 + const redirectUri = location.origin + '/user/profile?type=' + socialUser.type;
  82 + // 进行跳转
  83 + socialAuthRedirect(socialUser.type, encodeURIComponent(redirectUri)).then((res) => {
  84 + // console.log(res.url);
  85 + window.location.href = res.data;
  86 + });
  87 + },
  88 + unbind(socialUser) {
  89 + socialUnbind(socialUser.type, socialUser.unionId).then(resp => {
  90 + this.msgSuccess("解绑成功");
  91 + socialUser.unionId = undefined;
  92 + });
  93 + },
  94 + close() {
  95 + this.$store.dispatch("tagsView/delView", this.$route);
  96 + this.$router.push({ path: "/index" });
  97 + }
  98 + }
  99 +};
  100 +</script>
yudao-dependencies/pom.xml
@@ -41,7 +41,7 @@ @@ -41,7 +41,7 @@
41 <podam.version>7.2.6.RELEASE</podam.version> 41 <podam.version>7.2.6.RELEASE</podam.version>
42 <jedis-mock.version>0.1.16</jedis-mock.version> 42 <jedis-mock.version>0.1.16</jedis-mock.version>
43 <!-- 工具类相关 --> 43 <!-- 工具类相关 -->
44 - <lombok.version>1.18.12</lombok.version> 44 + <lombok.version>1.18.20</lombok.version>
45 <mapstruct.version>1.4.1.Final</mapstruct.version> 45 <mapstruct.version>1.4.1.Final</mapstruct.version>
46 <hutool.version>5.6.1</hutool.version> 46 <hutool.version>5.6.1</hutool.version>
47 <easyexcel.verion>2.2.7</easyexcel.verion> 47 <easyexcel.verion>2.2.7</easyexcel.verion>
yudao-framework/yudao-common/src/main/java/cn/iocoder/yudao/framework/common/util/http/HttpUtils.java 0 → 100644
  1 +package cn.iocoder.yudao.framework.common.util.http;
  2 +
  3 +import cn.hutool.core.io.FileUtil;
  4 +import cn.hutool.core.map.TableMap;
  5 +import cn.hutool.core.net.url.UrlBuilder;
  6 +import cn.hutool.core.util.ReferenceUtil;
  7 +import cn.hutool.core.util.ReflectUtil;
  8 +
  9 +import java.nio.charset.Charset;
  10 +
  11 +/**
  12 + * HTTP 工具类
  13 + *
  14 + * @author 芋道源码
  15 + */
  16 +public class HttpUtils {
  17 +
  18 + @SuppressWarnings("unchecked")
  19 + public static String replaceUrlQuery(String url, String key, String value) {
  20 + UrlBuilder builder = UrlBuilder.of(url, Charset.defaultCharset());
  21 + // 先移除
  22 + TableMap<CharSequence, CharSequence> query = (TableMap<CharSequence, CharSequence>)
  23 + ReflectUtil.getFieldValue(builder.getQuery(), "query");
  24 + query.remove(key);
  25 + // 后添加
  26 + builder.addQuery(key, value);
  27 + return builder.build();
  28 + }
  29 +
  30 +}
yudao-framework/yudao-common/src/main/java/cn/iocoder/yudao/framework/common/util/json/JsonUtils.java
@@ -5,6 +5,7 @@ import cn.hutool.core.util.StrUtil; @@ -5,6 +5,7 @@ import cn.hutool.core.util.StrUtil;
5 import com.fasterxml.jackson.core.JsonProcessingException; 5 import com.fasterxml.jackson.core.JsonProcessingException;
6 import com.fasterxml.jackson.core.type.TypeReference; 6 import com.fasterxml.jackson.core.type.TypeReference;
7 import com.fasterxml.jackson.databind.ObjectMapper; 7 import com.fasterxml.jackson.databind.ObjectMapper;
  8 +import com.fasterxml.jackson.databind.SerializationFeature;
8 9
9 import java.io.IOException; 10 import java.io.IOException;
10 import java.util.ArrayList; 11 import java.util.ArrayList;
@@ -19,6 +20,10 @@ public class JsonUtils { @@ -19,6 +20,10 @@ public class JsonUtils {
19 20
20 private static ObjectMapper objectMapper = new ObjectMapper(); 21 private static ObjectMapper objectMapper = new ObjectMapper();
21 22
  23 + static {
  24 + objectMapper.configure(SerializationFeature.FAIL_ON_EMPTY_BEANS, false);
  25 + }
  26 +
22 /** 27 /**
23 * 初始化 objectMapper 属性 28 * 初始化 objectMapper 属性
24 * <p> 29 * <p>
yudao-framework/yudao-common/src/main/java/cn/iocoder/yudao/framework/common/util/validation/ValidationUtils.java 0 → 100644
  1 +package cn.iocoder.yudao.framework.common.util.validation;
  2 +
  3 +import cn.hutool.core.util.StrUtil;
  4 +import org.springframework.util.StringUtils;
  5 +
  6 +import java.util.regex.Pattern;
  7 +
  8 +/**
  9 + * 校验工具类
  10 + *
  11 + * @author 芋道源码
  12 + */
  13 +public class ValidationUtils {
  14 +
  15 + private static Pattern PATTERN_URL = Pattern.compile("^(https?|ftp|file)://[-a-zA-Z0-9+&@#/%?=~_|!:,.;]*[-a-zA-Z0-9+&@#/%=~_|]");
  16 +
  17 + public static boolean isMobile(String mobile) {
  18 + if (StrUtil.length(mobile) != 11) {
  19 + return false;
  20 + }
  21 + // TODO 芋艿,后面完善手机校验
  22 + return true;
  23 + }
  24 +
  25 + public static boolean isURL(String url) {
  26 + return StringUtils.hasText(url)
  27 + && PATTERN_URL.matcher(url).matches();
  28 + }
  29 +
  30 +}
yudao-framework/yudao-common/src/main/java/cn/iocoder/yudao/framework/common/validation/Mobile.java 0 → 100644
  1 +package cn.iocoder.yudao.framework.common.validation;
  2 +
  3 +import javax.validation.Constraint;
  4 +import javax.validation.Payload;
  5 +import java.lang.annotation.*;
  6 +
  7 +@Target({
  8 + ElementType.METHOD,
  9 + ElementType.FIELD,
  10 + ElementType.ANNOTATION_TYPE,
  11 + ElementType.CONSTRUCTOR,
  12 + ElementType.PARAMETER,
  13 + ElementType.TYPE_USE
  14 +})
  15 +@Retention(RetentionPolicy.RUNTIME)
  16 +@Documented
  17 +@Constraint(
  18 + validatedBy = MobileValidator.class
  19 +)
  20 +public @interface Mobile {
  21 +
  22 + String message() default "手机号格式不正确";
  23 +
  24 + Class<?>[] groups() default {};
  25 +
  26 + Class<? extends Payload>[] payload() default {};
  27 +
  28 +}
yudao-framework/yudao-common/src/main/java/cn/iocoder/yudao/framework/common/validation/MobileValidator.java 0 → 100644
  1 +package cn.iocoder.yudao.framework.common.validation;
  2 +
  3 +import cn.hutool.core.util.StrUtil;
  4 +import cn.iocoder.yudao.framework.common.util.validation.ValidationUtils;
  5 +
  6 +import javax.validation.ConstraintValidator;
  7 +import javax.validation.ConstraintValidatorContext;
  8 +
  9 +public class MobileValidator implements ConstraintValidator<Mobile, String> {
  10 +
  11 + @Override
  12 + public void initialize(Mobile annotation) {
  13 + }
  14 +
  15 + @Override
  16 + public boolean isValid(String value, ConstraintValidatorContext context) {
  17 + // 如果手机号为空,默认不校验,即校验通过
  18 + if (StrUtil.isEmpty(value)) {
  19 + return true;
  20 + }
  21 + // 校验手机
  22 + return ValidationUtils.isMobile(value);
  23 + }
  24 +
  25 +}
yudao-framework/yudao-spring-boot-starter-mybatis/src/main/java/cn/iocoder/yudao/framework/mybatis/core/mapper/BaseMapperX.java
@@ -36,4 +36,8 @@ public interface BaseMapperX&lt;T&gt; extends BaseMapper&lt;T&gt; { @@ -36,4 +36,8 @@ public interface BaseMapperX&lt;T&gt; extends BaseMapper&lt;T&gt; {
36 return selectList(new QueryWrapper<>()); 36 return selectList(new QueryWrapper<>());
37 } 37 }
38 38
  39 + default List<T> selectList(String field, Object value) {
  40 + return selectList(new QueryWrapper<T>().eq(field, value));
  41 + }
  42 +
39 } 43 }
yudao-framework/yudao-spring-boot-starter-security/src/main/java/cn/iocoder/yudao/framework/security/config/YudaoSecurityAutoConfiguration.java
1 package cn.iocoder.yudao.framework.security.config; 1 package cn.iocoder.yudao.framework.security.config;
2 2
3 import cn.iocoder.yudao.framework.security.core.aop.PreAuthenticatedAspect; 3 import cn.iocoder.yudao.framework.security.core.aop.PreAuthenticatedAspect;
4 -import cn.iocoder.yudao.framework.security.core.filter.JwtAuthenticationTokenFilter; 4 +import cn.iocoder.yudao.framework.security.core.filter.JWTAuthenticationTokenFilter;
5 import cn.iocoder.yudao.framework.security.core.handler.AccessDeniedHandlerImpl; 5 import cn.iocoder.yudao.framework.security.core.handler.AccessDeniedHandlerImpl;
6 import cn.iocoder.yudao.framework.security.core.handler.AuthenticationEntryPointImpl; 6 import cn.iocoder.yudao.framework.security.core.handler.AuthenticationEntryPointImpl;
7 import cn.iocoder.yudao.framework.security.core.handler.LogoutSuccessHandlerImpl; 7 import cn.iocoder.yudao.framework.security.core.handler.LogoutSuccessHandlerImpl;
@@ -34,7 +34,7 @@ public class YudaoSecurityAutoConfiguration { @@ -34,7 +34,7 @@ public class YudaoSecurityAutoConfiguration {
34 private SecurityProperties securityProperties; 34 private SecurityProperties securityProperties;
35 35
36 /** 36 /**
37 - * 处理用户未登陆拦截的切面的 Bean 37 + * 处理用户未登录拦截的切面的 Bean
38 */ 38 */
39 @Bean 39 @Bean
40 public PreAuthenticatedAspect preAuthenticatedAspect() { 40 public PreAuthenticatedAspect preAuthenticatedAspect() {
@@ -80,9 +80,9 @@ public class YudaoSecurityAutoConfiguration { @@ -80,9 +80,9 @@ public class YudaoSecurityAutoConfiguration {
80 * Token 认证过滤器 Bean 80 * Token 认证过滤器 Bean
81 */ 81 */
82 @Bean 82 @Bean
83 - public JwtAuthenticationTokenFilter authenticationTokenFilter(SecurityAuthFrameworkService securityFrameworkService, 83 + public JWTAuthenticationTokenFilter authenticationTokenFilter(SecurityAuthFrameworkService securityFrameworkService,
84 GlobalExceptionHandler globalExceptionHandler) { 84 GlobalExceptionHandler globalExceptionHandler) {
85 - return new JwtAuthenticationTokenFilter(securityProperties, securityFrameworkService, globalExceptionHandler); 85 + return new JWTAuthenticationTokenFilter(securityProperties, securityFrameworkService, globalExceptionHandler);
86 } 86 }
87 87
88 } 88 }
yudao-framework/yudao-spring-boot-starter-security/src/main/java/cn/iocoder/yudao/framework/security/config/YudaoWebSecurityConfigurerAdapter.java
1 package cn.iocoder.yudao.framework.security.config; 1 package cn.iocoder.yudao.framework.security.config;
2 2
3 -import cn.iocoder.yudao.framework.security.core.filter.JwtAuthenticationTokenFilter;  
4 -import cn.iocoder.yudao.framework.security.core.handler.AccessDeniedHandlerImpl;  
5 -import cn.iocoder.yudao.framework.security.core.handler.AuthenticationEntryPointImpl;  
6 -import cn.iocoder.yudao.framework.security.core.handler.LogoutSuccessHandlerImpl; 3 +import cn.iocoder.yudao.framework.security.core.filter.JWTAuthenticationTokenFilter;
7 import cn.iocoder.yudao.framework.security.core.service.SecurityAuthFrameworkService; 4 import cn.iocoder.yudao.framework.security.core.service.SecurityAuthFrameworkService;
8 import cn.iocoder.yudao.framework.web.config.WebProperties; 5 import cn.iocoder.yudao.framework.web.config.WebProperties;
9 -import cn.iocoder.yudao.framework.web.core.handler.GlobalExceptionHandler;  
10 -import org.springframework.beans.factory.annotation.Value;  
11 import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean; 6 import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
12 -import org.springframework.boot.context.properties.EnableConfigurationProperties;  
13 import org.springframework.context.annotation.Bean; 7 import org.springframework.context.annotation.Bean;
14 import org.springframework.context.annotation.Configuration; 8 import org.springframework.context.annotation.Configuration;
15 import org.springframework.http.HttpMethod; 9 import org.springframework.http.HttpMethod;
@@ -21,8 +15,6 @@ import org.springframework.security.config.annotation.web.builders.HttpSecurity; @@ -21,8 +15,6 @@ import org.springframework.security.config.annotation.web.builders.HttpSecurity;
21 import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter; 15 import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter;
22 import org.springframework.security.config.annotation.web.configurers.ExpressionUrlAuthorizationConfigurer; 16 import org.springframework.security.config.annotation.web.configurers.ExpressionUrlAuthorizationConfigurer;
23 import org.springframework.security.config.http.SessionCreationPolicy; 17 import org.springframework.security.config.http.SessionCreationPolicy;
24 -import org.springframework.security.core.userdetails.UserDetailsService;  
25 -import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;  
26 import org.springframework.security.crypto.password.PasswordEncoder; 18 import org.springframework.security.crypto.password.PasswordEncoder;
27 import org.springframework.security.web.AuthenticationEntryPoint; 19 import org.springframework.security.web.AuthenticationEntryPoint;
28 import org.springframework.security.web.access.AccessDeniedHandler; 20 import org.springframework.security.web.access.AccessDeniedHandler;
@@ -47,7 +39,7 @@ public class YudaoWebSecurityConfigurerAdapter extends WebSecurityConfigurerAdap @@ -47,7 +39,7 @@ public class YudaoWebSecurityConfigurerAdapter extends WebSecurityConfigurerAdap
47 * 自定义用户【认证】逻辑 39 * 自定义用户【认证】逻辑
48 */ 40 */
49 @Resource 41 @Resource
50 - private UserDetailsService userDetailsService; 42 + private SecurityAuthFrameworkService userDetailsService;
51 /** 43 /**
52 * Spring Security 加密器 44 * Spring Security 加密器
53 */ 45 */
@@ -72,7 +64,7 @@ public class YudaoWebSecurityConfigurerAdapter extends WebSecurityConfigurerAdap @@ -72,7 +64,7 @@ public class YudaoWebSecurityConfigurerAdapter extends WebSecurityConfigurerAdap
72 * Token 认证过滤器 Bean 64 * Token 认证过滤器 Bean
73 */ 65 */
74 @Resource 66 @Resource
75 - private JwtAuthenticationTokenFilter authenticationTokenFilter; 67 + private JWTAuthenticationTokenFilter authenticationTokenFilter;
76 /** 68 /**
77 * 自定义的权限映射 Bean 69 * 自定义的权限映射 Bean
78 * 70 *
@@ -135,7 +127,7 @@ public class YudaoWebSecurityConfigurerAdapter extends WebSecurityConfigurerAdap @@ -135,7 +127,7 @@ public class YudaoWebSecurityConfigurerAdapter extends WebSecurityConfigurerAdap
135 127
136 // 设置每个请求的权限 ①:全局共享规则 128 // 设置每个请求的权限 ①:全局共享规则
137 httpSecurity.authorizeRequests() 129 httpSecurity.authorizeRequests()
138 - // 登陆的接口,可匿名访问 130 + // 登录的接口,可匿名访问
139 .antMatchers(api("/login")).anonymous() 131 .antMatchers(api("/login")).anonymous()
140 // 静态资源,可匿名访问 132 // 静态资源,可匿名访问
141 .antMatchers(HttpMethod.GET, "/*.html", "/**/*.html", "/**/*.css", "/**/*.js").permitAll() 133 .antMatchers(HttpMethod.GET, "/*.html", "/**/*.html", "/**/*.css", "/**/*.js").permitAll()
@@ -151,10 +143,15 @@ public class YudaoWebSecurityConfigurerAdapter extends WebSecurityConfigurerAdap @@ -151,10 +143,15 @@ public class YudaoWebSecurityConfigurerAdapter extends WebSecurityConfigurerAdap
151 .antMatchers("/actuator/**").anonymous() 143 .antMatchers("/actuator/**").anonymous()
152 // Druid 监控 TODO 芋艿:等对接了 druid admin 后,在调整下。 144 // Druid 监控 TODO 芋艿:等对接了 druid admin 后,在调整下。
153 .antMatchers("/druid/**").anonymous() 145 .antMatchers("/druid/**").anonymous()
  146 + // oAuth2 auth2/login/gitee
  147 + .antMatchers(api("/auth2/login/**")).anonymous()
  148 + .antMatchers(api("/auth2/authorization/**")).anonymous()
  149 + .antMatchers("/api/callback/**").anonymous()
154 // 设置每个请求的权限 ②:每个项目的自定义规则 150 // 设置每个请求的权限 ②:每个项目的自定义规则
155 .and().authorizeRequests(authorizeRequestsCustomizer) 151 .and().authorizeRequests(authorizeRequestsCustomizer)
156 // 设置每个请求的权限 ③:兜底规则,必须认证 152 // 设置每个请求的权限 ③:兜底规则,必须认证
157 - .authorizeRequests().anyRequest().authenticated(); 153 + .authorizeRequests().anyRequest().authenticated()
  154 + ;
158 // 添加 JWT Filter 155 // 添加 JWT Filter
159 httpSecurity.addFilterBefore(authenticationTokenFilter, UsernamePasswordAuthenticationFilter.class); 156 httpSecurity.addFilterBefore(authenticationTokenFilter, UsernamePasswordAuthenticationFilter.class);
160 } 157 }
yudao-framework/yudao-spring-boot-starter-security/src/main/java/cn/iocoder/yudao/framework/security/core/LoginUser.java
@@ -8,10 +8,11 @@ import org.springframework.security.core.userdetails.UserDetails; @@ -8,10 +8,11 @@ import org.springframework.security.core.userdetails.UserDetails;
8 8
9 import java.util.Collection; 9 import java.util.Collection;
10 import java.util.Date; 10 import java.util.Date;
  11 +import java.util.HashSet;
11 import java.util.Set; 12 import java.util.Set;
12 13
13 /** 14 /**
14 - * 登陆用户信息 15 + * 登录用户信息
15 * 16 *
16 * @author 芋道源码 17 * @author 芋道源码
17 */ 18 */
@@ -69,7 +70,7 @@ public class LoginUser implements UserDetails { @@ -69,7 +70,7 @@ public class LoginUser implements UserDetails {
69 @Override 70 @Override
70 @JsonIgnore// 避免序列化 71 @JsonIgnore// 避免序列化
71 public Collection<? extends GrantedAuthority> getAuthorities() { 72 public Collection<? extends GrantedAuthority> getAuthorities() {
72 - return null; 73 + return new HashSet<>();
73 } 74 }
74 75
75 @Override 76 @Override
yudao-framework/yudao-spring-boot-starter-security/src/main/java/cn/iocoder/yudao/framework/security/core/annotations/PreAuthenticated.java
@@ -3,9 +3,9 @@ package cn.iocoder.yudao.framework.security.core.annotations; @@ -3,9 +3,9 @@ package cn.iocoder.yudao.framework.security.core.annotations;
3 import java.lang.annotation.*; 3 import java.lang.annotation.*;
4 4
5 /** 5 /**
6 - * 声明用户需要登陆 6 + * 声明用户需要登录
7 * 7 *
8 - * 为什么不使用 {@link org.springframework.security.access.prepost.PreAuthorize} 注解,原因是不通过时,抛出的是认证不通过,而不是未登陆 8 + * 为什么不使用 {@link org.springframework.security.access.prepost.PreAuthorize} 注解,原因是不通过时,抛出的是认证不通过,而不是未登录
9 * 9 *
10 * @author 芋道源码 10 * @author 芋道源码
11 */ 11 */
yudao-framework/yudao-spring-boot-starter-security/src/main/java/cn/iocoder/yudao/framework/security/core/filter/JwtAuthenticationTokenFilter.java renamed to yudao-framework/yudao-spring-boot-starter-security/src/main/java/cn/iocoder/yudao/framework/security/core/filter/JWTAuthenticationTokenFilter.java
@@ -23,10 +23,10 @@ import java.io.IOException; @@ -23,10 +23,10 @@ import java.io.IOException;
23 * JWT 过滤器,验证 token 的有效性 23 * JWT 过滤器,验证 token 的有效性
24 * 验证通过后,获得 {@link LoginUser} 信息,并加入到 Spring Security 上下文 24 * 验证通过后,获得 {@link LoginUser} 信息,并加入到 Spring Security 上下文
25 * 25 *
26 - * @author ruoyi 26 + * @author 芋道源码
27 */ 27 */
28 @AllArgsConstructor 28 @AllArgsConstructor
29 -public class JwtAuthenticationTokenFilter extends OncePerRequestFilter { 29 +public class JWTAuthenticationTokenFilter extends OncePerRequestFilter {
30 30
31 private final SecurityProperties securityProperties; 31 private final SecurityProperties securityProperties;
32 32
@@ -63,7 +63,7 @@ public class JwtAuthenticationTokenFilter extends OncePerRequestFilter { @@ -63,7 +63,7 @@ public class JwtAuthenticationTokenFilter extends OncePerRequestFilter {
63 } 63 }
64 64
65 /** 65 /**
66 - * 模拟登陆用户,方便日常开发调试 66 + * 模拟登录用户,方便日常开发调试
67 * 67 *
68 * 注意,在线上环境下,一定要关闭该功能!!! 68 * 注意,在线上环境下,一定要关闭该功能!!!
69 * 69 *
yudao-framework/yudao-spring-boot-starter-security/src/main/java/cn/iocoder/yudao/framework/security/core/handler/AbstractSignUpUrlAuthenticationSuccessHandler.java 0 → 100644
  1 +/*
  2 + * MIT License
  3 + * Copyright (c) 2020-2029 YongWu zheng (dcenter.top and gitee.com/pcore and github.com/ZeroOrInfinity)
  4 + *
  5 + * Permission is hereby granted, free of charge, to any person obtaining a copy
  6 + * of this software and associated documentation files (the "Software"), to deal
  7 + * in the Software without restriction, including without limitation the rights
  8 + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
  9 + * copies of the Software, and to permit persons to whom the Software is
  10 + * furnished to do so, subject to the following conditions:
  11 + *
  12 + * The above copyright notice and this permission notice shall be included in all
  13 + * copies or substantial portions of the Software.
  14 + *
  15 + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
  16 + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
  17 + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
  18 + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
  19 + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
  20 + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
  21 + * SOFTWARE.
  22 + */
  23 +package cn.iocoder.yudao.framework.security.core.handler;
  24 +
  25 +import org.springframework.security.core.Authentication;
  26 +import org.springframework.security.web.authentication.SavedRequestAwareAuthenticationSuccessHandler;
  27 +import org.springframework.security.web.savedrequest.HttpSessionRequestCache;
  28 +import org.springframework.security.web.savedrequest.RequestCache;
  29 +
  30 +import javax.servlet.ServletException;
  31 +import javax.servlet.http.HttpServletRequest;
  32 +import javax.servlet.http.HttpServletResponse;
  33 +import java.io.IOException;
  34 +
  35 +/**
  36 + * @author weir
  37 + */
  38 +public class AbstractSignUpUrlAuthenticationSuccessHandler extends SavedRequestAwareAuthenticationSuccessHandler {
  39 + private RequestCache requestCache = new HttpSessionRequestCache();
  40 +
  41 + @Override
  42 + public void onAuthenticationSuccess(HttpServletRequest request, HttpServletResponse response, Authentication authentication) throws IOException, ServletException {
  43 + if (requestCache.getRequest(request, response) != null) {
  44 + requestCache.getRequest(request, response);
  45 + }
  46 + super.onAuthenticationSuccess(request,response,authentication);
  47 + }
  48 +
  49 + @Override
  50 + public void setRequestCache(RequestCache requestCache) {
  51 + this.requestCache = requestCache;
  52 + }
  53 +}
yudao-framework/yudao-spring-boot-starter-security/src/main/java/cn/iocoder/yudao/framework/security/core/util/SecurityFrameworkUtils.java
@@ -84,7 +84,7 @@ public class SecurityFrameworkUtils { @@ -84,7 +84,7 @@ public class SecurityFrameworkUtils {
84 /** 84 /**
85 * 设置当前用户 85 * 设置当前用户
86 * 86 *
87 - * @param loginUser 登陆用户 87 + * @param loginUser 登录用户
88 * @param request 请求 88 * @param request 请求
89 */ 89 */
90 public static void setLoginUser(LoginUser loginUser, HttpServletRequest request) { 90 public static void setLoginUser(LoginUser loginUser, HttpServletRequest request) {
yudao-framework/yudao-spring-boot-starter-web/src/main/java/cn/iocoder/yudao/framework/web/core/filter/DemoFilter.java
@@ -23,7 +23,7 @@ public class DemoFilter extends OncePerRequestFilter { @@ -23,7 +23,7 @@ public class DemoFilter extends OncePerRequestFilter {
23 protected boolean shouldNotFilter(HttpServletRequest request) { 23 protected boolean shouldNotFilter(HttpServletRequest request) {
24 String method = request.getMethod(); 24 String method = request.getMethod();
25 return !StrUtil.equalsAnyIgnoreCase(method, "POST", "PUT", "DELETE") // 写操作时,不进行过滤率 25 return !StrUtil.equalsAnyIgnoreCase(method, "POST", "PUT", "DELETE") // 写操作时,不进行过滤率
26 - || WebFrameworkUtils.getLoginUserId(request) == null; // 非登陆用户时,不进行过滤 26 + || WebFrameworkUtils.getLoginUserId(request) == null; // 非登录用户时,不进行过滤
27 } 27 }
28 28
29 @Override 29 @Override
yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/infra/service/auth/SysAuthService.java
@@ -5,7 +5,7 @@ import cn.iocoder.yudao.framework.security.core.service.SecurityAuthFrameworkSer @@ -5,7 +5,7 @@ import cn.iocoder.yudao.framework.security.core.service.SecurityAuthFrameworkSer
5 /** 5 /**
6 * 认证 Service 接口 6 * 认证 Service 接口
7 * 7 *
8 - * 提供用户的账号密码登陆、token 的校验等认证相关的功能 8 + * 提供用户的账号密码登录、token 的校验等认证相关的功能
9 * 9 *
10 * @author 芋道源码 10 * @author 芋道源码
11 */ 11 */
yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/member/controller/auth/MbrAuthController.java 0 → 100644
  1 +package cn.iocoder.yudao.userserver.modules.member.controller.auth;
  2 +
  3 +import cn.iocoder.yudao.framework.common.pojo.CommonResult;
  4 +import cn.iocoder.yudao.userserver.modules.member.controller.auth.vo.*;
  5 +import io.swagger.annotations.Api;
  6 +import io.swagger.annotations.ApiImplicitParam;
  7 +import io.swagger.annotations.ApiImplicitParams;
  8 +import io.swagger.annotations.ApiOperation;
  9 +import lombok.extern.slf4j.Slf4j;
  10 +import org.springframework.validation.annotation.Validated;
  11 +import org.springframework.web.bind.annotation.*;
  12 +
  13 +import javax.validation.Valid;
  14 +
  15 +@Api(tags = "认证")
  16 +@RestController
  17 +@RequestMapping("/")
  18 +@Validated
  19 +@Slf4j
  20 +public class MbrAuthController {
  21 +
  22 + @PostMapping("/login")
  23 + @ApiOperation("使用手机 + 密码登录")
  24 + public CommonResult<MbrAuthLoginRespVO> login(@RequestBody @Valid MbrAuthLoginReqVO reqVO) {
  25 +// String token = authService.login(reqVO, getClientIP(), getUserAgent());
  26 +// // 返回结果
  27 +// return success(MbrAuthLoginRespVO.builder().token(token).build());
  28 + return null;
  29 + }
  30 +
  31 + @PostMapping("/sms-login")
  32 + @ApiOperation("使用手机 + 验证码登录")
  33 + public CommonResult<MbrAuthLoginRespVO> smsLogin(@RequestBody @Valid MbrAuthLoginReqVO reqVO) {
  34 + return null;
  35 + }
  36 +
  37 + @PostMapping("/send-sms-code")
  38 + @ApiOperation("发送手机验证码")
  39 + public CommonResult<Boolean> sendSmsCode(@RequestBody @Valid MbrAuthSendSmsReqVO reqVO) {
  40 +// passportManager.sendSmsCode(sendSmsCodeDTO, HttpUtil.getIp(request));
  41 +// // 返回成功
  42 +// return success(true);
  43 + return null;
  44 + }
  45 +
  46 + @PostMapping("/reset-password")
  47 + @ApiOperation(value = "重置密码", notes = "用户忘记密码时使用")
  48 + public CommonResult<Boolean> resetPassword(@RequestBody @Valid MbrAuthResetPasswordReqVO reqVO) {
  49 + return null;
  50 + }
  51 +
  52 + // ========== 社交登录相关 ==========
  53 +
  54 + @GetMapping("/social-auth-redirect")
  55 + @ApiOperation("社交授权的跳转")
  56 + @ApiImplicitParams({
  57 + @ApiImplicitParam(name = "type", value = "社交类型", required = true, dataTypeClass = Integer.class),
  58 + @ApiImplicitParam(name = "redirectUri", value = "回调路径", dataTypeClass = String.class)
  59 + })
  60 + public CommonResult<String> socialAuthRedirect(@RequestParam("type") Integer type,
  61 + @RequestParam("redirectUri") String redirectUri) {
  62 +// return CommonResult.success(socialService.getAuthorizeUrl(type, redirectUri));
  63 + return null;
  64 + }
  65 +
  66 + @PostMapping("/social-login")
  67 + @ApiOperation("社交登录,使用 code 授权码")
  68 + public CommonResult<MbrAuthLoginRespVO> socialLogin(@RequestBody @Valid MbrAuthSocialLoginReqVO reqVO) {
  69 +// String token = authService.socialLogin(reqVO, getClientIP(), getUserAgent());
  70 +// // 返回结果
  71 +// return success(MbrAuthLoginRespVO.builder().token(token).build());
  72 + return null;
  73 + }
  74 +
  75 + @PostMapping("/social-login2")
  76 + @ApiOperation("社交登录,使用 code 授权码 + 账号密码")
  77 + public CommonResult<MbrAuthLoginRespVO> socialLogin2(@RequestBody @Valid MbrAuthSocialLogin2ReqVO reqVO) {
  78 +// String token = authService.socialLogin2(reqVO, getClientIP(), getUserAgent());
  79 +// // 返回结果
  80 +// return success(MbrAuthLoginRespVO.builder().token(token).build());
  81 + return null;
  82 + }
  83 +
  84 + @PostMapping("/social-bind")
  85 + @ApiOperation("社交绑定,使用 code 授权码")
  86 + public CommonResult<Boolean> socialBind(@RequestBody @Valid MbrAuthSocialBindReqVO reqVO) {
  87 +// authService.socialBind(getLoginUserId(), reqVO);
  88 +// return CommonResult.success(true);
  89 + return null;
  90 + }
  91 +
  92 + @DeleteMapping("/social-unbind")
  93 + @ApiOperation("取消社交绑定")
  94 + public CommonResult<Boolean> socialUnbind(@RequestBody MbrAuthSocialUnbindReqVO reqVO) {
  95 +// socialService.unbindSocialUser(getLoginUserId(), reqVO.getType(), reqVO.getUnionId());
  96 +// return CommonResult.success(true);
  97 + return null;
  98 + }
  99 +
  100 +}
yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/member/controller/auth/vo/MbrAuthLoginReqVO.java 0 → 100644
  1 +package cn.iocoder.yudao.userserver.modules.member.controller.auth.vo;
  2 +
  3 +import cn.iocoder.yudao.framework.common.validation.Mobile;
  4 +import io.swagger.annotations.ApiModel;
  5 +import io.swagger.annotations.ApiModelProperty;
  6 +import lombok.AllArgsConstructor;
  7 +import lombok.Builder;
  8 +import lombok.Data;
  9 +import lombok.NoArgsConstructor;
  10 +import org.hibernate.validator.constraints.Length;
  11 +
  12 +import javax.validation.constraints.NotEmpty;
  13 +
  14 +@ApiModel("手机 + 密码登录 Request VO")
  15 +@Data
  16 +@NoArgsConstructor
  17 +@AllArgsConstructor
  18 +@Builder
  19 +public class MbrAuthLoginReqVO {
  20 +
  21 + @ApiModelProperty(value = "手机号", required = true, example = "15601691300")
  22 + @NotEmpty(message = "手机号不能为空")
  23 + @Mobile
  24 + private String mobile;
  25 +
  26 + @ApiModelProperty(value = "密码", required = true, example = "buzhidao")
  27 + @NotEmpty(message = "密码不能为空")
  28 + @Length(min = 4, max = 16, message = "密码长度为 4-16 位")
  29 + private String password;
  30 +
  31 +}
yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/member/controller/auth/vo/MbrAuthLoginRespVO.java 0 → 100644
  1 +package cn.iocoder.yudao.userserver.modules.member.controller.auth.vo;
  2 +
  3 +import io.swagger.annotations.ApiModel;
  4 +import io.swagger.annotations.ApiModelProperty;
  5 +import lombok.AllArgsConstructor;
  6 +import lombok.Builder;
  7 +import lombok.Data;
  8 +import lombok.NoArgsConstructor;
  9 +
  10 +@ApiModel("手机密码登录 Response VO")
  11 +@Data
  12 +@NoArgsConstructor
  13 +@AllArgsConstructor
  14 +@Builder
  15 +public class MbrAuthLoginRespVO {
  16 +
  17 + @ApiModelProperty(value = "token", required = true, example = "yudaoyuanma")
  18 + private String token;
  19 +
  20 +}
yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/member/controller/auth/vo/MbrAuthResetPasswordReqVO.java 0 → 100644
  1 +package cn.iocoder.yudao.userserver.modules.member.controller.auth.vo;
  2 +
  3 +import io.swagger.annotations.ApiModel;
  4 +import io.swagger.annotations.ApiModelProperty;
  5 +import lombok.AllArgsConstructor;
  6 +import lombok.Builder;
  7 +import lombok.Data;
  8 +import lombok.NoArgsConstructor;
  9 +import org.hibernate.validator.constraints.Length;
  10 +
  11 +import javax.validation.constraints.NotEmpty;
  12 +import javax.validation.constraints.Pattern;
  13 +
  14 +@ApiModel("重置密码 Request VO")
  15 +@Data
  16 +@NoArgsConstructor
  17 +@AllArgsConstructor
  18 +@Builder
  19 +public class MbrAuthResetPasswordReqVO {
  20 +
  21 + @ApiModelProperty(value = "新密码", required = true, example = "buzhidao")
  22 + @NotEmpty(message = "新密码不能为空")
  23 + @Length(min = 4, max = 16, message = "密码长度为 4-16 位")
  24 + private String password;
  25 +
  26 + @ApiModelProperty(value = "手机验证码", required = true, example = "1024")
  27 + @NotEmpty(message = "手机验证码不能为空")
  28 + @Length(min = 4, max = 6, message = "手机验证码长度为 4-6 位")
  29 + @Pattern(regexp = "^[0-9]+$", message = "手机验证码必须都是数字")
  30 + private String code;
  31 +
  32 +}
yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/member/controller/auth/vo/MbrAuthSendSmsReqVO.java 0 → 100644
  1 +package cn.iocoder.yudao.userserver.modules.member.controller.auth.vo;
  2 +
  3 +import cn.iocoder.yudao.framework.common.validation.Mobile;
  4 +import io.swagger.annotations.ApiModel;
  5 +import io.swagger.annotations.ApiModelProperty;
  6 +import lombok.Data;
  7 +import lombok.experimental.Accessors;
  8 +
  9 +import javax.validation.constraints.NotNull;
  10 +
  11 +@ApiModel("发送手机验证码 Response VO")
  12 +@Data
  13 +@Accessors(chain = true)
  14 +public class MbrAuthSendSmsReqVO {
  15 +
  16 + @ApiModelProperty(value = "手机号", example = "15601691234")
  17 + @Mobile
  18 + private String mobile;
  19 +
  20 + @ApiModelProperty(value = "发送场景", example = "1", notes = "对应 MbrSmsSceneEnum 枚举")
  21 + @NotNull(message = "发送场景不能为空")
  22 + private Integer scene;
  23 +
  24 +}
0 \ No newline at end of file 25 \ No newline at end of file
yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/member/controller/auth/vo/MbrAuthSmsLoginReqVO.java 0 → 100644
  1 +package cn.iocoder.yudao.userserver.modules.member.controller.auth.vo;
  2 +
  3 +import cn.iocoder.yudao.framework.common.validation.Mobile;
  4 +import io.swagger.annotations.ApiModel;
  5 +import io.swagger.annotations.ApiModelProperty;
  6 +import lombok.AllArgsConstructor;
  7 +import lombok.Builder;
  8 +import lombok.Data;
  9 +import lombok.NoArgsConstructor;
  10 +import org.hibernate.validator.constraints.Length;
  11 +
  12 +import javax.validation.constraints.NotEmpty;
  13 +import javax.validation.constraints.Pattern;
  14 +
  15 +@ApiModel("手机 + 验证码登录 Request VO")
  16 +@Data
  17 +@NoArgsConstructor
  18 +@AllArgsConstructor
  19 +@Builder
  20 +public class MbrAuthSmsLoginReqVO {
  21 +
  22 + @ApiModelProperty(value = "手机号", required = true, example = "15601691300")
  23 + @NotEmpty(message = "手机号不能为空")
  24 + @Mobile
  25 + private String mobile;
  26 +
  27 + @ApiModelProperty(value = "密码", required = true, example = "buzhidao")
  28 + @NotEmpty(message = "密码不能为空")
  29 + @Length(min = 4, max = 16, message = "密码长度为 4-16 位")
  30 + private String password;
  31 +
  32 + @ApiModelProperty(value = "手机验证码", required = true, example = "1024")
  33 + @NotEmpty(message = "手机验证码不能为空")
  34 + @Length(min = 4, max = 6, message = "手机验证码长度为 4-6 位")
  35 + @Pattern(regexp = "^[0-9]+$", message = "手机验证码必须都是数字")
  36 + private String code;
  37 +
  38 +}
yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/member/controller/auth/vo/MbrAuthSocialBindReqVO.java 0 → 100644
  1 +package cn.iocoder.yudao.userserver.modules.member.controller.auth.vo;
  2 +
  3 +import cn.iocoder.yudao.framework.common.validation.InEnum;
  4 +import cn.iocoder.yudao.userserver.modules.member.enums.social.SysSocialTypeEnum;
  5 +import io.swagger.annotations.ApiModel;
  6 +import io.swagger.annotations.ApiModelProperty;
  7 +import lombok.AllArgsConstructor;
  8 +import lombok.Builder;
  9 +import lombok.Data;
  10 +import lombok.NoArgsConstructor;
  11 +
  12 +import javax.validation.constraints.NotEmpty;
  13 +import javax.validation.constraints.NotNull;
  14 +
  15 +@ApiModel("社交绑定 Request VO,使用 code 授权码")
  16 +@Data
  17 +@NoArgsConstructor
  18 +@AllArgsConstructor
  19 +@Builder
  20 +public class MbrAuthSocialBindReqVO {
  21 +
  22 + @ApiModelProperty(value = "社交平台的类型", required = true, example = "10", notes = "参见 SysUserSocialTypeEnum 枚举值")
  23 + @InEnum(SysSocialTypeEnum.class)
  24 + @NotNull(message = "社交平台的类型不能为空")
  25 + private Integer type;
  26 +
  27 + @ApiModelProperty(value = "授权码", required = true, example = "1024")
  28 + @NotEmpty(message = "授权码不能为空")
  29 + private String code;
  30 +
  31 + @ApiModelProperty(value = "state", required = true, example = "9b2ffbc1-7425-4155-9894-9d5c08541d62")
  32 + @NotEmpty(message = "state 不能为空")
  33 + private String state;
  34 +
  35 +}
yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/member/controller/auth/vo/MbrAuthSocialLogin2ReqVO.java 0 → 100644
  1 +package cn.iocoder.yudao.userserver.modules.member.controller.auth.vo;
  2 +
  3 +import cn.iocoder.yudao.framework.common.validation.InEnum;
  4 +import cn.iocoder.yudao.userserver.modules.member.enums.social.SysSocialTypeEnum;
  5 +import io.swagger.annotations.ApiModel;
  6 +import io.swagger.annotations.ApiModelProperty;
  7 +import lombok.AllArgsConstructor;
  8 +import lombok.Builder;
  9 +import lombok.Data;
  10 +import lombok.NoArgsConstructor;
  11 +import org.hibernate.validator.constraints.Length;
  12 +
  13 +import javax.validation.constraints.NotEmpty;
  14 +import javax.validation.constraints.NotNull;
  15 +import javax.validation.constraints.Pattern;
  16 +
  17 +@ApiModel("社交登录 Request VO,使用 code 授权码 + 账号密码")
  18 +@Data
  19 +@NoArgsConstructor
  20 +@AllArgsConstructor
  21 +@Builder
  22 +public class MbrAuthSocialLogin2ReqVO {
  23 +
  24 + @ApiModelProperty(value = "社交平台的类型", required = true, example = "10", notes = "参见 SysUserSocialTypeEnum 枚举值")
  25 + @InEnum(SysSocialTypeEnum.class)
  26 + @NotNull(message = "社交平台的类型不能为空")
  27 + private Integer type;
  28 +
  29 + @ApiModelProperty(value = "授权码", required = true, example = "1024")
  30 + @NotEmpty(message = "授权码不能为空")
  31 + private String code;
  32 +
  33 + @ApiModelProperty(value = "state", required = true, example = "9b2ffbc1-7425-4155-9894-9d5c08541d62")
  34 + @NotEmpty(message = "state 不能为空")
  35 + private String state;
  36 +
  37 + @ApiModelProperty(value = "账号", required = true, example = "yudaoyuanma")
  38 + @NotEmpty(message = "登录账号不能为空")
  39 + @Length(min = 4, max = 16, message = "账号长度为 4-16 位")
  40 + @Pattern(regexp = "^[A-Za-z0-9]+$", message = "账号格式为数字以及字母")
  41 + private String username;
  42 +
  43 + @ApiModelProperty(value = "密码", required = true, example = "buzhidao")
  44 + @NotEmpty(message = "密码不能为空")
  45 + @Length(min = 4, max = 16, message = "密码长度为 4-16 位")
  46 + private String password;
  47 +
  48 +}
yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/member/controller/auth/vo/MbrAuthSocialLoginReqVO.java 0 → 100644
  1 +package cn.iocoder.yudao.userserver.modules.member.controller.auth.vo;
  2 +
  3 +import cn.iocoder.yudao.framework.common.validation.InEnum;
  4 +import cn.iocoder.yudao.userserver.modules.member.enums.social.SysSocialTypeEnum;
  5 +import io.swagger.annotations.ApiModel;
  6 +import io.swagger.annotations.ApiModelProperty;
  7 +import lombok.AllArgsConstructor;
  8 +import lombok.Builder;
  9 +import lombok.Data;
  10 +import lombok.NoArgsConstructor;
  11 +
  12 +import javax.validation.constraints.NotEmpty;
  13 +import javax.validation.constraints.NotNull;
  14 +
  15 +@ApiModel("社交登录 Request VO,使用 code 授权码")
  16 +@Data
  17 +@NoArgsConstructor
  18 +@AllArgsConstructor
  19 +@Builder
  20 +public class MbrAuthSocialLoginReqVO {
  21 +
  22 + @ApiModelProperty(value = "社交平台的类型", required = true, example = "10", notes = "参见 SysUserSocialTypeEnum 枚举值")
  23 + @InEnum(SysSocialTypeEnum.class)
  24 + @NotNull(message = "社交平台的类型不能为空")
  25 + private Integer type;
  26 +
  27 + @ApiModelProperty(value = "授权码", required = true, example = "1024")
  28 + @NotEmpty(message = "授权码不能为空")
  29 + private String code;
  30 +
  31 + @ApiModelProperty(value = "state", required = true, example = "9b2ffbc1-7425-4155-9894-9d5c08541d62")
  32 + @NotEmpty(message = "state 不能为空")
  33 + private String state;
  34 +
  35 +}
yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/member/controller/auth/vo/MbrAuthSocialUnbindReqVO.java 0 → 100644
  1 +package cn.iocoder.yudao.userserver.modules.member.controller.auth.vo;
  2 +
  3 +import cn.iocoder.yudao.framework.common.validation.InEnum;
  4 +import cn.iocoder.yudao.userserver.modules.member.enums.social.SysSocialTypeEnum;
  5 +import io.swagger.annotations.ApiModel;
  6 +import io.swagger.annotations.ApiModelProperty;
  7 +import lombok.AllArgsConstructor;
  8 +import lombok.Builder;
  9 +import lombok.Data;
  10 +import lombok.NoArgsConstructor;
  11 +
  12 +import javax.validation.constraints.NotEmpty;
  13 +import javax.validation.constraints.NotNull;
  14 +
  15 +@ApiModel("取消社交绑定 Request VO,使用 code 授权码")
  16 +@Data
  17 +@NoArgsConstructor
  18 +@AllArgsConstructor
  19 +@Builder
  20 +public class MbrAuthSocialUnbindReqVO {
  21 +
  22 + @ApiModelProperty(value = "社交平台的类型", required = true, example = "10", notes = "参见 SysUserSocialTypeEnum 枚举值")
  23 + @InEnum(SysSocialTypeEnum.class)
  24 + @NotNull(message = "社交平台的类型不能为空")
  25 + private Integer type;
  26 +
  27 + @ApiModelProperty(value = "社交的全局编号", required = true, example = "IPRmJ0wvBptiPIlGEZiPewGwiEiE")
  28 + @NotEmpty(message = "社交的全局编号不能为空")
  29 + private String unionId;
  30 +
  31 +}
yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/member/dal/mysql/sms/MbrSmsCodeDO.java 0 → 100644
  1 +package cn.iocoder.yudao.userserver.modules.member.dal.mysql.sms;
  2 +
  3 +import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
  4 +import com.baomidou.mybatisplus.annotation.TableName;
  5 +import lombok.Data;
  6 +import lombok.EqualsAndHashCode;
  7 +import lombok.experimental.Accessors;
  8 +
  9 +import java.util.Date;
  10 +
  11 +/**
  12 + * 手机验证码 DO
  13 + *
  14 + * idx_mobile 索引:基于 {@link #mobile} 字段
  15 + *
  16 + * @author 芋道源码
  17 + */
  18 +@TableName("mbr_sms_code")
  19 +@Data
  20 +@EqualsAndHashCode(callSuper = true)
  21 +@Accessors(chain = true)
  22 +public class MbrSmsCodeDO extends BaseDO {
  23 +
  24 + /**
  25 + * 编号
  26 + */
  27 + private Integer id;
  28 + /**
  29 + * 手机号
  30 + */
  31 + private String mobile;
  32 + /**
  33 + * 验证码
  34 + */
  35 + private String code;
  36 + /**
  37 + * 发送场景
  38 + *
  39 + * 枚举 {@link MbrSmsCodeDO}
  40 + */
  41 + private Integer scene;
  42 + /**
  43 + * 创建 IP
  44 + */
  45 + private String createIp;
  46 + /**
  47 + * 今日发送的第几条
  48 + */
  49 + private Integer todayIndex;
  50 + /**
  51 + * 是否使用
  52 + */
  53 + private Boolean used;
  54 + /**
  55 + * 使用时间
  56 + */
  57 + private Date usedTime;
  58 + /**
  59 + * 使用 IP
  60 + */
  61 + private String usedIp;
  62 +
  63 +}
yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/member/dal/mysql/user/MbrUserDO.java 0 → 100644
  1 +package cn.iocoder.yudao.userserver.modules.member.dal.mysql.user;
  2 +
  3 +import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
  4 +import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
  5 +import com.baomidou.mybatisplus.annotation.TableId;
  6 +import com.baomidou.mybatisplus.annotation.TableName;
  7 +import lombok.*;
  8 +import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
  9 +
  10 +import java.util.Date;
  11 +
  12 +/**
  13 + * 会员中心的用户 DO
  14 + *
  15 + * uk_mobile 索引:基于 {@link #mobile} 字段
  16 + *
  17 + * @author 芋道源码
  18 + */
  19 +@TableName(value = "mbr_user", autoResultMap = true)
  20 +@Data
  21 +@EqualsAndHashCode(callSuper = true)
  22 +@Builder
  23 +@NoArgsConstructor
  24 +@AllArgsConstructor
  25 +public class MbrUserDO extends BaseDO {
  26 +
  27 + /**
  28 + * 用户ID
  29 + */
  30 + @TableId
  31 + private Long id;
  32 + /**
  33 + * 用户昵称
  34 + */
  35 + private String nickname;
  36 + /**
  37 + * 用户头像
  38 + */
  39 + private String avatar;
  40 + /**
  41 + * 帐号状态
  42 + *
  43 + * 枚举 {@link CommonStatusEnum}
  44 + */
  45 + private Integer status;
  46 +
  47 + /**
  48 + * 手机
  49 + */
  50 + private String mobile;
  51 + /**
  52 + * 加密后的密码
  53 + *
  54 + * 因为目前使用 {@link BCryptPasswordEncoder} 加密器,所以无需自己处理 salt 盐
  55 + */
  56 + private String password;
  57 + /**
  58 + * 注册 IP
  59 + */
  60 + private String registerIp;
  61 + /**
  62 + * 最后登录IP
  63 + */
  64 + private String loginIp;
  65 + /**
  66 + * 最后登录时间
  67 + */
  68 + private Date loginDate;
  69 +
  70 +}
yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/member/enums/sms/MbrSmsSceneEnum.java 0 → 100644
  1 +package cn.iocoder.yudao.userserver.modules.member.enums.sms;
  2 +
  3 +import cn.iocoder.yudao.framework.common.core.IntArrayValuable;
  4 +import lombok.AllArgsConstructor;
  5 +import lombok.Getter;
  6 +
  7 +import java.util.Arrays;
  8 +
  9 +/**
  10 + * 用户短信验证码发送场景的枚举
  11 + *
  12 + * @author 芋道源码
  13 + */
  14 +@Getter
  15 +@AllArgsConstructor
  16 +public enum MbrSmsSceneEnum implements IntArrayValuable {
  17 +
  18 + LOGIN_BY_SMS(1, "手机号登陆"),
  19 + CHANGE_MOBILE_BY_SMS(2, "更换手机号"),
  20 + ;
  21 +
  22 + public static final int[] ARRAYS = Arrays.stream(values()).mapToInt(MbrSmsSceneEnum::getScene).toArray();
  23 +
  24 + private final Integer scene;
  25 + private final String name;
  26 +
  27 + @Override
  28 + public int[] array() {
  29 + return ARRAYS;
  30 + }
  31 +
  32 +}
yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/member/enums/social/SysSocialTypeEnum.java 0 → 100644
  1 +package cn.iocoder.yudao.userserver.modules.member.enums.social;
  2 +
  3 +import cn.hutool.core.collection.ListUtil;
  4 +import cn.hutool.core.util.ArrayUtil;
  5 +import cn.iocoder.yudao.framework.common.core.IntArrayValuable;
  6 +import lombok.AllArgsConstructor;
  7 +import lombok.Getter;
  8 +
  9 +import java.util.Arrays;
  10 +import java.util.List;
  11 +
  12 +/**
  13 + * 社交平台的类型枚举
  14 + *
  15 + * @author 芋道源码
  16 + */
  17 +@Getter
  18 +@AllArgsConstructor
  19 +public enum SysSocialTypeEnum implements IntArrayValuable {
  20 +
  21 + GITEE(10, "GITEE"), // https://gitee.com/api/v5/oauth_doc#/
  22 + DINGTALK(20, "DINGTALK"), // https://developers.dingtalk.com/document/app/obtain-identity-credentials
  23 + WECHAT_ENTERPRISE(30, "WECHAT_ENTERPRISE"), // https://xkcoding.com/2019/08/06/use-justauth-integration-wechat-enterprise.html
  24 + ;
  25 +
  26 + public static final int[] ARRAYS = Arrays.stream(values()).mapToInt(SysSocialTypeEnum::getType).toArray();
  27 +
  28 + public static final List<Integer> WECHAT_ALL = ListUtil.toList(WECHAT_ENTERPRISE.type);
  29 +
  30 + /**
  31 + * 类型
  32 + */
  33 + private final Integer type;
  34 + /**
  35 + * 类型的标识
  36 + */
  37 + private final String source;
  38 +
  39 + @Override
  40 + public int[] array() {
  41 + return ARRAYS;
  42 + }
  43 +
  44 + public static SysSocialTypeEnum valueOfType(Integer type) {
  45 + return ArrayUtil.firstMatch(o -> o.getType().equals(type), values());
  46 + }
  47 +
  48 + public static List<Integer> getRelationTypes(Integer type) {
  49 + if (WECHAT_ALL.contains(type)) {
  50 + return WECHAT_ALL;
  51 + }
  52 + return ListUtil.toList(type);
  53 + }
  54 +
  55 +}
yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/member/package-info.java 0 → 100644
  1 +/**
  2 + * member 包下,我们放会员业务.
  3 + * 例如说:会员中心等等
  4 + *
  5 + * 缩写:mbr
  6 + */
  7 +package cn.iocoder.yudao.userserver.modules.member;
0 \ No newline at end of file 8 \ No newline at end of file
yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/system/dict/SysDictDataService.java renamed to yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/system/service/dict/SysDictDataService.java
1 -package cn.iocoder.yudao.userserver.modules.system.dict; 1 +package cn.iocoder.yudao.userserver.modules.system.service.dict;
2 2
3 import cn.iocoder.yudao.framework.dict.core.service.DictDataFrameworkService; 3 import cn.iocoder.yudao.framework.dict.core.service.DictDataFrameworkService;
4 4
yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/system/dict/impl/SysDictDataServiceImpl.java renamed to yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/system/service/dict/impl/SysDictDataServiceImpl.java
1 -package cn.iocoder.yudao.userserver.modules.system.dict.impl; 1 +package cn.iocoder.yudao.userserver.modules.system.service.dict.impl;
2 2
3 import cn.hutool.core.collection.CollUtil; 3 import cn.hutool.core.collection.CollUtil;
4 import cn.iocoder.yudao.framework.dict.core.dto.DictDataRespDTO; 4 import cn.iocoder.yudao.framework.dict.core.dto.DictDataRespDTO;
@@ -6,7 +6,7 @@ import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; @@ -6,7 +6,7 @@ import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
6 import cn.iocoder.yudao.userserver.modules.system.convert.dict.SysDictDataConvert; 6 import cn.iocoder.yudao.userserver.modules.system.convert.dict.SysDictDataConvert;
7 import cn.iocoder.yudao.userserver.modules.system.dal.dataobject.dict.SysDictDataDO; 7 import cn.iocoder.yudao.userserver.modules.system.dal.dataobject.dict.SysDictDataDO;
8 import cn.iocoder.yudao.userserver.modules.system.dal.mysql.dict.SysDictDataMapper; 8 import cn.iocoder.yudao.userserver.modules.system.dal.mysql.dict.SysDictDataMapper;
9 -import cn.iocoder.yudao.userserver.modules.system.dict.SysDictDataService; 9 +import cn.iocoder.yudao.userserver.modules.system.service.dict.SysDictDataService;
10 import com.google.common.collect.ImmutableTable; 10 import com.google.common.collect.ImmutableTable;
11 import lombok.extern.slf4j.Slf4j; 11 import lombok.extern.slf4j.Slf4j;
12 import org.springframework.scheduling.annotation.Scheduled; 12 import org.springframework.scheduling.annotation.Scheduled;
yudao-user-server/src/main/java/cn/iocoder/yudao/userserver/modules/system/service/package-info.java 0 → 100644
  1 +package cn.iocoder.yudao.userserver.modules.system.service;
0 \ No newline at end of file 2 \ No newline at end of file
yudao-user-server/src/main/resources/application-dev.yaml
@@ -44,13 +44,13 @@ spring: @@ -44,13 +44,13 @@ spring:
44 datasource: 44 datasource:
45 master: 45 master:
46 name: ruoyi-vue-pro 46 name: ruoyi-vue-pro
47 - url: jdbc:mysql://400-infra.server.iocoder.cn:3306/${spring.datasource.dynamic.datasource.master.name}?useSSL=false&useUnicode=true&characterEncoding=UTF-8&serverTimezone=CTT 47 + url: jdbc:mysql://400-infra.server.iocoder.cn:3306/${spring.datasource.dynamic.datasource.master.name}?useSSL=false&allowPublicKeyRetrieval=true&useUnicode=true&characterEncoding=UTF-8&serverTimezone=CTT
48 driver-class-name: com.mysql.jdbc.Driver 48 driver-class-name: com.mysql.jdbc.Driver
49 username: root 49 username: root
50 password: 3WLiVUBEwTbvAfsh 50 password: 3WLiVUBEwTbvAfsh
51 slave: # 模拟从库,可根据自己需要修改 # 模拟从库,可根据自己需要修改 51 slave: # 模拟从库,可根据自己需要修改 # 模拟从库,可根据自己需要修改
52 name: ruoyi-vue-pro 52 name: ruoyi-vue-pro
53 - url: jdbc:mysql://400-infra.server.iocoder.cn:3306/${spring.datasource.dynamic.datasource.slave.name}?useSSL=false&useUnicode=true&characterEncoding=UTF-8&serverTimezone=CTT 53 + url: jdbc:mysql://400-infra.server.iocoder.cn:3306/${spring.datasource.dynamic.datasource.slave.name}?useSSL=false&allowPublicKeyRetrieval=true&useUnicode=true&characterEncoding=UTF-8&serverTimezone=CTT
54 driver-class-name: com.mysql.jdbc.Driver 54 driver-class-name: com.mysql.jdbc.Driver
55 username: root 55 username: root
56 password: 3WLiVUBEwTbvAfsh 56 password: 3WLiVUBEwTbvAfsh
yudao-user-server/src/main/resources/application-local.yaml
@@ -44,13 +44,13 @@ spring: @@ -44,13 +44,13 @@ spring:
44 datasource: 44 datasource:
45 master: 45 master:
46 name: ruoyi-vue-pro 46 name: ruoyi-vue-pro
47 - url: jdbc:mysql://127.0.0.1:3306/${spring.datasource.dynamic.datasource.master.name}?useSSL=false&useUnicode=true&characterEncoding=UTF-8&serverTimezone=CTT 47 + url: jdbc:mysql://127.0.0.1:3306/${spring.datasource.dynamic.datasource.master.name}?useSSL=false&allowPublicKeyRetrieval=true&useUnicode=true&characterEncoding=UTF-8&serverTimezone=CTT
48 driver-class-name: com.mysql.jdbc.Driver 48 driver-class-name: com.mysql.jdbc.Driver
49 username: root 49 username: root
50 password: 123456 50 password: 123456
51 slave: # 模拟从库,可根据自己需要修改 51 slave: # 模拟从库,可根据自己需要修改
52 name: ruoyi-vue-pro 52 name: ruoyi-vue-pro
53 - url: jdbc:mysql://127.0.0.1:3306/${spring.datasource.dynamic.datasource.slave.name}?useSSL=false&useUnicode=true&characterEncoding=UTF-8&serverTimezone=CTT 53 + url: jdbc:mysql://127.0.0.1:3306/${spring.datasource.dynamic.datasource.slave.name}?useSSL=false&allowPublicKeyRetrieval=true&useUnicode=true&characterEncoding=UTF-8&serverTimezone=CTT
54 driver-class-name: com.mysql.jdbc.Driver 54 driver-class-name: com.mysql.jdbc.Driver
55 username: root 55 username: root
56 password: 123456 56 password: 123456