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/Work/Frm_Work01.cs | 367 ++++++++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 328 insertions(+), 39 deletions(-) diff --git a/DevApp/Gs.DevApp/DevFrm/Work/Frm_Work01.cs b/DevApp/Gs.DevApp/DevFrm/Work/Frm_Work01.cs index a111ee1..dd6eb1e 100644 --- a/DevApp/Gs.DevApp/DevFrm/Work/Frm_Work01.cs +++ b/DevApp/Gs.DevApp/DevFrm/Work/Frm_Work01.cs @@ -1,9 +1,14 @@ -锘縰sing Gs.DevApp.Entity; +锘縰sing DevExpress.XtraGrid.Columns; +using Gs.DevApp.Entity; using Gs.DevApp.ToolBox; using Newtonsoft.Json; using Newtonsoft.Json.Linq; using System; +using System.Collections.Generic; using System.Data; +using System.Dynamic; +using System.IO; +using System.Text; using System.Windows.Forms; namespace Gs.DevApp.DevFrm.Work @@ -11,57 +16,187 @@ public partial class Frm_Work01 : DevExpress.XtraEditors.XtraForm { string _webServiceName = "WorkCollect/"; - string fGx = ""; - string fBc = ""; + string dianJianPath = "";//鐢垫鍙栧�艰矾寰� string goodTag = "鈭�"; string badTag = "脳"; - public Frm_Work01(string _fGx, string _fBc) - { - InitializeComponent(); - this.fGx = _fGx; - this.fBc = _fBc; - this.Text = "宸ュ簭閲囬泦 - " + fGx + " - " + fBc; - txt_gx.Text = fGx; - txt_bc.Text = fBc; - txt_barCode.KeyDown += (s, e) => - { - if (e.KeyCode == Keys.Enter) { getModel("", goodTag); }; - }; - btnGood.Click += (s, e) => - { - getModel("", goodTag); - }; - btnBad.Click += (s, e) => - { - getModel("", badTag); - }; - } + string fGxTouRu = "G001:鎶曞叆"; + string fGxDianJian = "G002:鐢垫"; + string fGxShouJian = "G003:姘存"; + string fGxZhongJian = "G004:缁堟"; /// <summary> /// /// </summary> - /// <param name="_checkVal">妫�娴嬪��</param> - /// <param name="_checkResult">妫�娴嬬粨鏋�</param> - private void getModel(string _checkVal, string _checkResult) + /// <param name="_fGx">宸ュ簭</param> + /// <param name="_fBc">鐝</param> + /// <param name="_strinOther">鐩墠涓虹數妫�璺緞</param> + public Frm_Work01(string _fGx, string _fBc, string _strinOther) + { + InitializeComponent(); + txt_gx.Text = _fGx; + txt_bc.Text = _fBc; + txt_dianJianPath.Text = _strinOther; + dianJianPath= _strinOther; + this.Text = "宸ュ簭閲囬泦銆�" + _fGx + " - " + _fBc + "銆�"; + addColumn(); + txt_barCode.KeyDown += (s, e) => + { + if (e.KeyCode == Keys.Enter) { addModel(goodTag); }; + }; + btnGood.Click += (s, e) => + { + addModel(goodTag); + }; + btnBad.Click += (s, e) => + { + UcDictionarySelect frm = new UcDictionarySelect("宸ュ簭涓嶈壇鎻忚堪", " a.s_type='宸ュ簭涓嶈壇鎻忚堪' and pid<>'00000000-0000-0000-0000-000000000000'"); + frm.UpdateParent += (ss, ee) => + { + System.Text.StringBuilder stringBuilder = new System.Text.StringBuilder(); + var lst = ee.DynamicList; + foreach (dynamic dym in lst) + { + if (stringBuilder.Length > 0) + stringBuilder.Append("|"); + stringBuilder.Append(dym.dicTxt); + } + string _txt = stringBuilder.ToString(); + if (string.IsNullOrEmpty(_txt)) + { + Toast vm = new Toast(-1, "~褰撲负涓嶈壇鏃讹紝璇烽�夋嫨涓嶈壇椤圭洰~"); + vm.Show(); + } + else + addModel(badTag, _txt); + }; + frm.ShowDialog(); + }; + } + + /// <summary> + /// 鏍规嵁宸ュ簭锛屾瀯閫犱笉鍚岀被鍨嬬殑瀹炰綋 + /// </summary> + /// <param name="_barCode">鏉$爜</param> + /// <param name="_checkResult">缁撴灉</param> + /// <param name="_badDescription">涓嶈壇鎻忚堪</param> + /// <returns></returns> + private dynamic getObj(string _barCode, string _checkResult, string _badDescription = "") + { + dynamic _obj = new ExpandoObject(); + _obj.barCode = _barCode; + _obj.checkResult = _checkResult;//妫�娴嬬粨鏋� + _obj.processNo = txt_gx.Text.Trim();//宸ュ簭 + _obj.banCi = txt_bc.Text.Trim();//鐝 + _obj.gongWei = txt_gw.Text.Trim();//宸ヤ綅 + _obj.badDescription = _badDescription.Trim();//涓嶈壇鎻忚堪 + if (txt_gx.Text.Trim() == fGxTouRu) + { + return _obj; + } + if (txt_gx.Text.Trim() == fGxDianJian) + { + string TM = ""; + string JD = ""; + string JY = ""; + string JN = ""; + string XL = ""; + string GV = ""; + string JDV = ""; + string JYV = ""; + string JNV = ""; + string XLV = ""; + string GVV = ""; + string myStr = File.ReadAllText(dianJianPath, Encoding.Default); + if (myStr == "") + { + return null; + } + + JArray dsTemp = JArray.Parse(myStr); + foreach (var ss in dsTemp) //鏌ユ壘鏌愪釜瀛楁涓庡�� + { + TM = (((JObject)ss)["TiaoMa"] == null) ? "" : ((JObject)ss)["TiaoMa"].ToString(); + JD = (((JObject)ss)["JieDi"] == null) ? "" : ((JObject)ss)["JieDi"]["state"].ToString(); + JY = (((JObject)ss)["JueYuan"] == null) ? "" : ((JObject)ss)["JueYuan"]["state"].ToString(); + JN = (((JObject)ss)["JiaoNai"] == null) ? "" : ((JObject)ss)["JiaoNai"]["state"].ToString(); + XL = (((JObject)ss)["XieLou"] == null) ? "" : ((JObject)ss)["XieLou"]["state"].ToString(); + GV = (((JObject)ss)["GongLv"] == null) ? "" : ((JObject)ss)["GongLv"]["state"].ToString(); + JDV = (((JObject)ss)["JieDi"] == null) ? "" : ((JObject)ss)["JieDi"]["value"].ToString().Replace(" ", ","); + JYV = (((JObject)ss)["JueYuan"] == null) ? "" : ((JObject)ss)["JueYuan"]["value"].ToString().Replace(" ", ", "); + JNV = (((JObject)ss)["JiaoNai"] == null) ? "" : ((JObject)ss)["JiaoNai"]["value"].ToString().Replace(" ", ", "); + XLV = (((JObject)ss)["XieLou"] == null) ? "" : ((JObject)ss)["XieLou"]["value"].ToString().Replace(" ", ", "); + GVV = (((JObject)ss)["GongLv"] == null) ? "" : ((JObject)ss)["GongLv"]["value"].ToString().Replace(" ", ", "); + } + _obj.t001 = TM; + _obj.t002 = JD; + _obj.t003 = JY; + _obj.t004 = JN; + _obj.t005 = XL; + _obj.t006 = GV; + _obj.t007 = JDV; + _obj.t008 = JYV; + _obj.t009 = JNV; + _obj.t010 = XLV; + _obj.t011 = GVV; + // File.WriteAllText(dianJianPath, ""); + return _obj; + } + + if (txt_gx.Text.Trim() == fGxShouJian) + { + string strCsl1 = "strCsl1"; + string strSw1 = "strSw1"; + string strCsl2 = "strCsl2"; + string strSw2 = "strSw2"; + string strCsl3 = "strCsl3"; + string strSw3 = "strSw3"; + string strCsl4 = "strCsl4"; + string strSw4 = "strSw4"; + string strCsl5 = "strCsl5"; + string strSw5 = "strSw5"; + string SJJG = ""; + _obj.t002 = strCsl1; + _obj.t003 = strSw1; + _obj.t004 = strCsl2; + _obj.t005 = strSw2; + _obj.t006 = strCsl3; + _obj.t007 = strSw3; + _obj.t008 = strCsl4; + _obj.t009 = strSw4; + _obj.t010 = strCsl5; + _obj.t011 = strSw5; + // _obj.t012 = SJJG;杩欎釜寰呯‘瀹� + return _obj; + } + + if (txt_gx.Text.Trim() == fGxZhongJian) + { + return _obj; + } + return null; + } + + /// <summary> + /// 涓婃姤瀹炰綋 + /// </summary> + /// <param name="_checkResult">缁撴灉锛氣垰</param> + /// <param name="_badDescription">涓嶈壇鎻忚堪</param> + private void addModel(string _checkResult, string _badDescription = "") { string _barCode = txt_barCode.Text.Trim(); - string _inBz = ""; ; //澶囨敞 if (string.IsNullOrEmpty(_barCode)) { Toast vm = new Toast(-1, "~璇峰厛鎵拷婧爜~"); vm.Show(); return; } - var _obj = new + dynamic _obj = getObj(_barCode, _checkResult, _badDescription); + if (_obj == null) { - barCode = _barCode, - inBz = _inBz, - checkVal = _checkVal, - checkResult = _checkResult, - processNo = txt_gx.Text.Trim(),//宸ュ簭 - banCi = txt_bc.Text.Trim(),//鐝 - gongWei = txt_gw.Text.Trim(),//宸ヤ綅 - }; + Toast vm = new Toast(-1, "~璇诲彇鏁版嵁澶辫触锛岃妫�鏌ヨ澶噡"); + vm.Show(); + return; + } try { string strJson = UtilityHelper.HttpPost("", _webServiceName + "GetModel", JsonConvert.SerializeObject(_obj)); @@ -69,12 +204,14 @@ if (_rtn.rtnCode > 0) { dynamic dy = _rtn.rtnData; + //琛ㄥご鍜屾眹鎬� UtilityHelper.SetValueByObj(this.layoutMx1.Controls, dy, false); lbSum1.Text = dy.lbSum1; lbSum2.Text = dy.lbSum2; lbSum3.Text = dy.lbSum3; lbSum4.Text = dy.lbSum4; prog1.Position = dy.jd; + //鑹搧鍒楄〃 txt_barCode.ReadOnly = false; JObject _job = JObject.Parse(strJson); JArray array = new JArray(); @@ -95,6 +232,7 @@ { Gs.DevApp.ToolBox.UtilityHelper.SetDefaultTable(gcMx1, gvMx1); } + //涓嶈壇鍝佸垪琛� JArray array2 = new JArray(); foreach (var a in _job["rtnData"]["list2"]) { @@ -116,7 +254,6 @@ string _msg = _rtn.rtnMsg; if (!string.IsNullOrEmpty(_msg)) { - Toast vm = new Toast((goodTag == "鈭�" ? 1 : -1), _msg); vm.Show(); }; @@ -126,7 +263,6 @@ Toast vm = new Toast(-1, _rtn.rtnMsg); vm.Show(); } - } catch (Exception ex) { @@ -134,5 +270,158 @@ vm.Show(); } } + + /// <summary> + /// 澧炲姞鐢垫鍙栨暟鐨勫垪 + /// </summary> + public void addColumn() + { + List<dynamic> _lst = new List<dynamic>(); + if (txt_gx.Text.Trim() == fGxDianJian) + { + _lst.Add(new + { + ziduan = "t002", + wenben = "鎺ュ湴", + kejian = true, + visibleIndex = 1, + }); + _lst.Add(new + { + ziduan = "t004", + wenben = "浜よ��", + kejian = true, + visibleIndex = 1, + }); + _lst.Add(new + { + ziduan = "t005", + wenben = "娉勬紡", + kejian = true, + visibleIndex = 1, + }); + _lst.Add(new + { + ziduan = "t006", + wenben = "鍔熺巼", + kejian = true, + visibleIndex = 1, + }); + _lst.Add(new + { + ziduan = "t007", + wenben = "鎺ュ湴缁撴灉", + kejian = true, + visibleIndex = 1, + }); + _lst.Add(new + { + ziduan = "t009", + wenben = "浜よ�愮粨鏋�", + kejian = true, + visibleIndex = 1, + }); + _lst.Add(new + { + ziduan = "t010", + wenben = "娉勬紡缁撴灉", + kejian = true, + visibleIndex = 1, + }); + + _lst.Add(new + { + ziduan = "t011", + wenben = "鍔熺巼缁撴灉", + kejian = true, + visibleIndex = 1, + }); + } + if (txt_gx.Text.Trim() == fGxShouJian) + { + _lst.Add(new + { + ziduan = "t002", + wenben = "鍑烘按閲�1", + kejian = true, + visibleIndex = 1, + }); + _lst.Add(new + { + ziduan = "t003", + wenben = "姘存俯1", + kejian = true, + visibleIndex = 1, + }); + _lst.Add(new + { + ziduan = "t004", + wenben = "鍑烘按閲�2", + kejian = true, + visibleIndex = 1, + }); + _lst.Add(new + { + ziduan = "t005", + wenben = "姘存俯2", + kejian = true, + visibleIndex = 1, + }); + _lst.Add(new + { + ziduan = "t006", + wenben = "鍑烘按閲�3", + kejian = true, + visibleIndex = 1, + }); + _lst.Add(new + { + ziduan = "t007", + wenben = "姘存俯3", + kejian = true, + visibleIndex = 1, + }); + _lst.Add(new + { + ziduan = "t008", + wenben = "鍑烘按閲�4", + kejian = true, + visibleIndex = 1, + }); + _lst.Add(new + { + ziduan = "t009", + wenben = "姘存俯4", + kejian = true, + visibleIndex = 1, + }); + + _lst.Add(new + { + ziduan = "t010", + wenben = "鍑烘按閲�5", + kejian = true, + visibleIndex = 1, + }); + _lst.Add(new + { + ziduan = "t011", + wenben = "姘存俯5", + kejian = true, + visibleIndex = 1, + }); + } + foreach (var item in _lst) + { + GridColumn newColumn = new GridColumn(); + newColumn.FieldName = item.ziduan; // 璁剧疆涓庢暟鎹簮瀵瑰簲鐨勫瓧娈靛悕 + newColumn.Caption = item.wenben; // 璁剧疆鍒楃殑鏍囬 + //newColumn.Visible = item.visibleIndex; // 璁剧疆鍒楁槸鍚﹀彲瑙� + newColumn.VisibleIndex = item.visibleIndex; // 璁剧疆鍒楃殑鏄剧ず椤哄簭 + gvMx1.Columns.Add(newColumn); + } + } + + } } \ No newline at end of file -- Gitblit v1.9.3