From d542759b01c952b0de92aa88aa854dfaac2c19c7 Mon Sep 17 00:00:00 2001
From: kyy <3283105747@qq.com>
Date: 星期二, 11 十一月 2025 09:04:45 +0800
Subject: [PATCH] 1、新增到货明细报表

---
 DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs |  109 +++++++++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 98 insertions(+), 11 deletions(-)

diff --git a/DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs b/DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs
index 2c62325..a3251d1 100644
--- a/DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs
+++ b/DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs
@@ -148,6 +148,76 @@
                 : "linktoprevious_16x16") as Image;
             return image2;
         }
+        /// <summary>
+        /// 鐢ㄦ埛鎺т欢璇诲彇xml閰嶇疆
+        /// </summary>
+        /// <param name="_formNamespace"></param>
+        /// <param name="gvList"></param>
+        /// <param name="gcMain"></param>
+        public static void GetUcXmlConfig(string _formNamespace, List<DevExpress.XtraGrid.Views.Grid.GridView> gvList, GridControl gcMain)
+        {
+            JArray array = new JArray();
+            var _obj = new
+            {
+                formPath = _formNamespace,
+            };
+            try
+            {
+                string strJson = UtilityHelper.HttpPost("", "Fm/GetModel", JsonConvert.SerializeObject(_obj));
+                ReturnModel<dynamic> _rtn = ToolBox.UtilityHelper.ReturnToDynamic(strJson);
+                if (_rtn.rtnCode > 0)
+                {
+                    JObject _job = JObject.Parse(strJson);
+                    foreach (var a in _job["rtnData"]["list"])
+                    {
+                        array.Add(a);
+                    }
+                    foreach (GridView gv in gvList)
+                    {
+                        JToken john = array.FirstOrDefault(t => t["controlId"].ToString().ToUpper() == gv.Name.ToString().Trim().ToUpper());
+                        if (john != null)
+                        {
+                            string controlId = john["controlId"].ToString();
+                            string controlXml = john["controlXml"].ToString();
+                            byte[] byteArray = Encoding.UTF8.GetBytes(controlXml);
+                            using (var stream = new MemoryStream(byteArray))
+                            {
+                                gv.RestoreLayoutFromStream(stream);
+                            }
+                        }
+                    }
+
+                    //璁剧疆鏌ヨ鏉′欢beg
+                    if (gcMain != null)
+                    {
+                        GridView gv1 = gcMain.MainView as GridView;
+                        if (gv1 != null)
+                        {
+                            foreach (var a in _job["rtnData"]["list2"])
+                            {
+                                string _gvColName = a["gvColName"].ToString();
+                                string _sqlField = a["sqlField"].ToString();
+                                string _sqlFieldType = a["sqlFieldType"].ToString();
+                                var column = gv1.Columns.Cast<DevExpress.XtraGrid.Columns.GridColumn>()
+                                                .FirstOrDefault(c => c.Name == _gvColName);
+                                if (column != null)
+                                {
+                                    column.Tag = _sqlField;
+                                    column.UnboundExpression = _sqlFieldType;
+                                }
+                            }
+                        }
+                    }
+                    //璁剧疆鏌ヨ鏉′欢end
+                }
+                else
+                    ToolBox.MsgHelper.Warning("鎻愮ず锛�" + _rtn.rtnMsg);
+            }
+            catch (Exception ex)
+            {
+                ToolBox.MsgHelper.Warning("鎻愮ず锛�" + ex.Message);
+            }
+        }
 
         /// <summary>
         ///     鍒濆鍖栦竴涓〃
@@ -1946,19 +2016,36 @@
                     column.Width = 500;
             }
         }
-        
+        public delegate void DelegateGetUserControlList();
         /// <summary>
         /// 璁剧疆閫夐」鍗�
         /// </summary>
         /// <param name="gridView1"></param>
         /// <param name="xtraTabControl1"></param>
         /// <param name="pageBar1"></param>
-        /// <param name="action"></param>
-        /// <param name="page"></param>
-        public static void SetTabParameter(GridView gridView1, DevExpress.XtraTab.XtraTabControl xtraTabControl1, UcPageBar pageBar1, DelegateGetModel action = null, DelegateGetList page = null, Label lbGuid = null)
+        /// <param name="action">璇诲彇瀹炰綋</param>
+        /// <param name="page">璇诲彇鍒楄〃</param>
+        /// <param name="lbGuid"></param>
+        /// <param name="barMenu"></param>
+        /// <param name="ucLst">璇诲彇鎶ヨ〃</param>
+        public static void SetTabParameter(GridView gridView1, DevExpress.XtraTab.XtraTabControl xtraTabControl1, UcPageBar pageBar1, DelegateGetModel action = null, DelegateGetList page = null, Label lbGuid = null, UcToolBarMenu barMenu = null, DelegateGetUserControlList ucLst = null)
         {
             xtraTabControl1.SelectedPageChanged += (s, e) =>
             {
+                if (pageBar1 != null && xtraTabControl1.SelectedTabPageIndex == 0)
+                {
+                    if (barMenu != null)
+                        barMenu.SetAllButton(0);
+
+                    page(pageBar1.CurrentPage);
+                    int rowHandle = 0;
+                    rowHandle = gridView1.LocateByValue(1, gridView1.Columns["guid"], lbGuid.Text);
+                    if (rowHandle < 0)
+                        rowHandle = 0;
+                    gridView1.FocusedRowHandle = rowHandle;
+                    return;
+                }
+
                 if (xtraTabControl1.SelectedTabPageIndex == 1)
                 {
                     int _handle = gridView1.FocusedRowHandle;
@@ -1986,19 +2073,19 @@
                         return;
                     }
                     action(_guid);
+                    return;
                 }
-                if (pageBar1 != null && xtraTabControl1.SelectedTabPageIndex == 0)
+
+                if (barMenu != null && xtraTabControl1.SelectedTabPageIndex == 2)
                 {
-                    page(pageBar1.CurrentPage);
-                    int rowHandle = 0;
-                    rowHandle = gridView1.LocateByValue(1, gridView1.Columns["guid"], lbGuid.Text);
-                    if (rowHandle < 0)
-                        rowHandle = 0;
-                    gridView1.FocusedRowHandle = rowHandle;
+                    barMenu.SetAllButton(2);
+                    ucLst();
+                    return;
                 }
             };
         }
 
+
         /// <summary>
         /// 璁剧疆鏄庣粏grid鏍峰紡
         /// </summary>

--
Gitblit v1.9.3