From 6c4f48c41bca123db3c3aac7955b785569112542 Mon Sep 17 00:00:00 2001
From: lu <99954486@qq.com>
Date: 星期五, 29 十一月 2024 13:53:38 +0800
Subject: [PATCH] 基础信息
---
DevApp/Gs.DevApp/DevFrm/User/UserSelectRole.cs | 189 +++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 189 insertions(+), 0 deletions(-)
diff --git a/DevApp/Gs.DevApp/DevFrm/User/UserSelectRole.cs b/DevApp/Gs.DevApp/DevFrm/User/UserSelectRole.cs
new file mode 100644
index 0000000..1ca4a51
--- /dev/null
+++ b/DevApp/Gs.DevApp/DevFrm/User/UserSelectRole.cs
@@ -0,0 +1,189 @@
+锘縰sing System;
+using System.Data;
+using System.Text;
+using System.Windows.Forms;
+using DevExpress.XtraEditors;
+using Gs.DevApp.Properties;
+using Gs.DevApp.ToolBox;
+using Newtonsoft.Json;
+
+namespace Gs.DevApp.DevFrm.User
+{
+ public partial class UserSelectRole : XtraForm
+ {
+ private readonly string _userGuid;
+
+ public UserSelectRole(string userGuid)
+ {
+ InitializeComponent();
+ _userGuid = userGuid;
+ GetCheckList();
+ btnSave.Click += BtnSave_Click;
+ GetTree(_userGuid);
+ }
+
+ private void BtnSave_Click(object sender, EventArgs e)
+ {
+ if (string.IsNullOrEmpty(_userGuid))
+ {
+ MsgHelper.Warning("璇峰厛閫夋嫨浣犺鎿嶄綔鐨勭敤鎴凤紒");
+ return;
+ }
+
+ if (!MsgHelper.AskQuestion("浣犻�夋嫨浜嗐��" + ckList.CheckedItems.Count +
+ "銆戜釜瑙掕壊锛岀‘瀹氳缃潈闄愬悧锛�"))
+ return;
+ var roleLst = new StringBuilder();
+ foreach (DataRowView box in ckList.CheckedItems)
+ {
+ if (roleLst.Length > 0)
+ roleLst.Append(",");
+ roleLst.Append(box.Row["guid"]);
+ }
+
+ var _obj = new
+ {
+ userGuid = _userGuid,
+ roleLst = roleLst.ToString()
+ };
+ var strJson = "";
+ try
+ {
+ strJson = UtilityHelper.HttpPost("", "Role/SetUserRole",
+ JsonConvert.SerializeObject(_obj));
+ var _rtn = UtilityHelper.ReturnToDynamic(strJson);
+ MsgHelper.Warning("鎻愮ず锛�" + _rtn.rtnData.outMsg);
+ Close();
+ }
+ catch (Exception ex)
+ {
+ MsgHelper.Warning("鎻愮ず锛�" + ex.Message);
+ }
+ }
+
+ private void GetCheckList()
+ {
+ var _obj = new
+ {
+ userGuid = _userGuid
+ };
+ var strReturn = "";
+ try
+ {
+ strReturn = UtilityHelper.HttpPost("", "Role/GetUserRole",
+ JsonConvert.SerializeObject(_obj));
+ var dd = UtilityHelper.ReturnToList(strReturn);
+ var dt = dd.rtnData;
+ ckList.DataSource = dt;
+ ckList.ValueMember = "guid";
+ ckList.DisplayMember = "roleName";
+ foreach (DataRow row in dt.Rows)
+ {
+ // 鍋囪Condition鏄喅瀹氭槸鍚﹂�変腑鐨勫瓧娈�
+ var isChecked = (bool)row["isCk"]; // 杞崲涓哄疄闄呯殑绫诲瀷
+ var index = ckList.FindString(row["roleName"].ToString());
+ if (index != ListBox.NoMatches)
+ ckList.SetItemChecked(index, isChecked);
+ }
+ }
+ catch (Exception ex)
+ {
+ MsgHelper.Warning("鎻愮ず锛�" + ex.Message);
+ }
+ }
+
+
+ private void GetTree(string userGuid)
+ {
+ trv.Nodes.Clear();
+ var imageList = new ImageList();
+ imageList.Images.Add("icon0", Resources.publicfix_32x32);
+ imageList.Images.Add("icon1", Resources.addfooter_32x32);
+ imageList.Images.Add("icon2", Resources.listmultilevel_16x16);
+ imageList.Images.Add("icon3", 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");
+ var _gou = "鉁� ";
+ foreach (var _dy in drGrp)
+ {
+ var _orgGuid = _dy["guid"] + "&";
+ 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"] +
+ "' and orgGuid='" + _dy["guid"] +
+ "'");
+ foreach (var _dy2 in drItem)
+ {
+ var node22 = new TreeNode(); //瀹氫箟缁撶偣
+ node22.Text =
+ (_dy2["isCk"].ToString() == "1" ? _gou : "") +
+ _dy2["name"]; //涓虹粨鐐硅祴鍊�
+ node22.Name = _orgGuid + _dy2["guid"];
+ node22.ImageIndex = 1;
+ node22.Checked = _dy2["isCk"].ToString() == "1"
+ ? true
+ : false;
+ var drItem33 = dt.Select("upGuid='" + _dy2["guid"] +
+ "' and orgGuid='" +
+ _dy["guid"] + "'");
+ foreach (var _dy3 in drItem33)
+ {
+ var node33 = new TreeNode(); //瀹氫箟缁撶偣
+ node33.Text =
+ (_dy3["isCk"].ToString() == "1" ? _gou : "") +
+ _dy3["name"]; //涓虹粨鐐硅祴鍊�
+ node33.Name = _orgGuid + _dy3["guid"];
+ node33.ImageIndex = 2;
+ node33.Checked = _dy3["isCk"].ToString() == "1"
+ ? true
+ : false;
+ var drItem44 = dt.Select("upGuid='" + _dy3["guid"] +
+ "' and orgGuid='" + _dy["guid"] + "'");
+ foreach (var _dy4 in drItem44)
+ {
+ var node44 = new TreeNode(); //瀹氫箟缁撶偣
+ node44.Text =
+ (_dy4["isCk"].ToString() == "1"
+ ? _gou
+ : "") + _dy4["name"]; //涓虹粨鐐硅祴鍊�
+ node44.Name = _orgGuid + _dy4["guid"];
+ node44.ImageIndex = 3;
+ node44.Checked = _dy4["isCk"].ToString() == "1"
+ ? true
+ : false;
+ node33.Nodes.Add(node44);
+ }
+
+ node22.Nodes.Add(node33);
+ }
+
+ node22.Expand();
+ node.Nodes.Add(node22);
+ }
+
+ node.Expand();
+ trv.Nodes.Add(node);
+ }
+ }
+ catch (Exception ex)
+ {
+ MsgHelper.Warning("鎻愮ず锛�" + ex.Message);
+ }
+ }
+ }
+}
\ No newline at end of file
--
Gitblit v1.9.3