您好,我是湘王,这是我的博客园,欢迎您来,欢迎您再来~

前面把RBAC的权限系统设计过程都讲清楚了,现在就来实现它。大致分这么几个步骤:

1、先定义出完整的权限系统表结构;

2、实现Entity、Dao、Service等类代码;

3、实现自定义拦截器;

4、实现Controller,完成权限验证。

为了节约时间,就不再详细说明表结构的设计了(根据表结构可以自行逆向分析),而且为了实现最精简的功能(在不影响效果的情况下,尽可能地少写代码),数据表中的中间实体类也不再定义。

  1. -- ----------------------------
  2. -- Table structure for sys_branch
  3. -- ----------------------------
  4. DROP TABLE IF EXISTS sys_branch;
  5. CREATE TABLE sys_branch (
  6. id int(11) NOT NULL AUTO_INCREMENT COMMENT '机构编码',
  7. parentid int(11) NOT NULL DEFAULT '0' COMMENT '父级编码',
  8. parentids varchar(256) NOT NULL DEFAULT '' COMMENT '所有父级编码',
  9. name varchar(64) NOT NULL DEFAULT '' COMMENT '机构名称',
  10. type tinyint(1) NOT NULL DEFAULT '0' COMMENT '机构类型,0:集团;1:公司;2:分支机构;3:部门;4:小组',
  11. createtime timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  12. updatetime timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  13. PRIMARY KEY (id) USING BTREE
  14. ) ENGINE=MyISAM CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci ROW_FORMAT=Dynamic COMMENT '分支机构表';
  15.  
  16. -- ----------------------------
  17. -- Records of sys_branch
  18. -- ----------------------------
  19. INSERT INTO sys_branch VALUES (1, 0, '0,', '集团', 0, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  20. INSERT INTO sys_branch VALUES (2, 1, '0,1,', '子公司1', 1, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  21. INSERT INTO sys_branch VALUES (3, 1, '0,1,', '子公司2', 1, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  22. INSERT INTO sys_branch VALUES (4, 2, '0,1,2,', '北京办公室', 2, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  23. INSERT INTO sys_branch VALUES (5, 3, '0,1,3,', '杭州办公室', 2, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  24. INSERT INTO sys_branch VALUES (6, 4, '0,1,2,4,', '技术部', 3, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  25. INSERT INTO sys_branch VALUES (7, 4, '0,1,2,4,', '市场部', 3, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  26. INSERT INTO sys_branch VALUES (8, 5, '0,1,3,5,', '运营部', 3, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  27. INSERT INTO sys_branch VALUES (9, 5, '0,1,3,5,', '财务部', 3, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  28. INSERT INTO sys_branch VALUES (10, 5, '0,1,3,5,', '仓储部', 3, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  29. INSERT INTO sys_branch VALUES (11, 6, '0,1,2,4,6,', '运维组', 4, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  30.  
  31. -- ----------------------------
  32. -- Table structure for sys_config
  33. -- ----------------------------
  34. DROP TABLE IF EXISTS sys_authorize_config;
  35. CREATE TABLE sys_authorize_config (
  36. id int(11) NOT NULL AUTO_INCREMENT COMMENT '配置编码',
  37. clazz varchar(64) NOT NULL DEFAULT '' COMMENT '配置类别',
  38. rule varchar(64) NOT NULL DEFAULT '' COMMENT '配置规则',
  39. remark varchar(64) NOT NULL DEFAULT '' COMMENT '配置说明',
  40. createtime timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  41. updatetime timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  42. PRIMARY KEY (id) USING BTREE
  43. ) ENGINE=InnoDB CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci ROW_FORMAT=Dynamic COMMENT '规则配置表';
  44.  
  45. -- ----------------------------
  46. -- Records of sys_config
  47. -- ----------------------------
  48. INSERT INTO sys_authorize_config VALUES (1, 'role', '7|8#9|10', '角色互斥', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  49. INSERT INTO sys_authorize_config VALUES (2, 'user has role number', '5', '用户可拥有的角色数量限制', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  50. INSERT INTO sys_authorize_config VALUES (3, 'role was assigned number', '5', '角色可被分配的用户数量限制', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  51.  
  52. -- ----------------------------
  53. -- Table structure for sys_group
  54. -- ----------------------------
  55. DROP TABLE IF EXISTS sys_group;
  56. CREATE TABLE sys_group (
  57. id int(11) NOT NULL AUTO_INCREMENT COMMENT '组编码',
  58. parentid int(11) NOT NULL DEFAULT '0' COMMENT '父级编码',
  59. parentids varchar(256) NOT NULL DEFAULT '' COMMENT '所有父级编码',
  60. name varchar(64) NOT NULL DEFAULT '' COMMENT '组名称',
  61. createtime timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  62. updatetime timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  63. PRIMARY KEY (id) USING BTREE
  64. ) ENGINE=InnoDB CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci ROW_FORMAT=Dynamic COMMENT '组表';
  65.  
  66. -- ----------------------------
  67. -- Records of sys_group
  68. -- ----------------------------
  69. INSERT INTO sys_group VALUES (10001, 0, '0,', '运营组', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  70. INSERT INTO sys_group VALUES (10002, 0, '0,', '后勤组', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  71.  
  72. -- ----------------------------
  73. -- Table structure for sys_group_permission
  74. -- ----------------------------
  75. DROP TABLE IF EXISTS sys_group_permission;
  76. CREATE TABLE sys_group_permission (
  77. gid int(11) NOT NULL COMMENT '组编码',
  78. pid int(11) NOT NULL COMMENT '权限编码',
  79. createtime timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  80. updatetime timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  81. PRIMARY KEY (gid, pid) USING BTREE
  82. ) ENGINE=InnoDB CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci ROW_FORMAT=Dynamic COMMENT '组权限表';
  83.  
  84. -- ----------------------------
  85. -- Table structure for sys_group_role
  86. -- ----------------------------
  87. DROP TABLE IF EXISTS sys_group_role;
  88. CREATE TABLE sys_group_role (
  89. gid int(11) NOT NULL COMMENT '组编码',
  90. rid int(11) NOT NULL COMMENT '角色编码',
  91. createtime timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  92. updatetime timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  93. PRIMARY KEY (gid, rid) USING BTREE
  94. ) ENGINE=InnoDB CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci ROW_FORMAT=Dynamic COMMENT '组角色表';
  95.  
  96. -- ----------------------------
  97. -- Records of sys_group_role
  98. -- ----------------------------
  99. INSERT INTO sys_group_role VALUES (10001, 4, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  100. INSERT INTO sys_group_role VALUES (10001, 5, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  101. INSERT INTO sys_group_role VALUES (10001, 6, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  102. INSERT INTO sys_group_role VALUES (10002, 7, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  103. INSERT INTO sys_group_role VALUES (10002, 8, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  104. INSERT INTO sys_group_role VALUES (10002, 9, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  105. INSERT INTO sys_group_role VALUES (10002, 10, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  106.  
  107. -- ----------------------------
  108. -- Table structure for sys_permission_auto
  109. -- ----------------------------
  110. DROP TABLE IF EXISTS sys_permission_auto;
  111. CREATE TABLE sys_permission_auto (
  112. id int(11) NOT NULL AUTO_INCREMENT COMMENT '权限编码',
  113. parentid int(11) NOT NULL DEFAULT '0' COMMENT '父级编码',
  114. parentids varchar(256) NOT NULL DEFAULT '' COMMENT '所有父级编码',
  115. name varchar(32) NOT NULL DEFAULT '' COMMENT '权限名称',
  116. level int(11) NOT NULL DEFAULT '0' COMMENT '权限层级',
  117. path varchar(256) DEFAULT '' COMMENT '链接路径',
  118. createtime datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  119. updatetime datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  120. PRIMARY KEY (id) USING BTREE
  121. ) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci ROW_FORMAT=DYNAMIC COMMENT='权限表';
  122.  
  123. -- ----------------------------
  124. -- Records of sys_permission_auto
  125. -- ----------------------------
  126. INSERT INTO sys_permission_auto VALUES (1, 0, '0,', '系统管理', 1, '/api/v1.0.0/system', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  127. INSERT INTO sys_permission_auto VALUES (2, 0, '0,', '用户管理', 1, '/api/v1.0.0/user', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  128. INSERT INTO sys_permission_auto VALUES (3, 0, '0,', '商品管理', 1, '/api/v1.0.0/good', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  129. INSERT INTO sys_permission_auto VALUES (4, 0, '0,', '订单管理', 1, '/api/v1.0.0/order', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  130. INSERT INTO sys_permission_auto VALUES (5, 0, '0,', '财务管理', 1, '/api/v1.0.0/finance', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  131. INSERT INTO sys_permission_auto VALUES (6, 0, '0,', '库存管理', 1, '/api/v1.0.0/stock', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  132. -- 系统管理
  133. INSERT INTO sys_permission_auto VALUES (7, 1, '0,1,', '应用设置', 2, '/api/v1.0.0/system/setting', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  134. INSERT INTO sys_permission_auto VALUES (8, 7, '0,1,7,', '修改密码', 3, '/api/v1.0.0/system/setting/password', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  135. INSERT INTO sys_permission_auto VALUES (9, 7, '0,1,7,', '更改头像', 3, '/api/v1.0.0/system/setting/avatar', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  136. INSERT INTO sys_permission_auto VALUES (10, 7, '0,1,7,', '安全设置', 3, '/api/v1.0.0/system/setting/safe', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  137. INSERT INTO sys_permission_auto VALUES (11, 7, '0,1,7,', '通用设置', 3, '/api/v1.0.0/system/setting/normal', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  138. INSERT INTO sys_permission_auto VALUES (12, 1, '0,1,', '角色管理', 2, '/api/v1.0.0/system/role', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  139. INSERT INTO sys_permission_auto VALUES (13, 12, '0,1,12,', '创建角色', 3, '/api/v1.0.0/system/role/create', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  140. INSERT INTO sys_permission_auto VALUES (14, 12, '0,1,12,', '更新角色', 3, '/api/v1.0.0/system/role/update', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  141. INSERT INTO sys_permission_auto VALUES (15, 12, '0,1,12,', '删除角色', 3, '/api/v1.0.0/system/role/remove', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  142. INSERT INTO sys_permission_auto VALUES (16, 12, '0,1,12,', '分配角色', 3, '/api/v1.0.0/system/role/assign', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  143. INSERT INTO sys_permission_auto VALUES (17, 1, '0,1,', '用户配置', 2, '/api/v1.0.0/system/user', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  144. INSERT INTO sys_permission_auto VALUES (18, 1, '0,1,', '商品配置', 2, '/api/v1.0.0/system/good', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  145. INSERT INTO sys_permission_auto VALUES (19, 1, '0,1,', '订单配置', 2, '/api/v1.0.0/system/order', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  146. INSERT INTO sys_permission_auto VALUES (20, 1, '0,1', '财务配置', 2, '/api/v1.0.0/system/finance', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  147. INSERT INTO sys_permission_auto VALUES (21, 1, '0,1,', '库存配置', 2, '/api/v1.0.0/system/stock', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  148. -- 用户管理
  149. INSERT INTO sys_permission_auto VALUES (22, 2, '0,2,', '用户列表', 2, '/api/v1.0.0/user/list', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  150. INSERT INTO sys_permission_auto VALUES (23, 2, '0,2,', '用户检索', 2, '/api/v1.0.0/user/search', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  151. INSERT INTO sys_permission_auto VALUES (24, 2, '0,2,', '用户详情', 2, '/api/v1.0.0/user/details', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  152. INSERT INTO sys_permission_auto VALUES (25, 2, '0,2,', '用户统计', 2, '/api/v1.0.0/user/count', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  153. INSERT INTO sys_permission_auto VALUES (26, 2, '0,2,', '冻结解冻', 2, '/api/v1.0.0/user/endis', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  154. INSERT INTO sys_permission_auto VALUES (27, 2, '0,2,', '贴打标签', 2, '/api/v1.0.0/user/tags', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  155. -- 商品管理
  156. INSERT INTO sys_permission_auto VALUES (28, 3, '0,3,', '商品列表', 2, '/api/v1.0.0/good/list', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  157. INSERT INTO sys_permission_auto VALUES (29, 3, '0,3,', '商品检索', 2, '/api/v1.0.0/good/search', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  158. INSERT INTO sys_permission_auto VALUES (30, 3, '0,3,', '商品详情', 2, '/api/v1.0.0/good/details', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  159. INSERT INTO sys_permission_auto VALUES (31, 3, '0,3,', '商品编排', 2, '/api/v1.0.0/good/layout', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  160. INSERT INTO sys_permission_auto VALUES (32, 3, '0,3,', '商品统计', 2, '/api/v1.0.0/good/count', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  161. INSERT INTO sys_permission_auto VALUES (33, 3, '0,3,', '上架下架', 2, '/api/v1.0.0/good/endis', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  162. -- 订单管理
  163. INSERT INTO sys_permission_auto VALUES (34, 4, '0,4,', '订单列表', 2, '/api/v1.0.0/order/list', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  164. INSERT INTO sys_permission_auto VALUES (35, 4, '0,4,', '订单检索', 2, '/api/v1.0.0/order/search', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  165. INSERT INTO sys_permission_auto VALUES (36, 4, '0,4,', '订单详情', 2, '/api/v1.0.0/order/details', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  166. INSERT INTO sys_permission_auto VALUES (37, 4, '0,4,', '订单统计', 2, '/api/v1.0.0/order/count', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  167. INSERT INTO sys_permission_auto VALUES (38, 4, '0,4,', '订单合并', 2, '/api/v1.0.0/order/merge', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  168. INSERT INTO sys_permission_auto VALUES (39, 4, '0,4,', '冻结解冻', 2, '/api/v1.0.0/order/endis', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  169. INSERT INTO sys_permission_auto VALUES (40, 4, '0,4,', '取消订单', 2, '/api/v1.0.0/order/cancel', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  170. -- 财务管理
  171. INSERT INTO sys_permission_auto VALUES (41, 5, '0,5,', '登账', 2, '/api/v1.0.0/finance/account', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  172. INSERT INTO sys_permission_auto VALUES (42, 5, '0,5,', '出报表', 2, '/api/v1.0.0/finance/report', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  173. INSERT INTO sys_permission_auto VALUES (43, 5, '0,5,', '审核报销单', 2, '/api/v1.0.0/finance/reimburse', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  174. INSERT INTO sys_permission_auto VALUES (44, 5, '0,5,', '报税', 2, '/api/v1.0.0/finance/collect', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  175. INSERT INTO sys_permission_auto VALUES (45, 5, '0,5,', '往来结算', 2, '/api/v1.0.0/finance/pay', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  176. INSERT INTO sys_permission_auto VALUES (46, 5, '0,5,', '现金收付', 2, '/api/v1.0.0/finance/cash', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  177. INSERT INTO sys_permission_auto VALUES (47, 5, '0,5,', '现金盘存', 2, '/api/v1.0.0/finance/tax', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  178. -- 库存管理
  179. INSERT INTO sys_permission_auto VALUES (48, 6, '0,6,', '库存入库', 2, '/api/v1.0.0/stock/input', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  180. INSERT INTO sys_permission_auto VALUES (49, 6, '0,6,', '库存出库', 2, '/api/v1.0.0/stock/output', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  181. INSERT INTO sys_permission_auto VALUES (50, 6, '0,6,', '库内盘点', 2, '/api/v1.0.0/stock/check', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  182. INSERT INTO sys_permission_auto VALUES (51, 6, '0,6,', '库存统计', 2, '/api/v1.0.0/stock/cost', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  183. INSERT INTO sys_permission_auto VALUES (52, 6, '0,6,', '计费管理', 2, '/api/v1.0.0/stock/count', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  184. INSERT INTO sys_permission_auto VALUES (53, 6, '0,6,', '区域配送', 2, '/api/v1.0.0/stock/dispatch', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  185.  
  186. -- ----------------------------
  187. -- Table structure for sys_permission
  188. -- ----------------------------
  189. DROP TABLE IF EXISTS sys_permission;
  190. CREATE TABLE sys_permission (
  191. id int(11) NOT NULL COMMENT '权限编码',
  192. parentid int(11) NOT NULL DEFAULT '0' COMMENT '父级编码',
  193. parentids varchar(256) NOT NULL DEFAULT '' COMMENT '所有父级编码',
  194. name varchar(32) NOT NULL DEFAULT '' COMMENT '权限名称',
  195. level int(11) NOT NULL DEFAULT '0' COMMENT '权限层级',
  196. path varchar(256) DEFAULT '' COMMENT '链接路径',
  197. createtime datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  198. updatetime datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  199. PRIMARY KEY (id) USING BTREE
  200. ) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci ROW_FORMAT=DYNAMIC COMMENT='权限表';
  201.  
  202. -- ----------------------------
  203. -- Records of sys_permission
  204. -- ----------------------------
  205. INSERT INTO sys_permission VALUES (1, 0, '0,', '系统管理', 1, '/api/v1.0.0/system', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  206. INSERT INTO sys_permission VALUES (2, 0, '0,', '用户管理', 1, '/api/v1.0.0/user', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  207. INSERT INTO sys_permission VALUES (3, 0, '0,', '商品管理', 1, '/api/v1.0.0/good', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  208. INSERT INTO sys_permission VALUES (4, 0, '0,', '订单管理', 1, '/api/v1.0.0/order', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  209. INSERT INTO sys_permission VALUES (5, 0, '0,', '财务管理', 1, '/api/v1.0.0/finance', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  210. INSERT INTO sys_permission VALUES (6, 0, '0,', '库存管理', 1, '/api/v1.0.0/stock', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  211. -- 系统管理
  212. INSERT INTO sys_permission VALUES (1010000, 1, '0,1,', '应用设置', 2, '/api/v1.0.0/system/setting', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  213. INSERT INTO sys_permission VALUES (1010100, 1010000, '0,1,1010000,', '修改密码', 3, '/api/v1.0.0/system/setting/password', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  214. INSERT INTO sys_permission VALUES (1010200, 1010000, '0,1,1010000,', '更改头像', 3, '/api/v1.0.0/system/setting/avatar', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  215. INSERT INTO sys_permission VALUES (1010300, 1010000, '0,1,1010000,', '安全设置', 3, '/api/v1.0.0/system/setting/safe', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  216. INSERT INTO sys_permission VALUES (1010400, 1010000, '0,1,1010000,', '通用设置', 3, '/api/v1.0.0/system/setting/normal', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  217. INSERT INTO sys_permission VALUES (1020000, 1, '0,1,', '角色管理', 2, '/api/v1.0.0/system/role', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  218. INSERT INTO sys_permission VALUES (1020100, 1020000, '0,1,1020000,', '创建角色', 3, '/api/v1.0.0/system/role/create', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  219. INSERT INTO sys_permission VALUES (1020200, 1020000, '0,1,1020000,', '更新角色', 3, '/api/v1.0.0/system/role/update', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  220. INSERT INTO sys_permission VALUES (1020300, 1020000, '0,1,1020000,', '删除角色', 3, '/api/v1.0.0/system/role/remove', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  221. INSERT INTO sys_permission VALUES (1020400, 1020000, '0,1,1020000,', '分配角色', 3, '/api/v1.0.0/system/role/assign', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  222. INSERT INTO sys_permission VALUES (1030000, 1, '0,1,', '用户配置', 2, '/api/v1.0.0/system/user', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  223. INSERT INTO sys_permission VALUES (1040000, 1, '0,1,', '商品配置', 2, '/api/v1.0.0/system/good', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  224. INSERT INTO sys_permission VALUES (1050000, 1, '0,1,', '订单配置', 2, '/api/v1.0.0/system/order', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  225. INSERT INTO sys_permission VALUES (1060000, 1, '0,1', '财务配置', 2, '/api/v1.0.0/system/finance', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  226. INSERT INTO sys_permission VALUES (1070000, 1, '0,1,', '库存配置', 2, '/api/v1.0.0/system/stock', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  227. -- 用户管理
  228. INSERT INTO sys_permission VALUES (2010000, 2, '0,2,', '用户列表', 2, '/api/v1.0.0/user/list', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  229. INSERT INTO sys_permission VALUES (2020000, 2, '0,2,', '用户检索', 2, '/api/v1.0.0/user/search', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  230. INSERT INTO sys_permission VALUES (2030000, 2, '0,2,', '用户详情', 2, '/api/v1.0.0/user/details', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  231. INSERT INTO sys_permission VALUES (2040000, 2, '0,2,', '用户统计', 2, '/api/v1.0.0/user/count', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  232. INSERT INTO sys_permission VALUES (2050000, 2, '0,2,', '冻结解冻', 2, '/api/v1.0.0/user/endis', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  233. INSERT INTO sys_permission VALUES (2060000, 2, '0,2,', '贴打标签', 2, '/api/v1.0.0/user/tags', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  234. -- 商品管理
  235. INSERT INTO sys_permission VALUES (3010000, 3, '0,3,', '商品列表', 2, '/api/v1.0.0/good/list', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  236. INSERT INTO sys_permission VALUES (3020000, 3, '0,3,', '商品检索', 2, '/api/v1.0.0/good/search', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  237. INSERT INTO sys_permission VALUES (3030000, 3, '0,3,', '商品详情', 2, '/api/v1.0.0/good/details', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  238. INSERT INTO sys_permission VALUES (3040000, 3, '0,3,', '商品编排', 2, '/api/v1.0.0/good/layout', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  239. INSERT INTO sys_permission VALUES (3050000, 3, '0,3,', '商品统计', 2, '/api/v1.0.0/good/count', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  240. INSERT INTO sys_permission VALUES (3060000, 3, '0,3,', '上架下架', 2, '/api/v1.0.0/good/endis', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  241. -- 订单管理
  242. INSERT INTO sys_permission VALUES (4010000, 4, '0,4,', '订单列表', 2, '/api/v1.0.0/order/list', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  243. INSERT INTO sys_permission VALUES (4020000, 4, '0,4,', '订单检索', 2, '/api/v1.0.0/order/search', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  244. INSERT INTO sys_permission VALUES (4030000, 4, '0,4,', '订单详情', 2, '/api/v1.0.0/order/details', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  245. INSERT INTO sys_permission VALUES (4040000, 4, '0,4,', '订单统计', 2, '/api/v1.0.0/order/count', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  246. INSERT INTO sys_permission VALUES (4050000, 4, '0,4,', '订单合并', 2, '/api/v1.0.0/order/merge', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  247. INSERT INTO sys_permission VALUES (4060000, 4, '0,4,', '冻结解冻', 2, '/api/v1.0.0/order/endis', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  248. INSERT INTO sys_permission VALUES (4070000, 4, '0,4,', '取消订单', 2, '/api/v1.0.0/order/cancel', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  249. -- 财务管理
  250. INSERT INTO sys_permission VALUES (5010000, 5, '0,5,', '登账', 2, '/api/v1.0.0/finance/account', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  251. INSERT INTO sys_permission VALUES (5020000, 5, '0,5,', '出报表', 2, '/api/v1.0.0/finance/report', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  252. INSERT INTO sys_permission VALUES (5030000, 5, '0,5,', '审核报销单', 2, '/api/v1.0.0/finance/reimburse', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  253. INSERT INTO sys_permission VALUES (5040000, 5, '0,5,', '报税', 2, '/api/v1.0.0/finance/collect', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  254. INSERT INTO sys_permission VALUES (5050000, 5, '0,5,', '往来结算', 2, '/api/v1.0.0/finance/pay', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  255. INSERT INTO sys_permission VALUES (5060000, 5, '0,5,', '现金收付', 2, '/api/v1.0.0/finance/cash', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  256. INSERT INTO sys_permission VALUES (5070000, 5, '0,5,', '现金盘存', 2, '/api/v1.0.0/finance/tax', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  257. -- 库存管理
  258. INSERT INTO sys_permission VALUES (6010000, 6, '0,6,', '库存入库', 2, '/api/v1.0.0/stock/input', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  259. INSERT INTO sys_permission VALUES (6020000, 6, '0,6,', '库存出库', 2, '/api/v1.0.0/stock/output', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  260. INSERT INTO sys_permission VALUES (6030000, 6, '0,6,', '库内盘点', 2, '/api/v1.0.0/stock/check', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  261. INSERT INTO sys_permission VALUES (6040000, 6, '0,6,', '库存统计', 2, '/api/v1.0.0/stock/cost', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  262. INSERT INTO sys_permission VALUES (6050000, 6, '0,6,', '计费管理', 2, '/api/v1.0.0/stock/count', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  263. INSERT INTO sys_permission VALUES (6060000, 6, '0,6,', '区域配送', 2, '/api/v1.0.0/stock/dispatch', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  264.  
  265. -- ----------------------------
  266. -- Table structure for sys_role
  267. -- ----------------------------
  268. DROP TABLE IF EXISTS sys_role;
  269. CREATE TABLE sys_role (
  270. id int(11) NOT NULL COMMENT '角色编码',
  271. parentid int(11) NOT NULL DEFAULT '0' COMMENT '父级编码',
  272. parentids varchar(256) NOT NULL DEFAULT '' COMMENT '所有父级编码',
  273. name varchar(64) NOT NULL DEFAULT '' COMMENT '角色名称',
  274. createtime timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  275. updatetime timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  276. PRIMARY KEY (id) USING BTREE
  277. ) ENGINE=InnoDB CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci ROW_FORMAT=Dynamic COMMENT '角色表';
  278.  
  279. -- ----------------------------
  280. -- Records of sys_role
  281. -- ----------------------------
  282. INSERT INTO sys_role VALUES (1, 0, '0,', '公共角色', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  283. INSERT INTO sys_role VALUES (2, 0, '0,', '超级管理员', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  284. INSERT INTO sys_role VALUES (3, 1, '0,', '系统管理员', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  285. INSERT INTO sys_role VALUES (4, 1, '0,1,', '客服', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  286. INSERT INTO sys_role VALUES (5, 1, '0,1,', '产品', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  287. INSERT INTO sys_role VALUES (6, 1, '0,1,', '运营', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  288. INSERT INTO sys_role VALUES (7, 1, '0,1,', '会计', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  289. INSERT INTO sys_role VALUES (8, 1, '0,1,', '出纳', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  290. INSERT INTO sys_role VALUES (9, 1, '0,1,', '库管', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  291. INSERT INTO sys_role VALUES (10, 1, '0,1,', '配送', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  292. INSERT INTO sys_role VALUES (11, 1, '0,1,', '用户管理员', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  293. INSERT INTO sys_role VALUES (12, 1, '0,1,', '商品管理员', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  294. INSERT INTO sys_role VALUES (13, 1, '0,1,', '订单管理员', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  295. INSERT INTO sys_role VALUES (14, 1, '0,1,7,8,', '财务经理', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  296. INSERT INTO sys_role VALUES (15, 1, '0,1,9,10,', '仓储负责人', CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  297.  
  298. -- ----------------------------
  299. -- Table structure for sys_role_permission
  300. -- ----------------------------
  301. DROP TABLE IF EXISTS sys_role_permission;
  302. CREATE TABLE sys_role_permission (
  303. rid int(11) NOT NULL COMMENT '角色编码',
  304. pid int(11) NOT NULL COMMENT '权限编码',
  305. createtime timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  306. updatetime timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  307. PRIMARY KEY (rid, pid) USING BTREE
  308. ) ENGINE=InnoDB CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci ROW_FORMAT=Dynamic COMMENT '角色权限表';
  309.  
  310. -- ----------------------------
  311. -- Records of sys_role_permission
  312. -- ----------------------------
  313. -- 核公基角色
  314. INSERT INTO sys_role_permission VALUES (1, 1, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  315. INSERT INTO sys_role_permission VALUES (1, 1010000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  316. INSERT INTO sys_role_permission VALUES (1, 1010100, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  317. INSERT INTO sys_role_permission VALUES (1, 1010200, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  318. INSERT INTO sys_role_permission VALUES (1, 1010300, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  319. INSERT INTO sys_role_permission VALUES (1, 1010400, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  320. -- 超级管理员
  321. INSERT INTO sys_role_permission VALUES (2, 1, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  322. INSERT INTO sys_role_permission VALUES (2, 2, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  323. INSERT INTO sys_role_permission VALUES (2, 3, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  324. INSERT INTO sys_role_permission VALUES (2, 4, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  325. INSERT INTO sys_role_permission VALUES (2, 5, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  326. INSERT INTO sys_role_permission VALUES (2, 6, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  327. INSERT INTO sys_role_permission VALUES (2, 1000000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  328. INSERT INTO sys_role_permission VALUES (2, 1010000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  329. INSERT INTO sys_role_permission VALUES (2, 1010100, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  330. INSERT INTO sys_role_permission VALUES (2, 1010200, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  331. INSERT INTO sys_role_permission VALUES (2, 1010300, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  332. INSERT INTO sys_role_permission VALUES (2, 1010400, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  333. INSERT INTO sys_role_permission VALUES (2, 1020000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  334. INSERT INTO sys_role_permission VALUES (2, 1020100, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  335. INSERT INTO sys_role_permission VALUES (2, 1020200, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  336. INSERT INTO sys_role_permission VALUES (2, 1020300, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  337. INSERT INTO sys_role_permission VALUES (2, 1020400, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  338. INSERT INTO sys_role_permission VALUES (2, 1030000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  339. INSERT INTO sys_role_permission VALUES (2, 1040000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  340. INSERT INTO sys_role_permission VALUES (2, 1050000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  341. INSERT INTO sys_role_permission VALUES (2, 1060000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  342. INSERT INTO sys_role_permission VALUES (2, 1070000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  343. INSERT INTO sys_role_permission VALUES (2, 2010000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  344. INSERT INTO sys_role_permission VALUES (2, 2020000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  345. INSERT INTO sys_role_permission VALUES (2, 2030000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  346. INSERT INTO sys_role_permission VALUES (2, 2040000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  347. INSERT INTO sys_role_permission VALUES (2, 2050000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  348. INSERT INTO sys_role_permission VALUES (2, 2060000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  349. INSERT INTO sys_role_permission VALUES (2, 3010000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  350. INSERT INTO sys_role_permission VALUES (2, 3020000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  351. INSERT INTO sys_role_permission VALUES (2, 3030000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  352. INSERT INTO sys_role_permission VALUES (2, 3040000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  353. INSERT INTO sys_role_permission VALUES (2, 3050000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  354. INSERT INTO sys_role_permission VALUES (2, 3060000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  355. INSERT INTO sys_role_permission VALUES (2, 4010000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  356. INSERT INTO sys_role_permission VALUES (2, 4020000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  357. INSERT INTO sys_role_permission VALUES (2, 4030000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  358. INSERT INTO sys_role_permission VALUES (2, 4040000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  359. INSERT INTO sys_role_permission VALUES (2, 4050000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  360. INSERT INTO sys_role_permission VALUES (2, 4060000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  361. INSERT INTO sys_role_permission VALUES (2, 4070000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  362. INSERT INTO sys_role_permission VALUES (2, 5010000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  363. INSERT INTO sys_role_permission VALUES (2, 5020000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  364. INSERT INTO sys_role_permission VALUES (2, 5030000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  365. INSERT INTO sys_role_permission VALUES (2, 5040000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  366. INSERT INTO sys_role_permission VALUES (2, 5050000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  367. INSERT INTO sys_role_permission VALUES (2, 5060000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  368. INSERT INTO sys_role_permission VALUES (2, 5070000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  369. INSERT INTO sys_role_permission VALUES (2, 6010000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  370. INSERT INTO sys_role_permission VALUES (2, 6020000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  371. INSERT INTO sys_role_permission VALUES (2, 6030000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  372. INSERT INTO sys_role_permission VALUES (2, 6040000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  373. INSERT INTO sys_role_permission VALUES (2, 6050000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  374. INSERT INTO sys_role_permission VALUES (2, 6060000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  375. -- 系统管理员
  376. INSERT INTO sys_role_permission VALUES (3, 1, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  377. INSERT INTO sys_role_permission VALUES (3, 1020000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  378. INSERT INTO sys_role_permission VALUES (3, 1020100, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  379. INSERT INTO sys_role_permission VALUES (3, 1020200, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  380. INSERT INTO sys_role_permission VALUES (3, 1020300, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  381. INSERT INTO sys_role_permission VALUES (3, 1020400, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  382. INSERT INTO sys_role_permission VALUES (3, 1030000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  383. INSERT INTO sys_role_permission VALUES (3, 1040000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  384. INSERT INTO sys_role_permission VALUES (3, 1050000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  385. INSERT INTO sys_role_permission VALUES (3, 1060000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  386. INSERT INTO sys_role_permission VALUES (3, 1070000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  387. -- 客服
  388. INSERT INTO sys_role_permission VALUES (4, 2, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  389. INSERT INTO sys_role_permission VALUES (4, 2020000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  390. INSERT INTO sys_role_permission VALUES (4, 2030000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  391. INSERT INTO sys_role_permission VALUES (4, 3, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  392. INSERT INTO sys_role_permission VALUES (4, 3020000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  393. INSERT INTO sys_role_permission VALUES (4, 3030000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  394. INSERT INTO sys_role_permission VALUES (4, 4, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  395. INSERT INTO sys_role_permission VALUES (4, 4020000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  396. INSERT INTO sys_role_permission VALUES (4, 4030000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  397. INSERT INTO sys_role_permission VALUES (4, 4050000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  398. -- 产品
  399. INSERT INTO sys_role_permission VALUES (5, 2, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  400. INSERT INTO sys_role_permission VALUES (5, 2010000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  401. INSERT INTO sys_role_permission VALUES (5, 2040000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  402. INSERT INTO sys_role_permission VALUES (5, 3, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  403. INSERT INTO sys_role_permission VALUES (5, 3010000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  404. INSERT INTO sys_role_permission VALUES (5, 3050000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  405. INSERT INTO sys_role_permission VALUES (5, 4, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  406. INSERT INTO sys_role_permission VALUES (5, 4010000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  407. INSERT INTO sys_role_permission VALUES (5, 4040000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  408. -- 运营
  409. INSERT INTO sys_role_permission VALUES (6, 2, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  410. INSERT INTO sys_role_permission VALUES (6, 2020000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  411. INSERT INTO sys_role_permission VALUES (6, 2040000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  412. INSERT INTO sys_role_permission VALUES (6, 2050000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  413. INSERT INTO sys_role_permission VALUES (6, 2060000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  414. INSERT INTO sys_role_permission VALUES (6, 3, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  415. INSERT INTO sys_role_permission VALUES (6, 3020000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  416. INSERT INTO sys_role_permission VALUES (6, 3040000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  417. INSERT INTO sys_role_permission VALUES (6, 3050000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  418. INSERT INTO sys_role_permission VALUES (6, 3060000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  419. INSERT INTO sys_role_permission VALUES (6, 4, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  420. INSERT INTO sys_role_permission VALUES (6, 4020000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  421. INSERT INTO sys_role_permission VALUES (6, 4040000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  422. INSERT INTO sys_role_permission VALUES (6, 4060000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  423. INSERT INTO sys_role_permission VALUES (6, 4070000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  424. INSERT INTO sys_role_permission VALUES (6, 6, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  425. INSERT INTO sys_role_permission VALUES (6, 6040000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  426. -- 会计
  427. INSERT INTO sys_role_permission VALUES (7, 5, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  428. INSERT INTO sys_role_permission VALUES (7, 5010000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  429. INSERT INTO sys_role_permission VALUES (7, 5020000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  430. INSERT INTO sys_role_permission VALUES (7, 5030000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  431. INSERT INTO sys_role_permission VALUES (7, 5040000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  432. -- 出纳
  433. INSERT INTO sys_role_permission VALUES (8, 5, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  434. INSERT INTO sys_role_permission VALUES (8, 5050000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  435. INSERT INTO sys_role_permission VALUES (8, 5060000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  436. INSERT INTO sys_role_permission VALUES (8, 5070000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  437. -- 库管
  438. INSERT INTO sys_role_permission VALUES (9, 6, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  439. INSERT INTO sys_role_permission VALUES (9, 6010000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  440. INSERT INTO sys_role_permission VALUES (9, 6020000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  441. INSERT INTO sys_role_permission VALUES (9, 6030000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  442. INSERT INTO sys_role_permission VALUES (9, 6040000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  443. -- 配送
  444. INSERT INTO sys_role_permission VALUES (10, 6, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  445. INSERT INTO sys_role_permission VALUES (10, 6050000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  446. INSERT INTO sys_role_permission VALUES (10, 6060000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  447. -- 用户管理员
  448. INSERT INTO sys_role_permission VALUES (11, 2, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  449. INSERT INTO sys_role_permission VALUES (11, 2010000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  450. INSERT INTO sys_role_permission VALUES (11, 2020000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  451. INSERT INTO sys_role_permission VALUES (11, 2030000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  452. INSERT INTO sys_role_permission VALUES (11, 2040000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  453. INSERT INTO sys_role_permission VALUES (11, 2050000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  454. INSERT INTO sys_role_permission VALUES (11, 2060000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  455. -- 商品管理员
  456. INSERT INTO sys_role_permission VALUES (12, 3, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  457. INSERT INTO sys_role_permission VALUES (12, 3010000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  458. INSERT INTO sys_role_permission VALUES (12, 3020000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  459. INSERT INTO sys_role_permission VALUES (12, 3030000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  460. INSERT INTO sys_role_permission VALUES (12, 3040000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  461. INSERT INTO sys_role_permission VALUES (12, 3050000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  462. INSERT INTO sys_role_permission VALUES (12, 3060000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  463. -- 订单管理员
  464. INSERT INTO sys_role_permission VALUES (13, 4, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  465. INSERT INTO sys_role_permission VALUES (13, 4010000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  466. INSERT INTO sys_role_permission VALUES (13, 4020000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  467. INSERT INTO sys_role_permission VALUES (13, 4030000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  468. INSERT INTO sys_role_permission VALUES (13, 4040000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  469. INSERT INTO sys_role_permission VALUES (13, 4050000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  470. INSERT INTO sys_role_permission VALUES (13, 4060000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  471. INSERT INTO sys_role_permission VALUES (13, 4070000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  472.  
  473. -- ----------------------------
  474. -- Table structure for sys_user
  475. -- ----------------------------
  476. DROP TABLE IF EXISTS sys_user;
  477. CREATE TABLE sys_user (
  478. id int(11) NOT NULL AUTO_INCREMENT COMMENT '用户编码',
  479. bid int(11) NOT NULL DEFAULT '1' COMMENT '机构编码',
  480. username varchar(32) NOT NULL COMMENT '用户名',
  481. password varchar(32) NOT NULL COMMENT '密码',
  482. scope tinyint(1) NOT NULL DEFAULT '0' COMMENT '0:全部,1:部门及以下,2:仅个人' COMMENT '角色范围',
  483. createtime timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  484. updatetime timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  485. PRIMARY KEY (id) USING BTREE
  486. ) ENGINE=InnoDB CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci ROW_FORMAT=Dynamic COMMENT '用户表';
  487.  
  488. -- ----------------------------
  489. -- Records of sys_user
  490. -- ----------------------------
  491. INSERT INTO sys_user VALUES (1, 1, '超级管理员', '123456', 0, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  492. INSERT INTO sys_user VALUES (2, 1, '董事长', '123456', 0, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  493. INSERT INTO sys_user VALUES (3, 2, '张总', '123456', 0, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  494. INSERT INTO sys_user VALUES (4, 3, '蔡总', '123456', 0, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  495. INSERT INTO sys_user VALUES (5, 4, '李主任', '123456', 0, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  496. INSERT INTO sys_user VALUES (6, 6, '赵部长', '123456', 0, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  497. INSERT INTO sys_user VALUES (7, 7, '小林', '123456', 2, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  498. INSERT INTO sys_user VALUES (8, 7, '小美', '123456', 2, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  499. INSERT INTO sys_user VALUES (9, 8, '小黄', '123456', 0, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  500. INSERT INTO sys_user VALUES (10, 8, '小郭', '123456', 0, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  501. INSERT INTO sys_user VALUES (11, 9, '范出纳', '123456', 0, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  502. INSERT INTO sys_user VALUES (12, 9, '钱会计', '123456', 0, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  503. INSERT INTO sys_user VALUES (13, 10, '老刘', '123456', 0, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  504. INSERT INTO sys_user VALUES (14, 10, '老魏', '123456', 0, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  505. INSERT INTO sys_user VALUES (15, 11, '小平', '123456', 0, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  506. INSERT INTO sys_user VALUES (16, 11, '小冯', '123456', 0, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  507.  
  508. -- ----------------------------
  509. -- Table structure for sys_user_group
  510. -- ----------------------------
  511. DROP TABLE IF EXISTS sys_user_group;
  512. CREATE TABLE sys_user_group (
  513. uid int(11) NOT NULL COMMENT '用户编码',
  514. gid int(11) NOT NULL COMMENT '组编码',
  515. createtime timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  516. updatetime timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  517. PRIMARY KEY (uid, gid) USING BTREE
  518. ) ENGINE=InnoDB CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci ROW_FORMAT=Dynamic COMMENT '用户组表';
  519.  
  520. -- ----------------------------
  521. -- Records of sys_user_group
  522. -- ----------------------------
  523. INSERT INTO sys_user_group VALUES (3, 10001, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  524. INSERT INTO sys_user_group VALUES (4, 10002, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  525.  
  526. -- ----------------------------
  527. -- Table structure for sys_user_permission
  528. -- ----------------------------
  529. DROP TABLE IF EXISTS sys_user_permission;
  530. CREATE TABLE sys_user_permission (
  531. uid int(11) NOT NULL COMMENT '用户编码',
  532. pid int(11) NOT NULL COMMENT '权限编码',
  533. createtime timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  534. updatetime timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  535. PRIMARY KEY (uid, pid) USING BTREE
  536. ) ENGINE=InnoDB CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci ROW_FORMAT=Dynamic COMMENT '用户权限表';
  537.  
  538. -- ----------------------------
  539. -- Table structure for sys_user_role
  540. -- ----------------------------
  541. DROP TABLE IF EXISTS sys_user_role;
  542. CREATE TABLE sys_user_role (
  543. uid int(11) NOT NULL COMMENT '用户编码',
  544. rid int(11) NOT NULL COMMENT '角色编码',
  545. createtime timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  546. updatetime timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  547. PRIMARY KEY (uid, rid) USING BTREE
  548. ) ENGINE=InnoDB CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci ROW_FORMAT=Dynamic COMMENT '角色表';
  549.  
  550. -- ----------------------------
  551. -- Records of sys_user_role
  552. -- ----------------------------
  553. INSERT INTO sys_user_role VALUES (1, 2, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  554. INSERT INTO sys_user_role VALUES (2, 2, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  555. INSERT INTO sys_user_role VALUES (7, 5, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  556. INSERT INTO sys_user_role VALUES (8, 5, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  557. INSERT INTO sys_user_role VALUES (9, 4, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  558. INSERT INTO sys_user_role VALUES (10, 6, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  559. INSERT INTO sys_user_role VALUES (11, 7, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  560. INSERT INTO sys_user_role VALUES (12, 8, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  561. INSERT INTO sys_user_role VALUES (13, 9, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  562. INSERT INTO sys_user_role VALUES (14, 10, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  563. INSERT INTO sys_user_role VALUES (15, 3, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
  564.  
  565. -- ----------------------------
  566. -- Function structure for getChildList
  567. -- ----------------------------
  568. DROP FUNCTION IF EXISTS getChildList;
  569. delimiter ;;
  570. CREATE DEFINER=root@localhost FUNCTION getChildList(nodeid INT) RETURNS varchar(1000) CHARSET utf8
  571. BEGIN
  572. DECLARE childList VARCHAR(1000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP); # 返回叶子节点结果集
  573. DECLARE tempChild VARCHAR(1000, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP); # 临时存放子节点
  574.  
  575. SET childList='';
  576. SET tempChild=CAST(nodeid AS CHAR, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP); # 将int类型转换为String
  577.  
  578. WHILE tempChild IS NOT NULL DO # 循环,用于查询节点下所有的子节点
  579. SET childList=CONCAT(childList, ',', tempChild, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP); # 存入到返回结果中
  580. SELECT sys_group_CONCAT(id) INTO tempChild FROM sys_branch WHERE FIND_IN_SET(pid, tempChild) > 0; # 查询节点下所有子节点
  581. END WHILE;
  582. RETURN SUBSTRING(childList, 2, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP); # 将返回结果处理,截取掉结果集前面的逗号
  583. END
  584. ;;
  585. delimiter ;

然后修改POM文件:

修改属性文件连接MySQL:

  1. ## MYSQL
  2.  
  3. spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
  4.  
  5. spring.datasource.url=jdbc:mysql://ip:port/dbname?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&useSSL=false&serverTimezone=GMT%2B8&zeroDateTimeBehavior=convertToNull
  6.  
  7. spring.datasource.username=root
  8.  
  9. spring.datasource.password=123456

这里的ip、port和dbname都用自己数据库的实际连接数据替换就行了。

创建SysBranch实体类:

  1. /**
  2. * 分支机构entity
  3. *
  4. * @author 湘王
  5. */
  6. public class SysBranch implements Serializable, RowMapper<SysBranch> {
  7. private static final long serialVersionUID = -1214743110268373599L;
  8.  
  9. private int id;
  10. private int parentid;
  11. private String parentids;
  12. private String name;
  13. private int type; // 机构类型,0:集团;1:公司;2:分支机构;3:部门;4:小组
  14. @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
  15. protected Date createtime;
  16. @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
  17. protected Date updatetime;
  18.  
  19. public int getId() {
  20. return id;
  21. }
  22.  
  23. public void setId(int id) {
  24. this.id = id;
  25. }
  26.  
  27. public int getParentid() {
  28. return parentid;
  29. }
  30.  
  31. public void setParentid(int parentid) {
  32. this.parentid = parentid;
  33. }
  34.  
  35. public String getParentids() {
  36. return parentids;
  37. }
  38.  
  39. public void setParentids(String parentids) {
  40. this.parentids = parentids;
  41. }
  42.  
  43. public String getName() {
  44. return name;
  45. }
  46.  
  47. public void setName(String name) {
  48. this.name = name;
  49. }
  50.  
  51. public int getType() {
  52. return type;
  53. }
  54.  
  55. public void setType(int type) {
  56. this.type = type;
  57. }
  58.  
  59. public Date getCreatetime() {
  60. return createtime;
  61. }
  62.  
  63. public void setCreatetime(Date createtime) {
  64. this.createtime = createtime;
  65. }
  66.  
  67. public Date getUpdatetime() {
  68. return updatetime;
  69. }
  70.  
  71. public void setUpdatetime(Date updatetime) {
  72. this.updatetime = updatetime;
  73. }
  74.  
  75. @Override
  76. public SysBranch mapRow(ResultSet result, int i) throws SQLException {
  77. SysBranch user = new SysBranch();
  78.  
  79. user.setId(result.getInt("id"));
  80. user.setParentid(result.getInt("parentid"));
  81. user.setParentids(result.getString("parentids"));
  82. user.setName(result.getString("name"));
  83. user.setType(result.getInt("type"));
  84. user.setCreatetime(result.getTimestamp("createtime"));
  85. user.setUpdatetime(result.getTimestamp("updatetime"));
  86.  
  87. return user;
  88. }
  89. }

创建SysGroup实体类:

  1. /**
  2. * 组entity
  3. *
  4. * @author 湘王
  5. */
  6. public class SysGroup implements Serializable, RowMapper<SysGroup> {
  7. private static final long serialVersionUID = -1214743110268373599L;
  8.  
  9. private int id;
  10. private int parentid;
  11. private String parentids;
  12. private String name;
  13. @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
  14. protected Date createtime;
  15. @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
  16. protected Date updatetime;
  17.  
  18. public int getId() {
  19. return id;
  20. }
  21.  
  22. public void setId(int id) {
  23. this.id = id;
  24. }
  25.  
  26. public int getParentid() {
  27. return parentid;
  28. }
  29.  
  30. public void setParentid(int parentid) {
  31. this.parentid = parentid;
  32. }
  33.  
  34. public String getParentids() {
  35. return parentids;
  36. }
  37.  
  38. public void setParentids(String parentids) {
  39. this.parentids = parentids;
  40. }
  41.  
  42. public String getName() {
  43. return name;
  44. }
  45.  
  46. public void setName(String name) {
  47. this.name = name;
  48. }
  49.  
  50. public Date getCreatetime() {
  51. return createtime;
  52. }
  53.  
  54. public void setCreatetime(Date createtime) {
  55. this.createtime = createtime;
  56. }
  57.  
  58. public Date getUpdatetime() {
  59. return updatetime;
  60. }
  61.  
  62. public void setUpdatetime(Date updatetime) {
  63. this.updatetime = updatetime;
  64. }
  65.  
  66. @Override
  67. public SysGroup mapRow(ResultSet result, int i) throws SQLException {
  68. SysGroup user = new SysGroup();
  69.  
  70. user.setId(result.getInt("id"));
  71. user.setParentid(result.getInt("parentid"));
  72. user.setParentids(result.getString("parentids"));
  73. user.setName(result.getString("name"));
  74. user.setCreatetime(result.getTimestamp("createtime"));
  75. user.setUpdatetime(result.getTimestamp("updatetime"));
  76.  
  77. return user;
  78. }
  79. }

创建SysUser实体类:

  1. /**
  2. * 用户entity
  3. *
  4. * @author 湘王
  5. */
  6. public class SysUser implements Serializable, RowMapper<SysUser> {
  7. private static final long serialVersionUID = -1214743110268373599L;
  8.  
  9. private int id;
  10. private int bid;
  11. private String username;
  12. private String password;
  13. private int scope; // 0:全部,1:部门及以下,2:仅个人
  14. @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
  15. protected Date createtime;
  16. @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
  17. protected Date updatetime;
  18.  
  19. public int getId() {
  20. return id;
  21. }
  22.  
  23. public void setId(int id) {
  24. this.id = id;
  25. }
  26.  
  27. public int getBid() {
  28. return bid;
  29. }
  30.  
  31. public void setBid(int bid) {
  32. this.bid = bid;
  33. }
  34.  
  35. public String getUsername() {
  36. return username;
  37. }
  38.  
  39. public void setUsername(String username) {
  40. this.username = username;
  41. }
  42.  
  43. @JsonIgnore
  44. public String getPassword() {
  45. return password;
  46. }
  47.  
  48. public void setPassword(String password) {
  49. this.password = password;
  50. }
  51.  
  52. public int getScope() {
  53. return scope;
  54. }
  55.  
  56. public void setScope(int scope) {
  57. this.scope = scope;
  58. }
  59.  
  60. public Date getCreatetime() {
  61. return createtime;
  62. }
  63.  
  64. public void setCreatetime(Date createtime) {
  65. this.createtime = createtime;
  66. }
  67.  
  68. public Date getUpdatetime() {
  69. return updatetime;
  70. }
  71.  
  72. public void setUpdatetime(Date updatetime) {
  73. this.updatetime = updatetime;
  74. }
  75.  
  76. @Override
  77. public SysUser mapRow(ResultSet result, int i) throws SQLException {
  78. SysUser user = new SysUser();
  79.  
  80. user.setId(result.getInt("id"));
  81. user.setUsername(result.getString("username"));
  82. user.setPassword(result.getString("password"));
  83. user.setCreatetime(result.getTimestamp("createtime"));
  84. user.setUpdatetime(result.getTimestamp("updatetime"));
  85.  
  86. return user;
  87. }
  88. }

创建SysRole实体类:

  1. /**
  2. * 角色entity
  3. *
  4. * @author 湘王
  5. */
  6. public class SysRole implements Serializable, RowMapper<SysRole> {
  7. private static final long serialVersionUID = 6980192718775578676L;
  8.  
  9. private int id;
  10. private int parentid;
  11. private String parentids;
  12. private String name;
  13. @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
  14. protected Date createtime;
  15. @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
  16. protected Date updatetime;
  17.  
  18. public int getId() {
  19. return id;
  20. }
  21.  
  22. public void setId(int id) {
  23. this.id = id;
  24. }
  25.  
  26. public int getParentid() {
  27. return parentid;
  28. }
  29.  
  30. public void setParentid(int parentid) {
  31. this.parentid = parentid;
  32. }
  33.  
  34. public String getParentids() {
  35. return parentids;
  36. }
  37.  
  38. public void setParentids(String parentids) {
  39. this.parentids = parentids;
  40. }
  41.  
  42. public String getName() {
  43. return name;
  44. }
  45.  
  46. public void setName(String name) {
  47. this.name = name;
  48. }
  49.  
  50. public Date getCreatetime() {
  51. return createtime;
  52. }
  53.  
  54. public void setCreatetime(Date createtime) {
  55. this.createtime = createtime;
  56. }
  57.  
  58. public Date getUpdatetime() {
  59. return updatetime;
  60. }
  61.  
  62. public void setUpdatetime(Date updatetime) {
  63. this.updatetime = updatetime;
  64. }
  65.  
  66. @Override
  67. public SysRole mapRow(ResultSet result, int i) throws SQLException {
  68. SysRole role = new SysRole();
  69.  
  70. role.setId(result.getInt("id"));
  71. role.setParentid(result.getInt("parentid"));
  72. role.setParentids(result.getString("parentids"));
  73. role.setName(result.getString("name"));
  74. role.setCreatetime(result.getTimestamp("createtime"));
  75. role.setUpdatetime(result.getTimestamp("updatetime"));
  76.  
  77. return role;
  78. }
  79. }

创建SysPermission实体类:

  1. /**
  2. * 权限entity
  3. *
  4. * @author 湘王
  5. */
  6. public class SysPermission implements Serializable, RowMapper<SysPermission> {
  7. private static final long serialVersionUID = 4121559180789799491L;
  8.  
  9. private int id;
  10. private int parentid;
  11. private String parentids;
  12. private String name;
  13. private int level;
  14. private String path;
  15. @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
  16. protected Date createtime;
  17. @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
  18. protected Date updatetime;
  19.  
  20. public int getId() {
  21. return id;
  22. }
  23.  
  24. public void setId(int id) {
  25. this.id = id;
  26. }
  27.  
  28. public int getParentid() {
  29. return parentid;
  30. }
  31.  
  32. public void setParentid(int parentid) {
  33. this.parentid = parentid;
  34. }
  35.  
  36. public String getParentids() {
  37. return parentids;
  38. }
  39.  
  40. public void setParentids(String parentids) {
  41. this.parentids = parentids;
  42. }
  43.  
  44. public String getName() {
  45. return name;
  46. }
  47.  
  48. public void setName(String name) {
  49. this.name = name;
  50. }
  51.  
  52. public int getLevel() {
  53. return level;
  54. }
  55.  
  56. public void setLevel(int level) {
  57. this.level = level;
  58. }
  59.  
  60. public String getPath() {
  61. return path;
  62. }
  63.  
  64. public void setPath(String path) {
  65. this.path = path;
  66. }
  67.  
  68. public Date getCreatetime() {
  69. return createtime;
  70. }
  71.  
  72. public void setCreatetime(Date createtime) {
  73. this.createtime = createtime;
  74. }
  75.  
  76. public Date getUpdatetime() {
  77. return updatetime;
  78. }
  79.  
  80. public void setUpdatetime(Date updatetime) {
  81. this.updatetime = updatetime;
  82. }
  83.  
  84. @Override
  85. public SysPermission mapRow(ResultSet result, int i) throws SQLException {
  86. SysPermission permission = new SysPermission();
  87.  
  88. permission.setId(result.getInt("id"));
  89. permission.setParentid(result.getInt("parentid"));
  90. permission.setParentids(result.getString("parentids"));
  91. permission.setName(result.getString("name"));
  92. permission.setLevel(result.getInt("level"));
  93. permission.setPath(result.getString("path"));
  94. permission.setCreatetime(result.getTimestamp("createtime"));
  95. permission.setUpdatetime(result.getTimestamp("updatetime"));
  96.  
  97. return permission;
  98. }
  99. }

可以接着使用之前在Spring Security中使用过的MySQLDao,接着再定义各种Service。

创建UserService:

  1. /**
  2. * 用户Service
  3. *
  4. * @author 湘王
  5. */
  6. @Service
  7. public class UserService {
  8. @Autowired
  9. private MySQLDao mySQLDao;
  10.  
  11. public SysUser queryById(int id) {
  12. String sql = "SELECT id, username, password, createtime, updatetime FROM sys_user WHERE id = ?";
  13. return (SysUser) mySQLDao.findOne(sql, new SysUser(), id);
  14. }
  15.  
  16. public SysUser queryByUsername(String username) {
  17. String sql = "SELECT id, username, password, createtime, updatetime FROM sys_user WHERE username = ?";
  18. return (SysUser) mySQLDao.findOne(sql, new SysUser(), username);
  19. }
  20.  
  21. public List<SysUser> queryAll() {
  22. String sql = "SELECT id, username, password, createtime, updatetime FROM sys_user";
  23. return mySQLDao.find(sql, new SysUser());
  24. }
  25. }

创建GroupService:

  1. /**
  2. * 用户组Service
  3. *
  4. * @author 湘王
  5. */
  6. @Service
  7. public class GroupService {
  8. @Autowired
  9. private MySQLDao mySQLDao;
  10.  
  11. public SysGroup queryById(int id) {
  12. String sql = "SELECT id, parentid, parentids, name, createtime, updatetime FROM sys_group WHERE id = ?";
  13. return (SysGroup) mySQLDao.findOne(sql, new SysGroup(), id);
  14. }
  15.  
  16. public SysGroup queryByName(String name) {
  17. String sql = "SELECT id, parentid, parentids, name, createtime, updatetime FROM sys_group WHERE name = ?";
  18. return (SysGroup) mySQLDao.findOne(sql, new SysGroup(), name);
  19. }
  20.  
  21. // 用户所属的组
  22. public List<SysGroup> queryByUserid(int uid) {
  23. String sql = "SELECT g.id, g.parentid, g.parentids, g.name, g.createtime, g.updatetime " +
  24. "FROM sys_user AS u, sys_user_group AS ug, sys_group AS g " +
  25. "WHERE u.id = ? AND u.id = ug.uid AND ug.gid = g.id";
  26. return (List<SysGroup>) mySQLDao.find(sql, new SysGroup(), name);
  27. }
  28.  
  29. // 查询组所属的子组
  30. public List<SysGroup> queryChildrenById(int id) {
  31. String sql = "SELECT id, parentid, parentids, name, createtime, updatetime FROM sys_group WHERE parentids LIKE '%" + id + ",%'";
  32. return (List<SysGroup>) mySQLDao.find(sql, new SysGroup(), id);
  33. }
  34.  
  35. // 查询组的父组
  36. public List<SysGroup> queryParentsById(String parentids) {
  37. String sql = "SELECT id, parentid, parentids, name, createtime, updatetime FROM sys_group WHERE id IN(" + parentids + ")";
  38. return (List<SysGroup>) mySQLDao.find(sql, new SysGroup(), parentids);
  39. }
  40. }

创建RoleService:

  1. /**
  2. * 角色Service
  3. *
  4. * @author 湘王
  5. */
  6. @Service
  7. public class RoleService {
  8. @Autowired
  9. private MySQLDao roleDao;
  10.  
  11. // 用户-组-角色
  12. public List<SysRole> queryUGRByUserId(int uid) {
  13. String sql = "SELECT r.id, r.parentid, r.parentids, r.name, r.createtime, r.updatetime " +
  14. "FROM sys_user AS u, sys_user_group AS ug, sys_group AS g, sys_group_role AS gr, sys_role AS r " +
  15. "WHERE u.id = ? AND u.id = ug.uid AND ug.gid = g.id AND g.id = gr.gid AND gr.rid = r.id";
  16. return (List<SysRole>) roleDao.find(sql, new SysRole(), uid);
  17. }
  18.  
  19. // 用户-角色
  20. public List<SysRole> queryURByUserId(int uid) {
  21. String sql = "SELECT r.id, r.parentid, r.parentids, r.name, r.createtime, r.updatetime " +
  22. "FROM sys_user AS u, sys_user_role AS ur, sys_role AS r " +
  23. "WHERE u.id = ? AND u.id = ur.uid AND ur.rid = r.id";
  24. return (List<SysRole>) roleDao.find(sql, new SysRole(), uid);
  25. }
  26.  
  27. // 组-角色
  28. public List<SysRole> queryGRByGroupId(int gid) {
  29. String sql = "SELECT r.id, r.parentid, r.parentids, r.name, r.createtime, r.updatetime " +
  30. "FROM sys_group AS g, sys_group_role AS gr, sys_role AS r " +
  31. "WHERE g.id = ? AND g.id = gr.gid AND gr.rid = r.id";
  32. return (List<SysRole>) roleDao.find(sql, new SysRole(), gid);
  33. }
  34.  
  35. // 查询角色的子角色
  36. public List<SysRole> queryChildrenById(int id) {
  37. String sql = "SELECT id, parentid, parentids, name, createtime, updatetime " +
  38. "FROM sys_role WHERE parentids LIKE '%" + id + ",%'";
  39. return (List<SysRole>) roleDao.find(sql, new SysRole());
  40. }
  41.  
  42. // 查询角色的父角色
  43. public List<SysRole> queryParentsById(final String parentids) {
  44. String sql = "SELECT id, parentid, parentids, name, createtime, updatetime " +
  45. "FROM sys_role WHERE id IN(" + parentids.substring(0, parentids.length() - 1) + ")";
  46. return (List<SysRole>) roleDao.find(sql, new SysRole());
  47. }
  48. }

创建PermissionService:

  1. /**
  2. * 权限Service
  3. *
  4. * @author 湘王
  5. */
  6. @Service
  7. public class PermissionService {
  8. @Autowired
  9. private MySQLDao mySQLDao;
  10.  
  11. // 查询用户-组-角色-权限
  12. @SuppressWarnings("unchecked")
  13. public List<SysPermission> queryUGRPByUserId(final int uid) {
  14. String sql = "SELECT p.id, p.parentid, p.parentids, p.name, p.level, p.path, p.createtime, p.updatetime " +
  15. "FROM sys_user AS u, sys_user_group AS ug, sys_group AS g, sys_group_role AS gr, " +
  16. "sys_role AS r, sys_role_permission AS rp, sys_permission AS p " +
  17. "WHERE u.id = ? AND u.id = ug.uid AND ug.gid = g.id AND g.id = gr.gid AND gr.rid = r.id " +
  18. "AND r.id = rp.rid AND rp.pid = p.id AND p.level >= 2";
  19. return (List<SysPermission>) mySQLDao.find(sql, new SysPermission(), uid);
  20. }
  21.  
  22. // 查询用户-角色-权限
  23. @SuppressWarnings("unchecked")
  24. public List<SysPermission> queryURPByUserId(final int uid) {
  25. String sql = "SELECT p.id, p.parentid, p.parentids, p.name, p.level, p.path, p.createtime, p.updatetime " +
  26. "FROM sys_user AS u, sys_user_role AS ur, sys_role AS r, sys_role_permission AS rp, sys_permission AS p " +
  27. "WHERE u.id = ? AND u.id = ur.uid AND ur.rid = r.id AND r.id = rp.rid AND rp.pid = p.id AND p.level >= 2";
  28. return (List<SysPermission>) mySQLDao.find(sql, new SysPermission(), uid);
  29. }
  30.  
  31. // 查询用户-权限
  32. public List<SysPermission> queryUPByUserId(final int uid) {
  33. String sql = "SELECT p.id, p.parentid, p.parentids, p.name, p.level, p.path, p.createtime, p.updatetime " +
  34. "FROM sys_user AS u, sys_user_permission AS up, sys_permission AS p " +
  35. "WHERE u.id = ? AND u.id = up.uid AND up.pid = p.id AND p.level >= 2";
  36. return (List<SysPermission>) mySQLDao.find(sql, new SysPermission(), uid);
  37. }
  38.  
  39. // 查询组-角色-权限
  40. @SuppressWarnings("unchecked")
  41. public List<SysPermission> queryGRPByGropuId(final int gid) {
  42. String sql = "SELECT p.id, p.parentid, p.parentids, p.name, p.level, p.path, p.createtime, p.updatetime " +
  43. "FROM sys_group AS g, sys_group_role AS gr, sys_role AS r, sys_role_permission AS rp, sys_permission AS p " +
  44. "WHERE g.id = ? AND g.id = gr.gid AND gr.rid = r.id AND r.id = rp.rid AND rp.pid = p.id AND p.level >= 2";
  45. return (List<SysPermission>) mySQLDao.find(sql, new SysPermission(), gid);
  46. }
  47.  
  48. // 查询组-权限
  49. public List<SysPermission> queryByGroupId(final int gid) {
  50. String sql = "SELECT p.id, p.parentid, p.parentids, p.name, p.level, p.path, p.createtime, p.updatetime " +
  51. "FROM sys_group AS u, sys_group_permission AS gp, sys_permission AS p " +
  52. "WHERE g.id = ? AND g.id = gp.gid AND gp.pid = p.id AND p.level >= 2";
  53. return (List<SysPermission>) mySQLDao.find(sql, new SysPermission(), gid);
  54. }
  55.  
  56. // 查询角色-权限
  57. public List<SysPermission> queryByRoleId(final int rid) {
  58. String sql = "SELECT p.id, p.parentid, p.parentids, p.name, p.level, p.path, p.createtime, p.updatetime " +
  59. "FROM sys_role AS r, sys_role_permission AS rp, sys_permission AS p " +
  60. "WHERE r.id = ? AND r.id = rp.rid AND rp.pid = p.id AND p.level >= 2";
  61. return mySQLDao.find(sql, new SysPermission(), rid);
  62. }
  63.  
  64. // 查询多个角色-权限
  65. public List<SysPermission> queryByMultiRoleIds(final String rids) {
  66. String ids = rids.substring(0, rids.length() - 1);
  67. String sql = "SELECT p.id, p.parentid, p.parentids, p.name, p.level, p.path, p.createtime, p.updatetime " +
  68. "FROM sys_role AS r, sys_role_permission AS rp, sys_permission AS p " +
  69. "WHERE r.id IN(" + ids + ") AND r.id = rp.rid AND rp.pid = p.id AND p.level >= 2";
  70. return mySQLDao.find(sql, new SysPermission());
  71. }
  72. }

感谢您的大驾光临!咨询技术、产品、运营和管理相关问题,请关注后留言。欢迎骚扰,不胜荣幸~

自定义RBAC(4)的更多相关文章

  1. django自定义rbac权限组件(二级菜单)

    一.目录结构 二.表结构设计 model.py from django.db import models # Create your models here. class Menu(models.Mo ...

  2. 在微服务系统开发部署中使用Azure RBAC自定义角色

    Azure的官方文档介绍了如何创建用于Azure基于角色的访问控制的自定义角色(RBAC Role). 我们也可以根据同样的原理把RBAC细粒度资源管理运用于微服务产品的开发部署中.(https:// ...

  3. 22-1 rbac权限设计

    一 表结构设计 from django.db import models # Create your models here. from django.db import models # Creat ...

  4. Rancher 2.1平台搭建及使用

    一.概述 1.1.什么是Rancher Rancher是一套容器管理平台,它可以帮助组织在生产环境中轻松快捷的部署和管理容器. Rancher可以轻松地管理各种环境的Kubernetes,满足IT需求 ...

  5. Admin后台权限管理、三大认证

    目录 APIView的请求生命周期 三大认证规则 权限六表 自定义User表 详细配置演示 models.py setting.py admin.py 使用过程: 控制填写信息的字段 控制添加权限 控 ...

  6. 视图家族 & 路由组件

    目录 视图家族 & 路由组件 视图集与路由组件 基于 GenericAPIView 的十大接口 基于 generics 包下工具视图类的六大基础接口 视图集 路由组件:必须配合视图集使用 自定 ...

  7. Rancher概述

    概述 What’s Rancher? Rancher是一套容器管理平台,它可以帮助组织在生产环境中轻松快捷的部署和管理容器. Rancher可以轻松地管理各种环境的Kubernetes,满足IT需求并 ...

  8. k8认证机制

    参考下面博文 http://www.mamicode.com/info-detail-2270627.html 需要补充: k8s的的认证机制场景使用 客户端证书认证         采用双向证书进行 ...

  9. ranche2.0-CN

    遵循以下两步,快速运行rancher2.0 Step1:准备一台linux主机 准备一台64位Linux主机(推荐centos7.5+),至少4GB内存.安装Kubernetes支持的Docker-c ...

  10. [Django REST framework - RBAC-基于角色的访问控制、base64编码 、xadmin的使用]

    [Django REST framework - RBAC-基于角色的访问控制.base64编码 .xadmin的使用] RBAC-基于角色的访问控制 RBAC 是基于角色的访问控制(Role-Bas ...

随机推荐

  1. 在CentO7系统上配置Springboot项目jar包开机自启动

    官方文档地址:https://docs.spring.io/spring-boot/docs/current/reference/html/deployment.html#deployment-ins ...

  2. 关于HM NISEDIT在新版系统下编译并运行提示权限不足问题的解决方案

    如果你使用过NSIS为你的项目制作过安装包,那HM nisedit一定是你绕不过去的槛,作为NSIS号称的最佳免费IDE/编辑器,功能齐全,与NSIS配合性能强悍,实至名归.只是开发作者最后版本更新在 ...

  3. mysql工具的使用、增删改查

    mysql工具使用 目录 mysql工具使用 mysql的程序组成 mysql工具使用 服务器监听的两种socket地址 mysql数据库操作 DDL操作 数据库操作 表操作 用户操作 查看命令SHO ...

  4. C++和Java多维数组声明和初始化时的区别与常见问题

    //C++只有在用{}进行初始化的时候才可以仅仅指定列数而不指定行数,因为可以通过直接//初始化时的元素个数自动计算出行数.而仅声明/创建数组而不初始化时,Cpp要求必须写明//行数和列数才能够创建数 ...

  5. flinksql读写redis

    0.前言 最近有个需求,需要使用flinksql读写redis,由于官网上并没有redis的connector,在网上找了很久,开源的几个connector又没法满足要求,所有这里就自己动手实现了一个 ...

  6. Linux执行jsp命令的时候报错:-bash: jps: command not found

    前言:在zookeeper学习的时候,执行jsp命令查看zookpper运行状态的时候发现报错: -bash: jps: command not found 翻阅了一大批文章,不是东拼西凑,就是缺斤少 ...

  7. 2.pygame快速入门-绘制图像

    介绍 在游戏中能够看到的游戏元素大都是图像 图像文件初始是保存在磁盘上的,如果需要使用,第一步就需要被加载到内存 要在屏幕上看到某一个图像的内容,需要按照三个步骤 使用pygame.image.loa ...

  8. Vitepress搭建组件库文档(下)—— 组件 Demo

    上文 <Vitepress搭建组件库文档(上)-- 基本配置>已经讨论了 vitepress 搭建组件库文档的基本配置,包括站点 Logo.名称.首页 home 布局.顶部导航.左侧导航等 ...

  9. docker容器化业务

    1.环境准备: 设备 IP地址 作用 系统版本 mysql-master 192.168.100.213 Nginx-Web服务器 Ubuntu2004 mysql-slave 192.168.100 ...

  10. CSS 动画一站式指南

    CSS 动画一站式指南 目录 CSS 动画一站式指南 1. CSS 动画 1.1 变换 1.1.1 变换属性介绍 1.1.2 变换动画实践 1.2 过渡 1.2.1 过渡属性介绍 1.2.2 过渡动画 ...