Foxtable(狐表)用户栏目专家坐堂 → 求助,发了几次没发成功


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

主题:求助,发了几次没发成功

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


加好友 发短信
等级:六尾狐 帖子:1203 积分:7163 威望:0 精华:0 注册:2013/3/4 18:02:00
求助,发了几次没发成功  发帖心情 Post By:2015/4/3 17:53:00 [只看该作者]

二楼

[此贴子已经被作者于2015/4/3 17:53:36编辑过]

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


加好友 发短信
等级:六尾狐 帖子:1203 积分:7163 威望:0 精华:0 注册:2013/3/4 18:02:00
  发帖心情 Post By:2015/4/3 17:53:00 [只看该作者]

Dim vr As DataRow = DataTables("用户表").SQLFind("用户名 ='" & _user & "'")
Dim us As String = vr("用户名")
Dim gp As String =vr("用户组")
Dim zw As String = vr("职位")
Dim gs As String =vr("分公司")
If gp  = "开发者"
    Return True
Else
    Dim dt As DataTable = DataTables("授权表")
    Dim dr As DataRow =dt.Find("模块名称 = '系统设置' And 对象窗口  Is Null")
    If dr Is Nothing
        'MessageBox.Show("很抱歉,你无此权限!","提示!",MessageBoxButtons.OK,MessageBoxIcon.Warning)
        Return False
    ElseIf dr IsNot Nothing Then
        If dr.IsNull("被授权人") = False Then
            Dim nms() As String = dr("被授权人").Split("》")
            For Each nm As String In nms
                If nm = zw OrElse nm = us
Then '如果授权用户包括登录用户所属的分组或其用户名
                    Return True '返回True
                Else
                    MessageBox.Show("很抱歉,你无此权限!","提示!",MessageBoxButtons.OK,MessageBoxIcon.Warning)
                    Return False
                End If
            Next
        End If
    End If
End If
Return False

 

 

 

求助,这是按例子做的权限,标红的部分我用命令窗口执行后,发现如果nms有1个以上的时候,for...each执行后只能对第一个值进行对比

比如主管》经理》董事长,分割开字符后只能取到主管后就停止了,结果返回false,求大神指点


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


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

Dim vr As DataRow = DataTables("用户表").SQLFind("用户名 ='" & _user & "'")
Dim us As String = vr("用户名")
Dim gp As String =vr("用户组")
Dim zw As String = vr("职位")
Dim gs As String =vr("分公司")
If gp  = "开发者"
    Return True
Else
    Dim dt As DataTable = DataTables("授权表")
    Dim dr As DataRow =dt.Find("模块名称 = '系统设置' And 对象窗口  Is Null")
    If dr Is Nothing
        'MessageBox.Show("很抱歉,你无此权限!","提示!",MessageBoxButtons.OK,MessageBoxIcon.Warning)
        Return False
    ElseIf dr IsNot Nothing Then
        If dr.IsNull("被授权人") = False Then
            Dim nms() As String = dr("被授权人").Split("》")
            Dim flag As Boolean = False
            For Each nm As String In nms
                If nm = zw OrElse nm = us Then '如果授权用户包括登录用户所属的分组或其用户名
                    flag = True
                    Exit For
                End If
            Next
            If flag = True Then
                Return True
            Else
                MessageBox.Show("很抱歉,你无此权限!","提示!",MessageBoxButtons.OK,MessageBoxIcon.Warning)
                Return False
            End If
           
        End If
    End If
End If
Return False

 

 


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


加好友 发短信
等级:六尾狐 帖子:1203 积分:7163 威望:0 精华:0 注册:2013/3/4 18:02:00
  发帖心情 Post By:2015/4/3 18:06:00 [只看该作者]

谢谢,问题解决

 回到顶部