From f518944447f2f57c69d63e397326b933d561bd95 Mon Sep 17 00:00:00 2001 From: lu <99954486@qq.com> Date: 星期六, 30 十一月 2024 23:09:56 +0800 Subject: [PATCH] 11 --- DevApp/Gs.DevApp/DevFrm/User/Role.cs | 469 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 469 insertions(+), 0 deletions(-) diff --git a/DevApp/Gs.DevApp/DevFrm/User/Role.cs b/DevApp/Gs.DevApp/DevFrm/User/Role.cs new file mode 100644 index 0000000..d7b7b2b --- /dev/null +++ b/DevApp/Gs.DevApp/DevFrm/User/Role.cs @@ -0,0 +1,469 @@ +锘縰sing System; +using System.Collections.Generic; +using System.Drawing; +using System.Text; +using System.Windows.Forms; +using DevExpress.XtraEditors; +using DevExpress.XtraGrid.Views.Base; +using Gs.DevApp.Entity; +using Gs.DevApp.Properties; +using Gs.DevApp.ToolBox; +using Gs.DevApp.UserControl; +using Newtonsoft.Json; + +namespace Gs.DevApp.DevFrm.User +{ + public partial class Role : XtraForm + { + private StringBuilder _actionLst = new StringBuilder(); + private List<FilterEntity> _filterList = new List<FilterEntity>(); + + public Role() + { + InitializeComponent(); + toolBarMenu1.btnAddClick += ToolBarMenu1_btnAddClick; + toolBarMenu1.btnEdtClick += ToolBarMenu1_btnEdtClick; + toolBarMenu1.btnSaveClick += ToolBarMenu1_btnSaveClick; + toolBarMenu1.btnLoadClick += ToolBarMenu1_btnLoadClick; + toolBarMenu1.btnDelClick += ToolBarMenu1_btnDelClick1; + toolBarMenu1.btnEscClick += ToolBarMenu1_btnEscClick; + toolBarMenu1.btnQueryClick += ToolBarMenu1_btnQueryClick; + gcMain.MouseDoubleClick += GcMain_MouseDoubleClick; + //gridView1.FocusedRowChanged += GridView1_FocusedRowChanged; + getPageList(1, UtilityHelper.GetPageSize()); + pageBar1.PagerEvent += PageBar1_PagerEvent; + gridView1.IndicatorWidth = 50; + gridView1.CustomDrawRowIndicator += (s, e) => + { + if (e.Info.IsRowIndicator && e.RowHandle >= 0) + e.Info.DisplayText = (e.RowHandle + 1).ToString(); + }; + gridView1.CustomDrawEmptyForeground += (s, e) => + { + var str = "鏆傛湭鏌ユ壘鍒板尮閰嶇殑鏁版嵁!"; + var f = new Font("寰蒋闆呴粦", 16); + var r = new Rectangle(gridView1.GridControl.Width / 2 - 100, + e.Bounds.Top + 45, e.Bounds.Right - 5, e.Bounds.Height - 5); + e.Graphics.DrawString(str, f, Brushes.Gray, r); + }; + } + + /// <summary> + /// 鍙屽嚮浜嬩欢 + /// </summary> + /// <param name="sender"></param> + /// <param name="e"></param> + private void GcMain_MouseDoubleClick(object sender, MouseEventArgs e) + { + var rowGuid = + UtilityHelper.GetCurrentDoubleRow(gridView1, e, "guid"); + if (!string.IsNullOrEmpty(rowGuid)) + getModel(rowGuid, false, 999); + } + + /// <summary> + /// 鍒嗛〉浜嬩欢 + /// </summary> + /// <param name="curPage"></param> + /// <param name="pageSize"></param> + private void PageBar1_PagerEvent(int curPage, int pageSize) + { + getPageList(curPage, pageSize); + } + + /// <summary> + /// 鏌ヨ浜嬩欢 + /// </summary> + /// <param name="sender"></param> + /// <param name="e"></param> + private void ToolBarMenu1_btnQueryClick(object sender, EventArgs e) + { + var frm = new ShowFilter(gridView1.Columns, _filterList); + frm.UpdateParent += Frm_UpdateParent; + frm.ShowDialog(); + } + + /// <summary> + /// 鏌ヨ鍥炶皟 + /// </summary> + /// <param name="sender"></param> + /// <param name="e"></param> + private void Frm_UpdateParent(object sender, UpdateParentEventArgs e) + { + _filterList = e.FilterList; + getPageList(1, pageBar1.RowsCount); + } + + /// <summary> + /// 鍙栨秷浜嬩欢 + /// </summary> + /// <param name="sender"></param> + /// <param name="e"></param> + private void ToolBarMenu1_btnEscClick(object sender, EventArgs e) + { + UtilityHelper.JumpToTab(xtraTabControl1, 0); + } + + /// <summary> + /// 鍒犻櫎浜嬩欢 + /// </summary> + /// <param name="sender"></param> + /// <param name="e"></param> + private void ToolBarMenu1_btnDelClick1(object sender, EventArgs e) + { + string rowGuid, rowName; + (rowGuid, rowName) = UtilityHelper.GetCurrentRow(xtraTabControl1, + lbGuid, txt_roleName, gridView1,"", 2); + if (string.IsNullOrEmpty(rowGuid)) + { + MsgHelper.Warning("璇峰厛閫夋嫨浣犺鎿嶄綔鐨勮锛�"); + return; + } + + if (!MsgHelper.AskQuestion("浣犻�夋嫨浜嗐��" + rowName + + "銆戯紝纭畾鍒犻櫎鍚楋紵\n璇ユ搷浣滃皢浼氭竻绌虹浉搴旂殑鐢ㄦ埛鏉冮檺")) + return; + var lst = new List<string>(); + lst.Add(rowGuid); + var _obj = lst; + try + { + var strJson = UtilityHelper.HttpPost("", "Role/DeleteModel", + JsonConvert.SerializeObject(_obj)); + var _rtn = UtilityHelper.ReturnToDynamic(strJson); + if (_rtn.rtnCode > 0) + { + UtilityHelper.JumpToTab(xtraTabControl1, 0); + getPageList(1, UtilityHelper.GetPageSize()); + } + + MsgHelper.Warning("鎻愮ず锛�" + _rtn.rtnMsg); + } + catch (Exception ex) + { + MsgHelper.Warning("鎻愮ず锛�" + ex.Message); + } + } + + /// <summary> + /// 鍒锋柊浜嬩欢 + /// </summary> + /// <param name="sender"></param> + /// <param name="e"></param> + private void ToolBarMenu1_btnLoadClick(object sender, EventArgs e) + { + UtilityHelper.JumpToTab(xtraTabControl1, 0); + getPageList(1, UtilityHelper.GetPageSize()); + } + + /// <summary> + /// 淇敼浜嬩欢 + /// </summary> + /// <param name="sender"></param> + /// <param name="e"></param> + private void ToolBarMenu1_btnEdtClick(object sender, EventArgs e) + { + string rowGuid, rowName; + (rowGuid, rowName) = UtilityHelper.GetCurrentRow(xtraTabControl1, + lbGuid, txt_roleName, gridView1); + if (string.IsNullOrEmpty(rowGuid)) + { + MsgHelper.Warning("璇峰厛閫夋嫨浣犺鎿嶄綔鐨勮锛�"); + return; + } + + getModel(rowGuid, true, 1); + } + + /// <summary> + /// 鏂板浜嬩欢 + /// </summary> + /// <param name="sender"></param> + /// <param name="e"></param> + private void ToolBarMenu1_btnAddClick(object sender, EventArgs e) + { + UtilityHelper.JumpToTab(xtraTabControl1, 1); + lbGuid.Text = ""; + UtilityHelper.CleanValueByControl(panel1.Controls, true); + } + + /// <summary> + /// 淇濆瓨浜嬩欢 + /// </summary> + /// <param name="sender"></param> + /// <param name="e"></param> + private void ToolBarMenu1_btnSaveClick(object sender, EventArgs e) + { + toolBarMenu1.isSetBtn = false; + if (string.IsNullOrEmpty(txt_roleName.Text.Trim())) + { + MsgHelper.Warning("瑙掕壊鍚嶇О涓嶈兘涓虹┖锛�"); + txt_roleName.Focus(); + return; + } + + if (string.IsNullOrEmpty(txt_roleRemark.Text.Trim())) + { + MsgHelper.Warning("瑙掕壊澶囨敞涓嶈兘涓虹┖锛�"); + txt_roleRemark.Focus(); + return; + } + + var _obj = new + { + guid = UtilityHelper.ToGuid(lbGuid.Text.Trim()), + roleName = txt_roleName.Text.Trim(), + roleRemark = txt_roleRemark.Text.Trim(), + isStatus = txt_isStatus.Checked //鐘舵�� + }; + try + { + var strJson = UtilityHelper.HttpPost("", "Role/EditModel", + JsonConvert.SerializeObject(_obj)); + var _rtn = UtilityHelper.ReturnToDynamic(strJson); + MsgHelper.Warning("鎻愮ず锛�" + _rtn.rtnMsg); + if (_rtn.rtnCode > 0) + { + lbGuid.Text = _rtn.rtnData; + toolBarMenu1.isSetBtn = true; + UtilityHelper.ChangeEnableByControl(panel1.Controls, false); + } + } + catch (Exception ex) + { + MsgHelper.Warning("鎻愮ず锛�" + ex.Message); + } + } + + /// <summary> + /// 鏉冮檺璁剧疆浜嬩欢 + /// </summary> + /// <param name="sender"></param> + /// <param name="e"></param> + //private void ToolBarMenu1_btnRoleClick(object sender, EventArgs e) + //{ + // string rowGuid, rowName; + // (rowGuid, rowName) = UtilityHelper.GetCurrentRow(xtraTabControl1, + // lbGuid, txt_roleName, gridView1); + // if (string.IsNullOrEmpty(rowGuid)) + // { + // MsgHelper.Warning("璇峰厛閫夋嫨浣犺鎿嶄綔鐨勮锛�"); + // return; + // } + + // if (!MsgHelper.AskQuestion("浣犻�夋嫨浜嗐��" + rowName + "銆戯紝纭畾璁剧疆鏉冮檺鍚楋紵")) + // return; + // _actionLst = new StringBuilder(); + // TraverseTreeViewNodes(trv.Nodes); + // var _obj = new + // { + // roleGuid = rowGuid, + // actionLst = _actionLst.ToString() + // }; + // try + // { + // var strJson = UtilityHelper.HttpPost("", + // "Role/SetRoleMenuAction", + // JsonConvert.SerializeObject(_obj)); + // var _rtn = UtilityHelper.ReturnToDynamic(strJson); + // MsgHelper.Warning("鎻愮ず锛�" + _rtn.rtnData.outMsg); + // } + // catch (Exception ex) + // { + // MsgHelper.Warning("鎻愮ず锛�" + ex.Message); + // } + //} + + /// <summary> + /// </summary> + /// <param name="curPage">绗嚑椤�</param> + /// <param name="pageSize">姣忛〉鍑犳潯</param> + private void getPageList(int curPage, int pageSize) + { + var _sbSqlWhere = new StringBuilder(); + foreach (var itm in _filterList) + _sbSqlWhere.Append(" and " + itm.fileId + itm.fileOper + "'" + + itm.fileValue + "'"); + var pgq = new PageQueryModel(curPage, pageSize, "CREATE_TIME", + "desc", "", _sbSqlWhere.ToString()); + var json = JsonConvert.SerializeObject(pgq); + try + { + var strReturn = + UtilityHelper.HttpPost("", "Role/GetListPage", json); + var dd = UtilityHelper.ReturnToTablePage(strReturn); + var dt = dd.rtnData.list; + gcMain.BindingContext = new BindingContext(); + gcMain.DataSource = dt; + gcMain.ForceInitialize(); + var dddd = dd.rtnData.pages; //鎬婚〉 + pageBar1.TotalPages = dddd; + pageBar1.RecordCount = dd.rtnData.total; //璁板綍鎬绘暟 + pageBar1.CurrentPage = curPage; //褰撳墠椤� + pageBar1.RowsCount = pageSize; //姣忛〉鏄剧ず + pageBar1.setTxt(); + } + catch (Exception ex) + { + MsgHelper.Warning("鎻愮ず锛�" + ex.Message); + } + } + + private void getModel(string strGuid, bool isEdit, int tabIdx) + { + if (string.IsNullOrEmpty(strGuid)) + { + MsgHelper.Warning("璇峰厛閫夋嫨浣犺鎿嶄綔鐨勮锛�"); + return; + } + + UtilityHelper.JumpToTab(xtraTabControl1, tabIdx); + var _obj = new + { + guid = strGuid //涓诲缓 + }; + var strJson = ""; + try + { + strJson = UtilityHelper.HttpPost("", "Role/GetModel", + JsonConvert.SerializeObject(_obj)); + var _rtn = UtilityHelper.ReturnToDynamic(strJson); + if (_rtn.rtnCode > 0) + { + var dy = _rtn.rtnData; + lbGuid.Text = strGuid; + UtilityHelper.SetValueByObj(panel1.Controls, dy, isEdit); + } + else + { + MsgHelper.Warning("鎻愮ず锛�" + _rtn.rtnMsg); + } + } + catch (Exception ex) + { + MsgHelper.Warning("鎻愮ず锛�" + ex.Message); + } + } + + //private void getTree(string roleGuid) + //{ + // 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 + // { + // roleGuid //涓诲缓 + // }; + // try + // { + // var strReturn = UtilityHelper.HttpPost("", "Role/GetListByRole", + // JsonConvert.SerializeObject(_obj)); + // var dd = UtilityHelper.ReturnToTablePage(strReturn); + // var dt = dd.rtnData.list; + // var drGrp = dt.Select("upGuid='' or upGuid is null"); + // foreach (var _dy in drGrp) + // { + // var _orgGuid = _dy["guid"] + "&"; + // var node = new TreeNode(); //瀹氫箟缁撶偣 + // node.Text = _dy["name"].ToString(); //涓虹粨鐐硅祴鍊� + // 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["name"].ToString(); //涓虹粨鐐硅祴鍊� + // 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["name"].ToString(); //涓虹粨鐐硅祴鍊� + // 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["name"].ToString(); //涓虹粨鐐硅祴鍊� + // 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); + // } + //} + + //private void Trv_AfterCheck(object sender, TreeViewEventArgs e) + //{ + // try + // { + // trv.AfterCheck -= Trv_AfterCheck; + // UtilityHelper.TreeViewCheck(e); + // trv.AfterCheck += Trv_AfterCheck; + // } + // catch (Exception ex) + // { + // MsgHelper.ShowError(ex.Message); + // } + //} + + // 閬嶅巻TreeView涓殑鎵�鏈夎妭鐐� + private void TraverseTreeViewNodes(TreeNodeCollection nodes) + { + foreach (TreeNode node in nodes) + { + if (node.Checked) + _actionLst.Append(node.Name + "~"); + // 閫掑綊閬嶅巻瀛愯妭鐐� + if (node.Nodes.Count > 0) TraverseTreeViewNodes(node.Nodes); + } + } + + private void repositoryItemButtonEdit1_ButtonClick(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e) + { + if (e.Button.Index == 0) + { + var rowhandle = gridView1.FocusedRowHandle; + var dr = gridView1.GetDataRow(rowhandle); + var userGuid = dr["guid"].ToString(); + var frm = new RoleSelectAction(userGuid); + frm.ShowDialog(); + } + } + } +} \ No newline at end of file -- Gitblit v1.9.3