From ccc1b0d541d8f3bdd2bcb72dd0b5533e68b886d5 Mon Sep 17 00:00:00 2001 From: lu <99954486@qq.com> Date: 星期一, 09 六月 2025 09:53:37 +0800 Subject: [PATCH] 采购明细报表 --- DevApp/Gs.DevApp/DevFrm/FrmMain.cs | 191 +++++++++++++++++++++++++---------------------- 1 files changed, 103 insertions(+), 88 deletions(-) diff --git a/DevApp/Gs.DevApp/DevFrm/FrmMain.cs b/DevApp/Gs.DevApp/DevFrm/FrmMain.cs index 1e46382..c16e184 100644 --- a/DevApp/Gs.DevApp/DevFrm/FrmMain.cs +++ b/DevApp/Gs.DevApp/DevFrm/FrmMain.cs @@ -1,4 +1,14 @@ -锘縰sing System; +锘縰sing DevExpress.XtraBars; +using DevExpress.XtraBars.FluentDesignSystem; +using DevExpress.XtraBars.Navigation; +using DevExpress.XtraTab; +using DevExpress.XtraTab.ViewInfo; +using Gs.DevApp.DevFrm.User; +using Gs.DevApp.Entity; +using Gs.DevApp.ToolBox; +using Newtonsoft.Json; +using Newtonsoft.Json.Linq; +using System; using System.Collections.Generic; using System.ComponentModel; using System.Configuration; @@ -6,25 +16,16 @@ using System.Drawing; using System.Reflection; using System.Windows.Forms; -using DevExpress.XtraBars; -using DevExpress.XtraBars.FluentDesignSystem; -using DevExpress.XtraBars.Navigation; -using DevExpress.XtraTab; -using DevExpress.XtraTab.ViewInfo; -using Gs.DevApp.DevFrm.Sys; -using Gs.DevApp.DevFrm.User; -using Gs.DevApp.Entity; -using Gs.DevApp.ToolBox; -using Newtonsoft.Json; -using Newtonsoft.Json.Linq; namespace Gs.DevApp.DevFrm { public partial class FrmMain : FluentDesignForm { - private static readonly Dictionary<string, XtraTabPage> TabPageDic = - new Dictionary<string, XtraTabPage>(); - private string OldorgFids = ""; + /// <summary> + /// tab涓存椂閫夐」鍗� + /// </summary> + private static readonly Dictionary<string, XtraTabPage> TabPageDic = new Dictionary<string, XtraTabPage>(); + public FrmMain() { InitializeComponent(); @@ -34,7 +35,6 @@ barPwd.ItemClick += BarPwd_ItemClick; barExit.ItemClick += BarExit_ItemClick; FormClosing += FrmMain_FormClosing; - barEasy.ItemClick += BarEasy_ItemClick; getTree(); tab.MouseDown += Tab_MouseDown; tabCloseCurrent.Click += (s, e) => @@ -61,60 +61,19 @@ } } }; - GetOrg(); - barOrg.EditValueChanged += (s, e) => - { - if (barOrg.EditValue == null) - { - Gs.DevApp.ToolBox.MsgHelper.ShowInformation("璇烽�夋嫨浣犻渶瑕佺殑缁勭粐锛�"); - return; - } - string _val = barOrg.EditValue.ToString(); - if (string.IsNullOrEmpty(_val)) - { - Gs.DevApp.ToolBox.MsgHelper.ShowInformation("璇烽�夋嫨浣犻渶瑕佺殑缁勭粐锛�"); - return; - } - if (OldorgFids == _val) - return; - var _obj = new - { - edtUserGuid = LoginInfoModel.CurrentUser.LoginUserGuid, - userGuid = LoginInfoModel.CurrentUser.LoginUserGuid, - userOrgFids = _val, - }; - try - { - var strJson = UtilityHelper.HttpPost("", "User/SetUserOrg", - JsonConvert.SerializeObject(_obj)); - var _rtn = UtilityHelper.ReturnToDynamic(strJson); - MsgHelper.ShowInformation("鎻愮ず锛�" + _rtn.rtnData.outMsg); - } - catch (Exception ex) - { - MsgHelper.Warning("鎻愮ず锛�" + ex.Message); - } - }; } - + /// <summary> + /// 鏄剧ず鍙抽敭鑿滃崟 + /// </summary> + /// <param name="sender"></param> + /// <param name="e"></param> private void Tab_MouseDown(object sender, MouseEventArgs e) { if (e.Button == MouseButtons.Right) { - tab.ContextMenuStrip = null; - //TreeListHitInfo hInfo = treeList1.CalcHitInfo(new Point(e.X, e.Y)); - //TreeListNode node = hInfo.Node; - //treeList1.FocusedNode = node; - tab.ContextMenuStrip = cms1; + cms1.Show(tab, e.Location); } } - - private void BarEasy_ItemClick(object sender, ItemClickEventArgs e) - { - var frm = new EasyCode(); - frm.ShowDialog(); - } - private void FrmMain_FormClosing(object sender, FormClosingEventArgs e) { if (MsgHelper.AskQuestion("纭畾瑕侀��鍑虹郴缁熷悧?")) @@ -174,19 +133,25 @@ { getTree(); } + /// <summary> + /// 璇诲彇宸﹀垯妯″潡鑿滃崟 + /// </summary> private void getTree() { toolTime.Text = "鐧诲綍鏃堕棿" + LoginInfoModel.CurrentUser.LoginTime; var _obj = new { userGuid = LoginInfoModel.CurrentUser.LoginUserGuid, - orgGuid = LoginInfoModel.CurrentUser.LoginOrgGuid }; try { var strJson = UtilityHelper.HttpPost("", "User/GetUserLoginInfo", JsonConvert.SerializeObject(_obj)); - DevExpress.Utils.WaitDialogForm wdf = new DevExpress.Utils.WaitDialogForm("鎷煎懡鍔犺浇涓紝璇风◢鍚�......", "鍙嬫儏鎻愮ず"); + Size _size; string _caption; Color _color; Padding _pad; + (_size, _caption, _color, _pad) = Gs.DevApp.ToolBox.UtilityHelper.getLoading(); + DevExpress.Utils.WaitDialogForm wdf = new DevExpress.Utils.WaitDialogForm("鍔犺浇杩涘害:", _caption, _size); + wdf.BackColor = _color; + wdf.Padding = _pad; var _job = JObject.Parse(strJson); var rtnCode = _job["rtnCode"].ToString(); if (int.Parse(rtnCode) > 0) @@ -221,6 +186,8 @@ foreach (var _dy2 in drItem) { var _itm = acrd.AddItem(); + _itm.Appearance.Hovered.Options.UseFont = true; + _itm.Appearance.Normal.Options.UseFont = true; _itm.ImageOptions.Image = UtilityHelper.GetImgFromResource( _dy2["icon"].ToString(), 2); @@ -228,8 +195,6 @@ _itm.Style = ElementStyle.Item; _itm.Text = _dy2["name"].ToString(); wdf.SetCaption("鍔犺浇杩涘害:" + _dy2["name"].ToString()); - _itm.Appearance.Normal.Font = - new Font("Tahoma", 10F); _itm.Tag = _dy2["formPath"].ToString(); //瀛樿矾寰勶紝绫诲悕 _itm.Click += _grp_Click; _grp.Elements.Add(_itm); @@ -291,14 +256,16 @@ } /// <summary> - /// 鏂板閫夐」鍗¢〉 + /// 鏂板閫夐」鍗¢〉 /// </summary> /// <param name="tabControl">閫夐」鍗℃帶浠�</param> /// <param name="tabPageName">褰撴湡閫夐」鍗¢〉name鍚嶇О</param> /// <param name="tabText">褰撳墠閫夐」鍗¢〉Text鏍囬</param> - /// <param name="newFormName">褰撳墠閫夐」鍗′腑鐨勬柊绐椾綋璺緞锛岀被鍚�</param> + /// <param name="newFormName"></param> + /// <param name="imgIcon">褰撳墠閫夐」鍗′腑鐨勬柊绐椾綋璺緞锛岀被鍚�</param> + /// <param name="InitializeVal">鍒濆鍊硷紝鐢ㄤ簬瀛愮獥浣撲腑璋冪敤鐖剁獥浣撶殑鍊�</param> public void AddTabpage(XtraTabControl tabControl, string tabPageName, - string tabText, string newFormName, Image imgIcon) + string tabText, string newFormName, Image imgIcon, string InitializeVal = "") { if (IsTabpageExsit(tabControl, tabPageName)) return; var newPage = new XtraTabPage(); @@ -307,7 +274,7 @@ newPage.Tooltip = newPage.Name; newPage.Appearance.Header.Font = tab.Appearance.Font; newPage.ImageOptions.Image = imgIcon; - var fm = AddNewForm(newFormName); + var fm = AddNewForm(newFormName, InitializeVal); if (fm != null) { newPage.Controls.Add(fm); @@ -331,13 +298,25 @@ return; } foreach (XtraTabPage item in tabControl.TabPages) + { if (item.Name == name) { + //鍚庢潵鍔犱笂锛屼负浜嗛噴鏀剧獥浣撹祫婧恇eg + //foreach (Control control in item.Controls) + //{ + // if (control is Form) + // { + // Form myForm = control as Form; + // myForm.Invoke((MethodInvoker)delegate { myForm.Dispose(); }); // 纭繚 UI 绾跨▼瀹夊叏鍦伴噴鏀捐祫婧� + // } + //} + //鍚庢潵鍔犱笂锛屼负浜嗛噴鏀剧獥浣撹祫婧恊nd tabControl.TabPages.Remove(item); item.Dispose(); TabPageDic.Remove(name); return; } + } } /// <summary> @@ -363,7 +342,7 @@ /// 鍦ㄩ�夐」鍗′腑鐢熸垚绐椾綋 /// </summary> /// <param name="form">绐椾綋鍚嶇О</param> - private Form AddNewForm(string formName) + private Form AddNewForm(string formName, string InitializeVal) { try { @@ -379,15 +358,20 @@ newForm.ControlBox = false; newForm.Dock = DockStyle.Fill; newForm.Visible = true; + shiXian(newForm, formName, InitializeVal); return newForm; } catch (Exception) { MsgHelper.ShowError("璇锋鏌ユ槸鍚﹀紑閫氫簡璇ユā鍧楋紒"); } - return null; } + + /// <summary> + /// 鐢ㄦ埛閫�鍑� + /// </summary> + /// <returns></returns> private int _userOut() { var _obj = new @@ -408,30 +392,61 @@ { DialogResult = DialogResult.Cancel; MsgHelper.Warning("鎻愮ず锛�" + ex.Message); - return -1; + return 1; } } - private void GetOrg() + + #region 瀹炵幇瀛愮獥浣撶殑濮旀墭锛屼富瑕佺敤浜庡瓙椤甸潰涓闂埗椤甸潰鏂规硶 + private void UpdateParent_OnChange(object sender, UpdateParentEventArgs e) { - string userGuid = LoginInfoModel.CurrentUser.LoginUserGuid; - var pgq = new PageQueryModel(1, 999999, "FID", "asc", userGuid, " and IS_STATUS=1"); - var json = JsonConvert.SerializeObject(pgq); + List<string> _val = e.StringList; + string _formName = _val[0];//绫诲悕 + string _parm1 = _val[1]; + var _obj = new + { + guid = _formName //涓诲缓 + }; try { - var strReturn = UtilityHelper.HttpPost("", "Organization/GetListPage", json); - var _rtn = UtilityHelper.ReturnToTablePage(strReturn); - var dt = _rtn.rtnData.list; - repositoryItemCheckedComboBoxEdit1.DataSource = dt; - repositoryItemCheckedComboBoxEdit1.DisplayMember = "name"; - repositoryItemCheckedComboBoxEdit1.ValueMember = "fid"; - var _obj = UtilityHelper.ReturnToDynamic(strReturn); - barOrg.EditValue = _obj.rtnData.extendText; - OldorgFids = _obj.rtnData.extendText; + var strJson = UtilityHelper.HttpPost("", "MenuAction/GetModelByNameSpace", + JsonConvert.SerializeObject(_obj)); + var _rtn = UtilityHelper.ReturnToDynamic(strJson); + if (_rtn.rtnCode > 0) + { + var dy = _rtn.rtnData; + string tabPageName = dy.guid.ToString() + "_page"; + string tabText = dy.name.ToString(); //褰撳墠閫夐」鍗¢〉Text鏍囬 + string newFormName = dy.formPath.ToString(); //瀛樿矾寰勶紝绫诲悕 + Image imgIcon = UtilityHelper.GetImgFromResource(dy.icon.ToString(), 2); + //鍏堝叧闂� + RemoveTabPage(tab, tabPageName); + AddTabpage(tab, tabPageName, tabText, newFormName, imgIcon, _parm1); + } } catch (Exception ex) { - MsgHelper.Warning("鎻愮ず锛�" + ex.Message); + MsgHelper.ShowError("鎻愮ず锛�" + ex.Message); } } + + private void shiXian(Form newForm, string formName, string InitializeVal) + { + EventInfo evt = newForm.GetType().GetEvent("ToUpdateParent", + BindingFlags.NonPublic | BindingFlags.Instance + | BindingFlags.Public + ); + if (evt != null) + evt.AddEventHandler(newForm, new EventHandler<UpdateParentEventArgs>(UpdateParent_OnChange)); + if (!string.IsNullOrEmpty(InitializeVal)) + { + Assembly assembly = Assembly.GetExecutingAssembly(); + Type type = assembly.GetType(formName); + MethodInfo method = type.GetMethod("Initialize"); // 鑾峰彇Initialize鏂规硶鐨勪俊鎭� + if (method != null) + method.Invoke(newForm, new object[] { InitializeVal }); // 璋冪敤Initialize鏂规硶骞朵紶閫掑弬鏁� + } + } + #endregion + } } \ No newline at end of file -- Gitblit v1.9.3