以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  看看这样理解对吗 权限问题  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=131300)

--  作者:18365900066
--  发布时间:2019/2/22 14:57:00
--  看看这样理解对吗 权限问题
请教下,是不是点击 青岛大学店,然后右边的权限 勾选 上以后,
会出现在  用户的对应的列中。 
 然后我在编辑“授权表”,在写分组后面的权限代码设置权限。
这样  按照  我的用户表  中的登录名登录以后,就会实现对应的权限了

谢谢
图片点击可在新窗口打开查看此主题相关图片如下:1122.png
图片点击可在新窗口打开查看
[此贴子已经被作者于2019/2/22 14:58:37编辑过]

--  作者:有点蓝
--  发布时间:2019/2/22 15:51:00
--  
这里只是把用户和权限关联到一起,然后存储到授权表中,也就是说我们只是知道了哪个用户有什么权限。

用户登录后,每个需要控制权限的地方都还要到这个授权表查询是否有权限的,比如项目事件LoadUserSetting中,加入如下代码:

For Each t As Table In Tables
    t.Visible = 
True
    t.AllowEdit = 
true
    For Each c As Col In t.Cols
        c.Visible = 
True
        c.AllowEdit = 
True
    Next

Next
Tables
("授权表").Visible = (User.Type <> UserTypeEnum.User )
If
 User.Type = UserTypeEnum.User Then
    For Each dr As DataRow In DataTables("授权表").Select("用户名 = \'" & User.Name & "\'" )
        If
 dr.IsNull("列名"
Then
        
    Tables(dr("表名")).Visible = Not dr("不可见")
            Tables
(dr("表名")).AllowEdit = Not dr("不可编辑")

        Else
            
Tables(dr("表名")).Cols(dr("列名")).Visible = Not dr("不可见")
            Tables
(dr("表名")).Cols(dr("列名")).AllowEdit = Not dr("不可编辑"
        End
 
If
    Next
End
 
If


--  作者:18365900066
--  发布时间:2019/2/22 16:11:00
--  
图片点击可在新窗口打开查看图片点击可在新窗口打开查看图片点击可在新窗口打开查看图片点击可在新窗口打开查看图片点击可在新窗口打开查看图片点击可在新窗口打开查看谢谢您有点蓝老师,辛苦您了。一下子清晰明了了。谢谢