From eb1c3440cd96ddd43743d7c222c777031b4146ee Mon Sep 17 00:00:00 2001 From: smack Date: Tue, 1 Nov 2022 18:58:24 +0800 Subject: [PATCH] =?UTF-8?q?pg=E7=9A=84=E7=89=88=E6=9C=AC=E6=94=AF=E6=8C=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../config/mybatis/MybatisPlusPGConfig.java | 63 ++ admin/src/main/resources/application.yml | 2 +- doc/postgresql/i18n.sql | 187 ++++ doc/postgresql/public.sql | 815 ++++++++++++++++++ 4 files changed, 1066 insertions(+), 1 deletion(-) create mode 100644 admin/src/main/java/com/your/packages/admin/config/mybatis/MybatisPlusPGConfig.java create mode 100644 doc/postgresql/i18n.sql create mode 100644 doc/postgresql/public.sql diff --git a/admin/src/main/java/com/your/packages/admin/config/mybatis/MybatisPlusPGConfig.java b/admin/src/main/java/com/your/packages/admin/config/mybatis/MybatisPlusPGConfig.java new file mode 100644 index 0000000..70a54e0 --- /dev/null +++ b/admin/src/main/java/com/your/packages/admin/config/mybatis/MybatisPlusPGConfig.java @@ -0,0 +1,63 @@ +package com.your.packages.admin.config.mybatis; + +import com.baomidou.mybatisplus.annotation.DbType; +import com.baomidou.mybatisplus.annotation.FieldFill; +import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler; +import com.baomidou.mybatisplus.core.injector.AbstractMethod; +import com.baomidou.mybatisplus.core.injector.ISqlInjector; +import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; +import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor; +import com.hccake.ballcat.admin.upms.config.mybatis.FillMetaObjectHandle; +import com.hccake.extend.mybatis.plus.injector.CustomSqlInjector; +import com.hccake.extend.mybatis.plus.methods.InsertBatchSomeColumnByCollection; +import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +import java.util.ArrayList; +import java.util.List; + +/** + * @author hccake + * @date 2020/04/19 默认配置MybatisPlus分页插件,通过conditional注解达到覆盖效用 + */ +@Configuration +public class MybatisPlusPGConfig { + + /** + * MybatisPlusInterceptor 插件,默认提供分页插件
+ * 如需其他MP内置插件,则需自定义该Bean + * @return MybatisPlusInterceptor + */ + @Bean + @ConditionalOnMissingBean(MybatisPlusInterceptor.class) + public MybatisPlusInterceptor mybatisPlusInterceptor() { + MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); + interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.POSTGRE_SQL)); + return interceptor; + } + + /** + * 自动填充处理类 + * @return FillMetaObjectHandle + */ + @Bean + @ConditionalOnMissingBean(MetaObjectHandler.class) + public MetaObjectHandler fillMetaObjectHandle() { + return new FillMetaObjectHandle(); + } + + /** + * 自定义批量插入方法注入 + * @return ISqlInjector + */ + @Bean + @ConditionalOnMissingBean(ISqlInjector.class) + public ISqlInjector customSqlInjector() { + List list = new ArrayList<>(); + // 对于只在更新时进行填充的字段不做插入处理 + list.add(new InsertBatchSomeColumnByCollection(t -> t.getFieldFill() != FieldFill.UPDATE)); + return new CustomSqlInjector(list); + } + +} diff --git a/admin/src/main/resources/application.yml b/admin/src/main/resources/application.yml index 0bfa89e..28aaa00 100644 --- a/admin/src/main/resources/application.yml +++ b/admin/src/main/resources/application.yml @@ -9,7 +9,7 @@ spring: messages: # basename 中的 . 和 / 都可以用来表示文件层级,默认的 basename 是 messages # 必须注册此 basename, 否则 security 错误信息将一直都是英文 - basename: 'org.springframework.security.messages' + basename: 'ballcat-*, org.springframework.security.messages' # 图形验证码 aj: diff --git a/doc/postgresql/i18n.sql b/doc/postgresql/i18n.sql new file mode 100644 index 0000000..9cd8638 --- /dev/null +++ b/doc/postgresql/i18n.sql @@ -0,0 +1,187 @@ +-- ---------------------------- +-- Table structure for i18n_data +-- ---------------------------- +DROP TABLE IF EXISTS "public"."i18n_data"; +CREATE TABLE "public"."i18n_data" ( + "id" SERIAL PRIMARY KEY, + "language_tag" varchar(10) NOT NULL, + "code" varchar(60) NOT NULL, + "message" varchar(255) NOT NULL, + "remarks" varchar(256), + "deleted" int2, + "create_by" int4, + "update_by" int4, + "create_time" timestamp(6), + "update_time" timestamp(6) +) +; +COMMENT ON COLUMN "public"."i18n_data"."id" IS 'ID'; +COMMENT ON COLUMN "public"."i18n_data"."language_tag" IS '语言标签'; +COMMENT ON COLUMN "public"."i18n_data"."code" IS '唯一标识 = 业务:关键词'; +COMMENT ON COLUMN "public"."i18n_data"."message" IS '文本值,可以使用 { } 加角标,作为占位符'; +COMMENT ON COLUMN "public"."i18n_data"."remarks" IS '备注'; +COMMENT ON COLUMN "public"."i18n_data"."deleted" IS '逻辑删除标识,未删除为 0,已删除为删除时间'; +COMMENT ON COLUMN "public"."i18n_data"."create_by" IS '创建人'; +COMMENT ON COLUMN "public"."i18n_data"."update_by" IS '修改人'; +COMMENT ON COLUMN "public"."i18n_data"."create_time" IS '创建时间'; +COMMENT ON COLUMN "public"."i18n_data"."update_time" IS '修改时间'; +COMMENT ON TABLE "public"."i18n_data" IS '国际化信息'; + + +-- ---------------------------- +-- Indexes structure for table i18n_data +-- ---------------------------- +CREATE UNIQUE INDEX "udx_laguage_tag_code" ON "public"."i18n_data" USING btree ( + "language_tag" ASC NULLS LAST, + "code" ASC NULLS LAST, + "deleted"ASC NULLS LAST +); + +-- 插入菜单的国际化信息配置 +INSERT INTO "i18n_data" ("id", "language_tag", "code", "message", "remarks", "create_time", "update_time") VALUES (1, 'zh-CN', 'menu.account', '个人页', '', '2021-08-06 11:46:52', NULL); +INSERT INTO "i18n_data" ("id", "language_tag", "code", "message", "remarks", "create_time", "update_time") VALUES (2, 'en-US', 'menu.account', 'Account', NULL, '2021-08-06 11:46:52', NULL); +INSERT INTO "i18n_data" ("id", "language_tag", "code", "message", "remarks", "create_time", "update_time") VALUES (3, 'zh-CN', 'menu.account.settings', '个人设置', NULL, '2021-08-06 11:46:52', NULL); +INSERT INTO "i18n_data" ("id", "language_tag", "code", "message", "remarks", "create_time", "update_time") VALUES (4, 'en-US', 'menu.account.settings', 'Account Settings\r', NULL, '2021-08-06 11:46:52', NULL); +INSERT INTO "i18n_data" ("id", "language_tag", "code", "message", "remarks", "create_time", "update_time") VALUES (5, 'zh-CN', 'menu.account.settings.base', '基本设置', NULL, '2021-08-06 11:46:52', NULL); +INSERT INTO "i18n_data" ("id", "language_tag", "code", "message", "remarks", "create_time", "update_time") VALUES (6, 'en-US', 'menu.account.settings.base', 'Base', NULL, '2021-08-06 11:46:52', NULL); +INSERT INTO "i18n_data" ("id", "language_tag", "code", "message", "remarks", "create_time", "update_time") VALUES (7, 'zh-CN', 'menu.account.settings.security', '安全设置', NULL, '2021-08-06 11:46:52', NULL); +INSERT INTO "i18n_data" ("id", "language_tag", "code", "message", "remarks", "create_time", "update_time") VALUES (8, 'en-US', 'menu.account.settings.security', 'Security', NULL, '2021-08-06 11:46:52', NULL); +INSERT INTO "i18n_data" ("id", "language_tag", "code", "message", "remarks", "create_time", "update_time") VALUES (9, 'zh-CN', 'menu.account.settings.binding', '账户绑定', NULL, '2021-08-06 11:46:52', NULL); +INSERT INTO "i18n_data" ("id", "language_tag", "code", "message", "remarks", "create_time", "update_time") VALUES (10, 'en-US', 'menu.account.settings.binding', 'Binding', NULL, '2021-08-06 11:46:52', NULL); +INSERT INTO "i18n_data" ("id", "language_tag", "code", "message", "remarks", "create_time", "update_time") VALUES (11, 'zh-CN', 'menu.account.settings.notification', '新消息通知', NULL, '2021-08-06 11:46:52', NULL); +INSERT INTO "i18n_data" ("id", "language_tag", "code", "message", "remarks", "create_time", "update_time") VALUES (12, 'en-US', 'menu.account.settings.notification', 'Notification', NULL, '2021-08-06 11:46:52', NULL); +INSERT INTO "i18n_data" ("id", "language_tag", "code", "message", "remarks", "create_time", "update_time") VALUES (13, 'zh-CN', 'menu.system', '系统管理', NULL, '2021-08-06 11:46:52', '2021-08-14 20:00:45'); +INSERT INTO "i18n_data" ("id", "language_tag", "code", "message", "remarks", "create_time", "update_time") VALUES (14, 'en-US', 'menu.system', 'System', NULL, '2021-08-06 11:46:52', NULL); +INSERT INTO "i18n_data" ("id", "language_tag", "code", "message", "remarks", "create_time", "update_time") VALUES (15, 'zh-CN', 'menu.system.user', '系统用户', NULL, '2021-08-06 11:46:52', '2021-08-14 20:00:56'); +INSERT INTO "i18n_data" ("id", "language_tag", "code", "message", "remarks", "create_time", "update_time") VALUES (16, 'en-US', 'menu.system.user', 'User', NULL, '2021-08-06 11:46:52', NULL); +INSERT INTO "i18n_data" ("id", "language_tag", "code", "message", "remarks", "create_time", "update_time") VALUES (17, 'zh-CN', 'menu.system.role', '角色管理', NULL, '2021-08-06 11:46:52', NULL); +INSERT INTO "i18n_data" ("id", "language_tag", "code", "message", "remarks", "create_time", "update_time") VALUES (18, 'en-US', 'menu.system.role', 'Role', NULL, '2021-08-06 11:46:52', NULL); +INSERT INTO "i18n_data" ("id", "language_tag", "code", "message", "remarks", "create_time", "update_time") VALUES (19, 'zh-CN', 'menu.system.config', '配置信息', NULL, '2021-08-06 11:46:52', NULL); +INSERT INTO "i18n_data" ("id", "language_tag", "code", "message", "remarks", "create_time", "update_time") VALUES (20, 'en-US', 'menu.system.config', 'Config', NULL, '2021-08-06 11:46:52', NULL); +INSERT INTO "i18n_data" ("id", "language_tag", "code", "message", "remarks", "create_time", "update_time") VALUES (21, 'zh-CN', 'menu.system.dict', '字典管理', NULL, '2021-08-06 11:46:52', NULL); +INSERT INTO "i18n_data" ("id", "language_tag", "code", "message", "remarks", "create_time", "update_time") VALUES (22, 'en-US', 'menu.system.dict', 'Dict', NULL, '2021-08-06 11:46:52', NULL); +INSERT INTO "i18n_data" ("id", "language_tag", "code", "message", "remarks", "create_time", "update_time") VALUES (23, 'zh-CN', 'menu.system.lov', '弹窗选择', NULL, '2021-08-06 11:46:52', NULL); +INSERT INTO "i18n_data" ("id", "language_tag", "code", "message", "remarks", "create_time", "update_time") VALUES (24, 'en-US', 'menu.system.lov', 'PopUp Selctor', NULL, '2021-08-06 11:46:52', NULL); +INSERT INTO "i18n_data" ("id", "language_tag", "code", "message", "remarks", "create_time", "update_time") VALUES (25, 'zh-CN', 'menu.system.organization', '组织架构', NULL, '2021-08-06 11:46:52', NULL); +INSERT INTO "i18n_data" ("id", "language_tag", "code", "message", "remarks", "create_time", "update_time") VALUES (26, 'en-US', 'menu.system.organization', 'Organization', NULL, '2021-08-06 11:46:52', NULL); +INSERT INTO "i18n_data" ("id", "language_tag", "code", "message", "remarks", "create_time", "update_time") VALUES (27, 'zh-CN', 'menu.system.menu', '菜单权限', NULL, '2021-08-06 11:46:52', NULL); +INSERT INTO "i18n_data" ("id", "language_tag", "code", "message", "remarks", "create_time", "update_time") VALUES (28, 'en-US', 'menu.system.menu', 'Menu', NULL, '2021-08-06 11:46:52', NULL); +INSERT INTO "i18n_data" ("id", "language_tag", "code", "message", "remarks", "create_time", "update_time") VALUES (29, 'zh-CN', 'menu.log', '日志管理', NULL, '2021-08-06 11:46:52', NULL); +INSERT INTO "i18n_data" ("id", "language_tag", "code", "message", "remarks", "create_time", "update_time") VALUES (30, 'en-US', 'menu.log', 'Log', NULL, '2021-08-06 11:46:52', NULL); +INSERT INTO "i18n_data" ("id", "language_tag", "code", "message", "remarks", "create_time", "update_time") VALUES (31, 'zh-CN', 'menu.log.operationLog', '操作日志', NULL, '2021-08-06 11:46:52', NULL); +INSERT INTO "i18n_data" ("id", "language_tag", "code", "message", "remarks", "create_time", "update_time") VALUES (32, 'en-US', 'menu.log.operationLog', 'Operation Log', NULL, '2021-08-06 11:46:52', NULL); +INSERT INTO "i18n_data" ("id", "language_tag", "code", "message", "remarks", "create_time", "update_time") VALUES (33, 'zh-CN', 'menu.log.loginLog', '登陆日志', NULL, '2021-08-06 11:46:52', NULL); +INSERT INTO "i18n_data" ("id", "language_tag", "code", "message", "remarks", "create_time", "update_time") VALUES (34, 'en-US', 'menu.log.loginLog', 'Login Log', NULL, '2021-08-06 11:46:52', NULL); +INSERT INTO "i18n_data" ("id", "language_tag", "code", "message", "remarks", "create_time", "update_time") VALUES (35, 'zh-CN', 'menu.log.accessLog', '访问日志', NULL, '2021-08-06 11:46:52', NULL); +INSERT INTO "i18n_data" ("id", "language_tag", "code", "message", "remarks", "create_time", "update_time") VALUES (36, 'en-US', 'menu.log.accessLog', 'Access Log', NULL, '2021-08-06 11:46:52', NULL); +INSERT INTO "i18n_data" ("id", "language_tag", "code", "message", "remarks", "create_time", "update_time") VALUES (37, 'zh-CN', 'menu.notice', '消息通知', NULL, '2021-08-06 11:46:52', NULL); +INSERT INTO "i18n_data" ("id", "language_tag", "code", "message", "remarks", "create_time", "update_time") VALUES (38, 'en-US', 'menu.notice', 'Notice', NULL, '2021-08-06 11:46:52', NULL); +INSERT INTO "i18n_data" ("id", "language_tag", "code", "message", "remarks", "create_time", "update_time") VALUES (39, 'zh-CN', 'menu.notice.announcement', '公告信息', NULL, '2021-08-06 11:46:52', NULL); +INSERT INTO "i18n_data" ("id", "language_tag", "code", "message", "remarks", "create_time", "update_time") VALUES (40, 'en-US', 'menu.notice.announcement', 'Announcement', NULL, '2021-08-06 11:46:52', NULL); +INSERT INTO "i18n_data" ("id", "language_tag", "code", "message", "remarks", "create_time", "update_time") VALUES (41, 'zh-CN', 'menu.notice.userAnnouncement', '用户公告', NULL, '2021-08-06 11:46:52', NULL); +INSERT INTO "i18n_data" ("id", "language_tag", "code", "message", "remarks", "create_time", "update_time") VALUES (42, 'en-US', 'menu.notice.userAnnouncement', 'User Announcement', NULL, '2021-08-06 11:46:52', NULL); +INSERT INTO "i18n_data" ("id", "language_tag", "code", "message", "remarks", "create_time", "update_time") VALUES (43, 'zh-CN', 'menu.i18n', '国际化', NULL, '2021-08-06 11:46:52', NULL); +INSERT INTO "i18n_data" ("id", "language_tag", "code", "message", "remarks", "create_time", "update_time") VALUES (44, 'en-US', 'menu.i18n', 'I18N', NULL, '2021-08-06 11:46:52', NULL); +INSERT INTO "i18n_data" ("id", "language_tag", "code", "message", "remarks", "create_time", "update_time") VALUES (45, 'zh-CN', 'menu.i18n.i18nData', '国际化信息', NULL, '2021-08-06 11:46:52', '2021-08-08 17:01:09'); +INSERT INTO "i18n_data" ("id", "language_tag", "code", "message", "remarks", "create_time", "update_time") VALUES (46, 'en-US', 'menu.i18n.i18nData', 'I18N Data', NULL, '2021-08-06 11:46:52', '2021-08-07 18:42:35'); +INSERT INTO "i18n_data" ("id", "language_tag", "code", "message", "remarks", "create_time", "update_time") VALUES (47, 'zh-CN', 'menu.develop', '开发平台', NULL, '2021-08-06 11:46:52', '2021-08-07 19:10:23'); +INSERT INTO "i18n_data" ("id", "language_tag", "code", "message", "remarks", "create_time", "update_time") VALUES (48, 'en-US', 'menu.develop', 'Develop', NULL, '2021-08-06 11:46:52', '2021-08-07 19:11:49'); +INSERT INTO "i18n_data" ("id", "language_tag", "code", "message", "remarks", "create_time", "update_time") VALUES (49, 'zh-CN', 'menu.develop.swagger', '接口文档', NULL, '2021-08-06 11:46:52', NULL); +INSERT INTO "i18n_data" ("id", "language_tag", "code", "message", "remarks", "create_time", "update_time") VALUES (50, 'en-US', 'menu.develop.swagger', 'Swagger', NULL, '2021-08-06 11:46:52', NULL); +INSERT INTO "i18n_data" ("id", "language_tag", "code", "message", "remarks", "create_time", "update_time") VALUES (51, 'zh-CN', 'menu.develop.knife4j', '文档增强', NULL, '2021-08-06 11:46:52', NULL); +INSERT INTO "i18n_data" ("id", "language_tag", "code", "message", "remarks", "create_time", "update_time") VALUES (52, 'en-US', 'menu.develop.knife4j', 'Api Doc', NULL, '2021-08-06 11:46:52', NULL); +INSERT INTO "i18n_data" ("id", "language_tag", "code", "message", "remarks", "create_time", "update_time") VALUES (53, 'zh-CN', 'menu.develop.job', '调度中心', NULL, '2021-08-06 11:46:52', NULL); +INSERT INTO "i18n_data" ("id", "language_tag", "code", "message", "remarks", "create_time", "update_time") VALUES (54, 'en-US', 'menu.develop.job', 'Job Center', NULL, '2021-08-06 11:46:52', NULL); +INSERT INTO "i18n_data" ("id", "language_tag", "code", "message", "remarks", "create_time", "update_time") VALUES (55, 'zh-CN', 'menu.develop.monitor', '服务监控', NULL, '2021-08-06 11:46:52', NULL); +INSERT INTO "i18n_data" ("id", "language_tag", "code", "message", "remarks", "create_time", "update_time") VALUES (56, 'en-US', 'menu.develop.monitor', 'Monitor', NULL, '2021-08-06 11:46:52', NULL); +INSERT INTO "i18n_data" ("id", "language_tag", "code", "message", "remarks", "create_time", "update_time") VALUES (57, 'zh-CN', 'menu.develop.codegen', '代码生成', NULL, '2021-08-06 11:46:52', '2021-08-08 17:03:22'); +INSERT INTO "i18n_data" ("id", "language_tag", "code", "message", "remarks", "create_time", "update_time") VALUES (58, 'en-US', 'menu.develop.codegen', 'Code Generate', NULL, '2021-08-06 11:46:52', '2021-08-08 17:03:33'); + + +alter sequence i18n_data_id_seq restart with 93; + +-- 插入国际化菜单 +INSERT INTO "sys_menu" ("id", "parent_id", "title", "icon", "permission", "path", "target_type", "uri", "sort", "keep_alive", "hidden", "type", "remarks", "deleted", "create_time", "update_time") VALUES (130000, 0, 'menu.i18n', 'global', NULL, 'i18n', 1, '', 4, 0, 0, 0, '国际化', 0, '2021-08-05 17:04:07', '2021-08-05 17:04:57'); +INSERT INTO "sys_menu" ("id", "parent_id", "title", "icon", "permission", "path", "target_type", "uri", "sort", "keep_alive", "hidden", "type", "remarks", "deleted", "create_time", "update_time") VALUES (130100, 130000, 'menu.i18n.i18nData', NULL, NULL, 'i18n-data', 1, 'i18n/i18n-data/I18nDataPage', 1, 1, 0, 1, '国际化信息', 0, '2021-08-05 17:00:54', '2021-08-05 17:29:34'); +INSERT INTO "sys_menu" ("id", "parent_id", "title", "icon", "permission", "path", "target_type", "uri", "sort", "keep_alive", "hidden", "type", "remarks", "deleted", "create_time", "update_time") VALUES (130101, 130100, '国际化信息查询', NULL, 'i18n:i18n-data:read', '', 1, NULL, 1, 0, 0, 2, NULL, 0, '2021-08-05 17:00:54', '2021-08-05 17:00:54'); +INSERT INTO "sys_menu" ("id", "parent_id", "title", "icon", "permission", "path", "target_type", "uri", "sort", "keep_alive", "hidden", "type", "remarks", "deleted", "create_time", "update_time") VALUES (130102, 130100, '国际化信息新增', NULL, 'i18n:i18n-data:add', '', 1, NULL, 2, 0, 0, 2, NULL, 0, '2021-08-05 17:00:54', '2021-08-05 17:00:54'); +INSERT INTO "sys_menu" ("id", "parent_id", "title", "icon", "permission", "path", "target_type", "uri", "sort", "keep_alive", "hidden", "type", "remarks", "deleted", "create_time", "update_time") VALUES (130103, 130100, '国际化信息修改', NULL, 'i18n:i18n-data:edit', '', 1, NULL, 3, 0, 0, 2, NULL, 0, '2021-08-05 17:00:54', '2021-08-05 17:00:54'); +INSERT INTO "sys_menu" ("id", "parent_id", "title", "icon", "permission", "path", "target_type", "uri", "sort", "keep_alive", "hidden", "type", "remarks", "deleted", "create_time", "update_time") VALUES (130104, 130100, '国际化信息删除', NULL, 'i18n:i18n-data:del', '', 1, NULL, 4, 0, 0, 2, NULL, 0, '2021-08-05 17:00:54', '2021-08-05 17:00:54'); +INSERT INTO "sys_menu" ("id", "parent_id", "title", "icon", "permission", "path", "target_type", "uri", "sort", "keep_alive", "hidden", "type", "remarks", "deleted", "create_time", "update_time") VALUES (130105, 130100, '国际化信息导出', NULL, 'i18n:i18n-data:export', '', 1, NULL, 5, 0, 0, 2, NULL, 0, '2021-08-05 17:00:54', '2021-08-05 17:00:54'); +INSERT INTO "sys_menu" ("id", "parent_id", "title", "icon", "permission", "path", "target_type", "uri", "sort", "keep_alive", "hidden", "type", "remarks", "deleted", "create_time", "update_time") VALUES (130106, 130100, '国际化信息导出', NULL, 'i18n:i18n-data:import', '', 1, NULL, 6, 0, 0, 2, NULL, 0, '2021-08-05 17:00:54', '2021-08-05 17:00:54'); + +-- 系统管理员授权 +INSERT INTO "sys_role_menu" ("role_code", "menu_id") VALUES ('ROLE_ADMIN', 130000); +INSERT INTO "sys_role_menu" ("role_code", "menu_id") VALUES ('ROLE_ADMIN', 130100); +INSERT INTO "sys_role_menu" ("role_code", "menu_id") VALUES ('ROLE_ADMIN', 130101); +INSERT INTO "sys_role_menu" ("role_code", "menu_id") VALUES ('ROLE_ADMIN', 130102); +INSERT INTO "sys_role_menu" ("role_code", "menu_id") VALUES ('ROLE_ADMIN', 130103); +INSERT INTO "sys_role_menu" ("role_code", "menu_id") VALUES ('ROLE_ADMIN', 130104); +INSERT INTO "sys_role_menu" ("role_code", "menu_id") VALUES ('ROLE_ADMIN', 130105); +INSERT INTO "sys_role_menu" ("role_code", "menu_id") VALUES ('ROLE_ADMIN', 130106); + +-- 更新菜单的国际化 title +update sys_menu set title = 'menu.account' where id = 10028; +update sys_menu set title = 'menu.account.settings' where id = 10030; +update sys_menu set title = 'menu.account.settings.base' where id = 10031; +update sys_menu set title = 'menu.account.settings.security' where id = 10032; +update sys_menu set title = 'menu.account.settings.binding' where id = 10034; +update sys_menu set title = 'menu.account.settings.notification' where id = 10035; +update sys_menu set title = 'menu.system' where id = 100000; +update sys_menu set title = 'menu.system.user' where id = 100100; +update sys_menu set title = 'menu.system.role' where id = 100200; +update sys_menu set title = 'menu.system.config' where id = 100400; +update sys_menu set title = 'menu.system.dict' where id = 100500; +update sys_menu set title = 'menu.system.lov' where id = 100600; +update sys_menu set title = 'menu.system.organization' where id = 100700; +update sys_menu set title = 'menu.system.menu' where id = 100800; +update sys_menu set title = 'menu.log' where id = 110000; +update sys_menu set title = 'menu.log.operationLog' where id = 110100; +update sys_menu set title = 'menu.log.loginLog' where id = 110200; +update sys_menu set title = 'menu.log.accessLog' where id = 110300; +update sys_menu set title = 'menu.notice' where id = 120000; +update sys_menu set title = 'menu.notice.announcement' where id = 120100; +update sys_menu set title = 'menu.notice.userAnnouncement' where id = 120200; +update sys_menu set title = 'menu.i18n' where id = 130000; +update sys_menu set title = 'menu.i18n.i18nData' where id = 130100; +update sys_menu set title = 'menu.develop' where id = 990000; +update sys_menu set title = 'menu.develop.swagger' where id = 990100; +update sys_menu set title = 'menu.develop.knife4j' where id = 990200; +update sys_menu set title = 'menu.develop.job' where id = 990300; +update sys_menu set title = 'menu.develop.monitor' where id = 990400; +update sys_menu set title = 'menu.develop.codegen' where id = 990500; + + +-- 字典国际化配置 +-- update sys_dict_item set "attributes" = JSON_SET("attributes", "$.languages", '{"en-US": "Normal ", "zh-CN": "正常"}') where dict_code = 'log_status' and value = '1'; +-- update sys_dict_item set "attributes" = JSON_SET("attributes", "$.languages", '{"en-US": "Error", "zh-CN": "异常"}') where dict_code = 'log_status' and value = '0'; +-- update sys_dict_item set "attributes" = JSON_SET("attributes", "$.languages", '{"en-US": "Male", "zh-CN": "男"}') where dict_code = 'gender' and value = '1'; +-- update sys_dict_item set "attributes" = JSON_SET("attributes", "$.languages", '{"en-US": "Female", "zh-CN": "女"}') where dict_code = 'gender' and value = '2'; +-- update sys_dict_item set "attributes" = JSON_SET("attributes", "$.languages", '{"en-US": "Unknown", "zh-CN": "未知"}') where dict_code = 'gender' and value = '3'; +-- update sys_dict_item set "attributes" = JSON_SET("attributes", "$.languages", '{"en-US": "Login", "zh-CN": "登陆"}') where dict_code = 'login_event_type' and value = '1'; +-- update sys_dict_item set "attributes" = JSON_SET("attributes", "$.languages", '{"en-US": "Logout", "zh-CN": "登出"}') where dict_code = 'login_event_type' and value = '2'; +-- update sys_dict_item set "attributes" = JSON_SET("attributes", "$.languages", '{"en-US": "Read", "zh-CN": "查看"}') where dict_code = 'operation_type' and value = '3'; +-- update sys_dict_item set "attributes" = JSON_SET("attributes", "$.languages", '{"en-US": "Create", "zh-CN": "新建"}') where dict_code = 'operation_type' and value = '4'; +-- update sys_dict_item set "attributes" = JSON_SET("attributes", "$.languages", '{"en-US": "Update", "zh-CN": "修改"}') where dict_code = 'operation_type' and value = '5'; +-- update sys_dict_item set "attributes" = JSON_SET("attributes", "$.languages", '{"en-US": "Delete", "zh-CN": "删除"}') where dict_code = 'operation_type' and value = '6'; +-- update sys_dict_item set "attributes" = JSON_SET("attributes", "$.languages", '{"en-US": "System", "zh-CN": "系统"}') where dict_code = 'role_type' and value = '1'; +-- update sys_dict_item set "attributes" = JSON_SET("attributes", "$.languages", '{"en-US": "Custom", "zh-CN": "自定义"}') where dict_code = 'role_type' and value = '2'; +-- update sys_dict_item set "attributes" = JSON_SET("attributes", "$.languages", '{"en-US": "Yes", "zh-CN": "是"}') where dict_code = 'yes_or_no' and value = '1'; +-- update sys_dict_item set "attributes" = JSON_SET("attributes", "$.languages", '{"en-US": "No", "zh-CN": "否"}') where dict_code = 'yes_or_no' and value = '0'; +-- update sys_dict_item set "attributes" = JSON_SET("attributes", "$.languages", '{"en-US": "System User", "zh-CN": "系统用户"}') where dict_code = 'user_type' and value = '1'; +-- update sys_dict_item set "attributes" = JSON_SET("attributes", "$.languages", '{"en-US": "All", "zh-CN": "全部"}') where dict_code = 'recipient_filter_type' and value = '1'; +-- update sys_dict_item set "attributes" = JSON_SET("attributes", "$.languages", '{"en-US": "Specify the role", "zh-CN": "指定角色"}') where dict_code = 'recipient_filter_type' and value = '2'; +-- update sys_dict_item set "attributes" = JSON_SET("attributes", "$.languages", '{"en-US": "Specify the organization", "zh-CN": "指定组织"}') where dict_code = 'recipient_filter_type' and value = '3'; +-- update sys_dict_item set "attributes" = JSON_SET("attributes", "$.languages", '{"en-US": "Specify the type", "zh-CN": "指定类型"}') where dict_code = 'recipient_filter_type' and value = '4'; +-- update sys_dict_item set "attributes" = JSON_SET("attributes", "$.languages", '{"en-US": "Specify the user", "zh-CN": "指定用户"}') where dict_code = 'recipient_filter_type' and value = '5'; +-- update sys_dict_item set "attributes" = JSON_SET("attributes", "$.languages", '{"en-US": "Station", "zh-CN": "站内"}') where dict_code = 'notify_channel' and value = '1'; +-- update sys_dict_item set "attributes" = JSON_SET("attributes", "$.languages", '{"en-US": "SMS", "zh-CN": "短信"}') where dict_code = 'notify_channel' and value = '2'; +-- update sys_dict_item set "attributes" = JSON_SET("attributes", "$.languages", '{"en-US": "Email", "zh-CN": "邮箱"}') where dict_code = 'notify_channel' and value = '3'; +-- update sys_dict_item set "attributes" = JSON_SET("attributes", "$.languages", '{"en-US": "Catalog", "zh-CN": "目录"}') where dict_code = 'menu_type' and value = '0'; +-- update sys_dict_item set "attributes" = JSON_SET("attributes", "$.languages", '{"en-US": "Menu", "zh-CN": "菜单"}') where dict_code = 'menu_type' and value = '1'; +-- update sys_dict_item set "attributes" = JSON_SET("attributes", "$.languages", '{"en-US": "Button", "zh-CN": "按钮"}') where dict_code = 'menu_type' and value = '2'; +-- update sys_dict_item set "attributes" = JSON_SET("attributes", "$.languages", '{"en-US": "Other", "zh-CN": "其他"}') where dict_code = 'operation_type' and value = '0'; +-- update sys_dict_item set "attributes" = JSON_SET("attributes", "$.languages", '{"en-US": "Import", "zh-CN": "导入"}') where dict_code = 'operation_type' and value = '1'; +-- update sys_dict_item set "attributes" = JSON_SET("attributes", "$.languages", '{"en-US": "Export", "zh-CN": "导出"}') where dict_code = 'operation_type' and value = '2'; +-- update sys_dict_item set "attributes" = JSON_SET("attributes", "$.languages", ' {"en-US": "Locked", "zh-CN": "锁定"}') where dict_code = 'user_status' and value = '0'; +-- update sys_dict_item set "attributes" = JSON_SET("attributes", "$.languages", '{"en-US": "Normal", "zh-CN": "正常"}') where dict_code = 'user_status' and value = '1'; diff --git a/doc/postgresql/public.sql b/doc/postgresql/public.sql new file mode 100644 index 0000000..2023981 --- /dev/null +++ b/doc/postgresql/public.sql @@ -0,0 +1,815 @@ + + + +-- ---------------------------- +-- Table structure for log_access_log +-- ---------------------------- +DROP TABLE IF EXISTS "public"."log_access_log"; +CREATE TABLE "public"."log_access_log" ( + "id" SERIAL PRIMARY KEY, + "trace_id" char(24), + "user_id" int8, + "username" varchar(255), + "ip" varchar(64), + "user_agent" varchar(1000), + "uri" varchar(255), + "matching_pattern" varchar(255), + "method" varchar(10), + "req_params" text, + "req_body" text, + "http_status" int4, + "result" text, + "error_msg" text, + "time" int8, + "create_time" timestamp(6) +) +; +COMMENT ON COLUMN "public"."log_access_log"."id" IS '编号'; +COMMENT ON COLUMN "public"."log_access_log"."trace_id" IS '追踪ID'; +COMMENT ON COLUMN "public"."log_access_log"."user_id" IS '用户ID'; +COMMENT ON COLUMN "public"."log_access_log"."username" IS '用户名'; +COMMENT ON COLUMN "public"."log_access_log"."ip" IS '访问IP地址'; +COMMENT ON COLUMN "public"."log_access_log"."user_agent" IS '用户代理'; +COMMENT ON COLUMN "public"."log_access_log"."uri" IS '请求URI'; +COMMENT ON COLUMN "public"."log_access_log"."matching_pattern" IS '请求映射路径'; +COMMENT ON COLUMN "public"."log_access_log"."method" IS '操作方式'; +COMMENT ON COLUMN "public"."log_access_log"."req_params" IS '请求参数'; +COMMENT ON COLUMN "public"."log_access_log"."req_body" IS '请求body'; +COMMENT ON COLUMN "public"."log_access_log"."http_status" IS '响应状态码'; +COMMENT ON COLUMN "public"."log_access_log"."result" IS '响应信息'; +COMMENT ON COLUMN "public"."log_access_log"."error_msg" IS '错误消息'; +COMMENT ON COLUMN "public"."log_access_log"."time" IS '执行时长'; +COMMENT ON COLUMN "public"."log_access_log"."create_time" IS '创建时间'; +COMMENT ON TABLE "public"."log_access_log" IS '访问日志'; + +-- ---------------------------- +-- Table structure for log_login_log +-- ---------------------------- +DROP TABLE IF EXISTS "public"."log_login_log"; +CREATE TABLE "public"."log_login_log" ( + "id" SERIAL PRIMARY KEY, + "trace_id" char(24), + "username" varchar(64), + "ip" varchar(64), + "os" varchar(50), + "status" int2 NOT NULL, + "event_type" int2, + "msg" varchar(255), + "location" varchar(50), + "browser" varchar(50), + "login_time" timestamp(6), + "create_time" timestamp(6) +) +; +COMMENT ON COLUMN "public"."log_login_log"."id" IS '编号'; +COMMENT ON COLUMN "public"."log_login_log"."trace_id" IS '追踪ID'; +COMMENT ON COLUMN "public"."log_login_log"."username" IS '用户名'; +COMMENT ON COLUMN "public"."log_login_log"."ip" IS '登陆IP'; +COMMENT ON COLUMN "public"."log_login_log"."os" IS '操作系统'; +COMMENT ON COLUMN "public"."log_login_log"."status" IS '状态'; +COMMENT ON COLUMN "public"."log_login_log"."event_type" IS '事件类型,1:登录 2:登出'; +COMMENT ON COLUMN "public"."log_login_log"."msg" IS '操作信息'; +COMMENT ON COLUMN "public"."log_login_log"."location" IS '登陆地点'; +COMMENT ON COLUMN "public"."log_login_log"."browser" IS '浏览器'; +COMMENT ON COLUMN "public"."log_login_log"."login_time" IS '登录/登出时间'; +COMMENT ON COLUMN "public"."log_login_log"."create_time" IS '创建时间'; +COMMENT ON TABLE "public"."log_login_log" IS '登陆日志'; + +-- ---------------------------- +-- Table structure for log_operation_log +-- ---------------------------- +DROP TABLE IF EXISTS "public"."log_operation_log"; +CREATE TABLE "public"."log_operation_log" ( + "id" SERIAL PRIMARY KEY, + "trace_id" char(24), + "msg" varchar(255), + "ip" varchar(64), + "user_agent" varchar(1000), + "uri" varchar(255), + "method" varchar(10), + "params" text, + "result" text, + "status" int2 NOT NULL, + "type" int2, + "time" int8, + "operator" varchar(64), + "create_time" timestamp(6) +) +; +COMMENT ON COLUMN "public"."log_operation_log"."id" IS '编号'; +COMMENT ON COLUMN "public"."log_operation_log"."trace_id" IS '追踪ID'; +COMMENT ON COLUMN "public"."log_operation_log"."msg" IS '日志消息'; +COMMENT ON COLUMN "public"."log_operation_log"."ip" IS '访问IP地址'; +COMMENT ON COLUMN "public"."log_operation_log"."user_agent" IS '用户代理'; +COMMENT ON COLUMN "public"."log_operation_log"."uri" IS '请求URI'; +COMMENT ON COLUMN "public"."log_operation_log"."method" IS '请求方式'; +COMMENT ON COLUMN "public"."log_operation_log"."params" IS '操作提交的数据'; +COMMENT ON COLUMN "public"."log_operation_log"."result" IS '操作结果'; +COMMENT ON COLUMN "public"."log_operation_log"."status" IS '操作状态'; +COMMENT ON COLUMN "public"."log_operation_log"."type" IS '操作类型'; +COMMENT ON COLUMN "public"."log_operation_log"."time" IS '执行时长'; +COMMENT ON COLUMN "public"."log_operation_log"."operator" IS '创建者'; +COMMENT ON COLUMN "public"."log_operation_log"."create_time" IS '创建时间'; +COMMENT ON TABLE "public"."log_operation_log" IS '操作日志'; + +-- ---------------------------- +-- Table structure for notify_announcement +-- ---------------------------- +DROP TABLE IF EXISTS "public"."notify_announcement"; +CREATE TABLE "public"."notify_announcement" ( + "id" SERIAL PRIMARY KEY, + "title" varchar(255), + "content" text, + "recipient_filter_type" int4, + "recipient_filter_condition" varchar, + "receive_mode" varchar, + "status" int2, + "immortal" int2, + "deadline" timestamp(6), + "deleted" int8, + "create_by" int4, + "update_by" int4, + "create_time" timestamp(6), + "update_time" timestamp(6) +) +; +COMMENT ON COLUMN "public"."notify_announcement"."id" IS 'ID'; +COMMENT ON COLUMN "public"."notify_announcement"."title" IS '标题'; +COMMENT ON COLUMN "public"."notify_announcement"."content" IS '内容'; +COMMENT ON COLUMN "public"."notify_announcement"."recipient_filter_type" IS '接收人筛选方式,1:全部 2:用户角色 3:组织机构 4:用户类型 5:自定义用户'; +COMMENT ON COLUMN "public"."notify_announcement"."recipient_filter_condition" IS '对应接收人筛选方式的条件信息,多个用逗号分割。如角色标识,组织ID,用户类型,用户ID等'; +COMMENT ON COLUMN "public"."notify_announcement"."receive_mode" IS '接收方式'; +COMMENT ON COLUMN "public"."notify_announcement"."status" IS '状态,0:已关闭 1:发布中 2:待发布'; +COMMENT ON COLUMN "public"."notify_announcement"."immortal" IS '永久有效的'; +COMMENT ON COLUMN "public"."notify_announcement"."deadline" IS '截止日期'; +COMMENT ON COLUMN "public"."notify_announcement"."deleted" IS '逻辑删除标识,未删除为 0,已删除为删除时间'; +COMMENT ON COLUMN "public"."notify_announcement"."create_by" IS '创建人'; +COMMENT ON COLUMN "public"."notify_announcement"."update_by" IS '修改人'; +COMMENT ON COLUMN "public"."notify_announcement"."create_time" IS '创建时间'; +COMMENT ON COLUMN "public"."notify_announcement"."update_time" IS '修改时间'; +COMMENT ON TABLE "public"."notify_announcement" IS '公告信息'; + +-- ---------------------------- +-- Table structure for notify_user_announcement +-- ---------------------------- +DROP TABLE IF EXISTS "public"."notify_user_announcement"; +CREATE TABLE "public"."notify_user_announcement" ( + "id" SERIAL PRIMARY KEY, + "announcement_id" int8, + "user_id" int4, + "state" int2, + "read_time" timestamp(6), + "create_time" timestamp(6) +) +; +COMMENT ON COLUMN "public"."notify_user_announcement"."id" IS 'ID'; +COMMENT ON COLUMN "public"."notify_user_announcement"."announcement_id" IS '公告id'; +COMMENT ON COLUMN "public"."notify_user_announcement"."user_id" IS '用户ID'; +COMMENT ON COLUMN "public"."notify_user_announcement"."state" IS '状态,已读(1)|未读(0)'; +COMMENT ON COLUMN "public"."notify_user_announcement"."read_time" IS '阅读时间'; +COMMENT ON COLUMN "public"."notify_user_announcement"."create_time" IS '拉取时间'; +COMMENT ON TABLE "public"."notify_user_announcement" IS '用户公告表'; + +-- ---------------------------- +-- Table structure for oauth_client_details +-- ---------------------------- +DROP TABLE IF EXISTS "public"."oauth_client_details"; +CREATE TABLE "public"."oauth_client_details" ( + "client_id" varchar(250) NOT NULL, + "resource_ids" varchar(256), + "client_secret" varchar(256), + "scope" varchar(256), + "authorized_grant_types" varchar(256), + "web_server_redirect_uri" varchar(256), + "authorities" varchar(256), + "access_token_validity" int4, + "refresh_token_validity" int4, + "additional_information" varchar(4096), + "autoapprove" varchar(256) +) +; +COMMENT ON TABLE "public"."oauth_client_details" IS 'OAuth客户端配置'; + +-- ---------------------------- +-- Records of oauth_client_details +-- ---------------------------- +INSERT INTO "oauth_client_details" VALUES ('actuator', NULL, '$2a$10$frNrwNcb5rUeNBd7EhME6uN7zTOe0qKlDVsT2SgZZDitJXuJJ7wDO', 'server', 'password,refresh_token', NULL, NULL, NULL, NULL, NULL, 'true'); +INSERT INTO "oauth_client_details" VALUES ('test', NULL, '$2a$10$8DrIu79gvgx8.nQXuWGPR.tG/SHh547krcxhMeDrikJjUWlLua4.K', 'server', 'password,client_credentials,refresh_token,mobile', NULL, NULL, NULL, NULL, NULL, 'true'); +INSERT INTO "oauth_client_details" VALUES ('ui', NULL, '$2a$10$8UbJyUN9kdE16RlqSx9Sc.YLIjKLDWFS2Nvev.uN/P2OrrCtVkuMO', 'server', 'password,refresh_token', NULL, NULL, NULL, NULL, NULL, 'true'); + + +-- ---------------------------- +-- Table structure for sys_config +-- ---------------------------- +DROP TABLE IF EXISTS "public"."sys_config"; +CREATE TABLE "public"."sys_config" ( + "id" SERIAL PRIMARY KEY, + "name" varchar(50), + "conf_key" varchar(50), + "conf_value" varchar(500), + "category" varchar(255), + "remarks" varchar(256), + "deleted" int8, + "create_by" int4, + "update_by" int4, + "create_time" timestamp(6), + "update_time" timestamp(6) +) +; +COMMENT ON COLUMN "public"."sys_config"."name" IS '配置名称'; +COMMENT ON COLUMN "public"."sys_config"."conf_key" IS '配置键'; +COMMENT ON COLUMN "public"."sys_config"."conf_value" IS '配置值'; +COMMENT ON COLUMN "public"."sys_config"."category" IS '分类'; +COMMENT ON COLUMN "public"."sys_config"."remarks" IS '备注'; +COMMENT ON COLUMN "public"."sys_config"."deleted" IS '逻辑删除标识,未删除为 0,已删除为删除时间'; +COMMENT ON COLUMN "public"."sys_config"."create_by" IS '创建人'; +COMMENT ON COLUMN "public"."sys_config"."update_by" IS '修改人'; +COMMENT ON COLUMN "public"."sys_config"."create_time" IS '创建时间'; +COMMENT ON COLUMN "public"."sys_config"."update_time" IS '修改时间'; +COMMENT ON TABLE "public"."sys_config" IS '基础配置'; + +-- ---------------------------- +-- Records of sys_config +-- ---------------------------- +INSERT INTO "sys_config" VALUES (nextval('sys_config_id_seq'), '网站弹窗开关', 'site_popup', '1233', 'group', '宣传网站是否弹出框的控制开关。 1:开启 0:关闭', 0, NULL, NULL, '2019-10-15 16:45:55', '2021-04-28 19:47:34'); + + +-- ---------------------------- +-- Table structure for sys_dict +-- ---------------------------- +DROP TABLE IF EXISTS "public"."sys_dict"; +CREATE TABLE "public"."sys_dict" ( + "id" SERIAL PRIMARY KEY, + "code" varchar(50), + "title" varchar(100), + "value_type" int2, + "hash_code" varchar(32) NOT NULL, + "remarks" varchar(256), + "deleted" int8, + "create_by" int4, + "update_by" int4, + "create_time" timestamp(6), + "update_time" timestamp(6) +) +; +COMMENT ON COLUMN "public"."sys_dict"."id" IS '编号'; +COMMENT ON COLUMN "public"."sys_dict"."code" IS '标识'; +COMMENT ON COLUMN "public"."sys_dict"."title" IS '名称'; +COMMENT ON COLUMN "public"."sys_dict"."value_type" IS '值类型,1:Number 2:String 3:Boolean'; +COMMENT ON COLUMN "public"."sys_dict"."hash_code" IS 'hash值,当字典项被修改时变更'; +COMMENT ON COLUMN "public"."sys_dict"."remarks" IS '备注'; +COMMENT ON COLUMN "public"."sys_dict"."deleted" IS '逻辑删除标识,未删除为 0,已删除为删除时间'; +COMMENT ON COLUMN "public"."sys_dict"."create_by" IS '创建人'; +COMMENT ON COLUMN "public"."sys_dict"."update_by" IS '修改人'; +COMMENT ON COLUMN "public"."sys_dict"."create_time" IS '创建时间'; +COMMENT ON COLUMN "public"."sys_dict"."update_time" IS '修改时间'; +COMMENT ON TABLE "public"."sys_dict" IS '字典表'; + +-- ---------------------------- +-- Records of sys_dict +-- ---------------------------- +INSERT INTO "sys_dict" VALUES (nextval('sys_dict_id_seq'), 'log_status', '日志状态', 1, 'b3b0d5919e4a46ffa6dd17d9d7799c58', '正常、异常', 0, NULL, NULL, '2020-03-27 01:05:29', '2020-03-27 11:06:44'); +INSERT INTO "sys_dict" VALUES (nextval('sys_dict_id_seq'), 'gender', '性别', 1, 'ae18a6a3e6744f10bd35dc71867edf8d', '用户性别', 0, NULL, NULL, '2020-03-27 01:05:29', '2020-03-27 00:55:28'); +INSERT INTO "sys_dict" VALUES (nextval('sys_dict_id_seq'), 'grant_types', '授权类型', 1, 'e5316daadb490e9ca7e1ac5c5607a4', 'OAuth授权类型', 0, NULL, NULL, '2020-03-27 01:05:29', '2020-03-27 00:30:16'); +INSERT INTO "sys_dict" VALUES (nextval('sys_dict_id_seq'), 'operation_type', '操作类型', 1, '6b375bba88f649caa38e95d8e5c5c5c9', '操作日志的操作类型', 0, NULL, NULL, '2020-07-14 20:28:54', NULL); +INSERT INTO "sys_dict" VALUES (nextval('sys_dict_id_seq'), 'role_type', '角色类型', 1, '90875dc38a154b9d810e8556f8972d9b', '角色类型,系统保留角色不允许删除', 0, NULL, NULL, '2020-07-14 21:16:45', '2021-08-09 00:26:30'); +INSERT INTO "sys_dict" VALUES (nextval('sys_dict_id_seq'), 'dict_value_type', '字典数据类型', 1, '886c8965bdaa4c1e91ffcd5fb20ea84f', 'Number、String、Boolean', 0, NULL, NULL, '2020-08-14 17:16:47', NULL); +INSERT INTO "sys_dict" VALUES (nextval('sys_dict_id_seq'), 'login_event_type', '登陆事件类型', 1, '56f191fa64ad42b5948e9dcb331cded9', '1:登陆 2:登出', 0, NULL, NULL, '2020-09-17 14:44:00', NULL); +INSERT INTO "sys_dict" VALUES (nextval('sys_dict_id_seq'), 'yes_or_no', '是否', 1, 'aa22893ca4d243cb8eb198e0f7d66824', NULL, 0, NULL, NULL, '2021-08-16 16:16:43', NULL); +INSERT INTO "sys_dict" VALUES (nextval('sys_dict_id_seq'), 'user_type', '用户类型', 1, 'a2730f33f24045578ebe7786282e1955', '用户类型', 0, NULL, NULL, '2020-12-16 13:44:37', '2021-04-12 10:54:01'); +INSERT INTO "sys_dict" VALUES (nextval('sys_dict_id_seq'), 'recipient_filter_type', '消息接收人筛选方式', 1, '54f95affca9e4c53aa679bca2855351f', '接收人筛选方式', 0, NULL, NULL, '2020-12-15 17:36:24', '2021-07-01 16:27:05'); +INSERT INTO "sys_dict" VALUES (nextval('sys_dict_id_seq'), 'notify_channel', '通知渠道', 1, 'b1d33b2d410b4214920f67c01af80f2f', '通知渠道', 0, NULL, NULL, '2020-12-16 15:37:36', '2021-07-01 17:17:16'); +INSERT INTO "sys_dict" VALUES (nextval('sys_dict_id_seq'), 'menu_type', '菜单类型', 1, '88b77280a299482a8e58fbc5fcc065a3', '系统菜单的类型', 0, NULL, NULL, '2021-04-06 21:39:45', NULL); +INSERT INTO "sys_dict" VALUES (nextval('sys_dict_id_seq'), 'user_status', '用户状态', 1, '9527', NULL, 0, NULL, NULL, '2021-12-03 11:54:39', '2021-12-03 11:54:39'); + + +-- ---------------------------- +-- Table structure for sys_dict_item +-- ---------------------------- +DROP TABLE IF EXISTS "public"."sys_dict_item"; +CREATE TABLE "public"."sys_dict_item" ( + "id" SERIAL PRIMARY KEY, + "dict_code" varchar(50) NOT NULL, + "value" varchar(100) NOT NULL, + "name" varchar(100) NOT NULL, + "status" int2 NOT NULL, + "attributes" varchar, + "sort" int4 NOT NULL, + "remarks" varchar(256), + "deleted" int8, + "create_by" int4, + "update_by" int4, + "create_time" timestamp(6), + "update_time" timestamp(6) +) +; +COMMENT ON COLUMN "public"."sys_dict_item"."id" IS 'ID'; +COMMENT ON COLUMN "public"."sys_dict_item"."dict_code" IS '字典Code'; +COMMENT ON COLUMN "public"."sys_dict_item"."value" IS '数据值'; +COMMENT ON COLUMN "public"."sys_dict_item"."name" IS '标签'; +COMMENT ON COLUMN "public"."sys_dict_item"."status" IS '状态 1:启用 0:禁用'; +COMMENT ON COLUMN "public"."sys_dict_item"."attributes" IS '附加属性'; +COMMENT ON COLUMN "public"."sys_dict_item"."sort" IS '排序(升序)'; +COMMENT ON COLUMN "public"."sys_dict_item"."remarks" IS '备注'; +COMMENT ON COLUMN "public"."sys_dict_item"."deleted" IS '逻辑删除标识,未删除为 0,已删除为删除时间'; +COMMENT ON COLUMN "public"."sys_dict_item"."create_by" IS '创建人'; +COMMENT ON COLUMN "public"."sys_dict_item"."update_by" IS '修改人'; +COMMENT ON COLUMN "public"."sys_dict_item"."create_time" IS '创建时间'; +COMMENT ON COLUMN "public"."sys_dict_item"."update_time" IS '修改时间'; +COMMENT ON TABLE "public"."sys_dict_item" IS '字典项'; + +-- ---------------------------- +-- Records of sys_dict_item +-- ---------------------------- +INSERT INTO "sys_dict_item" VALUES (nextval('sys_dict_item_id_seq'), 'log_status', '1', '正常', 1, '{"tagColor": "", "languages": {"en-US": "Normal ", "zh-CN": "正常"}, "textColor": "#34890A"}', 0, '', 0, NULL, NULL, '2020-03-27 01:05:52', '2021-12-03 11:57:31'); +INSERT INTO "sys_dict_item" VALUES (nextval('sys_dict_item_id_seq'), 'log_status', '0', '异常', 1, '{"tagColor": "", "languages": {"en-US": "Error", "zh-CN": "异常"}, "textColor": "#FF0000"}', 1, '', 0, NULL, NULL, '2020-03-27 01:05:52', '2021-12-03 11:57:31'); +INSERT INTO "sys_dict_item" VALUES (nextval('sys_dict_item_id_seq'), 'gender', '1', '男', 1, '{"tagColor": "", "languages": {"en-US": "Male", "zh-CN": "男"}, "textColor": ""}', 0, '', 0, NULL, NULL, '2020-03-27 01:05:52', '2021-12-03 11:57:31'); +INSERT INTO "sys_dict_item" VALUES (nextval('sys_dict_item_id_seq'), 'gender', '2', '女', 1, '{"tagColor": "", "languages": {"en-US": "Female", "zh-CN": "女"}, "textColor": ""}', 1, '', 0, NULL, NULL, '2020-03-27 01:05:52', '2021-12-03 11:57:31'); +INSERT INTO "sys_dict_item" VALUES (nextval('sys_dict_item_id_seq'), 'gender', '3', '未知', 1, '{"tagColor": "", "languages": {"en-US": "Unknown", "zh-CN": "未知"}, "textColor": ""}', 2, '', 0, NULL, NULL, '2020-03-27 01:05:52', '2021-12-03 11:57:31'); +INSERT INTO "sys_dict_item" VALUES (nextval('sys_dict_item_id_seq'), 'grant_types', 'password', '密码模式', 1, '{}', 0, NULL, 0, NULL, NULL, '2020-03-27 01:05:52', '2019-08-13 07:35:28'); +INSERT INTO "sys_dict_item" VALUES (nextval('sys_dict_item_id_seq'), 'grant_types', 'authorization_code', '授权码模式', 1, '{}', 1, NULL, 0, NULL, NULL, '2020-03-27 01:05:52', '2019-08-13 07:36:07'); +INSERT INTO "sys_dict_item" VALUES (nextval('sys_dict_item_id_seq'), 'grant_types', 'client_credentials', '客户端模式', 1, '{}', 2, NULL, 0, NULL, NULL, '2020-03-27 01:05:52', '2019-08-13 07:36:30'); +INSERT INTO "sys_dict_item" VALUES (nextval('sys_dict_item_id_seq'), 'grant_types', 'refresh_token', '刷新模式', 1, '{}', 3, NULL, 0, NULL, NULL, '2020-03-27 01:05:52', '2019-08-13 07:36:54'); +INSERT INTO "sys_dict_item" VALUES (nextval('sys_dict_item_id_seq'), 'grant_types', 'implicit', '简化模式', 1, '{}', 4, NULL, 0, NULL, NULL, '2020-03-27 01:05:52', '2019-08-13 07:39:32'); +INSERT INTO "sys_dict_item" VALUES (nextval('sys_dict_item_id_seq'), 'login_event_type', '1', '登陆', 1, '{"tagColor": "cyan", "languages": {"en-US": "Login", "zh-CN": "登陆"}, "textColor": ""}', 0, '', 0, NULL, NULL, '2020-03-27 01:05:52', '2021-12-03 11:57:31'); +INSERT INTO "sys_dict_item" VALUES (nextval('sys_dict_item_id_seq'), 'login_event_type', '2', '登出', 1, '{"tagColor": "pink", "languages": {"en-US": "Logout", "zh-CN": "登出"}, "textColor": ""}', 1, '', 0, NULL, NULL, '2020-03-27 01:05:52', '2021-12-03 11:57:31'); +INSERT INTO "sys_dict_item" VALUES (nextval('sys_dict_item_id_seq'), 'operation_type', '3', '查看', 1, '{"tagColor": "purple", "languages": {"en-US": "Read", "zh-CN": "查看"}, "textColor": ""}', 3, '', 0, NULL, NULL, '2020-03-27 01:05:52', '2021-12-03 11:57:31'); +INSERT INTO "sys_dict_item" VALUES (nextval('sys_dict_item_id_seq'), 'operation_type', '4', '新建', 1, '{"tagColor": "cyan", "languages": {"en-US": "Create", "zh-CN": "新建"}, "textColor": ""}', 4, '', 0, NULL, NULL, '2020-03-27 01:05:52', '2021-12-03 11:57:31'); +INSERT INTO "sys_dict_item" VALUES (nextval('sys_dict_item_id_seq'), 'operation_type', '5', '修改', 1, '{"tagColor": "orange", "languages": {"en-US": "Update", "zh-CN": "修改"}, "textColor": ""}', 5, '', 0, NULL, NULL, '2020-03-27 01:05:52', '2021-12-03 11:57:31'); +INSERT INTO "sys_dict_item" VALUES (nextval('sys_dict_item_id_seq'), 'operation_type', '6', '删除', 1, '{"tagColor": "pink", "languages": {"en-US": "Delete", "zh-CN": "删除"}, "textColor": ""}', 6, '', 0, NULL, NULL, '2020-03-27 01:05:52', '2021-12-03 11:57:31'); +INSERT INTO "sys_dict_item" VALUES (nextval('sys_dict_item_id_seq'), 'role_type', '1', '系统', 1, '{"tagColor": "orange", "languages": {"en-US": "System", "zh-CN": "系统"}, "textColor": ""}', 1, '系统角色不能删除', 0, NULL, NULL, '2020-07-14 21:17:07', '2021-12-03 11:57:31'); +INSERT INTO "sys_dict_item" VALUES (nextval('sys_dict_item_id_seq'), 'role_type', '2', '自定义', 1, '{"tagColor": "green", "languages": {"en-US": "Custom", "zh-CN": "自定义"}, "textColor": ""}', 2, '自定义角色可以删除', 0, NULL, NULL, '2020-07-14 21:17:24', '2021-12-03 11:57:31'); +INSERT INTO "sys_dict_item" VALUES (nextval('sys_dict_item_id_seq'), 'dict_type', '1', 'Number', 1, '{}', 1, NULL, 0, NULL, NULL, '2020-08-12 16:10:22', '2020-08-12 16:12:33'); +INSERT INTO "sys_dict_item" VALUES (nextval('sys_dict_item_id_seq'), 'dict_type', '2', 'String', 1, '{}', 1, NULL, 0, NULL, NULL, '2020-08-12 16:10:31', '2020-08-12 16:12:27'); +INSERT INTO "sys_dict_item" VALUES (nextval('sys_dict_item_id_seq'), 'dict_type', '3', 'Boolean', 1, '{}', 1, NULL, 0, NULL, NULL, '2020-08-12 16:10:38', '2020-08-12 16:12:23'); +INSERT INTO "sys_dict_item" VALUES (nextval('sys_dict_item_id_seq'), 'dict_value_type', '1', 'Number', 1, '{}', 1, NULL, 0, NULL, NULL, '2020-08-12 16:10:22', '2020-08-12 16:12:33'); +INSERT INTO "sys_dict_item" VALUES (nextval('sys_dict_item_id_seq'), 'dict_value_type', '2', 'String', 1, '{}', 1, NULL, 0, NULL, NULL, '2020-08-12 16:10:31', '2020-08-12 16:12:27'); +INSERT INTO "sys_dict_item" VALUES (nextval('sys_dict_item_id_seq'), 'dict_value_type', '3', 'Boolean', 1, '{}', 1, NULL, 0, NULL, NULL, '2020-08-12 16:10:38', '2020-10-20 15:05:53'); +INSERT INTO "sys_dict_item" VALUES (nextval('sys_dict_item_id_seq'), 'yes_or_no', '1', '是', 1, '{"tagColor": "", "languages": {"en-US": "Yes", "zh-CN": "是"}, "textColor": ""}', 1, NULL, 0, NULL, NULL, '2021-08-16 16:17:08', '2021-12-03 11:57:31'); +INSERT INTO "sys_dict_item" VALUES (nextval('sys_dict_item_id_seq'), 'yes_or_no', '0', '否', 1, '{"tagColor": "", "languages": {"en-US": "No", "zh-CN": "否"}, "textColor": ""}', 2, NULL, 0, NULL, NULL, '2021-08-16 16:17:34', '2021-12-03 11:57:31'); +INSERT INTO "sys_dict_item" VALUES (nextval('sys_dict_item_id_seq'), 'user_type', '1', '系统用户', 1, '{"tagColor": "", "languages": {"en-US": "System User", "zh-CN": "系统用户"}, "textColor": ""}', 1, NULL, 0, NULL, NULL, '2020-12-16 13:45:19', '2021-12-03 11:57:31'); +INSERT INTO "sys_dict_item" VALUES (nextval('sys_dict_item_id_seq'), 'recipient_filter_type', '1', '全部', 1, '{"tagColor": "", "languages": {"en-US": "All", "zh-CN": "全部"}, "textColor": ""}', 1, '不筛选,对全部用户发送', 0, NULL, NULL, '2020-12-15 17:37:30', '2021-12-03 11:57:31'); +INSERT INTO "sys_dict_item" VALUES (nextval('sys_dict_item_id_seq'), 'recipient_filter_type', '2', '指定角色', 1, '{"tagColor": "", "languages": {"en-US": "Specify the role", "zh-CN": "指定角色"}, "textColor": ""}', 2, '筛选拥有指定角色的用户', 0, NULL, NULL, '2020-12-15 17:38:54', '2021-12-03 11:57:31'); +INSERT INTO "sys_dict_item" VALUES (nextval('sys_dict_item_id_seq'), 'recipient_filter_type', '3', '指定组织', 1, '{"tagColor": "", "languages": {"en-US": "Specify the organization", "zh-CN": "指定组织"}, "textColor": ""}', 3, '筛选指定组织的用户', 0, NULL, NULL, '2020-12-15 17:39:19', '2021-12-03 11:57:31'); +INSERT INTO "sys_dict_item" VALUES (nextval('sys_dict_item_id_seq'), 'recipient_filter_type', '4', '指定类型', 1, '{"tagColor": "", "languages": {"en-US": "Specify the type", "zh-CN": "指定类型"}, "textColor": ""}', 4, '筛选指定用户类型的用户', 0, NULL, NULL, '2020-12-15 17:39:50', '2021-12-03 11:57:31'); +INSERT INTO "sys_dict_item" VALUES (nextval('sys_dict_item_id_seq'), 'recipient_filter_type', '5', '指定用户', 1, '{"tagColor": "", "languages": {"en-US": "Specify the user", "zh-CN": "指定用户"}, "textColor": ""}', 5, '指定用户发送', 0, NULL, NULL, '2020-12-15 17:40:06', '2021-12-03 11:57:31'); +INSERT INTO "sys_dict_item" VALUES (nextval('sys_dict_item_id_seq'), 'notify_channel', '1', '站内', 1, '{"tagColor": "", "languages": {"en-US": "Station", "zh-CN": "站内"}, "textColor": ""}', 1, NULL, 0, NULL, NULL, '2020-12-16 15:37:53', '2021-12-03 11:57:31'); +INSERT INTO "sys_dict_item" VALUES (nextval('sys_dict_item_id_seq'), 'notify_channel', '2', '短信', 1, '{"tagColor": "", "languages": {"en-US": "SMS", "zh-CN": "短信"}, "textColor": ""}', 2, NULL, 0, NULL, NULL, '2020-12-16 15:38:08', '2021-12-03 11:57:31'); +INSERT INTO "sys_dict_item" VALUES (nextval('sys_dict_item_id_seq'), 'notify_channel', '3', '邮箱', 1, '{"tagColor": "", "languages": {"en-US": "Email", "zh-CN": "邮箱"}, "textColor": ""}', 3, NULL, 0, NULL, NULL, '2020-12-16 15:38:20', '2021-12-03 11:57:31'); +INSERT INTO "sys_dict_item" VALUES (nextval('sys_dict_item_id_seq'), 'menu_type', '0', '目录', 1, '{"tagColor": "", "languages": {"en-US": "Catalog", "zh-CN": "目录"}, "textColor": ""}', 1, NULL, 0, NULL, NULL, '2021-04-06 21:41:34', '2021-12-03 11:57:31'); +INSERT INTO "sys_dict_item" VALUES (nextval('sys_dict_item_id_seq'), 'menu_type', '1', '菜单', 1, '{"tagColor": "", "languages": {"en-US": "Menu", "zh-CN": "菜单"}, "textColor": ""}', 2, NULL, 0, NULL, NULL, '2021-04-06 21:41:45', '2021-12-03 11:57:31'); +INSERT INTO "sys_dict_item" VALUES (nextval('sys_dict_item_id_seq'), 'menu_type', '2', '按钮', 1, '{"tagColor": "", "languages": {"en-US": "Button", "zh-CN": "按钮"}, "textColor": ""}', 3, NULL, 0, NULL, NULL, '2021-04-06 21:41:56', '2021-12-03 11:57:31'); +INSERT INTO "sys_dict_item" VALUES (nextval('sys_dict_item_id_seq'), 'operation_type', '0', '其他', 1, '{"tagColor": "", "languages": {"en-US": "Other", "zh-CN": "其他"}, "textColor": ""}', 0, NULL, 0, NULL, NULL, '2021-08-16 16:59:28', '2021-12-03 11:57:31'); +INSERT INTO "sys_dict_item" VALUES (nextval('sys_dict_item_id_seq'), 'operation_type', '1', '导入', 1, '{"tagColor": "green", "languages": {"en-US": "Import", "zh-CN": "导入"}, "textColor": ""}', 1, NULL, 0, NULL, NULL, '2021-08-16 16:59:52', '2021-12-03 11:57:31'); +INSERT INTO "sys_dict_item" VALUES (nextval('sys_dict_item_id_seq'), 'operation_type', '2', '导出', 1, '{"tagColor": "blue", "languages": {"en-US": "Export", "zh-CN": "导出"}, "textColor": ""}', 2, NULL, 0, NULL, NULL, '2021-08-16 17:02:07', '2021-12-03 11:57:31'); +INSERT INTO "sys_dict_item" VALUES (nextval('sys_dict_item_id_seq'), 'user_status', '0', '锁定', 1, '{"tagColor": "#d9d9d9", "languages": {"en-US": "Locked", "zh-CN": "锁定"}, "textColor": "#d9d9d9", "badgeStatus": "default"}', 2, NULL, 0, NULL, NULL, '2021-12-03 11:54:39', NULL); +INSERT INTO "sys_dict_item" VALUES (nextval('sys_dict_item_id_seq'), 'user_status', '1', '正常', 1, '{"tagColor": "blue", "languages": {"en-US": "Normal", "zh-CN": "正常"}, "textColor": "#5b8ff9", "badgeStatus": "processing"}', 1, NULL, 0, NULL, NULL, '2021-12-03 11:54:39', NULL); + + +-- ---------------------------- +-- Table structure for sys_menu +-- ---------------------------- +DROP TABLE IF EXISTS "public"."sys_menu"; +CREATE TABLE "public"."sys_menu" ( + "id" SERIAL PRIMARY KEY, + "parent_id" int4 NOT NULL, + "title" varchar(100), + "icon" varchar(32), + "permission" varchar(32), + "path" varchar(128), + "target_type" int2, + "uri" varchar(128), + "sort" int4, + "keep_alive" int2, + "hidden" int2, + "type" int2, + "remarks" varchar(256), + "deleted" int8, + "create_by" int4, + "update_by" int4, + "create_time" timestamp(6), + "update_time" timestamp(6) +) +; +COMMENT ON COLUMN "public"."sys_menu"."id" IS '菜单ID'; +COMMENT ON COLUMN "public"."sys_menu"."parent_id" IS '父级ID'; +COMMENT ON COLUMN "public"."sys_menu"."title" IS '菜单名称'; +COMMENT ON COLUMN "public"."sys_menu"."icon" IS '菜单图标'; +COMMENT ON COLUMN "public"."sys_menu"."permission" IS '授权标识'; +COMMENT ON COLUMN "public"."sys_menu"."path" IS '路由地址'; +COMMENT ON COLUMN "public"."sys_menu"."target_type" IS '打开方式 (1组件 2内链 3外链)'; +COMMENT ON COLUMN "public"."sys_menu"."uri" IS '定位标识 (打开方式为组件时其值为组件相对路径,其他为URL地址)'; +COMMENT ON COLUMN "public"."sys_menu"."sort" IS '显示排序'; +COMMENT ON COLUMN "public"."sys_menu"."keep_alive" IS '组件缓存:0-开启,1-关闭'; +COMMENT ON COLUMN "public"."sys_menu"."hidden" IS '隐藏菜单: 0-否,1-是'; +COMMENT ON COLUMN "public"."sys_menu"."type" IS '菜单类型 (0目录,1菜单,2按钮)'; +COMMENT ON COLUMN "public"."sys_menu"."remarks" IS '备注信息'; +COMMENT ON COLUMN "public"."sys_menu"."deleted" IS '逻辑删除标识,未删除为 0,已删除为删除时间'; +COMMENT ON COLUMN "public"."sys_menu"."create_by" IS '创建人'; +COMMENT ON COLUMN "public"."sys_menu"."update_by" IS '修改人'; +COMMENT ON COLUMN "public"."sys_menu"."create_time" IS '创建时间'; +COMMENT ON COLUMN "public"."sys_menu"."update_time" IS '修改时间'; +COMMENT ON TABLE "public"."sys_menu" IS '菜单权限'; + +-- ---------------------------- +-- Records of sys_menu +-- ---------------------------- +INSERT INTO "sys_menu" VALUES (10028, 0, '个人页', 'user', NULL, 'account', 1, 'account/settings/Index', 0, 0, 1, 1, NULL, 0, NULL, NULL, NULL, NULL); +INSERT INTO "sys_menu" VALUES (10030, 10028, '个人设置', NULL, NULL, 'settings', 1, NULL, 1, 0, 1, 0, NULL, 0, NULL, NULL, NULL, NULL); +INSERT INTO "sys_menu" VALUES (10031, 10030, '基本设置', NULL, NULL, 'base', 1, 'account/settings/BaseSetting', 1, 0, 0, 1, NULL, 0, NULL, NULL, NULL, '2021-12-03 12:33:43'); +INSERT INTO "sys_menu" VALUES (10032, 10030, '安全设置', NULL, NULL, 'security', 1, 'account/settings/Security', 2, 0, 0, 1, NULL, 0, NULL, NULL, NULL, '2021-12-03 12:33:43'); +INSERT INTO "sys_menu" VALUES (10034, 10030, '账户绑定', NULL, NULL, 'binding', 1, 'account/settings/Binding', 4, 0, 0, 1, NULL, 0, NULL, NULL, NULL, '2021-12-03 12:33:43'); +INSERT INTO "sys_menu" VALUES (10035, 10030, '新消息通知', NULL, NULL, 'notification', 1, 'account/settings/Notification', 5, 0, 0, 1, NULL, 0, NULL, NULL, NULL, '2021-12-03 12:33:43'); +INSERT INTO "sys_menu" VALUES (100000, 0, '系统管理', 'setting', NULL, 'system', 1, NULL, 1, 0, 0, 0, NULL, 0, NULL, NULL, NULL, '2021-12-03 11:57:30'); +INSERT INTO "sys_menu" VALUES (100100, 100000, '系统用户', NULL, NULL, 'user', 1, 'system/user/SysUserPage', 1, 0, 0, 1, NULL, 0, NULL, NULL, NULL, '2021-12-03 11:57:30'); +INSERT INTO "sys_menu" VALUES (100101, 100100, '系统用户查询', NULL, 'system:user:read', NULL, 1, NULL, 1, 0, 0, 2, NULL, 0, NULL, NULL, '2020-03-05 16:56:57', NULL); +INSERT INTO "sys_menu" VALUES (100102, 100100, '系统用户新增', NULL, 'system:user:add', NULL, 1, NULL, 1, 0, 0, 2, NULL, 0, NULL, NULL, '2019-10-13 22:00:24', NULL); +INSERT INTO "sys_menu" VALUES (100103, 100100, '系统用户修改', NULL, 'system:user:edit', NULL, 1, NULL, 2, 0, 0, 2, NULL, 0, NULL, NULL, '2019-10-13 22:00:24', NULL); +INSERT INTO "sys_menu" VALUES (100104, 100100, '系统用户删除', NULL, 'system:user:del', NULL, 1, NULL, 3, 0, 0, 2, NULL, 0, NULL, NULL, '2019-10-13 22:00:24', NULL); +INSERT INTO "sys_menu" VALUES (100105, 100100, '系统用户授权', NULL, 'system:user:grant', NULL, 1, NULL, 3, 0, 0, 2, NULL, 0, NULL, NULL, '2019-10-13 22:00:24', NULL); +INSERT INTO "sys_menu" VALUES (100106, 100100, '系统用户改密', NULL, 'system:user:pass', NULL, 1, NULL, 4, 0, 0, 2, NULL, 0, NULL, NULL, '2019-10-13 22:00:24', NULL); +INSERT INTO "sys_menu" VALUES (100200, 100000, '角色管理', NULL, NULL, 'role', 1, 'system/role/SysRolePage', 2, 0, 0, 1, NULL, 0, NULL, NULL, NULL, '2021-12-03 11:57:30'); +INSERT INTO "sys_menu" VALUES (100201, 100200, '系统角色查询', NULL, 'system:role:read', NULL, 1, NULL, 0, 0, 0, 2, NULL, 0, NULL, NULL, '2019-10-13 22:00:24', NULL); +INSERT INTO "sys_menu" VALUES (100202, 100200, '系统角色新增', NULL, 'system:role:add', NULL, 1, NULL, 1, 0, 0, 2, NULL, 0, NULL, NULL, '2019-10-13 22:00:24', NULL); +INSERT INTO "sys_menu" VALUES (100203, 100200, '系统角色修改', NULL, 'system:role:edit', NULL, 1, NULL, 2, 0, 0, 2, NULL, 0, NULL, NULL, '2019-10-13 22:00:24', NULL); +INSERT INTO "sys_menu" VALUES (100204, 100200, '系统角色删除', NULL, 'system:role:del', NULL, 1, NULL, 3, 0, 0, 2, NULL, 0, NULL, NULL, '2019-10-13 22:00:24', NULL); +INSERT INTO "sys_menu" VALUES (100205, 100200, '系统角色授权', NULL, 'system:role:grant', NULL, 1, NULL, 3, 0, 0, 2, NULL, 0, NULL, NULL, '2019-10-13 22:00:24', NULL); +INSERT INTO "sys_menu" VALUES (100400, 100000, '配置信息', NULL, NULL, 'config', 1, 'system/config/SysConfigPage', 6, 0, 0, 1, NULL, 0, NULL, NULL, NULL, '2021-12-03 11:57:30'); +INSERT INTO "sys_menu" VALUES (100401, 100400, '配置查询', NULL, 'system:config:read', NULL, 1, NULL, 0, 0, 0, 2, NULL, 0, NULL, NULL, '2019-10-13 22:00:24', '2020-06-04 00:46:03'); +INSERT INTO "sys_menu" VALUES (100402, 100400, '配置新增', NULL, 'system:config:add', NULL, 1, NULL, 1, 0, 0, 2, NULL, 0, NULL, NULL, '2019-10-13 22:00:24', '2020-06-04 00:46:13'); +INSERT INTO "sys_menu" VALUES (100403, 100400, '配置修改', NULL, 'system:config:edit', NULL, 1, NULL, 2, 0, 0, 2, NULL, 0, NULL, NULL, '2019-10-13 22:00:24', '2020-06-04 00:46:22'); +INSERT INTO "sys_menu" VALUES (100404, 100400, '配置删除', NULL, 'system:config:del', NULL, 1, NULL, 3, 0, 0, 2, NULL, 0, NULL, NULL, '2019-10-13 22:00:24', '2020-06-04 00:46:31'); +INSERT INTO "sys_menu" VALUES (100500, 100000, '字典管理', NULL, NULL, 'dict', 1, 'system/dict/SysDictPage', 5, 0, 0, 1, NULL, 0, NULL, NULL, NULL, '2021-12-03 11:57:30'); +INSERT INTO "sys_menu" VALUES (100501, 100500, '字典查询', NULL, 'system:dict:read', NULL, 1, NULL, 0, 0, 0, 2, NULL, 0, NULL, NULL, '2019-10-13 22:00:24', NULL); +INSERT INTO "sys_menu" VALUES (100502, 100500, '字典新增', NULL, 'system:dict:add', NULL, 1, NULL, 1, 0, 0, 2, NULL, 0, NULL, NULL, '2019-10-13 22:00:24', NULL); +INSERT INTO "sys_menu" VALUES (100503, 100500, '字典修改', NULL, 'system:dict:edit', NULL, 1, NULL, 2, 0, 0, 2, NULL, 0, NULL, NULL, '2019-10-13 22:00:24', NULL); +INSERT INTO "sys_menu" VALUES (100504, 100500, '字典删除', NULL, 'system:dict:del', NULL, 1, NULL, 3, 0, 0, 2, NULL, 0, NULL, NULL, '2019-10-13 22:00:24', NULL); +INSERT INTO "sys_menu" VALUES (100700, 100000, '组织架构', NULL, NULL, 'organization', 1, 'system/organization/SysOrganizationPage', 4, 0, 0, 1, NULL, 0, NULL, NULL, NULL, '2021-12-03 11:57:30'); +INSERT INTO "sys_menu" VALUES (100701, 100700, '组织架构查询', NULL, 'system:organization:read', NULL, 1, NULL, 0, 0, 0, 2, NULL, 0, NULL, NULL, '2019-10-13 22:00:24', NULL); +INSERT INTO "sys_menu" VALUES (100702, 100700, '组织架构新增', NULL, 'system:organization:add', NULL, 1, NULL, 1, 0, 0, 2, NULL, 0, NULL, NULL, '2019-10-13 22:00:24', NULL); +INSERT INTO "sys_menu" VALUES (100703, 100700, '组织架构修改', NULL, 'system:organization:edit', NULL, 1, NULL, 2, 0, 0, 2, NULL, 0, NULL, NULL, '2019-10-13 22:00:24', NULL); +INSERT INTO "sys_menu" VALUES (100704, 100700, '组织架构删除', NULL, 'system:organization:del', NULL, 1, NULL, 3, 0, 0, 2, NULL, 0, NULL, NULL, '2019-10-13 22:00:24', NULL); +INSERT INTO "sys_menu" VALUES (100705, 100700, '组织机构校正', NULL, 'system:organization:revised', NULL, 1, '', 5, 0, 0, 2, '校正组织机构层级和深度', 0, NULL, NULL, '2021-06-22 21:54:19', NULL); +INSERT INTO "sys_menu" VALUES (100800, 100000, '菜单权限', NULL, NULL, 'menu', 1, 'system/menu/SysMenuPage', 3, 0, 0, 1, NULL, 0, NULL, NULL, NULL, '2021-12-03 11:57:30'); +INSERT INTO "sys_menu" VALUES (100801, 100800, '菜单权限查询', NULL, 'system:menu:read', NULL, 1, NULL, 0, 0, 0, 2, NULL, 0, NULL, NULL, '2019-10-13 22:00:24', NULL); +INSERT INTO "sys_menu" VALUES (100802, 100800, '菜单权限新增', NULL, 'system:menu:add', NULL, 1, NULL, 1, 0, 0, 2, NULL, 0, NULL, NULL, '2019-10-13 22:00:24', NULL); +INSERT INTO "sys_menu" VALUES (100803, 100800, '菜单权限修改', NULL, 'system:menu:edit', NULL, 1, NULL, 2, 0, 0, 2, NULL, 0, NULL, NULL, '2019-10-13 22:00:24', NULL); +INSERT INTO "sys_menu" VALUES (100804, 100800, '菜单权限删除', NULL, 'system:menu:del', NULL, 1, NULL, 3, 0, 0, 2, NULL, 0, NULL, NULL, '2019-10-13 22:00:24', NULL); +INSERT INTO "sys_menu" VALUES (110000, 0, '日志管理', 'file-search', NULL, 'log', 1, NULL, 2, 0, 0, 0, NULL, 0, NULL, NULL, NULL, '2021-12-03 11:57:30'); +INSERT INTO "sys_menu" VALUES (110100, 110000, '操作日志', NULL, NULL, 'operation-log', 1, 'log/operation-log/OperationLogPage', 2, 0, 0, 1, NULL, 0, NULL, NULL, NULL, '2021-12-03 11:57:30'); +INSERT INTO "sys_menu" VALUES (110101, 110100, '操作日志查询', NULL, 'log:operation-log:read', NULL, 1, NULL, 0, 0, 0, 2, NULL, 0, NULL, NULL, '2019-10-13 22:00:24', '2019-10-15 14:14:03'); +INSERT INTO "sys_menu" VALUES (110200, 110000, '登陆日志', NULL, NULL, 'login-log', 1, 'log/login-log/LoginLogPage', 1, 0, 0, 1, NULL, 0, NULL, NULL, NULL, '2021-12-03 11:57:31'); +INSERT INTO "sys_menu" VALUES (110201, 110200, '登陆日志查询', NULL, 'log:login-log:read', NULL, 1, NULL, 0, 0, 0, 2, NULL, 0, NULL, NULL, '2019-10-13 22:00:24', NULL); +INSERT INTO "sys_menu" VALUES (110300, 110000, '访问日志', NULL, NULL, 'access-log', 1, 'log/access-log/AccessLogPage', 3, 0, 0, 1, NULL, 0, NULL, NULL, NULL, '2021-12-03 11:57:31'); +INSERT INTO "sys_menu" VALUES (110301, 110300, '访问日志查询', NULL, 'log:access-log:read', NULL, 1, NULL, 0, 0, 0, 2, NULL, 0, NULL, NULL, '2019-10-13 22:00:24', '2019-10-15 14:14:03'); +INSERT INTO "sys_menu" VALUES (120000, 0, '消息通知', 'message', NULL, 'notify', 1, NULL, 3, 0, 0, 0, NULL, 0, NULL, NULL, '2020-12-15 16:47:53', '2021-12-03 11:57:31'); +INSERT INTO "sys_menu" VALUES (120100, 120000, '公告信息', NULL, NULL, 'announcement', 1, 'notify/announcement/AnnouncementPage', 1, 0, 0, 1, NULL, 0, NULL, NULL, NULL, '2021-12-03 11:57:31'); +INSERT INTO "sys_menu" VALUES (120101, 120100, '公告信息查询', NULL, 'notify:announcement:read', NULL, 1, NULL, 0, 0, 0, 2, NULL, 0, NULL, NULL, '2019-10-13 22:00:24', NULL); +INSERT INTO "sys_menu" VALUES (120102, 120100, '公告信息新增', NULL, 'notify:announcement:add', NULL, 1, NULL, 1, 0, 0, 2, NULL, 0, NULL, NULL, '2019-10-13 22:00:24', NULL); +INSERT INTO "sys_menu" VALUES (120103, 120100, '公告信息修改', NULL, 'notify:announcement:edit', NULL, 1, NULL, 2, 0, 0, 2, NULL, 0, NULL, NULL, '2019-10-13 22:00:24', NULL); +INSERT INTO "sys_menu" VALUES (120104, 120100, '公告信息删除', NULL, 'notify:announcement:del', NULL, 1, NULL, 3, 0, 0, 2, NULL, 0, NULL, NULL, '2019-10-13 22:00:24', NULL); +INSERT INTO "sys_menu" VALUES (120200, 120000, '用户公告', NULL, NULL, 'userannouncement', 1, 'notify/userannouncement/UserAnnouncementPage', 1, 0, 1, 1, NULL, 0, NULL, NULL, NULL, '2021-12-03 11:57:31'); +INSERT INTO "sys_menu" VALUES (120201, 120200, '用户公告表查询', NULL, 'notify:userannouncement:read', NULL, 1, NULL, 0, 0, 0, 2, NULL, 0, NULL, NULL, '2019-10-13 22:00:24', NULL); +INSERT INTO "sys_menu" VALUES (660000, 0, 'Ballcat 官网', 'crown', NULL, 'ballcat', 2, 'http://www.ballcat.cn', 0, 1, 0, 1, NULL, 0, 1, 1, '2022-01-19 21:35:22', '2022-01-19 21:36:56'); +INSERT INTO "sys_menu" VALUES (990000, 0, '开发平台', 'desktop', '', 'develop', 1, NULL, 99, 0, 0, 0, NULL, 0, NULL, NULL, NULL, '2021-12-03 11:57:31'); +INSERT INTO "sys_menu" VALUES (990100, 990000, '接口文档', 'file', '', 'swagger', 3, 'http://ballcat-admin:8080/swagger-ui/index.html', 1, 0, 0, 1, NULL, 0, NULL, 1, NULL, '2022-01-19 21:32:19'); +INSERT INTO "sys_menu" VALUES (990200, 990000, '文档增强', 'file-text', '', 'doc', 3, 'http://ballcat-admin:8080/doc.html', 2, 0, 0, 1, NULL, 0, NULL, 1, NULL, '2022-01-19 21:33:30'); +INSERT INTO "sys_menu" VALUES (990300, 990000, '调度中心', 'rocket', '', 'xxl-job', 3, 'http://ballcat-job:8888/xxl-job-admin', 3, 0, 0, 1, NULL, 0, NULL, 1, NULL, '2022-01-19 21:33:37'); +INSERT INTO "sys_menu" VALUES (990400, 990000, '服务监控', 'alert', '', 'monitor', 3, 'http://ballcat-monitor:9999', 4, 0, 0, 1, NULL, 0, NULL, 1, NULL, '2022-01-19 21:33:42'); +INSERT INTO "sys_menu" VALUES (990500, 990000, '代码生成', 'printer', '', 'codegen', 3, 'http://localhost:7777', 5, 0, 0, 1, NULL, 0, NULL, 1, NULL, '2022-01-19 21:33:46'); + + +alter sequence sys_menu_id_seq restart with 990501; + +-- ---------------------------- +-- Table structure for sys_organization +-- ---------------------------- +DROP TABLE IF EXISTS "public"."sys_organization"; +CREATE TABLE "public"."sys_organization" ( + "id" SERIAL PRIMARY KEY, + "name" varchar(50), + "parent_id" int4, + "hierarchy" varchar(512), + "depth" int4, + "sort" int4, + "remarks" varchar(256), + "deleted" int8, + "create_by" int4, + "update_by" int4, + "create_time" timestamp(6), + "update_time" timestamp(6) +) +; +COMMENT ON COLUMN "public"."sys_organization"."id" IS 'ID'; +COMMENT ON COLUMN "public"."sys_organization"."name" IS '组织名称'; +COMMENT ON COLUMN "public"."sys_organization"."parent_id" IS '父级ID'; +COMMENT ON COLUMN "public"."sys_organization"."hierarchy" IS '层级信息,从根节点到当前节点的最短路径,使用-分割节点ID'; +COMMENT ON COLUMN "public"."sys_organization"."depth" IS '当前节点深度'; +COMMENT ON COLUMN "public"."sys_organization"."sort" IS '排序字段,由小到大'; +COMMENT ON COLUMN "public"."sys_organization"."remarks" IS '备注'; +COMMENT ON COLUMN "public"."sys_organization"."deleted" IS '逻辑删除标识,未删除为 0,已删除为删除时间'; +COMMENT ON COLUMN "public"."sys_organization"."create_by" IS '创建者'; +COMMENT ON COLUMN "public"."sys_organization"."update_by" IS '修改者'; +COMMENT ON COLUMN "public"."sys_organization"."create_time" IS '创建时间'; +COMMENT ON COLUMN "public"."sys_organization"."update_time" IS '修改时间'; +COMMENT ON TABLE "public"."sys_organization" IS '组织架构'; + +-- ---------------------------- +-- Records of sys_organization +-- ---------------------------- +INSERT INTO "sys_organization" VALUES (6, '高大上公司', 0, '0', 1, 1, '一个神秘的组织', 0, NULL, NULL, '2020-09-24 00:11:14', '2020-11-19 10:08:29'); +INSERT INTO "sys_organization" VALUES (7, '产品研发部', 0, '0', 1, 1, '一个🐂皮的部门', 0, NULL, NULL, '2020-09-24 00:48:07', '2021-06-22 21:55:25'); +INSERT INTO "sys_organization" VALUES (8, 'java开发一组', 7, '0-7', 2, 1, NULL, 0, NULL, NULL, '2020-09-24 00:50:34', NULL); +INSERT INTO "sys_organization" VALUES (9, 'Java开发二组', 7, '0-7', 2, 2, NULL, 0, NULL, NULL, '2020-09-24 00:50:57', NULL); +INSERT INTO "sys_organization" VALUES (10, '谷歌', 6, '0-6', 2, 1, NULL, 0, NULL, NULL, '2020-09-24 00:51:55', '2021-06-22 20:59:42'); +INSERT INTO "sys_organization" VALUES (11, '不会Ollie', 10, '0-6-10', 3, 1, NULL, 0, NULL, NULL, '2020-09-24 14:30:11', NULL); +INSERT INTO "sys_organization" VALUES (12, 'treflip高手', 10, '0-6-10', 3, 2, NULL, 0, NULL, NULL, '2020-09-24 18:11:27', NULL); +INSERT INTO "sys_organization" VALUES (13, 'impossible', 10, '0-6-10', 3, 2, NULL, 0, NULL, NULL, '2020-09-24 18:11:53', NULL); +INSERT INTO "sys_organization" VALUES (14, '测试', 12, '0-6-10-12', 4, 1, NULL, 0, NULL, NULL, '2021-06-22 18:32:02', '2021-06-22 22:19:06'); + + +alter sequence sys_organization_id_seq restart with 15; + +-- ---------------------------- +-- Table structure for sys_role +-- ---------------------------- +DROP TABLE IF EXISTS "public"."sys_role"; +CREATE TABLE "public"."sys_role" ( + "id" SERIAL PRIMARY KEY, + "name" varchar(64), + "code" varchar(64), + "type" int2, + "scope_type" int2, + "scope_resources" varchar(255), + "remarks" varchar(256), + "deleted" int8, + "create_by" int4, + "update_by" int4, + "create_time" timestamp(6), + "update_time" timestamp(6) +) +; +COMMENT ON COLUMN "public"."sys_role"."type" IS '角色类型,1:系统角色 2:业务角色'; +COMMENT ON COLUMN "public"."sys_role"."scope_type" IS '数据范围类型'; +COMMENT ON COLUMN "public"."sys_role"."scope_resources" IS '数据范围资源,当数据范围类型为自定义时使用'; +COMMENT ON COLUMN "public"."sys_role"."remarks" IS '备注'; +COMMENT ON COLUMN "public"."sys_role"."deleted" IS '逻辑删除标识,未删除为 0,已删除为删除时间'; +COMMENT ON COLUMN "public"."sys_role"."create_by" IS '创建人'; +COMMENT ON COLUMN "public"."sys_role"."update_by" IS '修改人'; +COMMENT ON COLUMN "public"."sys_role"."create_time" IS '创建时间'; +COMMENT ON COLUMN "public"."sys_role"."update_time" IS '修改时间'; +COMMENT ON TABLE "public"."sys_role" IS '系统角色'; +-- ---------------------------- +-- Records of sys_role +-- ---------------------------- +INSERT INTO "sys_role" VALUES (1, '管理员', 'ROLE_ADMIN', 1, 0, NULL, '管理员', 0, NULL, NULL, '2017-10-29 15:45:51', '2021-09-23 15:19:09'); +INSERT INTO "sys_role" VALUES (2, '测试工程师', 'ROLE_TEST', 2, 1, NULL, '测试工程师', 0, NULL, NULL, '2019-09-02 11:34:36', '2021-09-22 15:58:44'); +INSERT INTO "sys_role" VALUES (14, '销售主管', 'ROLE_SALES_EXECUTIVE', 2, 1, NULL, '销售主管', 0, NULL, NULL, '2020-02-27 15:10:36', '2021-09-23 15:20:58'); +INSERT INTO "sys_role" VALUES (15, '销售专员', 'ROLE_SALESMAN', 2, 1, NULL, '销售专员', 0, NULL, NULL, '2020-02-27 15:12:18', '2021-09-22 23:34:04'); + +alter sequence sys_role_id_seq restart with 19; + +-- ---------------------------- +-- Table structure for sys_role_menu +-- ---------------------------- +DROP TABLE IF EXISTS "public"."sys_role_menu"; +CREATE TABLE "public"."sys_role_menu" ( + "id" SERIAL PRIMARY KEY, + "role_code" varchar(64) NOT NULL, + "menu_id" int4 NOT NULL +) +; +COMMENT ON COLUMN "public"."sys_role_menu"."role_code" IS 'role code'; +COMMENT ON COLUMN "public"."sys_role_menu"."menu_id" IS '菜单ID'; +COMMENT ON TABLE "public"."sys_role_menu" IS '角色菜单表'; + +-- ---------------------------- +-- Records of sys_role_menu +-- ---------------------------- +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 10028); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 10030); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 10031); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 10032); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 10034); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 10035); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 100000); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 100100); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 100101); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 100102); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 100103); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 100104); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 100105); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 100106); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 100200); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 100201); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 100202); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 100203); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 100204); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 100205); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 100400); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 100401); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 100402); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 100403); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 100404); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 100500); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 100501); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 100502); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 100503); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 100504); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 100700); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 100701); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 100702); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 100703); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 100704); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 100705); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 100800); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 100801); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 100802); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 100803); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 100804); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 110000); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 110100); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 110101); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 110200); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 110201); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 110300); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 110301); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 120000); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 120100); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 120101); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 120102); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 120103); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 120104); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 120200); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 120201); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 660000); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 990000); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 990100); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 990200); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 990300); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 990400); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_ADMIN', 990500); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_SALES_EXECUTIVE', 10029); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_SALES_EXECUTIVE', 10031); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_SALES_EXECUTIVE', 10032); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_SALES_EXECUTIVE', 10033); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_SALES_EXECUTIVE', 10034); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_SALES_EXECUTIVE', 10035); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_SALES_EXECUTIVE', 780000); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_SALES_EXECUTIVE', 790000); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_TEST', 10028); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_TEST', 10030); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_TEST', 10031); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_TEST', 10032); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_TEST', 10034); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_TEST', 10035); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_TEST', 100000); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_TEST', 100100); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_TEST', 100101); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_TEST', 100102); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_TEST', 100103); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_TEST', 100104); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_TEST', 100105); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_TEST', 100106); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_TEST', 100200); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_TEST', 100201); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_TEST', 100202); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_TEST', 100203); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_TEST', 100204); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_TEST', 100205); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_TEST', 100400); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_TEST', 100401); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_TEST', 100402); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_TEST', 100403); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_TEST', 100404); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_TEST', 100500); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_TEST', 100501); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_TEST', 100502); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_TEST', 100503); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_TEST', 100504); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_TEST', 100700); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_TEST', 100701); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_TEST', 100702); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_TEST', 100703); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_TEST', 100704); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_TEST', 100705); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_TEST', 100800); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_TEST', 100801); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_TEST', 100802); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_TEST', 100803); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_TEST', 100804); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_TEST', 660000); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_TEST', 990000); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_TEST', 990100); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_TEST', 990200); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_TEST', 990300); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_TEST', 990400); +INSERT INTO "sys_role_menu" VALUES (nextval('sys_role_menu_id_seq'), 'ROLE_TEST', 990500); + +-- ---------------------------- +-- Table structure for sys_user +-- ---------------------------- +DROP TABLE IF EXISTS "public"."sys_user"; +CREATE TABLE "public"."sys_user" ( + "user_id" SERIAL PRIMARY KEY, + "username" varchar(100), + "nickname" varchar(100), + "password" varchar(255), + "salt" varchar(45), + "avatar" varchar(255), + "sex" int2, + "email" varchar(45), + "phone" varchar(45), + "status" int2, + "type" int2, + "organization_id" int4, + "deleted" int8, + "create_by" int4, + "update_by" int4, + "create_time" timestamp(6), + "update_time" timestamp(6) +) +; +COMMENT ON COLUMN "public"."sys_user"."user_id" IS '主键id'; +COMMENT ON COLUMN "public"."sys_user"."username" IS '登录账号'; +COMMENT ON COLUMN "public"."sys_user"."nickname" IS '显示名称'; +COMMENT ON COLUMN "public"."sys_user"."password" IS '密码'; +COMMENT ON COLUMN "public"."sys_user"."salt" IS 'md5密码盐'; +COMMENT ON COLUMN "public"."sys_user"."avatar" IS '头像'; +COMMENT ON COLUMN "public"."sys_user"."sex" IS '性别(0-默认未知,1-男,2-女)'; +COMMENT ON COLUMN "public"."sys_user"."email" IS '电子邮件'; +COMMENT ON COLUMN "public"."sys_user"."phone" IS '电话'; +COMMENT ON COLUMN "public"."sys_user"."status" IS '状态(1-正常,0-冻结)'; +COMMENT ON COLUMN "public"."sys_user"."type" IS '账户类型'; +COMMENT ON COLUMN "public"."sys_user"."organization_id" IS '所属组织ID'; +COMMENT ON COLUMN "public"."sys_user"."deleted" IS '逻辑删除标识,未删除为 0,已删除为删除时间'; +COMMENT ON COLUMN "public"."sys_user"."create_by" IS '创建人'; +COMMENT ON COLUMN "public"."sys_user"."update_by" IS '修改人'; +COMMENT ON COLUMN "public"."sys_user"."create_time" IS '创建时间'; +COMMENT ON COLUMN "public"."sys_user"."update_time" IS '修改时间'; +COMMENT ON TABLE "public"."sys_user" IS '系统用户'; + +-- ---------------------------- +-- Records of sys_user +-- ---------------------------- +INSERT INTO "sys_user" VALUES (1, 'admin', '超管牛逼', '$2a$10$YJDXeAsk7FjQQVTdutIat.rPR3p3uUPWmZyhtnRDOrIjPujOAUrla', NULL, 'sysuser/1/avatar/20200226/ab6bd5221afe4238ae4987f278758113.jpg', 1, 'chengbohua@foxmail.com', '15800000000', 1, 1, 6, 0, NULL, NULL, '2999-09-20 17:13:24', '2020-10-17 17:40:00'); +INSERT INTO "sys_user" VALUES (10, 'test4', '测试用户213', '$2a$10$B8aJ9tTJnTz0UR6OFi7v2uJlByvMCIzHS9/w1zKs1hiaraajhzhhq', NULL, 'sysuser/10/avatar/20201204/002875d468db41239ee02ad99ab14490.jpg', 2, 'magic.xiaohua@gmail.com', '12345678520', 0, 1, 6, 0, NULL, NULL, NULL, '2021-05-26 15:58:10'); +INSERT INTO "sys_user" VALUES (12, 'test1', 'test1', '$2a$10$EotCw/oHyg1MgJMDFgEeeOO0/jVHZgIFn0jX9kq9SP9sIAXF2m0Yi', NULL, 'sysuser/12/avatar/20200109/05e189b252b44598b6d150ce3597d293.jpg', 1, 'test1@qq.com', '12356322365', 1, 1, 12, 20200609182117, NULL, NULL, '2019-10-18 20:40:57', NULL); +INSERT INTO "sys_user" VALUES (17, 'test2', 'test2', '$2a$10$YJDXeAsk7FjQQVTdutIat.rPR3p3uUPWmZyhtnRDOrIjPujOAUrla', NULL, NULL, 1, 'test2@qq.com', '123456789', 1, 1, 8, 0, NULL, NULL, NULL, '2020-07-06 12:09:08'); + +alter sequence sys_user_user_id_seq restart with 18; + +-- ---------------------------- +-- Table structure for sys_user_role +-- ---------------------------- +DROP TABLE IF EXISTS "public"."sys_user_role"; +CREATE TABLE "public"."sys_user_role" ( + "id" SERIAL PRIMARY KEY, + "user_id" int4 NOT NULL, + "role_code" varchar(64) NOT NULL +) +; +COMMENT ON COLUMN "public"."sys_user_role"."user_id" IS '用户ID'; +COMMENT ON COLUMN "public"."sys_user_role"."role_code" IS 'role code'; +COMMENT ON TABLE "public"."sys_user_role" IS '用户角色表'; +-- ---------------------------- +-- Records of sys_user_role +-- ---------------------------- +INSERT INTO "sys_user_role" VALUES (1, 1, 'ROLE_ADMIN'); +INSERT INTO "sys_user_role" VALUES (6, 10, 'ROLE_SALES_EXECUTIVE'); +INSERT INTO "sys_user_role" VALUES (4, 1, 'ROLE_TEST'); + +alter sequence sys_user_role_id_seq restart with 7; + +-- ---------------------------- +-- Indexes structure for table log_access_log +-- ---------------------------- +CREATE INDEX "create_time" ON "public"."log_access_log" USING btree ( + "create_time" ASC NULLS LAST +); +CREATE INDEX "httpStatus" ON "public"."log_access_log" USING btree ( + "http_status" ASC NULLS LAST +); +CREATE INDEX "uri" ON "public"."log_access_log" USING btree ( + "uri" ASC NULLS LAST +); +CREATE INDEX "user_id" ON "public"."log_access_log" USING btree ( + "user_id" ASC NULLS LAST +); +CREATE INDEX "user_name" ON "public"."log_access_log" USING btree ( + "username" ASC NULLS LAST +); + +-- ---------------------------- +-- Indexes structure for table log_login_log +-- ---------------------------- +CREATE INDEX "status" ON "public"."log_login_log" USING btree ( + "status" ASC NULLS LAST +); +CREATE INDEX "username" ON "public"."log_login_log" USING btree ( + "username" ASC NULLS LAST +); + +-- 修改测试客户端的 scope, 用于跳过验证码和密码解密 + +update oauth_client_details set scope = 'skip_captcha,skip_password_decode' where client_id = 'test' \ No newline at end of file -- Gitee