本帖最后由 xinxing126 于 2010-08-01 12:45:47 编辑

解决方案 »

  1.   

    不同角色可查询属于本用户或本用户下所属用户的信息关键在这里我一直无法突破我想(一次性查询)出所有自己包括下属的发布的信息列表~
    这个如何实现
    我发布的信息表里面保存的该用户的ID.查询的时候~比如销售经理不是先要低归出下属的信息~这样逐个查询吗?
    工作记入表
    标题          工作详细   UserID
     一共买200台   不知道      1   
      买出5台      不知道      2
      擦桌子       不知道      3
    用户表
    UserID   用户名   角色      级别
    1        老李     销售经理   0
    2        小张     销售员     1
    3        小毛     清洁工     2这样如何对工作记入表进行查询 
    比如 销售经理查询工作记入表,如何做呢~!??
      

  2.   

    一个用户表,一个权限表权限表中可自行增加或者修改或者删除权限,然后有个权限Id,用户表有个字段就是权限Id,相当于外键。然后用户登录,将用户名和权限信息保存在session中,然后那几个对权限有要求的页面,查询session中的权限信息,判断是否显示那些信息。
      

  3.   

    这个我知道的哦~!我目前的问题就是查询
    不同角色可查询属于本用户或本用户下所属用户的信息关键在这里我一直无法突破我想(一次性查询)出所有自己包括下属的发布的信息列表~
    这个如何实现
    我发布的信息表里面保存的该用户的ID.查询的时候~比如销售经理不是先要低归出下属的信息~这样逐个查询吗?
    工作记入表
    标题 工作详细 UserID
     一共买200台 不知道 1   
      买出5台 不知道 2
      擦桌子 不知道 3
    用户表
    UserID 用户名 角色 级别
    1 老李 销售经理 0
    2 小张 销售员 1
    3 小毛 清洁工 2这样如何对工作记入表进行查询  
    比如 销售经理查询工作记入表,如何做呢~!??
      

  4.   

    用框架啊,谁还去开发这个啊?哎
    http://www.redglove.net
      

  5.   

    if(User.IsInRole("总经理"))
    {
    ....
    }
    else if(User.IsInRole("销售经理"))
    {
    ....
    }
    else if(User.isInRole("销售员"))
    {
    ....
    }
    else
    {
    ....
    }
      

  6.   

    当然,一看这个结构就知道,面向对象设计师的做法是不使用一堆的if...else....,而是使用多态来解决。关于使用配置文件来配置程序,问题并不是在于技术上,因为你完全可以使用工厂方法来使得多态成为现实。
    主要是国内的OA在十几年前时髦过的将整个应用系统的所有权限配置使用一个矩阵表格、几千个配置选项,推给用户去维护,这使用和维护起来异常麻烦。当我希望一个人可以在论坛上进行管理,我就把这个人从人事系统中直接拖入我创建的论坛的控制面板上就成了,想想看,如果你都是这种与业务紧密相关的授权方式,相比于那种几千个格子的权限矩阵界面,用户会多么欢迎!
      

  7.   

    销售数据 (foreign key 人员id)+人员数据 (foreign key 角色id)
    +角色数据 (角色level)每次查询,可以根据CurrentUser的信息,判断该输出那些信息。
      

  8.   

    角色level高的可以查看角色Level低的!在加一个部门表 (foreign key 人员id)
      

  9.   

          其实,关于见表
    1.user
    2.roles
    3.power
    4.user_roles
    5.roles_power
    然后再登陆的时候让他们选角色吧,那样应该不是很难。当然角色是load的。
      

  10.   


    sql:
    select a.* from 工作记入表 a inner join 用户表 b on a.UserID = b.UserID where b.级别 <= 2如果是销售员则改成 where b.级别 <= 2 and b.级别 >= 1, 余类推
      

  11.   

    楼主要求的权限要求不高,不如就用Roles类算了,方便