通用权限管理系统开发文档部门:地理信息部作者:王立彪版本:1.0时间:2017-01-13目录1. 简单模型描述 (1)1.1. E-R图 (1)1.2. 表格清单 (1)1.3. 外键清单 (2)1.4. 视图清单 (3)1.5. 序列清单 (3)2. 完全模型描述 (4)2.1. E-R图 (4)2.2. 表格清单 (4)2.2.1. 表格shiro_user(系统用户表) (4)2.2.2. 表格shiro_role(系统角色表) (5)2.2.3. 表格shiro_dept(系统部门表) (5)2.2.4. 表格shiro_resource(系统资源表) (5)2.2.5. 表格shiro_permission(系统权限表) (6)2.2.6. 表格shiro_group(系统组表) (6)2.2.7. 表格shiro_user_role(系统用户与角色关系表) (6)2.2.8. 表格shiro_role_resource(系统角色与资源关系表) (6)2.2.9. 表格shiro_role_permission(系统角色与权限关系表) (6)2.2.10. 表格shiro_group_user(系统组与用户关系表) (7)2.2.11. 表格shiro_reource_permission(系统资源与权限关系表) (7)2.2.12. 表格shiro_group_role(系统组与角色关系表) (7)2.2.13. 表格shiro_linecese(系统许可证表) (7)2.2.14. 表格shiro_machine_binding(系统机器绑定表) (7)2.2.15. 表格shiro_ras_keys(系统非对称加密秘钥表) (8)2.3. 外键清单 (8)2.3.1. 外键FK_SHIRO_GR_REFERENCE_SHIRO_DE (8)2.3.2. 外键FK_SHIRO_GR_REFERENCE_SHIRO_GR (8)2.3.3. 外键FK_SHIRO_GR_REFERENCE_SHIRO_RO (9)2.3.4. 外键FK_SHIRO_GU_REFERENCE_SHIRO_GR (9)2.3.5. 外键FK_SHIRO_GU_REFERENCE_SHIRO_US (10)2.3.6. 外键FK_SHIRO_MB_REFERENCE_SHIRO_LI (10)2.3.7. 外键FK_SHIRO_MB_REFERENCE_SHIRO_RK (10)2.3.8. 外键FK_SHIRO_RE_REFERENCE_SHIRO_PE (11)2.3.9. 外键FK_SHIRO_RE_REFERENCE_SHIRO_RE (11)2.3.10. 外键FK_SHIRO_RO_REFERENCE_SHIRO_DE (12)2.3.11. 外键FK_SHIRO_RP_REFERENCE_SHIRO_PE (12)2.3.12. 外键FK_SHIRO_RP_REFERENCE_SHIRO_RO (13)2.3.13. 外键FK_SHIRO_RR_REFERENCE_SHIRO_RE (13)2.3.14. 外键FK_SHIRO_RR_REFERENCE_SHIRO_RO (13)2.3.15. 外键FK_SHIRO_UR_REFERENCE_SHIRO_RO (14)2.3.16. 外键FK_SHIRO_UR_REFERENCE_SHIRO_US (14)2.3.17. 外键FK_SHIRO_US_REFERENCE_SHIRO_DE (15)2.4. 视图清单 (15)2.4.1. 视图view_shiro_user_resource (15)2.4.2. 视图view_shiro_user_role_permission (17)2.5. 序列清单 (18)2.5.1. 序列SHIRO_USER_ID_SEQ (18)2.5.2. 序列SHIRO_ROLE_ID_SEQ (18)2.5.3. 序列SHIRO_GROUP_ID_SEQ (18)2.5.4. 序列SHIRO_RESOURCE_ID_SEQ (18)2.5.5. 序列SHIRO_PERMISSION_ID_SEQ (18)2.5.6. 序列SHIRO_LINECESE_ID_SEQ (19)2.5.7. 序列SHIRO_RSA_KEYS_ID_SEQ (19)2.5.8. 序列SHIRO_MACHINE_BINDING_ID_SEQ (19)3. 配置手册 (19)4. 系统引入工程模板 (19)1.简单模型描述1.1.E-R图图1-1 整体E-R 1.2.表格清单1.3.外键清单1.4.视图清单1.5.序列清单2.完全模型描述2.1.E-R图图2-1 整体E-R 2.2.表格清单2.2.1.表格shiro_user(系统用户表)2.2.2.表格shiro_role(系统角色表)2.2.3.表格shiro_dept(系统部门表)2.2.4.表格shiro_resource(系统资源表)2.2.5.表格shiro_permission(系统权限表)2.2.6.表格shiro_group(系统组表)2.2.7.表格shiro_user_role(系统用户与角色关系表)2.2.8.表格shiro_role_resource(系统角色与资源关系表)2.2.9.表格shiro_role_permission(系统角色与权限关系表)2.2.10.表格shiro_group_user(系统组与用户关系表)2.2.11.表格shiro_reource_permission(系统资源与权限关系表)2.2.12.表格shiro_group_role(系统组与角色关系表)2.2.13.表格shiro_linecese(系统许可证表)2.2.14.表格shiro_machine_binding(系统机器绑定表)2.2.15.表格shiro_ras_keys(系统非对称加密秘钥表)2.3.外键清单2.3.1.外键FK_SHIRO_GR_REFERENCE_SHIRO_DE2.3.1.1.外键FK_SHIRO_GR_REFERENCE_SHIRO_DE的描述2.3.1.2.外键FK_SHIRO_GR_REFERENCE_SHIRO_DE的连接清单2.3.2.外键FK_SHIRO_GR_REFERENCE_SHIRO_GR2.3.2.1.外键FK_SHIRO_GR_REFERENCE_SHIRO_GR的描述2.3.2.2.外键FK_SHIRO_GR_REFERENCE_SHIRO_GR的连接清单2.3.3.外键FK_SHIRO_GR_REFERENCE_SHIRO_RO 2.3.3.1.外键FK_SHIRO_GR_REFERENCE_SHIRO_RO的描述2.3.3.2.外键FK_SHIRO_GR_REFERENCE_SHIRO_RO的连接清单2.3.4.外键FK_SHIRO_GU_REFERENCE_SHIRO_GR 2.3.4.1.外键FK_SHIRO_GU_REFERENCE_SHIRO_GR的描述2.3.4.2.外键FK_SHIRO_GU_REFERENCE_SHIRO_GR的连接清单2.3.5.外键FK_SHIRO_GU_REFERENCE_SHIRO_US 2.3.5.1.外键FK_SHIRO_GU_REFERENCE_SHIRO_US的描述2.3.5.2.外键FK_SHIRO_GU_REFERENCE_SHIRO_US的连接清单2.3.6.外键FK_SHIRO_MB_REFERENCE_SHIRO_LI2.3.6.1.外键FK_SHIRO_MB_REFERENCE_SHIRO_LI的描述2.3.6.2.外键FK_SHIRO_MB_REFERENCE_SHIRO_LI的连接清单2.3.7.外键FK_SHIRO_MB_REFERENCE_SHIRO_RK 2.3.7.1.外键FK_SHIRO_MB_REFERENCE_SHIRO_RK的描述子表格shiro_machine_binding父表格shiro_rsa_keys外键列key_id2.3.7.2.外键FK_SHIRO_MB_REFERENCE_SHIRO_RK的连接清单2.3.8.外键FK_SHIRO_RE_REFERENCE_SHIRO_PE2.3.8.1.外键FK_SHIRO_RE_REFERENCE_SHIRO_PE的描述2.3.8.2.外键FK_SHIRO_RE_REFERENCE_SHIRO_PE的连接清单2.3.9.外键FK_SHIRO_RE_REFERENCE_SHIRO_RE2.3.9.1.外键FK_SHIRO_RE_REFERENCE_SHIRO_RE的描述2.3.9.2.外键FK_SHIRO_RE_REFERENCE_SHIRO_RE的连接清单2.3.10.外键FK_SHIRO_RO_REFERENCE_SHIRO_DE 2.3.10.1.外键FK_SHIRO_RO_REFERENCE_SHIRO_DE的描述2.3.10.2.外键FK_SHIRO_RO_REFERENCE_SHIRO_DE的连接清单2.3.11.外键FK_SHIRO_RP_REFERENCE_SHIRO_PE2.3.11.1.外键FK_SHIRO_RP_REFERENCE_SHIRO_PE的描述2.3.11.2.外键FK_SHIRO_RP_REFERENCE_SHIRO_PE的连接清单2.3.12.外键FK_SHIRO_RP_REFERENCE_SHIRO_RO 2.3.12.1.外键FK_SHIRO_RP_REFERENCE_SHIRO_RO的描述2.3.12.2.外键FK_SHIRO_RP_REFERENCE_SHIRO_RO的连接清单2.3.13.外键FK_SHIRO_RR_REFERENCE_SHIRO_RE 2.3.13.1.外键FK_SHIRO_RR_REFERENCE_SHIRO_RE的描述2.3.13.2.外键FK_SHIRO_RR_REFERENCE_SHIRO_RE的连接清单2.3.14.外键FK_SHIRO_RR_REFERENCE_SHIRO_RO 2.3.14.1.外键FK_SHIRO_RR_REFERENCE_SHIRO_RO的描述子表格shiro_role_resource父表格shiro_role外键列role_id2.3.14.2.外键FK_SHIRO_RR_REFERENCE_SHIRO_RO的连接清单2.3.15.外键FK_SHIRO_UR_REFERENCE_SHIRO_RO 2.3.15.1.外键FK_SHIRO_UR_REFERENCE_SHIRO_RO的描述2.3.15.2.外键FK_SHIRO_UR_REFERENCE_SHIRO_RO的连接清单2.3.16.外键FK_SHIRO_UR_REFERENCE_SHIRO_US 2.3.16.1.外键FK_SHIRO_UR_REFERENCE_SHIRO_US的描述2.3.16.2.外键FK_SHIRO_UR_REFERENCE_SHIRO_US的连接清单2.3.17.外键FK_SHIRO_US_REFERENCE_SHIRO_DE 2.3.17.1.外键FK_SHIRO_US_REFERENCE_SHIRO_DE的描述2.3.17.2.外键FK_SHIRO_US_REFERENCE_SHIRO_DE的连接清单2.4.视图清单2.4.1.视图view_shiro_user_resource2.4.1.1.视图view_shiro_user_resource的描述2.4.1.2.视图view_shiro_user_resource的SQL查询SELECTr. ID, r. TYPE, r.resource, r.priority, r.icon, r.parentid, r. NAME,r.css, r.target, r.is_out, er_id, NULL :: INTEGER AS group_idFROM((shiro_resource rLEFT JOIN shiro_role_resource rr ON ((rr.resource_id = r. ID)))LEFT JOIN shiro_user_role ur ON ((ur.role_id = rr.role_id)))UNION ALLSELECTr. ID, r. TYPE, r.resource, r.priority, r.icon, r.parentid, r. NAME,r.css, r.target, r.is_out, er_id, gr.group_idFROM(((shiro_resource rLEFT JOIN shiro_role_resource rr ON ((rr.resource_id = r. ID)))LEFT JOIN shiro_group_role gr ON ((gr.role_id = rr.role_id)))LEFT JOIN shiro_group_user gu ON ((gu.group_id = gr.group_id)) );;2.4.1.3.视图view_shiro_user_resource的表格清单2.4.1.4.视图view_shiro_user_resource的视图列清单2.4.2.视图view_shiro_user_role_permission2.4.2.1.视图view_shiro_user_role_permission的描述2.4.2.2.视图view_shiro_user_role_permission的SQL查询SELECTpr.id, , pr.type, pr.parent_id,pr.permission, pr.priority,pr.role_id ,er_id FROM (SELECT p.id, , p.type, p.parent_id,p.permission, p.priority,rp.role_id FROM shiro_permission p ,shiro_role_permission rp where p.id=rp.permission_idUNION allSELECT p.id, , p.type, p.parent_id,p.permission,p.priority,srr.role_id FROM shiro_permission p , shiro_resource_permission srp,shiro_role_resource srrwhere srp.permission_id=p."id" and srr.resource_id=srp.resource_id )pr ,(select gr.role_id,er_id from shiro_group_role gr,shiro_group_user guwhere gr.group_id=gu.group_idUNION allSELECT ur.role_id,er_id from shiro_user_role ur) gsurwhere pr.role_id=gsur.role_id2.4.2.3.视图view_shiro_user_resource的表格清单2.4.2.4.视图view_shiro_user_role_permission的视图列清单2.5.序列清单2.5.1.序列SHIRO_USER_ID_SEQ描述:系统用户表主键序列。