¶Ô±ÈÐÂÎļþ |
| | |
| | | using 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.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"); |
| | | var _gou = "â "; |
| | | foreach (var _dy in drGrp) |
| | | { |
| | | 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.Expand(); |
| | | node.Nodes.Add(node22); |
| | | } |
| | | node.Expand(); |
| | | trv.Nodes.Add(node); |
| | | } |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | MsgHelper.Warning("æç¤ºï¼" + ex.Message); |
| | | } |
| | | } |
| | | } |
| | | } |