|
|
|
@ -88,4 +88,135 @@ permission 对应 权限 |
|
|
|
|
|
|
|
|
|
|
|
--- |
|
|
|
--- |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
```mysql |
|
|
|
|
|
|
|
create database test; |
|
|
|
|
|
|
|
use test; |
|
|
|
|
|
|
|
# 用户 |
|
|
|
|
|
|
|
create table users( |
|
|
|
|
|
|
|
id int primary key auto_increment, # 自动递增主键 |
|
|
|
|
|
|
|
name varchar(244), |
|
|
|
|
|
|
|
password varchar(244), |
|
|
|
|
|
|
|
rolesid int, # 外键 关联角色的ID |
|
|
|
|
|
|
|
createdate timestamp, |
|
|
|
|
|
|
|
updatedate timestamp |
|
|
|
|
|
|
|
) character set = UTF8MB4; |
|
|
|
|
|
|
|
# 角色 |
|
|
|
|
|
|
|
create table roles( |
|
|
|
|
|
|
|
id int not null default 0 , # 主键 默认0 |
|
|
|
|
|
|
|
name varchar(30), |
|
|
|
|
|
|
|
permissionid int not null auto_increment, # 非主键 约束唯一索引 自动递增 并 外键 关联 permission 的ID |
|
|
|
|
|
|
|
createdate timestamp, |
|
|
|
|
|
|
|
updatedate timestamp, |
|
|
|
|
|
|
|
primary key (`id`), |
|
|
|
|
|
|
|
unique key (`permissionid`) |
|
|
|
|
|
|
|
)character set = UTF8MB4; |
|
|
|
|
|
|
|
# 权限表 |
|
|
|
|
|
|
|
create table permission( |
|
|
|
|
|
|
|
id int primary key auto_increment, # 自动递增主键 |
|
|
|
|
|
|
|
rolesid int, |
|
|
|
|
|
|
|
name varchar(20), |
|
|
|
|
|
|
|
operationid int, # 外键 关联operation的ID |
|
|
|
|
|
|
|
createdate timestamp, |
|
|
|
|
|
|
|
updatedate timestamp |
|
|
|
|
|
|
|
)character set = UTF8MB4; |
|
|
|
|
|
|
|
# menu操作权限访问模块表 |
|
|
|
|
|
|
|
create table operation( |
|
|
|
|
|
|
|
id int primary key , # 主键 非自动递增 |
|
|
|
|
|
|
|
name varchar(20), |
|
|
|
|
|
|
|
url varchar(20), |
|
|
|
|
|
|
|
createdate timestamp, |
|
|
|
|
|
|
|
updatedate timestamp |
|
|
|
|
|
|
|
)character set = UTF8MB4; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# 用户---角色的外键 |
|
|
|
|
|
|
|
alter table users add constraint ur foreign key (rolesid) references roles(id); |
|
|
|
|
|
|
|
# 角色---权限 & 权限---menu访问模块 的外键。 |
|
|
|
|
|
|
|
alter table permission add constraint pr foreign key (rolesid) references roles(id); |
|
|
|
|
|
|
|
alter table permission add constraint op foreign key (operationid) references operation(id); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
alter table permission drop foreign key op; |
|
|
|
|
|
|
|
alter table users drop foreign key ur; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
drop table users; |
|
|
|
|
|
|
|
drop table roles; |
|
|
|
|
|
|
|
drop table permission; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# 用户 |
|
|
|
|
|
|
|
insert into users (name,password,rolesid,createdate,updatedate) VALUES ('123333','vip2333','1',now(),now()); |
|
|
|
|
|
|
|
insert into users (name,password,rolesid,createdate,updatedate) VALUES ('123343','vip2343','2',now(),now()); |
|
|
|
|
|
|
|
insert into users (name,password,rolesid,createdate,updatedate) VALUES ('123353','vip2353','3',now(),now()); |
|
|
|
|
|
|
|
# 角色 |
|
|
|
|
|
|
|
insert into roles (id, name, createdate, updatedate) VALUES ('1','admin1',now(),now()); |
|
|
|
|
|
|
|
insert into roles (id, name, createdate, updatedate) VALUES ('2','admin2',now(),now()); |
|
|
|
|
|
|
|
insert into roles (id, name, createdate, updatedate) VALUES ('3','admin3',now(),now()); |
|
|
|
|
|
|
|
insert into roles (id, name, createdate, updatedate) VALUES ('4','admin4',now(),now()); |
|
|
|
|
|
|
|
# 权限 |
|
|
|
|
|
|
|
insert into permission (rolesid, name,operationid, createdate, updatedate) VALUES ('3','add','1',now(),now()); |
|
|
|
|
|
|
|
insert into permission (rolesid, name,operationid, createdate, updatedate) VALUES ('3','delete','1',now(),now()); |
|
|
|
|
|
|
|
insert into permission (rolesid, name,operationid, createdate, updatedate) VALUES ('3','select','1',now(),now()); |
|
|
|
|
|
|
|
insert into permission (rolesid, name,operationid, createdate, updatedate) VALUES ('3','updata','1',now(),now()); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
insert into permission (rolesid, name,operationid, createdate, updatedate) VALUES ('3','add','191',now(),now()); |
|
|
|
|
|
|
|
insert into permission (rolesid, name,operationid, createdate, updatedate) VALUES ('3','delete','191',now(),now()); |
|
|
|
|
|
|
|
insert into permission (rolesid, name,operationid, createdate, updatedate) VALUES ('3','select','191',now(),now()); |
|
|
|
|
|
|
|
insert into permission (rolesid, name,operationid, createdate, updatedate) VALUES ('3','updata','191',now(),now()); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
insert into permission (rolesid, name,operationid, createdate, updatedate) VALUES ('3','add','1101',now(),now()); |
|
|
|
|
|
|
|
insert into permission (rolesid, name,operationid, createdate, updatedate) VALUES ('3','delete','1101',now(),now()); |
|
|
|
|
|
|
|
insert into permission (rolesid, name,operationid, createdate, updatedate) VALUES ('3','select','1101',now(),now()); |
|
|
|
|
|
|
|
insert into permission (rolesid, name,operationid, createdate, updatedate) VALUES ('3','updata','1101',now(),now()); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
insert into permission (rolesid, name,operationid, createdate, updatedate) VALUES ('3','add','1111',now(),now()); |
|
|
|
|
|
|
|
insert into permission (rolesid, name,operationid, createdate, updatedate) VALUES ('3','delete','1111',now(),now()); |
|
|
|
|
|
|
|
insert into permission (rolesid, name,operationid, createdate, updatedate) VALUES ('3','select','1111',now(),now()); |
|
|
|
|
|
|
|
insert into permission (rolesid, name,operationid, createdate, updatedate) VALUES ('3','updata','1111',now(),now()); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# 菜单功能访问模块 |
|
|
|
|
|
|
|
# 设置menu 1 【】 |
|
|
|
|
|
|
|
insert into operation (id, name, url, createdate, updatedate) VALUES ('1','个人信息','/me',now(),now()); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# insert into operation (id, name, url, createdate, updatedate) VALUES ('21','部门管理','/index/work',now(),now()); |
|
|
|
|
|
|
|
# insert into operation (id, name, url, createdate, updatedate) VALUES ('31','人员管理','/index/people',now(),now()); |
|
|
|
|
|
|
|
# insert into operation (id, name, url, createdate, updatedate) VALUES ('41','资产类别','/index/assettype',now(),now()); |
|
|
|
|
|
|
|
# insert into operation (id, name, url, createdate, updatedate) VALUES ('51','品牌','/index/brand',now(),now()); |
|
|
|
|
|
|
|
# insert into operation (id, name, url, createdate, updatedate) VALUES ('61','取得方式','/index/method',now(),now()); |
|
|
|
|
|
|
|
# insert into operation (id, name, url, createdate, updatedate) VALUES ('71','供应商','/index/vendor',now(),now()); |
|
|
|
|
|
|
|
# insert into operation (id, name, url, createdate, updatedate) VALUES ('81','存放地点','/index/address',now(),now()); |
|
|
|
|
|
|
|
# insert into operation (id, name, url, createdate, updatedate) VALUES ('91','设备用途','/index/driver',now(),now()); |
|
|
|
|
|
|
|
# insert into operation (id, name, url, createdate, updatedate) VALUES ('11','报废方式','/index/repair',now(),now()); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
insert into operation (id, name, url, createdate, updatedate) VALUES ('111','资产申购','/:user/by',now(),now()); |
|
|
|
|
|
|
|
insert into operation (id, name, url, createdate, updatedate) VALUES ('121','资产入库','/:user/input',now(),now()); |
|
|
|
|
|
|
|
insert into operation (id, name, url, createdate, updatedate) VALUES ('131','资产信息维护','/:user/edit',now(),now()); |
|
|
|
|
|
|
|
insert into operation (id, name, url, createdate, updatedate) VALUES ('141','资产借还','/:user/debit',now(),now()); |
|
|
|
|
|
|
|
insert into operation (id, name, url, createdate, updatedate) VALUES ('151','资产转移','/:user/Transfer',now(),now()); |
|
|
|
|
|
|
|
insert into operation (id, name, url, createdate, updatedate) VALUES ('161','资产维修','/:user/fix',now(),now()); |
|
|
|
|
|
|
|
insert into operation (id, name, url, createdate, updatedate) VALUES ('171','资产报废','/:user/repair',now(),now()); |
|
|
|
|
|
|
|
insert into operation (id, name, url, createdate, updatedate) VALUES ('181','资产盘点','/:user/Inventory',now(),now()); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
insert into operation (id, name, url, createdate, updatedate) VALUES ('191','资产查询统计','/:user/Query',now(),now()); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
insert into operation (id, name, url, createdate, updatedate) VALUES ('1101','资产申购审批','/:user/Approval/by',now(),now()); |
|
|
|
|
|
|
|
insert into operation (id, name, url, createdate, updatedate) VALUES ('1111','资产报废审批','/:user/Approval/repair',now(),now()); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
select * from users; |
|
|
|
|
|
|
|
select * from roles; |
|
|
|
|
|
|
|
select * from operation; |
|
|
|
|
|
|
|
select * from permission; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# 通过角色去查询权限。 |
|
|
|
|
|
|
|
select distinct u.name,o.id,o.url from users as u |
|
|
|
|
|
|
|
left join roles as r on u.rolesid = r.id |
|
|
|
|
|
|
|
left join permission p on u.rolesid = p.rolesid |
|
|
|
|
|
|
|
right join operation o on p.operationid = o.id |
|
|
|
|
|
|
|
where u.name = 123353; |
|
|
|
|
|
|
|
# 结果:1 = 40 = admin1 ;2 = 80 = admin2 ;3 = 32 = admin3; |
|
|
|
|
|
|
|
# 过滤用户名,权限:四种权限的operation |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# 角色添加? |
|
|
|
|
|
|
|
# 用户授权? |
|
|
|
|
|
|
|
# 超级用户:拥有对整个系统的权限角色分配,功能分配有着绝对的操作。并且可对所存在的公司员工进行查询。 |
|
|
|
|
|
|
|
``` |
|
|
|
|