using Gs.DevApp.Properties;
|
using Gs.DevApp.ToolBox;
|
using Newtonsoft.Json;
|
using System;
|
using System.Data;
|
using System.Windows.Forms;
|
|
namespace Gs.DevApp.DevFrm.User
|
{
|
public partial class ViewRole : DevExpress.XtraEditors.XtraForm
|
{
|
|
private readonly string _userGuid;
|
|
public ViewRole(string userGuid)
|
{
|
InitializeComponent();
|
_userGuid = userGuid;
|
|
GetTree(_userGuid);
|
}
|
/// <summary>
|
/// 查看用户的权限集合
|
/// </summary>
|
/// <param name="userGuid"></param>
|
private void GetTree(string userGuid)
|
{
|
trv.Nodes.Clear();
|
var imageList = new ImageList();
|
imageList.Images.Add("icon0", Resources.addfooter_32x32);
|
imageList.Images.Add("icon1", Resources.listmultilevel_16x16);
|
imageList.Images.Add("icon2", Resources.addcalculatedfield_16x16);
|
// trv.ImageList = imageList;
|
var _obj = new
|
{
|
userGuid
|
};
|
var strReturn = "";
|
try
|
{
|
strReturn = UtilityHelper.HttpPost("", "Role/GetUserMenuAction",
|
JsonConvert.SerializeObject(_obj));
|
var dd = UtilityHelper.ReturnToTablePage(strReturn);
|
var dt = dd.rtnData.list;
|
var drGrp = dt.Select("upGuid='' or upGuid is null");
|
|
// 使用DefaultView.Sort对筛选后的结果进行排序
|
DataTable sortedTable = drGrp.CopyToDataTable();
|
sortedTable.DefaultView.Sort = "idx ASC";
|
DataTable result = sortedTable.DefaultView.ToTable();
|
var _gou = "✔ ";
|
foreach (DataRow _dy in result.Rows)
|
{
|
var node = new TreeNode(); //定义结点
|
node.Text = (_dy["isCk"].ToString() == "1" ? _gou : "") +
|
_dy["name"]; //为结点赋值
|
node.Name = _dy["guid"].ToString();
|
node.ImageIndex = 0;
|
node.Checked = _dy["isCk"].ToString() == "1" ? true : false;
|
var drItem = dt.Select("upGuid='" + _dy["guid"] + "'");
|
foreach (var _dy2 in drItem)
|
{
|
var node22 = new TreeNode(); //定义结点
|
node22.Text =
|
(_dy2["isCk"].ToString() == "1" ? _gou : "") +
|
_dy2["name"]; //为结点赋值
|
node22.Name = _dy2["guid"].ToString();
|
node22.ImageIndex = 1;
|
node22.Checked = _dy2["isCk"].ToString() == "1" ? true : false;
|
var drItem33 = dt.Select("upGuid='" + _dy2["guid"] + "'");
|
foreach (var _dy3 in drItem33)
|
{
|
var node33 = new TreeNode(); //定义结点
|
node33.Text =
|
(_dy3["isCk"].ToString() == "1" ? _gou : "") +
|
_dy3["name"]; //为结点赋值
|
node33.Name = _dy3["guid"].ToString();
|
node33.ImageIndex = 2;
|
node33.Checked = _dy3["isCk"].ToString() == "1" ? true : false;
|
node22.Nodes.Add(node33);
|
}
|
node22.Collapse();
|
node.Nodes.Add(node22);
|
}
|
node.Expand();
|
trv.Nodes.Add(node);
|
}
|
}
|
catch (Exception ex)
|
{
|
MsgHelper.Warning("提示:" + ex.Message);
|
}
|
}
|
}
|
}
|