From 9702c6a4dc358c7bff2eb18c8426229a0140e34a Mon Sep 17 00:00:00 2001
From: lu <123456>
Date: 星期一, 15 九月 2025 08:29:16 +0800
Subject: [PATCH] bug

---
 DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs |  179 +++++++++++++++++++++++++++++++++++++++++++++--------------
 1 files changed, 137 insertions(+), 42 deletions(-)

diff --git a/DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs b/DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs
index 1daefa8..872ac86 100644
--- a/DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs
+++ b/DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs
@@ -1238,6 +1238,10 @@
             {
                 tabControl.TabPages[0].PageEnabled = true;
                 tabControl.TabPages[1].PageEnabled = true;
+                if (tabControl.TabPages.Count > 2)
+                {
+                    tabControl.TabPages[2].PageEnabled = true;
+                }
                 tabControl.SelectedTabPageIndex = 0;
                 return;
             }
@@ -1252,6 +1256,10 @@
             {
                 tabControl.TabPages[0].PageEnabled = false;
                 tabControl.TabPages[1].PageEnabled = true;
+                if (tabControl.TabPages.Count > 2)
+                {
+                    tabControl.TabPages[2].PageEnabled = false;
+                }
                 tabControl.SelectedTabPageIndex = 1;
                 return;
             }
@@ -1259,6 +1267,10 @@
             {
                 tabControl.TabPages[0].PageEnabled = false;
                 tabControl.TabPages[1].PageEnabled = true;
+                if (tabControl.TabPages.Count >2)
+                {
+                    tabControl.TabPages[2].PageEnabled = false;
+                }
                 tabControl.SelectedTabPageIndex = 1;
                 return;
             }
@@ -1274,7 +1286,10 @@
             {
                 tabControl.TabPages[0].PageEnabled = true;
                 tabControl.TabPages[1].PageEnabled = true;
-
+                if (tabControl.TabPages.Count > 2)
+                {
+                    tabControl.TabPages[2].PageEnabled = true;
+                }
                 return;
             }
         }
@@ -1710,7 +1725,7 @@
         }
         public delegate void DelegateGetModel(string guid);
         public delegate void DelegateGetList(int currentPage);
-
+        public delegate void DelegateGetUserControlList();
         /// <summary>
         /// 
         /// </summary>
@@ -1845,6 +1860,26 @@
                     action2(_guid);
                 };
             }
+            gridView1.RowCellStyle += (s, e) =>
+            {
+                GridView view = s as GridView;
+                if (view != null && e.Column != null && e.CellValue != null)
+                {
+                    if (e.Column.FieldName.EndsWith("Color"))
+                    {
+                        int rowHandle = e.RowHandle;
+                        DataRow row = gridView1.GetDataRow(e.RowHandle);
+                        string _bgColor = row[e.Column.FieldName + "Rgb"].ToString();
+                        if (!string.IsNullOrEmpty(_bgColor))
+                        {
+                            Color bgColor = ColorTranslator.FromHtml(_bgColor);
+                            e.Appearance.BackColor = bgColor;
+                            //   e.Appearance.BackColor2 = Color.LightSkyBlue;
+                            //e.Appearance.ForeColor = ColorTranslator.FromHtml("#ffffff") ;
+                        }
+                    }
+                }
+            };
             gridView1.RowStyle += (s, e) =>
             {
                 //榛樿閫変腑琛屼笉鍙樿壊
@@ -1854,40 +1889,12 @@
                 if (e.RowHandle >= 0)
                 {
                     DataRow row = gridView1.GetDataRow(e.RowHandle);
-                    if (row == null)
-                        return;
-                    //杩欐槸danger鑹�
-                    bool columnExists = row.Table.Columns.Contains("isRed");
-                    if (columnExists == true)
-                    {
-                        string _isRed = row["isRed"].ToString();
-                        if (_isRed == "1")
-                        {
-                            e.Appearance.ForeColor = Color.Tomato;
-                        }
-                    }
-                    //杩欐槸success鑹�
-                    columnExists = row.Table.Columns.Contains("isSuccess");
-                    if (columnExists == true)
-                    {
-                        string _isRed = row["isSuccess"].ToString();
-                        if (_isRed == "1")
-                        {
-                            e.Appearance.ForeColor = Color.FromArgb(128, 255, 128);
-                        }
-                    }
                     // 璁剧疆鐒︾偣琛岀殑鑳屾櫙鑹�
                     if (gridView1.GetRow(e.RowHandle) == gridView1.GetFocusedRow())
                     {
                         e.Appearance.BackColor = Color.Azure;
                         e.Appearance.BackColor2 = Color.LightSkyBlue;
                     }
-                    //else if (gridView1.IsRowHotTracked(e.RowHandle))
-                    //{
-                    //    // 璁剧疆榧犳爣鎮仠琛岀殑鑳屾櫙鑹�
-                    //    e.Appearance.BackColor = Color.LightBlue;
-                    //    e.Appearance.BackColor2 = Color.LightBlue;
-                    //}
                 }
             };
             if (tips != null)
@@ -1937,7 +1944,7 @@
             edit.SelectAll();
         }
 
-        public static void SetGridLayout(GridView gridView1,int maxWidth=500)
+        public static void SetGridLayout(GridView gridView1, int maxWidth = 500)
         {
             foreach (GridColumn column in gridView1.Columns)
             {
@@ -1945,19 +1952,36 @@
                     column.Width = maxWidth;
             }
         }
- 
+
         /// <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;
@@ -1985,18 +2009,18 @@
                         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鏍峰紡
@@ -2129,6 +2153,77 @@
             sb.Append(" (select aboutGuid as fid from  SYS_USER_BIND where userGuid='" + LoginInfoModel.CurrentUser.LoginUserGuid + "' and ftype='缁勭粐')");
             return sb.ToString();
         }
+
+        /// <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);
+            }
+        }
         #endregion
 
 

--
Gitblit v1.9.3