From c78ffe15080b3218671f03c7d85a5e8edd484b62 Mon Sep 17 00:00:00 2001
From: lg <999544862qq.com>
Date: 星期日, 22 九月 2024 20:54:15 +0800
Subject: [PATCH] 仓库管理

---
 DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs |  209 +++++++++++++++++++++++++++++++++++++++++++---------
 1 files changed, 173 insertions(+), 36 deletions(-)

diff --git a/DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs b/DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs
index 235ded3..38b4766 100644
--- a/DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs
+++ b/DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs
@@ -15,6 +15,7 @@
 using DevExpress.XtraEditors;
 using DevExpress.XtraTab;
 using System.Text.RegularExpressions;
+using System.Collections.Generic;
 
 namespace Gs.DevApp.ToolBox
 {
@@ -73,6 +74,17 @@
             }
             return responseStr;
         }
+
+        /// <summary>
+        /// 璇诲彇榛樿椤靛ぇ灏�
+        /// </summary>
+        /// <returns></returns>
+        public static int GetPageSize()
+        {
+            return 50;
+            // return int.Parse(System.Configuration.ConfigurationSettings.AppSettings.Get("PageSize").ToString());
+        }
+
         /// <summary>
         /// 鏍规嵁鍥剧墖鍚嶈鍙栬祫婧愭枃浠�,涓嶅甫鍚庣紑鍚�
         /// </summary>
@@ -112,11 +124,11 @@
             return token;
         }
         /// <summary>
-        /// 鏍囧噯json涓茶繑鍥濺eturnModel-->table锛�
+        /// 鏍囧噯json杩斿洖ReturnModel-->鍖呭惈TablePage鍒嗛〉锛�
         /// </summary>
         /// <param name="strReturn"></param>
         /// <returns></returns>
-        public static ReturnModel<PageListModel> GetTableByJson(string strReturn)
+        public static ReturnModel<PageListModel> ReturnToTablePage(string strReturn)
         {
             ReturnModel<PageListModel> rto = new ReturnModel<PageListModel>();
             JObject json = JObject.Parse(strReturn);
@@ -137,11 +149,11 @@
             return rto;
         }
         /// <summary>
-        /// 鏍囧噯json涓茶繑鍥濺eturnModel->瀛楃涓诧紝
+        /// 鏍囧噯json杩斿洖ReturnModel锛�
         /// </summary>
         /// <param name="strReturn"></param>
         /// <returns></returns>
-        public static ReturnModel<dynamic> GetDataByJson(string strReturn)
+        public static ReturnModel<dynamic> ReturnToDynamic(string strReturn)
         {
             ReturnModel<dynamic> rto = new ReturnModel<dynamic>();
             JObject json = JObject.Parse(strReturn);
@@ -152,11 +164,11 @@
         }
 
         /// <summary>
-        /// 鏍囧噯json涓茶繑鍥濺eturnModel-->table锛�
+        /// 鏍囧噯json涓茶繑鍥濺eturnModel-->浠呬粎鏈塴ist,涓嶅垎椤碉紝
         /// </summary>
         /// <param name="strReturn"></param>
         /// <returns></returns>
-        public static ReturnModel<DataTable> GetNoPageTableByJson(string strReturn)
+        public static ReturnModel<DataTable> ReturnToList(string strReturn)
         {
             ReturnModel<DataTable> rto = new ReturnModel<DataTable>();
             JObject json = JObject.Parse(strReturn);
@@ -174,26 +186,21 @@
             return rto;
         }
 
-
-        /// <summary>
-        /// 璇诲彇榛樿椤靛ぇ灏�
-        /// </summary>
-        /// <returns></returns>
-        public static int GetPageSize()
-        {
-            return 50;
-            // return int.Parse(System.Configuration.ConfigurationSettings.AppSettings.Get("PageSize").ToString());
-        }
-
         /// <summary>
         /// 鏍规嵁瀵硅薄鎵归噺璁剧疆鏂囨湰鍊�
         /// </summary>
         /// <param name="controls">controls:涓篻roupBox1.Controls/panel1.Controls</param>
         /// <param name="dynamicObject">瀵瑰儚</param>
         /// <param name="isEdt">鏄惁鍙紪杈�</param>
-        public static void SetValueByObj(ControlCollection controls, dynamic dynamicObject, Boolean isEdt)
+        public static void SetValueByObj(ControlCollection controls, dynamic dynamicObject, Boolean isEdt, List<DevExpress.XtraGrid.Views.Grid.GridView> gridViews = null)
         {
-
+            if (gridViews != null)
+            {
+                foreach (DevExpress.XtraGrid.Views.Grid.GridView gv in gridViews)
+                {
+                    gv.OptionsBehavior.Editable = isEdt;
+                }
+            }
             foreach (JProperty property in dynamicObject.Properties())
             {
                 string strName = property.Name;
@@ -220,7 +227,7 @@
                             if (txt != null)
                             {
                                 txt.EditValue = strVal;
-                               // txt.Text = strVal;
+                                // txt.Text = strVal;
                             }
                             txt.Enabled = isEdt;
                             continue;
@@ -263,6 +270,15 @@
                             txt.Enabled = isEdt;
                             continue;
                         }
+                        //鏃堕棿
+                        if (colType is DateTimePicker)
+                        {
+                            DateTimePicker txt = colType as DateTimePicker;
+                            if (txt != null)
+                                txt.Checked = (strVal.ToString() == "1" ? true : false);
+                            txt.Enabled = isEdt;
+                            continue;
+                        }
                     }
                 }
                 catch (Exception ex)
@@ -280,8 +296,15 @@
         /// </summary>
         /// <param name="controls">controls:涓篻roupBox1.Controls/panel1.Controls</param>
         /// <param name="isEdt">鏄惁鍙紪杈�</param>
-        public static void CleanValue(ControlCollection controls, Boolean isEdt)
+        public static void CleanValueByControl(ControlCollection controls, Boolean isEdt, List<DevExpress.XtraGrid.Views.Grid.GridView> gridViews = null)
         {
+            if (gridViews != null)
+            {
+                foreach (DevExpress.XtraGrid.Views.Grid.GridView gv in gridViews)
+                {
+                    gv.OptionsBehavior.Editable = isEdt;
+                }
+            }
             foreach (Control ctrl in controls)
             {
                 ctrl.Enabled = isEdt;
@@ -318,10 +341,19 @@
         /// </summary>
         /// <param name="controls">controls:涓篻roupBox1.Controls/panel1.Controls</param>
         /// <param name="isEdt">鏄惁鍙紪杈�</param>
-        public static void ChangeEnable(ControlCollection controls, Boolean isEdt)
+        public static void ChangeEnableByControl(ControlCollection controls, Boolean isEdt, List<DevExpress.XtraGrid.Views.Grid.GridView> gridViews = null)
         {
+            if (gridViews != null)
+            {
+                foreach (DevExpress.XtraGrid.Views.Grid.GridView gv in gridViews)
+                {
+                    gv.OptionsBehavior.Editable = isEdt;
+                }
+            }
+          
             foreach (Control ctrl in controls)
             {
+                ctrl.Enabled = isEdt;
                 //鏂囨湰
                 if (ctrl is TextEdit)
                 {
@@ -334,7 +366,12 @@
                     ctrl.Enabled = isEdt;
                     continue;
                 }
-
+                //鏃ユ湡
+                if (ctrl is DateTimePicker)
+                {
+                    ctrl.Enabled = isEdt;
+                    continue;
+                }
             }
         }
 
@@ -343,7 +380,7 @@
         /// </summary>
         /// <param name="tabControl">閫夐」鍗″鍣�</param>
         /// <param name="idx">浠�0寮�濮嬶紝濡傛灉鏄�999锛屽垯鍏ㄩ儴鍙敤</param>
-        public static void ChangeTab(XtraTabControl tabControl, int idx)
+        public static void JumpToTab(XtraTabControl tabControl, int idx)
         {
             if (idx == 999)
             {
@@ -361,7 +398,6 @@
             tabControl.TabPages[idx].PageEnabled = true;
             tabControl.SelectedTabPageIndex = idx;
         }
-
 
         public static void TreeViewCheck(TreeViewEventArgs e)
         {
@@ -416,20 +452,121 @@
         /// </summary>
         /// <param name="input"></param>
         /// <returns></returns>
-        public static string ToCamelCase(string input)
+        public static string ToCamelCase(string propertyName)
         {
-            if (string.IsNullOrEmpty(input))
-                return input;
-
-            // 鍖归厤闈炲瓧姣嶆暟瀛楀瓧绗﹀悗鐨勭涓�涓瓧姣嶏紝骞跺皢鍏惰浆鎹负澶у啓
-            return Regex.Replace(
-                input,
-                "([a-z])([A-Z])",
-                "$1$2",
-                RegexOptions.CultureInvariant
-            ).Trim();
+            if (propertyName.Length > 0 && propertyName.All(char.IsUpper))
+                propertyName = propertyName.ToLower();
+            string dd = Regex.Replace(propertyName, @"_([a-z])", m => m.Groups[1].Value.ToUpper());
+            return dd;
         }
 
+        /// <summary>
+        /// 
+        /// </summary>
+        /// <param name="xtraTabControl1"></param>
+        /// <param name="lbGuid">缂栬緫妗嗕腑鐨勪富閿悕</param>
+        /// <param name="txtName">缂栬緫妗嗕腑鐨勬枃鏈鍚�</param>
+        /// <param name="gridView1"></param>
+        /// <param name="gridRowName">鍒楄〃涓殑鏂囨湰鍒楀悕</param>
+        /// <param name="SelectedTabPageIndex"></param>
+        /// <returns></returns>
+        public static (string, string) GetCurrentRow(XtraTabControl xtraTabControl1
+            , System.Windows.Forms.Label lbGuid
+            , DevExpress.XtraEditors.TextEdit txtName
+            , DevExpress.XtraGrid.Views.Grid.GridView gridView1
+            , int SelectedTabPageIndex = 1)
+        {
+            string _strGuid = "";
+            string _strName = "";
+            if (xtraTabControl1.SelectedTabPageIndex == SelectedTabPageIndex && lbGuid.Text.Length > 10)
+            {
+                _strGuid = lbGuid.Text.Trim();
+                _strName = txtName.Text.Trim();
+            }
+            else
+            {
+                DataRow dr = gridView1.GetFocusedDataRow();
+                if (dr == null || string.IsNullOrEmpty(dr["guid"].ToString()))
+                {
 
+                }
+                else {
+                    _strGuid = dr["guid"].ToString();
+                    _strName = dr[1].ToString();
+                }
+            }
+            return (_strGuid, _strName);
+        }
+        public static (string, string) GetCurrentRow(XtraTabControl xtraTabControl1
+            , System.Windows.Forms.Label lbGuid
+            , DevExpress.XtraEditors.TextEdit txtName
+            , System.Windows.Forms.TreeView tlMenu
+            , int SelectedTabPageIndex = 1)
+        {
+            string _strGuid = "";
+            string _strName = "";
+            if (xtraTabControl1.SelectedTabPageIndex == SelectedTabPageIndex && lbGuid.Text.Length > 10)
+            {
+                _strGuid = lbGuid.Text.Trim();
+                _strName = txtName.Text.Trim();
+            }
+            else
+            {
+                TreeNode clickedNode = tlMenu.SelectedNode;
+                if (clickedNode != null)
+                {
+                    _strGuid = clickedNode.Name.ToString();
+                    _strName = clickedNode.Text.Trim();
+                }
+            }
+            return (_strGuid, _strName);
+        }
+        public static (string, string) GetCurrentRow(XtraTabControl xtraTabControl1
+            , System.Windows.Forms.Label lbGuid
+             , DevExpress.XtraEditors.TextEdit txtName
+            , DevExpress.XtraTreeList.TreeList tlMenu
+            , int SelectedTabPageIndex = 1)
+        {
+            string _strGuid = "";
+            string _strName = "";
+            if (xtraTabControl1.SelectedTabPageIndex == SelectedTabPageIndex && lbGuid.Text.Length > 10)
+            {
+                _strGuid = lbGuid.Text.Trim();
+                _strName = txtName.Text.Trim();
+            }
+            else
+            {
+                _strGuid = tlMenu.FocusedNode.GetValue("guid").ToString();
+                _strName = tlMenu.FocusedNode.GetValue(0).ToString();
+            }
+            return (_strGuid, _strName);
+        }
+    }
+
+    public class CboItemEntity
+    {
+        private object _text = 0;
+        private object _Value = "";
+        /// <summary>
+        /// 鏄剧ず鍊�
+        /// </summary>
+        public object Text
+        {
+            get { return this._text; }
+            set { this._text = value; }
+        }
+        /// <summary>
+        /// 瀵硅薄鍊�
+        /// </summary>
+        public object Value
+        {
+            get { return this._Value; }
+            set { this._Value = value; }
+        }
+
+        public override string ToString()
+        {
+            return this.Text.ToString();
+        }
     }
 }

--
Gitblit v1.9.3