From f02a4e20cb6effb2c7f5018b5b2e92b39a7f56f5 Mon Sep 17 00:00:00 2001
From: lu <99954486@qq.com>
Date: 星期二, 18 二月 2025 13:36:42 +0800
Subject: [PATCH] 保存板面
---
DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs | 333 +++++++++++++++++++++++++++++++++++++++++-------------
1 files changed, 251 insertions(+), 82 deletions(-)
diff --git a/DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs b/DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs
index 37332df..e0e6db0 100644
--- a/DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs
+++ b/DevApp/Gs.DevApp/ToolBox/UtilityHelper.cs
@@ -24,6 +24,7 @@
using Gs.DevApp.UserControl;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
+using OracleInternal.Sharding;
using UserControls.Data;
using static System.Windows.Forms.Control;
@@ -80,30 +81,30 @@
request.ContentType = "application/json";
request.Headers.Add("token", GetBasicAuthTicket());
request.Accept = "*/*";
- request.Timeout = 15000;
+ request.Timeout = 150000;
request.AllowAutoRedirect = false;
request.ServicePoint.Expect100Continue = false;
- wdf.SetCaption(_caption + "锛�10/100锛�" + meth);
+ // wdf.SetCaption(_caption + "锛�10/100锛�" + meth);
HttpRequestCachePolicy noCachePolicy = new HttpRequestCachePolicy(HttpRequestCacheLevel.NoCacheNoStore);
request.CachePolicy = noCachePolicy;
- wdf.SetCaption(_caption + "锛�20/100锛�" + meth);
+ // wdf.SetCaption(_caption + "锛�20/100锛�" + meth);
requestStream = new StreamWriter(request.GetRequestStream());
requestStream.Write(param);
requestStream.Close();
- wdf.SetCaption(_caption + "30/100锛�" + meth);
+ // wdf.SetCaption(_caption + "30/100锛�" + meth);
response = request.GetResponse();
- wdf.SetCaption(_caption + "锛�40/100锛�");
+ // wdf.SetCaption(_caption + "锛�40/100锛�");
if (response != null)
{
- wdf.SetCaption(_caption + "锛�50/100锛�" + meth);
+ // wdf.SetCaption(_caption + "锛�50/100锛�" + meth);
var reader = new StreamReader(response.GetResponseStream(),
Encoding.UTF8);
responseStr = reader.ReadToEnd();
//File.WriteAllText(Server.MapPath("~/") + @"\test.txt", responseStr);
reader.Close();
- wdf.SetCaption(_caption + "锛�60/100锛�" + meth);
+ // wdf.SetCaption(_caption + "锛�60/100锛�" + meth);
}
- wdf.SetCaption(_caption + "锛�80/100锛�" + meth);
+ // wdf.SetCaption(_caption + "锛�80/100锛�" + meth);
}
catch (Exception ex)
{
@@ -117,7 +118,7 @@
requestStream = null;
response = null;
}
- wdf.SetCaption(_caption + "锛�90/100锛�");
+ // wdf.SetCaption(_caption + "锛�90/100锛�");
wdf.Close();
return responseStr;
}
@@ -189,11 +190,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;
}
@@ -275,13 +272,20 @@
foreach (GridColumn colmn in gv.Columns)
{
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;
}
else
{
- if (isEdt == false) {
+ if (isEdt == false)
+ {
if (colmn.Tag != null && colmn.Tag.ToString().EndsWith("edit"))
colmn.OptionsColumn.ReadOnly = isEdt;
else
@@ -323,7 +327,6 @@
txt.ReadOnly = isEdt;
continue;
}
-
if (colType is ImageComboBoxEdit)
{
var txt = colType as ImageComboBoxEdit;
@@ -338,32 +341,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)
{
@@ -372,14 +368,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)
@@ -387,10 +387,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)
{
@@ -400,7 +404,6 @@
txt.ReadOnly = isEdt;
continue;
}
-
//鍗曢��
if (colType is CheckEdit)
{
@@ -425,22 +428,27 @@
txt.ReadOnly = isEdt;
continue;
}
-
//鍗曢��
if (colType is CheckBox)
{
var txt = colType as CheckBox;
if (txt != null)
- txt.Checked = bool.Parse(strVal);
+ 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;
+ }
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;
}
//鏃堕棿
@@ -451,7 +459,6 @@
txt.Enabled = !isEdt;
continue;
}
-
//Label
if (colType is Label)
{
@@ -534,7 +541,6 @@
txt.Enabled = false;
continue;
}
-
//鑷畾瀹㈡埛
if (colType is UcLookCustomer)
{
@@ -634,6 +640,7 @@
txt.Enabled = false;
continue;
}
+
if (colType is SimpleButton)
{
var txt = colType as SimpleButton;
@@ -645,6 +652,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;
}
}
}
@@ -691,11 +710,20 @@
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)
{
@@ -708,7 +736,6 @@
txt.ReadOnly = isEdt;
continue;
}
-
//鑷畾涔夌殑涓嬫媺
if (ctrl is UcComBox)
{
@@ -717,7 +744,6 @@
txt.Enabled = !isEdt;
continue;
}
-
//鏂囨湰
if (ctrl is TextEdit)
{
@@ -728,15 +754,12 @@
}
else
txt.Text = "";
- txt.ReadOnly = isEdt;
- continue;
- }
- if (ctrl is MemoEdit)
- {
- var txt = ctrl as MemoEdit;
- if (txt != null)
- txt.Text = "";
- txt.ReadOnly = isEdt;
+ if (_isRead(txt.Tag))
+ {
+ txt.ReadOnly = true;
+ }
+ else
+ txt.ReadOnly = isEdt;
continue;
}
//鏃堕棿
@@ -751,14 +774,20 @@
{
var txt = ctrl as CheckBox;
txt.Enabled = !isEdt;
+ txt.Checked = false;
}
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"))
+ {
+ txt.Checked = bool.Parse(txt.Tag.ToString().Replace("moren.", ""));
+ }
+ else
+ txt.Checked = false;
continue;
}
-
//鑷畾涔変粨搴�
if (ctrl is UcLookCk)
{
@@ -879,13 +908,13 @@
txt.Enabled = !isEdt;
continue;
}
+
if (ctrl is SimpleButton)
{
var txt = ctrl as SimpleButton;
txt.Enabled = !isEdt;
continue;
}
-
}
}
@@ -912,7 +941,7 @@
}
else
{
- if (colmn.Tag!=null && colmn.Tag.ToString().EndsWith("edit"))
+ if (colmn.Tag != null && colmn.Tag.ToString().EndsWith("edit"))
colmn.OptionsColumn.ReadOnly = isEdt;
else
colmn.OptionsColumn.ReadOnly = isEdt;
@@ -926,13 +955,23 @@
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;
}
//鏁板瓧鍗�
@@ -1130,6 +1169,20 @@
}
}
+ private static bool _isRead(object obj, bool isEdt = false)
+ {
+ ///姘歌繙鏄彧璇荤殑
+ if (obj != null && obj.ToString().ToUpper() == ("readOnly".ToUpper()))
+ {
+ return true;
+ }
+ ///姘歌繙鏄彲鍐欑殑
+ if (obj != null && obj.ToString().ToUpper() == ("readOnly-1".ToUpper()))
+ {
+ return false;
+ }
+ return isEdt;
+ }
/// <summary>
/// 鍒囨崲閫夐」鍗�
/// </summary>
@@ -1281,7 +1334,18 @@
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 int ToInt(string str)
{
try
@@ -1319,12 +1383,7 @@
return true;
return false;
}
- public string GetIsNullOrEmpty(string str)
- {
- if (string.IsNullOrEmpty(str.Trim()))
- return "{>";
- return str.Trim();
- }
+
/// <summary>
/// 璇诲彇grid鐨勫綋鍓嶈
@@ -1516,10 +1575,16 @@
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鍍忕礌
}
@@ -1527,7 +1592,44 @@
}
}
-
+ /// <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 = "")
+ {
+ 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);
+ }
+ btnChkIco.Anchor = AnchorStyles.Top | AnchorStyles.Right; // 闈犲彸
+ btnChkIco.Location = new Point(fm.ClientSize.Width - btnChkIco.Width - 20, 80); // 璺濈椤堕儴10鍍忕礌
+ }
#region 璁剧疆鎼滅储
public static string getQueryWord(string str)
{
@@ -1537,9 +1639,15 @@
{
return new FilterEntity(getQueryWord(id), idDec + ")", " like ", "鍖呭惈)", "%" + val + "%");
}
- public static List<FilterEntity> GetDilter(GridColumnCollection Columns)
+ 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;
@@ -1593,12 +1701,15 @@
/// <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.Appearance.HeaderPanel.ForeColor = DevExpress.LookAndFeel.DXSkinColors.ForeColors.ControlText;
gridView1.OptionsView.ColumnAutoWidth = false;//鑷姩璋冩暣鍒楀
foreach (GridColumn column in gridView1.Columns)
{
- column.OptionsFilter.AutoFilterCondition = AutoFilterCondition.Contains;
- column.OptionsFilter.ImmediateUpdateAutoFilter = false;
+ 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
@@ -1607,12 +1718,16 @@
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.ShowAutoFilterRow = true;
gridView1.OptionsView.ShowGroupPanel = false;
+ //鏄惁鏄剧ず搴曢儴鐨勮繃婊ゆ潯
+ // gridView1.OptionsView.ShowFilterPanelMode = DevExpress.XtraGrid.Views.Base.ShowFilterPanelMode.Never;
gridView1.IndicatorWidth = 50;
gridView1.CustomDrawRowIndicator += (s, e) =>
{
@@ -1656,6 +1771,40 @@
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)
@@ -1672,19 +1821,33 @@
if (xtraTabControl1.SelectedTabPageIndex == 1)
{
int _handle = gridView1.FocusedRowHandle;
- if (_handle == -1)
+ 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);
+ // page(pageBar1.CurrentPage);
}
};
}
@@ -1699,6 +1862,12 @@
/// <param name="icoName"></param>
public static void SetGridViewParameterMx(GridView gridView1)
{
+ // 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;
--
Gitblit v1.9.3