以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]授權程式碼問題 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=124776) |
-- 作者:ken66 -- 发布时间:2018/9/13 15:55:00 -- [求助]授權程式碼問題 \'If User.Type <> UserTypeEnum.User Then \' 如果是开发者或者管理员 \'Return True \'则具备所有权限 \'End If Dim dt As DataTable = DataTables("Authorize") Dim dr As DataRow \'首先判断分组的授权用户是否包括此用户或此用户所属的分组 dr = dt.Find("Group = \'" & args(0) & "\' And Permission Is Not Null" ) \'dr = dt.Find("Group = \'" & args(0) & "\'" ) If dr Is Nothing Then MessageBox.show("不存在名為『" & args(0) & "』作業!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information) Return False End If If dr.IsNull("Loginname") = False Then Dim nms() As String = dr("Loginname").Split(",") For Each nm As String In nms If nm = _LoginName Then \'如果授权用户包括登录用户所属的分组或其用户名 Return True \'返回True End If Next End If \'然后判断权限的授权用户是否包括此用户或此用户所属的分组 If Args(1) = "" Then Return False End If dr = dt.Find("Group = \'" & args(0) & "\' And Permission = \'" & args(1) & "\'") If dr Is Nothing Then MessageBox.show("不存在名為『" & args(1) & "』權限!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information) Return False End If If dr.IsNull("Loginname") = False Then Dim nms() As String = dr("Loginname").Split(",") For Each nm As String In nms If nm = _LoginName Then \'如果授权用户包括登录用户所属的分组或其用户名 Return True \'返回True End If Next End If Return False
|
-- 作者:有点蓝 -- 发布时间:2018/9/13 16:00:00 -- Dim dt As DataTable = DataTables("Authorize") Dim dr As DataRow \'然后判断权限的授权用户是否包括此用户或此用户所属的分组 If Args(1) = "" Then dr = dt.Find("Group = \'" & args(0) & "\' And Permission Is Null" ) Else dr = dt.Find("Group = \'" & args(0) & "\' And Permission = \'" & args(1) & "\'") End If If dr Is Nothing Then MessageBox.show("不存在名為『" & args(1) & "』權限!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information) Return False End If If dr.IsNull("Loginname") = False Then Dim nms() As String = dr("Loginname").Split(",") For Each nm As String In nms If nm = _LoginName Then \'如果授权用户包括登录用户所属的分组或其用户名 Return True \'返回True End If Next End If Return False
|