From bd06bb837fa0c7edeeae56cb0fe4fb844f53fb2f Mon Sep 17 00:00:00 2001
From: lu <99954486@qq.com>
Date: 星期三, 23 十月 2024 16:42:34 +0800
Subject: [PATCH] 修改了报表设计器

---
 DevApp/Gs.DevApp/DevFrm/User/UserSelectRole.cs |  168 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 168 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..1ec99af
--- /dev/null
+++ b/DevApp/Gs.DevApp/DevFrm/User/UserSelectRole.cs
@@ -0,0 +1,168 @@
+锘縰sing DevExpress.XtraEditors;
+using Gs.DevApp.Entity;
+using Gs.DevApp.ToolBox;
+using Newtonsoft.Json;
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+
+namespace Gs.DevApp.DevFrm.User
+{
+    public partial class UserSelectRole : DevExpress.XtraEditors.XtraForm
+    {
+        private string _userGuid;
+        public UserSelectRole(string userGuid)
+        {
+            InitializeComponent();
+            this._userGuid = userGuid;
+            GetCheckList();
+            btnSave.Click += BtnSave_Click;
+            GetTree(_userGuid);
+        }
+
+        private void BtnSave_Click(object sender, EventArgs e)
+        {
+            if (string.IsNullOrEmpty(_userGuid))
+            {
+                ToolBox.MsgHelper.Warning("璇峰厛閫夋嫨浣犺鎿嶄綔鐨勭敤鎴凤紒");
+                return;
+            }
+            if (!MsgHelper.AskQuestion("浣犻�夋嫨浜嗐��" + ckList.CheckedItems.Count.ToString() + "銆戜釜瑙掕壊锛岀‘瀹氳缃潈闄愬悧锛�"))
+                return;
+            System.Text.StringBuilder roleLst = new StringBuilder();
+            foreach (DataRowView box in ckList.CheckedItems)
+            {
+                if (roleLst.Length > 0)
+                    roleLst.Append(",");
+                roleLst.Append(box.Row["guid"].ToString());
+            }
+            var _obj = new
+            {
+                userGuid = _userGuid,
+                roleLst = roleLst.ToString(),
+            };
+            string strJson = "";
+            try
+            {
+                strJson = UtilityHelper.HttpPost("", "Role/SetUserRole", JsonConvert.SerializeObject(_obj));
+                ReturnModel<dynamic> _rtn = ToolBox.UtilityHelper.ReturnToDynamic(strJson);
+                ToolBox.MsgHelper.Warning("鎻愮ず锛�" + _rtn.rtnData.outMsg);
+                this.Close();
+            }
+            catch (Exception ex)
+            {
+                ToolBox.MsgHelper.Warning("鎻愮ず锛�" + ex.Message);
+            }
+        }
+
+        private void GetCheckList()
+        {
+            var _obj = new
+            {
+                userGuid = this._userGuid,
+            };
+            string strReturn = "";
+            try
+            {
+                strReturn = UtilityHelper.HttpPost("", "Role/GetUserRole", JsonConvert.SerializeObject(_obj));
+                ReturnModel<DataTable> dd = UtilityHelper.ReturnToList(strReturn);
+                DataTable dt = dd.rtnData;
+                this.ckList.DataSource = dt;
+                this.ckList.ValueMember = "guid";
+                this.ckList.DisplayMember = "roleName";
+                foreach (DataRow row in dt.Rows)
+                {
+                    // 鍋囪Condition鏄喅瀹氭槸鍚﹂�変腑鐨勫瓧娈�
+                    bool isChecked = (bool)row["isCk"]; // 杞崲涓哄疄闄呯殑绫诲瀷
+                    int index = ckList.FindString(row["roleName"].ToString());
+                    if (index != ListBox.NoMatches)
+                    {
+                        ckList.SetItemChecked(index, isChecked);
+                    }
+                }
+            }
+            catch (Exception ex)
+            {
+                ToolBox.MsgHelper.Warning("鎻愮ず锛�" + ex.Message);
+            }
+        }
+
+
+        private void GetTree(string userGuid)
+        {
+            trv.Nodes.Clear();
+            ImageList imageList = new ImageList();
+            imageList.Images.Add("icon0", Properties.Resources.publicfix_32x32);
+            imageList.Images.Add("icon1", Properties.Resources.addfooter_32x32);
+            imageList.Images.Add("icon2", Properties.Resources.listmultilevel_16x16);
+            imageList.Images.Add("icon3", Properties.Resources.addcalculatedfield_16x16);
+            trv.ImageList = imageList;
+            var _obj = new
+            {
+                userGuid = userGuid,
+            };
+            string strReturn = "";
+            try
+            {
+                strReturn = UtilityHelper.HttpPost("", "Role/GetUserMenuAction", JsonConvert.SerializeObject(_obj));
+                ReturnModel<PageListModel> dd = UtilityHelper.ReturnToTablePage(strReturn);
+                DataTable dt = dd.rtnData.list;
+                DataRow[] drGrp = dt.Select("upGuid='' or upGuid is null");
+                string _gou = "鉁� ";
+                foreach (DataRow _dy in drGrp)
+                {
+                    string _orgGuid = _dy["guid"].ToString() + "&";
+                    TreeNode node = new TreeNode();//瀹氫箟缁撶偣
+                    node.Text =  (_dy["isCk"].ToString() == "1" ? _gou : "") + _dy["name"].ToString();//涓虹粨鐐硅祴鍊�
+                    node.Name = _dy["guid"].ToString();
+                    node.ImageIndex = 0;
+                    node.Checked = (_dy["isCk"].ToString() == "1" ? true : false);
+                    DataRow[] drItem = dt.Select("upGuid='" + _dy["guid"].ToString() + "' and orgGuid='" + _dy["guid"].ToString() + "'");
+                    foreach (DataRow _dy2 in drItem)
+                    {
+                        TreeNode node22 = new TreeNode();//瀹氫箟缁撶偣
+                        node22.Text = (_dy2["isCk"].ToString() == "1" ? _gou : "") + _dy2["name"].ToString();//涓虹粨鐐硅祴鍊�
+                        node22.Name = _orgGuid + _dy2["guid"].ToString();
+                        node22.ImageIndex = 1;
+                        node22.Checked = (_dy2["isCk"].ToString() == "1" ? true : false);
+                        DataRow[] drItem33 = dt.Select("upGuid='" + _dy2["guid"].ToString() + "' and orgGuid='" + _dy["guid"].ToString() + "'");
+                        foreach (DataRow _dy3 in drItem33)
+                        {
+                            TreeNode node33 = new TreeNode();//瀹氫箟缁撶偣
+                            node33.Text = (_dy3["isCk"].ToString() == "1" ? _gou : "") + _dy3["name"].ToString();//涓虹粨鐐硅祴鍊�
+                            node33.Name = _orgGuid + _dy3["guid"].ToString();
+                            node33.ImageIndex = 2;
+                            node33.Checked = (_dy3["isCk"].ToString() == "1" ? true : false);
+                            DataRow[] drItem44 = dt.Select("upGuid='" + _dy3["guid"].ToString() + "' and orgGuid='" + _dy["guid"].ToString() + "'");
+                            foreach (DataRow _dy4 in drItem44)
+                            {
+                                TreeNode node44 = new TreeNode();//瀹氫箟缁撶偣
+                                node44.Text = (_dy4["isCk"].ToString() == "1" ? _gou : "") + _dy4["name"].ToString();//涓虹粨鐐硅祴鍊�
+                                node44.Name = _orgGuid + _dy4["guid"].ToString();
+                                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)
+            {
+                ToolBox.MsgHelper.Warning("鎻愮ず锛�" + ex.Message);
+            }
+        }
+    }
+}
\ No newline at end of file

--
Gitblit v1.9.3