Foxtable(狐表)用户栏目专家坐堂 → [求助]目录树授权出错


  共有2288人关注过本帖树形打印复制链接

主题:[求助]目录树授权出错

帅哥哟,离线,有人找我吗?
sxy_123456
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:188 积分:1613 威望:0 精华:0 注册:2013/5/21 17:44:00
[求助]目录树授权出错  发帖心情 Post By:2014/10/11 16:39:00 [只看该作者]

我用学习例子做了一个目录树授权,但切换用户后提示错误
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目5.zip

图片点击可在新窗口打开查看此主题相关图片如下:qq截图20141011164345.png
图片点击可在新窗口打开查看

[此贴子已经被作者于2014-10-11 16:43:16编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
Bin
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2014/10/11 16:49:00 [只看该作者]

切换用户没出错啊

 回到顶部
帅哥哟,离线,有人找我吗?
sxy_123456
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:188 积分:1613 威望:0 精华:0 注册:2013/5/21 17:44:00
  发帖心情 Post By:2014/10/11 16:52:00 [只看该作者]

我在菜单做一个按钮,点击后出错
图片点击可在新窗口打开查看此主题相关图片如下:qq截图20141011165420.png
图片点击可在新窗口打开查看
[此贴子已经被作者于2014-10-11 16:53:55编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
sxy_123456
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:188 积分:1613 威望:0 精华:0 注册:2013/5/21 17:44:00
  发帖心情 Post By:2014/10/11 17:10:00 [只看该作者]

能帮我看看吗?

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/10/12 10:02:00 [只看该作者]

 授权函数这样写

 

If User.Type <>  UserTypeEnum.User Then ' 如果是开发者或者管理员
    Return True '则具备所有权限
End If
Dim dt As DataTable = DataTables("授权")
Dim dr As DataRow

'然后判断权限的授权用户是否包括此用户或此用户所属的分组
If Args(1) = "" Then
    '首先判断分组的授权用户是否包括此用户或此用户所属的分组
    dr = dt.Find("分组 = '" & args(0) & "' And 权限 Is Null" )
    If dr Is Nothing  Then
        MessageBox.show("不存在名为""" & args(0) & "分组!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
        Return False
    End If
    If dr.IsNull("用户") = False Then
        Dim nms() As String = dr("用户").Split(",")
        For Each nm As String In nms
            If nm = User.Group OrElse nm = User.Name Then '如果授权用户包括登录用户所属的分组或其用户名
                Return True '返回True
            End If
        Next
    End If
    Return  False
Else
   
    dr = dt.Find("分组 = '" & args(0) & "' And 权限 = '" & args(1) & "'")
    If dr Is Nothing  Then
        MessageBox.show("不存在名为""" & args(1) & "权限!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
        Return False
    End If
    If dr.IsNull("用户") = False Then
        Dim nms() As String = dr("用户").Split(",")
        For Each nm As String In nms
            If nm = User.Group OrElse nm = User.Name Then '如果授权用户包括登录用户所属的分组或其用户名
                Return True '返回True
            End If
        Next
    End If
    Return False
End If


 回到顶部