设备资源管理系统-角色管理

设备资源管理系统-角色管理

  • 用户、角色、权限关系

  

  权限:

   a:仪器设备管理

   b:设备校准检修

  c:设备购置计划

  d:

   e:

  .

  .

    .

  角色与权限:

    系统管理员:

    a;b;c;d;e;f;g;h;i;j;k;

    高级管理员:

    a;b;c;d;e;i;j;k;

    业务用户:

    a;b;f;g;h;i;

  结论:

    1、用户与角色是多对多的关系

  2、权限与角色是多对多的关系

  3、角色在三者之间的关系中起到承上启下的作用

  • 数据库设计

  用户表:

  用户ID                         用户姓名           登录名        所属单位

  402881e43           刘备             liubei           2(上海)

  1                              关羽             guanyu           1(北京)

   2                              张飞             zhangfei         1(北京)

  用户与角色的关联表:

  主键ID         用户ID                         角色ID         备注

      1       402881e43             1

     2               1                              2

    3               1                              1

  

  角色表:

     角色ID        角色名称

    1              系统管理员

     2              高级管理员

    3              业务用户

     4              普通用户

  角色与权限关联表:

    角色ID         权限code(集合)      备注

    1             abcdefghijk

     2             abcdeijk

    3             abfghi

  权限表:

  权限code       权限名称            父级节点权限code       父级节点权限名称

   a           仪器设备管理            drvie                  技术设施维护管理

  b           设备校准检修            drvie                  技术设施维护管理

  c           设备购置计划            drvie                  技术设施维护管理

  d           资料图纸管理            image                  技术资料图纸管理

  

    存放到Function.xml文件中文件形式,如图:

    

  建立2张关联表(用户与角色的关联表,角色与权限的关联表)

  • 角色管理首页

  操作:

  1、通过“角色类型”,查询数据字典,获取页面中的角色列表。

   2、读取Function.xml文件中所有的权限信息,并显示在页面上。(使用dom4j读取)

  部分代码:

    String parentCode = "";

    List<XmlObject> list = request.getAttribute("xmlList");

    for(int i=0;i<list.size;i++){

    XmlObject xmlObject = list.get(i);

    if(parentCode.equal(xmlObject.getParentCode())){

    System.out.println(xmlObject.getName());

    }

  //每次遍历先走else

  else{

   parentCode = xmlObject.getParentCode();

  System.out.println(xmlObject.getParentName());

    System.out.println(xmlObject.getName());

    }

}

  • 角色查询

  操作:

    权限分配:

    1、从页面中获取roleid的参数,使用roleid查询角色权限关联表,获取当前角色所具有的权限。

    2、读取Function.xml配置文件,获取系统所有的权限

     3、匹配:当前角色具有的权限与系统所有的权限进行匹配:

        如果匹配:则页面的复选框要选中

        如果不匹配:则页面的复选框不选中

        使用flag字段控制:如果flag=1,则表示页面复选框选中;如果flag=0,则表示页面复选框不选中。

    用户分配:

      1、从页面中获取roleid的参数,使用roleid查询用户角色关联表,获取当前角色所具有的用户。

     2、从用户表获取所有的在职员工

      3、匹配:当前角色下的用户与所有的在职用户进行匹配:

        如果匹配:则页面中复选框要选中

        如果不匹配:则页面中的复选框不选中

         使用roleflag字段控制:如果roleflag=1,则表示页面的复选框选中,如果roleflag=0,则表示页面复选框不选中(能否使用一条SQL语句完成上述1,2,3的操作)

  • 角色新增

  操作:

  1、从页面上获取roleid、选中的权限name=selectoper、选中的用户name=selectuser。

  2、保存角色和权限的关联表

     1)通过roleid查询角色权限关联表,

    如果存在记录,执行update()的操作

    如果不存在记录,执行save()的操作

  3、保存角色和用户的关联表

    1)通过roleid组织条件,删除用户角色关联表的所有匹配roleid的记录

    2)组织新增的用户和当前角色,向用户角色关联表中新增记录。

设备资源管理系统-角色管理

时间: 2024-12-08 11:36:36

设备资源管理系统-角色管理的相关文章

设备资源管理系统-用户管理

设备资源管理系统-用户管理 数据库设计 用户信息: 蜀国: 刘备(admin/admin),赋予超级管理员的角色. 12月1日,录入关羽的信息. 12月2日,录入张飞的信息 12月5日,张飞电话号换了,更新张飞的信息(诸葛亮更新) 2022,张飞退休了,删除张飞的信息. 特点: 是否删除:控制用户“假删除”字段. 初始状态是0,如果退休或者离职的时候设置是否删除字段为1. 注意: 1.在查询在职或者未退休的人员的时候,需要添加 where 是否删除=0. 2.如果查询已退休人员的时候,需要添加

设备资源管理系统-日志管理

设备资源管理系统-日志管理 数据库设计 日志管理在项目中的作用 * 记录系统的错误日志,便于管理员去维护和管理系统的安全.性能. * 在登录系统的操作中,也要添加日志,便于管理员查看当前系统的使用情况. * 使用日志可以记录当前数据的新增.修改.删除由哪些用户操作. * 使用者:admin/admin 超级管理员和公司领导 实现日志管理的方法: * 1.使用log4j,维护系统日志 * 2.数据库表的形式,维护系统日志 添加日志 操作 1.在系统XXXXXAction层中调用,传递2个参数 *

设备资源管理系统-项目介绍

设备资源管理系统: 一.技术设施维护管理: 1.设备购置计划:管理设备购置计划信息.在设备购置前需要经过领导的批准,如果领导批准此购置计划,可以操作“购置”,将会购买设备,并将此设备信息存放到仪器设备管理做维护:如果领导对此设备计划不予批准,则操作“计划顺延”,将此计划推置到明年显示.其中功能包括“导入”,可将大批量的数据以excel的格式进行导入. 2.仪器设备管理:管理检测中心所有的仪器设备,包括修改.删除操作,还有“导出”功能,将查询得到的数据以excel的格式导出,并实现excel字段的

设备资源管理系统-首页登录

设备资源管理系统-首页登录 操作: 1.获取页面中传递的登录名和登录密码 2.使用登录名查询用户表,查询是否存在记录: 如果存在(包括该用户的详细信息),往下继续执行,不存在,返回到index.jsp 3.从用户的详细信息中获取密码,判断密码是否为空,如果为空不能登录系统,跳转到index.jsp 4.使用页面中输入的密码与获取的用户详细信息的密码是否一致: 如果一致,说明匹配成功,则继续往下执行 如果不一致:返回index.jsp   5.使用session对象存放用户的详细信息.sessio

设备资源管理系统-进度条

设备资源管理系统-进度条 进度条的使用: 1.上传.下载的时候,可以使用进度条 2.文件的导入和导出的时候,可以使用进度条 3.对于大批量数据的操作的时候,可以使用进度条 4.对于数据的远程操作的时候,可以使用进度条 步骤: 1.在系统代办事宜中添加进度条 2.代码 <table id="load" width="700" border="0" align="center" bgcolor="#FAFAFA&q

设备资源管理系统-数据字典

设备资源管理系统-数据字典 数据库设计 用户信息表: 用户ID(主键)    姓名     年龄      性别        所属单位      住址           是否在职 1            张三     23         1           1        北京上地环岛          1 2            李四     22         2           2        上海浦东              1 3            王五 

设备资源管理系统-首页显示

设备资源管理系统-首页显示 流程 首页结构 设备资源管理系统-首页显示

设备资源管理系统-代办事宜

设备资源管理系统-代办事宜 数据库设计 待办事宜-首页功能 操作: 1.使用无参数的查询,查询所有的代办事宜的信息数据 2.PO对象的集合转换成VO对象的集合 3.将结果集对象放入到request对象,用于页面的展示 待办事宜-保存 操作: 1.从VO对象获取页面输入的表单值(站点运行情况.设备运行情况) 2.VO对象转换成PO对象 3.执行save的方法 待办事宜-首页显示 要求:显示当天的站点运行情况. 1.获取当前时间(格式是YYYY-MM-DD) 2.组织查询的语句条件 3.查询代办事宜

设备资源管理系统-DAO底层方法-查询

设备资源管理系统-DAO底层方法-查询 JSP页面 名称 input type="text" name="textName" 备注  input type="text" name="textRemark" 功能流程 部分语句 SELECT * FROM elec_text o        DAO层写的语句 WHERE o.textName LIKE '%张%'     Service层写的语句 AND o.textRemar