This commit is contained in:
2023-07-21 17:30:56 +08:00
parent aa73abd136
commit 06f447cb98
6 changed files with 209 additions and 59 deletions

View File

@ -1,17 +1,17 @@
/*
Navicat Premium Data Transfer
Source Server : 虚拟机-202-MySQL
Source Server : 虚拟机-203
Source Server Type : MySQL
Source Server Version : 50742
Source Host : 192.168.0.202:3306
Source Host : 192.168.0.203:3306
Source Schema : qiaoba-boot
Target Server Type : MySQL
Target Server Version : 50742
File Encoding : 65001
Date: 13/07/2023 17:28:33
Date: 21/07/2023 17:30:21
*/
SET NAMES utf8mb4;
@ -117,7 +117,14 @@ INSERT INTO `sys_config` VALUES (1661603968779079683, '主框架页-默认皮肤
INSERT INTO `sys_config` VALUES (1668426274817994753, '登陆最大错误次数', 'sys.account.loginErrorMaxCount', '10', 'Y', 'admin', '2023-06-13 09:13:16', 'admin', '2023-06-13 09:35:59', '超过次数, 就会被拉黑', 1);
INSERT INTO `sys_config` VALUES (1668428263694135297, '黑名单过期时间', 'sys.account.blacklistExpireTime', '30', 'Y', 'admin', '2023-06-13 09:21:11', 'admin', '2023-06-13 09:35:29', '拉黑时间, 单位:分钟, 仅支持正整数', 1);
INSERT INTO `sys_config` VALUES (1670692775595900930, '登录日志开关', 'sys.login.loginLogOnOff', 'true', 'Y', 'admin', '2023-06-19 15:19:32', 'admin', '2023-06-19 15:34:42', '登录日志开关', 1);
INSERT INTO `sys_config` VALUES (1670696367736258562, '账号同时在线开关', 'sys.account.allowBothOnline', 'false', 'Y', 'admin', '2023-06-19 15:33:49', 'admin', '2023-07-07 11:26:04', '同时在线开关', 1);
INSERT INTO `sys_config` VALUES (1670696367736258562, '账号同时在线开关', 'sys.account.allowBothOnline', 'true', 'Y', 'admin', '2023-06-19 15:33:49', 'admin', '2023-07-14 13:10:25', '同时在线开关', 1);
INSERT INTO `sys_config` VALUES (1679750979266375680, 'Token有效期', 'sys.token.expireTime', '96', 'Y', 'admin', '2023-05-25 13:22:50', 'admin', '2023-05-25 15:02:42', '单位:小时,仅支持正整数', 1676519873008209922);
INSERT INTO `sys_config` VALUES (1679750979539005440, '账号黑名单开关', 'sys.account.blacklistOnOff', 'true', 'Y', 'admin', '2023-05-25 13:22:31', 'admin', '2023-05-25 13:57:14', 'true开启false关闭', 1676519873008209922);
INSERT INTO `sys_config` VALUES (1679750979807440896, '账号注册开关', 'sys.account.registerUser', 'false', 'Y', 'admin', '2023-05-25 13:21:38', 'admin', '2023-05-25 15:07:00', 'true开启false关闭', 1676519873008209922);
INSERT INTO `sys_config` VALUES (1679750980075876352, '登录验证码开关', 'sys.account.captchaOnOff', 'true', 'Y', 'admin', '2023-05-25 13:23:52', 'admin', '2023-06-05 13:43:00', 'true开启false关闭', 1676519873008209922);
INSERT INTO `sys_config` VALUES (1679750980344311808, '主框架页-侧边栏主题', 'sys.index.sideTheme', 'theme-light', 'Y', 'admin', '2022-08-15 18:01:28', 'admin', '2023-05-25 13:26:27', '深色主题theme-dark浅色主题theme-light', 1676519873008209922);
INSERT INTO `sys_config` VALUES (1679750980612747264, '主框架页-默认皮肤样式名称', 'sys.index.skinName', 'skin-blue', 'Y', 'admin', '2022-08-15 18:01:28', '', NULL, '蓝色 skin-blue、绿色 skin-green、紫色 skin-purple、红色 skin-red、黄色 skin-yellow', 1676519873008209922);
INSERT INTO `sys_config` VALUES (1679750980876988416, '账号允许同时在线', 'sys.account.allowBothOnline', 'true', 'Y', 'admin', '2023-05-28 14:28:05', 'admin', '2023-05-28 15:39:48', 'true允许false禁止', 1676519873008209922);
-- ----------------------------
-- Table structure for sys_dept
@ -244,6 +251,32 @@ INSERT INTO `sys_login_log` VALUES (1679333614585143297, 'f85ca74deb1940a7a31ce5
INSERT INTO `sys_login_log` VALUES (1679379553597304834, '0c073dfc76e649b3bf21e9cbb5a05ead', 'admin', '小王', '127.0.0.1', '0|0|0|内网IP|内网IP', 'Chrome|114.0.0.0', 'Windows 10 or Windows Server 2016', '2023-07-13 14:37:41', '', NULL, '', NULL, NULL, 1);
INSERT INTO `sys_login_log` VALUES (1679412040377622530, '470d9d8e4be84270b132b91b7b4305ef', 'admin', '小王', '127.0.0.1', '0|0|0|内网IP|内网IP', 'Chrome|114.0.0.0', 'Windows 10 or Windows Server 2016', '2023-07-13 16:46:47', '', NULL, '', NULL, NULL, 1);
INSERT INTO `sys_login_log` VALUES (1679421075671814145, 'eae6a3293cd947988ca358f21d098e5e', 'admin', '小王', '127.0.0.1', '0|0|0|内网IP|内网IP', 'Chrome|114.0.0.0', 'Windows 10 or Windows Server 2016', '2023-07-13 17:22:41', '', NULL, '', NULL, NULL, 1);
INSERT INTO `sys_login_log` VALUES (1679656195469090818, 'f2e1b15a86204e1aa10d5ba10039ed32', 'admin', '小王', '127.0.0.1', '0|0|0|内网IP|内网IP', 'Chrome|114.0.0.0', 'Windows 10 or Windows Server 2016', '2023-07-14 08:56:58', '', NULL, '', NULL, NULL, 1);
INSERT INTO `sys_login_log` VALUES (1679656628015079425, '18078be2fdc04bb690b6abee0ea405cf', 'admin', '小王', '127.0.0.1', '0|0|0|内网IP|内网IP', 'Chrome|114.0.0.0', 'Windows 10 or Windows Server 2016', '2023-07-14 08:58:41', '', NULL, '', NULL, NULL, 1);
INSERT INTO `sys_login_log` VALUES (1679670883130101762, 'e1e3d907b8ea476183337851bebd1f18', 'admin', '小王', '192.168.0.201', '0|0|0|内网IP|内网IP', 'Chrome|114.0.0.0', 'Windows 10 or Windows Server 2016', '2023-07-14 09:55:20', '', NULL, '', NULL, NULL, 1);
INSERT INTO `sys_login_log` VALUES (1679676146075652098, 'e1abd8ac13994eb2a44ca5fbafeb0ced', 'admin', '小王', '192.168.0.201', '0|0|0|内网IP|内网IP', 'Chrome|114.0.0.0', 'Windows 10 or Windows Server 2016', '2023-07-14 10:16:15', '', NULL, '', NULL, NULL, 1);
INSERT INTO `sys_login_log` VALUES (1679693868641599489, '1972161e44b74b4890be3c602fe648d2', 'admin', '小王', '192.168.0.201', '0|0|0|内网IP|内网IP', 'Firefox|115.0', 'OSX', '2023-07-14 11:26:40', '', NULL, '', NULL, NULL, 1);
INSERT INTO `sys_login_log` VALUES (1679694382322204673, '941edf9b0f814952a97597a4306a9a84', 'admin', '小王', '192.168.0.200', '0|0|0|内网IP|内网IP', 'Firefox|115.0', 'OSX', '2023-07-14 11:28:43', '', NULL, '', NULL, NULL, 1);
INSERT INTO `sys_login_log` VALUES (1679719920290021377, '6d5add6ccd1f4075bbbf7877376ee3ce', 'admin', '小王', '192.168.0.201', '0|0|0|内网IP|内网IP', 'Chrome|114.0.0.0', 'Windows 10 or Windows Server 2016', '2023-07-14 13:10:11', '', NULL, '', NULL, NULL, 1);
INSERT INTO `sys_login_log` VALUES (1679720655715090433, '0d9352e3f61a4d79ac9975c6df6f4515', 'admin', '小王', '192.168.0.200', '0|0|0|内网IP|内网IP', 'Firefox|115.0', 'OSX', '2023-07-14 13:13:07', '', NULL, '', NULL, NULL, 1);
INSERT INTO `sys_login_log` VALUES (1679720666305708034, '4ad0448c14084a0d8c6f642f6a19aa06', 'admin', '小王', '192.168.0.201', '0|0|0|内网IP|内网IP', 'Chrome|114.0.0.0', 'Windows 10 or Windows Server 2016', '2023-07-14 13:13:09', '', NULL, '', NULL, NULL, 1);
INSERT INTO `sys_login_log` VALUES (1679721894884458497, '6b5b0c44747c407fb724b3006f2915ef', 'admin', '小王', '192.168.0.200', '0|0|0|内网IP|内网IP', 'Firefox|115.0', 'OSX', '2023-07-14 13:18:02', '', NULL, '', NULL, NULL, 1);
INSERT INTO `sys_login_log` VALUES (1679722163361857537, 'e9106c53585d4e02a37fe17588e6a327', 'admin', '小王', '192.168.0.201', '0|0|0|内网IP|内网IP', 'Chrome|114.0.0.0', 'Windows 10 or Windows Server 2016', '2023-07-14 13:19:06', '', NULL, '', NULL, NULL, 1);
INSERT INTO `sys_login_log` VALUES (1679740853948039169, '6c334e26f63e4986b1e83b2a25b6fea4', 'admin', '小王', '192.168.0.201', '0|0|0|内网IP|内网IP', 'Chrome|114.0.0.0', 'Windows 10 or Windows Server 2016', '2023-07-14 14:33:22', '', NULL, '', NULL, NULL, 1);
INSERT INTO `sys_login_log` VALUES (1679750675196112898, 'd30eed5dbb3040f8942c5f9e4b89bb1b', 'admin', '小王', '192.168.0.201', '0|0|0|内网IP|内网IP', 'Chrome|114.0.0.0', 'Windows 10 or Windows Server 2016', '2023-07-14 15:12:24', '', NULL, '', NULL, NULL, 1);
INSERT INTO `sys_login_log` VALUES (1679752315760279553, '36b5c378cbce428db91b4ee74d96b0b9', 'admin', '小王', '192.168.0.201', '0|0|0|内网IP|内网IP', 'Chrome|114.0.0.0', 'Windows 10 or Windows Server 2016', '2023-07-14 15:18:55', '', NULL, '', NULL, NULL, 1);
INSERT INTO `sys_login_log` VALUES (1679753255364067329, '979a83f0270c4aac8eb38a1e9efc9038', 'admin', '小王', '192.168.0.201', '0|0|0|内网IP|内网IP', 'Chrome|114.0.0.0', 'Windows 10 or Windows Server 2016', '2023-07-14 15:22:39', '', NULL, '', NULL, NULL, 1);
INSERT INTO `sys_login_log` VALUES (1679759727032614914, '0a2e39b04fb04c90a87cd1655a0946bf', 'admin', '小王', '192.168.0.201', '0|0|0|内网IP|内网IP', 'Chrome|114.0.0.0', 'Windows 10 or Windows Server 2016', '2023-07-14 15:48:22', '', NULL, '', NULL, NULL, 1);
INSERT INTO `sys_login_log` VALUES (1679773722010488834, '1bbd5c413d6b40b39728541918b5a66e', 'admin', '小王', '127.0.0.1', '0|0|0|内网IP|内网IP', 'Chrome|114.0.0.0', 'Windows 10 or Windows Server 2016', '2023-07-14 16:43:59', '', NULL, '', NULL, NULL, 1);
INSERT INTO `sys_login_log` VALUES (1679773902231343105, '9e94e43b89cd492795a3ff4fc6c23abb', 'admin', '小王', '127.0.0.1', '0|0|0|内网IP|内网IP', 'Chrome|114.0.0.0', 'Windows 10 or Windows Server 2016', '2023-07-14 16:44:42', '', NULL, '', NULL, NULL, 1);
INSERT INTO `sys_login_log` VALUES (1680749885802426370, '4f1f1dee3d644cb38294726d04354f6b', 'admin', '小王', '192.168.0.201', '0|0|0|内网IP|内网IP', 'Chrome|114.0.0.0', 'Windows 10 or Windows Server 2016', '2023-07-17 09:22:54', '', NULL, '', NULL, NULL, 1);
INSERT INTO `sys_login_log` VALUES (1680833016685477889, '24cb0dfb41e644d2b5cc585cd8dc6fec', 'admin', '小王', '192.168.0.201', '0|0|0|内网IP|内网IP', 'Chrome|114.0.0.0', 'Windows 10 or Windows Server 2016', '2023-07-17 14:53:14', '', NULL, '', NULL, NULL, 1);
INSERT INTO `sys_login_log` VALUES (1681110374847967233, '73493266d4dc4e90956be08e72ad5716', 'admin', '小王', '192.168.0.201', '0|0|0|内网IP|内网IP', 'Chrome|114.0.0.0', 'Windows 10 or Windows Server 2016', '2023-07-18 09:15:21', '', NULL, '', NULL, NULL, 1);
INSERT INTO `sys_login_log` VALUES (1681200644721545218, 'ee5e927a416548cd88ab56cb30331c11', 'admin', '小王', '192.168.0.201', '0|0|0|内网IP|内网IP', 'Chrome|114.0.0.0', 'Windows 10 or Windows Server 2016', '2023-07-18 15:14:03', '', NULL, '', NULL, NULL, 1);
INSERT INTO `sys_login_log` VALUES (1681204213604532226, '8babb629384b41d78c0322eaab0761a7', 'admin', '小王', '192.168.0.201', '0|0|0|内网IP|内网IP', 'Chrome|114.0.0.0', 'Windows 10 or Windows Server 2016', '2023-07-18 15:28:14', '', NULL, '', NULL, NULL, 1);
INSERT INTO `sys_login_log` VALUES (1681209086744006657, '5fed47e80eef46c3b0c75e4c55c3baf3', 'admin', '小王', '192.168.0.201', '0|0|0|内网IP|内网IP', 'Chrome|114.0.0.0', 'Windows 10 or Windows Server 2016', '2023-07-18 15:47:36', '', NULL, '', NULL, NULL, 1);
INSERT INTO `sys_login_log` VALUES (1681478378941145089, 'f320cb39f42641c8aea1b6cb2b56d4fb', 'admin', '小王', '192.168.0.201', '0|0|0|内网IP|内网IP', 'Chrome|114.0.0.0', 'Windows 10 or Windows Server 2016', '2023-07-19 09:37:41', '', NULL, '', NULL, NULL, 1);
INSERT INTO `sys_login_log` VALUES (1681497864058540034, '37527272d53f45b7885b4b904603de23', 'admin', '小王', '192.168.0.201', '0|0|0|内网IP|内网IP', 'Chrome|114.0.0.0', 'Windows 10 or Windows Server 2016', '2023-07-19 10:55:06', '', NULL, '', NULL, NULL, 1);
-- ----------------------------
-- Table structure for sys_menu
@ -348,6 +381,53 @@ INSERT INTO `sys_menu` VALUES (1668544169384468481, '租户初始化', 166343193
INSERT INTO `sys_menu` VALUES (1670708064303742978, '登录日志', 2, 2, 'login-log', 'monitor/login_log/index', NULL, '0', '0', 'C', '1', 'monitor:login-log:list', 'logininfor', 'admin', '2023-06-19 16:20:17', 'admin', '2023-07-05 14:47:47', '', 1);
INSERT INTO `sys_menu` VALUES (1670719944372002817, '日志导出', 1670708064303742978, 1, '', NULL, NULL, '0', '0', 'F', '1', 'monitor:login-log:export', '#', 'admin', '2023-06-19 17:07:30', '', NULL, '', 1);
INSERT INTO `sys_menu` VALUES (1670720034851528706, '日志清空', 1670708064303742978, 2, '', NULL, NULL, '0', '0', 'F', '1', 'monitor:login-log:remove', '#', 'admin', '2023-06-19 17:07:51', '', NULL, '', 1);
INSERT INTO `sys_menu` VALUES (1679750983078998016, '系统管理', 0, 1, 'system', NULL, '', '0', '0', 'M', '1', '', 'system', 'admin', '2023-04-23 14:35:29', '', NULL, '系统管理目录', 1676519873008209922);
INSERT INTO `sys_menu` VALUES (1679750983355822080, '用户管理', 1679750983078998016, 1, 'user', 'system/user/index', '', '0', '0', 'C', '1', 'system:user:list', 'user', 'admin', '2023-04-23 14:35:29', '', NULL, '用户管理菜单', 1676519873008209922);
INSERT INTO `sys_menu` VALUES (1679750983636840448, '用户查询', 1679750983355822080, 1, '', '', '', '0', '0', 'F', '1', 'system:user:query', '#', 'admin', '2023-04-23 14:35:29', '', NULL, '', 1676519873008209922);
INSERT INTO `sys_menu` VALUES (1679750983901081600, '用户新增', 1679750983355822080, 2, '', '', '', '0', '0', 'F', '1', 'system:user:add', '#', 'admin', '2023-04-23 14:35:29', '', NULL, '', 1676519873008209922);
INSERT INTO `sys_menu` VALUES (1679750984169517056, '用户修改', 1679750983355822080, 3, '', '', '', '0', '0', 'F', '1', 'system:user:edit', '#', 'admin', '2023-04-23 14:35:29', '', NULL, '', 1676519873008209922);
INSERT INTO `sys_menu` VALUES (1679750984437952512, '用户删除', 1679750983355822080, 4, '', '', '', '0', '0', 'F', '1', 'system:user:remove', '#', 'admin', '2023-04-23 14:35:29', '', NULL, '', 1676519873008209922);
INSERT INTO `sys_menu` VALUES (1679750984710582272, '用户导出', 1679750983355822080, 5, '', '', '', '0', '0', 'F', '1', 'system:user:export', '#', 'admin', '2023-04-23 14:35:29', '', NULL, '', 1676519873008209922);
INSERT INTO `sys_menu` VALUES (1679750984974823424, '用户导入', 1679750983355822080, 6, '', '', '', '0', '0', 'F', '1', 'system:user:import', '#', 'admin', '2023-04-23 14:35:29', '', NULL, '', 1676519873008209922);
INSERT INTO `sys_menu` VALUES (1679750985243258880, '重置密码', 1679750983355822080, 7, '', '', '', '0', '0', 'F', '1', 'system:user:resetPwd', '#', 'admin', '2023-04-23 14:35:29', '', NULL, '', 1676519873008209922);
INSERT INTO `sys_menu` VALUES (1679750985520082944, '角色管理', 1679750983078998016, 2, 'role', 'system/role/index', '', '0', '0', 'C', '1', 'system:role:list', 'peoples', 'admin', '2023-04-23 14:35:29', '', NULL, '角色管理菜单', 1676519873008209922);
INSERT INTO `sys_menu` VALUES (1679750985796907008, '角色查询', 1679750985520082944, 1, '', '', '', '0', '0', 'F', '1', 'system:role:query', '#', 'admin', '2023-04-23 14:35:29', '', NULL, '', 1676519873008209922);
INSERT INTO `sys_menu` VALUES (1679750986065342464, '角色新增', 1679750985520082944, 2, '', '', '', '0', '0', 'F', '1', 'system:role:add', '#', 'admin', '2023-04-23 14:35:29', '', NULL, '', 1676519873008209922);
INSERT INTO `sys_menu` VALUES (1679750986333777920, '角色修改', 1679750985520082944, 3, '', '', '', '0', '0', 'F', '1', 'system:role:edit', '#', 'admin', '2023-04-23 14:35:29', '', NULL, '', 1676519873008209922);
INSERT INTO `sys_menu` VALUES (1679750986598019072, '角色删除', 1679750985520082944, 4, '', '', '', '0', '0', 'F', '1', 'system:role:remove', '#', 'admin', '2023-04-23 14:35:29', '', NULL, '', 1676519873008209922);
INSERT INTO `sys_menu` VALUES (1679750986866454528, '角色导出', 1679750985520082944, 5, '', '', '', '0', '0', 'F', '1', 'system:role:export', '#', 'admin', '2023-04-23 14:35:29', '', NULL, '', 1676519873008209922);
INSERT INTO `sys_menu` VALUES (1679750987143278592, '菜单管理', 1679750983078998016, 3, 'menu', 'system/menu/index', '', '0', '0', 'C', '1', 'system:menu:list', 'tree-table', 'admin', '2023-04-23 14:35:29', '', NULL, '菜单管理菜单', 1676519873008209922);
INSERT INTO `sys_menu` VALUES (1679750987432685568, '菜单查询', 1679750987143278592, 1, '', '', '', '0', '0', 'F', '1', 'system:menu:query', '#', 'admin', '2023-04-23 14:35:29', '', NULL, '', 1676519873008209922);
INSERT INTO `sys_menu` VALUES (1679750987701121024, '菜单新增', 1679750987143278592, 2, '', '', '', '0', '0', 'F', '1', 'system:menu:add', '#', 'admin', '2023-04-23 14:35:29', '', NULL, '', 1676519873008209922);
INSERT INTO `sys_menu` VALUES (1679750987969556480, '菜单修改', 1679750987143278592, 3, '', '', '', '0', '0', 'F', '1', 'system:menu:edit', '#', 'admin', '2023-04-23 14:35:29', '', NULL, '', 1676519873008209922);
INSERT INTO `sys_menu` VALUES (1679750988237991936, '菜单删除', 1679750987143278592, 4, '', '', '', '0', '0', 'F', '1', 'system:menu:remove', '#', 'admin', '2023-04-23 14:35:29', '', NULL, '', 1676519873008209922);
INSERT INTO `sys_menu` VALUES (1679750988514816000, '部门管理', 1679750983078998016, 4, 'dept', 'system/dept/index', '', '0', '0', 'C', '1', 'system:dept:list', 'tree', 'admin', '2023-04-23 14:35:29', '', NULL, '部门管理菜单', 1676519873008209922);
INSERT INTO `sys_menu` VALUES (1679750988812611584, '部门查询', 1679750988514816000, 1, '', '', '', '0', '0', 'F', '1', 'system:dept:query', '#', 'admin', '2023-04-23 14:35:29', '', NULL, '', 1676519873008209922);
INSERT INTO `sys_menu` VALUES (1679750989089435648, '部门新增', 1679750988514816000, 2, '', '', '', '0', '0', 'F', '1', 'system:dept:add', '#', 'admin', '2023-04-23 14:35:29', '', NULL, '', 1676519873008209922);
INSERT INTO `sys_menu` VALUES (1679750989362065408, '部门修改', 1679750988514816000, 3, '', '', '', '0', '0', 'F', '1', 'system:dept:edit', '#', 'admin', '2023-04-23 14:35:29', '', NULL, '', 1676519873008209922);
INSERT INTO `sys_menu` VALUES (1679750989634695168, '部门删除', 1679750988514816000, 4, '', '', '', '0', '0', 'F', '1', 'system:dept:remove', '#', 'admin', '2023-04-23 14:35:29', '', NULL, '', 1676519873008209922);
INSERT INTO `sys_menu` VALUES (1679750989907324928, '岗位管理', 1679750983078998016, 5, 'post', 'system/post/index', '', '0', '0', 'C', '1', 'system:post:list', 'post', 'admin', '2023-04-23 14:35:29', '', NULL, '岗位管理菜单', 1676519873008209922);
INSERT INTO `sys_menu` VALUES (1679750990184148992, '岗位查询', 1679750989907324928, 1, '', '', '', '0', '0', 'F', '1', 'system:post:query', '#', 'admin', '2023-04-23 14:35:29', '', NULL, '', 1676519873008209922);
INSERT INTO `sys_menu` VALUES (1679750990452584448, '岗位新增', 1679750989907324928, 2, '', '', '', '0', '0', 'F', '1', 'system:post:add', '#', 'admin', '2023-04-23 14:35:29', '', NULL, '', 1676519873008209922);
INSERT INTO `sys_menu` VALUES (1679750990721019904, '岗位修改', 1679750989907324928, 3, '', '', '', '0', '0', 'F', '1', 'system:post:edit', '#', 'admin', '2023-04-23 14:35:29', '', NULL, '', 1676519873008209922);
INSERT INTO `sys_menu` VALUES (1679750990989455360, '岗位删除', 1679750989907324928, 4, '', '', '', '0', '0', 'F', '1', 'system:post:remove', '#', 'admin', '2023-04-23 14:35:29', '', NULL, '', 1676519873008209922);
INSERT INTO `sys_menu` VALUES (1679750991257890816, '岗位导出', 1679750989907324928, 5, '', '', '', '0', '0', 'F', '1', 'system:post:export', '#', 'admin', '2023-04-23 14:35:29', '', NULL, '', 1676519873008209922);
INSERT INTO `sys_menu` VALUES (1679750991534714880, '字典管理', 1679750983078998016, 6, 'dict', 'system/dict/index', '', '0', '0', 'C', '1', 'system:dict:list', 'documentation', 'admin', '2022-08-15 18:01:28', 'admin', '2023-05-31 11:15:14', '字典管理菜单', 1676519873008209922);
INSERT INTO `sys_menu` VALUES (1679750991811538944, '字典查询', 1679750991534714880, 1, '#', '', '', '0', '0', 'F', '1', 'system:dict:query', '#', 'admin', '2022-08-15 18:01:28', '', NULL, '', 1676519873008209922);
INSERT INTO `sys_menu` VALUES (1679750992075780096, '字典新增', 1679750991534714880, 2, '#', '', '', '0', '0', 'F', '1', 'system:dict:add', '#', 'admin', '2022-08-15 18:01:28', '', NULL, '', 1676519873008209922);
INSERT INTO `sys_menu` VALUES (1679750992348409856, '字典修改', 1679750991534714880, 3, '#', '', '', '0', '0', 'F', '1', 'system:dict:edit', '#', 'admin', '2022-08-15 18:01:28', '', NULL, '', 1676519873008209922);
INSERT INTO `sys_menu` VALUES (1679750992616845312, '字典删除', 1679750991534714880, 4, '#', '', '', '0', '0', 'F', '1', 'system:dict:remove', '#', 'admin', '2022-08-15 18:01:28', '', NULL, '', 1676519873008209922);
INSERT INTO `sys_menu` VALUES (1679750992885280768, '字典导出', 1679750991534714880, 5, '#', '', '', '0', '0', 'F', '1', 'system:dict:export', '#', 'admin', '2022-08-15 18:01:28', '', NULL, '', 1676519873008209922);
INSERT INTO `sys_menu` VALUES (1679750993162104832, '参数设置', 1679750983078998016, 7, 'config', 'system/config/index', '', '0', '0', 'C', '1', 'system:config:list', 'edit', 'admin', '2022-08-15 18:01:28', 'admin', '2023-05-24 21:13:11', '参数设置菜单', 1676519873008209922);
INSERT INTO `sys_menu` VALUES (1679750993438928896, '参数查询', 1679750993162104832, 1, '#', '', '', '0', '0', 'F', '1', 'system:config:query', '#', 'admin', '2022-08-15 18:01:28', '', NULL, '', 1676519873008209922);
INSERT INTO `sys_menu` VALUES (1679750993711558656, '参数新增', 1679750993162104832, 2, '#', '', '', '0', '0', 'F', '1', 'system:config:add', '#', 'admin', '2022-08-15 18:01:28', '', NULL, '', 1676519873008209922);
INSERT INTO `sys_menu` VALUES (1679750993975799808, '参数修改', 1679750993162104832, 3, '#', '', '', '0', '0', 'F', '1', 'system:config:edit', '#', 'admin', '2022-08-15 18:01:28', '', NULL, '', 1676519873008209922);
INSERT INTO `sys_menu` VALUES (1679750994240040960, '参数删除', 1679750993162104832, 4, '#', '', '', '0', '0', 'F', '1', 'system:config:remove', '#', 'admin', '2022-08-15 18:01:28', '', NULL, '', 1676519873008209922);
INSERT INTO `sys_menu` VALUES (1679750994512670720, '系统监控', 0, 2, 'monitor', NULL, '', '0', '0', 'M', '1', '', 'monitor', 'admin', '2023-05-27 22:25:03', '', NULL, '系统监控目录', 1676519873008209922);
INSERT INTO `sys_menu` VALUES (1679750994785300480, '登录用户', 1679750994512670720, 1, 'online', 'monitor/online/index', '', '0', '0', 'C', '1', 'monitor:online:list', 'online', 'admin', '2023-05-27 22:22:18', 'admin', '2023-05-30 09:49:35', '在线用户菜单', 1676519873008209922);
INSERT INTO `sys_menu` VALUES (1679750995062124544, '在线查询', 1679750994785300480, 1, '#', '', '', '0', '0', 'F', '1', 'monitor:online:query', '#', 'admin', '2023-05-27 22:22:59', '', NULL, '', 1676519873008209922);
INSERT INTO `sys_menu` VALUES (1679750995334754304, '批量强退', 1679750994785300480, 2, '#', '', '', '0', '0', 'F', '1', 'monitor:online:batchLogout', '#', 'admin', '2023-05-27 22:22:59', '', NULL, '', 1676519873008209922);
INSERT INTO `sys_menu` VALUES (1679750995598995456, '单条强退', 1679750994785300480, 3, '#', '', '', '0', '0', 'F', '1', 'monitor:online:forceLogout', '#', 'admin', '2023-05-27 22:22:59', '', NULL, '', 1676519873008209922);
-- ----------------------------
-- Table structure for sys_post
@ -375,6 +455,7 @@ INSERT INTO `sys_post` VALUES (1659440467696431105, 'ceo', '总经理', 1, '1',
INSERT INTO `sys_post` VALUES (1659440519936487426, 'cto', '技术总监', 2, '1', 'admin', '2023-05-19 14:07:06', 'admin', '2023-05-22 14:57:10', NULL, 1);
INSERT INTO `sys_post` VALUES (1659440562026328065, 'hr', '人事', 3, '1', 'admin', '2023-05-19 14:07:16', '', NULL, NULL, 1);
INSERT INTO `sys_post` VALUES (1659440712018833410, 'acct', '会计', 4, '1', 'admin', '2023-05-19 14:07:51', '', NULL, NULL, 1);
INSERT INTO `sys_post` VALUES (1679750981971701760, 'acct', '会计', 4, '1', 'admin', '2023-05-19 14:07:51', '', NULL, NULL, 1676519873008209922);
-- ----------------------------
-- Table structure for sys_role
@ -401,6 +482,8 @@ CREATE TABLE `sys_role` (
-- ----------------------------
INSERT INTO `sys_role` VALUES (1, '超级管理员', 'admin', 1, '1', '1', 'admin', '2023-04-23 14:35:29', 'admin', '2023-07-05 14:48:01', '超级管理员', 1);
INSERT INTO `sys_role` VALUES (1660535591067213826, '测试', 'test', 1, '2', '1', 'admin', '2023-05-22 14:38:31', 'admin', '2023-06-21 15:31:52', NULL, 1);
INSERT INTO `sys_role` VALUES (1679750982248525824, '超级管理员', 'admin', 1, '1', '1', 'admin', '2023-04-23 14:35:29', 'admin', '2023-05-31 11:05:52', '超级管理员', 1676519873008209922);
INSERT INTO `sys_role` VALUES (1679750982512766976, '测试', 'test', 1, '1', '1', 'admin', '2023-05-22 14:38:31', '', NULL, NULL, 1676519873008209922);
-- ----------------------------
-- Table structure for sys_role_dept
@ -549,6 +632,53 @@ INSERT INTO `sys_role_menu` VALUES (1660535591067213826, 1033, 1);
INSERT INTO `sys_role_menu` VALUES (1660535591067213826, 1046, 1);
INSERT INTO `sys_role_menu` VALUES (1660535591067213826, 1047, 1);
INSERT INTO `sys_role_menu` VALUES (1660535591067213826, 1048, 1);
INSERT INTO `sys_role_menu` VALUES (1679750982248525824, 1679750983078998016, 1676519873008209922);
INSERT INTO `sys_role_menu` VALUES (1679750982248525824, 1679750983355822080, 1676519873008209922);
INSERT INTO `sys_role_menu` VALUES (1679750982248525824, 1679750983636840448, 1676519873008209922);
INSERT INTO `sys_role_menu` VALUES (1679750982248525824, 1679750983901081600, 1676519873008209922);
INSERT INTO `sys_role_menu` VALUES (1679750982248525824, 1679750984169517056, 1676519873008209922);
INSERT INTO `sys_role_menu` VALUES (1679750982248525824, 1679750984437952512, 1676519873008209922);
INSERT INTO `sys_role_menu` VALUES (1679750982248525824, 1679750984710582272, 1676519873008209922);
INSERT INTO `sys_role_menu` VALUES (1679750982248525824, 1679750984974823424, 1676519873008209922);
INSERT INTO `sys_role_menu` VALUES (1679750982248525824, 1679750985243258880, 1676519873008209922);
INSERT INTO `sys_role_menu` VALUES (1679750982248525824, 1679750985520082944, 1676519873008209922);
INSERT INTO `sys_role_menu` VALUES (1679750982248525824, 1679750985796907008, 1676519873008209922);
INSERT INTO `sys_role_menu` VALUES (1679750982248525824, 1679750986065342464, 1676519873008209922);
INSERT INTO `sys_role_menu` VALUES (1679750982248525824, 1679750986333777920, 1676519873008209922);
INSERT INTO `sys_role_menu` VALUES (1679750982248525824, 1679750986598019072, 1676519873008209922);
INSERT INTO `sys_role_menu` VALUES (1679750982248525824, 1679750986866454528, 1676519873008209922);
INSERT INTO `sys_role_menu` VALUES (1679750982248525824, 1679750987143278592, 1676519873008209922);
INSERT INTO `sys_role_menu` VALUES (1679750982248525824, 1679750987432685568, 1676519873008209922);
INSERT INTO `sys_role_menu` VALUES (1679750982248525824, 1679750987701121024, 1676519873008209922);
INSERT INTO `sys_role_menu` VALUES (1679750982248525824, 1679750987969556480, 1676519873008209922);
INSERT INTO `sys_role_menu` VALUES (1679750982248525824, 1679750988237991936, 1676519873008209922);
INSERT INTO `sys_role_menu` VALUES (1679750982248525824, 1679750988514816000, 1676519873008209922);
INSERT INTO `sys_role_menu` VALUES (1679750982248525824, 1679750988812611584, 1676519873008209922);
INSERT INTO `sys_role_menu` VALUES (1679750982248525824, 1679750989089435648, 1676519873008209922);
INSERT INTO `sys_role_menu` VALUES (1679750982248525824, 1679750989362065408, 1676519873008209922);
INSERT INTO `sys_role_menu` VALUES (1679750982248525824, 1679750989634695168, 1676519873008209922);
INSERT INTO `sys_role_menu` VALUES (1679750982248525824, 1679750989907324928, 1676519873008209922);
INSERT INTO `sys_role_menu` VALUES (1679750982248525824, 1679750990184148992, 1676519873008209922);
INSERT INTO `sys_role_menu` VALUES (1679750982248525824, 1679750990452584448, 1676519873008209922);
INSERT INTO `sys_role_menu` VALUES (1679750982248525824, 1679750990721019904, 1676519873008209922);
INSERT INTO `sys_role_menu` VALUES (1679750982248525824, 1679750990989455360, 1676519873008209922);
INSERT INTO `sys_role_menu` VALUES (1679750982248525824, 1679750991257890816, 1676519873008209922);
INSERT INTO `sys_role_menu` VALUES (1679750982248525824, 1679750991534714880, 1676519873008209922);
INSERT INTO `sys_role_menu` VALUES (1679750982248525824, 1679750991811538944, 1676519873008209922);
INSERT INTO `sys_role_menu` VALUES (1679750982248525824, 1679750992075780096, 1676519873008209922);
INSERT INTO `sys_role_menu` VALUES (1679750982248525824, 1679750992348409856, 1676519873008209922);
INSERT INTO `sys_role_menu` VALUES (1679750982248525824, 1679750992616845312, 1676519873008209922);
INSERT INTO `sys_role_menu` VALUES (1679750982248525824, 1679750992885280768, 1676519873008209922);
INSERT INTO `sys_role_menu` VALUES (1679750982248525824, 1679750993162104832, 1676519873008209922);
INSERT INTO `sys_role_menu` VALUES (1679750982248525824, 1679750993438928896, 1676519873008209922);
INSERT INTO `sys_role_menu` VALUES (1679750982248525824, 1679750993711558656, 1676519873008209922);
INSERT INTO `sys_role_menu` VALUES (1679750982248525824, 1679750993975799808, 1676519873008209922);
INSERT INTO `sys_role_menu` VALUES (1679750982248525824, 1679750994240040960, 1676519873008209922);
INSERT INTO `sys_role_menu` VALUES (1679750982248525824, 1679750994512670720, 1676519873008209922);
INSERT INTO `sys_role_menu` VALUES (1679750982248525824, 1679750994785300480, 1676519873008209922);
INSERT INTO `sys_role_menu` VALUES (1679750982248525824, 1679750995062124544, 1676519873008209922);
INSERT INTO `sys_role_menu` VALUES (1679750982248525824, 1679750995334754304, 1676519873008209922);
INSERT INTO `sys_role_menu` VALUES (1679750982248525824, 1679750995598995456, 1676519873008209922);
-- ----------------------------
-- Table structure for sys_tenant
@ -556,12 +686,12 @@ INSERT INTO `sys_role_menu` VALUES (1660535591067213826, 1048, 1);
DROP TABLE IF EXISTS `sys_tenant`;
CREATE TABLE `sys_tenant` (
`tenant_id` bigint(20) NOT NULL,
`company_name` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '公司名称',
`company_name` varchar(30) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '公司名称',
`contact_name` varchar(30) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '联系人名称',
`contact_phone` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '联系人电话',
`contact_phone` varchar(11) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '联系人电话',
`address` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '公司地址',
`profile` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '公司简介',
`license_number` varchar(30) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '统一社会信用代码',
`license_number` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '统一社会信用代码',
`domain` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '域名',
`expire_time` datetime NULL DEFAULT NULL COMMENT '过期时间',
`account_count` bigint(20) NULL DEFAULT NULL COMMENT '用户数量',
@ -579,8 +709,8 @@ CREATE TABLE `sys_tenant` (
-- ----------------------------
-- Records of sys_tenant
-- ----------------------------
INSERT INTO `sys_tenant` VALUES (1, '主系统', '111', '111', '11', '11122', '111', NULL, '2099-05-30 23:59:59', 111, '1', '3', '0', 'admin', '2023-05-30 15:18:04', 'admin', '2023-06-13 16:04:04', '111');
INSERT INTO `sys_tenant` VALUES (1676519873008209922, '副系统', '313', '4143', '313', '52353', '313', NULL, '2029-09-01 17:14:19', 121, '1', '3', '1', 'admin', '2023-07-05 17:14:21', 'admin', '2023-07-13 16:46:23', '313');
INSERT INTO `sys_tenant` VALUES (1, '主系统', '111', '111', '11', '11122', '111', NULL, '2099-05-30 23:59:59', 111, '1', '3', '1', 'admin', '2023-05-30 15:18:04', 'admin', '2023-07-14 10:32:58', '111');
INSERT INTO `sys_tenant` VALUES (1680835028420513793, '测试公司', NULL, NULL, NULL, NULL, NULL, NULL, '2025-07-09 00:00:00', 1, '1', '3', '1', 'admin', '2023-07-17 15:01:14', '', NULL, NULL);
-- ----------------------------
-- Table structure for sys_tenant_datasource
@ -611,8 +741,8 @@ CREATE TABLE `sys_tenant_datasource` (
-- ----------------------------
-- Records of sys_tenant_datasource
-- ----------------------------
INSERT INTO `sys_tenant_datasource` VALUES (1679408412346556418, 'MySQL', '192.168.0.202', '3306', 'qiaoba-1676519873008209922', NULL, 'root', 'Root123456789.', 1, 1, 1, '1', '', NULL, '', NULL, NULL, 1676519873008209922);
INSERT INTO `sys_tenant_datasource` VALUES (1679421310812884994, 'MySQL', '192.168.0.203', '3306', 'qiaoba-1676519873008209922', NULL, 'root', 'Root123456789.', 1, 1, 1, '0', '', NULL, '', NULL, NULL, 1676519873008209922);
INSERT INTO `sys_tenant_datasource` VALUES (1679408412346556418, 'MySQL', '192.168.0.202', '3306', 'test', NULL, 'root', 'Root123456789.', 1, 1, 1, '1', '', NULL, '', NULL, NULL, 1680835028420513793);
INSERT INTO `sys_tenant_datasource` VALUES (1679421310812884994, 'MySQL', '192.168.0.203', '3306', 'test', NULL, 'root', 'Root123456789.', 1, 1, 1, '0', '', NULL, '', NULL, NULL, 1680835028420513793);
-- ----------------------------
-- Table structure for sys_use_log
@ -651,6 +781,14 @@ INSERT INTO `sys_use_log` VALUES (1677241463454863362, '新增租户', 1, 'com.q
INSERT INTO `sys_use_log` VALUES (1677241720502845441, '新增租户', 1, 'com.qiaoba.module.tenant.controller.SysTenantController.add()', 'POST', 1, 'admin', '', '/tenant', '192.168.0.201', '0|0|0|内网IP|内网IP', '{\"companyName\":\"121\"}', '', 0, '公司名称已存在', '2023-07-07 17:02:42', 1);
INSERT INTO `sys_use_log` VALUES (1677241736013381633, '新增租户', 1, 'com.qiaoba.module.tenant.controller.SysTenantController.add()', 'POST', 1, 'admin', '', '/tenant', '192.168.0.201', '0|0|0|内网IP|内网IP', '{\"tenantId\":\"1677241735971438594\",\"companyName\":\"1211\",\"status\":\"1\",\"initialized\":\"0\",\"createUser\":\"admin\",\"createTime\":1688720566151}', '{\"msg\":\"操作成功\",\"code\":200}', 1, '', '2023-07-07 17:02:46', 1);
INSERT INTO `sys_use_log` VALUES (1678206751222652930, '修改租户', 2, 'com.qiaoba.module.tenant.controller.SysTenantController.edit()', 'PUT', 1, 'admin', '', '/tenant', '192.168.0.201', '0|0|0|内网IP|内网IP', '{\"tenantId\":\"1676519873008209922\",\"companyName\":\"121\",\"contactName\":\"313\",\"contactPhone\":\"4143\",\"address\":\"313\",\"profile\":\"52353\",\"licenseNumber\":\"313\",\"remark\":\"313\",\"expireTime\":1689066859000,\"accountCount\":121,\"status\":\"1\",\"mode\":\"3\",\"initialized\":\"1\",\"createUser\":\"admin\",\"createTime\":1688548461000,\"updateUser\":\"admin\",\"updateTime\":1688950643673}', '{\"msg\":\"操作成功\",\"code\":200}', 1, '', '2023-07-10 08:57:24', 1);
INSERT INTO `sys_use_log` VALUES (1679664362236207105, '新增租户', 1, 'com.qiaoba.module.tenant.controller.SysTenantController.add()', 'POST', 1, 'admin', '', '/tenant', '127.0.0.1', '0|0|0|内网IP|内网IP', '{\"tenantId\":\"1679664361950994434\",\"companyName\":\"安徽桔子科技有限责任公司\",\"contactName\":\"张三丰\",\"contactPhone\":\"13856788888\",\"address\":\"安徽省合肥市高新区\",\"profile\":\"很ok就行了\",\"licenseNumber\":\"duaihdibuyasdona\",\"expireTime\":10797552000000,\"accountCount\":10000,\"status\":\"1\",\"initialized\":\"0\",\"createUser\":\"admin\",\"createTime\":1689298165186}', '{\"msg\":\"操作成功\",\"code\":200}', 1, '', '2023-07-14 09:29:25', 1);
INSERT INTO `sys_use_log` VALUES (1679674506002124801, '修改租户', 2, 'com.qiaoba.module.tenant.controller.SysTenantController.edit()', 'PUT', 1, 'admin', '', '/tenant', '192.168.0.201', '0|0|0|内网IP|内网IP', '{\"tenantId\":\"1679664361950994434\",\"companyName\":\"安徽桔子科技有限责任公司\",\"contactName\":\"张三丰\",\"contactPhone\":\"13856788888\",\"address\":\"安徽省合肥市高新区\",\"profile\":\"很ok就行了\",\"licenseNumber\":\"duaihdibuyasdona\",\"remark\":\"0\",\"expireTime\":10797552000000,\"accountCount\":10000,\"status\":\"1\",\"mode\":\"3\",\"initialized\":\"1\",\"createUser\":\"admin\",\"createTime\":1689298165000,\"updateUser\":\"admin\",\"updateTime\":1689300583703}', '{\"msg\":\"操作成功\",\"code\":200}', 1, '', '2023-07-14 10:09:44', 1);
INSERT INTO `sys_use_log` VALUES (1679676674029473793, '修改租户', 2, 'com.qiaoba.module.tenant.controller.SysTenantController.edit()', 'PUT', 1, 'admin', '', '/tenant', '192.168.0.201', '0|0|0|内网IP|内网IP', '{\"tenantId\":\"1679664361950994434\",\"companyName\":\"安徽桔子科技有限责任公司\",\"contactName\":\"张三丰\",\"contactPhone\":\"13856788888\",\"address\":\"安徽省合肥市高新区\",\"profile\":\"很ok就行了\",\"licenseNumber\":\"duaihdibuyasdona\",\"remark\":\"0\",\"expireTime\":10797552000000,\"accountCount\":-1,\"status\":\"1\",\"mode\":\"3\",\"initialized\":\"1\",\"createUser\":\"admin\",\"createTime\":1689298165000,\"updateUser\":\"admin\",\"updateTime\":1689301100623}', '{\"msg\":\"操作成功\",\"code\":200}', 1, '', '2023-07-14 10:18:21', 1);
INSERT INTO `sys_use_log` VALUES (1679720621992886273, '修改租户', 2, 'com.qiaoba.module.tenant.controller.SysTenantController.edit()', 'PUT', 1, 'admin', '', '/tenant', '192.168.0.201', '0|0|0|内网IP|内网IP', '{\"tenantId\":\"1676519873008209922\",\"companyName\":\"副系统\",\"contactName\":\"313\",\"contactPhone\":\"4143\",\"address\":\"313\",\"profile\":\"52353\",\"licenseNumber\":\"313\",\"remark\":\"313\",\"expireTime\":809946859000,\"accountCount\":121}', '{\"msg\":\"操作成功\",\"code\":200}', 1, '', '2023-07-14 13:12:59', 1);
INSERT INTO `sys_use_log` VALUES (1679720836980326402, '修改租户', 2, 'com.qiaoba.module.tenant.controller.SysTenantController.edit()', 'PUT', 1, 'admin', '', '/tenant', '192.168.0.201', '0|0|0|内网IP|内网IP', '{\"tenantId\":\"1676519873008209922\",\"companyName\":\"副系统\",\"contactName\":\"313\",\"contactPhone\":\"4143\",\"address\":\"313\",\"profile\":\"52353\",\"licenseNumber\":\"313\",\"remark\":\"313\",\"expireTime\":1721145600000,\"accountCount\":121}', '{\"msg\":\"操作成功\",\"code\":200}', 1, '', '2023-07-14 13:13:50', 1);
INSERT INTO `sys_use_log` VALUES (1679751572907192322, '新增租户', 1, 'com.qiaoba.module.tenant.controller.SysTenantController.add()', 'POST', 1, 'admin', '', '/tenant', '192.168.0.201', '0|0|0|内网IP|内网IP', '{\"companyName\":\"安徽苹果科技\",\"expireTime\":1752768000000,\"accountCount\":88}', '{\"msg\":\"操作成功\",\"code\":200}', 1, '', '2023-07-14 15:15:58', 1);
INSERT INTO `sys_use_log` VALUES (1679758026795991042, '新增租户', 1, 'com.qiaoba.module.tenant.controller.SysTenantController.add()', 'POST', 1, 'admin', '', '/tenant', '192.168.0.201', '0|0|0|内网IP|内网IP', '{\"companyName\":\"ces\",\"expireTime\":1689320677000,\"accountCount\":1}', '{\"msg\":\"操作成功\",\"code\":200}', 1, '', '2023-07-14 15:41:37', 1);
INSERT INTO `sys_use_log` VALUES (1680835028558925826, '新增租户', 1, 'com.qiaoba.module.tenant.controller.SysTenantController.add()', 'POST', 1, 'admin', '', '/tenant', '192.168.0.201', '0|0|0|内网IP|内网IP', '{\"companyName\":\"测试公司\",\"expireTime\":1751990400000,\"accountCount\":1}', '{\"msg\":\"操作成功\",\"code\":200}', 1, '', '2023-07-17 15:01:14', 1);
-- ----------------------------
-- Table structure for sys_user
@ -681,6 +819,7 @@ CREATE TABLE `sys_user` (
-- ----------------------------
INSERT INTO `sys_user` VALUES (1, 1659443064624918529, 'admin', '小王', '4567@163.com', '18800001124', '1', '/resource/2023/05/19/blob/37f932d6ae4541d7b9688de6ab0b9f50.blob', '$2a$10$otwytPwmUHPy04dCf8S6I.Za7D.xGQ5MJOdEQk8fWTHCWDJCayur.', '1', 'admin', '2023-05-08 15:16:53', 'admin', '2023-05-23 10:11:24', NULL, 1);
INSERT INTO `sys_user` VALUES (1660830718629277697, 1659443256656932865, 'admin1', 'qq', '', '', '0', '', '$2a$10$J4OOu6bmc6rXF1cH8JKxH.nXfeglU1Wq9Y5iL07P2VFlxLMSDCMVq', '1', 'admin', '2023-05-23 10:11:15', 'admin', '2023-06-15 16:06:06', NULL, 1);
INSERT INTO `sys_user` VALUES (1679750982797979648, NULL, 'admin', '超级管理员', '', '', '0', '', '$2a$10$mDfrzPMZuxvKeKmqUPA4hOgNC2Zdgb8vOgVL8hP8IIdT6fAWpe0Bm', '1', '', NULL, '', NULL, NULL, 1676519873008209922);
-- ----------------------------
-- Table structure for sys_user_post
@ -716,5 +855,6 @@ CREATE TABLE `sys_user_role` (
-- ----------------------------
INSERT INTO `sys_user_role` VALUES (1, 1, 1);
INSERT INTO `sys_user_role` VALUES (1660830718629277697, 1660535591067213826, 1);
INSERT INTO `sys_user_role` VALUES (1679750982797979648, 1679750982248525824, 1676519873008209922);
SET FOREIGN_KEY_CHECKS = 1;

View File

@ -23,7 +23,7 @@ spring:
# redis 配置
redis:
# 地址
host: 192.168.0.202
host: 127.0.0.1
# 端口默认为6379
port: 6379
# 数据库索引

View File

@ -26,6 +26,7 @@ import javax.annotation.PreDestroy;
import javax.annotation.Resource;
import java.sql.SQLException;
import java.util.*;
import java.util.stream.Collectors;
/**
* 多数据源配置
@ -107,10 +108,8 @@ public class DynamicDataSourceConfig {
// 其他数据源备用
dataSources.removeAll(delDataSources);
for (DynamicDataSource dynamicDataSource : dataSources) {
dynamicDataSource.setTenantId(TenantConstant.DEFAULT_TENANT_ID);
}
backupDatasourceContext.addBackupMap(TenantConstant.DEFAULT_TENANT_ID, dataSources);
Set<DynamicDataSource> dataSourceSet = dataSources.stream().peek(dataSource -> dataSource.setTenantId(TenantConstant.DEFAULT_TENANT_ID)).collect(Collectors.toSet());
backupDatasourceContext.addBackupMap(TenantConstant.DEFAULT_TENANT_ID, dataSourceSet);
// 刷新数据源
this.dataSource.freshDataSource(PrimaryDatasourceContext.getAll());
}
@ -140,7 +139,7 @@ public class DynamicDataSourceConfig {
}
// 备用数据源
dataSources.removeAll(delDataSources);
backupDatasourceContext.addBackupMap(tenantId, dataSources);
backupDatasourceContext.addBackupMap(tenantId, new HashSet<>(dataSources));
TENANT_IDS.add(tenantId);
}

View File

@ -1,17 +1,17 @@
package com.qiaoba.common.database.context;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.collection.ListUtil;
import com.qiaoba.common.database.entity.DynamicDataSource;
import lombok.extern.slf4j.Slf4j;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
import java.util.List;
import java.util.HashSet;
import java.util.Set;
/**
* 备用(未在使用)数据源
* 备用(未在使用)数据源
*
* @author ailanyin
* @version 1.0
@ -34,8 +34,8 @@ public class BackupDatasourceContext {
* @param tenantId 租户ID
* @return 数据源集合
*/
public List<DynamicDataSource> get(String tenantId) {
return (List<DynamicDataSource>) redisTemplate.opsForValue().get(BACKUP_DATASOURCE_KET + tenantId);
public Set<DynamicDataSource> get(String tenantId) {
return (Set<DynamicDataSource>) redisTemplate.opsForValue().get(BACKUP_DATASOURCE_KET + tenantId);
}
/**
@ -44,7 +44,7 @@ public class BackupDatasourceContext {
* @param tenantId 租户ID
* @param list 数据源集合
*/
private void set(String tenantId, List<DynamicDataSource> list) {
private void set(String tenantId, Set<DynamicDataSource> list) {
if (CollUtil.isNotEmpty(list)) {
redisTemplate.opsForValue().set(BACKUP_DATASOURCE_KET + tenantId, list);
}
@ -53,40 +53,34 @@ public class BackupDatasourceContext {
/**
* 添加租户备用数据源
*
* @param dataSource 数据源
* @param dynamicDataSource 数据源
*/
public void addBackupMap(DynamicDataSource dataSource) {
log.info("添加租户备用数据源, 租户ID:{}, 数据源IP:{}", dataSource.getTenantId(), dataSource.getUrl());
List<DynamicDataSource> dataSourceList = get(dataSource.getTenantId());
if (CollUtil.isEmpty(dataSourceList)) {
set(dataSource.getTenantId(), ListUtil.toList(dataSource));
public void addBackupMap(DynamicDataSource dynamicDataSource) {
log.info("添加租户备用数据源, 租户ID:{}, 数据源IP:{}", dynamicDataSource.getTenantId(), dynamicDataSource.getUrl());
Set<DynamicDataSource> dataSourceSet = get(dynamicDataSource.getTenantId());
if (CollUtil.isEmpty(dataSourceSet)) {
Set<DynamicDataSource> set = new HashSet<>();
set.add(dynamicDataSource);
set(dynamicDataSource.getTenantId(), set);
} else {
for (DynamicDataSource dynamicDataSource : dataSourceList) {
// 删除原来的
if (dataSource.getUrl().equals(dynamicDataSource.getUrl())
&& dataSource.getTenantId().equals(dynamicDataSource.getTenantId())) {
dataSourceList.remove(dataSource);
break;
}
}
dataSourceList.add(dataSource);
set(dataSource.getTenantId(), dataSourceList);
dataSourceSet.add(dynamicDataSource);
set(dynamicDataSource.getTenantId(), dataSourceSet);
}
}
public void deleteBackupMap(DynamicDataSource dynamicDataSource) {
log.info("移除租户备用数据源, 租户ID:{}, 数据源IP:{}", dynamicDataSource.getTenantId(), dynamicDataSource.getUrl());
List<DynamicDataSource> dataSourceList = get(dynamicDataSource.getTenantId());
if (CollUtil.isNotEmpty(dataSourceList)) {
for (DynamicDataSource dataSource : dataSourceList) {
if (dataSource.getUrl().equals(dynamicDataSource.getUrl())
&& dataSource.getTenantId().equals(dynamicDataSource.getTenantId())) {
dataSourceList.remove(dataSource);
break;
}
}
Set<DynamicDataSource> dataSourceSet = get(dynamicDataSource.getTenantId());
if (CollUtil.isNotEmpty(dataSourceSet)) {
dataSourceSet.remove(dynamicDataSource);
}
if (CollUtil.isEmpty(dataSourceSet)) {
// 删除
redisTemplate.delete(BACKUP_DATASOURCE_KET + dynamicDataSource.getTenantId());
} else {
set(dynamicDataSource.getTenantId(), dataSourceSet);
}
set(dynamicDataSource.getTenantId(), dataSourceList);
}
/**
@ -95,7 +89,7 @@ public class BackupDatasourceContext {
* @param tenantId 租户ID
* @param dataSources 数据源集合
*/
public void addBackupMap(String tenantId, List<DynamicDataSource> dataSources) {
public void addBackupMap(String tenantId, Set<DynamicDataSource> dataSources) {
set(tenantId, dataSources);
}
@ -105,16 +99,16 @@ public class BackupDatasourceContext {
* @param dataSource 数据源
*/
public void updateBackupMap(DynamicDataSource dataSource) {
List<DynamicDataSource> dataSourceList = get(dataSource.getTenantId());
if (CollUtil.isNotEmpty(dataSourceList)) {
for (DynamicDataSource dynamicDataSource : dataSourceList) {
Set<DynamicDataSource> dataSourceSet = get(dataSource.getTenantId());
if (CollUtil.isNotEmpty(dataSourceSet)) {
for (DynamicDataSource dynamicDataSource : dataSourceSet) {
if (dataSource.getDatasourceId().equals(dynamicDataSource.getDatasourceId())) {
dataSourceList.remove(dynamicDataSource);
dataSourceSet.remove(dynamicDataSource);
break;
}
}
dataSourceSet.add(dataSource);
set(dataSource.getTenantId(), dataSourceSet);
}
dataSourceList.add(dataSource);
set(dataSource.getTenantId(), dataSourceList);
}
}

View File

@ -1,7 +1,6 @@
package com.qiaoba.common.database.entity;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
@ -16,7 +15,6 @@ import java.util.Objects;
* @since 2023-06-13 20:24:31
*/
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class DynamicDataSource implements Serializable {
@ -78,4 +76,23 @@ public class DynamicDataSource implements Serializable {
*/
private String serverSn;
@Override
public boolean equals(Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
DynamicDataSource that = (DynamicDataSource) o;
return url.equals(that.url) &&
tenantId.equals(that.tenantId);
}
@Override
public int hashCode() {
return Objects.hash(url, tenantId);
}
}

View File

@ -136,7 +136,7 @@ public class OnlineDatasourceMonitor {
*/
private Boolean backToPrimary(String tenantId) {
// 备用数据源
List<DynamicDataSource> dataSources = backupDatasourceContext.get(tenantId);
Set<DynamicDataSource> dataSources = backupDatasourceContext.get(tenantId);
if (CollUtil.isEmpty(dataSources)) {
log.error("租户:[{}]切换备用数据源失败, 原因: 没有备用数据源", tenantId);
return false;