Merge remote-tracking branch 'origin/feature-ui-fix'

# Conflicts:
#	jero-web/src/views/modules/message/SysMessageList.vue
#	jero-web/src/views/modules/message/SysMessageTemplateList.vue
#	jero-web/src/views/system/DepartList.vue
#	jero-web/src/views/system/DepartListSync.vue
#	jero-web/src/views/system/DictList.vue
#	jero-web/src/views/system/QuartzJobList.vue
#	jero-web/src/views/system/SysCategoryList.vue
#	jero-web/src/views/system/SysCheckRuleList.vue
#	jero-web/src/views/system/SysDataSourceList.vue
#	jero-web/src/views/system/SysFillRuleList.vue
#	jero-web/src/views/system/UserList.vue
#	jero-web/src/views/system/modules/PasswordModal.vue
#	jero-web/src/views/system/modules/UserModal.vue
#	jero-web/src/views/system/modules/UserRoleModal.vue
This commit is contained in:
zer0Black
2023-08-14 17:56:46 +08:00
109 changed files with 21011 additions and 862 deletions
+26 -4
View File
@@ -1542,7 +1542,7 @@ INSERT INTO `sys_permission` VALUES ('4356a1a67b564f0988a484f5531fd4d9', '2a470f
INSERT INTO `sys_permission` VALUES ('45c966826eeff4c99b8f8ebfe74511fc', 'd7d6e2e4e2934f2c9385a623fd98c6f3', '部门管理', '/isystem/depart', 'system/DepartList', null, null, '1', 'sys:depart:list', '1', '1.40', '0', null, '1', '0', '0', '0', null, 'admin', '2019-01-29 18:47:40', 'admin', '2019-12-25 09:36:47', '0', '0', '1', '0');
INSERT INTO `sys_permission` VALUES ('4875ebe289344e14844d8e3ea1edd73f', '2a470fc0c3954d9dbb61de6d80846549', '详情页', '/profile', 'layouts/RouteView', null, null, '1', null, null, '21.00', '0', 'profile', '1', '0', '0', '0', null, null, '2018-12-25 20:34:38', 'admin', '2021-03-16 22:23:07', '0', '0', null, '0');
INSERT INTO `sys_permission` VALUES ('4f66409ef3bbd69c1d80469d6e2a885e', '6e73eb3c26099c191bf03852ee1310a1', '账户绑定', '/account/settings/binding', 'account/settings/Binding', null, null, '1', 'BindingSettings', null, null, null, null, '1', '1', null, null, null, null, '2018-12-26 19:01:20', null, null, '0', '0', null, null);
INSERT INTO `sys_permission` VALUES ('53a9230444d33de28aa11cc108fb1dba', '5c8042bd6c601270b2bbd9b20bccc68b', '我的消息', '/isps/userAnnouncement', 'system/UserAnnouncementList', null, null, '1', null, null, '4.00', '0', null, '1', '1', '0', '0', null, 'admin', '2019-04-19 10:16:00', 'admin', '2021-03-16 18:01:26', '0', '0', null, '0');
INSERT INTO `sys_permission` VALUES ('53a9230444d33de28aa11cc108fb1dba', '5c8042bd6c601270b2bbd9b20bccc68b', '我的消息', '/isps/userAnnouncement', 'system/UserAnnouncementList', null, null, '1', 'my:mesg:list', null, '4.00', '0', null, '1', '1', '0', '0', null, 'admin', '2019-04-19 10:16:00', 'admin', '2021-03-16 18:01:26', '0', '0', null, '0');
INSERT INTO `sys_permission` VALUES ('540a2936940846cb98114ffb0d145cb8', '2a470fc0c3954d9dbb61de6d80846549', '列表页', '/list', 'layouts/PageView', null, '/list/query-list', '1', null, null, '24.00', '0', 'table', '1', '0', '0', '0', null, null, '2018-12-25 20:34:38', 'admin', '2021-03-16 22:23:31', '0', '0', null, '0');
INSERT INTO `sys_permission` VALUES ('54dd5457a3190740005c1bfec55b1c34', 'e41b69c57a941a3bbcce45032fe57605', '菜单管理', '/isystem/permission', 'system/PermissionList', null, null, '1', null, null, '7.00', '0', null, '1', '1', '0', '0', null, null, '2018-12-25 20:34:38', 'admin', '2021-03-16 22:32:38', '0', '0', null, '0');
INSERT INTO `sys_permission` VALUES ('58857ff846e61794c69208e9d3a85466', '1371831353354936322', '操作日志', '/isystem/log', 'system/LogList', null, null, '1', null, null, '1.00', '0', '', '1', '1', '0', '0', null, null, '2018-12-26 10:11:18', 'admin', '2021-03-16 22:33:27', '0', '0', null, '0');
@@ -1565,7 +1565,7 @@ INSERT INTO `sys_permission` VALUES ('8b3bff2eee6f1939147f5c68292a1642', '700b7f
INSERT INTO `sys_permission` VALUES ('8d1ebd663688965f1fd86a2f0ead3416', '700b7f95165c46cc7a78bf227aa8fed3', 'Redis监控', '/monitor/redis/info', 'modules/monitor/RedisInfo', null, null, '1', null, null, '1.00', '0', null, '1', '1', null, '0', null, 'admin', '2019-04-02 13:11:33', 'admin', '2019-05-07 15:18:54', '0', '0', null, null);
INSERT INTO `sys_permission` VALUES ('8d4683aacaa997ab86b966b464360338', 'e41b69c57a941a3bbcce45032fe57605', 'Online表单开发', '/online/cgform', 'modules/online/cgform/OnlCgformHeadList', null, null, '1', null, null, '1.00', '0', null, '1', '0', null, '0', null, 'admin', '2019-03-12 15:48:14', 'admin', '2019-06-11 14:19:17', '0', '0', null, null);
INSERT INTO `sys_permission` VALUES ('8fb8172747a78756c11916216b8b8066', '717f6bee46f44a3897eca9abd6e2ec44', '工作台', '/dashboard/workplace', 'dashboard/Workplace', null, null, '1', null, null, '3.00', '0', null, '1', '1', null, '0', null, null, '2018-12-25 20:34:38', 'admin', '2019-04-02 11:45:02', '0', '0', null, null);
INSERT INTO `sys_permission` VALUES ('944abf0a8fc22fe1f1154a389a574154', '5c8042bd6c601270b2bbd9b20bccc68b', '消息管理', '/modules/message/sysMessageList', 'modules/message/SysMessageList', null, null, '1', null, null, '3.00', '0', null, '1', '1', '0', '0', null, 'admin', '2019-04-09 11:27:53', 'admin', '2021-03-16 18:01:20', '0', '0', null, '0');
INSERT INTO `sys_permission` VALUES ('944abf0a8fc22fe1f1154a389a574154', '5c8042bd6c601270b2bbd9b20bccc68b', '消息管理', '/modules/message/sysMessageList', 'modules/message/SysMessageList', null, null, '1', 'message:list', null, '3.00', '0', null, '1', '0', '0', '0', null, 'admin', '2019-04-09 11:27:53', 'admin', '2021-03-16 18:01:20', '0', '0', null, '0');
INSERT INTO `sys_permission` VALUES ('9502685863ab87f0ad1134142788a385', '', '首页', '/dashboard/analysis', 'dashboard/Analysis', null, null, '0', null, null, '0.00', '0', 'home', '1', '1', null, '0', null, null, '2018-12-25 20:34:38', 'admin', '2019-03-29 11:04:13', '0', '0', null, null);
INSERT INTO `sys_permission` VALUES ('97c8629abc7848eccdb6d77c24bb3ebb', '700b7f95165c46cc7a78bf227aa8fed3', '磁盘监控', '/monitor/Disk', 'modules/monitor/DiskMonitoring', null, null, '1', null, null, '6.00', '0', null, '1', '1', null, '0', null, 'admin', '2019-04-25 14:30:06', 'admin', '2019-05-05 14:37:14', '0', '0', null, null);
INSERT INTO `sys_permission` VALUES ('9a90363f216a6a08f32eecb3f0bf12a3', '2a470fc0c3954d9dbb61de6d80846549', 'Jero组件示例', '/demo/SelectDemo', 'demo/SelectDemo', null, null, '1', null, null, '0.00', '0', null, '1', '1', '0', '0', null, 'admin', '2019-03-19 11:19:05', 'admin', '2021-03-16 22:15:28', '0', '0', null, '0');
@@ -1581,7 +1581,7 @@ INSERT INTO `sys_permission` VALUES ('d07a2c87a451434c99ab06296727ec4f', '700b7f
INSERT INTO `sys_permission` VALUES ('d2bbf9ebca5a8fa2e227af97d2da7548', 'c65321e57b7949b7a975313220de0422', '404', '/exception/404', 'exception/404', null, null, '1', null, null, '2.00', null, null, '1', '1', null, null, null, null, '2018-12-25 20:34:38', null, null, '0', '0', null, null);
INSERT INTO `sys_permission` VALUES ('d7d6e2e4e2934f2c9385a623fd98c6f3', '', '系统管理', '/isystem', 'layouts/RouteView', null, null, '0', null, null, '15.00', '0', 'setting', '1', '0', '0', '0', null, null, '2018-12-25 20:34:38', 'admin', '2021-03-16 22:31:34', '0', '0', null, '0');
INSERT INTO `sys_permission` VALUES ('d86f58e7ab516d3bc6bfb1fe10585f97', '717f6bee46f44a3897eca9abd6e2ec44', '个人中心', '/account/center', 'account/center/Index', null, null, '1', null, null, '1.00', null, null, '1', '1', null, null, null, null, '2018-12-25 20:34:38', null, null, '0', '0', null, null);
INSERT INTO `sys_permission` VALUES ('e08cb190ef230d5d4f03824198773950', '5c8042bd6c601270b2bbd9b20bccc68b', '系统通告', '/isystem/annountCement', 'system/SysAnnouncementList', null, null, '1', 'annountCement', null, '1.00', '0', '', '1', '1', '0', '0', null, null, '2019-01-02 17:23:01', 'admin', '2021-03-16 18:00:58', '0', '0', null, '0');
INSERT INTO `sys_permission` VALUES ('e08cb190ef230d5d4f03824198773950', '5c8042bd6c601270b2bbd9b20bccc68b', '系统通告','/isystem/annountCement', 'system/SysAnnouncementList', null, null, '1', 'system:list', null, '1.00', '0', '', '1', '0', '0', '0', null, null, '2019-01-02 17:23:01', 'admin', '2021-03-16 18:00:58', '0', '0', null, '0');
INSERT INTO `sys_permission` VALUES ('e1979bb53e9ea51cecc74d86fd9d2f64', '2a470fc0c3954d9dbb61de6d80846549', 'PDF预览', '/demo/jeroPdfView', 'demo/JeroPdfView', null, null, '1', null, null, '3.40', '0', null, '1', '1', '0', '0', null, 'admin', '2019-04-25 10:39:35', 'admin', '2021-03-16 22:18:26', '0', '0', null, '0');
INSERT INTO `sys_permission` VALUES ('e3c13679c73a4f829bcff2aba8fd68b1', '2a470fc0c3954d9dbb61de6d80846549', '表单页', '/form', 'layouts/PageView', null, null, '1', null, null, '25.00', '0', 'form', '1', '0', '0', '0', null, null, '2018-12-25 20:34:38', 'admin', '2021-03-16 22:23:54', '0', '0', null, '0');
INSERT INTO `sys_permission` VALUES ('e41b69c57a941a3bbcce45032fe57605', '', '开发工具', '/online', 'layouts/RouteView', null, null, '0', null, null, '18.00', '0', 'cloud', '1', '0', '0', '0', null, 'admin', '2019-03-08 10:43:10', 'admin', '2021-03-16 22:31:28', '0', '0', null, '0');
@@ -1592,11 +1592,22 @@ INSERT INTO `sys_permission` VALUES ('ec8d607d0156e198b11853760319c646', '6e73eb
INSERT INTO `sys_permission` VALUES ('f1cb187abf927c88b89470d08615f5ac', 'd7d6e2e4e2934f2c9385a623fd98c6f3', '数据字典', '/isystem/dict', 'system/DictList', null, null, '1', 'sys:dict:list', '1', '5.00', '0', null, '1', '0', '0', '0', null, null, '2018-12-28 13:54:43', 'admin', '2020-02-23 22:45:25', '0', '0', '1', '0');
INSERT INTO `sys_permission` VALUES ('1674617125092679682', 'f1cb187abf927c88b89470d08615f5ac', '数据字典-增删改查', NULL, NULL, NULL, NULL, 2, 'sys:dict:operation', '1', NULL, 0, NULL, 1, 1, 0, 0, NULL, 'admin', '2023-06-30 11:13:30', 'admin', '2023-06-30 11:14:26', 0, 0, '1', 0);
INSERT INTO `sys_permission` VALUES ('f23d9bfff4d9aa6b68569ba2cff38415', '540a2936940846cb98114ffb0d145cb8', '标准列表', '/list/basic-list', 'demo/list/StandardList', null, null, '1', null, null, '6.00', null, null, '1', '1', null, null, null, null, '2018-12-25 20:34:38', null, null, '0', '0', null, null);
INSERT INTO `sys_permission` VALUES ('f780d0d3083d849ccbdb1b1baee4911d', '5c8042bd6c601270b2bbd9b20bccc68b', '模板管理', '/modules/message/sysMessageTemplateList', 'modules/message/SysMessageTemplateList', null, null, '1', null, null, '1.00', '0', null, '1', '1', null, '0', null, 'admin', '2019-04-09 11:50:31', 'admin', '2019-04-12 10:16:34', '0', '0', null, null);
INSERT INTO `sys_permission` VALUES ('f780d0d3083d849ccbdb1b1baee4911d', '5c8042bd6c601270b2bbd9b20bccc68b', '模板管理', '/modules/message/sysMessageTemplateList', 'modules/message/SysMessageTemplateList', null, null, '1', 'message:template:list', null, '1.00', '0', null, '1', '0', null, '0', null, 'admin', '2019-04-09 11:50:31', 'admin', '2019-04-12 10:16:34', '0', '0', null, null);
INSERT INTO `sys_permission` VALUES ('fb367426764077dcf94640c843733985', '2a470fc0c3954d9dbb61de6d80846549', '一对多示例', '/demo/jeroOrderMainList', 'demo/JeroOrderMainList', null, null, '1', null, null, '2.10', '0', null, '1', '1', '0', '0', null, 'admin', '2019-02-15 16:24:11', 'admin', '2021-03-16 22:18:47', '0', '0', null, '0');
INSERT INTO `sys_permission` VALUES ('fedfbf4420536cacc0218557d263dfea', '6e73eb3c26099c191bf03852ee1310a1', '新消息通知', '/account/settings/notification', 'account/settings/Notification', null, null, '1', 'NotificationSettings', null, null, null, '', '1', '1', null, null, null, null, '2018-12-26 19:02:05', null, null, '0', '0', null, null);
INSERT INTO `sys_permission` VALUES ('1404684556047024130', '08e6b9dc3c04489c8e1ff2ce6f105aa4', '在线用户', '/isystem/online', 'system/SysUserOnlineList', null, null, '1', null, null, '5.00', '0', null, '1', '0', '0', '0', null, 'admin', '2019-04-02 11:34:34', 'admin', '2020-09-09 14:48:51', '0', '0', null, '0');
INSERT INTO `sys_permission` VALUES ('1636190218344304641', '540a2936940846cb98114ffb0d145cb8', 'JTable列表', '/list/j-table-list', 'demo/list/JTableList', NULL, NULL, 1, NULL, '1', 1.00, 0, NULL, 1, 1, 0, 0, NULL, 'admin', '2023-03-16 10:18:42', 'admin', '2023-03-16 10:25:49', 0, 0, '1', 0);
INSERT INTO `sys_permission` VALUES ('1686657083884539905', '944abf0a8fc22fe1f1154a389a574154', '消息管理删除', NULL, NULL, NULL, NULL, 2, 'message:del', '1', NULL, 0, NULL, 1, 1, 0, 0, NULL, 'admin', '2023-08-02 16:36:00', 'admin', '2023-08-02 16:39:21', 0, 0, '1', 0);
INSERT INTO `sys_permission` VALUES ('1686659720189153281', 'f780d0d3083d849ccbdb1b1baee4911d', '模板管理导入', NULL, NULL, NULL, NULL, 2, 'message:template:import', '1', NULL, 0, NULL, 1, 1, 0, 0, NULL, 'admin', '2023-08-02 16:46:29', NULL, NULL, 0, 0, '1', 0);
INSERT INTO `sys_permission` VALUES ('1686659469529157634', 'f780d0d3083d849ccbdb1b1baee4911d', '模板管理导出', NULL, NULL, NULL, NULL, 2, 'message:template:export', '1', NULL, 0, NULL, 1, 1, 0, 0, NULL, 'admin', '2023-08-02 16:45:29', NULL, NULL, 0, 0, '1', 0);
INSERT INTO `sys_permission` VALUES ('1686659391968088066', 'f780d0d3083d849ccbdb1b1baee4911d', '模板管理删除', NULL, NULL, NULL, NULL, 2, 'message:template:del', '1', NULL, 0, NULL, 1, 1, 0, 0, NULL, 'admin', '2023-08-02 16:45:10', NULL, NULL, 0, 0, '1', 0);
INSERT INTO `sys_permission` VALUES ('1686659307314450434', 'f780d0d3083d849ccbdb1b1baee4911d', '模板管理发送', NULL, NULL, NULL, NULL, 2, 'message:template:send', '1', NULL, 0, NULL, 1, 1, 0, 0, NULL, 'admin', '2023-08-02 16:44:50', NULL, NULL, 0, 0, '1', 0);
INSERT INTO `sys_permission` VALUES ('1686659223738748930', 'f780d0d3083d849ccbdb1b1baee4911d', '模板管理编辑', NULL, NULL, NULL, NULL, 2, 'message:template:edit', '1', NULL, 0, NULL, 1, 1, 0, 0, NULL, 'admin', '2023-08-02 16:44:30', NULL, NULL, 0, 0, '1', 0);
INSERT INTO `sys_permission` VALUES ('1686658970264375298', 'f780d0d3083d849ccbdb1b1baee4911d', '模板管理新增', NULL, NULL, NULL, NULL, 2, 'message:template:add', '1', NULL, 0, NULL, 1, 1, 0, 0, NULL, 'admin', '2023-08-02 16:43:30', NULL, NULL, 0, 0, '1', 0);
INSERT INTO `sys_permission` VALUES ('1686660980820774914', 'e08cb190ef230d5d4f03824198773950', '系统通告发布', NULL, NULL, NULL, NULL, 2, 'annount:cement:send', '1', NULL, 0, NULL, 1, 1, 0, 0, NULL, 'admin', '2023-08-02 16:51:29', NULL, NULL, 0, 0, '1', 0);
INSERT INTO `sys_permission` VALUES ('1686660931642560514', 'e08cb190ef230d5d4f03824198773950', '系统通告删除', NULL, NULL, NULL, NULL, 2, 'annount:cement:del', '1', NULL, 0, NULL, 1, 1, 0, 0, NULL, 'admin', '2023-08-02 16:51:17', NULL, NULL, 0, 0, '1', 0);
INSERT INTO `sys_permission` VALUES ('1686660848121384962', 'e08cb190ef230d5d4f03824198773950', '系统通告编辑', NULL, NULL, NULL, NULL, 2, 'annount:cement:edit', '1', NULL, 0, NULL, 1, 1, 0, 0, NULL, 'admin', '2023-08-02 16:50:57', NULL, NULL, 0, 0, '1', 0);
INSERT INTO `sys_permission` VALUES ('1686660721424044033', 'e08cb190ef230d5d4f03824198773950', '系统通告添加', NULL, NULL, NULL, NULL, 2, 'annount:cement:add', '1', NULL, 0, NULL, 1, 1, 0, 0, NULL, 'admin', '2023-08-02 16:50:27', NULL, NULL, 0, 0, '1', 0);
-- ----------------------------
-- Table structure for sys_permission_data_rule
@@ -1813,6 +1824,17 @@ INSERT INTO `sys_role_permission` VALUES ('fced905c7598973b970d42d833f73474', 'f
INSERT INTO `sys_role_permission` VALUES ('fd97963dc5f144d3aecfc7045a883427', 'f6817f48af4fb3af11b9e8bf182f618b', '043780fa095ff1b2bec4dc406d76f023', null, null, null);
INSERT INTO `sys_role_permission` VALUES ('1637690312462643202', 'f6817f48af4fb3af11b9e8bf182f618b', '1636190218344304641', NULL, NULL, NULL);
INSERT INTO `sys_role_permission` VALUES ('2397963dc5f14fd3aecfc7045a883422', 'f6817f48af4fb3af11b9e8bf182f618b', '1674617125092679682', NULL, NULL, NULL);
INSERT INTO `sys_role_permission` VALUES ('1686668068762521602', 'f6817f48af4fb3af11b9e8bf182f618b', '1686660721424044033', NULL, '2023-08-02 17:19:39', '127.0.0.1');
INSERT INTO `sys_role_permission` VALUES ('1686668068762521603', 'f6817f48af4fb3af11b9e8bf182f618b', '1686660848121384962', NULL, '2023-08-02 17:19:39', '127.0.0.1');
INSERT INTO `sys_role_permission` VALUES ('1686668068762521604', 'f6817f48af4fb3af11b9e8bf182f618b', '1686660931642560514', NULL, '2023-08-02 17:19:39', '127.0.0.1');
INSERT INTO `sys_role_permission` VALUES ('1686668068762521605', 'f6817f48af4fb3af11b9e8bf182f618b', '1686660980820774914', NULL, '2023-08-02 17:19:39', '127.0.0.1');
INSERT INTO `sys_role_permission` VALUES ('1686668068762521606', 'f6817f48af4fb3af11b9e8bf182f618b', '1686658970264375298', NULL, '2023-08-02 17:19:39', '127.0.0.1');
INSERT INTO `sys_role_permission` VALUES ('1686668068762521607', 'f6817f48af4fb3af11b9e8bf182f618b', '1686659223738748930', NULL, '2023-08-02 17:19:39', '127.0.0.1');
INSERT INTO `sys_role_permission` VALUES ('1686668068762521608', 'f6817f48af4fb3af11b9e8bf182f618b', '1686659307314450434', NULL, '2023-08-02 17:19:39', '127.0.0.1');
INSERT INTO `sys_role_permission` VALUES ('1686668068762521609', 'f6817f48af4fb3af11b9e8bf182f618b', '1686659391968088066', NULL, '2023-08-02 17:19:39', '127.0.0.1');
INSERT INTO `sys_role_permission` VALUES ('1686668068762521610', 'f6817f48af4fb3af11b9e8bf182f618b', '1686659469529157634', NULL, '2023-08-02 17:19:39', '127.0.0.1');
INSERT INTO `sys_role_permission` VALUES ('1686668068762521611', 'f6817f48af4fb3af11b9e8bf182f618b', '1686659720189153281', NULL, '2023-08-02 17:19:39', '127.0.0.1');
INSERT INTO `sys_role_permission` VALUES ('1686668068762521612', 'f6817f48af4fb3af11b9e8bf182f618b', '1686657083884539905', NULL, '2023-08-02 17:19:39', '127.0.0.1');
-- ----------------------------
-- Table structure for sys_sms
+29 -7
View File
@@ -1995,7 +1995,7 @@ INSERT INTO "SYS_PERMISSION" VALUES ('d07a2c87a451434c99ab06296727ec4f', '700b7f
INSERT INTO "SYS_PERMISSION" VALUES ('d2bbf9ebca5a8fa2e227af97d2da7548', 'c65321e57b7949b7a975313220de0422', '404', '/exception/404', 'exception/404', null, null, '1', null, null, '2', null, null, '1', '1', null, null, null, null, TO_DATE('2018-12-25 20:34:38', 'YYYY-MM-DD HH24:MI:SS'), null, null, '0', '0', null, null);
INSERT INTO "SYS_PERMISSION" VALUES ('d7d6e2e4e2934f2c9385a623fd98c6f3', null, '系统管理', '/isystem', 'layouts/RouteView', null, null, '0', null, null, '15', '0', 'setting', '1', '0', '0', '0', null, null, TO_DATE('2018-12-25 20:34:38', 'YYYY-MM-DD HH24:MI:SS'), 'admin', TO_DATE('2021-03-16 22:31:34', 'YYYY-MM-DD HH24:MI:SS'), '0', '0', null, '0');
INSERT INTO "SYS_PERMISSION" VALUES ('d86f58e7ab516d3bc6bfb1fe10585f97', '717f6bee46f44a3897eca9abd6e2ec44', '个人中心', '/account/center', 'account/center/Index', null, null, '1', null, null, '1', null, null, '1', '1', null, null, null, null, TO_DATE('2018-12-25 20:34:38', 'YYYY-MM-DD HH24:MI:SS'), null, null, '0', '0', null, null);
INSERT INTO "SYS_PERMISSION" VALUES ('e08cb190ef230d5d4f03824198773950', '5c8042bd6c601270b2bbd9b20bccc68b', '系统通告', '/isystem/annountCement', 'system/SysAnnouncementList', null, null, '1', 'annountCement', null, '1', '0', null, '1', '1', '0', '0', null, null, TO_DATE('2019-01-02 17:23:01', 'YYYY-MM-DD HH24:MI:SS'), 'admin', TO_DATE('2021-03-16 18:00:58', 'YYYY-MM-DD HH24:MI:SS'), '0', '0', null, '0');
INSERT INTO "SYS_PERMISSION" VALUES ('e08cb190ef230d5d4f03824198773950', '5c8042bd6c601270b2bbd9b20bccc68b', '系统通告','/isystem/annountCement', 'system/SysAnnouncementList', null, null, '1', 'system:list', null, '1', '0', null, '1', '0', '0', '0', null, null, TO_DATE('2019-01-02 17:23:01', 'YYYY-MM-DD HH24:MI:SS'), 'admin', TO_DATE('2021-03-16 18:00:58', 'YYYY-MM-DD HH24:MI:SS'), '0', '0', null, '0');
INSERT INTO "SYS_PERMISSION" VALUES ('e1979bb53e9ea51cecc74d86fd9d2f64', '2a470fc0c3954d9dbb61de6d80846549', 'PDF预览', '/demo/jeroPdfView', 'demo/JeroPdfView', null, null, '1', null, null, '3.40', '0', null, '1', '1', '0', '0', null, 'admin', TO_DATE('2019-04-25 10:39:35', 'YYYY-MM-DD HH24:MI:SS'), 'admin', TO_DATE('2021-03-16 22:18:26', 'YYYY-MM-DD HH24:MI:SS'), '0', '0', null, '0');
INSERT INTO "SYS_PERMISSION" VALUES ('e3c13679c73a4f829bcff2aba8fd68b1', '2a470fc0c3954d9dbb61de6d80846549', '表单页', '/form', 'layouts/PageView', null, null, '1', null, null, '25', '0', 'form', '1', '0', '0', '0', null, null, TO_DATE('2018-12-25 20:34:38', 'YYYY-MM-DD HH24:MI:SS'), 'admin', TO_DATE('2021-03-16 22:23:54', 'YYYY-MM-DD HH24:MI:SS'), '0', '0', null, '0');
INSERT INTO "SYS_PERMISSION" VALUES ('e41b69c57a941a3bbcce45032fe57605', null, '开发工具', '/online', 'layouts/RouteView', null, null, '0', null, null, '18', '0', 'cloud', '1', '0', '0', '0', null, 'admin', TO_DATE('2019-03-08 10:43:10', 'YYYY-MM-DD HH24:MI:SS'), 'admin', TO_DATE('2021-03-16 22:31:28', 'YYYY-MM-DD HH24:MI:SS'), '0', '0', null, '0');
@@ -2006,7 +2006,7 @@ INSERT INTO "SYS_PERMISSION" VALUES ('ec8d607d0156e198b11853760319c646', '6e73eb
INSERT INTO "SYS_PERMISSION" VALUES ('f1cb187abf927c88b89470d08615f5ac', 'd7d6e2e4e2934f2c9385a623fd98c6f3', '数据字典', '/isystem/dict', 'system/DictList', null, null, '1', 'sys:dict:list', null, '5', '0', null, '1', '0', '0', '0', null, null, TO_DATE('2018-12-28 13:54:43', 'YYYY-MM-DD HH24:MI:SS'), 'admin', TO_DATE('2020-02-23 22:45:25', 'YYYY-MM-DD HH24:MI:SS'), '0', '0', '1', '0');
INSERT INTO `SYS_PERMISSION` VALUES ('1674617125092679682', 'f1cb187abf927c88b89470d08615f5ac', '数据字典-增删改查', null, null, null, null, '2', 'sys:dict:operation', '1', null, '0', null, '1', '1', '0', '0', null, 'admin', TO_DATE('2023-06-30 11:13:30', 'YYYY-MM-DD HH24:MI:SS'), 'admin', TO_DATE('2023-06-30 11:13:30', 'YYYY-MM-DD HH24:MI:SS'), '0', '0', '1', '0');
INSERT INTO "SYS_PERMISSION" VALUES ('f23d9bfff4d9aa6b68569ba2cff38415', '540a2936940846cb98114ffb0d145cb8', '标准列表', '/list/basic-list', 'demo/list/StandardList', null, null, '1', null, null, '6', null, null, '1', '1', null, null, null, null, TO_DATE('2018-12-25 20:34:38', 'YYYY-MM-DD HH24:MI:SS'), null, null, '0', '0', null, null);
INSERT INTO "SYS_PERMISSION" VALUES ('f780d0d3083d849ccbdb1b1baee4911d', '5c8042bd6c601270b2bbd9b20bccc68b', '模板管理', '/modules/message/sysMessageTemplateList', 'modules/message/SysMessageTemplateList', null, null, '1', null, null, '1', '0', null, '1', '1', null, '0', null, 'admin', TO_DATE('2019-04-09 11:50:31', 'YYYY-MM-DD HH24:MI:SS'), 'admin', TO_DATE('2019-04-12 10:16:34', 'YYYY-MM-DD HH24:MI:SS'), '0', '0', null, null);
INSERT INTO "SYS_PERMISSION" VALUES ('f780d0d3083d849ccbdb1b1baee4911d', '5c8042bd6c601270b2bbd9b20bccc68b', '模板管理', '/modules/message/sysMessageTemplateList', 'modules/message/SysMessageTemplateList', null, null, '1', 'message:template:list', null, '1', '0', null, '1', '0', null, '0', null, 'admin', TO_DATE('2019-04-09 11:50:31', 'YYYY-MM-DD HH24:MI:SS'), 'admin', TO_DATE('2019-04-12 10:16:34', 'YYYY-MM-DD HH24:MI:SS'), '0', '0', null, null);
INSERT INTO "SYS_PERMISSION" VALUES ('fb367426764077dcf94640c843733985', '2a470fc0c3954d9dbb61de6d80846549', '一对多示例', '/demo/jeroOrderMainList', 'demo/JeroOrderMainList', null, null, '1', null, null, '2.10', '0', null, '1', '1', '0', '0', null, 'admin', TO_DATE('2019-02-15 16:24:11', 'YYYY-MM-DD HH24:MI:SS'), 'admin', TO_DATE('2021-03-16 22:18:47', 'YYYY-MM-DD HH24:MI:SS'), '0', '0', null, '0');
INSERT INTO "SYS_PERMISSION" VALUES ('fedfbf4420536cacc0218557d263dfea', '6e73eb3c26099c191bf03852ee1310a1', '新消息通知', '/account/settings/notification', 'account/settings/Notification', null, null, '1', 'NotificationSettings', null, null, null, null, '1', '1', null, null, null, null, TO_DATE('2018-12-26 19:02:05', 'YYYY-MM-DD HH24:MI:SS'), null, null, '0', '0', null, null);
INSERT INTO "SYS_PERMISSION" VALUES ('00a2a0ae65cdca5e93209cdbde97cbe6', '2e42e3835c2b44ec9f7bc26c146ee531', '成功', '/result/success', 'result/Success', null, null, '1', null, null, '1', null, null, '1', '1', null, null, null, null, TO_DATE('2018-12-25 20:34:38', 'YYYY-MM-DD HH24:MI:SS'), null, null, '0', '0', null, null);
@@ -2020,7 +2020,7 @@ INSERT INTO "SYS_PERMISSION" VALUES ('4356a1a67b564f0988a484f5531fd4d9', '2a470f
INSERT INTO "SYS_PERMISSION" VALUES ('45c966826eeff4c99b8f8ebfe74511fc', 'd7d6e2e4e2934f2c9385a623fd98c6f3', '部门管理', '/isystem/depart', 'system/DepartList', null, null, '1', 'sys:depart:list', null, '1.40', '0', null, '1', '0', '0', '0', null, 'admin', TO_DATE('2019-01-29 18:47:40', 'YYYY-MM-DD HH24:MI:SS'), 'admin', TO_DATE('2019-12-25 09:36:47', 'YYYY-MM-DD HH24:MI:SS'), '0', '0', '1', '0');
INSERT INTO "SYS_PERMISSION" VALUES ('4875ebe289344e14844d8e3ea1edd73f', '2a470fc0c3954d9dbb61de6d80846549', '详情页', '/profile', 'layouts/RouteView', null, null, '1', null, null, '21', '0', 'profile', '1', '0', '0', '0', null, null, TO_DATE('2018-12-25 20:34:38', 'YYYY-MM-DD HH24:MI:SS'), 'admin', TO_DATE('2021-03-16 22:23:07', 'YYYY-MM-DD HH24:MI:SS'), '0', '0', null, '0');
INSERT INTO "SYS_PERMISSION" VALUES ('4f66409ef3bbd69c1d80469d6e2a885e', '6e73eb3c26099c191bf03852ee1310a1', '账户绑定', '/account/settings/binding', 'account/settings/Binding', null, null, '1', 'BindingSettings', null, null, null, null, '1', '1', null, null, null, null, TO_DATE('2018-12-26 19:01:20', 'YYYY-MM-DD HH24:MI:SS'), null, null, '0', '0', null, null);
INSERT INTO "SYS_PERMISSION" VALUES ('53a9230444d33de28aa11cc108fb1dba', '5c8042bd6c601270b2bbd9b20bccc68b', '我的消息', '/isps/userAnnouncement', 'system/UserAnnouncementList', null, null, '1', null, null, '4', '0', null, '1', '1', '0', '0', null, 'admin', TO_DATE('2019-04-19 10:16:00', 'YYYY-MM-DD HH24:MI:SS'), 'admin', TO_DATE('2021-03-16 18:01:26', 'YYYY-MM-DD HH24:MI:SS'), '0', '0', null, '0');
INSERT INTO "SYS_PERMISSION" VALUES ('53a9230444d33de28aa11cc108fb1dba', '5c8042bd6c601270b2bbd9b20bccc68b', '我的消息', '/isps/userAnnouncement', 'system/UserAnnouncementList', null, null, '1', 'my:mesg:list', null, '4', '0', null, '1', '1', '0', '0', null, 'admin', TO_DATE('2019-04-19 10:16:00', 'YYYY-MM-DD HH24:MI:SS'), 'admin', TO_DATE('2021-03-16 18:01:26', 'YYYY-MM-DD HH24:MI:SS'), '0', '0', null, '0');
INSERT INTO "SYS_PERMISSION" VALUES ('540a2936940846cb98114ffb0d145cb8', '2a470fc0c3954d9dbb61de6d80846549', '列表页', '/list', 'layouts/PageView', null, '/list/query-list', '1', null, null, '24', '0', 'table', '1', '0', '0', '0', null, null, TO_DATE('2018-12-25 20:34:38', 'YYYY-MM-DD HH24:MI:SS'), 'admin', TO_DATE('2021-03-16 22:23:31', 'YYYY-MM-DD HH24:MI:SS'), '0', '0', null, '0');
INSERT INTO "SYS_PERMISSION" VALUES ('54dd5457a3190740005c1bfec55b1c34', 'e41b69c57a941a3bbcce45032fe57605', '菜单管理', '/isystem/permission', 'system/PermissionList', null, null, '1', null, null, '7', '0', null, '1', '1', '0', '0', null, null, TO_DATE('2018-12-25 20:34:38', 'YYYY-MM-DD HH24:MI:SS'), 'admin', TO_DATE('2021-03-16 22:32:38', 'YYYY-MM-DD HH24:MI:SS'), '0', '0', null, '0');
INSERT INTO "SYS_PERMISSION" VALUES ('58857ff846e61794c69208e9d3a85466', '1371831353354936322', '操作日志', '/isystem/log', 'system/LogList', null, null, '1', null, null, '1', '0', null, '1', '1', '0', '0', null, null, TO_DATE('2018-12-26 10:11:18', 'YYYY-MM-DD HH24:MI:SS'), 'admin', TO_DATE('2021-03-16 22:33:27', 'YYYY-MM-DD HH24:MI:SS'), '0', '0', null, '0');
@@ -2043,7 +2043,7 @@ INSERT INTO "SYS_PERMISSION" VALUES ('8b3bff2eee6f1939147f5c68292a1642', '700b7f
INSERT INTO "SYS_PERMISSION" VALUES ('8d1ebd663688965f1fd86a2f0ead3416', '700b7f95165c46cc7a78bf227aa8fed3', 'Redis监控', '/monitor/redis/info', 'modules/monitor/RedisInfo', null, null, '1', null, null, '1', '0', null, '1', '1', null, '0', null, 'admin', TO_DATE('2019-04-02 13:11:33', 'YYYY-MM-DD HH24:MI:SS'), 'admin', TO_DATE('2019-05-07 15:18:54', 'YYYY-MM-DD HH24:MI:SS'), '0', '0', null, null);
INSERT INTO "SYS_PERMISSION" VALUES ('8d4683aacaa997ab86b966b464360338', 'e41b69c57a941a3bbcce45032fe57605', 'Online表单开发', '/online/cgform', 'modules/online/cgform/OnlCgformHeadList', null, null, '1', null, null, '1', '0', null, '1', '0', null, '0', null, 'admin', TO_DATE('2019-03-12 15:48:14', 'YYYY-MM-DD HH24:MI:SS'), 'admin', TO_DATE('2019-06-11 14:19:17', 'YYYY-MM-DD HH24:MI:SS'), '0', '0', null, null);
INSERT INTO "SYS_PERMISSION" VALUES ('8fb8172747a78756c11916216b8b8066', '717f6bee46f44a3897eca9abd6e2ec44', '工作台', '/dashboard/workplace', 'dashboard/Workplace', null, null, '1', null, null, '3', '0', null, '1', '1', null, '0', null, null, TO_DATE('2018-12-25 20:34:38', 'YYYY-MM-DD HH24:MI:SS'), 'admin', TO_DATE('2019-04-02 11:45:02', 'YYYY-MM-DD HH24:MI:SS'), '0', '0', null, null);
INSERT INTO "SYS_PERMISSION" VALUES ('944abf0a8fc22fe1f1154a389a574154', '5c8042bd6c601270b2bbd9b20bccc68b', '消息管理', '/modules/message/sysMessageList', 'modules/message/SysMessageList', null, null, '1', null, null, '3', '0', null, '1', '1', '0', '0', null, 'admin', TO_DATE('2019-04-09 11:27:53', 'YYYY-MM-DD HH24:MI:SS'), 'admin', TO_DATE('2021-03-16 18:01:20', 'YYYY-MM-DD HH24:MI:SS'), '0', '0', null, '0');
INSERT INTO "SYS_PERMISSION" VALUES ('944abf0a8fc22fe1f1154a389a574154', '5c8042bd6c601270b2bbd9b20bccc68b', '消息管理', '/modules/message/sysMessageList', 'modules/message/SysMessageList', null, null, '1', 'message:list', null, '3', '0', null, '1', '0', '0', '0', null, 'admin', TO_DATE('2019-04-09 11:27:53', 'YYYY-MM-DD HH24:MI:SS'), 'admin', TO_DATE('2021-03-16 18:01:20', 'YYYY-MM-DD HH24:MI:SS'), '0', '0', null, '0');
INSERT INTO "SYS_PERMISSION" VALUES ('9502685863ab87f0ad1134142788a385', null, '首页', '/dashboard/analysis', 'dashboard/Analysis', null, null, '0', null, null, '0', '0', 'home', '1', '1', null, '0', null, null, TO_DATE('2018-12-25 20:34:38', 'YYYY-MM-DD HH24:MI:SS'), 'admin', TO_DATE('2019-03-29 11:04:13', 'YYYY-MM-DD HH24:MI:SS'), '0', '0', null, null);
INSERT INTO "SYS_PERMISSION" VALUES ('97c8629abc7848eccdb6d77c24bb3ebb', '700b7f95165c46cc7a78bf227aa8fed3', '磁盘监控', '/monitor/Disk', 'modules/monitor/DiskMonitoring', null, null, '1', null, null, '6', '0', null, '1', '1', null, '0', null, 'admin', TO_DATE('2019-04-25 14:30:06', 'YYYY-MM-DD HH24:MI:SS'), 'admin', TO_DATE('2019-05-05 14:37:14', 'YYYY-MM-DD HH24:MI:SS'), '0', '0', null, null);
INSERT INTO "SYS_PERMISSION" VALUES ('9a90363f216a6a08f32eecb3f0bf12a3', '2a470fc0c3954d9dbb61de6d80846549', 'Jero组件示例', '/demo/SelectDemo', 'demo/SelectDemo', null, null, '1', null, null, '0', '0', null, '1', '1', '0', '0', null, 'admin', TO_DATE('2019-03-19 11:19:05', 'YYYY-MM-DD HH24:MI:SS'), 'admin', TO_DATE('2021-03-16 22:15:28', 'YYYY-MM-DD HH24:MI:SS'), '0', '0', null, '0');
@@ -2102,7 +2102,18 @@ INSERT INTO "SYS_PERMISSION" VALUES ('1383956779212550146', '3f915b2769fc80648e9
INSERT INTO "SYS_PERMISSION" VALUES ('1260931366557696001', '3f915b2769fc80648e92d04e84ca059d', '表单性别可见', null, null, null, null, '2', 'user:sex', '1', '1', '0', null, '1', '1', '0', '0', null, 'admin', TO_DATE('2020-05-14 21:53:59', 'YYYY-MM-DD HH24:MI:SS'), 'admin', TO_DATE('2020-05-14 21:57:00', 'YYYY-MM-DD HH24:MI:SS'), '0', '0', '1', '0');
INSERT INTO "SYS_PERMISSION" VALUES ('1260933542969458689', '3f915b2769fc80648e92d04e84ca059d', '禁用生日字段', null, null, null, null, '2', 'user:form:birthday', '2', '1', '0', null, '1', '1', '0', '0', null, 'admin', TO_DATE('2020-05-14 22:02:38', 'YYYY-MM-DD HH24:MI:SS'), null, null, '0', '0', '1', '0');
INSERT INTO "SYS_PERMISSION" VALUES ('1404684556047024130', '08e6b9dc3c04489c8e1ff2ce6f105aa4', '在线用户', '/isystem/online', 'system/SysUserOnlineList', null, null, '1', null, null, '3', '0', null, '1', '0', '0', '0', null, 'admin', TO_DATE('2019-04-02 11:34:34', 'YYYY-MM-DD HH24:MI:SS'), 'admin', TO_DATE('2020-09-09 14:48:51', 'YYYY-MM-DD HH24:MI:SS'), '0', '0', null, '0');
INSERT INTO `SYS_PERMISSION` VALUES ('1636190218344304641', '540a2936940846cb98114ffb0d145cb8', 'JTable列表', '/list/j-table-list', 'demo/list/JTableList', NULL, NULL, 1, NULL, '1', 1.00, 0, NULL, 1, 1, 0, 0, NULL, 'admin', '2023-03-16 10:18:42', 'admin', '2023-03-16 10:25:49', 0, 0, '1', 0);
INSERT INTO "SYS_PERMISSION" VALUES ('1636190218344304641', '540a2936940846cb98114ffb0d145cb8', 'JTable列表', '/list/j-table-list', 'demo/list/JTableList', NULL, NULL, 1, NULL, '1', 1.00, 0, NULL, 1, 1, 0, 0, NULL, 'admin', '2023-03-16 10:18:42', 'admin', '2023-03-16 10:25:49', 0, 0, '1', 0);
INSERT INTO "SYS_PERMISSION" VALUES ('1686657083884539905', '944abf0a8fc22fe1f1154a389a574154', '消息管理删除', NULL, NULL, NULL, NULL, 2, 'message:del', '1', NULL, 0, NULL, 1, 1, 0, 0, NULL, 'admin', '2023-08-02 16:36:00', 'admin', '2023-08-02 16:39:21', 0, 0, '1', 0);
INSERT INTO "SYS_PERMISSION" VALUES ('1686659720189153281', 'f780d0d3083d849ccbdb1b1baee4911d', '模板管理导入', NULL, NULL, NULL, NULL, 2, 'message:template:import', '1', NULL, 0, NULL, 1, 1, 0, 0, NULL, 'admin', '2023-08-02 16:46:29', NULL, NULL, 0, 0, '1', 0);
INSERT INTO "SYS_PERMISSION" VALUES ('1686659469529157634', 'f780d0d3083d849ccbdb1b1baee4911d', '模板管理导出', NULL, NULL, NULL, NULL, 2, 'message:template:export', '1', NULL, 0, NULL, 1, 1, 0, 0, NULL, 'admin', '2023-08-02 16:45:29', NULL, NULL, 0, 0, '1', 0);
INSERT INTO "SYS_PERMISSION" VALUES ('1686659391968088066', 'f780d0d3083d849ccbdb1b1baee4911d', '模板管理删除', NULL, NULL, NULL, NULL, 2, 'message:template:del', '1', NULL, 0, NULL, 1, 1, 0, 0, NULL, 'admin', '2023-08-02 16:45:10', NULL, NULL, 0, 0, '1', 0);
INSERT INTO "SYS_PERMISSION" VALUES ('1686659307314450434', 'f780d0d3083d849ccbdb1b1baee4911d', '模板管理发送', NULL, NULL, NULL, NULL, 2, 'message:template:send', '1', NULL, 0, NULL, 1, 1, 0, 0, NULL, 'admin', '2023-08-02 16:44:50', NULL, NULL, 0, 0, '1', 0);
INSERT INTO "SYS_PERMISSION" VALUES ('1686659223738748930', 'f780d0d3083d849ccbdb1b1baee4911d', '模板管理编辑', NULL, NULL, NULL, NULL, 2, 'message:template:edit', '1', NULL, 0, NULL, 1, 1, 0, 0, NULL, 'admin', '2023-08-02 16:44:30', NULL, NULL, 0, 0, '1', 0);
INSERT INTO "SYS_PERMISSION" VALUES ('1686658970264375298', 'f780d0d3083d849ccbdb1b1baee4911d', '模板管理新增', NULL, NULL, NULL, NULL, 2, 'message:template:add', '1', NULL, 0, NULL, 1, 1, 0, 0, NULL, 'admin', '2023-08-02 16:43:30', NULL, NULL, 0, 0, '1', 0);
INSERT INTO "SYS_PERMISSION" VALUES ('1686660980820774914', 'e08cb190ef230d5d4f03824198773950', '系统通告发布', NULL, NULL, NULL, NULL, 2, 'annount:cement:send', '1', NULL, 0, NULL, 1, 1, 0, 0, NULL, 'admin', '2023-08-02 16:51:29', NULL, NULL, 0, 0, '1', 0);
INSERT INTO "SYS_PERMISSION" VALUES ('1686660931642560514', 'e08cb190ef230d5d4f03824198773950', '系统通告删除', NULL, NULL, NULL, NULL, 2, 'annount:cement:del', '1', NULL, 0, NULL, 1, 1, 0, 0, NULL, 'admin', '2023-08-02 16:51:17', NULL, NULL, 0, 0, '1', 0);
INSERT INTO "SYS_PERMISSION" VALUES ('1686660848121384962', 'e08cb190ef230d5d4f03824198773950', '系统通告编辑', NULL, NULL, NULL, NULL, 2, 'annount:cement:edit', '1', NULL, 0, NULL, 1, 1, 0, 0, NULL, 'admin', '2023-08-02 16:50:57', NULL, NULL, 0, 0, '1', 0);
INSERT INTO "SYS_PERMISSION" VALUES ('1686660721424044033', 'e08cb190ef230d5d4f03824198773950', '系统通告添加', NULL, NULL, NULL, NULL, 2, 'annount:cement:add', '1', NULL, 0, NULL, 1, 1, 0, 0, NULL, 'admin', '2023-08-02 16:50:27', NULL, NULL, 0, 0, '1', 0);
-- ----------------------------
@@ -2383,8 +2394,19 @@ INSERT INTO "SYS_ROLE_PERMISSION" VALUES ('a307a9349ad64a2eff8ab69582fa9be4', 'f
INSERT INTO "SYS_ROLE_PERMISSION" VALUES ('a5d25fdb3c62904a8474182706ce11a0', 'f6817f48af4fb3af11b9e8bf182f618b', '418964ba087b90a84897b62474496b93', NULL, NULL, NULL);
INSERT INTO "SYS_ROLE_PERMISSION" VALUES ('ae1852fb349d8513eb3fdc173da3ee56', 'f6817f48af4fb3af11b9e8bf182f618b', '8d4683aacaa997ab86b966b464360338', NULL, NULL, NULL);
INSERT INTO "SYS_ROLE_PERMISSION" VALUES ('af60ac8fafd807ed6b6b354613b9ccbc', 'f6817f48af4fb3af11b9e8bf182f618b', '58857ff846e61794c69208e9d3a85466', NULL, NULL, NULL);
INSERT INTO `SYS_ROLE_PERMISSION` VALUES ('1637690312462643202', 'f6817f48af4fb3af11b9e8bf182f618b', '1636190218344304641', NULL, NULL, NULL);
INSERT INTO `sys_role_permission` VALUES ('2397963dc5f14fd3aecfc7045a883422', 'f6817f48af4fb3af11b9e8bf182f618b', '1674617125092679682', NULL, NULL, NULL);
INSERT INTO "SYS_ROLE_PERMISSION" VALUES ('1637690312462643202', 'f6817f48af4fb3af11b9e8bf182f618b', '1636190218344304641', NULL, NULL, NULL);
INSERT INTO "SYS_ROLE_PERMISSION" VALUES ('2397963dc5f14fd3aecfc7045a883422', 'f6817f48af4fb3af11b9e8bf182f618b', '1674617125092679682', NULL, NULL, NULL);
INSERT INTO "SYS_ROLE_PERMISSION" VALUES ('1686668068762521602', 'f6817f48af4fb3af11b9e8bf182f618b', '1686660721424044033', NULL, '2023-08-02 17:19:39', '127.0.0.1');
INSERT INTO "SYS_ROLE_PERMISSION" VALUES ('1686668068762521603', 'f6817f48af4fb3af11b9e8bf182f618b', '1686660848121384962', NULL, '2023-08-02 17:19:39', '127.0.0.1');
INSERT INTO "SYS_ROLE_PERMISSION" VALUES ('1686668068762521604', 'f6817f48af4fb3af11b9e8bf182f618b', '1686660931642560514', NULL, '2023-08-02 17:19:39', '127.0.0.1');
INSERT INTO "SYS_ROLE_PERMISSION" VALUES ('1686668068762521605', 'f6817f48af4fb3af11b9e8bf182f618b', '1686660980820774914', NULL, '2023-08-02 17:19:39', '127.0.0.1');
INSERT INTO "SYS_ROLE_PERMISSION" VALUES ('1686668068762521606', 'f6817f48af4fb3af11b9e8bf182f618b', '1686658970264375298', NULL, '2023-08-02 17:19:39', '127.0.0.1');
INSERT INTO "SYS_ROLE_PERMISSION" VALUES ('1686668068762521607', 'f6817f48af4fb3af11b9e8bf182f618b', '1686659223738748930', NULL, '2023-08-02 17:19:39', '127.0.0.1');
INSERT INTO "SYS_ROLE_PERMISSION" VALUES ('1686668068762521608', 'f6817f48af4fb3af11b9e8bf182f618b', '1686659307314450434', NULL, '2023-08-02 17:19:39', '127.0.0.1');
INSERT INTO "SYS_ROLE_PERMISSION" VALUES ('1686668068762521609', 'f6817f48af4fb3af11b9e8bf182f618b', '1686659391968088066', NULL, '2023-08-02 17:19:39', '127.0.0.1');
INSERT INTO "SYS_ROLE_PERMISSION" VALUES ('1686668068762521610', 'f6817f48af4fb3af11b9e8bf182f618b', '1686659469529157634', NULL, '2023-08-02 17:19:39', '127.0.0.1');
INSERT INTO "SYS_ROLE_PERMISSION" VALUES ('1686668068762521611', 'f6817f48af4fb3af11b9e8bf182f618b', '1686659720189153281', NULL, '2023-08-02 17:19:39', '127.0.0.1');
INSERT INTO "SYS_ROLE_PERMISSION" VALUES ('1686668068762521612', 'f6817f48af4fb3af11b9e8bf182f618b', '1686657083884539905', NULL, '2023-08-02 17:19:39', '127.0.0.1');
-- ----------------------------
-- Table structure for SYS_SMS
+49 -5
View File
@@ -5465,7 +5465,7 @@ GO
INSERT INTO [dbo].[sys_permission] ([id], [parent_id], [name], [url], [component], [component_name], [redirect], [menu_type], [perms], [perms_type], [sort_no], [always_show], [icon], [is_route], [is_leaf], [keep_alive], [hidden], [description], [create_by], [create_time], [update_by], [update_time], [del_flag], [rule_flag], [status], [internal_or_external]) VALUES (N'4f66409ef3bbd69c1d80469d6e2a885e', N'6e73eb3c26099c191bf03852ee1310a1', N'账户绑定', N'/account/settings/binding', N'account/settings/Binding', NULL, NULL, N'1', N'BindingSettings', NULL, NULL, NULL, NULL, N'1', N'1', NULL, NULL, NULL, NULL, N'2018-12-26 19:01:20.0000000', NULL, NULL, N'0', N'0', NULL, NULL)
GO
INSERT INTO [dbo].[sys_permission] ([id], [parent_id], [name], [url], [component], [component_name], [redirect], [menu_type], [perms], [perms_type], [sort_no], [always_show], [icon], [is_route], [is_leaf], [keep_alive], [hidden], [description], [create_by], [create_time], [update_by], [update_time], [del_flag], [rule_flag], [status], [internal_or_external]) VALUES (N'53a9230444d33de28aa11cc108fb1dba', N'5c8042bd6c601270b2bbd9b20bccc68b', N'我的消息', N'/isps/userAnnouncement', N'system/UserAnnouncementList', NULL, NULL, N'1', NULL, NULL, N'4', N'0', NULL, N'1', N'1', N'0', N'0', NULL, N'admin', N'2019-04-19 10:16:00.0000000', N'admin', N'2021-03-16 18:01:26.0000000', N'0', N'0', NULL, N'0')
INSERT INTO [dbo].[sys_permission] ([id], [parent_id], [name], [url], [component], [component_name], [redirect], [menu_type], [perms], [perms_type], [sort_no], [always_show], [icon], [is_route], [is_leaf], [keep_alive], [hidden], [description], [create_by], [create_time], [update_by], [update_time], [del_flag], [rule_flag], [status], [internal_or_external]) VALUES (N'53a9230444d33de28aa11cc108fb1dba', N'5c8042bd6c601270b2bbd9b20bccc68b', N'我的消息', N'/isps/userAnnouncement', N'system/UserAnnouncementList', NULL, NULL, N'1', N'my:mesg:list', NULL, N'4', N'0', NULL, N'1', N'1', N'0', N'0', NULL, N'admin', N'2019-04-19 10:16:00.0000000', N'admin', N'2021-03-16 18:01:26.0000000', N'0', N'0', NULL, N'0')
GO
INSERT INTO [dbo].[sys_permission] ([id], [parent_id], [name], [url], [component], [component_name], [redirect], [menu_type], [perms], [perms_type], [sort_no], [always_show], [icon], [is_route], [is_leaf], [keep_alive], [hidden], [description], [create_by], [create_time], [update_by], [update_time], [del_flag], [rule_flag], [status], [internal_or_external]) VALUES (N'540a2936940846cb98114ffb0d145cb8', N'2a470fc0c3954d9dbb61de6d80846549', N'列表页', N'/list', N'layouts/PageView', NULL, N'/list/query-list', N'1', NULL, NULL, N'24', N'0', N'table', N'1', N'0', N'0', N'0', NULL, NULL, N'2018-12-25 20:34:38.0000000', N'admin', N'2021-03-16 22:23:31.0000000', N'0', N'0', NULL, N'0')
@@ -5534,7 +5534,7 @@ GO
INSERT INTO [dbo].[sys_permission] ([id], [parent_id], [name], [url], [component], [component_name], [redirect], [menu_type], [perms], [perms_type], [sort_no], [always_show], [icon], [is_route], [is_leaf], [keep_alive], [hidden], [description], [create_by], [create_time], [update_by], [update_time], [del_flag], [rule_flag], [status], [internal_or_external]) VALUES (N'8fb8172747a78756c11916216b8b8066', N'717f6bee46f44a3897eca9abd6e2ec44', N'工作台', N'/dashboard/workplace', N'dashboard/Workplace', NULL, NULL, N'1', NULL, NULL, N'3', N'0', NULL, N'1', N'1', NULL, N'0', NULL, NULL, N'2018-12-25 20:34:38.0000000', N'admin', N'2019-04-02 11:45:02.0000000', N'0', N'0', NULL, NULL)
GO
INSERT INTO [dbo].[sys_permission] ([id], [parent_id], [name], [url], [component], [component_name], [redirect], [menu_type], [perms], [perms_type], [sort_no], [always_show], [icon], [is_route], [is_leaf], [keep_alive], [hidden], [description], [create_by], [create_time], [update_by], [update_time], [del_flag], [rule_flag], [status], [internal_or_external]) VALUES (N'944abf0a8fc22fe1f1154a389a574154', N'5c8042bd6c601270b2bbd9b20bccc68b', N'消息管理', N'/modules/message/sysMessageList', N'modules/message/SysMessageList', NULL, NULL, N'1', NULL, NULL, N'3', N'0', NULL, N'1', N'1', N'0', N'0', NULL, N'admin', N'2019-04-09 11:27:53.0000000', N'admin', N'2021-03-16 18:01:20.0000000', N'0', N'0', NULL, N'0')
INSERT INTO [dbo].[sys_permission] ([id], [parent_id], [name], [url], [component], [component_name], [redirect], [menu_type], [perms], [perms_type], [sort_no], [always_show], [icon], [is_route], [is_leaf], [keep_alive], [hidden], [description], [create_by], [create_time], [update_by], [update_time], [del_flag], [rule_flag], [status], [internal_or_external]) VALUES (N'944abf0a8fc22fe1f1154a389a574154', N'5c8042bd6c601270b2bbd9b20bccc68b', N'消息管理', N'/modules/message/sysMessageList', N'modules/message/SysMessageList', NULL, NULL, N'1', N'message:list', NULL, N'3', N'0', NULL, N'1', N'0', N'0', N'0', NULL, N'admin', N'2019-04-09 11:27:53.0000000', N'admin', N'2021-03-16 18:01:20.0000000', N'0', N'0', NULL, N'0')
GO
INSERT INTO [dbo].[sys_permission] ([id], [parent_id], [name], [url], [component], [component_name], [redirect], [menu_type], [perms], [perms_type], [sort_no], [always_show], [icon], [is_route], [is_leaf], [keep_alive], [hidden], [description], [create_by], [create_time], [update_by], [update_time], [del_flag], [rule_flag], [status], [internal_or_external]) VALUES (N'9502685863ab87f0ad1134142788a385', N'', N'首页', N'/dashboard/analysis', N'dashboard/Analysis', NULL, NULL, N'0', NULL, NULL, N'0', N'0', N'home', N'1', N'1', NULL, N'0', NULL, NULL, N'2018-12-25 20:34:38.0000000', N'admin', N'2019-03-29 11:04:13.0000000', N'0', N'0', NULL, NULL)
@@ -5582,7 +5582,7 @@ GO
INSERT INTO [dbo].[sys_permission] ([id], [parent_id], [name], [url], [component], [component_name], [redirect], [menu_type], [perms], [perms_type], [sort_no], [always_show], [icon], [is_route], [is_leaf], [keep_alive], [hidden], [description], [create_by], [create_time], [update_by], [update_time], [del_flag], [rule_flag], [status], [internal_or_external]) VALUES (N'd86f58e7ab516d3bc6bfb1fe10585f97', N'717f6bee46f44a3897eca9abd6e2ec44', N'个人中心', N'/account/center', N'account/center/Index', NULL, NULL, N'1', NULL, NULL, N'1', NULL, NULL, N'1', N'1', NULL, NULL, NULL, NULL, N'2018-12-25 20:34:38.0000000', NULL, NULL, N'0', N'0', NULL, NULL)
GO
INSERT INTO [dbo].[sys_permission] ([id], [parent_id], [name], [url], [component], [component_name], [redirect], [menu_type], [perms], [perms_type], [sort_no], [always_show], [icon], [is_route], [is_leaf], [keep_alive], [hidden], [description], [create_by], [create_time], [update_by], [update_time], [del_flag], [rule_flag], [status], [internal_or_external]) VALUES (N'e08cb190ef230d5d4f03824198773950', N'5c8042bd6c601270b2bbd9b20bccc68b', N'系统通告', N'/isystem/annountCement', N'system/SysAnnouncementList', NULL, NULL, N'1', N'annountCement', NULL, N'1', N'0', N'', N'1', N'1', N'0', N'0', NULL, NULL, N'2019-01-02 17:23:01.0000000', N'admin', N'2021-03-16 18:00:58.0000000', N'0', N'0', NULL, N'0')
INSERT INTO [dbo].[sys_permission] ([id], [parent_id], [name], [url], [component], [component_name], [redirect], [menu_type], [perms], [perms_type], [sort_no], [always_show], [icon], [is_route], [is_leaf], [keep_alive], [hidden], [description], [create_by], [create_time], [update_by], [update_time], [del_flag], [rule_flag], [status], [internal_or_external]) VALUES (N'e08cb190ef230d5d4f03824198773950', N'5c8042bd6c601270b2bbd9b20bccc68b', N'系统通告', N'/isystem/annountCement', N'system/SysAnnouncementList', NULL, NULL, N'1', N'system:list', NULL, N'1', N'0', N'', N'1', N'0', N'0', N'0', NULL, NULL, N'2019-01-02 17:23:01.0000000', N'admin', N'2021-03-16 18:00:58.0000000', N'0', N'0', NULL, N'0')
GO
INSERT INTO [dbo].[sys_permission] ([id], [parent_id], [name], [url], [component], [component_name], [redirect], [menu_type], [perms], [perms_type], [sort_no], [always_show], [icon], [is_route], [is_leaf], [keep_alive], [hidden], [description], [create_by], [create_time], [update_by], [update_time], [del_flag], [rule_flag], [status], [internal_or_external]) VALUES (N'e1979bb53e9ea51cecc74d86fd9d2f64', N'2a470fc0c3954d9dbb61de6d80846549', N'PDF预览', N'/demo/jeroPdfView', N'demo/JeroPdfView', NULL, NULL, N'1', NULL, NULL, N'3.4', N'0', NULL, N'1', N'1', N'0', N'0', NULL, N'admin', N'2019-04-25 10:39:35.0000000', N'admin', N'2021-03-16 22:18:26.0000000', N'0', N'0', NULL, N'0')
@@ -5615,7 +5615,7 @@ GO
INSERT INTO [dbo].[sys_permission] ([id], [parent_id], [name], [url], [component], [component_name], [redirect], [menu_type], [perms], [perms_type], [sort_no], [always_show], [icon], [is_route], [is_leaf], [keep_alive], [hidden], [description], [create_by], [create_time], [update_by], [update_time], [del_flag], [rule_flag], [status], [internal_or_external]) VALUES (N'f23d9bfff4d9aa6b68569ba2cff38415', N'540a2936940846cb98114ffb0d145cb8', N'标准列表', N'/list/basic-list', N'demo/list/StandardList', NULL, NULL, N'1', NULL, NULL, N'6', NULL, NULL, N'1', N'1', NULL, NULL, NULL, NULL, N'2018-12-25 20:34:38.0000000', NULL, NULL, N'0', N'0', NULL, NULL)
GO
INSERT INTO [dbo].[sys_permission] ([id], [parent_id], [name], [url], [component], [component_name], [redirect], [menu_type], [perms], [perms_type], [sort_no], [always_show], [icon], [is_route], [is_leaf], [keep_alive], [hidden], [description], [create_by], [create_time], [update_by], [update_time], [del_flag], [rule_flag], [status], [internal_or_external]) VALUES (N'f780d0d3083d849ccbdb1b1baee4911d', N'5c8042bd6c601270b2bbd9b20bccc68b', N'模板管理', N'/modules/message/sysMessageTemplateList', N'modules/message/SysMessageTemplateList', NULL, NULL, N'1', NULL, NULL, N'1', N'0', NULL, N'1', N'1', NULL, N'0', NULL, N'admin', N'2019-04-09 11:50:31.0000000', N'admin', N'2019-04-12 10:16:34.0000000', N'0', N'0', NULL, NULL)
INSERT INTO [dbo].[sys_permission] ([id], [parent_id], [name], [url], [component], [component_name], [redirect], [menu_type], [perms], [perms_type], [sort_no], [always_show], [icon], [is_route], [is_leaf], [keep_alive], [hidden], [description], [create_by], [create_time], [update_by], [update_time], [del_flag], [rule_flag], [status], [internal_or_external]) VALUES (N'f780d0d3083d849ccbdb1b1baee4911d', N'5c8042bd6c601270b2bbd9b20bccc68b', N'模板管理', N'/modules/message/sysMessageTemplateList', N'modules/message/SysMessageTemplateList', NULL, NULL, N'1', N'message:template:list', NULL, N'1', N'0', NULL, N'1', N'0', NULL, N'0', NULL, N'admin', N'2019-04-09 11:50:31.0000000', N'admin', N'2019-04-12 10:16:34.0000000', N'0', N'0', NULL, NULL)
GO
INSERT INTO [dbo].[sys_permission] ([id], [parent_id], [name], [url], [component], [component_name], [redirect], [menu_type], [perms], [perms_type], [sort_no], [always_show], [icon], [is_route], [is_leaf], [keep_alive], [hidden], [description], [create_by], [create_time], [update_by], [update_time], [del_flag], [rule_flag], [status], [internal_or_external]) VALUES (N'fb367426764077dcf94640c843733985', N'2a470fc0c3954d9dbb61de6d80846549', N'一对多示例', N'/demo/jeroOrderMainList', N'demo/JeroOrderMainList', NULL, NULL, N'1', NULL, NULL, N'2.1', N'0', NULL, N'1', N'1', N'0', N'0', NULL, N'admin', N'2019-02-15 16:24:11.0000000', N'admin', N'2021-03-16 22:18:47.0000000', N'0', N'0', NULL, N'0')
@@ -5677,7 +5677,29 @@ GO
INSERT INTO [dbo].[sys_permission] ([id], [parent_id], [name], [url], [component], [component_name], [redirect], [menu_type], [perms], [perms_type], [sort_no], [always_show], [icon], [is_route], [is_leaf], [keep_alive], [hidden], [description], [create_by], [create_time], [update_by], [update_time], [del_flag], [rule_flag], [status], [internal_or_external]) VALUES (N'1636190218344304641', N'540a2936940846cb98114ffb0d145cb8', N'JTable列表', N'/list/j-table-list', N'demo/list/JTableList',NULL, NULL, N'1', NULL, N'1', N'1.00', N'0', NULL, N'1', N'1', N'0', N'0', NULL, N'admin', N'2023-03-16 10:18:42.0000000', N'admin', N'2023-03-16 10:25:49.0000000', N'0', N'0', N'1', N'0');
GO
INSERT INTO [dbo].[sys_permission] ([id], [parent_id], [name], [url], [component], [component_name], [redirect], [menu_type], [perms], [perms_type], [sort_no], [always_show], [icon], [is_route], [is_leaf], [keep_alive], [hidden], [description], [create_by], [create_time], [update_by], [update_time], [del_flag], [rule_flag], [status], [internal_or_external]) VALUES (N'1686657083884539905', N'944abf0a8fc22fe1f1154a389a574154', N'消息管理删除', NULL, NULL, NULL, NULL, N'2', N'message:del', N'1', NULL, N'0', NULL, N'1', N'1',N'0',N'0', NULL, N'admin', N'2023-08-02 16:36:00', N'admin', N'2023-08-02 16:39:21', N'0', N'0', N'1', N'0');
GO
INSERT INTO [dbo].[sys_permission] ([id], [parent_id], [name], [url], [component], [component_name], [redirect], [menu_type], [perms], [perms_type], [sort_no], [always_show], [icon], [is_route], [is_leaf], [keep_alive], [hidden], [description], [create_by], [create_time], [update_by], [update_time], [del_flag], [rule_flag], [status], [internal_or_external]) VALUES (N'1686659720189153281', N'f780d0d3083d849ccbdb1b1baee4911d', N'模板管理导入', NULL, NULL, NULL, NULL, N'2', N'message:template:import', N'1', NULL, N'0', NULL, N'1', N'1',N'0',N'0', NULL, N'admin', N'2023-08-02 16:46:29', NULL, NULL,N'0',N'0', N'1', N'0');
GO
INSERT INTO [dbo].[sys_permission] ([id], [parent_id], [name], [url], [component], [component_name], [redirect], [menu_type], [perms], [perms_type], [sort_no], [always_show], [icon], [is_route], [is_leaf], [keep_alive], [hidden], [description], [create_by], [create_time], [update_by], [update_time], [del_flag], [rule_flag], [status], [internal_or_external]) VALUES (N'1686659469529157634', N'f780d0d3083d849ccbdb1b1baee4911d', N'模板管理导出', NULL, NULL, NULL, NULL, N'2', N'message:template:export', N'1', NULL, N'0', NULL, N'1', N'1',N'0',N'0', NULL, N'admin', N'2023-08-02 16:45:29', NULL, NULL,N'0',N'0', N'1', N'0');
GO
INSERT INTO [dbo].[sys_permission] ([id], [parent_id], [name], [url], [component], [component_name], [redirect], [menu_type], [perms], [perms_type], [sort_no], [always_show], [icon], [is_route], [is_leaf], [keep_alive], [hidden], [description], [create_by], [create_time], [update_by], [update_time], [del_flag], [rule_flag], [status], [internal_or_external]) VALUES (N'1686659391968088066', N'f780d0d3083d849ccbdb1b1baee4911d', N'模板管理删除', NULL, NULL, NULL, NULL, N'2', N'message:template:del',N'1', NULL, N'0', NULL, N'1', N'1',N'0',N'0', NULL, N'admin', N'2023-08-02 16:45:10', NULL, NULL,N'0',N'0', N'1', N'0');
GO
INSERT INTO [dbo].[sys_permission] ([id], [parent_id], [name], [url], [component], [component_name], [redirect], [menu_type], [perms], [perms_type], [sort_no], [always_show], [icon], [is_route], [is_leaf], [keep_alive], [hidden], [description], [create_by], [create_time], [update_by], [update_time], [del_flag], [rule_flag], [status], [internal_or_external]) VALUES (N'1686659307314450434', N'f780d0d3083d849ccbdb1b1baee4911d', N'模板管理发送', NULL, NULL, NULL, NULL, N'2', N'message:template:send',N'1', NULL, N'0', NULL, N'1', N'1',N'0',N'0', NULL, N'admin', N'2023-08-02 16:44:50', NULL, NULL,N'0',N'0', N'1', N'0');
GO
INSERT INTO [dbo].[sys_permission] ([id], [parent_id], [name], [url], [component], [component_name], [redirect], [menu_type], [perms], [perms_type], [sort_no], [always_show], [icon], [is_route], [is_leaf], [keep_alive], [hidden], [description], [create_by], [create_time], [update_by], [update_time], [del_flag], [rule_flag], [status], [internal_or_external]) VALUES (N'1686659223738748930', N'f780d0d3083d849ccbdb1b1baee4911d', N'模板管理编辑', NULL, NULL, NULL, NULL, N'2', N'message:template:edit',N'1', NULL, N'0', NULL, N'1', N'1',N'0',N'0', NULL, N'admin', N'2023-08-02 16:44:30', NULL, NULL,N'0',N'0', N'1', N'0');
GO
INSERT INTO [dbo].[sys_permission] ([id], [parent_id], [name], [url], [component], [component_name], [redirect], [menu_type], [perms], [perms_type], [sort_no], [always_show], [icon], [is_route], [is_leaf], [keep_alive], [hidden], [description], [create_by], [create_time], [update_by], [update_time], [del_flag], [rule_flag], [status], [internal_or_external]) VALUES (N'1686658970264375298', N'f780d0d3083d849ccbdb1b1baee4911d', N'模板管理新增', NULL, NULL, NULL, NULL, N'2', N'message:template:add', N'1', NULL, N'0', NULL, N'1', N'1',N'0',N'0', NULL, N'admin', N'2023-08-02 16:43:30', NULL, NULL,N'0',N'0', N'1', N'0');
GO
INSERT INTO [dbo].[sys_permission] ([id], [parent_id], [name], [url], [component], [component_name], [redirect], [menu_type], [perms], [perms_type], [sort_no], [always_show], [icon], [is_route], [is_leaf], [keep_alive], [hidden], [description], [create_by], [create_time], [update_by], [update_time], [del_flag], [rule_flag], [status], [internal_or_external]) VALUES (N'1686660980820774914', N'e08cb190ef230d5d4f03824198773950', N'系统通告发布', NULL, NULL, NULL, NULL, N'2', N'annount:cement:send',N'1', NULL, N'0', NULL, N'1', N'1',N'0',N'0', NULL, N'admin', N'2023-08-02 16:51:29', NULL, NULL,N'0',N'0', N'1', N'0');
GO
INSERT INTO [dbo].[sys_permission] ([id], [parent_id], [name], [url], [component], [component_name], [redirect], [menu_type], [perms], [perms_type], [sort_no], [always_show], [icon], [is_route], [is_leaf], [keep_alive], [hidden], [description], [create_by], [create_time], [update_by], [update_time], [del_flag], [rule_flag], [status], [internal_or_external]) VALUES (N'1686660931642560514', N'e08cb190ef230d5d4f03824198773950', N'系统通告删除', NULL, NULL, NULL, NULL, N'2', N'annount:cement:del',N'1', NULL, N'0', NULL, N'1', N'1',N'0',N'0', NULL, N'admin', N'2023-08-02 16:51:17', NULL, NULL,N'0',N'0', N'1', N'0');
GO
INSERT INTO [dbo].[sys_permission] ([id], [parent_id], [name], [url], [component], [component_name], [redirect], [menu_type], [perms], [perms_type], [sort_no], [always_show], [icon], [is_route], [is_leaf], [keep_alive], [hidden], [description], [create_by], [create_time], [update_by], [update_time], [del_flag], [rule_flag], [status], [internal_or_external]) VALUES (N'1686660848121384962', N'e08cb190ef230d5d4f03824198773950', N'系统通告编辑', NULL, NULL, NULL, NULL, N'2', N'annount:cement:edit',N'1', NULL, N'0', NULL, N'1', N'1',N'0',N'0', NULL, N'admin', N'2023-08-02 16:50:57', NULL, NULL,N'0',N'0', N'1', N'0');
GO
INSERT INTO [dbo].[sys_permission] ([id], [parent_id], [name], [url], [component], [component_name], [redirect], [menu_type], [perms], [perms_type], [sort_no], [always_show], [icon], [is_route], [is_leaf], [keep_alive], [hidden], [description], [create_by], [create_time], [update_by], [update_time], [del_flag], [rule_flag], [status], [internal_or_external]) VALUES (N'1686660721424044033', N'e08cb190ef230d5d4f03824198773950', N'系统通告添加', NULL, NULL, NULL, NULL, N'2', N'annount:cement:add',N'1', NULL, N'0', NULL, N'1', N'1',N'0',N'0', NULL, N'admin', N'2023-08-02 16:50:27', NULL, NULL,N'0',N'0', N'1', N'0');
GO
-- ----------------------------
-- Table structure for sys_permission_data_rule
-- ----------------------------
@@ -6398,6 +6420,28 @@ GO
INSERT INTO [dbo].[sys_role_permission] ([id], [role_id], [permission_id], [data_rule_ids], [operate_date], [operate_ip]) VALUES (N'2397963dc5f14fd3aecfc7045a883422', N'f6817f48af4fb3af11b9e8bf182f618b', N'1674617125092679682', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[sys_role_permission] ([id], [role_id], [permission_id], [data_rule_ids], [operate_date], [operate_ip]) VALUES (N'1686668068762521602', N'f6817f48af4fb3af11b9e8bf182f618b', N'1686660721424044033', NULL, N'2023-08-02 17:19:39', N'127.0.0.1');
GO
INSERT INTO [dbo].[sys_role_permission] ([id], [role_id], [permission_id], [data_rule_ids], [operate_date], [operate_ip]) VALUES (N'1686668068762521603', N'f6817f48af4fb3af11b9e8bf182f618b', N'1686660848121384962', NULL, N'2023-08-02 17:19:39', N'127.0.0.1');
GO
INSERT INTO [dbo].[sys_role_permission] ([id], [role_id], [permission_id], [data_rule_ids], [operate_date], [operate_ip]) VALUES (N'1686668068762521604', N'f6817f48af4fb3af11b9e8bf182f618b', N'1686660931642560514', NULL, N'2023-08-02 17:19:39', N'127.0.0.1');
GO
INSERT INTO [dbo].[sys_role_permission] ([id], [role_id], [permission_id], [data_rule_ids], [operate_date], [operate_ip]) VALUES (N'1686668068762521605', N'f6817f48af4fb3af11b9e8bf182f618b', N'1686660980820774914', NULL, N'2023-08-02 17:19:39', N'127.0.0.1');
GO
INSERT INTO [dbo].[sys_role_permission] ([id], [role_id], [permission_id], [data_rule_ids], [operate_date], [operate_ip]) VALUES (N'1686668068762521606', N'f6817f48af4fb3af11b9e8bf182f618b', N'1686658970264375298', NULL, N'2023-08-02 17:19:39', N'127.0.0.1');
GO
INSERT INTO [dbo].[sys_role_permission] ([id], [role_id], [permission_id], [data_rule_ids], [operate_date], [operate_ip]) VALUES (N'1686668068762521607', N'f6817f48af4fb3af11b9e8bf182f618b', N'1686659223738748930', NULL, N'2023-08-02 17:19:39', N'127.0.0.1');
GO
INSERT INTO [dbo].[sys_role_permission] ([id], [role_id], [permission_id], [data_rule_ids], [operate_date], [operate_ip]) VALUES (N'1686668068762521608', N'f6817f48af4fb3af11b9e8bf182f618b', N'1686659307314450434', NULL, N'2023-08-02 17:19:39', N'127.0.0.1');
GO
INSERT INTO [dbo].[sys_role_permission] ([id], [role_id], [permission_id], [data_rule_ids], [operate_date], [operate_ip]) VALUES (N'1686668068762521609', N'f6817f48af4fb3af11b9e8bf182f618b', N'1686659391968088066', NULL, N'2023-08-02 17:19:39', N'127.0.0.1');
GO
INSERT INTO [dbo].[sys_role_permission] ([id], [role_id], [permission_id], [data_rule_ids], [operate_date], [operate_ip]) VALUES (N'1686668068762521610', N'f6817f48af4fb3af11b9e8bf182f618b', N'1686659469529157634', NULL, N'2023-08-02 17:19:39', N'127.0.0.1');
GO
INSERT INTO [dbo].[sys_role_permission] ([id], [role_id], [permission_id], [data_rule_ids], [operate_date], [operate_ip]) VALUES (N'1686668068762521611', N'f6817f48af4fb3af11b9e8bf182f618b', N'1686659720189153281', NULL, N'2023-08-02 17:19:39', N'127.0.0.1');
GO
INSERT INTO [dbo].[sys_role_permission] ([id], [role_id], [permission_id], [data_rule_ids], [operate_date], [operate_ip]) VALUES (N'1686668068762521612', N'f6817f48af4fb3af11b9e8bf182f618b', N'1686657083884539905', NULL, N'2023-08-02 17:19:39', N'127.0.0.1');
GO
-- ----------------------------
-- Table structure for sys_sms
-- ----------------------------
@@ -16,10 +16,13 @@ public class LogDTO implements Serializable {
/**内容*/
private String logContent;
/**日志类型(0:操作日志;1:登录日志;2:定时任务) */
/** 日志类型1登录日志,2操作日志) */
private Integer logType;
/**操作类型(1:添加;2:修改;3:删除;) */
/**
* 操作类型(1查询,2添加,3修改,4删除,5导入,6导出)
*/
private Integer operateType;
/**登录用户 */
@@ -33,7 +33,7 @@ public @interface AutoLog {
/**
* 操作日志类型
*
* @return 1查询,2添加,3修改,4删除)
* @return 1查询,2添加,3修改,4删除,5导入,6导出
*/
int operateType() default 0;
@@ -84,7 +84,8 @@ public class YouBianCodeUtil {
return getNextYouBianCode(localCode);
}else{
parentCode = parentCode + "A"+ getNextStrNum(0);
int num = Integer.parseInt(localCode.substring(localCode.length()-2,localCode.length()));
parentCode = parentCode + "A"+ getNextStrNum(num);
}
return parentCode;
}
@@ -31,4 +31,14 @@ public interface BaseCommonService {
*/
void addLog(String logContent, Integer logType, Integer operateType);
/**
* 保存日志 耗时
* @param logContent
* @param logType
* @param operatetype
* @param user
* @param cost_time
*/
void addLog(String logContent, Integer logType, Integer operatetype, LoginUser user,Long cost_time);
}
@@ -1,26 +1,20 @@
package com.jero.modules.base.service.impl;
import com.baomidou.mybatisplus.core.toolkit.IdWorker;
import lombok.extern.slf4j.Slf4j;
import org.apache.shiro.SecurityUtils;
import com.jero.common.api.dto.LogDTO;
import com.jero.common.constant.CacheConstant;
import com.jero.modules.base.mapper.BaseCommonMapper;
import com.jero.modules.base.service.BaseCommonService;
import com.jero.common.system.vo.LoginUser;
import com.jero.common.system.vo.SysPermissionDataRuleModel;
import com.jero.common.system.vo.SysUserCacheInfo;
import com.jero.common.util.IPUtils;
import com.jero.common.util.SpringContextUtils;
import com.jero.common.util.oConvertUtils;
import org.springframework.cache.annotation.Cacheable;
import com.jero.modules.base.mapper.BaseCommonMapper;
import com.jero.modules.base.service.BaseCommonService;
import lombok.extern.slf4j.Slf4j;
import org.apache.shiro.SecurityUtils;
import org.springframework.stereotype.Service;
import org.springframework.util.AntPathMatcher;
import org.springframework.util.PathMatcher;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.util.*;
import java.util.Date;
@Service
@Slf4j
@@ -87,5 +81,44 @@ public class BaseCommonServiceImpl implements BaseCommonService {
}
@Override
public void addLog(String logContent, Integer logType, Integer operatetype, LoginUser user,Long cost_time) {
LogDTO sysLog = new LogDTO();
sysLog.setId(String.valueOf(IdWorker.getId()));
//注解上的描述,操作日志内容
sysLog.setLogContent(logContent);
sysLog.setLogType(logType);
sysLog.setOperateType(operatetype);
sysLog.setCostTime(cost_time);
try {
//获取request
HttpServletRequest request = SpringContextUtils.getHttpServletRequest();
//设置IP地址
sysLog.setIp(IPUtils.getIpAddr(request));
} catch (Exception e) {
sysLog.setIp("127.0.0.1");
}
//获取登录用户信息
if(user==null){
try {
user = (LoginUser) SecurityUtils.getSubject().getPrincipal();
} catch (Exception e) {
log.error("异常",e.getMessage());
}
}
if(user!=null){
sysLog.setUserid(user.getUsername());
sysLog.setUsername(user.getRealname());
}
sysLog.setCreateTime(new Date());
//保存日志(异常捕获处理,防止数据太大存储失败,导致业务失败)JT-238
try {
baseCommonMapper.saveLog(sysLog);
} catch (Exception e) {
log.warn(" LogContent length : "+sysLog.getLogContent().length());
log.warn(e.getMessage());
}
}
}
@@ -11,6 +11,7 @@ import com.jero.modules.message.service.ISysMessageService;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang.StringUtils;
import org.apache.poi.ss.formula.functions.T;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.servlet.ModelAndView;
@@ -43,6 +44,7 @@ public class SysMessageController extends JeroController<SysMessage, ISysMessage
* @return
*/
@GetMapping(value = "/page")
@RequiresPermissions("message:list")
public Results<IPage<SysMessage>> queryPageList(SysMessage sysMessage, @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize, HttpServletRequest req) {
QueryWrapper<SysMessage> queryWrapper = QueryGenerator.initQueryWrapper(sysMessage, req.getParameterMap());
@@ -83,6 +85,7 @@ public class SysMessageController extends JeroController<SysMessage, ISysMessage
* @return
*/
@PostMapping(value = "/delete")
@RequiresPermissions("message:del")
public Results<T> delete(@RequestBody Map<String, String> map) {
String id = map.get("id");
if(StringUtils.isBlank(id)){
@@ -14,6 +14,7 @@ import com.jero.modules.message.util.PushMsgUtil;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang.StringUtils;
import org.apache.poi.ss.formula.functions.T;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.servlet.ModelAndView;
@@ -48,6 +49,7 @@ public class SysMessageTemplateController extends JeroController<SysMessageTempl
* @return
*/
@GetMapping(value = "/page")
@RequiresPermissions("message:template:list")
public Results<IPage<SysMessageTemplate>> queryPageList(SysMessageTemplate sysMessageTemplate, @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize, HttpServletRequest req) {
QueryWrapper<SysMessageTemplate> queryWrapper = QueryGenerator.initQueryWrapper(sysMessageTemplate, req.getParameterMap());
@@ -63,6 +65,7 @@ public class SysMessageTemplateController extends JeroController<SysMessageTempl
* @return
*/
@PostMapping(value = "/add")
@RequiresPermissions("message:template:add")
public Results<T> add(@RequestBody SysMessageTemplate sysMessageTemplate) {
sysMessageTemplateService.save(sysMessageTemplate);
return Results.OK("操作成功!");
@@ -75,6 +78,7 @@ public class SysMessageTemplateController extends JeroController<SysMessageTempl
* @return
*/
@PostMapping(value = "/edit")
@RequiresPermissions("message:template:edit")
public Results<T> edit(@RequestBody SysMessageTemplate sysMessageTemplate) {
sysMessageTemplateService.updateById(sysMessageTemplate);
return Results.OK("更新成功!");
@@ -87,6 +91,7 @@ public class SysMessageTemplateController extends JeroController<SysMessageTempl
* @return
*/
@PostMapping(value = "/delete")
@RequiresPermissions("message:template:del")
public Results<T> delete(@RequestBody Map<String, String> map) {
String id = map.get("id");
if(StringUtils.isBlank(id)){
@@ -130,6 +135,7 @@ public class SysMessageTemplateController extends JeroController<SysMessageTempl
* @param request
*/
@GetMapping(value = "/exportXls")
@RequiresPermissions("message:template:export")
public ModelAndView exportXls(HttpServletRequest request,SysMessageTemplate sysMessageTemplate) {
return super.exportXls(request, sysMessageTemplate, SysMessageTemplate.class,"推送消息模板");
}
@@ -142,6 +148,7 @@ public class SysMessageTemplateController extends JeroController<SysMessageTempl
* @return
*/
@PostMapping(value = "/importExcel")
@RequiresPermissions("message:template:import")
public Results<SysMessageTemplate> importExcel(HttpServletRequest request, HttpServletResponse response) {
return super.importExcel(request, response, SysMessageTemplate.class);
}
@@ -150,6 +157,7 @@ public class SysMessageTemplateController extends JeroController<SysMessageTempl
* 发送消息
*/
@PostMapping(value = "/sendMsg")
@RequiresPermissions("message:template:send")
public Results<Object> sendMessage(@RequestBody MsgParams msgParams) {
Map<String, String> map = null;
try {
@@ -1,21 +1,20 @@
package com.jero.modules.system.controller;
import javax.servlet.http.HttpServletRequest;
import com.jero.common.api.vo.Results;
import com.jero.common.util.PasswordUtil;
import org.apache.commons.lang.StringUtils;
import com.jero.common.util.SqlInjectionUtil;
import com.jero.modules.system.mapper.SysDictMapper;
import com.jero.modules.system.model.DuplicateCheckVo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import javax.servlet.http.HttpServletRequest;
/**
* @Title: DuplicateCheckAction
@@ -48,7 +47,7 @@ public class DuplicateCheckController {
//SQL注入校验(只限制非法串改数据库)
final String[] sqlInjCheck = {duplicateCheckVo.getTableName(),duplicateCheckVo.getFieldName()};
SqlInjectionUtil.filterContent(sqlInjCheck);
if ("phone".equals(duplicateCheckVo.getFieldName())) {
if ("phone".equals(duplicateCheckVo.getFieldName()) || "email".equals(duplicateCheckVo.getFieldName())) {
if (StringUtils.isNotBlank(duplicateCheckVo.getFieldVal())) {
duplicateCheckVo.setFieldVal(PasswordUtil.encrypt(duplicateCheckVo.getFieldVal()));
}
@@ -6,11 +6,11 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.jero.common.api.vo.Results;
import com.jero.common.aspect.annotation.AutoLog;
import com.jero.common.constant.CommonConstant;
import com.jero.common.constant.CommonSendStatus;
import com.jero.common.constant.WebsocketConst;
import com.jero.common.system.api.ISysBaseAPI;
import com.jero.common.system.base.controller.JeroController;
import com.jero.common.system.util.JwtUtil;
import com.jero.common.system.vo.LoginUser;
import com.jero.common.util.RedisUtil;
@@ -26,23 +26,15 @@ import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang.StringUtils;
import org.apache.poi.ss.formula.functions.T;
import org.apache.shiro.SecurityUtils;
import org.jeecgframework.poi.excel.ExcelImportUtil;
import org.jeecgframework.poi.excel.def.NormalExcelConstants;
import org.jeecgframework.poi.excel.entity.ExportParams;
import org.jeecgframework.poi.excel.entity.ImportParams;
import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Lazy;
import org.springframework.http.HttpStatus;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;
import org.springframework.web.servlet.ModelAndView;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
@@ -84,6 +76,8 @@ public class SysAnnouncementController {
* @return
*/
@GetMapping("/page")
@AutoLog(operateType = 1,value = "查询系统通告")
@RequiresPermissions("system:list")
public Results<IPage<SysAnnouncement>> queryPageList(SysAnnouncement sysAnnouncement,
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
@@ -114,6 +108,8 @@ public class SysAnnouncementController {
* @return
*/
@PostMapping("/add")
@AutoLog(operateType = 2,value = "新增系统通告")
@RequiresPermissions("annount:cement:add")
public Results<Object> add(@RequestBody SysAnnouncement sysAnnouncement) {
try {
// update-begin-author:liusq date:20210804 for:标题处理xss攻击的问题
@@ -136,6 +132,8 @@ public class SysAnnouncementController {
* @return
*/
@PostMapping("/edit")
@AutoLog(operateType = 3,value = "修改系统通告")
@RequiresPermissions("annount:cement:edit")
public Results<Object> eidt(@RequestBody SysAnnouncement sysAnnouncement) {
SysAnnouncement sysAnnouncementEntity = sysAnnouncementService.getById(sysAnnouncement.getId());
if(sysAnnouncementEntity==null) {
@@ -160,6 +158,8 @@ public class SysAnnouncementController {
* @return
*/
@PostMapping("/delete")
@AutoLog(operateType = 4,value = "删除系统通告")
@RequiresPermissions("annount:cement:del")
public Results<Object> delete(@RequestBody Map<String, String> map) {
String id = map.get("id");
if(StringUtils.isBlank(id)){
@@ -185,6 +185,7 @@ public class SysAnnouncementController {
* @return
*/
@PostMapping("/deleteBatch")
@AutoLog(operateType = 4,value = "批量删除系统通告")
public Results<T> deleteBatch(@RequestBody Map<String, String> map) {
String ids = map.get("ids");
if(ids==null || "".equals(ids.trim())) {
@@ -221,6 +222,7 @@ public class SysAnnouncementController {
* @return
*/
@GetMapping("/doReleaseData")
@RequiresPermissions("annount:cement:send")
public Results<SysAnnouncement> doReleaseData(@RequestParam(name="id",required=true) String id, HttpServletRequest request) {
SysAnnouncement sysAnnouncement = sysAnnouncementService.getById(id);
if(sysAnnouncement==null) {
@@ -15,6 +15,7 @@ import com.jero.modules.system.service.ISysAnnouncementSendService;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang.StringUtils;
import org.apache.shiro.SecurityUtils;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@@ -187,6 +188,7 @@ public class SysAnnouncementSendController {
* @return
*/
@GetMapping(value = "/getMyAnnouncementSend")
@RequiresPermissions("my:mesg:list")
public Results<IPage<AnnouncementSendModel>> getMyAnnouncementSend(AnnouncementSendModel announcementSendModel,
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize) {
@@ -16,6 +16,7 @@ import com.jero.common.util.YouBianCodeUtil;
import com.jero.common.util.oConvertUtils;
import com.jero.modules.system.entity.SysDepart;
import com.jero.modules.system.entity.SysUser;
import com.jero.modules.system.mapper.SysDepartMapper;
import com.jero.modules.system.model.DepartIdModel;
import com.jero.modules.system.service.ISysDepartService;
import com.jero.modules.system.service.ISysUserDepartService;
@@ -62,6 +63,9 @@ public class SysDepartController {
private ISysUserService sysUserService;
@Autowired
private ISysUserDepartService sysUserDepartService;
@Autowired
private SysDepartMapper sysDepartMapper;
/**
* 查询数据 查出我的部门,并以树结构数据格式响应给前端
*
@@ -171,6 +175,10 @@ public class SysDepartController {
public Results<Object> add(@RequestBody SysDepart sysDepart, HttpServletRequest request) {
String username = JwtUtil.getUserNameByToken(request);
try {
long count = sysDepartMapper.selectCountByPId(sysDepart);
if(count > 0){
return Results.error("同级目录下,名称不能重复");
}
sysDepart.setCreateBy(username);
sysDepartService.saveDepartData(sysDepart, username);
return Results.OK("操作成功!");
@@ -191,6 +199,10 @@ public class SysDepartController {
@PostMapping("/edit")
@CacheEvict(value= {CacheConstant.SYS_DEPARTS_CACHE,CacheConstant.SYS_DEPART_IDS_CACHE}, allEntries=true)
public Results<Object> edit(@RequestBody SysDepart sysDepart, HttpServletRequest request) {
long count = sysDepartMapper.selectCountByPId(sysDepart);
if(count > 0){
return Results.error("同级目录下,名称不能重复");
}
String username = JwtUtil.getUserNameByToken(request);
sysDepart.setUpdateBy(username);
SysDepart sysDepartEntity = sysDepartService.getById(sysDepart.getId());
@@ -376,7 +388,7 @@ public class SysDepartController {
return ImportExcelUtil.imporReturnRes(errorMessageList.size(), listSysDeparts.size() - errorMessageList.size(), errorMessageList);
} catch (Exception e) {
log.error(e.getMessage(),e);
return Results.error("文件导入失败:"+e.getMessage());
return Results.error("导入失败,请联系管理员");
} finally {
try {
file.getInputStream().close();
@@ -11,6 +11,7 @@ import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.jero.common.api.vo.Results;
import com.jero.common.aspect.annotation.AutoLog;
import com.jero.common.aspect.annotation.PermissionData;
import com.jero.common.constant.CommonConstant;
import com.jero.common.exception.JeroBootException;
@@ -21,6 +22,8 @@ import com.jero.common.system.util.JwtUtil;
import com.jero.common.system.vo.LoginUser;
import com.jero.common.util.*;
import com.jero.modules.base.service.BaseCommonService;
import com.jero.modules.system.dto.SysUserDTO;
import com.jero.modules.system.dto.SysUserRoleDTO;
import com.jero.modules.system.entity.*;
import com.jero.modules.system.model.DepartIdModel;
import com.jero.modules.system.model.SysUserSysDepartModel;
@@ -165,6 +168,7 @@ public class SysUserController {
@RequiresPermissions("user:add")
@PostMapping("/add")
@AutoLog(operateType = 2,value = "用户新增")
public Results<Object> add(@RequestBody JSONObject jsonObject) {
try {
String selectedRoles = jsonObject.getString(SELECTED_ROLES);
@@ -176,6 +180,8 @@ public class SysUserController {
this.setUserInfo(rsaPrivateKey, user);
// 保存用户走一个service 保证事务
String id = UUID.randomUUID().toString().replace("-", "");
user.setId(id);
sysUserService.saveUser(user, selectedRoles, selectedDeparts);
return Results.OK(OPTION_SUCCESS);
} catch (Exception e) {
@@ -217,6 +223,7 @@ public class SysUserController {
@RequiresPermissions("user:edit")
@PostMapping("/edit")
@AutoLog(operateType = 3,value = "用户编辑")
public Results<SysUser> edit(@RequestBody JSONObject jsonObject) {
String rsaPublicKey = jsonObject.getString(RSA_PUBLIC_KEY);
String roles = jsonObject.getString(SELECTED_ROLES);
@@ -224,13 +231,13 @@ public class SysUserController {
String rsaPrivateKey = String.valueOf(redisUtil.get(rsaPublicKey));
try {
SysUser sysUser = sysUserService.getById(jsonObject.getString("id"));
baseCommonService.addLog("编辑用户,id " +jsonObject.getString("id") ,CommonConstant.LOG_TYPE_2, 2);
if(sysUser==null) {
return Results.error(INEXISTENCE);
}else {
SysUser user = getSysUser(jsonObject, rsaPrivateKey, sysUser);
// 修改用户走一个service 保证事务
sysUserService.editUser(user, roles, departs);
return Results.OK(OPTION_SUCCESS);
}
} catch (Exception e) {
@@ -266,25 +273,27 @@ public class SysUserController {
@PostMapping("/delete")
@RequiresPermissions("sys:user:sel")
public Results<T> delete(@RequestBody Map<String,String> map) {
@AutoLog(operateType = 4,value = "用户删除")
public Results<String> delete(@RequestBody Map<String,String> map) {
String id = map.get("id");
if(StringUtils.isBlank(id)){
return Results.error("参数不识别!");
}
baseCommonService.addLog("删除用户,id " +id ,CommonConstant.LOG_TYPE_2, 3);
this.sysUserService.deleteUser(id);
return Results.OK("删除用户成功");
return Results.OK("删除用户成功");
}
@PostMapping("/deleteBatch")
@RequiresPermissions("sys:user:sel")
public Results<T> deleteBatch(@RequestBody Map<String, String> map) {
@AutoLog(operateType = 4,value = "用户批量删除")
public Results<String> deleteBatch(@RequestBody Map<String, String> map) {
String ids = map.get("ids");
if(StringUtils.isBlank(ids)){
return Results.error("参数不识别!");
}
baseCommonService.addLog("批量删除用户, ids " +ids ,CommonConstant.LOG_TYPE_2, 3);
this.sysUserService.deleteBatchUsers(ids);
return Results.OK("批量删除用户成功");
}
@@ -765,12 +774,13 @@ public class SysUserController {
*/
@PostMapping("/deleteUserRole")
@RequiresPermissions("sys:user:sel")
public Results<Object> deleteUserRole(@RequestParam(name="roleId") String roleId,
@RequestParam(name="userId",required=true) String userId) {
try {
QueryWrapper<SysUserRole> queryWrapper = new QueryWrapper<>();
queryWrapper.eq(ROLE_ID, roleId).eq(USER_ID,userId);
sysUserRoleService.remove(queryWrapper);
public Results<Object> deleteUserRole(@RequestBody SysUserRoleDTO sysUserRole) {
try {
String userId = sysUserRole.getUserId();
String roleId = sysUserRole.getRoleId();
QueryWrapper<SysUserRole> queryWrapper = new QueryWrapper<>();
queryWrapper.eq(ROLE_ID, roleId).eq(USER_ID,userId);
sysUserRoleService.remove(queryWrapper);
return Results.OK(DEL_SUCCESS);
}catch(Exception e) {
SysUserController.log.error(e.getMessage(), e);
@@ -786,10 +796,10 @@ public class SysUserController {
*/
@PostMapping("/deleteUserRoleBatch")
@RequiresPermissions("sys:user:sel")
public Results<SysUserRole> deleteUserRoleBatch(
@RequestParam(name="roleId") String roleId,
@RequestParam(name="userIds",required=true) String userIds) {
public Results<SysUserRole> deleteUserRoleBatch(@RequestBody SysUserRole sysUserRole) {
try {
String roleId = sysUserRole.getRoleId();
String userIds = sysUserRole.getUserIds();
QueryWrapper<SysUserRole> queryWrapper = new QueryWrapper<>();
queryWrapper.eq(ROLE_ID, roleId).in(USER_ID,Arrays.asList(userIds.split(",")));
sysUserRoleService.remove(queryWrapper);
@@ -1226,7 +1236,8 @@ public class SysUserController {
*/
@PostMapping("/deleteRecycleBin")
@RequiresPermissions("sys:user:sel")
public Results<T> deleteRecycleBin(@RequestParam("userIds") String userIds) {
public Results<T> deleteRecycleBin(@RequestBody SysUserDTO sysUser) {
String userIds = sysUser.getUserIds();
if (StringUtils.isNotBlank(userIds)) {
sysUserService.removeLogicDeleted(Arrays.asList(userIds.split(",")));
}
@@ -1244,9 +1255,9 @@ public class SysUserController {
public Results<SysUser> appEdit(HttpServletRequest request, @RequestBody JSONObject jsonObject) {
Results<SysUser> result = new Results<>();
try {
long startTime = System.currentTimeMillis();
String username = JwtUtil.getUserNameByToken(request);
SysUser sysUser = sysUserService.getUserByName(username);
baseCommonService.addLog("移动端编辑用户,id " +jsonObject.getString("id") ,CommonConstant.LOG_TYPE_2, 2);
String realname=jsonObject.getString("realname");
String avatar=jsonObject.getString("avatar");
String sex=jsonObject.getString("sex");
@@ -1266,6 +1277,10 @@ public class SysUserController {
setUserInfo(sysUser, realname, avatar, sex, phone, email, birthday);
sysUserService.updateById(sysUser);
}
long endTime = System.currentTimeMillis();
long costTime = endTime - startTime;
baseCommonService.addLog("移动端编辑用户,id " +jsonObject.getString("id") ,CommonConstant.LOG_TYPE_2, 3,null,
costTime);
} catch (Exception e) {
SysUserController.log.error(e.getMessage(), e);
return Results.error("操作失败!");
@@ -1442,12 +1457,14 @@ public class SysUserController {
@PostMapping(value = "/setRole")
public Results<SysUser> setRole(@RequestBody JSONObject jsonObject) {
try {
long startTime = System.currentTimeMillis();
String ids = jsonObject.getString("ids");
String roles = jsonObject.getString(SELECTED_ROLES);
List<String> idList = Arrays.asList(ids.split(","));
long endTime;
long costTime;
for (String id : idList) {
SysUser sysUser = sysUserService.getById(id);
baseCommonService.addLog("编辑用户角色,id " + id, CommonConstant.LOG_TYPE_2, 2);
if (sysUser == null) {
return Results.error(INEXISTENCE);
} else {
@@ -1455,6 +1472,9 @@ public class SysUserController {
user.setId(id);
user.setUpdateTime(new Date());
sysUserService.addRoleToUser(user, roles);
endTime = System.currentTimeMillis();
costTime = endTime - startTime;
baseCommonService.addLog("编辑用户角色,id " + id, CommonConstant.LOG_TYPE_2, 3,null,costTime);
}
}
} catch (Exception e) {
@@ -0,0 +1,163 @@
package com.jero.modules.system.dto;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.jero.common.aspect.annotation.Dict;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
import java.util.Date;
/**
* <p>
* 用户表
* </p>
*
* @Author scott
* @since 2018-12-20
*/
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
public class SysUserDTO implements Serializable {
private static final long serialVersionUID = 1L;
/**
* id
*/
private String id;
/**
* 登录账号
*/
private String username;
/**
* 真实姓名
*/
private String realname;
/**
* 密码
*/
@JsonProperty(access = JsonProperty.Access.WRITE_ONLY)
private String password;
/**
* md5密码盐
*/
@JsonProperty(access = JsonProperty.Access.WRITE_ONLY)
private String salt;
/**
* 头像
*/
private String avatar;
/**
* 生日
*/
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date birthday;
/**
* 性别1 2
*/
@Dict(dicCode = "sex")
private Integer sex;
/**
* 电子邮件
*/
private String email;
/**
* 电话
*/
private String phone;
/**
* 部门code(当前选择登录部门)
*/
private String orgCode;
/**部门名称*/
private transient String orgCodeTxt;
/**角色名称*/
private transient String roleTxt;
/**
* 状态(1正常 2冻结
*/
@Dict(dicCode = "user_status")
private Integer status;
/**
* 删除状态0正常1已删除
*/
@TableLogic
private Integer delFlag;
/**
* 工号唯一键
*/
private String workNo;
/**
* 座机号
*/
private String telephone;
/**
* 创建人
*/
private String createBy;
/**
* 创建时间
*/
private Date createTime;
/**
* 更新人
*/
private String updateBy;
/**
* 更新时间
*/
private Date updateTime;
/**
* 同步工作流引擎1同步0不同步
*/
private Integer activitiSync;
/**
* 身份0 普通成员 1 上级
*/
private Integer userIdentity;
/**
* 负责部门
*/
@Dict(dictTable ="sys_depart",dicText = "depart_name",dicCode = "id")
private String departIds;
/**
* 多租户id配置编辑用户的时候设置
*/
private String relTenantIds;
/**设备id uniapp推送用*/
private String clientId;
private String userIds;
}
@@ -0,0 +1,53 @@
package com.jero.modules.system.dto;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import java.io.Serializable;
/**
* <p>
* 用户角色表
* </p>
*
* @Author scott
* @since 2018-12-21
*/
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
public class SysUserRoleDTO implements Serializable {
private static final long serialVersionUID = 1L;
@TableId(type = IdType.ASSIGN_ID)
private String id;
/**
* 用户id
*/
private String userId;
/**
* 角色id
*/
private String roleId;
@TableField(exist = false)
private String userIds;
public SysUserRoleDTO() {
}
public SysUserRoleDTO(String userId, String roleId) {
this.userId = userId;
this.roleId = roleId;
}
}
@@ -1,6 +1,7 @@
package com.jero.modules.system.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.fasterxml.jackson.annotation.JsonFormat;
@@ -175,4 +176,7 @@ public class SysUser implements Serializable {
/**设备id uniapp推送用*/
private String clientId;
@TableField(exist = false)
private String userIds;
}
@@ -1,14 +1,14 @@
package com.jero.modules.system.entity;
import java.io.Serializable;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import java.io.Serializable;
/**
* <p>
* 用户角色表
@@ -37,6 +37,9 @@ public class SysUserRole implements Serializable {
*/
private String roleId;
@TableField(exist = false)
private String userIds;
public SysUserRole() {
}
@@ -71,4 +71,7 @@ public interface SysDepartMapper extends BaseMapper<SysDepart> {
*/
@Select("SELECT * FROM sys_depart where del_flag ='0' AND parent_id = #{parentId,jdbcType=VARCHAR}")
List<SysDepart> queryDeptByPid(@Param("parentId")String parentId);
long selectCountByPId(@org.apache.ibatis.annotations.Param("pageVO") SysDepart sysDepart);
}
@@ -52,4 +52,24 @@
<select id="queryCompByOrgCode" resultType="com.jero.modules.system.entity.SysDepart">
select * from sys_depart where del_flag = '0' and org_category='1' and org_code= #{orgCode,jdbcType=VARCHAR}
</select>
<select id="selectCountByPId" resultType="java.lang.Long">
select count(1) from sys_depart
<where>
del_flag = '0'
<if test="pageVO.id != null and pageVO.id != ''">
and id != #{pageVO.id}
</if>
<if test="pageVO.parentId != null and pageVO.parentId != ''">
and parent_id = #{pageVO.parentId}
</if>
<if test="pageVO.departName != null and pageVO.departName != ''">
and depart_name = #{pageVO.departName}
</if>
</where>
</select>
</mapper>
@@ -146,7 +146,9 @@ public class LoginServiceImpl implements ILoginService {
//update-begin--Author:wangshuai Date:20200714 for登录日志没有记录人员
LoginUser loginUser = new LoginUser();
BeanUtils.copyProperties(sysUser, loginUser);
baseCommonService.addLog(USER_NAME + username + ",登录成功!", CommonConstant.LOG_TYPE_1, null,loginUser);
baseCommonService.addLog(USER_NAME + sysUser.getRealname() + ""+username+",登录成功!",
CommonConstant.LOG_TYPE_1, null,
loginUser);
//update-end--Author:wangshuai Date:20200714 for登录日志没有记录人员
return result;
@@ -191,7 +193,9 @@ public class LoginServiceImpl implements ILoginService {
LoginUser sysUser = sysBaseAPI.getUserByName(username);
if(sysUser!=null) {
//update-begin--Author:wangshuai Date:20200714 for登出日志没有记录人员
baseCommonService.addLog(USER_NAME+sysUser.getRealname()+",退出成功!", CommonConstant.LOG_TYPE_1, null,sysUser);
baseCommonService.addLog(USER_NAME+sysUser.getRealname()+""+sysUser.getUsername()+",退出成功!",
CommonConstant.LOG_TYPE_1, null,
sysUser);
//update-end--Author:wangshuai Date:20200714 for登出日志没有记录人员
log.info(" 用户名: "+sysUser.getRealname()+",退出成功! ");
//清空用户登录Token缓存
@@ -1,33 +1,37 @@
package com.jero.modules.system.service.impl;
import java.util.*;
import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.jero.common.system.vo.SysDepartTreeModel;
import com.jero.common.util.oConvertUtils;
import org.apache.commons.lang.StringUtils;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.jero.common.constant.CacheConstant;
import com.jero.common.constant.CommonConstant;
import com.jero.common.constant.FillRuleConstant;
import com.jero.common.system.vo.SysDepartTreeModel;
import com.jero.common.util.FillRuleUtil;
import com.jero.common.util.YouBianCodeUtil;
import com.jero.modules.system.entity.*;
import com.jero.modules.system.mapper.*;
import com.jero.common.util.oConvertUtils;
import com.jero.modules.system.entity.SysDepart;
import com.jero.modules.system.entity.SysDepartPermission;
import com.jero.modules.system.entity.SysUser;
import com.jero.modules.system.entity.SysUserDepart;
import com.jero.modules.system.mapper.SysDepartMapper;
import com.jero.modules.system.mapper.SysDepartPermissionMapper;
import com.jero.modules.system.mapper.SysUserDepartMapper;
import com.jero.modules.system.mapper.SysUserMapper;
import com.jero.modules.system.model.DepartIdModel;
import com.jero.modules.system.service.ISysDepartService;
import com.jero.modules.system.util.FindsDepartsChildrenUtil;
import io.netty.util.internal.StringUtil;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.cache.annotation.Cacheable;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import io.netty.util.internal.StringUtil;
import java.util.*;
/**
* <p>
@@ -278,7 +278,7 @@ jero:
# cors白名单
notFilter:
# origin地址
originIp: http://localhost:3000
originIp: http://localhost:3000,http://localhost:8080
# 加密默认值
password:
pbe:
@@ -205,9 +205,9 @@ jero :
uploadType: local
path :
#文件上传根目录 设置
upload: D://opt//upFiles
upload: G://opt//upFiles
#webapp文件路径
webapp: D://opt//webapp
webapp: G://opt//webapp
shiro:
excludeUrls: /test/jeroDemo/demo3,/test/jeroDemo/redisDemo/**,/category/**,/visual/**,/map/**,/jmreport/bigscreen2/**
#阿里云oss存储配置
+1
View File
@@ -45,6 +45,7 @@
<dom4j.version>1.6.1</dom4j.version>
<qiniu-java-sdk.version>7.4.0</qiniu-java-sdk.version>
<log4j2.version>2.15.0</log4j2.version>
<tomcat.version>9.0.69</tomcat.version>
</properties>
<modules>
+19355
View File
File diff suppressed because it is too large Load Diff
+8 -3
View File
@@ -2176,7 +2176,9 @@ this.tinycolor = tinycolor;
color: rgba(0, 0, 0, 0.45);
}
.layout .header {
background-color: @primary-color !important;
//background-color: @primary-color !important;
background-color: #fff !important;
}
i.trigger:hover {
background: rgba(0, 0, 0, 0.025);
@@ -2352,7 +2354,9 @@ i.trigger:hover {
background-color: white;
}
.sider.light .logo {
background-color: @primary-color !important;
//顶部logo背景的颜色变化 注释
//background-color: @primary-color !important;
background-color: #001529 !important;
box-shadow: 1px 1px 0 0 #e8e8e8;
}
.sider.light .logo h1 {
@@ -5347,7 +5351,8 @@ form .ant-upload {
border-radius: 4px;
}
.ant-menu-submenu > .ant-menu {
background-color: #fff;
//background-color: #fff;
background: none !important;
border-radius: 4px;
}
.ant-menu-submenu-vertical > .ant-menu-submenu-title .ant-menu-submenu-arrow:before,
+4 -1
View File
@@ -33,8 +33,11 @@ export default {
}
}
</script>
<style scoped lang="less">
<style lang="less">
#app {
height: 100%;
}
.ant-table-middle > .ant-table-content > .ant-table-header > table > .ant-table-thead > tr > th, .ant-table-middle > .ant-table-content > .ant-table-body > table > .ant-table-thead > tr > th, .ant-table-middle > .ant-table-content > .ant-table-scroll > .ant-table-header > table > .ant-table-thead > tr > th, .ant-table-middle > .ant-table-content > .ant-table-scroll > .ant-table-body > table > .ant-table-thead > tr > th, .ant-table-middle > .ant-table-content > .ant-table-fixed-left > .ant-table-header > table > .ant-table-thead > tr > th, .ant-table-middle > .ant-table-content > .ant-table-fixed-right > .ant-table-header > table > .ant-table-thead > tr > th, .ant-table-middle > .ant-table-content > .ant-table-fixed-left > .ant-table-body-outer > .ant-table-body-inner > table > .ant-table-thead > tr > th, .ant-table-middle > .ant-table-content > .ant-table-fixed-right > .ant-table-body-outer > .ant-table-body-inner > table > .ant-table-thead > tr > th, .ant-table-middle > .ant-table-content > .ant-table-header > table > .ant-table-tbody > tr > td, .ant-table-middle > .ant-table-content > .ant-table-body > table > .ant-table-tbody > tr > td, .ant-table-middle > .ant-table-content > .ant-table-scroll > .ant-table-header > table > .ant-table-tbody > tr > td, .ant-table-middle > .ant-table-content > .ant-table-scroll > .ant-table-body > table > .ant-table-tbody > tr > td, .ant-table-middle > .ant-table-content > .ant-table-fixed-left > .ant-table-header > table > .ant-table-tbody > tr > td, .ant-table-middle > .ant-table-content > .ant-table-fixed-right > .ant-table-header > table > .ant-table-tbody > tr > td, .ant-table-middle > .ant-table-content > .ant-table-fixed-left > .ant-table-body-outer > .ant-table-body-inner > table > .ant-table-tbody > tr > td, .ant-table-middle > .ant-table-content > .ant-table-fixed-right > .ant-table-body-outer > .ant-table-body-inner > table > .ant-table-tbody > tr > td {
padding: 9px 8px !important;
}
</style>
+1
View File
@@ -181,6 +181,7 @@ export function uploadAction (url, parameter) {
* @returns {*}
*/
export function getFileAccessHttpUrl (avatar, subStr) {
if (!subStr) subStr = 'http'
try {
if (avatar && avatar.startsWith(subStr)) {
Binary file not shown.

After

Width:  |  Height:  |  Size: 92 KiB

+27 -4
View File
@@ -1,7 +1,7 @@
/*列表上方操作按钮区域*/
.ant-card-body .table-operator {
margin-bottom: 8px;
//margin-bottom: 8px;
}
/** Button按钮间距 */
.table-operator .ant-btn {
@@ -12,7 +12,7 @@
}
.table-operator .ant-btn-group .ant-btn:last-child {
margin: 0 8px 8px 0;
margin: 0 8px 0px 0;
}
/*列表td的padding设置 可以控制列表大小*/
.ant-table-tbody .ant-table-row td {
@@ -38,8 +38,16 @@
}
/*列表中有图片的加这个样式 参考用户管理*/
.anty-img-wrap {
height: 25px;
height: 20px;
position: relative;
.ant-avatar.ant-avatar-icon {
font-size: 14px;
line-height: 20px;
}
.ant-avatar{
width: 20px;
height: 20px;
}
}
.anty-img-wrap > img {
max-height: 100%;
@@ -58,4 +66,19 @@
}
/**隐藏样式-modal确定按钮 */
.jee-hidden{display: none}
.jee-hidden{display: none}
.ant-col-md-6{
padding-left: 18px !important;
padding-right: 18px !important;
}
.table-page-search-wrapper .ant-form-inline .ant-form-item{
margin-bottom: 12px;
}
.ant-card-body .table-operator{
margin-bottom: 4px !important;
}
.ant-tabs-bar {
margin-bottom: 0px;
}
+4
View File
@@ -26,3 +26,7 @@ i {
background-color: rgba(255, 192, 203, 0.31);
color:red;
}
.ant-table-middle > .ant-table-content > .ant-table-body > table > .ant-table-tbody > tr > td {
padding: 9px 8px !important;
}
Binary file not shown.

After

Width:  |  Height:  |  Size: 576 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 192 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.4 KiB

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 KiB

+80 -1
View File
@@ -73,7 +73,7 @@ export default {
formData.append('file', blobInfo.blob(), blobInfo.filename())
formData.append('biz', 'jeditor')
formData.append('jeditor', '1')
uploadAction(window._CONFIG.domianURL + '/sys/common/upload', formData).then((res) => {
uploadAction('/sys/common/upload', formData).then((res) => {
if (res.success) {
if (res.message === 'local') {
const img = 'data:image/jpeg;base64,' + blobInfo.base64()
@@ -84,6 +84,28 @@ export default {
}
}
})
},
paste_postprocess: function(plugin, args) {
console.log(args.node,"kkkkkk");
args.node.setAttribute('id', 'hello');
},
init_instance_callback: editor => {
if (this.value) {
editor.setContent(this.value)
}
this.hasInit = true
editor.on('NodeChange Change KeyUp SetContent', () => {
this.hasChange = true
// const val = editor.getContent().replace(/<p><img\s?src="data.*?<\/p>/g, '')
this.$emit('input', editor.getContent())
})
editor.on('paste', evt => {
// 监听粘贴事件
console.log('监听粘贴事件', evt)
this.onPaste(evt)
})
}
},
myValue: this.value,
@@ -94,7 +116,64 @@ export default {
this.initATabsChangeAutoReload()
},
methods: {
onPaste(event, success, failure) {
// let _this = this
let self = this
// 实现图粘贴上传
const items = (event.clipboardData || window.clipboardData).items
// items为伪数组微信/QQ截图以及此富本区域内复制粘贴的length为1,标右键复制粘贴图以及本的复制粘贴的length为2
let len = items.length
for (let i = 0; i < len; i++) {
if (items[i].kind == "file" && items[i].type.indexOf("image") != -1) {
// 判断是否为图类型
event.preventDefault() // 如果是图动粘贴到富本编辑器
let file = items[i].getAsFile() // 获取件数据
let blob = new Blob([file], { type: file.type }) //实例化个blob 将图以及类型初始化到blob
// let index = file.name.lastIndexOf(".")
// let fileName =
// Date.now() + file.name.substring(index, file.name.length)
// fileName --- 名称可处理
console.log("粘贴的是图⽚类型", blob, file)
// let file = blobInfo.blob()
const isLt2M = file.size / 1024 < 500
if (!isLt2M) {
this.$message.warning("上传失败,图片不可超过500KB!")
return false
}
const formdate = new FormData()
formdate.append("file", file) //imageFile文件名和后端统一
uploadAction('/sys/common/upload', formdate).then((res) => {
debugger
if (res.success) {
if (res.message === 'local') {
const img = 'data:image/jpeg;base64,' + blob.base64()
editor.execCommand(
"mceReplaceContent",
false,
`<img class="wscnph" src="${img}" >`
);
} else {
const img = getFileAccessHttpUrl(res.message)
editor.execCommand(
"mceReplaceContent",
false,
`<img class="wscnph" src="${img}" >`
);
}
}
})
.catch(function(err) {
// 上传错误可给出提
self.$message.error(err)
})
} else {
// 不是图类型直接粘贴, 跳过oss上传处理
console.log("粘贴的不是图⽚")
}
}
},
reload () {
this.reloading = true
this.$nextTick(() => {
@@ -172,9 +172,15 @@ export default {
}
return file
})
} else {
// this.handleDelete(info.file)
this.fileList = []
this.$message.error(`上传失败`)
return
}
// this.$message.success(`${info.file.name} 上传成功!`);
} else if (info.file.status === 'error') {
this.$message.error(`${info.file.name} 上传失败.`)
} else if (info.file.status === 'removed') {
this.handleDelete(info.file)
@@ -206,7 +206,9 @@ export default {
}
}
}
.ant-modal-body{
height:500px !important;
}
.j-modal-title-row {
.left {
width: calc(100% - 56px - 56px);
+1 -1
View File
@@ -19,7 +19,7 @@
<a-button v-if="izMobile" type="primary" icon="delete" @click="handleReset"/>
</a-button-group>
</a-tooltip>
<a-button v-else type="primary" icon="filter" @click="handleOpen">高级查询</a-button>
<a-button v-else type="default" icon="filter" @click="handleOpen">高级查询</a-button>
</slot>
<j-modal
@@ -28,12 +28,13 @@
<a-col :md="8" :sm="8">
<span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
<a-button type="primary" @click="searchByquery" icon="search">查询</a-button>
<a-button type="primary" @click="searchReset" icon="reload" style="margin-left: 8px">重置</a-button>
<a @click="handleToggleSearch" style="margin-left: 8px">
<a @click="handleToggleSearch" style="margin-right: 28px">
{{ toggleSearchStatus ? '收起' : '展开' }}
<a-icon :type="toggleSearchStatus ? 'up' : 'down'"/>
</a>
<a-button type="primary" @click="searchByquery" icon="search">查询</a-button>
<a-button type="primary" @click="searchReset" icon="reload" class="resetBtn">重置</a-button>
</span>
</a-col>
@@ -42,9 +43,9 @@
</div>
<div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">
<i class="anticon anticon-info-circle ant-alert-icon"></i>
已选择&nbsp;<a style="font-weight: 600">{{ table.selectedRowKeys.length }}</a>&nbsp;&nbsp;
<a style="margin-left: 24px" @click="onClearSelected">清空</a>
<!-- <i class="anticon anticon-info-circle ant-alert-icon"></i>-->
<!-- 已选择&nbsp;<a style="font-weight: 600">{{ table.selectedRowKeys.length }}</a>&nbsp;&nbsp;-->
<!-- <a style="margin-left: 24px" @click="onClearSelected">清空</a>-->
<a v-if="!showSearchFlag" style="margin-left: 24px" @click="onlyReload">刷新</a>
</div>
@@ -20,12 +20,12 @@
<!-- 动态生成的查询条件 -->
<j-select-biz-query-item v-if="queryConfig.length>0" v-show="showMoreQueryItems" :queryParam="queryParam" :queryConfig="queryConfig" @pressEnter="searchQuery"/>
<!-- 按钮 -->
<a-button :style="{marginBottom:'12px'}" type="primary" @click="searchQuery" icon="search">查询</a-button>
<a-button :style="{marginBottom:'12px'}" type="primary" @click="searchReset" icon="reload" style="margin-left: 8px">重置</a-button>
<a v-if="queryConfig.length>0" @click="showMoreQueryItems=!showMoreQueryItems" style="margin-left: 8px">
{{ showMoreQueryItems ? '收起' : '展开' }}
<a-icon :type="showMoreQueryItems ? 'up' : 'down'"/>
<a @click="handleToggleSearch" style="margin-right: 28px">
{{ toggleSearchStatus ? '收起' : '展开' }}
<a-icon :type="toggleSearchStatus ? 'up' : 'down'"/>
</a>
<a-button :style="{marginBottom:'12px'}" type="primary" @click="searchQuery" icon="search">查询</a-button>
<a-button :style="{marginBottom:'12px'}" type="primary" @click="searchReset" icon="reload" class="resetBtn">重置</a-button>
</a-form>
<a-table
@@ -38,7 +38,9 @@ export default {
</script>
<style>
.main{
height: 100%;
overflow: auto;
height:100%;
overflow-y: auto;
overflow-x: hidden;
}
</style>
+129 -80
View File
@@ -3,21 +3,24 @@
<!-- update-begin- author:sunjianlei --- date:20191009 --- for: 提升右键菜单的层级 -->
<contextmenu :itemList="menuItemList" :visible.sync="menuVisible" style="z-index: 9999;" @select="onMenuSelect"/>
<!-- update-end- author:sunjianlei --- date:20191009 --- for: 提升右键菜单的层级 -->
<a-tabs
@contextmenu.native="e => onContextmenu(e)"
v-if="multipage"
:active-key="activePage"
class="tab-layout-tabs"
style="height:52px"
:hide-add="true"
type="editable-card"
@change="changePage"
@tabClick="tabCallBack"
@edit="editPage">
<a-tab-pane :id="page.fullPath" :key="page.fullPath" v-for="page in pageList">
<span slot="tab" :pagekey="page.fullPath">{{ page.meta.title }}</span>
</a-tab-pane>
</a-tabs>
<div class='topHeadertabList'>
<a-tabs
@contextmenu.native="e => onContextmenu(e)"
v-if="multipage"
:active-key="activePage"
class="tab-layout-tabs "
style="height:52px"
:hide-add="true"
type="editable-card"
@change="changePage"
@tabClick="tabCallBack"
@edit="editPage">
<a-tab-pane :id="page.fullPath" :key="page.fullPath" v-for="page in pageList" >
<span slot="tab" :pagekey="page.fullPath">{{ page.meta.title}}</span>
</a-tab-pane>
</a-tabs>
</div>
<div style="margin: 12px 12px 0;">
<!-- update-begin-author:taoyan date:20201221 for:此处删掉transition标签 不知道为什么加上后 页面路由切换的时候即1及菜单切到2及菜单的时候 两个菜单页面会同时出现300-500秒左右 -->
<keep-alive v-if="multipage">
@@ -298,85 +301,131 @@ export default {
</script>
<style lang="less">
.contextmenu .ant-menu li{
color: #333 !important;
}
.topHeadertabList .ant-tabs.ant-tabs-card .ant-tabs-card-bar .ant-tabs-tab.ant-tabs-tab-active{
color: #0F6FC4;
text-shadow: none;
background-color: #fff!important;
}
.topHeadertabList .ant-tabs-nav{
/*
* The following styles are auto-applied to elements with
* transition="page-transition" when their visibility is toggled
* by Vue.js.
*
* You can easily play with the page transition by editing
* these styles.
*/
}
.topHeadertabList .ant-tabs.ant-tabs-card .ant-tabs-card-bar .ant-tabs-tab{
border-radius: 0;
line-height: 40px!important;
}
.topHeadertabList .tab-layout-tabs.ant-tabs.ant-tabs-card > .ant-tabs-bar .ant-tabs-tab{
border-bottom: none!important;
border-top: none!important;
border-left: none!important;
border-right: 1px solid #E5E6EB!important;
}
.topHeadertabList .ant-tabs-nav-wrap{
border-right: 1px solid #E5E6EB!important;
border-left: 1px solid #E5E6EB!important;
}
.topHeadertabList .tab-layout-tabs.ant-tabs.ant-tabs-card .ant-tabs-tab{
padding: 0 36px 0 12px!important;
margin-right: 0!important;
background-color: #F7F8FA!important;
}
.topHeadertabList .tab-layout-tabs.ant-tabs.ant-tabs-card .ant-tabs-tab .ant-tabs-close-x{
right: 15px;
opacity: 1!important;
}
.topHeadertabList .tab-layout-tabs.ant-tabs{
border-bottom: 1px solid #E5E6EB;
height: 40px!important;
}
.topHeadertabList .ant-tabs-nav-container,.topHeadertabList .tab-layout-tabs.ant-tabs .ant-tabs-bar{
margin-top: 0;
}
.topHeadertabList .ant-tabs-nav-wrap,.topHeadertabList .tab-layout-tabs.ant-tabs{
background: #F7F8FA;
}
</style>
<style lang="less" >
.page-transition-enter {
opacity: 0;
/*
* The following styles are auto-applied to elements with
* transition="page-transition" when their visibility is toggled
* by Vue.js.
*
* You can easily play with the page transition by editing
* these styles.
*/
.page-transition-enter {
opacity: 0;
}
.page-transition-leave-active {
opacity: 0;
}
.page-transition-enter .page-transition-container,
.page-transition-leave-active .page-transition-container {
-webkit-transform: scale(1.1);
transform: scale(1.1);
}
/*美化弹出Tab样式*/
.ant-tabs-nav-container {
margin-top: 4px;
}
/* 修改 ant-tabs 样式 */
.tab-layout-tabs.ant-tabs {
border-bottom: 1px solid #ccc;
border-left: 1px solid #ccc;
background-color: white;
padding: 0 20px;
.ant-tabs-bar {
margin: 4px 0 0;
border: none;
}
.page-transition-leave-active {
opacity: 0;
}
}
.page-transition-enter .page-transition-container,
.page-transition-leave-active .page-transition-container {
-webkit-transform: scale(1.1);
transform: scale(1.1);
}
.tab-layout-tabs.ant-tabs {
/*美化弹出Tab样式*/
.ant-tabs-nav-container {
margin-top: 4px;
}
&.ant-tabs-card .ant-tabs-tab {
/* 修改 ant-tabs 样式 */
.tab-layout-tabs.ant-tabs {
border-bottom: 1px solid #ccc;
border-left: 1px solid #ccc;
background-color: white;
padding: 0 20px;
padding: 0 24px !important;
background-color: white !important;
margin-right: 10px !important;
.ant-tabs-bar {
margin: 4px 0 0;
border: none;
.ant-tabs-close-x {
width: 12px !important;
height: 12px !important;
opacity: 0 !important;
cursor: pointer !important;
font-size: 12px !important;
margin: 0 !important;
position: absolute;
top: 36%;
right: 6px;
}
&:hover .ant-tabs-close-x {
opacity: 1 !important;
}
}
.tab-layout-tabs.ant-tabs {
&.ant-tabs-card .ant-tabs-tab {
padding: 0 24px !important;
background-color: white !important;
margin-right: 10px !important;
.ant-tabs-close-x {
width: 12px !important;
height: 12px !important;
opacity: 0 !important;
cursor: pointer !important;
font-size: 12px !important;
margin: 0 !important;
position: absolute;
top: 36%;
right: 6px;
}
&:hover .ant-tabs-close-x {
opacity: 1 !important;
}
}
}
.tab-layout-tabs.ant-tabs.ant-tabs-card > .ant-tabs-bar {
.ant-tabs-tab {
border: none !important;
border-bottom: 1px solid transparent !important;
}
.tab-layout-tabs.ant-tabs.ant-tabs-card > .ant-tabs-bar {
.ant-tabs-tab {
border: none !important;
border-bottom: 1px solid transparent !important;
}
.ant-tabs-tab-active {
border-color: @primary-color!important;
}
.ant-tabs-tab-active {
border-color: @primary-color!important;
}
}
</style>
+11 -11
View File
@@ -2,19 +2,19 @@
<div id="userLayout" :class="['user-layout-wrapper',device]">
<div :class="!mobile ? 'container' : 'container-mobile'">
<div class="top" id="top" v-if="!mobile">
<div class="logo">
<img id="logo" src="~@/assets/logo.png" alt="">
</div>
<div id="company">
<span id="c-company">合众未来</span>
<span id="p-company">HEZHONGWEILAI</span>
</div>
<!-- <div class="logo">-->
<!-- <img id="logo" src="~@/assets/logo.png" alt="">-->
<!-- </div>-->
<!-- <div id="company">-->
<!-- <span id="c-company">合众未来</span>-->
<!-- <span id="p-company">HEZHONGWEILAI</span>-->
<!-- </div>-->
</div>
<div v-if="mobile">
<span class="top-bg"><img src="~/@assets/mobileBg.png" alt=""></span>
<span class="btm-bg"><img src="~/@assets/mobileHome.png" alt=""></span>
</div>
<div v-if="mobile" class="mobile">
<div v-if="mobile" class="mobile" >
<div class="logo">
<img src="~@/assets/logo.png" alt="">
</div>
@@ -23,9 +23,9 @@
<span>HEZHONGWEILAI</span>
</div>
</div>
<div class="illustration" v-if="!mobile">
<img src="@/assets/home.png" alt="">
</div>
<!-- <div class="illustration" v-if="!mobile">-->
<!-- <img src="@/assets/home.png" alt="">-->
<!-- </div>-->
<route-view></route-view>
</div>
</div>
@@ -67,5 +67,11 @@ export default {
border: 1px solid #9e9e9e;
border-radius: 4px;
box-shadow: 2px 2px 10px #aaaaaa !important;
background-color: #fff;
color:#565656;
li{
color:#565656 !important;
}
}
</style>
+82 -3
View File
@@ -1,4 +1,5 @@
<template>
<a-layout-sider
:class="['sider', isDesktop() ? null : 'shadow', theme, fixSiderbar ? 'ant-fixed-sidemenu' : null ]"
width="208px"
@@ -15,6 +16,22 @@
:mode="mode"
:style="smenuStyle">
</s-menu>
<!-- <div style='width: 100px;height:100px;background: pink'></div>-->
<img v-if='!collapsed' src='../../assets/bgImg.png' alt='' class='bgImg'>
<div v-else></div>
<!-- <a-icon-->
<!-- class='bgImg'-->
<!-- v-if="device==='mobile'"-->
<!-- class="trigger"-->
<!-- :type="collapsed ? 'menu-fold' : 'menu-unfold'"-->
<!-- @click="toggle"></a-icon>-->
<!-- <a-icon-->
<!-- class="bgImg trigger"-->
<!-- :type="collapsed ? 'menu-unfold' : 'menu-fold'"-->
<!-- @click="toggle"/>-->
</a-layout-sider>
</template>
@@ -149,29 +166,91 @@ export default {
<!-- update_begin author:sunjianlei date:20190530 for: 选中首页的时候不显示背景颜色 -->
<style lang="less">
.trigger {
width: 53px;
font-size: 22px;
line-height: 30px;
padding: 0 18px;
cursor: pointer;
transition: color 300ms, background 300ms;
bottom: 4px;
/* right: -12px; */
left: 129px;
color: #fff;
background-color: #FFFFFF14;
&:hover {
background: rgba(255, 255, 255, 0.3);
}
}
.sider.light {
background-color: #001529 !important;
}
.bgImg {
position: fixed;
bottom: 0px;
left: 0px;
width: 208px;
z-index: -1;
transition: width 1.5s linear 1s;
}
.ant-layout-sider-children{
//background-color: #001529;
background: none;
}
.ant-menu{
color: hsla(0, 0%, 100%, 0.8);;
background: none;
li ,a{
color:hsla(0, 0%, 100%, 0.8)!important;
}
}
.ant-menu:not(.ant-menu-horizontal) .ant-menu-item-selected {
background-color: @primary-color !important;
}
.ant-menu-submenu > .ant-menu {
background: none !important;
}
.ant-menu.ant-menu-root {
background: none;
//li {
// background-color: #001529;
// & > a{
// color: #fff;
// }
//}
& > .ant-menu-item:first-child {
background-color: transparent;
& > a, & > a:hover {
color: rgba(0, 0, 0, 0.65);
//color: rgba(0, 0, 0, 0.65);
color: #fff;
}
&.ant-menu-item-selected {
& > a, & > a:hover {
color: @primary-color;
}
}
}
&.ant-menu-dark > .ant-menu-item:first-child {
& > a, & > a:hover {
color: rgba(255, 255, 255, 0.65);
//color: rgba(255, 255, 255, 0.65);
color: #fff;
}
&.ant-menu-item-selected {
& > a, & > a:hover {
color: rgba(255, 255, 255, 1);
//color: rgba(255, 255, 255, 1);
color: #fff;
}
}
}
@@ -156,7 +156,7 @@
}
.ant-card-body .table-operator[data-v-76e1a326] {
margin-bottom: 18px
margin-bottom: 4px
}
.ant-table-tbody .ant-table-row td[data-v-76e1a326] {
@@ -196,7 +196,7 @@
}
.ant-card-body .table-operator[data-v-54bf704f] {
margin-bottom: 18px
margin-bottom: 4px
}
.ant-table-tbody .ant-table-row td[data-v-54bf704f] {
@@ -329,7 +329,7 @@ th[data-v-125d8be6] {
}
.ant-card-body .table-operator {
margin-bottom: 18px
margin-bottom: 4px
}
.anty-row-operator button {
@@ -492,7 +492,7 @@ th[data-v-125d8be6] {
}
.ant-card-body .table-operator[data-v-67102101] {
margin-bottom: 18px
margin-bottom: 4px
}
.ant-table-tbody .ant-table-row td[data-v-67102101] {
@@ -532,7 +532,7 @@ th[data-v-125d8be6] {
}
.ant-card-body .table-operator {
margin-bottom: 8px
margin-bottom: 4px
}
.table-operator .ant-btn {
@@ -775,7 +775,7 @@ th[data-v-125d8be6] {
}
.ant-card-body .table-operator[data-v-b7645c0c] {
margin-bottom: 18px
margin-bottom: 4px
}
.ant-table-tbody .ant-table-row td[data-v-b7645c0c] {
+26 -133
View File
@@ -1716,25 +1716,7 @@
}
})], 1)], 1) : e._e()], 1), n("div", {
style: e.table_area_style
}, [n("div", {
staticClass: "ant-alert ant-alert-info",
staticStyle: {
"margin-bottom": "16px"
}
}, [n("i", {
staticClass: "anticon anticon-info-circle ant-alert-icon"
}), e._v(" 已选择 "), n("a", {
staticStyle: {
"font-weight": "600"
}
}, [e._v(e._s(e.selectedRowKeys.length))]), e._v("\n "), n("a", {
staticStyle: {
"margin-left": "24px"
},
on: {
click: e.onClearSelected
}
}, [e._v("清空")])]), n("a-table", {
}, [ n("a-table", {
ref: "table",
attrs: {
size: "middle",
@@ -8623,25 +8605,7 @@
}
})], 1)], 1) : e._e()], 1), n("div", {
style: e.table_area_style
}, [n("div", {
staticClass: "ant-alert ant-alert-info",
staticStyle: {
"margin-bottom": "16px"
}
}, [n("i", {
staticClass: "anticon anticon-info-circle ant-alert-icon"
}), e._v(" 已选择 "), n("a", {
staticStyle: {
"font-weight": "600"
}
}, [e._v(e._s(e.selectedRowKeys.length))]), e._v("\n "), n("a", {
staticStyle: {
"margin-left": "24px"
},
on: {
click: e.onClearSelected
}
}, [e._v("清空")])]), n("a-table", {
}, [ n("a-table", {
ref: "table",
attrs: {
size: "middle",
@@ -27279,25 +27243,7 @@
}
})], 1)], 1) : e._e()], 1), n("div", {
style: e.table_area_style
}, [n("div", {
staticClass: "ant-alert ant-alert-info",
staticStyle: {
"margin-bottom": "16px"
}
}, [n("i", {
staticClass: "anticon anticon-info-circle ant-alert-icon"
}), e._v(" 已选择 "), n("a", {
staticStyle: {
"font-weight": "600"
}
}, [e._v(e._s(e.selectedRowKeys.length))]), e._v("\n "), n("a", {
staticStyle: {
"margin-left": "24px"
},
on: {
click: e.onClearSelected
}
}, [e._v("清空")])]), n("a-table", {
}, [ n("a-table", {
ref: "table",
attrs: {
size: "middle",
@@ -29406,7 +29352,7 @@
"margin-left": "8px"
},
attrs: {
type: "primary",
type: "default",
icon: "reload"
},
on: {
@@ -29425,7 +29371,7 @@
staticClass: "table-operator"
}, [e.buttonSwitch.add ? n("a-button", {
attrs: {
type: "primary",
type: "default",
icon: "plus"
},
on: {
@@ -31710,7 +31656,7 @@
}
}, [e._v("查询")]), n("a-button", {
attrs: {
type: "primary",
type: "default",
icon: "reload"
},
on: {
@@ -37656,7 +37602,7 @@
"margin-left": "8px"
},
attrs: {
type: "primary",
type: "default",
icon: "reload"
},
on: {
@@ -39018,7 +38964,7 @@
"margin-left": "8px"
},
attrs: {
type: "primary",
type: "default",
icon: "reload"
},
on: {
@@ -43922,7 +43868,7 @@
"margin-left": "8px"
},
attrs: {
type: "primary",
type: "default",
icon: "reload"
},
on: {
@@ -45162,7 +45108,7 @@
"margin-left": "8px"
},
attrs: {
type: "primary",
type: "default",
icon: "reload"
},
on: {
@@ -45172,7 +45118,7 @@
staticClass: "table-operator"
}, [n("a-button", {
attrs: {
type: "primary",
type: "default",
icon: "plus"
},
on: {
@@ -45200,26 +45146,7 @@
attrs: {
type: "down"
}
})], 1)], 1) : e._e()], 1), n("div", [n("div", {
staticClass: "ant-alert ant-alert-info",
staticStyle: {
"margin-bottom": "16px"
}
}, [n("i", {
staticClass: "anticon anticon-info-circle ant-alert-icon"
}), e._v("\n 已选择\n "), n("a", {
staticStyle: {
"font-weight": "600"
}
}, [e._v("\n " + e._s(e.selectedRowKeys.length) + "\n ")]), e._v("\n 项\n "), n(
"a", {
staticStyle: {
"margin-left": "24px"
},
on: {
click: e.onClearSelected
}
}, [e._v("清空")])]), n("a-table", {
})], 1)], 1) : e._e()], 1), n("div", [ n("a-table", {
ref: "table",
attrs: {
size: "middle",
@@ -45472,6 +45399,7 @@
}))
},
goPageOnline: function(e) {
debugger
this.$router.push({
path: "/online/cgreport/" + e
})
@@ -66840,7 +66768,7 @@
"margin-left": "8px"
},
attrs: {
type: "primary",
type: "default",
icon: "reload"
},
on: {
@@ -66848,25 +66776,7 @@
}
}, [e._v("重置")])], 1)])], 1)], 1)], 1), n("div", {
staticClass: "table-operator"
}), n("div", [n("div", {
staticClass: "ant-alert ant-alert-info",
staticStyle: {
"margin-bottom": "16px"
}
}, [n("i", {
staticClass: "anticon anticon-info-circle ant-alert-icon"
}), e._v("\n 已选择\n "), n("a", {
staticStyle: {
"font-weight": "600"
}
}, [e._v(e._s(e.selectedRowKeys.length))]), e._v("\n 项\n "), n("a", {
staticStyle: {
"margin-left": "24px"
},
on: {
click: e.onClearSelected
}
}, [e._v("清空")])]), n("a-table", {
}), n("div", [ n("a-table", {
ref: "table",
attrs: {
size: "middle",
@@ -67912,7 +67822,7 @@
"margin-left": "8px"
},
attrs: {
type: "primary",
type: "default",
icon: "reload"
},
on: {
@@ -72474,7 +72384,7 @@
"margin-left": "8px"
},
attrs: {
type: "primary",
type: "default",
icon: "reload"
},
on: {
@@ -72495,7 +72405,7 @@
staticClass: "table-operator"
}, [n("a-button", {
attrs: {
type: "primary",
type: "default",
icon: "plus"
},
on: {
@@ -72503,7 +72413,7 @@
}
}, [e._v("新增")]), n("a-button", {
attrs: {
type: "primary",
type: "default",
icon: "highlight"
},
on: {
@@ -72511,7 +72421,7 @@
}
}, [e._v("自定义按钮")]), n("a-button", {
attrs: {
type: "primary",
type: "default",
icon: "strikethrough"
},
on: {
@@ -72519,7 +72429,7 @@
}
}, [e._v("JS增强")]), n("a-button", {
attrs: {
type: "primary",
type: "default",
icon: "filter"
},
on: {
@@ -72527,7 +72437,7 @@
}
}, [e._v("SQL增强")]), n("a-button", {
attrs: {
type: "primary",
type: "default",
icon: "tool"
},
on: {
@@ -72535,7 +72445,7 @@
}
}, [e._v("JAVA增强")]), n("a-button", {
attrs: {
type: "primary",
type: "default",
icon: "database"
},
on: {
@@ -72543,7 +72453,7 @@
}
}, [e._v("导入数据库表")]), n("a-button", {
attrs: {
type: "primary",
type: "default",
icon: "database"
},
on: {
@@ -72567,25 +72477,7 @@
attrs: {
type: "down"
}
})], 1)], 1) : e._e()], 1), n("div", [n("div", {
staticClass: "ant-alert ant-alert-info",
staticStyle: {
"margin-bottom": "16px"
}
}, [n("i", {
staticClass: "anticon anticon-info-circle ant-alert-icon"
}), e._v("\n 已选择\n "), n("a", {
staticStyle: {
"font-weight": "600"
}
}, [e._v(e._s(e.selectedRowKeys.length))]), e._v("\n 项\n "), n("a", {
staticStyle: {
"margin-left": "24px"
},
on: {
click: e.onClearSelected
}
}, [e._v("清空")])]), n("a-table", {
})], 1)], 1) : e._e()], 1), n("div", [ n("a-table", {
ref: "table",
attrs: {
size: "middle",
@@ -73084,6 +72976,7 @@
this.onlineUrlTitle = "", this.onlineUrlVisible = !1
},
handleOnlineUrlShow: function(e) {
"erp" === e.themeTemplate ? this.onlineUrl = "/online/cgformErpList/".concat(e.id) : "innerTable" === e.themeTemplate ?
this.onlineUrl = "/online/cgformInnerTableList/".concat(e.id) : "tab" === e.themeTemplate ? this.onlineUrl =
"/online/cgformTabList/".concat(e.id) : "Y" == e.isTree ? this.onlineUrl = "/online/cgformTreeList/".concat(
@@ -8,9 +8,9 @@
-->
</div>
<div class="copyright">
Copyright
copyright
<a-icon type="copyright"/>
2022 <span></span>
2023 hzwl&syxy design center <span></span>
</div>
</div>
</template>
@@ -23,8 +23,8 @@ export default {
<style lang="less" scoped>
.footer {
padding: 0 16px;
margin: 48px 0 24px;
//padding: 0 16px;
//margin: 48px 0 24px;
text-align: center;
.links {
+45 -6
View File
@@ -17,8 +17,18 @@
:type="collapsed ? 'menu-unfold' : 'menu-fold'"
@click="toggle"/>
<span v-if="device === 'desktop'">欢迎进入 Jero-Boot 平台</span>
<span v-else>Jero-Boot</span>
<!-- <span v-if="device === 'desktop'">欢迎进入 Jero-Boot 平台</span>-->
<!-- <span v-else>Jero-Boot</span>-->
<span class='bread'>
<a-breadcrumb class="breadcrumb">
<a-breadcrumb-item v-for="(item, index) in breadList" :key="index">
<router-link v-if="item.name !== name" :to="{ path: item.path }">
{{ item.meta.title }}
</router-link>
<span v-else>{{ item.meta.title }}</span>
</a-breadcrumb-item>
</a-breadcrumb>
</span>
<user-menu :theme="theme"/>
</div>
@@ -26,7 +36,7 @@
<div v-else :class="['top-nav-header-index', theme]">
<div class="header-index-wide">
<div class="header-index-left" :style="topMenuStyle.headerIndexLeft">
<logo class="top-nav-header" :show-title="device !== 'mobile'" :style="topMenuStyle.topNavHeader"/>
<!-- <logo class="top-nav-header" :show-title="device !== 'mobile'" :style="topMenuStyle.topNavHeader"/>-->
<div v-if="device !== 'mobile'" :style="topMenuStyle.topSmenuStyle">
<s-menu
mode="horizontal"
@@ -34,6 +44,7 @@
:theme="theme"
@updateMenuTitle="handleUpdateMenuTitle"
></s-menu>
</div>
<a-icon
v-else
@@ -90,6 +101,7 @@ export default {
},
data () {
return {
breadList: [],
headerBarFixed: false,
// update-begin--author:sunjianlei---date:20190508------for: 顶部导航栏过长时显示更多按钮-----
topMenuStyle: {
@@ -113,6 +125,9 @@ export default {
if (newVal === 'topmenu') {
this.buildTopMenuStyle()
}
},
$route () {
this.getBreadcrumb()
}
},
// update-end--author:sunjianlei---date:20190508------for: 顶部导航栏过长时显示更多按钮-----
@@ -122,9 +137,21 @@ export default {
if (this.mode === 'topmenu') {
this.buildTopMenuStyle()
}
this.getBreadcrumb()
// update-end--author:sunjianlei---date:20190508------for: 顶部导航栏过长时显示更多按钮-----
},
methods: {
getBreadcrumb () {
this.breadList = []
// this.breadList.push({name: 'index', path: '/dashboard/', meta: {title: '首页'}})
this.name = this.$route.name
this.$route.matched.forEach((item) => {
// item.name !== 'index' && this.breadList.push(item)
this.breadList.push(item)
})
},
handleScroll () {
if (this.autoHideHeader) {
const scrollTop = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop
@@ -168,9 +195,20 @@ export default {
<style lang="less" scoped>
/* update_begin author:scott date:20190220 for: 缩小首页布局顶部的高度*/
@height: 59px;
@height: 56px;
.layout {
.bread {
display: inline-block;
.ant-breadcrumb {
a {
color:#898989;
}
span{
color: #1D2129;
}
}
}
.top-nav-header-index {
@@ -192,9 +230,10 @@ export default {
.header {
z-index: 2;
color: white;
color: #333;
height: @height;
background-color: @primary-color;
//background-color: @primary-color;
background-color: #fff;
transition: background 300ms;
/* dark 样式 */
+53 -3
View File
@@ -197,7 +197,9 @@ export default {
filter: invert(80%);
}
}
.ant-card-body {
padding: 16px 16px 0 !important;
}
.layout {
min-height: 100vh !important;
overflow-x: hidden;
@@ -326,7 +328,39 @@ export default {
.user-wrapper {
float: right;
height: 100%;
.small-action {
cursor: pointer;
padding: 0 5px;
display: inline-block;
transition: all .3s;
height: 70%;
line-height: 46px;
&.action-full {
height: 100%;
}
&:hover {
background: rgba(255, 255, 255, 0.3);
}
.avatar {
margin: 20px 10px 20px 0;
color: #1890ff;
background: hsla(0, 0%, 100%, .85);
vertical-align: middle;
}
.icon {
font-size: 16px;
padding: 4px;
}
.anticon {
color: inherit;
}
}
.action {
cursor: pointer;
padding: 0 14px;
@@ -654,7 +688,7 @@ export default {
.ant-form-item {
display: flex;
margin-bottom: 24px;
margin-bottom: 12px;
margin-right: 0;
.ant-form-item-control-wrapper {
@@ -677,7 +711,7 @@ export default {
.table-page-search-submitButtons {
display: block;
margin-bottom: 24px;
margin-bottom: 12px;
white-space: nowrap;
}
@@ -693,4 +727,20 @@ export default {
}
}
}
//
.resetBtn {
margin-left: 12px !important;
}
//表格的样式
.ant-table-middle > .ant-table-content > .ant-table-header > table > .ant-table-thead > tr > th, .ant-table-middle > .ant-table-content > .ant-table-body > table > .ant-table-thead > tr > th, .ant-table-middle > .ant-table-content > .ant-table-scroll > .ant-table-header > table > .ant-table-thead > tr > th, .ant-table-middle > .ant-table-content > .ant-table-scroll > .ant-table-body > table > .ant-table-thead > tr > th, .ant-table-middle > .ant-table-content > .ant-table-fixed-left > .ant-table-header > table > .ant-table-thead > tr > th, .ant-table-middle > .ant-table-content > .ant-table-fixed-right > .ant-table-header > table > .ant-table-thead > tr > th, .ant-table-middle > .ant-table-content > .ant-table-fixed-left > .ant-table-body-outer > .ant-table-body-inner > table > .ant-table-thead > tr > th, .ant-table-middle > .ant-table-content > .ant-table-fixed-right > .ant-table-body-outer > .ant-table-body-inner > table > .ant-table-thead > tr > th, .ant-table-middle > .ant-table-content > .ant-table-header > table > .ant-table-tbody > tr > td, .ant-table-middle > .ant-table-content > .ant-table-body > table > .ant-table-tbody > tr > td, .ant-table-middle > .ant-table-content > .ant-table-scroll > .ant-table-header > table > .ant-table-tbody > tr > td, .ant-table-middle > .ant-table-content > .ant-table-scroll > .ant-table-body > table > .ant-table-tbody > tr > td, .ant-table-middle > .ant-table-content > .ant-table-fixed-left > .ant-table-header > table > .ant-table-tbody > tr > td, .ant-table-middle > .ant-table-content > .ant-table-fixed-right > .ant-table-header > table > .ant-table-tbody > tr > td, .ant-table-middle > .ant-table-content > .ant-table-fixed-left > .ant-table-body-outer > .ant-table-body-inner > table > .ant-table-tbody > tr > td, .ant-table-middle > .ant-table-content > .ant-table-fixed-right > .ant-table-body-outer > .ant-table-body-inner > table > .ant-table-tbody > tr > td {
padding: 9px 8px !important;
}
.ant-table-tbody .ant-table-row td {
padding-top: 9px !important;
padding-bottom: 9px !important;
}
.ant-table-thead > tr > th, .ant-table-tbody > tr > td {
padding: 9px 16px !important;
overflow-wrap: break-word;
}
</style>
+8 -8
View File
@@ -1,14 +1,14 @@
<template>
<div class="page-header">
<div class="page-header-index-wide">
<a-breadcrumb class="breadcrumb">
<a-breadcrumb-item v-for="(item, index) in breadList" :key="index">
<router-link v-if="item.name !== name" :to="{ path: item.path }">
{{ item.meta.title }}
</router-link>
<span v-else>{{ item.meta.title }}</span>
</a-breadcrumb-item>
</a-breadcrumb>
<!-- <a-breadcrumb class="breadcrumb">-->
<!-- <a-breadcrumb-item v-for="(item, index) in breadList" :key="index">-->
<!-- <router-link v-if="item.name !== name" :to="{ path: item.path }">-->
<!-- {{ item.meta.title }}-->
<!-- </router-link>-->
<!-- <span v-else>{{ item.meta.title }}</span>-->
<!-- </a-breadcrumb-item>-->
<!-- </a-breadcrumb>-->
<div class="detail">
<div class="main" v-if="!$route.meta.hiddenHeaderContent">
@@ -124,4 +124,7 @@ export default {
.page-header[data-v-6740ec88] {
margin: 0 24px 0;
}
.ant-table-middle > .ant-table-content > .ant-table-header > table > .ant-table-thead > tr > th, .ant-table-middle > .ant-table-content > .ant-table-body > table > .ant-table-thead > tr > th, .ant-table-middle > .ant-table-content > .ant-table-scroll > .ant-table-header > table > .ant-table-thead > tr > th, .ant-table-middle > .ant-table-content > .ant-table-scroll > .ant-table-body > table > .ant-table-thead > tr > th, .ant-table-middle > .ant-table-content > .ant-table-fixed-left > .ant-table-header > table > .ant-table-thead > tr > th, .ant-table-middle > .ant-table-content > .ant-table-fixed-right > .ant-table-header > table > .ant-table-thead > tr > th, .ant-table-middle > .ant-table-content > .ant-table-fixed-left > .ant-table-body-outer > .ant-table-body-inner > table > .ant-table-thead > tr > th, .ant-table-middle > .ant-table-content > .ant-table-fixed-right > .ant-table-body-outer > .ant-table-body-inner > table > .ant-table-thead > tr > th, .ant-table-middle > .ant-table-content > .ant-table-header > table > .ant-table-tbody > tr > td, .ant-table-middle > .ant-table-content > .ant-table-body > table > .ant-table-tbody > tr > td, .ant-table-middle > .ant-table-content > .ant-table-scroll > .ant-table-header > table > .ant-table-tbody > tr > td, .ant-table-middle > .ant-table-content > .ant-table-scroll > .ant-table-body > table > .ant-table-tbody > tr > td, .ant-table-middle > .ant-table-content > .ant-table-fixed-left > .ant-table-header > table > .ant-table-tbody > tr > td, .ant-table-middle > .ant-table-content > .ant-table-fixed-right > .ant-table-header > table > .ant-table-tbody > tr > td, .ant-table-middle > .ant-table-content > .ant-table-fixed-left > .ant-table-body-outer > .ant-table-body-inner > table > .ant-table-tbody > tr > td, .ant-table-middle > .ant-table-content > .ant-table-fixed-right > .ant-table-body-outer > .ant-table-body-inner > table > .ant-table-tbody > tr > td {
padding: 9px 8px !important;
}
</style>
+4 -3
View File
@@ -21,7 +21,7 @@ export default {
props: {
title: {
type: String,
default: 'Jero-Boot Pro',
default: 'Design System',
required: false
},
showTitle: {
@@ -48,7 +48,7 @@ export default {
line-height: @height !important;
box-shadow: none !important;
transition: background 300ms;
border-bottom: 1px solid rgba(255,255,255,0.08);
a {
color: white;
&:hover {
@@ -58,7 +58,8 @@ export default {
}
&.light .logo {
background-color: @primary-color;
//background-color: @primary-color;
background-color: #001529;
}
}
</style>
+47 -15
View File
@@ -2,16 +2,19 @@
<div class="user-wrapper" :class="theme">
<!-- update_begin author:zhaoxin date:20191129 for: 做头部菜单栏导航 -->
<!-- update-begin author:sunjianlei date:20191@20 for: 解决全局样式冲突的问题 -->
<span class="action" @click="showClick">
<a-icon type="search"></a-icon>
</span>
<!-- <span class="action" @click="showClick">-->
<!-- <a-icon type="search"></a-icon>-->
<!-- </span>-->
<!-- update-begin author:sunjianlei date:20200219 for: 菜单搜索改为动态组件在手机端呈现出弹出框 -->
<component :is="searchMenuComp" v-show="searchMenuVisible || isMobile()" class="borders" :visible="searchMenuVisible" title="搜索菜单" :footer="null" @cancel="searchMenuVisible=false">
<a-select
<!-- <component :is="searchMenuComp" v-show="searchMenuVisible || isMobile()" class="borders" :visible="searchMenuVisible" title="搜索菜单" :footer="null" @cancel="searchMenuVisible=false">-->
<span class='search-box'>
<a-icon type='search' />
</span>
<a-select
class="search-input"
showSearch
:showArrow="false"
placeholder="搜索菜单"
placeholder="请输入搜索内容"
optionFilterProp="children"
:filterOption="filterOption"
:open="isMobile()?true:null"
@@ -20,9 +23,10 @@
@change="searchMethods"
@blur="hiddenClick"
>
<a-select-option v-for="(site,index) in searchMenuOptions" :key="index" :value="site.id">{{site.meta.title}}</a-select-option>
</a-select>
</component>
<!-- </component>-->
<!-- update-end author:sunjianlei date:20200219 for: 菜单搜索改为动态组件在手机端呈现出弹出框 -->
<!-- update-end author:sunjianlei date:20191220 for: 解决全局样式冲突的问题 -->
<!-- update_end author:zhaoxin date:20191129 for: 做头部菜单栏导航 -->
@@ -32,11 +36,18 @@
</a>
</span>
<header-notice class="action"/>
<span style="padding: 12px">
<a-avatar class="avatar" size="small" :src="getAvatar()"/>
<span style="display:inline-block;padding: 0 0 0 16px">
<template v-if='getAvatar()'>
<a-avatar class="avatar" size="small" :src="getAvatar()"/>
</template>
<template v-else>
<a-avatar :size="20">
<template #icon> <a-icon type="user"></a-icon></template>
</a-avatar>
</template>
</span>
<a-dropdown>
<span class="action">
<span class=" small-action">
<span v-if="isDesktop()">欢迎您{{ nickname() }}</span>
</span>
<a-menu slot="overlay" class="user-dropdown-menu-wrapper">
@@ -103,7 +114,7 @@ import { mixinDevice } from '@/utils/mixin.js'
import { getFileAccessHttpUrl, getAction } from '@/api/manage'
import Vue from 'vue'
import { UI_CACHE_DB_DICT_DATA } from '@/store/mutation-types'
import { UserOutlined } from '@ant-design/icons-vue';
export default {
name: 'UserMenu',
mixins: [mixinDevice],
@@ -117,6 +128,7 @@ export default {
}
},
components: {
UserOutlined,
HeaderNotice,
UserPassword,
DepartSelect,
@@ -263,18 +275,32 @@ export default {
</script>
<style lang="less" scoped>
.search-box {
display: inline-block;
transition: all 0.3s;
height: 30px;
width: 25px;
margin-top: 0px;
line-height: 28px;
background: #F7F8FA;
text-align: right;
border-top-left-radius: 4px;
border-bottom-left-radius: 4px;
}
/* update_begin author:zhaoxin date:20191129 for: 让搜索框颜色能随主题颜色变换*/
/* update-begin author:sunjianlei date:20191220 for: 解决全局样式冲突问题 */
.user-wrapper .search-input {
width: 180px;
width: 210px;
color: inherit;
margin-right: 8px;
/deep/ .ant-select-selection {
background-color: inherit;
background-color: #F7F8FA !important;
border: 0;
border-bottom: 1px solid white;
color: #86909C ;
&__placeholder, &__field__placeholder {
color: inherit;
color: #86909C ;
}
}
}
@@ -282,7 +308,13 @@ export default {
/* update_end author:zhaoxin date:20191129 for: 让搜索框颜色能随主题颜色变换*/
</style>
<style scoped>
<style lang="less" scoped>
.ant-avatar {
background-color: #fff;
color: #333 !important;
border: 1px solid #333;
vertical-align: sub;
}
.logout_title {
color: inherit;
text-decoration: none;
+58 -21
View File
@@ -15,21 +15,30 @@
:labelCol="labelCol"
:wrapperCol="wrapperCol"
label="旧密码">
<a-input type="password" placeholder="请输入旧密码" v-decorator="[ 'oldpassword', validatorRules.oldpassword]" />
<a-input :type="passwordType1" placeholder="请输入旧密码" v-decorator="[ 'oldpassword', validatorRules.oldpassword]" >
<a-icon title="显示密码" @click="passwordType1='text'" slot="suffix" v-if="passwordType1==='password'" type="eye" :style="{ color: '#B3B7C2',fontSize:'20px' }"/>
<a-icon title="隐藏密码" @click="passwordType1='password'" slot="suffix" v-else type="eye-invisible" :style="{ color: '#B3B7C2',fontSize:'20px' }"/>
</a-input>
</a-form-item>
<a-form-item
:labelCol="labelCol"
:wrapperCol="wrapperCol"
label="新密码">
<a-input type="password" placeholder="请输入新密码" :maxLength="20" v-decorator="[ 'password', validatorRules.password]" />
<a-input :type="passwordType2" placeholder="请输入新密码" :maxLength="20" v-decorator="[ 'password', validatorRules.password]" >
<a-icon title="显示密码" @click="passwordType2='text'" slot="suffix" v-if="passwordType2==='password'" type="eye" :style="{ color: '#B3B7C2',fontSize:'20px' }"/>
<a-icon title="隐藏密码" @click="passwordType2='password'" slot="suffix" v-else type="eye-invisible" :style="{ color: '#B3B7C2',fontSize:'20px' }"/>
</a-input>
</a-form-item>
<a-form-item
:labelCol="labelCol"
:wrapperCol="wrapperCol"
label="确认新密码">
<a-input type="password" @blur="handleConfirmBlur" placeholder="请确认新密码" :maxLength="20" v-decorator="[ 'confirmpassword', validatorRules.confirmpassword]"/>
<a-input :type="passwordType3" @blur="handleConfirmBlur" placeholder="请确认新密码" :maxLength="20" v-decorator="[ 'confirmpassword', validatorRules.confirmpassword]">
<a-icon title="显示密码" @click="passwordType3='text'" slot="suffix" v-if="passwordType3==='password'" type="eye" :style="{ color: '#B3B7C2',fontSize:'20px' }"/>
<a-icon title="隐藏密码" @click="passwordType3='password'" slot="suffix" v-else type="eye-invisible" :style="{ color: '#B3B7C2',fontSize:'20px' }"/>
</a-input>
</a-form-item>
</a-form>
@@ -40,11 +49,17 @@
<script>
import { postAction } from '@/api/manage'
import { mapActions } from 'vuex'
import { JSEncrypt } from 'jsencrypt'
import { getRSAPublicKey } from '@/utils/encryption.js'
export default {
name: 'UserPassword',
data () {
return {
rsaPublicKey: '',
passwordType1: 'password',
passwordType2: 'password',
passwordType3: 'password',
title: '修改密码',
modalWidth: 800,
visible: false,
@@ -86,6 +101,7 @@ export default {
}
},
methods: {
...mapActions(['Logout']),
show (uname) {
if (!uname) {
this.$message.warning('当前系统无登录用户!')
@@ -104,27 +120,48 @@ export default {
this.disableSubmit = false
this.selectedRole = []
},
// 获取RSA公钥
getPublicKey () {
// 获取公钥
getRSAPublicKey().then(res => {
this.rsaPublicKey = res.result
})
},
handleOk () {
const that = this
// 触发表单验证
this.form.validateFields((err, values) => {
if (!err) {
that.confirmLoading = true
const params = Object.assign({ username: this.username }, values)
console.log('修改密码提交数据', params)
postAction(this.url, params).then((res) => {
if (res.success) {
console.log(res)
that.$message.success(res.message)
that.close()
} else {
that.$message.warning(res.message)
}
}).finally(() => {
that.confirmLoading = false
})
}
getRSAPublicKey().then(res => {
this.rsaPublicKey = res.result
this.form.validateFields((err, values) => {
if (!err) {
that.confirmLoading = true
const params = Object.assign({ username: this.username, rsaPublicKey:this.rsaPublicKey}, values)
console.log('修改密码提交数据', params)
const encrypt = new JSEncrypt()
encrypt.setPublicKey(this.rsaPublicKey)
// 公钥加密
params.confirmpassword = encrypt.encrypt(values.confirmpassword)
params.password = encrypt.encrypt(values.password)
params.oldpassword = encrypt.encrypt(values.oldpassword)
postAction(this.url, params).then((res) => {
if (res.success) {
console.log(res)
that.$message.success(res.message)
that.close()
that.Logout().then(()=>{
window.location.replace('/user/login')
})
} else {
that.$message.warning(res.message)
}
}).finally(() => {
that.confirmLoading = false
})
}
})
})
},
validateToNextPassword (rule, value, callback) {
const form = this.form
+1
View File
@@ -74,6 +74,7 @@ export const JeroListMixin = {
}
},
methods: {
loadData (arg) {
if (!this.url.list) {
this.$message.error('请设置url.list属性!')
+8 -8
View File
@@ -41,12 +41,12 @@
</template>
<span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
<a-col :xl="6" :lg="7" :md="8" :sm="24">
<a @click="handleToggleSearch" style="margin-right: 28px">
{{ toggleSearchStatus ? '收起' : '展开' }}
<a-icon :type="toggleSearchStatus ? 'up' : 'down'"/>
</a>
<a-button type="primary" @click="searchQuery" icon="search">查询</a-button>
<a-button type="primary" @click="searchReset" icon="reload" style="margin-left: 8px">重置</a-button>
<a @click="handleToggleSearch" style="margin-left: 8px">
{{ toggleSearchStatus ? '收起' : '展开' }}
<a-icon :type="toggleSearchStatus ? 'up' : 'down'"/>
</a>
<a-button type="primary" @click="searchReset" icon="reload" class="resetBtn">重置</a-button>
</a-col>
</span>
</a-row>
@@ -79,9 +79,9 @@
<!-- table区域-begin -->
<div>
<div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">
<i class="anticon anticon-info-circle ant-alert-icon"></i> 已选择 <a style="font-weight: 600">{{
selectedRowKeys.length }}</a>
<a style="margin-left: 24px" @click="onClearSelected">清空</a>
<!-- <i class="anticon anticon-info-circle ant-alert-icon"></i> 已选择 <a style="font-weight: 600">{{-->
<!-- selectedRowKeys.length }}</a>-->
<!-- <a style="margin-left: 24px" @click="onClearSelected">清空</a>-->
<span style="float:right;">
<a @click="loadData()"><a-icon type="sync" />刷新</a>
<a-divider type="vertical" />
@@ -23,7 +23,7 @@
<a-col :md="6" :sm="24" >
<span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
<a-button type="primary" @click="searchQuery" icon="search">查询</a-button>
<a-button type="primary" @click="searchReset" icon="reload" style="margin-left: 8px">重置</a-button>
<a-button type="primary" @click="searchReset" icon="reload" class="resetBtn">重置</a-button>
</span>
</a-col>
@@ -49,10 +49,10 @@
<!-- table区域-begin -->
<div>
<div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">
<i class="anticon anticon-info-circle ant-alert-icon"></i> 已选择 <a style="font-weight: 600">{{ selectedRowKeys.length }}</a>项
<a style="margin-left: 24px" @click="onClearSelected">清空</a>
</div>
<!-- <div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">-->
<!-- <i class="anticon anticon-info-circle ant-alert-icon"></i> 已选择 <a style="font-weight: 600">{{ selectedRowKeys.length }}</a>项-->
<!-- <a style="margin-left: 24px" @click="onClearSelected">清空</a>-->
<!-- </div>-->
<a-table
ref="table"
@@ -177,7 +177,7 @@ export default {
margin-left: 3px
}
.ant-card-body .table-operator{
margin-bottom: 18px;
margin-bottom: 4px;
}
.ant-table-tbody .ant-table-row td{
padding-top:15px;
@@ -23,7 +23,7 @@
<a-col :md="6" :sm="24">
<span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
<a-button type="primary" @click="searchQuery" icon="search">查询</a-button>
<a-button type="primary" @click="searchReset" icon="reload" style="margin-left: 8px">重置</a-button>
<a-button type="primary" @click="searchReset" icon="reload" class="resetBtn">重置</a-button>
</span>
</a-col>
@@ -50,15 +50,15 @@
<!-- table区域-begin -->
<div>
<div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">
<i class="anticon anticon-info-circle ant-alert-icon"></i>
<span>已选择</span>
<a style="font-weight: 600">
{{ selectedRowKeys.length }}
</a>
<span></span>
<a style="margin-left: 24px" @click="onClearSelected">清空</a>
</div>
<!-- <div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">-->
<!-- <i class="anticon anticon-info-circle ant-alert-icon"></i>-->
<!-- <span>已选择</span>-->
<!-- <a style="font-weight: 600">-->
<!-- {{ selectedRowKeys.length }}-->
<!-- </a>-->
<!-- <span></span>-->
<!-- <a style="margin-left: 24px" @click="onClearSelected">清空</a>-->
<!-- </div>-->
<a-table
ref="table"
@@ -184,7 +184,7 @@ export default {
<style scoped>
.ant-card-body .table-operator {
margin-bottom: 18px;
margin-bottom: 4px;
}
.ant-table-tbody .ant-table-row td {
+1 -1
View File
@@ -267,7 +267,7 @@ export default {
</script>
<style scoped>
.ant-card-body .table-operator{
margin-bottom: 18px;
margin-bottom: 4px;
}
.ant-table-tbody .ant-table-row td{
padding-top:15px;
+1 -1
View File
@@ -646,7 +646,7 @@ export default {
</script>
<style lang="less" scoped>
.ant-card-body .table-operator {
margin-bottom: 18px;
margin-bottom: 4px;
}
.ant-table-tbody .ant-table-row td {
+6 -6
View File
@@ -23,7 +23,7 @@
<a-col :md="6" :sm="24">
<span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
<a-button type="primary" @click="searchQuery" icon="search">查询</a-button>
<a-button type="primary" @click="searchReset" icon="reload" style="margin-left: 8px">重置</a-button>
<a-button type="primary" @click="searchReset" icon="reload" class="resetBtn">重置</a-button>
</span>
</a-col>
@@ -50,10 +50,10 @@
<!-- table区域-begin -->
<div>
<div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">
<i class="anticon anticon-info-circle ant-alert-icon"></i> 已选择 <a style="font-weight: 600">{{ selectedRowKeys.length }}</a>项
<a style="margin-left: 24px" @click="onClearSelected">清空</a>
</div>
<!-- <div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">-->
<!-- <i class="anticon anticon-info-circle ant-alert-icon"></i> 已选择 <a style="font-weight: 600">{{ selectedRowKeys.length }}</a>项-->
<!-- <a style="margin-left: 24px" @click="onClearSelected">清空</a>-->
<!-- </div>-->
<a-table
ref="table"
@@ -233,7 +233,7 @@ export default {
</script>
<style scoped>
.ant-card-body .table-operator {
margin-bottom: 18px;
margin-bottom: 4px;
}
.ant-table-tbody .ant-table-row td {
@@ -20,7 +20,7 @@
<a-col :md="8" :sm="24">
<span class="table-page-search-submitButtons">
<a-button type="primary">查询</a-button>
<a-button style="margin-left: 8px">重置</a-button>
<a-button class="resetBtn">重置</a-button>
</span>
</a-col>
</a-row>
@@ -49,12 +49,12 @@
</template>
<a-col :md="!advanced && 8 || 24" :sm="24">
<span class="table-page-search-submitButtons" :style="advanced && { float: 'right', overflow: 'hidden' } || {} ">
<a-button type="primary">查询</a-button>
<a-button style="margin-left: 8px">重置</a-button>
<a @click="toggleAdvanced" style="margin-left: 8px">
<a @click="toggleAdvanced" style="margin-right: 28px">
{{ advanced ? '收起' : '展开' }}
<a-icon :type="advanced ? 'up' : 'down'" />
</a>
<a-button type="primary">查询</a-button>
<a-button class="resetBtn">重置</a-button>
</span>
</a-col>
</a-row>
+3 -3
View File
@@ -49,12 +49,12 @@
</template>
<a-col :md="!advanced && 8 || 24" :sm="24">
<span class="table-page-search-submitButtons" :style="advanced && { float: 'right', overflow: 'hidden' } || {} ">
<a-button type="primary">查询</a-button>
<a-button style="margin-left: 8px" @click="resetSearchForm">重置</a-button>
<a @click="toggleAdvanced" style="margin-left: 8px">
<a @click="toggleAdvanced" style="margin-right: 28px">
{{ advanced ? '收起' : '展开' }}
<a-icon :type="advanced ? 'up' : 'down'"/>
</a>
<a-button type="primary">查询</a-button>
<a-button class="resetBtn" @click="resetSearchForm">重置</a-button>
</span>
</a-col>
</a-row>
@@ -20,10 +20,10 @@
<!-- table区域-begin -->
<div>
<div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">
<i class="anticon anticon-info-circle ant-alert-icon"></i> 已选择 <a style="font-weight: 600">{{ selectedRowKeys.length }}</a>项
<a style="margin-left: 24px" @click="onClearSelected">清空</a>
</div>
<!-- <div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">-->
<!-- <i class="anticon anticon-info-circle ant-alert-icon"></i> 已选择 <a style="font-weight: 600">{{ selectedRowKeys.length }}</a>项-->
<!-- <a style="margin-left: 24px" @click="onClearSelected">清空</a>-->
<!-- </div>-->
<a-table
ref="table"
@@ -23,7 +23,7 @@
<a-col :md="6" :sm="24">
<span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
<a-button type="primary" @click="searchQuery" icon="search">查询</a-button>
<a-button type="primary" @click="searchReset" icon="reload" style="margin-left: 8px">重置</a-button>
<a-button type="primary" @click="searchReset" icon="reload" class="resetBtn">重置</a-button>
</span>
</a-col>
@@ -50,10 +50,10 @@
<!-- table区域-begin -->
<div>
<div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">
<i class="anticon anticon-info-circle ant-alert-icon"></i> 已选择 <a style="font-weight: 600">{{ selectedRowKeys.length }}</a>项
<a style="margin-left: 24px" @click="onClearSelected">清空</a>
</div>
<!-- <div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">-->
<!-- <i class="anticon anticon-info-circle ant-alert-icon"></i> 已选择 <a style="font-weight: 600">{{ selectedRowKeys.length }}</a>项-->
<!-- <a style="margin-left: 24px" @click="onClearSelected">清空</a>-->
<!-- </div>-->
<a-table
ref="table"
@@ -247,7 +247,7 @@ export default {
</script>
<style scoped>
.ant-card-body .table-operator {
margin-bottom: 18px;
margin-bottom: 4px;
}
.ant-table-tbody .ant-table-row td {
@@ -20,10 +20,10 @@
<!-- table区域-begin -->
<div>
<div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">
<i class="anticon anticon-info-circle ant-alert-icon"></i> 已选择 <a style="font-weight: 600">{{ selectedRowKeys.length }}</a>项
<a style="margin-left: 24px" @click="onClearSelected">清空</a>
</div>
<!-- <div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">-->
<!-- <i class="anticon anticon-info-circle ant-alert-icon"></i> 已选择 <a style="font-weight: 600">{{ selectedRowKeys.length }}</a>项-->
<!-- <a style="margin-left: 24px" @click="onClearSelected">清空</a>-->
<!-- </div>-->
<a-table
ref="table"
@@ -15,21 +15,21 @@
<j-input placeholder="请输入发送内容" v-model="queryParam.esContent"></j-input>
</a-form-item>
</a-col>
<template v-if="toggleSearchStatus">
<!-- <template v-if="toggleSearchStatus">-->
<a-col :md="6" :sm="8">
<a-form-item label="接收人">
<j-input placeholder="请输入接收人" v-model="queryParam.esReceiver"></j-input>
</a-form-item>
</a-col>
</template>
<!-- </template>-->
<a-col :md="6" :sm="8">
<span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
<a-button type="primary" @click="searchQuery" icon="search">查询</a-button>
<a-button type="primary" @click="searchReset" icon="reload" style="margin-left: 8px">重置</a-button>
<a @click="handleToggleSearch" style="margin-left: 8px">
{{ toggleSearchStatus ? '收起' : '展开' }}
<a-icon :type="toggleSearchStatus ? 'up' : 'down'"/>
</a>
<a-button type="default" @click="searchReset" icon="reload" class="resetBtn">重置</a-button>
<!-- <a @click="handleToggleSearch" style="margin-left: 8px">-->
<!-- {{ toggleSearchStatus ? '收起' : '展开' }}-->
<!-- <a-icon :type="toggleSearchStatus ? 'up' : 'down'"/>-->
<!-- </a>-->
</span>
</a-col>
@@ -39,11 +39,11 @@
<!-- 操作按钮区域 -->
<div class="table-operator">
<a-button @click="handleAdd" v-show="show" type="primary" icon="plus">新增</a-button>
<a-button type="primary" v-show="show" icon="download" @click="handleExportXls('消息')">导出</a-button>
<a-upload v-show="show" name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl" :before-upload='beforeUpload'
@change="handleImportExcel">
<a-button type="primary" icon="import">导入</a-button>
<a-button @click="handleAdd" v-show="show" type="default" icon="plus">新增</a-button>
<a-button type="default" v-show="show" icon="download" @click="handleExportXls('消息')">导出</a-button>
<a-upload v-show="show" name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl"
@change="handleImportExcel" :before-upload='beforeUpload'>
<a-button type="default" icon="import">导入</a-button>
</a-upload>
<a-dropdown v-if="selectedRowKeys.length > 0">
<a-menu slot="overlay">
@@ -60,11 +60,11 @@
<!-- table区域-begin -->
<div>
<div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">
<i class="anticon anticon-info-circle ant-alert-icon"></i> 已选择 <a style="font-weight: 600">{{
selectedRowKeys.length }}</a>
<a style="margin-left: 24px" @click="onClearSelected">清空</a>
</div>
<!-- <div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">-->
<!-- <i class="anticon anticon-info-circle ant-alert-icon"></i> 已选择 <a style="font-weight: 600">{{-->
<!-- selectedRowKeys.length }}</a>-->
<!-- <a style="margin-left: 24px" @click="onClearSelected">清空</a>-->
<!-- </div>-->
<a-table
ref="table"
@@ -92,7 +92,7 @@
<a-menu-item v-show="show">
<a @click="handleEdit(record)">编辑</a>
</a-menu-item>
<a-menu-item>
<a-menu-item v-has="'message:del'">
<a-popconfirm title="确定删除吗?" @confirm="() => handleDelete(record.id)">
<a>删除</a>
</a-popconfirm>
@@ -206,7 +206,7 @@ export default {
}
.ant-card-body .table-operator {
margin-bottom: 18px;
margin-bottom: 4px;
}
.ant-table-tbody .ant-table-row td {
@@ -16,21 +16,21 @@
<j-input placeholder="请输入模板内容" v-model="queryParam.templateContent"></j-input>
</a-form-item>
</a-col>
<template v-if="toggleSearchStatus">
<!-- <template v-if="toggleSearchStatus">-->
<a-col :md="6" :sm="8">
<a-form-item label="模板标题">
<j-input placeholder="请输入模板标题" v-model="queryParam.templateName"></j-input>
</a-form-item>
</a-col>
</template>
<!-- </template>-->
<a-col :md="6" :sm="8">
<span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
<a-button type="primary" @click="searchQuery" icon="search">查询</a-button>
<a-button type="primary" @click="searchReset" icon="reload" style="margin-left: 8px">重置</a-button>
<a @click="handleToggleSearch" style="margin-left: 8px">
{{ toggleSearchStatus ? '收起' : '展开' }}
<a-icon :type="toggleSearchStatus ? 'up' : 'down'"/>
</a>
<a-button type="default" @click="searchReset" icon="reload" class="resetBtn">重置</a-button>
<!-- <a @click="handleToggleSearch" style="margin-left: 8px">-->
<!-- {{ toggleSearchStatus ? '收起' : '展开' }}-->
<!-- <a-icon :type="toggleSearchStatus ? 'up' : 'down'"/>-->
<!-- </a>-->
</span>
</a-col>
@@ -40,11 +40,11 @@
<!-- 操作按钮区域 -->
<div class="table-operator">
<a-button @click="handleAdd" type="primary" icon="plus">新增</a-button>
<a-button type="primary" icon="download" @click="handleExportXls('消息模板')">导出</a-button>
<a-button @click="handleAdd" type="default" icon="plus" v-has="'message:template:add'">新增</a-button>
<a-button type="default" icon="download" @click="handleExportXls('消息模板')" v-has="'message:template:export'">导出</a-button>
<a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl"
@change="handleImportExcel" :before-upload='beforeUpload' accept='.xls,xlsx'>
<a-button type="primary" icon="import">导入</a-button>
@change="handleImportExcel" :before-upload='beforeUpload'>
<a-button type="default" icon="import" v-has="'message:template:import'">导入</a-button>
</a-upload>
<a-dropdown v-if="selectedRowKeys.length > 0">
<a-menu slot="overlay">
@@ -61,11 +61,11 @@
<!-- table区域-begin -->
<div>
<div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">
<i class="anticon anticon-info-circle ant-alert-icon"></i> 已选择 <a style="font-weight: 600">{{
selectedRowKeys.length }}</a>
<a style="margin-left: 24px" @click="onClearSelected">清空</a>
</div>
<!-- <div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">-->
<!-- <i class="anticon anticon-info-circle ant-alert-icon"></i> 已选择 <a style="font-weight: 600">{{-->
<!-- selectedRowKeys.length }}</a>-->
<!-- <a style="margin-left: 24px" @click="onClearSelected">清空</a>-->
<!-- </div>-->
<a-table
ref="table"
@@ -85,18 +85,18 @@
</span>
<span slot="action" slot-scope="text, record">
<a @click="handleEdit(record)">编辑</a>
<a @click="handleEdit(record)" v-has="'message:template:edit'">编辑</a>
<a-divider type="vertical"/>
<a-dropdown>
<a class="ant-dropdown-link">更多 <a-icon type="down"/></a>
<a-menu slot="overlay">
<a-menu-item>
<a-menu-item v-has="'message:template:del'">
<a-popconfirm title="确定删除吗?" @confirm="() => handleDelete(record.id)">
<a>删除</a>
</a-popconfirm>
</a-menu-item>
<a-menu-item>
<a-menu-item v-has="'message:template:send'">
<a @click="handleTest(record)">发送测试</a>
</a-menu-item>
</a-menu>
@@ -215,7 +215,7 @@ export default {
}
.ant-card-body .table-operator {
margin-bottom: 18px;
margin-bottom: 4px;
}
.ant-table-tbody .ant-table-row td {
@@ -17,7 +17,7 @@
<a-col :md="6" :sm="8">
<span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
<a-button type="primary" @click="searchQuery" icon="search">查询</a-button>
<a-button type="primary" @click="searchReset" icon="reload" style="margin-left: 8px">重置</a-button>
<a-button type="primary" @click="searchReset" icon="reload" class="resetBtn">重置</a-button>
</span>
</a-col>
</a-row>
@@ -44,12 +44,12 @@
<!-- table区域-begin -->
<div>
<div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">
<i class="anticon anticon-info-circle ant-alert-icon"></i> 已选择 <a
style="font-weight: 600">{{
selectedRowKeys.length }}</a>
<a style="margin-left: 24px" @click="onClearSelected">清空</a>
</div>
<!-- <div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">-->
<!-- <i class="anticon anticon-info-circle ant-alert-icon"></i> 已选择 <a-->
<!-- style="font-weight: 600">{{-->
<!-- selectedRowKeys.length }}</a>-->
<!-- <a style="margin-left: 24px" @click="onClearSelected">清空</a>-->
<!-- </div>-->
<a-table
ref="table"
+8 -8
View File
@@ -16,9 +16,9 @@
</a-col>
<span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
<a-col :md="6" :sm="24">
<a-button type="primary" @click="searchQuery">查询</a-button>
<a-button style="margin-left: 8px" @click="searchReset">重置</a-button>
<a-col :md="6" :sm="8">
<a-button type="primary" icon="search" @click="searchQuery">查询</a-button>
<a-button type="default" class="resetBtn" icon="reload" @click="searchReset">重置</a-button>
</a-col>
</span>
</a-row>
@@ -27,16 +27,16 @@
<!-- 操作按钮区域 -->
<div class="table-operator">
<a-button @click="handleCompare()" type="primary" icon="plus">数据比较</a-button>
<a-button @click="handleCompare()" type="default" icon="plus">数据比较</a-button>
</div>
<!--table区 -->
<div>
<!--已选择的清空 -->
<div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">
<i class="anticon anticon-info-circle ant-alert-icon"></i>已选择&nbsp;<a style="font-weight: 600">{{ selectedRowKeys.length }}</a>项&nbsp;&nbsp;
<a style="margin-left: 24px" @click="onClearSelected">清空</a>
</div>
<!-- <div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">-->
<!-- <i class="anticon anticon-info-circle ant-alert-icon"></i>已选择&nbsp;<a style="font-weight: 600">{{ selectedRowKeys.length }}</a>项&nbsp;&nbsp;-->
<!-- <a style="margin-left: 24px" @click="onClearSelected">清空</a>-->
<!-- </div>-->
<a-table
ref="table"
size="middle"
+12 -12
View File
@@ -5,22 +5,22 @@
<!-- 按钮操作区域 -->
<a-row style="margin-left: 14px">
<a-button @click="handleAdd(1)" type="primary">添加部门</a-button>
<a-button @click="handleAdd(2)" type="primary">添加下级</a-button>
<a-button type="primary" icon="download" @click="handleExportXls('部门信息')">导出</a-button>
<a-button @click="handleAdd(1)" type="default">添加部门</a-button>
<a-button @click="handleAdd(2)" type="default">添加下级</a-button>
<a-button type="default" icon="download" @click="handleExportXls('部门信息')">导出</a-button>
<a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl" @change="handleImportExcel" :before-upload='beforeUpload'>
<a-button type="primary" icon="import">导入</a-button>
<a-button type="default" icon="import">导入</a-button>
</a-upload>
<a-button title="删除多条数据" @click="batchDel" type="default">批量删除</a-button>
<!--<a-button @click="refresh" type="default" icon="reload" :loading="loading">刷新</a-button>-->
</a-row>
<div style="background: #fff;padding-left:16px;height: 100%; margin-top: 5px">
<a-alert type="info" :showIcon="true">
<div slot="message">
当前选择<span v-if="this.currSelected.title">{{ getCurrSelectedTitle() }}</span>
<a v-if="this.currSelected.title" style="margin-left: 10px" @click="onClearSelected">取消选择</a>
</div>
</a-alert>
<!-- <a-alert type="info" :showIcon="true">-->
<!-- <div slot="message">-->
<!-- 当前选择<span v-if="this.currSelected.title">{{ getCurrSelectedTitle() }}</span>-->
<!-- <a v-if="this.currSelected.title" style="margin-left: 10px" @click="onClearSelected">取消选择</a>-->
<!-- </div>-->
<!-- </a-alert>-->
<a-input-search @search="onSearch" style="width:100%;margin-top: 10px" placeholder="请输入部门名称"/>
<!-- -->
<a-col :md="10" :sm="24">
@@ -111,7 +111,7 @@
</template>
</a-form-model-item>
<a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" label="排序">
<a-input-number v-model="model.departOrder" />
<a-input-number :max="1000000" :min="1" v-model="model.departOrder" />
</a-form-model-item>
<a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" label="手机号">
<a-input placeholder="请输入手机号" v-model="model.mobile" />
@@ -551,7 +551,7 @@ export default {
</script>
<style scoped>
.ant-card-body .table-operator {
margin: 15px;
margin-bottom: 4px;
}
.anty-form-btn {
+6 -6
View File
@@ -5,11 +5,11 @@
<!-- 按钮操作区域 -->
<a-row style="margin: 0 0 0 14px" class="table-operator">
<a-button @click="handleAdd(1)" type="primary">添加部门</a-button>
<a-button @click="handleAdd(2)" type="primary">添加下级</a-button>
<a-button type="primary" icon="download" @click="handleExportXls('部门信息')">导出</a-button>
<a-button @click="handleAdd(1)" type="default">添加部门</a-button>
<a-button @click="handleAdd(2)" type="default">添加下级</a-button>
<a-button type="default" icon="download" @click="handleExportXls('部门信息')">导出</a-button>
<a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl" @change="handleImportExcel" :before-upload='beforeUpload'>
<a-button type="primary" icon="import">导入</a-button>
<a-button type="default" icon="import">导入</a-button>
</a-upload>
<j-third-app-button biz-type="depart" :selected-row-keys="selectedRowKeys" syncToApp @sync-finally="onSyncFinally"/>
<a-button title="删除多条数据" @click="batchDel" type="default">批量删除</a-button>
@@ -105,7 +105,7 @@
</template>
</a-form-model-item>
<a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" label="排序" prop="departOrder">
<a-input-number v-model="model.departOrder"/>
<a-input-number :max="1000000" :min="1" v-model="model.departOrder"/>
</a-form-model-item>
<a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" label="手机号" prop="mobile">
<a-input placeholder="请输入手机号" v-model="model.mobile"/>
@@ -616,7 +616,7 @@ export default {
</style>
<style scoped>
.ant-card-body .table-operator {
margin: 15px;
margin-bottom: 4px;
}
.anty-form-btn {
+1 -1
View File
@@ -37,7 +37,7 @@
<a-col :md="7" :sm="24">
<span style="float: left;" class="table-page-search-submitButtons">
<a-button type="primary" @click="searchQuery">搜索</a-button>
<a-button type="primary" @click="searchReset" style="margin-left: 8px">重置</a-button>
<a-button type="primary" @click="searchReset" class="resetBtn">重置</a-button>
</span>
</a-col>
</a-row>
+10 -10
View File
@@ -5,34 +5,34 @@
<div class="table-page-search-wrapper">
<a-form layout="inline" @keyup.enter.native="searchQuery">
<a-row :gutter="12">
<a-col :md="7" :sm="8">
<a-col :md="6" :sm="8">
<a-form-item label="字典名称" :labelCol="{span: 6}" :wrapperCol="{span: 14, offset: 1}">
<j-input placeholder="请输入字典名称" v-model="queryParam.dictName"></j-input>
</a-form-item>
</a-col>
<a-col :md="7" :sm="8">
<a-col :md="6" :sm="8">
<a-form-item label="字典编号" :labelCol="{span: 6}" :wrapperCol="{span: 14, offset: 1}">
<j-input placeholder="请输入字典编号" v-model="queryParam.dictCode"></j-input>
</a-form-item>
</a-col>
<a-col :md="7" :sm="8">
<a-col :md="6" :sm="8">
<span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
<a-button type="primary" @click="searchQuery" icon="search">查询</a-button>
<a-button type="primary" @click="searchReset" icon="reload" style="margin-left: 8px">重置</a-button>
<a-button type="default" @click="searchReset" icon="reload" class="resetBtn">重置</a-button>
</span>
</a-col>
</a-row>
</a-form>
<div class="table-operator" style="border-top: 5px">
<a-button @click="handleAdd" type="primary" icon="plus" v-has="'sys:dict:operation'">添加</a-button>
<a-button type="primary" icon="download" @click="handleExportXls('字典信息')" v-has="'sys:dict:operation'">导出</a-button>
<a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :before-upload='beforeUpload' :action="importExcelUrl" @change="handleImportExcel" v-has="'sys:dict:operation'">
<a-button type="primary" icon="import">导入</a-button>
<a-button @click="handleAdd" type="default" icon="plus" v-has="'sys:dict:operation'">添加</a-button>
<a-button type="default" icon="download" @click="handleExportXls('字典信息')" v-has="'sys:dict:operation'">导出</a-button>
<a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl" :before-upload='beforeUpload' @change="handleImportExcel" v-has="'sys:dict:operation'">
<a-button type="default" icon="import">导入</a-button>
</a-upload>
<a-button type="primary" icon="sync" @click="refleshCache()">刷新缓存</a-button>
<a-button type="default" icon="sync" @click="refleshCache()">刷新缓存</a-button>
<a-button type="primary" icon="hdd" @click="openDeleteList">回收站</a-button>
<a-button type="default" icon="hdd" @click="openDeleteList">回收站</a-button>
</div>
<a-table
@@ -16,11 +16,11 @@
<!-- table区域-begin -->
<div>
<div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">
<i class="anticon anticon-info-circle ant-alert-icon"></i>已选择&nbsp;<a style="font-weight: 600">{{
selectedRowKeys.length }}</a>&nbsp;&nbsp;
<a style="margin-left: 24px" @click="onClearSelected">清空</a>
</div>
<!-- <div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">-->
<!-- <i class="anticon anticon-info-circle ant-alert-icon"></i>已选择&nbsp;<a style="font-weight: 600">{{-->
<!-- selectedRowKeys.length }}</a>&nbsp;&nbsp;-->
<!-- <a style="margin-left: 24px" @click="onClearSelected">清空</a>-->
<!-- </div>-->
<a-table
:columns="columns"
@@ -28,7 +28,7 @@
<a-col :md="7" :sm="8">
<span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
<a-button type="primary" @click="searchQuery" icon="search">查询</a-button>
<a-button type="primary" @click="searchReset" icon="reload" style="margin-left: 8px">重置</a-button>
<a-button type="primary" @click="searchReset" icon="reload" class="resetBtn">重置</a-button>
</span>
</a-col>
</a-row>
+8 -8
View File
@@ -3,12 +3,12 @@
<!-- 操作按钮区域 -->
<div class="table-operator">
<a-button @click="handleAdd" type="primary" icon="plus">新增</a-button>
<a-button @click="handleAdd" type="default" icon="plus">新增</a-button>
<a-button
@click="batchDel"
v-if="selectedRowKeys.length > 0"
ghost
type="primary"
type="default"
icon="delete">批量删除
</a-button>
</div>
@@ -16,11 +16,11 @@
<!-- table区域-begin -->
<div>
<div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">
<i class="anticon anticon-info-circle ant-alert-icon"></i>已选择&nbsp;<a style="font-weight: 600">{{
selectedRowKeys.length }}</a>&nbsp;&nbsp;
<a style="margin-left: 24px" @click="onClearSelected">清空</a>
</div>
<!-- <div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">-->
<!-- <i class="anticon anticon-info-circle ant-alert-icon"></i>已选择&nbsp;<a style="font-weight: 600">{{-->
<!-- selectedRowKeys.length }}</a>&nbsp;&nbsp;-->
<!-- <a style="margin-left: 24px" @click="onClearSelected">清空</a>-->
<!-- </div>-->
<a-table
:columns="columns"
+9 -9
View File
@@ -24,7 +24,7 @@
<a-col :md="6" :sm="10" >
<span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
<a-button type="primary" @click="searchQuery" icon="search">查询</a-button>
<a-button type="primary" @click="searchReset" icon="reload" style="margin-left: 8px">重置</a-button>
<a-button type="default" @click="searchReset" icon="reload" class="resetBtn">重置</a-button>
</span>
</a-col>
@@ -34,10 +34,10 @@
<!-- 操作按钮区域 -->
<div class="table-operator">
<a-button @click="handleAdd" type="primary" icon="plus">新增</a-button>
<a-button type="primary" icon="download" @click="handleExportXls('定时任务信息')">导出</a-button>
<a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl" @change="handleImportExcel" :before-upload='beforeUpload'>
<a-button type="primary" icon="import">导入</a-button>
<a-button @click="handleAdd" type="default" icon="plus">新增</a-button>
<a-button type="default" icon="download" @click="handleExportXls('定时任务信息')">导出</a-button>
<a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :before-upload='beforeUpload' :action="importExcelUrl" @change="handleImportExcel">
<a-button type="default" icon="import">导入</a-button>
</a-upload>
<a-dropdown v-if="selectedRowKeys.length > 0">
<a-menu slot="overlay">
@@ -49,10 +49,10 @@
<!-- table区域-begin -->
<div>
<div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">
<i class="anticon anticon-info-circle ant-alert-icon"></i> 已选择 <a style="font-weight: 600">{{ selectedRowKeys.length }}</a>项
<a style="margin-left: 24px" @click="onClearSelected">清空</a>
</div>
<!-- <div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">-->
<!-- <i class="anticon anticon-info-circle ant-alert-icon"></i> 已选择 <a style="font-weight: 600">{{ selectedRowKeys.length }}</a>项-->
<!-- <a style="margin-left: 24px" @click="onClearSelected">清空</a>-->
<!-- </div>-->
<a-table
ref="table"
+17 -17
View File
@@ -7,7 +7,7 @@
<!-- 搜索区域 -->
<a-form layout="inline" @keyup.enter.native="searchQuery">
<a-row :gutter="24">
<a-col :md="12" :sm="8">
<a-col :md="6" :sm="8">
<a-form-item label="角色名称" :labelCol="{span: 5}" :wrapperCol="{span: 18, offset: 1}">
<j-input placeholder="" v-model="queryParam.roleName"></j-input>
</a-form-item>
@@ -22,17 +22,17 @@
</a-col>
-->
<span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
<a-col :md="12" :sm="24">
<a-col :md="6" :sm="24">
<a-button type="primary" @click="searchQuery" icon="search" style="margin-left: 21px">查询</a-button>
<a-button type="primary" @click="searchReset" icon="reload" style="margin-left: 8px">重置</a-button>
<a-button type="default" @click="searchReset" icon="reload" class="resetBtn">重置</a-button>
</a-col>
</span>
</a-row>
</a-form>
</div>
<!-- 操作按钮区域 -->
<div class="table-operator" style="margin: 5px 0 10px 2px">
<a-button @click="handleAdd" type="primary" icon="plus">新建角色</a-button>
<div class="table-operator" style="margin: 0 0 4px 2px">
<a-button @click="handleAdd" type="default" icon="plus">新建角色</a-button>
<!--<a-button @click="handleEdit(model1)" type="primary" icon="plus">角色编辑</a-button>-->
<!-- <a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl" @change="handleImportExcel">-->
<!-- <a-button type="primary" icon="import">导入</a-button>-->
@@ -40,13 +40,13 @@
<!-- <a-button type="primary" icon="download" @click="handleExportXls('角色管理')">导出</a-button>-->
</div>
<div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">
<i class="anticon anticon-info-circle ant-alert-icon">
</i> 已选择 <a><b>{{ selectedRowKeys1.length }}</b></a>
<a style="margin-left: 24px" @click="onClearSelected1">清空</a>
</div>
<!-- <div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">-->
<!-- <i class="anticon anticon-info-circle ant-alert-icon">-->
<!-- </i> 已选择 <a><b>{{ selectedRowKeys1.length }}</b></a>-->
<!-- <a style="margin-left: 24px" @click="onClearSelected1">清空</a>-->
<!-- </div>-->
<div style="margin-top: 15px">
<div >
<a-table
style="height:500px"
ref="table"
@@ -107,7 +107,7 @@
<span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
<a-col :md="9" :sm="24">
<a-button type="primary" @click="searchQuery2" icon="search" style="margin-left: 21px">查询</a-button>
<a-button type="primary" @click="searchReset2" icon="reload" style="margin-left: 8px">重置</a-button>
<a-button type="primary" @click="searchReset2" icon="reload" class="resetBtn">重置</a-button>
</a-col>
</span>
@@ -134,11 +134,11 @@
</div>
<!-- table区域-begin -->
<div>
<div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">
<i class="anticon anticon-info-circle ant-alert-icon"></i> 已选择 <a style="font-weight: 600">{{
selectedRowKeys2.length }}</a>
<a style="margin-left: 24px" @click="onClearSelected2">清空</a>
</div>
<!-- <div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">-->
<!-- <i class="anticon anticon-info-circle ant-alert-icon"></i> 已选择 <a style="font-weight: 600">{{-->
<!-- selectedRowKeys2.length }}</a>-->
<!-- <a style="margin-left: 24px" @click="onClearSelected2">清空</a>-->
<!-- </div>-->
<a-table
style="height:500px"
ref="table2"
@@ -6,15 +6,15 @@
<a-form layout="inline" @keyup.enter.native="searchQuery">
<a-row :gutter="24">
<a-col :span="6">
<a-col :md="6" :sm="8">
<a-form-item label="标题">
<a-input placeholder="请输入标题" v-model="queryParam.titile"></a-input>
</a-form-item>
</a-col>
<a-col :span="8">
<a-col :md="6" :sm="8">
<span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
<a-button type="primary" @click="searchQuery" icon="search">查询</a-button>
<a-button type="primary" @click="searchReset" icon="reload" style="margin-left: 8px">重置</a-button>
<a-button type="default" @click="searchReset" icon="reload" class="resetBtn">重置</a-button>
</span>
</a-col>
@@ -24,7 +24,7 @@
<!-- 操作按钮区域 -->
<div class="table-operator">
<a-button @click="handleAdd" type="primary" icon="plus">新增</a-button>
<a-button @click="handleAdd" type="default" icon="plus" v-has="'annount:cement:add'">新增</a-button>
<a-dropdown v-if="selectedRowKeys.length > 0">
<a-menu slot="overlay">
<a-menu-item key="1" @click="batchDel">
@@ -40,10 +40,10 @@
<!-- table区域-begin -->
<div>
<div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">
<i class="anticon anticon-info-circle ant-alert-icon"></i> 已选择 <a style="font-weight: 600">{{ selectedRowKeys.length }}</a>项
<a style="margin-left: 24px" @click="onClearSelected">清空</a>
</div>
<!-- <div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">-->
<!-- <i class="anticon anticon-info-circle ant-alert-icon"></i> 已选择 <a style="font-weight: 600">{{ selectedRowKeys.length }}</a>项-->
<!-- <a style="margin-left: 24px" @click="onClearSelected">清空</a>-->
<!-- </div>-->
<a-table
ref="table"
@@ -58,23 +58,23 @@
@change="handleTableChange">
<span slot="action" slot-scope="text, record">
<a v-if="(record.sendStatus + '') === '0'" @click="handleEdit(record)">编辑</a>
<a v-has="'annount:cement:edit'" v-if="(record.sendStatus + '') === '0'" @click="handleEdit(record)">编辑</a>
<a-divider type="vertical" v-if="(record.sendStatus + '') === '0'"/>
<a-dropdown>
<a class="ant-dropdown-link">更多 <a-icon type="down"/></a>
<a-menu slot="overlay">
<a-menu-item v-if="(record.sendStatus + '') !== '1'">
<a-menu-item v-if="(record.sendStatus + '') !== '1'" v-has="'annount:cement:del'">
<a-popconfirm title="确定删除吗?" @confirm="() => handleDelete(record.id)">
<a>删除</a>
<a >删除</a>
</a-popconfirm>
</a-menu-item>
<a-menu-item v-if="(record.sendStatus + '') === '0'">
<a-menu-item v-if="(record.sendStatus + '') === '0'" v-has="'annount:cement:send'">
<a-popconfirm title="确定发布吗?" @confirm="() => releaseData(record.id)">
<a>发布</a>
</a-popconfirm>
</a-menu-item>
<a-menu-item v-if="(record.sendStatus + '') === '1'">
<a-menu-item v-if="(record.sendStatus + '') === '1'" v-has="'annount:cement:reback'">
<a-popconfirm title="确定撤销吗?" @confirm="() => reovkeData(record.id)">
<a>撤销</a>
</a-popconfirm>
@@ -3,10 +3,10 @@
<!-- 操作按钮区域 -->
<div class="table-operator">
<a-button @click="handleAdd" type="primary" icon="plus" v-has="'sys:category:add'">新增</a-button>
<a-button type="primary" icon="download" @click="handleExportXls('分类字典')" v-has="'sys:category:export'">导出</a-button>
<a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl" @change="handleImportExcel" :before-upload='beforeUpload' v-has="'sys:category:import'">
<a-button type="primary" icon="import">导入</a-button>
<a-button @click="handleAdd" type="default" icon="plus" v-has="'sys:category:add'">新增</a-button>
<a-button type="default" icon="download" @click="handleExportXls('分类字典')" v-has="'sys:category:export'">导出</a-button>
<a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl" :before-upload='beforeUpload' @change="handleImportExcel" v-has="'sys:category:import'">
<a-button type="default" icon="import">导入</a-button>
</a-upload>
<a-dropdown v-if="selectedRowKeys.length > 0" v-has="'sys:category:del'">
<a-menu slot="overlay">
@@ -18,10 +18,10 @@
<!-- table区域-begin -->
<div>
<div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">
<i class="anticon anticon-info-circle ant-alert-icon"></i> 已选择 <a style="font-weight: 600">{{ selectedRowKeys.length }}</a>项
<a style="margin-left: 24px" @click="onClearSelected">清空</a>
</div>
<!-- <div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">-->
<!-- <i class="anticon anticon-info-circle ant-alert-icon"></i> 已选择 <a style="font-weight: 600">{{ selectedRowKeys.length }}</a>项-->
<!-- <a style="margin-left: 24px" @click="onClearSelected">清空</a>-->
<!-- </div>-->
<a-table
ref="table"
+19 -19
View File
@@ -21,11 +21,11 @@
<a-col :md="6" :sm="8">
<span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
<a-button type="primary" @click="searchQuery" icon="search">查询</a-button>
<a-button type="primary" @click="searchReset" icon="reload" style="margin-left: 8px">重置</a-button>
<a @click="handleToggleSearch" style="margin-left: 8px">
{{ toggleSearchStatus ? '收起' : '展开' }}
<a-icon :type="toggleSearchStatus ? 'up' : 'down'"/>
</a>
<a-button type="default" @click="searchReset" icon="reload" class="resetBtn">重置</a-button>
<!-- <a @click="handleToggleSearch" style="margin-left: 8px">-->
<!-- {{ toggleSearchStatus ? '收起' : '展开' }}-->
<!-- <a-icon :type="toggleSearchStatus ? 'up' : 'down'"/>-->
<!-- </a>-->
</span>
</a-col>
@@ -35,10 +35,10 @@
<!-- 操作按钮区域 -->
<div class="table-operator">
<a-button @click="handleAdd" type="primary" icon="plus">新增</a-button>
<a-button type="primary" icon="download" @click="handleExportXls('编码校验规则')">导出</a-button>
<a-button @click="handleAdd" type="default" icon="plus">新增</a-button>
<a-button type="default" icon="download" @click="handleExportXls('编码校验规则')">导出</a-button>
<a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl" @change="handleImportExcel" :before-upload='beforeUpload'>
<a-button type="primary" icon="import">导入</a-button>
<a-button type="default" icon="import">导入</a-button>
</a-upload>
<a-dropdown v-if="selectedRowKeys.length > 0">
<a-menu slot="overlay">
@@ -54,17 +54,17 @@
</div>
<!-- table区域-begin -->
<a-alert type="info" showIcon style="margin-bottom: 16px;">
<template slot="message">
<span>已选择</span>
<a style="font-weight: 600;padding: 0 4px;">{{ selectedRowKeys.length }}</a>
<span></span>
<template v-if="selectedRowKeys.length>0">
<a-divider type="vertical"/>
<a @click="onClearSelected">清空</a>
</template>
</template>
</a-alert>
<!-- <a-alert type="info" showIcon style="margin-bottom: 16px;">-->
<!-- <template slot="message">-->
<!-- <span>已选择</span>-->
<!-- <a style="font-weight: 600;padding: 0 4px;">{{ selectedRowKeys.length }}</a>-->
<!-- <span></span>-->
<!-- <template v-if="selectedRowKeys.length>0">-->
<!-- <a-divider type="vertical"/>-->
<!-- <a @click="onClearSelected">清空</a>-->
<!-- </template>-->
<!-- </template>-->
<!-- </a-alert>-->
<a-table
ref="table"
+12 -12
View File
@@ -21,7 +21,7 @@
<a-col :md="6" :sm="8">
<span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
<a-button type="primary" @click="searchQuery" icon="search">查询</a-button>
<a-button type="primary" @click="searchReset" icon="reload" style="margin-left: 8px">重置</a-button>
<a-button type="default" @click="searchReset" icon="reload" class="resetBtn">重置</a-button>
</span>
</a-col>
@@ -31,10 +31,10 @@
<!-- 操作按钮区域 -->
<div class="table-operator">
<a-button @click="handleAdd" type="primary" icon="plus">新增</a-button>
<a-button type="primary" icon="download" @click="handleExportXls('多数据源管理')">导出</a-button>
<a-button @click="handleAdd" type="default" icon="plus">新增</a-button>
<a-button type="default" icon="download" @click="handleExportXls('多数据源管理')">导出</a-button>
<a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl" @change="handleImportExcel" :before-upload='beforeUpload'>
<a-button type="primary" icon="import">导入</a-button>
<a-button type="default" icon="import">导入</a-button>
</a-upload>
<a-dropdown v-if="selectedRowKeys.length > 0">
<a-menu slot="overlay">
@@ -52,14 +52,14 @@
<!-- table区域-begin -->
<div>
<a-alert type="info" showIcon style="margin-bottom: 16px;">
<template slot="message">
<span>已选择</span>
<a style="font-weight: 600;padding: 0 4px;">{{ selectedRowKeys.length }}</a>
<span></span>
<a style="margin-left: 24px" @click="onClearSelected">清空</a>
</template>
</a-alert>
<!-- <a-alert type="info" showIcon style="margin-bottom: 16px;">-->
<!-- <template slot="message">-->
<!-- <span>已选择</span>-->
<!-- <a style="font-weight: 600;padding: 0 4px;">{{ selectedRowKeys.length }}</a>-->
<!-- <span></span>-->
<!-- <a style="margin-left: 24px" @click="onClearSelected">清空</a>-->
<!-- </template>-->
<!-- </a-alert>-->
<a-table
ref="table"
+15 -15
View File
@@ -18,7 +18,7 @@
<a-col :md="6" :sm="8">
<span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
<a-button type="primary" @click="searchQuery" icon="search">查询</a-button>
<a-button type="primary" @click="searchReset" icon="reload" style="margin-left: 8px">重置</a-button>
<a-button type="default" @click="searchReset" icon="reload" class="resetBtn">重置</a-button>
</span>
</a-col>
</a-row>
@@ -27,10 +27,10 @@
<!-- 操作按钮区域 -->
<div class="table-operator">
<a-button @click="handleAdd" type="primary" icon="plus">新增</a-button>
<a-button type="primary" icon="download" @click="handleExportXls('填值规则')">导出</a-button>
<a-button @click="handleAdd" type="default" icon="plus">新增</a-button>
<a-button type="default" icon="download" @click="handleExportXls('填值规则')">导出</a-button>
<a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl" @change="handleImportExcel" :before-upload='beforeUpload'>
<a-button type="primary" icon="import">导入</a-button>
<a-button type="default" icon="import">导入</a-button>
</a-upload>
<a-dropdown v-if="selectedRowKeys.length > 0">
<a-menu slot="overlay">
@@ -46,17 +46,17 @@
</div>
<!-- table区域-begin -->
<a-alert type="info" showIcon style="margin-bottom: 16px;">
<template slot="message">
<span>已选择</span>
<a style="font-weight: 600;padding: 0 4px;">{{ selectedRowKeys.length }}</a>
<span></span>
<template v-if="selectedRowKeys.length>0">
<a-divider type="vertical"/>
<a @click="onClearSelected">清空</a>
</template>
</template>
</a-alert>
<!-- <a-alert type="info" showIcon style="margin-bottom: 16px;">-->
<!-- <template slot="message">-->
<!-- <span>已选择</span>-->
<!-- <a style="font-weight: 600;padding: 0 4px;">{{ selectedRowKeys.length }}</a>-->
<!-- <span></span>-->
<!-- <template v-if="selectedRowKeys.length>0">-->
<!-- <a-divider type="vertical"/>-->
<!-- <a @click="onClearSelected">清空</a>-->
<!-- </template>-->
<!-- </template>-->
<!-- </a-alert>-->
<a-table
ref="table"
@@ -2,7 +2,7 @@
<a-card :bordered="false">
<!-- 操作按钮区域 -->
<div class="table-operator">
<a-button @click="showModal(null)" type="primary" icon="plus">新增</a-button>
<a-button @click="showModal(null)" type="default" icon="plus">新增</a-button>
</div>
<div>
<a-table
@@ -12,7 +12,7 @@
<a-col :md="6" :sm="8">
<span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
<a-button type="primary" @click="searchQuery" icon="search">查询</a-button>
<a-button type="primary" @click="searchReset" icon="reload" style="margin-left: 8px">重置</a-button>
<a-button type="default" @click="searchReset" icon="reload" class="resetBtn">重置</a-button>
</span>
</a-col>
</a-row>
@@ -22,10 +22,10 @@
<!-- table区域-begin -->
<div>
<div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">
<i class="anticon anticon-info-circle ant-alert-icon"></i> 已选择 <a style="font-weight: 600">{{ selectedRowKeys.length }}</a>项
<a style="margin-left: 24px" @click="onClearSelected">清空</a>
</div>
<!-- <div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">-->
<!-- <i class="anticon anticon-info-circle ant-alert-icon"></i> 已选择 <a style="font-weight: 600">{{ selectedRowKeys.length }}</a>项-->
<!-- <a style="margin-left: 24px" @click="onClearSelected">清空</a>-->
<!-- </div>-->
<a-table
ref="table"
@@ -49,7 +49,7 @@
<span slot="action" slot-scope="text, record">
<a-popconfirm title="强制退出用户?" @confirm="() => handleForce(record)">
<a-button type="danger">强退</a-button>
<a>强退</a>
</a-popconfirm>
</span>
+5 -5
View File
@@ -11,7 +11,7 @@
<!-- 操作按钮区域 -->
<div class="table-operator">
<a-button @click="handleAdd" type="primary" icon="plus">新增</a-button>
<a-button @click="handleAdd" type="default" icon="plus">新增</a-button>
<a-dropdown v-if="selectedRowKeys.length > 0">
<a-menu slot="overlay">
<a-menu-item key="1" @click="batchDel"><a-icon type="delete"/>删除</a-menu-item>
@@ -22,10 +22,10 @@
<!-- table区域-begin -->
<div>
<div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">
<i class="anticon anticon-info-circle ant-alert-icon"></i> 已选择 <a style="font-weight: 600">{{ selectedRowKeys.length }}</a>项
<a style="margin-left: 24px" @click="onClearSelected">清空</a>
</div>
<!-- <div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">-->
<!-- <i class="anticon anticon-info-circle ant-alert-icon"></i> 已选择 <a style="font-weight: 600">{{ selectedRowKeys.length }}</a>项-->
<!-- <a style="margin-left: 24px" @click="onClearSelected">清空</a>-->
<!-- </div>-->
<a-table
ref="table"
@@ -5,21 +5,21 @@
<a-form layout="inline" @keyup.enter.native="searchQuery">
<a-row :gutter="24">
<a-col :span="6">
<a-col :md="6" :sm="8">
<a-form-item label="标题">
<a-input placeholder="请输入标题" v-model="queryParam.titile"></a-input>
</a-form-item>
</a-col>
<a-col :span="6">
<a-col :md="6" :sm="8">
<a-form-item label="发布人">
<a-input placeholder="请输入发布人" v-model="queryParam.sender"></a-input>
</a-form-item>
</a-col>
<a-col :span="8" >
<a-col :md="6" :sm="8" >
<span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
<a-button type="primary" @click="searchQuery" icon="search">查询</a-button>
<a-button type="primary" @click="searchReset" icon="reload" style="margin-left: 8px">重置</a-button>
<a-button type="default" @click="searchReset" icon="reload" class="resetBtn">重置</a-button>
</span>
</a-col>
@@ -28,7 +28,7 @@
</div>
<div class="table-operator">
<a-button type="primary" @click="readAll" icon="book">全部标注已读</a-button>
<a-button type="default" @click="readAll" icon="book">全部标注已读</a-button>
</div>
<a-table
@@ -181,7 +181,7 @@ export default {
</script>
<style scoped>
.ant-card-body .table-operator{
margin-bottom: 18px;
margin-bottom: 4px;
}
.anty-row-operator button{margin: 0 5px}
.ant-btn-danger{background-color: #ffffff}
@@ -189,4 +189,7 @@ export default {
.ant-modal-cust-warp{height: 100%}
.ant-modal-cust-warp .ant-modal-body{height:calc(100% - 110px) !important;overflow-y: auto}
.ant-modal-cust-warp .ant-modal-content{height:90% !important;overflow-y: hidden}
.ant-table-thead > tr > th, .ant-table-tbody > tr > td{
padding: 9px 8px !important;
}
</style>
+15 -15
View File
@@ -6,7 +6,7 @@
<a-form layout="inline" @keyup.enter.native="searchQuery">
<a-row :gutter="24">
<a-col :md="6" :sm="12">
<a-col :md="6" :sm="8">
<a-form-item label="账号">
<j-input placeholder="输入账号模糊查询" v-model="queryParam.username"></j-input>
</a-form-item>
@@ -22,13 +22,13 @@
</a-form-item>
</a-col>
<template v-if="toggleSearchStatus">
<a-col :md="6" :sm="8">
<a-form-item label="真实名字">
<j-input placeholder="请输入真实名字" v-model="queryParam.realname"></j-input>
</a-form-item>
</a-col>
<template v-if="toggleSearchStatus">
<a-col :md="6" :sm="8">
<a-form-item label="手机号码">
<a-input placeholder="请输入完整手机号精准查询" v-model="queryParam.phone"></a-input>
@@ -74,12 +74,12 @@
<a-col :md="6" :sm="8">
<span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
<a-button type="primary" @click="searchQuery" icon="search">查询</a-button>
<a-button type="primary" @click="searchReset" icon="reload" style="margin-left: 8px">重置</a-button>
<a @click="handleToggleSearch" style="margin-left: 8px">
<a @click="handleToggleSearch" style="margin-right: 28px">
{{ toggleSearchStatus ? '收起' : '展开' }}
<a-icon :type="toggleSearchStatus ? 'up' : 'down'"/>
</a>
<a-button type="primary" @click="searchQuery" icon="search">查询</a-button>
<a-button type="default" @click="searchReset" icon="reload" class="resetBtn">重置</a-button>
</span>
</a-col>
@@ -89,13 +89,13 @@
<!-- 操作按钮区域 -->
<div class="table-operator" style="border-top: 5px">
<a-button @click="handleAdd" type="primary" icon="plus" >添加用户</a-button>
<a-button type="primary" icon="download" @click="handleExportXls('用户信息')">导出</a-button>
<a-button @click="handleAdd" type="default" icon="plus" >添加用户</a-button>
<a-button type="default" icon="download" @click="handleExportXls('用户信息')">导出</a-button>
<a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl" @change="handleImportExcel" :before-upload='beforeUpload'>
<a-button type="primary" icon="import">导入</a-button>
<a-button type="default" icon="import">导入</a-button>
</a-upload>
<a-button type="primary" icon="hdd" @click="recycleBinVisible=true">回收站</a-button>
<a-button type="primary" icon="hdd" @click="roleAssignment">角色配置</a-button>
<a-button type="default" icon="hdd" @click="recycleBinVisible=true">回收站</a-button>
<a-button type="default" icon="hdd" @click="roleAssignment">角色配置</a-button>
<a-dropdown v-if="selectedRowKeys.length > 0">
<a-menu slot="overlay" @click="handleMenuClick">
<a-menu-item key="1">
@@ -121,10 +121,10 @@
<!-- table区域-begin -->
<div>
<div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">
<i class="anticon anticon-info-circle ant-alert-icon"></i>已选择&nbsp;<a style="font-weight: 600">{{ selectedRowKeys.length }}</a>项&nbsp;&nbsp;
<a style="margin-left: 24px" @click="onClearSelected">清空</a>
</div>
<!-- <div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">-->
<!-- <i class="anticon anticon-info-circle ant-alert-icon"></i>已选择&nbsp;<a style="font-weight: 600">{{ selectedRowKeys.length }}</a>项&nbsp;&nbsp;-->
<!-- <a style="margin-left: 24px" @click="onClearSelected">清空</a>-->
<!-- </div>-->
<a-table
ref="table"
@@ -27,7 +27,7 @@
<span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
<a-col :md="6" :sm="24" >
<a-button type="primary" style="left: 10px" @click="searchQuery" icon="search">查询</a-button>
<a-button type="primary" @click="searchReset" icon="reload" style="margin-left: 8px;left: 10px">重置</a-button>
<a-button type="defaultdefault" @click="searchReset" icon="reload" style="margin-left: 8px;left: 10px">重置</a-button>
</a-col>
</span>
@@ -11,7 +11,7 @@
</a-form-item>
</a-col>
<a-col :md="6" :sm="10">
<a-col :md="6" :sm="8">
<a-form-item label="创建时间" :labelCol="labelCol" :wrapperCol="wrapperCol">
<a-range-picker
style="width: 210px"
@@ -23,18 +23,17 @@
/>
</a-form-item>
</a-col>
<a-col :md="5" :sm="8">
<a-col :md="6" :sm="8">
<a-form-item label="操作类型" style="left: 10px">
<j-dict-select-tag v-model="queryParam.operateType" placeholder="请选择操作类型" dictCode="operate_type"/>
</a-form-item>
</a-col>
<span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
<a-col :md="6" :sm="24" >
<a-button type="primary" style="left: 10px" @click="searchQuery" icon="search">查询</a-button>
<a-button type="primary" @click="searchReset" icon="reload" style="margin-left: 8px;left: 10px">重置</a-button>
</a-col>
</span>
<a-col :md="6" :sm="8" >
<span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
<a-button type="primary" @click="searchQuery" icon="search">查询</a-button>
<a-button type="default" @click="searchReset" icon="reload" class='resetBtn'>重置</a-button>
</span>
</a-col>
</a-row>
</a-form>
@@ -127,10 +126,16 @@ export default {
align: 'center',
sorter: true
},
// {
// title: '日志类型',
// dataIndex: 'logType_dictText',
// align: 'center'
// },
{
title: '日志类型',
dataIndex: 'logType_dictText',
title: '操作类型',
dataIndex: 'operateType_dictText',
align: 'center'
},
{
title: '创建时间',
@@ -138,6 +143,7 @@ export default {
align: 'center',
sorter: true
}
],
operateColumn:
{
@@ -19,7 +19,7 @@
<span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
<a-col :md="6" :sm="24">
<a-button type="primary" @click="searchQuery" icon="search" style="margin-left: 18px">查询</a-button>
<a-button type="primary" @click="searchReset" icon="reload" style="margin-left: 8px">重置</a-button>
<a-button type="primary" @click="searchReset" icon="reload" class="resetBtn">重置</a-button>
</a-col>
</span>
</a-row>
@@ -19,7 +19,7 @@
prop="departName"
:hidden="false"
:hasFeedback="true" >
<a-input id="departName" placeholder="请输入机构/部门名称" v-model="model.departName"/>
<a-input id="departName" :maxLength='100' placeholder="请输入机构/部门名称" v-model="model.departName"/>
</a-form-model-item>
<a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" :hidden="seen" label="上级部门" :hasFeedback="true">
<a-tree-select
@@ -64,25 +64,25 @@
:labelCol="labelCol"
:wrapperCol="wrapperCol"
label="传真">
<a-input placeholder="请输入传真" v-model="model.fax"/>
<a-input :maxLength='32' placeholder="请输入传真" v-model="model.fax"/>
</a-form-model-item>
<a-form-model-item
:labelCol="labelCol"
:wrapperCol="wrapperCol"
label="地址">
<a-input placeholder="请输入地址" v-model="model.address"/>
<a-input :maxLength='100' placeholder="请输入地址" v-model="model.address"/>
</a-form-model-item>
<a-form-model-item
:labelCol="labelCol"
:wrapperCol="wrapperCol"
label="排序">
<a-input-number v-model="model.departOrder"/>
<a-input-number :max="1000000" :min="1" v-model="model.departOrder"/>
</a-form-model-item>
<a-form-model-item
:labelCol="labelCol"
:wrapperCol="wrapperCol"
label="备注">
<a-textarea placeholder="请输入备注" v-model="model.memo"/>
<a-textarea :maxLength='200' placeholder="请输入备注" v-model="model.memo"/>
</a-form-model-item>
</a-form-model>
@@ -43,7 +43,7 @@
:labelCol="labelCol"
:wrapperCol="wrapperCol"
label="排序">
<a-input-number style="border:0;" v-model="model.departOrder"/>
<a-input-number :max="1000000" :min="1" style="border:0;" v-model="model.departOrder"/>
</a-form-model-item>
<a-form-model-item
:labelCol="labelCol"
@@ -13,17 +13,17 @@
<span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
<a-col :md="6" :sm="24">
<a-button type="primary" @click="searchQuery" icon="search" style="margin-left: 18px">查询</a-button>
<a-button type="primary" @click="searchReset" icon="reload" style="margin-left: 8px">重置</a-button>
<a-button type="default" @click="searchReset" icon="reload" class="resetBtn">重置</a-button>
</a-col>
</span>
</a-row>
</a-form>
</div>
<!-- 操作按钮区域 -->
<div class="table-operator" style="margin-top: -15px">
<div class="table-operator" style="">
<!--<a-button @click="handleEdit" type="primary" icon="edit" style="margin-top: 16px">用户编辑</a-button>-->
<a-button @click="handleAddUserDepart" type="primary" icon="plus">添加已有用户</a-button>
<a-button @click="handleAdd" type="primary" icon="plus" style="margin-top: 16px">新建用户</a-button>
<a-button @click="handleAddUserDepart" type="default" icon="plus">添加已有用户</a-button>
<a-button @click="handleAdd" type="default" icon="plus" >新建用户</a-button>
<a-dropdown v-if="selectedRowKeys.length > 0">
<a-menu slot="overlay">
@@ -40,11 +40,11 @@
<!-- table区域-begin -->
<div>
<div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">
<i class="anticon anticon-info-circle ant-alert-icon"></i> 已选择 <a style="font-weight: 600">{{
selectedRowKeys.length }}</a>
<a style="margin-left: 24px" @click="onClearSelected">清空</a>
</div>
<!-- <div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">-->
<!-- <i class="anticon anticon-info-circle ant-alert-icon"></i> 已选择 <a style="font-weight: 600">{{-->
<!-- selectedRowKeys.length }}</a>-->
<!-- <a style="margin-left: 24px" @click="onClearSelected">清空</a>-->
<!-- </div>-->
<a-table
ref="table"
@@ -316,6 +316,6 @@ export default {
.table-page-search-wrapper {
margin-top: -16px;
margin-bottom: 16px;
/*margin-bottom: 16px;*/
}
</style>

Some files were not shown because too many files have changed in this diff Show More