From c58f2d6dfc34e40a20ed960b0da61924d680b25f Mon Sep 17 00:00:00 2001
From: lu <99954486@qq.com>
Date: 星期四, 05 十二月 2024 08:10:36 +0800
Subject: [PATCH] 到货单

---
 DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs |  268 ++++++++++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 252 insertions(+), 16 deletions(-)

diff --git a/DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs b/DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs
index 2a711c6..d0c5883 100644
--- a/DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs
+++ b/DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs
@@ -193,7 +193,14 @@
         {
             var dt = new DataTable();
             foreach (GridColumn col in gv.Columns)
-                dt.Columns.Add(col.FieldName, typeof(string));
+            {
+                if (col.UnboundDataType == typeof(bool))
+                    dt.Columns.Add(col.FieldName, typeof(System.Boolean));
+                else
+                {
+                    dt.Columns.Add(col.FieldName, typeof(string));
+                }
+            }
             gc.BindingContext = new BindingContext();
             gc.DataSource = dt;
             gc.ForceInitialize();
@@ -293,13 +300,16 @@
                 {
                     foreach (GridColumn colmn in gv.Columns)
                     {
-                        if (colmn.Name.ToString().Contains("gvMxDel"))
+                        if (colmn.Name.ToString().Contains("gvMxDel") || colmn.Name.ToString().Contains("gvMxTui"))
                         {
-                            colmn.Visible = !isEdt;
-                            break;
+                            //  colmn.Visible = !isEdt;
+                            //  break;
+                            colmn.OptionsColumn.AllowEdit =true;
                         }
+                        else
+                        colmn.OptionsColumn.AllowEdit = !isEdt;
                     }
-                    gv.OptionsBehavior.Editable = !isEdt;
+                    //gv.OptionsBehavior.Editable = !isEdt;
                 }
             var _btnAry = controls.Find("btnSelect", false);
             if (_btnAry.Length > 0)
@@ -509,6 +519,74 @@
                                 txt.Enabled = false;
                             continue;
                         }
+                        //鑷畾杞﹂棿
+                        if (colType is UcLookWorkshop)
+                        {
+                            var txt = colType as UcLookWorkshop;
+                            txt.SetIdOrCode(strVal);
+                            if (txt.IsReadly == false)
+                                txt.Enabled = !isEdt;
+                            else
+                                txt.Enabled = false;
+                            continue;
+                        }
+                        //鑷畾浜х嚎
+                        if (colType is UcLookWorkline)
+                        {
+                            var txt = colType as UcLookWorkline;
+                            txt.SetIdOrCode(strVal);
+                            if (txt.IsReadly == false)
+                                txt.Enabled = !isEdt;
+                            else
+                                txt.Enabled = false;
+                            continue;
+                        }
+                        //鑷畾鍗曚綅
+                        if (colType is UcLookUnit)
+                        {
+                            var txt = colType as UcLookUnit;
+                            txt.SetIdOrCode(strVal);
+                            if (txt.IsReadly == false)
+                                txt.Enabled = !isEdt;
+                            else
+                                txt.Enabled = false;
+                            continue;
+                        }
+
+                        //鑷畾瀹㈡埛
+                        if (colType is UcLookCustomer)
+                        {
+                            var txt = colType as UcLookCustomer;
+                            txt.SetIdOrCode(strVal);
+                            if (txt.IsReadly == false)
+                                txt.Enabled = !isEdt;
+                            else
+                                txt.Enabled = false;
+                            continue;
+                        }
+                        //鑷畾鍛樺伐
+                        if (colType is UcLookStaff)
+                        {
+                            var txt = colType as UcLookStaff;
+                            txt.SetIdOrCode(strVal);
+                            if (txt.IsReadly == false)
+                                txt.Enabled = !isEdt;
+                            else
+                                txt.Enabled = false;
+                            continue;
+                        }
+                        //鑷畾缁勭粐
+                        if (colType is UcLookOrg)
+                        {
+                            var txt = colType as UcLookOrg;
+                            txt.SetIdOrCode(strVal);
+                            if (txt.IsReadly == false)
+                                txt.Enabled = !isEdt;
+                            else
+                                txt.Enabled = false;
+                            continue;
+                        }
+
                         if (colType is SimpleButton)
                         {
                             var txt = colType as SimpleButton;
@@ -539,13 +617,16 @@
                 {
                     foreach (GridColumn colmn in gv.Columns)
                     {
-                        if (colmn.Name.ToString().Contains("gvMxDel"))
+                        if (colmn.Name.ToString().Contains("gvMxDel") || colmn.Name.ToString().Contains("gvMxTui"))
                         {
-                            colmn.Visible = !isEdt;
-                            break;
+                            //  colmn.Visible = !isEdt;
+                            //  break;
+                            colmn.OptionsColumn.AllowEdit = true;
                         }
+                        else
+                            colmn.OptionsColumn.AllowEdit = !isEdt;
                     }
-                    gv.OptionsBehavior.Editable = !isEdt;
+                    //gv.OptionsBehavior.Editable = !isEdt;
                 }
             foreach (Control ctrl in controls)
             {
@@ -641,6 +722,54 @@
                     txt.Enabled = !isEdt;
                     continue;
                 }
+                //鑷畾杞﹂棿
+                if (ctrl is UcLookWorkshop)
+                {
+                    var txt = ctrl as UcLookWorkshop;
+                    txt.SetIdOrCode("-1");
+                    txt.Enabled = !isEdt;
+                    continue;
+                }
+                //鑷畾浜х嚎
+                if (ctrl is UcLookWorkline)
+                {
+                    var txt = ctrl as UcLookWorkline;
+                    txt.SetIdOrCode("-1");
+                    txt.Enabled = !isEdt;
+                    continue;
+                }
+                //鑷畾鍗曚綅
+                if (ctrl is UcLookUnit)
+                {
+                    var txt = ctrl as UcLookUnit;
+                    txt.SetIdOrCode("-1");
+                    txt.Enabled = !isEdt;
+                    continue;
+                }
+                //鑷畾瀹㈡埛
+                if (ctrl is UcLookCustomer)
+                {
+                    var txt = ctrl as UcLookCustomer;
+                    txt.SetIdOrCode("-1");
+                    txt.Enabled = !isEdt;
+                    continue;
+                }
+                //鑷畾瀹㈡埛
+                if (ctrl is UcLookStaff)
+                {
+                    var txt = ctrl as UcLookStaff;
+                    txt.SetIdOrCode("-1");
+                    txt.Enabled = !isEdt;
+                    continue;
+                }
+                //鑷畾缁勭粐
+                if (ctrl is UcLookOrg)
+                {
+                    var txt = ctrl as UcLookOrg;
+                    txt.SetIdOrCode("-1");
+                    txt.Enabled = !isEdt;
+                    continue;
+                }
                 if (ctrl is SimpleButton)
                 {
                     var txt = ctrl as SimpleButton;
@@ -666,13 +795,16 @@
                 {
                     foreach (GridColumn colmn in gv.Columns)
                     {
-                        if (colmn.Name.ToString().Contains("gvMxDel"))
+                        if (colmn.Name.ToString().Contains("gvMxDel") || colmn.Name.ToString().Contains("gvMxTui"))
                         {
-                            colmn.Visible = !isEdt;
-                            break;
+                            //  colmn.Visible = !isEdt;
+                            //  break;
+                            colmn.OptionsColumn.AllowEdit = true;
                         }
+                        else
+                            colmn.OptionsColumn.AllowEdit = !isEdt;
                     }
-                    gv.OptionsBehavior.Editable = !isEdt;
+                    //gv.OptionsBehavior.Editable = !isEdt;
                 }
             foreach (Control ctrl in controls)
             {
@@ -749,6 +881,66 @@
                 if (ctrl is UcLookItems)
                 {
                     var txt = ctrl as UcLookItems;
+                    if (txt.IsReadly == false)
+                        txt.Enabled = !isEdt;
+                    else
+                        txt.Enabled = false;
+                    continue;
+                }
+                //鑷畾涔夎溅闂�
+                if (ctrl is UcLookWorkshop)
+                {
+                    var txt = ctrl as UcLookWorkshop;
+                    if (txt.IsReadly == false)
+                        txt.Enabled = !isEdt;
+                    else
+                        txt.Enabled = false;
+                    continue;
+                }
+                //鑷畾涔変骇绾�
+                if (ctrl is UcLookWorkline)
+                {
+                    var txt = ctrl as UcLookWorkline;
+                    if (txt.IsReadly == false)
+                        txt.Enabled = !isEdt;
+                    else
+                        txt.Enabled = false;
+                    continue;
+                }
+                //鑷畾涔夊崟浣�
+                if (ctrl is UcLookUnit)
+                {
+                    var txt = ctrl as UcLookUnit;
+                    if (txt.IsReadly == false)
+                        txt.Enabled = !isEdt;
+                    else
+                        txt.Enabled = false;
+                    continue;
+                }
+                //鑷畾涔夊鎴�
+                if (ctrl is UcLookCustomer)
+                {
+                    var txt = ctrl as UcLookCustomer;
+                    if (txt.IsReadly == false)
+                        txt.Enabled = !isEdt;
+                    else
+                        txt.Enabled = false;
+                    continue;
+                }
+                //鑷畾涔夊憳宸�
+                if (ctrl is UcLookStaff)
+                {
+                    var txt = ctrl as UcLookStaff;
+                    if (txt.IsReadly == false)
+                        txt.Enabled = !isEdt;
+                    else
+                        txt.Enabled = false;
+                    continue;
+                }
+                //鑷畾缁勭粐
+                if (ctrl is UcLookOrg)
+                {
+                    var txt = ctrl as UcLookOrg;
                     if (txt.IsReadly == false)
                         txt.Enabled = !isEdt;
                     else
@@ -1102,7 +1294,7 @@
                 if (string.IsNullOrEmpty(filter.FilterString))
                     continue;
                 //  fiList.Add(new FilterEntity("b.FNumber", "浣跨敤缁勭粐", " like ", "鍖呭惈", "%" + filter.Value + "%"));
-                string[] ddd = filter.FilterString.Replace("Contains","").Replace("(","").Replace(")","").Replace("'", "").Replace("'", "").Split(',');
+                string[] ddd = filter.FilterString.Replace("Contains", "").Replace("(", "").Replace(")", "").Replace("'", "").Replace("'", "").Split(',');
                 //Contains([fSubsidiary], '005')
                 fiList.Add(getFilterEntityWord(col.Tag.ToString(), col.Caption.Trim(), ddd[1].Trim()));
             }
@@ -1125,7 +1317,7 @@
                         _sbSqlWhere.Append(" and  org.FNumber " + itm.fileOper + "'" + itm.fileValue + "'");
                     else
                     {
-                       _sbSqlWhere.Append(" and  org.NAME " + itm.fileOper + "'" + itm.fileValue.Trim() + "'");
+                        _sbSqlWhere.Append(" and  org.NAME " + itm.fileOper + "'" + itm.fileValue.Trim() + "'");
                     }
                 }
                 else
@@ -1145,12 +1337,31 @@
                 column.OptionsFilter.AutoFilterCondition = AutoFilterCondition.Contains;
                 column.OptionsFilter.ImmediateUpdateAutoFilter = false;
                 column.OptionsColumn.AllowEdit = false;
-                if (column.Tag==null || column.Tag.ToString().Length <= 0)
+                if (column.Tag == null || column.Tag.ToString().Length <= 0)
                     column.OptionsFilter.AllowAutoFilter = false;
             }
             gridView1.OptionsFilter.AllowAutoFilterConditionChange = DevExpress.Utils.DefaultBoolean.False;
             gridView1.OptionsFilter.AllowFilterEditor = false;
             gridView1.OptionsFilter.ShowCustomFunctions = DevExpress.Utils.DefaultBoolean.False;
+            gridView1.OptionsCustomization.AllowFilter = false;
+            gridView1.OptionsFind.ShowSearchNavButtons = false;
+            gridView1.OptionsView.ShowAutoFilterRow = true;
+            gridView1.OptionsView.ShowGroupPanel = false;
+            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);
+            };
+
         }
         #endregion
 
@@ -1160,6 +1371,31 @@
             Regex regex = new Regex("^[0-9]+$");
             return regex.IsMatch(str);
         }
+
+        /// <summary>
+        /// yz_quantity_0锛寉z_瀛楁_绫诲瀷
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        public static void SetValidatingEditor(object sender, BaseContainerValidateEditorEventArgs e)
+        {
+            //yz_quantity_0
+            GridView view = sender as GridView;
+            if (view.FocusedColumn.Tag != null && view.FocusedColumn.Tag.ToString().StartsWith("yz_"))
+            {
+                string[] _ary = view.FocusedColumn.Tag.ToString().Split('_');
+                if (_ary.Length > 2)
+                {
+                    if (_ary[2] == "0")
+                    {
+                        double price = 0; if (!Double.TryParse(e.Value as String, out price))
+                        { e.Valid = false; e.ErrorText = "璇疯緭鍏ユ纭殑鏁板瓧."; }
+                        return;
+                    }
+                }
+            }
+        }
+
     }
 
     /// <summary>

--
Gitblit v1.9.3