Rss & SiteMap

Foxtable(狐表) http://www.foxtable.com

新一代数据库软件,完美融合Access、Foxpro、Excel、vb.net之优势,人人都能掌握的快速软件开发工具!
共5 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

标题:[求助]权限管理

1楼
qq51837000 发表于:2024/12/19 15:51:00

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

导航栏中是各个表的链接,公共变量_UserDaoHang是登录用户可浏览的各链接的名称字符串
我做了个用户切换功能,使用用户登录窗口,代码如下,但直接切换用户后浏览权限没有变换过来
每次启动程序时浏览权限都是正常的,请老师帮查一下是不是我的代码哪里有问题?


登录按钮代码:
Dim ZH As WinForm.TextBox = e.Form.Controls("TextBox_账号")
Dim MM As WinForm.TextBox = e.Form.Controls("TextBox_密码")
Dim GB As WinForm.Button = e.Form.Controls("Button_关闭")

'1登录验证
If ZH.Text = "" Then
    Messagebox.show("登录帐号不能为空!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information)
    Return
End If

'2检查账号是否正确   _UserTable为启动时生成的用户表的临时表
Dim fr As DataRow = _UserTable.Find("[登录账号] ='" & ZH.Text & "'")
If fr Is Nothing Then
    MessageBox.show("账号或密码错误!", "提示")
    Return
End If

'3检查账号是否停用
If fr("停用状态") = True Then
    MessageBox.show("账号已被停用,请联系管理员", "提示")
    Return
End If

'4检查密码是否正确
If fr("登录密码") = MM.Text Then
    '5密码正确就登录并赋值给用户变量
    _UserID = fr("用户ID")
    _UserName = fr("用户姓名")
    _UserGongSi = fr("公司")
    _UserBuMen = fr("部门")
    _UserZBM = fr("子部门")
    _UserBMFenZu = fr("部门分组") 
    _UserJueSe = fr("用户角色")
    _UserZhiNeng = fr("用户职能")
    _UserFenZu = fr("用户分组")
    _UserZhangHao = fr("登录账号")
    _UserDaoHang = fr("导航可见")
    
    fr("最后登录时间") = Date.Now
    fr("登录次数") += 1 
    fr.save 
    
    e.Sender.Enabled = False
    MM.Enabled = False
    ZH.Enabled = False
    GB.Enabled = False
    
    Dim pb As WinForm.ProgressBar = e.Form.Controls("进度条")
    pb.Visible = True
    pb.Minimum = 0
    pb.Maximum = 100
    pb.Value = 1
    
    e.Form.Controls("Button_登录").Text = "登录中……"
    Application.DoEvents()
    
    pb.Value = 99

    MainTable = Tables("首页")
    If Forms("左导航").Opened Then Forms("左导航").Close '''''关闭导航是为切换用户时重新分配权限
    Forms("上横幅").Show()
    Forms("左导航").Show()
    
    e.Form.Close
    
Else
    MessageBox.show("账号或密码错误!", "提示")
End If
2楼
有点蓝 发表于:2024/12/19 16:14:00
到"左导航"afterload事件代码里调试。看看切换用户后,权限是否有问题
3楼
qq51837000 发表于:2024/12/19 16:22:00
上图就是“左导航”窗口的afterload事件代码,切换后权限没有变化,还是上一个用户的权限
[此贴子已经被作者于2024/12/19 16:29:43编辑过]
4楼
有点蓝 发表于:2024/12/19 16:31:00
所以让您添加调试,调试查看每一行代码执行的结果
5楼
qq51837000 发表于:2024/12/19 16:43:00
找到原因了,原来是开发者账号登录的
共5 条记录, 每页显示 10 条, 页签: [1]

Copyright © 2000 - 2018 foxtable.com Tel: 4000-810-820 粤ICP备11091905号

Powered By Dvbbs Version 8.3.0
Processed in .03320 s, 2 queries.