From d70880a3d9ae6c9f99ec380ccd16f5524bb622e6 Mon Sep 17 00:00:00 2001 From: lu <99954486@qq.com> Date: 星期六, 05 四月 2025 09:06:31 +0800 Subject: [PATCH] 修改按钮状态 --- DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs | 1326 ++++++++++++++++++++++++++++++++++++++++++++++++++------ 1 files changed, 1,167 insertions(+), 159 deletions(-) diff --git a/DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs b/DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs index cc511a4..b2474d0 100644 --- a/DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs +++ b/DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs @@ -4,6 +4,7 @@ using System.Data; using System.Drawing; using System.IO; +using System.Linq; using System.Net; using System.Net.Cache; using System.Net.Http; @@ -17,6 +18,7 @@ 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; @@ -24,7 +26,9 @@ using Gs.DevApp.UserControl; using Newtonsoft.Json; using Newtonsoft.Json.Linq; +using UserControls.Data; using static System.Windows.Forms.Control; + namespace Gs.DevApp.ToolBox { @@ -57,70 +61,38 @@ } } } - /// <summary> - /// httpPost璁块棶鏈嶅姟 - /// </summary> - /// <param name="url">鏈嶅姟鍦板潃</param> - /// <param name="meth">鏂规硶鍚嶇О</param> - /// <param name="param">鍙傛暟</param> - /// <returns></returns> - public static async Task<string> HttpPostAsync(string url, string meth, string param) + + public static (Size, string, Color, Padding) getLoading() { - if (string.IsNullOrEmpty(url)) - url = WebApiUrl; - url += meth; - var request = (HttpWebRequest)WebRequest.Create(url); - request.Method = "POST"; - request.ContentType = "application/json"; - request.Headers.Add("token", GetBasicAuthTicket()); - request.Accept = "*/*"; - request.Timeout = 15000; - request.AllowAutoRedirect = false; - request.ServicePoint.Expect100Continue = false; - HttpRequestCachePolicy noCachePolicy = new HttpRequestCachePolicy(HttpRequestCacheLevel.NoCacheNoStore); - request.CachePolicy = noCachePolicy; - using (Stream requestStream = await request.GetRequestStreamAsync()) - { - byte[] dataBytes = Encoding.UTF8.GetBytes(param); - await requestStream.WriteAsync(dataBytes, 0, dataBytes.Length); - } - - using (WebResponse response = await request.GetResponseAsync()) - { - using (StreamReader reader = new StreamReader(response.GetResponseStream())) - { - return await reader.ReadToEndAsync(); - } - } + Size _size = new Size(360, 90); + return (_size, "鎷煎懡鍔犺浇涓紝璇风◢鍚�...", System.Drawing.Color.LightSkyBlue, new Padding(15)); } - - /// <summary> - /// httpPost璁块棶鏈嶅姟 - /// </summary> - /// <param name="url">鏈嶅姟鍦板潃</param> - /// <param name="meth">鏂规硶鍚嶇О</param> - /// <param name="param">鍙傛暟</param> - /// <returns></returns> public static string HttpPost(string url, string meth, string param) { - if (string.IsNullOrEmpty(url)) - url = WebApiUrl; - url += meth; - var request = (HttpWebRequest)WebRequest.Create(url); - request.Method = "POST"; - request.ContentType = "application/json"; - request.Headers.Add("token", GetBasicAuthTicket()); - request.Accept = "*/*"; - request.Timeout = 15000; - request.AllowAutoRedirect = false; - request.ServicePoint.Expect100Continue = false; - HttpRequestCachePolicy noCachePolicy = new HttpRequestCachePolicy(HttpRequestCacheLevel.NoCacheNoStore); - request.CachePolicy = noCachePolicy; + Size _size; string _caption; Color _color; Padding _pad; + (_size, _caption, _color, _pad) = getLoading(); + DevExpress.Utils.WaitDialogForm wdf = new DevExpress.Utils.WaitDialogForm("鍔犺浇杩涘害:"+meth, _caption, _size); + wdf.BackColor = _color; + wdf.Padding = _pad; + HttpWebRequest request = null; StreamWriter requestStream = null; WebResponse response = null; string responseStr = null; try { + if (string.IsNullOrEmpty(url)) + url = WebApiUrl; + url += meth; + request = (HttpWebRequest)WebRequest.Create(url); + request.Method = "POST"; + request.ContentType = "application/json"; + request.Headers.Add("token", GetBasicAuthTicket()); + request.Accept = "*/*"; + request.Timeout = 150000; + request.AllowAutoRedirect = false; + request.ServicePoint.Expect100Continue = false; + HttpRequestCachePolicy noCachePolicy = new HttpRequestCachePolicy(HttpRequestCacheLevel.NoCacheNoStore); + request.CachePolicy = noCachePolicy; requestStream = new StreamWriter(request.GetRequestStream()); requestStream.Write(param); requestStream.Close(); @@ -136,6 +108,7 @@ } catch (Exception ex) { + wdf.Close(); LogHelper.Debug(url, param + ":" + ex.Message); throw ex; } @@ -145,7 +118,7 @@ requestStream = null; response = null; } - + wdf.Close(); return responseStr; } @@ -193,7 +166,14 @@ { var dt = new DataTable(); foreach (GridColumn col in gv.Columns) - dt.Columns.Add(col.FieldName, typeof(string)); + { + if (col.UnboundDataType == typeof(System.Boolean)) + 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(); @@ -209,11 +189,7 @@ string.IsNullOrEmpty(LoginInfoModel.CurrentUser.LoginUserGuid) ? Guid.NewGuid().ToString() : LoginInfoModel.CurrentUser.LoginUserGuid; - var orgGuid = - string.IsNullOrEmpty(LoginInfoModel.CurrentUser.LoginOrgGuid) - ? Guid.NewGuid().ToString() - : LoginInfoModel.CurrentUser.LoginOrgGuid; - var token = userGuid + "~" + orgGuid; + var token = userGuid; return token; } @@ -289,18 +265,39 @@ { isEdt = !isEdt; if (gridViews != null) + { foreach (var gv in gridViews) { foreach (GridColumn colmn in gv.Columns) { - if (colmn.Name.ToString().Contains("gvMxDel")) + colmn.OptionsColumn.AllowEdit = true; + + if (colmn.Name.ToString().Contains("gvBtnAlawys")) + { + colmn.Visible = true; + colmn.OptionsColumn.ReadOnly = false; + }; + if (colmn.Name.ToString().Contains("gvMxDel") || colmn.Name.ToString().Contains("gvMxTui")) { colmn.Visible = !isEdt; - break; + if (colmn.Visible == true) + colmn.VisibleIndex = 99999; + } + else + { + if (isEdt == false) + { + if (colmn.Tag != null && colmn.Tag.ToString().EndsWith("edit")) + colmn.OptionsColumn.ReadOnly = isEdt; + else + colmn.OptionsColumn.ReadOnly = !isEdt; + } + else + colmn.OptionsColumn.ReadOnly = isEdt; } } - gv.OptionsBehavior.Editable = !isEdt; } + } var _btnAry = controls.Find("btnSelect", false); if (_btnAry.Length > 0) { @@ -331,7 +328,6 @@ txt.ReadOnly = isEdt; continue; } - if (colType is ImageComboBoxEdit) { var txt = colType as ImageComboBoxEdit; @@ -346,32 +342,25 @@ } continue; } - if (colType is ComboBoxEdit) { var txt = colType as ComboBoxEdit; if (txt.Properties.TextEditStyle == TextEditStyles.DisableTextEditor) - txt.SelectedIndex = int.Parse(strVal); + try + { + txt.SelectedIndex = int.Parse(strVal); + } + catch (Exception) + { + + txt.Text = strVal; + } else txt.Text = strVal; txt.ReadOnly = isEdt; continue; } - - //涓嬫媺 - if (colType is ComboBoxEdit) - { - var txt = colType as ComboBoxEdit; - if (txt.Properties.TextEditStyle == - TextEditStyles.DisableTextEditor) - txt.SelectedIndex = int.Parse(strVal); - else - txt.Text = strVal; - txt.ReadOnly = isEdt; - continue; - } - //鑷畾涔変笅鎷� if (colType is UcComBox) { @@ -380,14 +369,18 @@ txt.Enabled = !isEdt; continue; } - //鏂囨湰 if (colType is TextEdit) { var txt = colType as TextEdit; if (txt != null) txt.Text = strVal; - txt.ReadOnly = isEdt; + if (_isRead(txt.Tag)) + { + txt.ReadOnly = true; + } + else + txt.ReadOnly = isEdt; continue; } if (colType is MemoEdit) @@ -395,10 +388,14 @@ var txt = colType as MemoEdit; if (txt != null) txt.Text = strVal; - txt.ReadOnly = isEdt; + if (_isRead(txt.Tag)) + { + txt.ReadOnly = true; + } + else + txt.ReadOnly = isEdt; continue; } - //鏁板瓧鍗� if (colType is NumericUpDown) { @@ -408,11 +405,41 @@ txt.ReadOnly = isEdt; continue; } - //鍗曢�� if (colType is CheckEdit) { var txt = colType as CheckEdit; + if (_isRead(txt.Tag)) + { + txt.ReadOnly = true; + } + else + txt.ReadOnly = isEdt; + if (txt != null) + { + switch (strVal) + { + case "True": + txt.Checked = true; + break; + case "1": + txt.Checked = true; + break; + case "False": + txt.Checked = false; + break; + default: + txt.Checked = false; + break; + } + } + + continue; + } + //鍗曢�� + if (colType is CheckBox) + { + var txt = colType as CheckBox; if (txt != null) switch (strVal) { @@ -429,28 +456,10 @@ txt.Checked = false; break; } - - txt.ReadOnly = isEdt; - continue; - } - - //鍗曢�� - if (colType is CheckBox) - { - var txt = colType as CheckBox; - if (txt != null) - txt.Checked = bool.Parse(strVal); txt.Enabled = !isEdt; continue; } - if (colType is CheckEdit) - { - var txt = colType as CheckEdit; - if (txt != null) - txt.Checked = bool.Parse(strVal); - txt.ReadOnly = isEdt; - continue; - } + //鏃堕棿 if (colType is DateTimePicker) { @@ -459,7 +468,6 @@ txt.Enabled = !isEdt; continue; } - //Label if (colType is Label) { @@ -509,10 +517,165 @@ 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 UcLookUser) + { + var txt = colType as UcLookUser; + txt.SetIdOrCode(strVal); + if (txt.IsReadly == false) + txt.Enabled = !isEdt; + else + txt.Enabled = false; + continue; + } + //鑷畾鎵撳嵃鏈� + if (colType is UcLookPrint) + { + var txt = colType as UcLookPrint; + txt.SetIdOrCode(strVal); + if (txt.IsReadly == false) + txt.Enabled = !isEdt; + else + txt.Enabled = false; + continue; + } + //鑷畾缂洪櫡绫诲埆 + if (colType is UcLookDefectType) + { + var txt = colType as UcLookDefectType; + txt.SetIdOrCode(strVal); + if (txt.IsReadly == false) + txt.Enabled = !isEdt; + else + txt.Enabled = false; + continue; + } + //鑷畾閮ㄩ棬 + if (colType is UcLookDepartment) + { + var txt = colType as UcLookDepartment; + txt.SetIdOrCode(strVal); + if (txt.IsReadly == false) + txt.Enabled = !isEdt; + else + txt.Enabled = false; + continue; + } + //鑷畾daa + if (colType is UcLookDaa) + { + var txt = colType as UcLookDaa; + txt.SetIdOrCode(strVal); + if (txt.IsReadly == false) + txt.Enabled = !isEdt; + else + txt.Enabled = false; + continue; + } + //鑷畾濮斿 + if (colType is UcLookWwgd) + { + var txt = colType as UcLookWwgd; + txt.SetIdOrCode(strVal); + if (txt.IsReadly == false) + txt.Enabled = !isEdt; + else + 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; txt.Enabled = !isEdt; + continue; + } + + //鑷畾涓嶈壇 + if (colType is UcDictionary) + { + var txt = colType as UcDictionary; + txt.TextTxt = (strVal); + //if (txt.IsReadly == false) + // txt.Enabled = !isEdt; + //else + // txt.Enabled = false; continue; } } @@ -520,6 +683,18 @@ catch (Exception ex) { MessageBox.Show(ex.Message); + } + } + + foreach (Control ctrl in controls) + { + if (ctrl is TextEdit) + { + var txt = ctrl as TextEdit; + bool _bl = _isRead(txt.Tag, isEdt); + txt.ReadOnly = _bl; + // txt.ReadOnly = isEdt; + continue; } } } @@ -535,29 +710,51 @@ { isEdt = !isEdt; if (gridViews != null) + { foreach (var gv in gridViews) { foreach (GridColumn colmn in gv.Columns) { - if (colmn.Name.ToString().Contains("gvMxDel")) + colmn.OptionsColumn.AllowEdit = true; + if (colmn.Name.ToString().Contains("gvMxDel") || colmn.Name.ToString().Contains("gvMxTui")) { colmn.Visible = !isEdt; - break; + } + else + { + if (isEdt == false) + { + if (colmn.Tag != null && colmn.Tag.ToString().EndsWith("edit")) + colmn.OptionsColumn.ReadOnly = isEdt; + else + colmn.OptionsColumn.ReadOnly = !isEdt; + } + else + colmn.OptionsColumn.ReadOnly = isEdt; } } - gv.OptionsBehavior.Editable = !isEdt; } + } foreach (Control ctrl in controls) { //澶氳鏂囨湰 if (ctrl is MemoEdit) { var txt = ctrl as MemoEdit; - txt.Text = ""; - txt.ReadOnly = isEdt; + if (txt.Tag != null && txt.Tag.ToString().Length > 0 && txt.Tag.ToString().StartsWith("moren")) + { + txt.Text = txt.Tag.ToString().Replace("moren.", ""); + } + else + txt.Text = ""; + if (_isRead(txt.Tag)) + { + txt.ReadOnly = true; + } + else + txt.ReadOnly = isEdt; continue; } - //涓嬫媺 if (ctrl is ComboBoxEdit) { @@ -570,7 +767,6 @@ txt.ReadOnly = isEdt; continue; } - //鑷畾涔夌殑涓嬫媺 if (ctrl is UcComBox) { @@ -579,21 +775,22 @@ txt.Enabled = !isEdt; continue; } - //鏂囨湰 if (ctrl is TextEdit) { var txt = ctrl as TextEdit; - txt.Text = ""; - txt.ReadOnly = isEdt; - continue; - } - if (ctrl is MemoEdit) - { - var txt = ctrl as MemoEdit; - if (txt != null) + if (txt.Tag != null && txt.Tag.ToString().Length > 0 && txt.Tag.ToString().StartsWith("moren")) + { + txt.Text = txt.Tag.ToString().Replace("moren.", ""); + } + else txt.Text = ""; - txt.ReadOnly = isEdt; + if (_isRead(txt.Tag)) + { + txt.ReadOnly = true; + } + else + txt.ReadOnly = isEdt; continue; } //鏃堕棿 @@ -607,16 +804,20 @@ if (ctrl is CheckBox) { var txt = ctrl as CheckBox; - txt.Checked = false; txt.Enabled = !isEdt; + txt.Checked = false; } if (ctrl is CheckEdit) { var txt = ctrl as CheckEdit; - txt.ReadOnly = isEdt; + if (_isRead(txt.Tag)) + { + txt.ReadOnly = true; + } + else + txt.ReadOnly = isEdt; continue; } - //鑷畾涔変粨搴� if (ctrl is UcLookCk) { @@ -641,13 +842,116 @@ 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 UcLookUser) + { + var txt = ctrl as UcLookUser; + txt.SetIdOrCode("-1"); + txt.Enabled = !isEdt; + continue; + } + //鑷畾鎵撳嵃鏈� + if (ctrl is UcLookPrint) + { + var txt = ctrl as UcLookPrint; + txt.SetIdOrCode("-1"); + txt.Enabled = !isEdt; + continue; + } + //鑷畾缂洪櫡绫诲埆 + if (ctrl is UcLookDefectType) + { + var txt = ctrl as UcLookDefectType; + txt.SetIdOrCode("-1"); + txt.Enabled = !isEdt; + continue; + } + //鑷畾閮ㄩ棬 + if (ctrl is UcLookDepartment) + { + var txt = ctrl as UcLookDepartment; + txt.SetIdOrCode("-1"); + txt.Enabled = !isEdt; + continue; + } + //鑷畾daa + if (ctrl is UcLookDaa) + { + var txt = ctrl as UcLookDaa; + txt.SetIdOrCode("-1"); + txt.Enabled = !isEdt; + continue; + } + //鑷畾濮斿 + if (ctrl is UcLookWwgd) + { + var txt = ctrl as UcLookWwgd; + txt.SetIdOrCode("-1"); + 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; txt.Enabled = !isEdt; continue; } - } } @@ -662,31 +966,49 @@ { isEdt = !isEdt; if (gridViews != null) + { foreach (var gv in gridViews) { foreach (GridColumn colmn in gv.Columns) { - if (colmn.Name.ToString().Contains("gvMxDel")) + colmn.OptionsColumn.AllowEdit = true; + if (colmn.Name.ToString().Contains("gvMxDel") || colmn.Name.ToString().Contains("gvMxTui")) { colmn.Visible = !isEdt; - break; + } + else + { + if (colmn.Tag != null && colmn.Tag.ToString().EndsWith("edit")) + colmn.OptionsColumn.ReadOnly = isEdt; + else + colmn.OptionsColumn.ReadOnly = isEdt; } } - gv.OptionsBehavior.Editable = !isEdt; } + } foreach (Control ctrl in controls) { //鏂囨湰 if (ctrl is TextEdit) { var txt = ctrl as TextEdit; - txt.ReadOnly = isEdt; + if (_isRead(txt.Tag)) + { + txt.ReadOnly = true; + } + else + txt.ReadOnly = isEdt; continue; } if (ctrl is MemoEdit) { var txt = ctrl as MemoEdit; - txt.ReadOnly = isEdt; + if (_isRead(txt.Tag)) + { + txt.ReadOnly = true; + } + else + txt.ReadOnly = isEdt; continue; } //鏁板瓧鍗� @@ -718,35 +1040,256 @@ ctrl.Enabled = !isEdt; continue; } - + // if (ctrl is CheckEdit) { var txt = ctrl as CheckEdit; txt.ReadOnly = isEdt; continue; } + //鑷畾涔変粨搴� + if (ctrl is UcLookCk) + { + var txt = ctrl as UcLookCk; + if (txt.IsReadly == false) + txt.Enabled = !isEdt; + else + txt.Enabled = false; + continue; + } + //鑷畾涔変緵搴斿晢 + if (ctrl is UcLookSupplier) + { + var txt = ctrl as UcLookSupplier; + if (txt.IsReadly == false) + txt.Enabled = !isEdt; + else + txt.Enabled = false; + continue; + } + //鑷畾涔夌墿鏂� + 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 + txt.Enabled = false; + continue; + } + //鑷畾鐢ㄦ埛 + if (ctrl is UcLookUser) + { + var txt = ctrl as UcLookUser; + if (txt.IsReadly == false) + txt.Enabled = !isEdt; + else + txt.Enabled = false; + continue; + } + //鑷畾鎵撳嵃 + if (ctrl is UcLookPrint) + { + var txt = ctrl as UcLookPrint; + if (txt.IsReadly == false) + txt.Enabled = !isEdt; + else + txt.Enabled = false; + continue; + } + //鑷畾缂洪櫡绫诲埆 + if (ctrl is UcLookDefectType) + { + var txt = ctrl as UcLookDefectType; + if (txt.IsReadly == false) + txt.Enabled = !isEdt; + else + txt.Enabled = false; + continue; + } + //鑷畾閮ㄩ棬 + if (ctrl is UcLookDepartment) + { + var txt = ctrl as UcLookDepartment; + if (txt.IsReadly == false) + txt.Enabled = !isEdt; + else + txt.Enabled = false; + continue; + } + //鑷畾daa + if (ctrl is UcLookDaa) + { + var txt = ctrl as UcLookDaa; + if (txt.IsReadly == false) + txt.Enabled = !isEdt; + else + txt.Enabled = false; + continue; + } + //鑷畾濮斿 + if (ctrl is UcLookWwgd) + { + var txt = ctrl as UcLookWwgd; + if (txt.IsReadly == false) + txt.Enabled = !isEdt; + else + 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; + txt.Enabled = !isEdt; + continue; + } } } - /// <summary> - /// 鍒囨崲閫夐」鍗� - /// </summary> - /// <param name="tabControl">閫夐」鍗″鍣�</param> - /// <param name="idx">浠�0寮�濮嬶紝濡傛灉鏄�999锛屽垯鍏ㄩ儴鍙敤</param> - public static void JumpToTab(XtraTabControl tabControl, int idx) + private static bool _isRead(object obj, bool isEdt = false) { - if (idx == 999) + ///姘歌繙鏄彧璇荤殑 + if (obj != null && obj.ToString().ToUpper() == ("readOnly".ToUpper())) { - for (var i = 0; i < tabControl.TabPages.Count; i++) - tabControl.TabPages[i].PageEnabled = true; - tabControl.SelectedTabPageIndex = tabControl.TabPages.Count - 1; + return true; + } + ///姘歌繙鏄彲鍐欑殑 + if (obj != null && obj.ToString().ToUpper() == ("readOnly-1".ToUpper())) + { + return false; + } + return isEdt; + } + + + /// <summary> + /// tab璺宠浆锛�0鏌ョ湅锛�1閫�鍑猴紝2鍒犻櫎锛�3淇敼锛�4鏂板鍔�,6淇濆瓨鍚� + /// </summary> + /// <param name="tabControl"></param> + /// <param name="idx">0鏌ョ湅锛�1閫�鍑猴紝2鍒犻櫎锛�3淇敼锛�4鏂板鍔�,6淇濆瓨鍚�</param> + public static void JumpTab(XtraTabControl tabControl, int action) + { + + if (action == 0) + { + tabControl.TabPages[0].PageEnabled = true; + tabControl.TabPages[1].PageEnabled = true; + tabControl.SelectedTabPageIndex = 1; + return; + } + if (action == 1) + { + tabControl.TabPages[0].PageEnabled = true; + tabControl.TabPages[1].PageEnabled = true; + tabControl.SelectedTabPageIndex = 0; + return; + } + if (action == 2) + { + tabControl.TabPages[0].PageEnabled = true; + tabControl.TabPages[1].PageEnabled = true; + tabControl.SelectedTabPageIndex = 0; + return; + } + if (action == 3) + { + tabControl.TabPages[0].PageEnabled = false; + tabControl.TabPages[1].PageEnabled = true; + tabControl.SelectedTabPageIndex = 1; + return; + } + if (action == 4) + { + tabControl.TabPages[0].PageEnabled = false; + tabControl.TabPages[1].PageEnabled = true; + tabControl.SelectedTabPageIndex = 1; + return; + } + if (action == 5) + { + tabControl.TabPages[0].PageEnabled = true; + tabControl.TabPages[1].PageEnabled = true; + tabControl.SelectedTabPageIndex = 1; return; } - for (var i = 0; i < tabControl.TabPages.Count; i++) - tabControl.TabPages[i].PageEnabled = false; - tabControl.TabPages[idx].PageEnabled = true; - tabControl.SelectedTabPageIndex = idx; + if (action == 6) + { + tabControl.TabPages[0].PageEnabled = true; + tabControl.TabPages[1].PageEnabled = true; + + return; + } } /// <summary> @@ -826,7 +1369,23 @@ if (string.IsNullOrEmpty(str)) return Guid.Empty; return Guid.Parse(str); } + public static decimal ToDecimal(string str) + { + try + { + return decimal.Parse(str); + } + catch (Exception) + { + return 0; + } + } + public static decimal? GetDecimal(string s) + { + if (string.IsNullOrEmpty(s)) return null; + return decimal.Parse(s); + } public static int ToInt(string str) { try @@ -851,6 +1410,21 @@ return 0; } } + + public static int ToBit(string str) + { + if (str.ToUpper() == "true".ToUpper()) + return 1; + return 0; + } + public static bool ToBoole(string str) + { + if (str.ToUpper() == "true".ToUpper()) + return true; + return false; + } + + /// <summary> /// 璇诲彇grid鐨勫綋鍓嶈 /// </summary> @@ -865,6 +1439,7 @@ , Label lbGuid , TextEdit txtName , GridView gridView1 + , string fileName = "" , int SelectedTabPageIndex = 1) { var _strGuid = ""; @@ -884,7 +1459,10 @@ else { _strGuid = dr["guid"].ToString(); - _strName = dr[1].ToString(); + if (string.IsNullOrEmpty(fileName)) + _strName = dr[1].ToString(); + else + _strName = dr[fileName].ToString(); } } @@ -986,7 +1564,6 @@ } } } - return ""; } @@ -1012,7 +1589,6 @@ return rowGuid; } } - return ""; } @@ -1025,26 +1601,451 @@ /// <param name="fm"></param> /// <param name="fileName">瀵瑰簲鐨勫鏍稿瓧娈靛悕绉�</param> /// <param name="icoName"></param> - public static void SetCheckIco(object s, PictureBox btnChkIco, Form fm,string fileName= "checkStatus", string icoName="") + public static void SetCheckIco(object s, PictureBox btnChkIco, Form fm, string fileName = "checkStatus", string icoName = "") { GridView dgv = s as GridView; - if (dgv != null) { - if (dgv.GetSelectedRows() != null) { + if (dgv != null) + { + if (dgv.GetSelectedRows() != null && dgv.GetSelectedRows().Count() > 0) + { var selectedRow = dgv.GetSelectedRows()[0]; // 鑾峰彇绗竴涓�変腑琛岀殑绱㈠紩 - if (selectedRow >= 0) { + if (selectedRow >= 0) + { var checkStatus = dgv.GetRowCellValue(selectedRow, fileName).ToString(); // 鑾峰彇鎸囧畾鍒楃殑鍊� btnChkIco.Text = checkStatus; btnChkIco.Visible = true; - if (checkStatus == "1" || checkStatus.ToUpper() == true.ToString().ToUpper()) + if (checkStatus == "1" || checkStatus.ToUpper() == true.ToString().ToUpper() || checkStatus == "宸插鏍�") + { btnChkIco.Image = global::Gs.DevApp.Properties.Resources.ico_check; + btnChkIco.Tag = "宸插鏍�"; + } else + { btnChkIco.Image = global::Gs.DevApp.Properties.Resources.ico_noCheck; + 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鍍忕礌 } } } } + + /// <summary> + /// + /// </summary> + /// <param name="gridView1"></param> + /// <param name="zdChk">chk瀛楁</param> + /// <param name="zdChkUser">chk user</param> + /// <param name="zdCkDate">chk date</param> + /// <param name="btnChkIco"></param> + /// <param name="fm">褰撳墠绐椾綋</param> + /// <param name="fileName">1涓哄鏍革紝0涓哄弽瀹℃牳</param> + /// <param name="icoName"></param> + public static void SetCheckIco(GridView gridView1, string zdChk, string zdChkUser, string zdCkDate, PictureBox btnChkIco, Form fm, string fileName, string icoName = "") + { + btnChkIco.Anchor = AnchorStyles.Top | AnchorStyles.Right; // 闈犲彸 + btnChkIco.Location = new Point(fm.ClientSize.Width - btnChkIco.Width - 20, 80); // 璺濈椤堕儴10鍍忕礌 + if (gridView1 == null) + { + btnChkIco.Visible = true; + if (fileName == "1") + { + btnChkIco.Image = global::Gs.DevApp.Properties.Resources.ico_check; + btnChkIco.Tag = "宸插鏍�"; + } + else + { + btnChkIco.Image = global::Gs.DevApp.Properties.Resources.ico_noCheck; + btnChkIco.Tag = "鏈鏍�"; + } + return; + } + if (fileName == "1" || fileName.ToUpper() == true.ToString().ToUpper()) + { + btnChkIco.Image = global::Gs.DevApp.Properties.Resources.ico_check; + btnChkIco.Tag = "宸插鏍�"; + if (!string.IsNullOrEmpty(zdChkUser)) + gridView1.SetFocusedRowCellValue(zdChkUser, "宸插鏍�"); + if (!string.IsNullOrEmpty(zdCkDate)) + gridView1.SetFocusedRowCellValue(zdCkDate, DateTime.Now.ToString()); + if (!string.IsNullOrEmpty(zdChk)) + gridView1.SetFocusedRowCellValue(zdChk, true); + } + else + { + btnChkIco.Image = global::Gs.DevApp.Properties.Resources.ico_noCheck; + btnChkIco.Tag = "鏈鏍�"; + if (!string.IsNullOrEmpty(zdChkUser)) + gridView1.SetFocusedRowCellValue(zdChkUser, ""); + if (!string.IsNullOrEmpty(zdCkDate)) + gridView1.SetFocusedRowCellValue(zdCkDate, ""); + if (!string.IsNullOrEmpty(zdChk)) + gridView1.SetFocusedRowCellValue(zdChk, false); + } + + } + + #region 璁剧疆鎼滅储 + + public static FilterEntity getFilterEntityWord(string id, string idDec, string val, string type) + { + return new FilterEntity(id, idDec + ")", " like ", "鍖呭惈)", "%" + val + "%", type); + } + public static List<FilterEntity> GetDilter(GridColumnCollection Columns, GridView gridView1 = null) + { + List<FilterEntity> fiList = new List<FilterEntity>(); + if (gridView1 != null) + { + bool b = gridView1.ActiveFilterEnabled; + if (b == false) + return fiList; + } + foreach (DevExpress.XtraGrid.Columns.GridColumn col in Columns) + { + ColumnFilterInfo filter = col.FilterInfo; + 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(','); + //Contains([fSubsidiary], '005') + fiList.Add(getFilterEntityWord(col.Tag.ToString(), col.Caption.Trim(), ddd[1].Trim(), col.UnboundExpression)); + } + return fiList; + } + + /// <summary> + /// 鏍规嵁杩囨护鍣紝璇诲彇鏌ヨ鏉′欢,org琛ㄤ负缁勭粐 + /// </summary> + /// <param name="_filterList"></param> + /// <returns></returns> + public static string GetSearchWhere(List<FilterEntity> _filterList) + { + var _sbSqlWhere = new StringBuilder(); + foreach (var itm in _filterList) + { + if (itm.fileId.ToUpper().Contains("org".ToUpper())) + { + if (IsNumeric(itm.fileValue.Replace("%", ""))) + _sbSqlWhere.Append(" and org.FNumber " + itm.fileOper + "'" + itm.fileValue + "'"); + else + { + _sbSqlWhere.Append(" and org.NAME " + itm.fileOper + "'" + itm.fileValue.Trim() + "'"); + } + } + else + { + switch (itm.fileType) + { + case "鏃堕棿绫诲瀷": + _sbSqlWhere.Append(" and CONVERT(nvarchar(30)," + itm.fileId + ",23)" + itm.fileOper + "'" + itm.fileValue + "'"); + break; + //case "鏁板�肩被鍨�": + // _sbSqlWhere.Append(" and " + itm.fileId + itm.fileOper + "'" + itm.fileValue + "'"); + // break; + default: + _sbSqlWhere.Append(" and " + itm.fileId + itm.fileOper + "'" + itm.fileValue + "'"); + break; + } + } + } + return _sbSqlWhere.ToString(); + } + + + public delegate void DelegateGetModel(string guid); + public delegate void DelegateGetList(int currentPage); + /// <summary> + /// 璁剧疆涓昏〃鐨勬牱寮� + /// </summary> + /// <param name="gridView1">gridview</param> + /// <param name="picCheckBox">鍥炬爣鎸夐挳</param> + /// <param name="fm"></param> + /// <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) + { + 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) + { + column.AppearanceCell.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Near; + column.OptionsColumn.AllowEdit = true; + // column.OptionsFilter.AutoFilterCondition = AutoFilterCondition.Contains; + column.OptionsFilter.AutoFilterCondition = DevExpress.XtraGrid.Columns.AutoFilterCondition.Contains; + column.OptionsFilter.ImmediateUpdateAutoFilter = false; + if (column.Tag == null || column.Tag.ToString().EndsWith("edit")) + column.OptionsColumn.ReadOnly = false; + else + column.OptionsColumn.ReadOnly = true; + if (column.Tag == null || column.Tag.ToString().Length <= 0) + column.OptionsFilter.AllowAutoFilter = false; + } + gridView1.OptionsFilter.AllowAutoFilterConditionChange = DevExpress.Utils.DefaultBoolean.False; + gridView1.OptionsView.ShowAutoFilterRow = true; + gridView1.OptionsFilter.AllowFilterEditor = false; + gridView1.OptionsFilter.ShowCustomFunctions = DevExpress.Utils.DefaultBoolean.False; + gridView1.OptionsFilter.AllowColumnMRUFilterList = false; + gridView1.OptionsFilter.AllowMRUFilterList = false; + gridView1.OptionsCustomization.AllowFilter = false; + gridView1.OptionsFind.ShowSearchNavButtons = false; + gridView1.OptionsView.ShowGroupPanel = false; + //鏄惁鏄剧ず搴曢儴鐨勮繃婊ゆ潯 + // gridView1.OptionsView.ShowFilterPanelMode = DevExpress.XtraGrid.Views.Base.ShowFilterPanelMode.Never; + 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); + }; + if (picCheckBox != null) + { + gridView1.FocusedRowChanged += (s, e) => + { + UtilityHelper.SetCheckIco(s, picCheckBox, fm, fileName, icoName); + }; + } + if (action != null) + { + gridView1.ShownEditor += (sender, e) => + { + DevExpress.XtraGrid.Views.Grid.GridView view = sender as DevExpress.XtraGrid.Views.Grid.GridView; + view.ActiveEditor.DoubleClick += (ssssss, eeeeeee) => + { + int _handle = gridView1.FocusedRowHandle; + if (_handle == -1) + return; + DataRow row = gridView1.GetDataRow(_handle); + if (row == null) + return; + string _guid = row["guid"].ToString(); + if (string.IsNullOrEmpty(_guid)) + return; + action(_guid); + }; + if (view.ActiveEditor is TextEdit) + view.ActiveEditor.MouseUp += ActiveEditor_MouseUp; + }; + } + gridView1.RowStyle += (s, e) => + { + //榛樿閫変腑琛屼笉鍙樿壊 + gridView1.OptionsSelection.EnableAppearanceFocusedRow = false; + //榛樿閫変腑鍗曞厓鏍间笉鍙樿壊 + gridView1.OptionsSelection.EnableAppearanceFocusedCell = false; + if (e.RowHandle >= 0) + { + DataRow row = gridView1.GetDataRow(e.RowHandle); + if (row == null) + return; + bool columnExists = row.Table.Columns.Contains("isRed"); + if (columnExists == true) + { + string _isRed = row["isRed"].ToString(); + if (_isRed == "1") + { + e.Appearance.ForeColor = Color.Tomato; + } + } + // 璁剧疆鐒︾偣琛岀殑鑳屾櫙鑹� + 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; + //} + } + }; + } + private static void ActiveEditor_MouseUp(object sender, MouseEventArgs e) + { + BaseEdit edit = sender as BaseEdit; + edit.MouseUp -= ActiveEditor_MouseUp; + edit.SelectAll(); + } + + public static void SetGridLayout(GridView gridView1) + { + foreach (GridColumn column in gridView1.Columns) + { + if (column.Width > 500) + column.Width = 500; + } + } + + /// <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) + { + xtraTabControl1.SelectedPageChanged += (s, e) => + { + if (xtraTabControl1.SelectedTabPageIndex == 1) + { + int _handle = gridView1.FocusedRowHandle; + bool _bl = xtraTabControl1.TabPages[0].PageEnabled; + if (_bl == false) { return; }; + if (_handle < 0) + { + xtraTabControl1.SelectedTabPageIndex = -1; + Gs.DevApp.ToolBox.MsgHelper.ShowInformation("璇烽�夋嫨浣犺鏄剧ず鐨勮锛�" + _handle.ToString() + "tag" + xtraTabControl1.SelectedTabPageIndex.ToString()); + return; + } + DataRow row = gridView1.GetDataRow(_handle); + if (row == null) + { + xtraTabControl1.SelectedTabPageIndex = -1; + Gs.DevApp.ToolBox.MsgHelper.ShowInformation("璇烽�夋嫨浣犺鏄剧ず鐨勮锛�" + _handle.ToString()); + return; + } + string _guid = row["guid"].ToString(); + if (string.IsNullOrEmpty(_guid)) + { + xtraTabControl1.SelectedTabPageIndex = -1; + Gs.DevApp.ToolBox.MsgHelper.ShowInformation("璇烽�夋嫨浣犺鏄剧ず鐨勮锛�" + _handle.ToString()); + return; + } + action(_guid); + } + if (xtraTabControl1.SelectedTabPageIndex == 0) + { + page(pageBar1.CurrentPage); + int rowHandle = 0; + rowHandle = gridView1.LocateByValue(1, gridView1.Columns["guid"], lbGuid.Text); + if (rowHandle < 0) + rowHandle = 0; + gridView1.FocusedRowHandle = rowHandle ; + } + }; + } + + /// <summary> + /// 璁剧疆鏄庣粏grid鏍峰紡 + /// </summary> + /// <param name="gridView1"></param> + /// <param name="btnChkIco"></param> + /// <param name="fm"></param> + /// <param name="fileName"></param> + /// <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) + { + // column.DefaultCellStyle.Alignment = true; + column.AppearanceCell.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Near; + } + gridView1.OptionsView.ColumnAutoWidth = false;//鑷姩璋冩暣鍒楀 + gridView1.OptionsFilter.AllowFilterEditor = false; + gridView1.OptionsFilter.ShowCustomFunctions = DevExpress.Utils.DefaultBoolean.False; + gridView1.OptionsCustomization.AllowFilter = false; + gridView1.OptionsFind.ShowSearchNavButtons = false; + gridView1.OptionsView.ShowAutoFilterRow = false; + gridView1.OptionsView.ShowGroupPanel = false; + gridView1.IndicatorWidth = 40; + 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); + }; + gridView1.ValidatingEditor += (sender, 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; + } + } + } + }; + } + + #endregion + + public static bool IsNumeric(string str) + { + Regex regex = new Regex("^[0-9]+$"); + return regex.IsMatch(str); + } + } /// <summary> @@ -1056,10 +2057,11 @@ { } - public CboItemEntity(string val, string text) + public CboItemEntity(string val, string text, string fType = "") { Text = text; Value = val; + FType = fType; } /// <summary> @@ -1072,10 +2074,13 @@ /// </summary> public object Value { get; set; } = ""; + public object FType { get; set; } = ""; + public override string ToString() { return Text.ToString(); } + } /// <summary> @@ -1091,13 +2096,14 @@ /// <param name="operDec">鎿嶄綔绗﹀娉�</param> /// <param name="val"></param> public FilterEntity(string id, string idDec, string oper, - string operDec, string val) + string operDec, string val, string type) { fileId = id; fileIdDec = idDec; fileOper = oper; fileOperDec = operDec; fileValue = val; + fileType = type; } public string fileId { get; set; } @@ -1109,5 +2115,7 @@ public string fileOperDec { get; set; } public string fileValue { get; set; } + + public string fileType { get; set; } } } \ No newline at end of file -- Gitblit v1.9.3