Foxtable(狐表)用户栏目专家坐堂 → 按用户部门权限从后台追载相应表数据


  共有1945人关注过本帖平板打印复制链接

主题:按用户部门权限从后台追载相应表数据

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


加好友 发短信
等级:三尾狐 帖子:646 积分:5240 威望:0 精华:0 注册:2018/5/19 22:27:00
按用户部门权限从后台追载相应表数据  发帖心情 Post By:2018/8/6 23:28:00 [只看该作者]

我想通过判断登录系统的用户,如果登录用户职位为“管理者”从部门信息中遍历他的当前部门和下属部门并进行加载。如果登录用职位为“职员”仅 追载他的当前部门即可,不追载下属部门。
下面代码麻烦帮忙看下是否能够实现

Dim dr As DataRow = DataTables("用户信息").find("用户名 = '" & 用户名 & "'")  '找到当前登录者所在的行
Dim sy As DataRow
Dim Filter As String
If dr("职位") = "管理者" Then
Dim cjs As New List(Of String) '定义层级数组
cjs = DataTables("部门信息").GetValues("层级")
For Each cj As String In cjs 
      If  cj.ContainsValue("dr("层级")") = True Then   '找到登录者的下属部门
       sy = DataTables("部门信息").SQLFind("[层级] = '" & cj & "'")  '找出下属部门载部门信息所在的行
       Filter = "当前所在部门 = '" & sy("所属部门") & "' And 是否可用 = 1"
       'DataTables("溯源码").LoadFilter = Filter
       ' DataTables("溯源码").Load()
       DataTables("溯源码").AppendLoad (Filter, False)
       End If
Next
     Else If dr("职位") = "职员" Then
     Filter = "当前所在部门 = '" & dr("所属部门") & "'"
     DataTables("溯源码").AppendLoad (Filter, False)
     End If
End If

“用户信息”表

图片点击可在新窗口打开查看此主题相关图片如下:qq截图20180806232638.png
图片点击可在新窗口打开查看
“部门管理”表

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


[此贴子已经被作者于2018/8/6 23:34:11编辑过]

 回到顶部