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 |  367 +++++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 306 insertions(+), 61 deletions(-)

diff --git a/DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs b/DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs
index af004f7..38b4766 100644
--- a/DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs
+++ b/DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs
@@ -1,6 +1,5 @@
 锘縰sing Newtonsoft.Json.Linq;
 using System;
-using System.Collections.Generic;
 using System.Data;
 using System.IO;
 using System.Linq;
@@ -10,11 +9,13 @@
 using System.Resources;
 using System.Drawing;
 using Newtonsoft.Json;
-using Gs.DevApp.Models;
+using Gs.DevApp.Entity;
 using System.Windows.Forms;
 using static System.Windows.Forms.Control;
 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);
@@ -150,89 +162,176 @@
             rto.rtnData = json["rtnData"];
             return rto;
         }
-        /// <summary>
-        /// 璁剧疆绯荤粺瀛椾綋澶у皬锛岀洰鍓嶅苟涓嶉�氱敤
-        /// </summary>
-        public static float GetFontSize = 10;
-        public static void SetFont(Control control)
-        {
-            float size = GetFontSize;
-            foreach (Control childControl in control.Controls)
-            {
-                childControl.Font = new Font(childControl.Font.FontFamily, size, childControl.Font.Style);
-                SetFont(childControl);
-            }
-        }
 
         /// <summary>
-        /// 璇诲彇榛樿椤靛ぇ灏�
+        /// 鏍囧噯json涓茶繑鍥濺eturnModel-->浠呬粎鏈塴ist,涓嶅垎椤碉紝
         /// </summary>
+        /// <param name="strReturn"></param>
         /// <returns></returns>
-        public static int GetPageSize()
+        public static ReturnModel<DataTable> ReturnToList(string strReturn)
         {
-            return int.Parse(System.Configuration.ConfigurationSettings.AppSettings.Get("PageSize").ToString());
+            ReturnModel<DataTable> rto = new ReturnModel<DataTable>();
+            JObject json = JObject.Parse(strReturn);
+            rto.rtnCode = int.Parse(json["rtnCode"].ToString());
+            rto.rtnMsg = json["rtnMsg"].ToString();
+            rto.rtnData = new DataTable();
+            JArray array = new JArray();
+            var d = json["rtnData"];
+            foreach (var a in d)
+            {
+                array.Add(a);
+            }
+            DataTable dt = JsonConvert.DeserializeObject<DataTable>(array.ToString());
+            rto.rtnData = dt;
+            return rto;
         }
 
         /// <summary>
-        /// 鏍规嵁瀵硅薄鎵归噺璁剧疆鏂囨湰鍊�,
+        /// 鏍规嵁瀵硅薄鎵归噺璁剧疆鏂囨湰鍊�
         /// </summary>
-        /// <param name="controls"></param>
-        /// <param name="dynamicObject"></param>
-        public static void SetValueByObj(ControlCollection controls, dynamic dynamicObject, Boolean isEdt)
+        /// <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, 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())
             {
-                //Console.WriteLine("Name: {0}, Value: {1}", property.Name, property.Value);
                 string strName = property.Name;
                 string strVal = property.Value.ToString();
-                //    // 濡傛灉value鏄竴涓璞★紝鍙互閫掑綊閬嶅巻
-                //    if (property.Value is JObject)
-                //    {
-                //        JObject nestedObject = (JObject)property.Value;
-                //        foreach (JProperty nestedProperty in nestedObject.Properties())
-                //        {
-                //            Console.WriteLine("\tName: {0}, Value: {1}", nestedProperty.Name, nestedProperty.Value);
-                //        }
-                //    }
-                Control[] cols = controls.Find("txt_" + strName, true);
-                if (cols.Length > 0)
+                try
                 {
-                    Control colType = cols[0];
-                    if (colType is ComboBoxEdit)
+                    //    // 濡傛灉value鏄竴涓璞★紝鍙互閫掑綊閬嶅巻
+                    //    if (property.Value is JObject)
+                    //    {
+                    //        JObject nestedObject = (JObject)property.Value;
+                    //        foreach (JProperty nestedProperty in nestedObject.Properties())
+                    //        {
+                    //            Console.WriteLine("\tName: {0}, Value: {1}", nestedProperty.Name, nestedProperty.Value);
+                    //        }
+                    //    }
+                    Control[] cols = controls.Find("txt_" + strName, true);
+                    if (cols.Length > 0)
                     {
-                        ComboBoxEdit txt = colType as ComboBoxEdit;
-                        txt.SelectedIndex = int.Parse(strVal);
-                        txt.Enabled = isEdt;
-                        continue;
-                    }
-                    if (colType is TextEdit)
-                    {
-                        TextEdit txt = colType as TextEdit;
-                        if (txt != null)
+                        Control colType = cols[0];
+                        //LookUpEdit
+                        if (colType is LookUpEdit)
                         {
-                            txt.Text = strVal;
+                            LookUpEdit txt = colType as LookUpEdit;
+                            if (txt != null)
+                            {
+                                txt.EditValue = strVal;
+                                // txt.Text = strVal;
+                            }
                             txt.Enabled = isEdt;
+                            continue;
                         }
-                        continue;
+                        //涓嬫媺
+                        if (colType is ComboBoxEdit)
+                        {
+                            ComboBoxEdit txt = colType as ComboBoxEdit;
+                            if (txt.Properties.TextEditStyle == DevExpress.XtraEditors.Controls.TextEditStyles.DisableTextEditor)
+                                txt.SelectedIndex = int.Parse(strVal);
+                            else
+                                txt.Text = strVal;
+                            txt.Enabled = isEdt;
+                            continue;
+                        }
+                        //鏂囨湰
+                        if (colType is TextEdit)
+                        {
+                            TextEdit txt = colType as TextEdit;
+                            if (txt != null)
+                                txt.Text = strVal;
+                            txt.Enabled = isEdt;
+                            continue;
+                        }
+                        //鏁板瓧鍗�
+                        if (colType is NumericUpDown)
+                        {
+                            NumericUpDown txt = colType as NumericUpDown;
+                            if (txt != null)
+                                txt.Text = strVal;
+                            txt.Enabled = isEdt;
+                            continue;
+                        }
+                        //鍗曢��
+                        if (colType is CheckEdit)
+                        {
+                            CheckEdit txt = colType as CheckEdit;
+                            if (txt != null)
+                                txt.Checked = (strVal.ToString() == "1" ? true : false);
+                            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)
+                {
+
+                    MessageBox.Show(strName + ex.Message);
                 }
 
             }
+
         }
 
         /// <summary>
         /// 娓呯┖瀹瑰櫒閲岄潰鐨勬帶浠�
         /// </summary>
-        /// <param name="controls">瀹瑰櫒</param>
-        /// <param name="isEdt">娓呯┖鍚庢槸鍚﹀彲缂栬緫</param>
-        public static void CleanValue(ControlCollection controls, Boolean isEdt)
+        /// <param name="controls">controls:涓篻roupBox1.Controls/panel1.Controls</param>
+        /// <param name="isEdt">鏄惁鍙紪杈�</param>
+        public static void CleanValueByControl(ControlCollection controls, Boolean isEdt, List<DevExpress.XtraGrid.Views.Grid.GridView> gridViews = null)
         {
-            foreach (Control ctrl in controls)//鎴栦负groupBox1.Controls/panel1.Controls
+            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 MemoEdit)
+                {
+                    MemoEdit txt = ctrl as MemoEdit;
+                    txt.Text = "";
+                    txt.Enabled = isEdt;
+                    continue;
+                }
+                //涓嬫媺
+                if (ctrl is ComboBoxEdit)
+                {
+                    ComboBoxEdit txt = ctrl as ComboBoxEdit;
+                    if (txt.Properties.TextEditStyle == DevExpress.XtraEditors.Controls.TextEditStyles.DisableTextEditor)
+                        txt.SelectedIndex = 0;
+                    else
+                        txt.Text = "";
+                    txt.Enabled = isEdt;
+                    continue;
+                }
+                //鏂囨湰
                 if (ctrl is TextEdit)
                 {
                     ctrl.Text = "";
-                    ctrl.Enabled = isEdt;
+                    continue;
                 }
             }
         }
@@ -240,14 +339,39 @@
         /// <summary>
         /// 绂佺敤鎴栧惎鐢ㄥ鍣ㄩ噷闈㈢殑鎺т欢
         /// </summary>
-        /// <param name="controls">瀹瑰櫒</param>
+        /// <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)
         {
-            foreach (Control ctrl in controls)//鎴栦负groupBox1.Controls/panel1.Controls
+            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)
+                {
                     ctrl.Enabled = isEdt;
+                    continue;
+                }
+                //鏁板瓧鍗�
+                if (ctrl is NumericUpDown)
+                {
+                    ctrl.Enabled = isEdt;
+                    continue;
+                }
+                //鏃ユ湡
+                if (ctrl is DateTimePicker)
+                {
+                    ctrl.Enabled = isEdt;
+                    continue;
+                }
             }
         }
 
@@ -256,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)
             {
@@ -274,7 +398,6 @@
             tabControl.TabPages[idx].PageEnabled = true;
             tabControl.SelectedTabPageIndex = idx;
         }
-
 
         public static void TreeViewCheck(TreeViewEventArgs e)
         {
@@ -323,5 +446,127 @@
             }
 
         }
+
+        /// <summary>
+        /// 杞┘宄板懡鍚�
+        /// </summary>
+        /// <param name="input"></param>
+        /// <returns></returns>
+        public static string ToCamelCase(string propertyName)
+        {
+            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