以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  目录树授权  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=109942)

--  作者:xiaohuli
--  发布时间:2017/11/23 12:41:00
--  目录树授权


图片点击可在新窗口打开查看此主题相关图片如下:1.png
图片点击可在新窗口打开查看
老师,如上图所示,我想实现一级和二级用/连接,但每一个二级用逗号分开,eg:订单管理/批准订单,订单管理/审核订单等.l

例子在此.

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:目录树形式的授权改版1 .foxdb


--  作者:有点甜
--  发布时间:2017/11/23 14:45:00
--  
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:目录树形式的授权改版1 .foxdb


--  作者:xiaohuli
--  发布时间:2017/11/24 11:49:00
--  

老师,这个例子还有个问题,目前只有当一级和二级节点都选择后才能将选择的节点数据填入到数据表中,但我希望能实现当选择了一级节点,二级节点一个都没选的时候就把一级节点的数据填入到表中,如果有一个二级节点选择了,那么数据表中存入的数据就是一级节点/二级节点.


--  作者:有点甜
--  发布时间:2017/11/24 12:21:00
--  

Dim trv1 As WinForm.TreeView = e.Form.Controls("TreeView1")
Dim trv2 As WinForm.TreeView = e.Form.Controls("TreeView2")
Dim nd1 As WinForm.TreeNode = trv1.SelectedNode
Dim dr As DataRow

If nd1.Level = 0 Then
    dr = DataTables("角色管理").Find("角色名称 = \'" & nd1.Name & "\'")
End If
If dr IsNot Nothing Then
    Dim nms As String
    For Each nd2 As WinForm.TreeNode In trv2.Nodes
        For Each nd3 As WinForm.TreeNode In nd2.Nodes
            If nd3.Checked Then
                nms &= "," & nd2.name
                nms  = nms & "/" &  nd3.Name
            End If
        Next
        If nd2.Checked AndAlso nms = "" Then
            nms = nd2.name
        End If
    Next
    If nms > "" Then
        dr("授权集合") = nms.Trim(",")
    Else
        dr("授权集合") = Nothing
    End If
End If


--  作者:xiaohuli
--  发布时间:2017/11/24 12:24:00
--  

谢谢老师.


--  作者:xiaohuli
--  发布时间:2017/11/24 14:45:00
--  

老师,在请教个问题,


图片点击可在新窗口打开查看此主题相关图片如下:2.png
图片点击可在新窗口打开查看
如图所示,我现在一级的4个选项都选中了,第一个一级的两个二级节点也选中了,但数据表中存入的只有选中了二级的节点的数据,一级的其他三个节点的数据没存入,只要选中的都希望能存入到表中.

希望存入的数据是这样的,订单管理/批准订单,订单管理/审核订单,分组2,生产管理,业务管理

[此贴子已经被作者于2017/11/24 14:45:58编辑过]

--  作者:有点甜
--  发布时间:2017/11/24 15:24:00
--  
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:目录树形式的授权改版1 (1).foxdb


--  作者:xiaohuli
--  发布时间:2017/11/24 16:24:00
--  

老师谢谢了,我知道如何解决了

[此贴子已经被作者于2017/11/24 16:25:58编辑过]

--  作者:xiaohuli
--  发布时间:2017/11/28 12:18:00
--  

老师,上述例子中目录树授权的时候,能否不清空以前的授权记录,直接在此基础上追加.我目前的授权是有两个目录树,两个目录树的记录都会在同一个字段中存储,比如我通过第一个目录树授权的记录保存了,通过第二个目录树授权的时候,将通过第一个目录树授权的记录自动清空了,然后出现的是第二个目录树的选择节点的记录,我希望授权的时候,将以前的授权记录不要清空,只是在此基础上追加就可以.

[此贴子已经被作者于2017/11/28 12:18:21编辑过]

--  作者:有点甜
--  发布时间:2017/11/28 12:30:00
--  

1、你可以分开两列分别设置;

 

2、在本来的基础上增减这种比较麻烦,无法确定哪个属于哪个目录树的。