lu
2025-03-11 d37df25d14c9bf8ddaa4a0578dd8a84e2ffc7900
DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs
@@ -14,11 +14,11 @@
using System.Text.RegularExpressions;
using System.Threading.Tasks;
using System.Windows.Forms;
using DevExpress.Utils.DirectXPaint;
using DevExpress.XtraEditors;
using DevExpress.XtraEditors.Controls;
using DevExpress.XtraGrid;
using DevExpress.XtraGrid.Columns;
using DevExpress.XtraGrid.Menu;
using DevExpress.XtraGrid.Views.Grid;
using DevExpress.XtraTab;
using DevExpress.XtraTreeList;
@@ -26,7 +26,6 @@
using Gs.DevApp.UserControl;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
using OracleInternal.Sharding;
using UserControls.Data;
using static System.Windows.Forms.Control;
@@ -642,7 +641,17 @@
                                txt.Enabled = false;
                            continue;
                        }
                        //自定销售
                        if (colType is UcLookSales)
                        {
                            var txt = colType as UcLookSales;
                            txt.SetIdOrCode(strVal);
                            if (txt.IsReadly == false)
                                txt.Enabled = !isEdt;
                            else
                                txt.Enabled = false;
                            continue;
                        }
                        if (colType is SimpleButton)
                        {
                            var txt = colType as SimpleButton;
@@ -781,14 +790,14 @@
                if (ctrl is CheckEdit)
                {
                    var txt = ctrl as CheckEdit;
                    txt.ReadOnly = isEdt;
                    if (txt.Tag != null && txt.Tag.ToString().Length > 0 && txt.Tag.ToString().StartsWith("moren"))
                    if (_isRead(txt.Tag))
                    {
                        txt.Checked = bool.Parse(txt.Tag.ToString().Replace("moren.", ""));
                        txt.ReadOnly = true;
                    }
                    else
                        txt.Checked = false;
                        txt.ReadOnly = isEdt;
                    continue;
                }
                //自定义仓库
                if (ctrl is UcLookCk)
@@ -910,7 +919,14 @@
                    txt.Enabled = !isEdt;
                    continue;
                }
                //自定销售
                if (ctrl is UcLookSales)
                {
                    var txt = ctrl as UcLookSales;
                    txt.SetIdOrCode("-1");
                    txt.Enabled = !isEdt;
                    continue;
                }
                if (ctrl is SimpleButton)
                {
                    var txt = ctrl as SimpleButton;
@@ -1162,6 +1178,16 @@
                        txt.Enabled = false;
                    continue;
                }
                //自定销售
                if (ctrl is UcLookSales)
                {
                    var txt = ctrl as UcLookSales;
                    if (txt.IsReadly == false)
                        txt.Enabled = !isEdt;
                    else
                        txt.Enabled = false;
                    continue;
                }
                if (ctrl is SimpleButton)
                {
                    var txt = ctrl as SimpleButton;
@@ -1347,6 +1373,11 @@
                return 0;
            }
        }
        public static decimal? GetDecimal(string s)
        {
            if (string.IsNullOrEmpty(s)) return null;
            return decimal.Parse(s);
        }
        public static int ToInt(string str)
        {
@@ -1569,7 +1600,7 @@
            GridView dgv = s as GridView;
            if (dgv != null)
            {
                if (dgv.GetSelectedRows() != null)
                if (dgv.GetSelectedRows() != null && dgv.GetSelectedRows().Count()>0)
                {
                    var selectedRow = dgv.GetSelectedRows()[0]; // 获取第一个选中行的索引
                    if (selectedRow >= 0)
@@ -1588,7 +1619,7 @@
                            btnChkIco.Tag = "未审核";
                        }
                        btnChkIco.Anchor = AnchorStyles.Top | AnchorStyles.Right; // 靠右
                        btnChkIco.Location = new Point(fm.ClientSize.Width - btnChkIco.Width - 20, 80); // 距离顶部10像素
                        btnChkIco.Location = new Point(fm.ClientSize.Width - btnChkIco.Width - 20, 25); // 距离顶部10像素
                    }
                }
            }
@@ -1701,9 +1732,30 @@
        /// <param name="fileName">字段</param>
        /// <param name="icoName">图标路径</param>
        /// <param name="action"></param>
        public static void SetGridViewParameter(GridView gridView1, PictureBox picCheckBox = null, Form fm = null, string fileName = "checkStatus", string icoName = "", DelegateGetModel action = null, string namespaceFullName = "")
        public static void SetGridViewParameter(GridView gridView1, PictureBox picCheckBox = null, Form fm = null, string fileName = "checkStatus", string icoName = "", DelegateGetModel action = null)
        {
            getGridViewConfig(gridView1, namespaceFullName);
            gridView1.PopupMenuShowing += (s, e) =>
            {
                if (e.MenuType == DevExpress.XtraGrid.Views.Grid.GridMenuType.Column)
                {
                    GridViewColumnMenu menu = e.Menu as GridViewColumnMenu;
                    if (menu != null)
                    {
                        string[] ary = { "Column Chooser", "Hide This Column", "Clear All Sorting", "Clear Sorting", "Sort Descending", "Sort Ascending", "Best Fit (all columns)" };
                        for (int i = menu.Items.Count - 1; i >= 0; i--)
                        {
                            string _caption = menu.Items[i].Caption;
                            if (!ary.Contains(_caption))
                            {
                                menu.Items.Remove(menu.Items[i]);
                            }
                        }
                    }
                }
            };
            gridView1.OptionsView.ShowGroupPanel = false;
            gridView1.OptionsCustomization.AllowGroup = false;
            gridView1.Appearance.HeaderPanel.ForeColor = DevExpress.LookAndFeel.DXSkinColors.ForeColors.ControlText;
            gridView1.OptionsView.ColumnAutoWidth = false;//自动调整列宽
            foreach (GridColumn column in gridView1.Columns)
@@ -1808,7 +1860,6 @@
                    //}
                }
            };
        }
        private static void ActiveEditor_MouseUp(object sender, MouseEventArgs e)
        {
@@ -1865,6 +1916,28 @@
        /// <param name="icoName"></param>
        public static void SetGridViewParameterMx(GridView gridView1)
        {
            gridView1.PopupMenuShowing += (s, e) =>
            {
                if (e.MenuType == DevExpress.XtraGrid.Views.Grid.GridMenuType.Column)
                {
                    GridViewColumnMenu menu = e.Menu as GridViewColumnMenu;
                    if (menu != null)
                    {
                        string[] ary = { "Column Chooser", "Hide This Column", "Clear All Sorting", "Clear Sorting", "Sort Descending", "Sort Ascending", "Best Fit (all columns)" };
                        for (int i = menu.Items.Count - 1; i >= 0; i--)
                        {
                            string _caption = menu.Items[i].Caption;
                            if (!ary.Contains(_caption))
                            {
                                menu.Items.Remove(menu.Items[i]);
                            }
                        }
                    }
                }
            };
            gridView1.OptionsView.ShowGroupPanel = false;
            gridView1.OptionsCustomization.AllowGroup = false;
            // gridView1.OptionsView.Alignment = DataGridViewContentAlignment.MiddleLeft;
            foreach (GridColumn column in gridView1.Columns)
            {
@@ -1920,12 +1993,11 @@
            return regex.IsMatch(str);
        }
        private static void getGridViewConfig(GridView gridView1, string namespaceFullName)
        public static void getGridViewConfig(string namespaceFullName, List<DevExpress.XtraGrid.Views.Grid.GridView> gvList)
        {
            gridView1.OptionsView.ShowGroupPanel = false;
           // gridView1.OptionsMenu.EnableColumnMenu = false;
            gridView1.OptionsCustomization.AllowGroup = false;
            if (string.IsNullOrEmpty(namespaceFullName)) return;
            // gridView1.ShowCustomization();
            // gridView1.OptionsMenu.EnableColumnMenu = false;
            JArray array = new JArray();
            var _obj = new
            {
                formPath = namespaceFullName,
@@ -1937,23 +2009,9 @@
                if (_rtn.rtnCode > 0)
                {
                    JObject _job = JObject.Parse(strJson);
                    JArray array = new JArray();
                    foreach (var a in _job["rtnData"]["list"])
                    {
                        array.Add(a);
                    }
                    foreach (GridColumn column in gridView1.Columns)
                    {
                        JToken john = array.FirstOrDefault(t => t["controlId"].ToString().ToUpper() == column.Name.ToString().Trim().ToUpper());
                        if (john != null)
                        {
                            string controlIdx = john["controlIdx"].ToString();
                            string controlVisible = john["controlVisible"].ToString();
                            if (!string.IsNullOrEmpty(controlIdx))
                                column.VisibleIndex = int.Parse(controlIdx);
                            if (!string.IsNullOrEmpty(controlVisible))
                                column.Visible = bool.Parse(controlVisible);
                        }
                    }
                }
                else
@@ -1963,6 +2021,45 @@
            {
                ToolBox.MsgHelper.Warning("提示:" + ex.Message);
            }
            foreach (GridView gridView1 in gvList)
            {
                gridView1.PopupMenuShowing += (s, e) =>
                {
                    if (e.MenuType == DevExpress.XtraGrid.Views.Grid.GridMenuType.Column)
                    {
                        GridViewColumnMenu menu = e.Menu as GridViewColumnMenu;
                        if (menu != null)
                        {
                            string[] ary = { "Column Chooser", "Hide This Column", "Clear All Sorting", "Clear Sorting", "Sort Descending", "Sort Ascending", "Best Fit (all columns)" };
                            for (int i = menu.Items.Count - 1; i >= 0; i--)
                            {
                                string _caption = menu.Items[i].Caption;
                                if (!ary.Contains(_caption))
                                {
                                    menu.Items.Remove(menu.Items[i]);
                                }
                            }
                        }
                    }
                };
                gridView1.OptionsView.ShowGroupPanel = false;
                gridView1.OptionsCustomization.AllowGroup = false;
                if (string.IsNullOrEmpty(namespaceFullName)) return;
                foreach (GridColumn column in gridView1.Columns)
                {
                    JToken john = array.FirstOrDefault(t => t["controlId"].ToString().ToUpper() == column.Name.ToString().Trim().ToUpper());
                    if (john != null)
                    {
                        string controlIdx = john["controlIdx"].ToString();
                        string controlVisible = john["controlVisible"].ToString();
                        if (!string.IsNullOrEmpty(controlIdx))
                            column.VisibleIndex = int.Parse(controlIdx);
                        if (!string.IsNullOrEmpty(controlVisible))
                            column.Visible = bool.Parse(controlVisible);
                    }
                }
            }
        }
    }