admin_postgres.sql 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281
  1. -- 建库
  2. CREATE DATABASE "ShWasherAdmin" WITH OWNER = postgres ENCODING = 'UTF8';
  3. -- ----------------------------
  4. -- 1、组织机构表
  5. -- ----------------------------
  6. DROP TABLE IF EXISTS sys_org;
  7. CREATE TABLE sys_org
  8. (
  9. org_id BIGSERIAL PRIMARY KEY,
  10. tenant_id VARCHAR(20) DEFAULT '000000',
  11. parent_id BIGINT DEFAULT 0,
  12. ancestors VARCHAR(500) DEFAULT '',
  13. org_name VARCHAR(30) DEFAULT '',
  14. org_category VARCHAR(100),
  15. order_num INT DEFAULT 0,
  16. leader BIGINT,
  17. phone VARCHAR(11),
  18. email VARCHAR(50),
  19. status CHAR(1) DEFAULT '0',
  20. del_flag CHAR(1) DEFAULT '0',
  21. create_org BIGINT,
  22. create_by BIGINT,
  23. create_time TIMESTAMP,
  24. update_by BIGINT,
  25. update_time TIMESTAMP
  26. );
  27. COMMENT ON TABLE sys_org IS '组织机构表';
  28. COMMENT ON COLUMN sys_org.org_id IS '组织机构id';
  29. COMMENT ON COLUMN sys_org.tenant_id IS '租户编号';
  30. COMMENT ON COLUMN sys_org.parent_id IS '父组织机构id';
  31. COMMENT ON COLUMN sys_org.ancestors IS '祖级列表';
  32. COMMENT ON COLUMN sys_org.org_name IS '组织机构名称';
  33. COMMENT ON COLUMN sys_org.org_category IS '组织机构类别编码';
  34. COMMENT ON COLUMN sys_org.order_num IS '显示顺序';
  35. COMMENT ON COLUMN sys_org.leader IS '负责人';
  36. COMMENT ON COLUMN sys_org.phone IS '联系电话';
  37. COMMENT ON COLUMN sys_org.email IS '邮箱';
  38. COMMENT ON COLUMN sys_org.status IS '组织机构状态(0正常 1停用)';
  39. COMMENT ON COLUMN sys_org.del_flag IS '删除标志(0代表存在 2代表删除)';
  40. COMMENT ON COLUMN sys_org.create_org IS '创建组织机构';
  41. COMMENT ON COLUMN sys_org.create_by IS '创建者';
  42. COMMENT ON COLUMN sys_org.create_time IS '创建时间';
  43. COMMENT ON COLUMN sys_org.update_by IS '更新者';
  44. COMMENT ON COLUMN sys_org.update_time IS '更新时间';
  45. -- ----------------------------
  46. -- 2、用户表
  47. -- ----------------------------
  48. DROP TABLE IF EXISTS sys_user;
  49. CREATE TABLE sys_user
  50. (
  51. user_id BIGSERIAL PRIMARY KEY,
  52. tenant_id VARCHAR(20) DEFAULT '000000',
  53. dept_id BIGINT DEFAULT 0,
  54. user_name VARCHAR(30) NOT NULL,
  55. nick_name VARCHAR(30),
  56. user_type CHAR(1) DEFAULT '0',
  57. email VARCHAR(50),
  58. phonenumber VARCHAR(11),
  59. sex CHAR(1) DEFAULT '0',
  60. avatar VARCHAR(100),
  61. password VARCHAR(100) NOT NULL,
  62. status CHAR(1) DEFAULT '0',
  63. del_flag CHAR(1) DEFAULT '0',
  64. login_ip VARCHAR(50),
  65. login_date TIMESTAMP,
  66. create_org BIGINT,
  67. create_by BIGINT,
  68. create_time TIMESTAMP,
  69. update_by BIGINT,
  70. update_time TIMESTAMP
  71. );
  72. COMMENT ON TABLE sys_user IS '用户表';
  73. COMMENT ON COLUMN sys_user.user_id IS '用户ID';
  74. COMMENT ON COLUMN sys_user.tenant_id IS '租户编号';
  75. COMMENT ON COLUMN sys_user.dept_id IS '部门ID';
  76. COMMENT ON COLUMN sys_user.user_name IS '用户账号';
  77. COMMENT ON COLUMN sys_user.nick_name IS '用户昵称';
  78. COMMENT ON COLUMN sys_user.user_type IS '用户类型(0系统用户 1注册用户)';
  79. COMMENT ON COLUMN sys_user.email IS '用户邮箱';
  80. COMMENT ON COLUMN sys_user.phonenumber IS '手机号码';
  81. COMMENT ON COLUMN sys_user.sex IS '用户性别(0男 1女 2未知)';
  82. COMMENT ON COLUMN sys_user.avatar IS '头像地址';
  83. COMMENT ON COLUMN sys_user.password IS '密码';
  84. COMMENT ON COLUMN sys_user.status IS '帐号状态(0正常 1停用)';
  85. COMMENT ON COLUMN sys_user.del_flag IS '删除标志(0代表存在 2代表删除)';
  86. COMMENT ON COLUMN sys_user.login_ip IS '最后登录IP';
  87. COMMENT ON COLUMN sys_user.login_date IS '最后登录时间';
  88. COMMENT ON COLUMN sys_user.create_org IS '创建组织机构';
  89. COMMENT ON COLUMN sys_user.create_by IS '创建者';
  90. COMMENT ON COLUMN sys_user.create_time IS '创建时间';
  91. COMMENT ON COLUMN sys_user.update_by IS '更新者';
  92. COMMENT ON COLUMN sys_user.update_time IS '更新时间';
  93. -- ----------------------------
  94. -- 3、角色表
  95. -- ----------------------------
  96. DROP TABLE IF EXISTS sys_role;
  97. CREATE TABLE sys_role
  98. (
  99. role_id BIGSERIAL PRIMARY KEY,
  100. tenant_id VARCHAR(20) DEFAULT '000000',
  101. role_name VARCHAR(30) NOT NULL,
  102. role_key VARCHAR(100) NOT NULL,
  103. role_sort INT DEFAULT 0,
  104. data_scope CHAR(1) DEFAULT '1',
  105. menu_check_strictly BOOLEAN DEFAULT TRUE,
  106. status CHAR(1) DEFAULT '0',
  107. del_flag CHAR(1) DEFAULT '0',
  108. create_org BIGINT,
  109. create_by BIGINT,
  110. create_time TIMESTAMP,
  111. update_by BIGINT,
  112. update_time TIMESTAMP
  113. );
  114. COMMENT ON TABLE sys_role IS '角色表';
  115. COMMENT ON COLUMN sys_role.role_id IS '角色ID';
  116. COMMENT ON COLUMN sys_role.tenant_id IS '租户编号';
  117. COMMENT ON COLUMN sys_role.role_name IS '角色名称';
  118. COMMENT ON COLUMN sys_role.role_key IS '角色权限字符串';
  119. COMMENT ON COLUMN sys_role.role_sort IS '显示顺序';
  120. COMMENT ON COLUMN sys_role.data_scope IS '数据范围(1:全部数据权限 2:自定数据权限 3:本部门数据权限 4:本部门及以下数据权限)';
  121. COMMENT ON COLUMN sys_role.menu_check_strictly IS '菜单树选择项是否关联显示( 0:父子不互相关联显示 1:父子互相关联显示)';
  122. COMMENT ON COLUMN sys_role.status IS '角色状态(0正常 1停用)';
  123. COMMENT ON COLUMN sys_role.del_flag IS '删除标志(0代表存在 2代表删除)';
  124. COMMENT ON COLUMN sys_role.create_org IS '创建组织机构';
  125. COMMENT ON COLUMN sys_role.create_by IS '创建者';
  126. COMMENT ON COLUMN sys_role.create_time IS '创建时间';
  127. COMMENT ON COLUMN sys_role.update_by IS '更新者';
  128. COMMENT ON COLUMN sys_role.update_time IS '更新时间';
  129. -- ----------------------------
  130. -- 4、菜单表
  131. -- ----------------------------
  132. DROP TABLE IF EXISTS sys_menu;
  133. CREATE TABLE sys_menu
  134. (
  135. menu_id BIGSERIAL PRIMARY KEY,
  136. tenant_id VARCHAR(20) DEFAULT '000000',
  137. menu_name VARCHAR(50) NOT NULL,
  138. parent_id BIGINT DEFAULT 0,
  139. order_num INT DEFAULT 0,
  140. path VARCHAR(200),
  141. component VARCHAR(255),
  142. query_params VARCHAR(255),
  143. is_frame CHAR(1) DEFAULT '1',
  144. is_cache CHAR(1) DEFAULT '0',
  145. menu_type CHAR(1),
  146. visible CHAR(1) DEFAULT '0',
  147. status CHAR(1) DEFAULT '0',
  148. perms VARCHAR(100),
  149. icon VARCHAR(100),
  150. create_org BIGINT,
  151. create_by BIGINT,
  152. create_time TIMESTAMP,
  153. update_by BIGINT,
  154. update_time TIMESTAMP
  155. );
  156. COMMENT ON TABLE sys_menu IS '菜单表';
  157. COMMENT ON COLUMN sys_menu.menu_id IS '菜单ID';
  158. COMMENT ON COLUMN sys_menu.tenant_id IS '租户编号';
  159. COMMENT ON COLUMN sys_menu.menu_name IS '菜单名称';
  160. COMMENT ON COLUMN sys_menu.parent_id IS '父菜单ID';
  161. COMMENT ON COLUMN sys_menu.order_num IS '显示顺序';
  162. COMMENT ON COLUMN sys_menu.path IS '路由地址';
  163. COMMENT ON COLUMN sys_menu.component IS '组件路径';
  164. COMMENT ON COLUMN sys_menu.query_params IS '路由参数';
  165. COMMENT ON COLUMN sys_menu.is_frame IS '是否为外链(0是 1否)';
  166. COMMENT ON COLUMN sys_menu.is_cache IS '是否缓存(0缓存 1不缓存)';
  167. COMMENT ON COLUMN sys_menu.menu_type IS '菜单类型(M目录 C菜单 F按钮)';
  168. COMMENT ON COLUMN sys_menu.visible IS '菜单状态(0显示 1隐藏)';
  169. COMMENT ON COLUMN sys_menu.status IS '菜单状态(0正常 1停用)';
  170. COMMENT ON COLUMN sys_menu.perms IS '权限标识';
  171. COMMENT ON COLUMN sys_menu.icon IS '菜单图标';
  172. COMMENT ON COLUMN sys_menu.create_org IS '创建组织机构';
  173. COMMENT ON COLUMN sys_menu.create_by IS '创建者';
  174. COMMENT ON COLUMN sys_menu.create_time IS '创建时间';
  175. COMMENT ON COLUMN sys_menu.update_by IS '更新者';
  176. COMMENT ON COLUMN sys_menu.update_time IS '更新时间';
  177. -- ----------------------------
  178. -- 5、岗位表
  179. -- ----------------------------
  180. DROP TABLE IF EXISTS sys_post;
  181. CREATE TABLE sys_post
  182. (
  183. post_id BIGSERIAL PRIMARY KEY,
  184. tenant_id VARCHAR(20) DEFAULT '000000',
  185. post_code VARCHAR(64) NOT NULL,
  186. post_name VARCHAR(50) NOT NULL,
  187. post_sort INT DEFAULT 0,
  188. status CHAR(1) DEFAULT '0',
  189. create_org BIGINT,
  190. create_by BIGINT,
  191. create_time TIMESTAMP,
  192. update_by BIGINT,
  193. update_time TIMESTAMP
  194. );
  195. COMMENT ON TABLE sys_post IS '岗位表';
  196. COMMENT ON COLUMN sys_post.post_id IS '岗位ID';
  197. COMMENT ON COLUMN sys_post.tenant_id IS '租户编号';
  198. COMMENT ON COLUMN sys_post.post_code IS '岗位编码';
  199. COMMENT ON COLUMN sys_post.post_name IS '岗位名称';
  200. COMMENT ON COLUMN sys_post.post_sort IS '显示顺序';
  201. COMMENT ON COLUMN sys_post.status IS '状态(0正常 1停用)';
  202. COMMENT ON COLUMN sys_post.create_org IS '创建组织机构';
  203. COMMENT ON COLUMN sys_post.create_by IS '创建者';
  204. COMMENT ON COLUMN sys_post.create_time IS '创建时间';
  205. COMMENT ON COLUMN sys_post.update_by IS '更新者';
  206. COMMENT ON COLUMN sys_post.update_time IS '更新时间';
  207. -- ----------------------------
  208. -- 6、用户与岗位关联表
  209. -- ----------------------------
  210. DROP TABLE IF EXISTS sys_user_post;
  211. CREATE TABLE sys_user_post
  212. (
  213. user_id BIGINT NOT NULL,
  214. post_id BIGINT NOT NULL,
  215. PRIMARY KEY (user_id, post_id)
  216. );
  217. COMMENT ON TABLE sys_user_post IS '用户与岗位关联表';
  218. COMMENT ON COLUMN sys_user_post.user_id IS '用户ID';
  219. COMMENT ON COLUMN sys_user_post.post_id IS '岗位ID';
  220. -- ----------------------------
  221. -- 7、用户与角色关联表
  222. -- ----------------------------
  223. DROP TABLE IF EXISTS sys_user_role;
  224. CREATE TABLE sys_user_role
  225. (
  226. user_id BIGINT NOT NULL,
  227. role_id BIGINT NOT NULL,
  228. PRIMARY KEY (user_id, role_id)
  229. );
  230. COMMENT ON TABLE sys_user_role IS '用户与角色关联表';
  231. COMMENT ON COLUMN sys_user_role.user_id IS '用户ID';
  232. COMMENT ON COLUMN sys_user_role.role_id IS '角色ID';
  233. -- ----------------------------
  234. -- 8、角色与菜单关联表
  235. -- ----------------------------
  236. DROP TABLE IF EXISTS sys_role_menu;
  237. CREATE TABLE sys_role_menu
  238. (
  239. role_id BIGINT NOT NULL,
  240. menu_id BIGINT NOT NULL,
  241. PRIMARY KEY (role_id, menu_id)
  242. );
  243. COMMENT ON TABLE sys_role_menu IS '角色与菜单关联表';
  244. COMMENT ON COLUMN sys_role_menu.role_id IS '角色ID';
  245. COMMENT ON COLUMN sys_role_menu.menu_id IS '菜单ID';
  246. -- ----------------------------
  247. -- 初始化数据
  248. -- ----------------------------
  249. -- ----------------------------
  250. -- 初始化-组织机构表数据
  251. -- ----------------------------
  252. INSERT INTO sys_org (org_id, tenant_id, parent_id, ancestors, org_name, org_category, order_num, leader, phone, email, status, del_flag, create_org, create_by, create_time, update_by, update_time)
  253. VALUES (100, '000000', 0, '0', '科技有限公司', NULL, 0, 1, '15888888888', 'vber@iwbnet.com', '0', '0', 100, 1, CURRENT_TIMESTAMP, NULL, NULL),
  254. (101, '000000', 100, '0,100', '001公司', NULL, 1, 3, '15888888888', 'xxx@qq.com', '0', '0', 100, 1, CURRENT_TIMESTAMP, NULL, NULL),
  255. (102, '000000', 100, '0,100', '002公司', NULL, 2, 4, '15888888888', 'xxx@qq.com', '0', '0', 100, 1, CURRENT_TIMESTAMP, NULL, NULL);
  256. -- ----------------------------
  257. -- 初始化-用户与岗位关联表数据
  258. -- ----------------------------
  259. INSERT INTO sys_user_post (user_id, post_id)
  260. VALUES (1, 1),
  261. (2, 1);