From 8114becd3aa125191bf0ed06cb8b17379b5757aa Mon Sep 17 00:00:00 2001
From: lg <123456>
Date: 星期五, 12 十二月 2025 13:38:48 +0800
Subject: [PATCH] 其它入库单据类型改为可维护
---
DevApp/Gs.DevApp/DevFrm/Work/Frm_Work01.cs | 683 +++++++++++++++++++++++++++++++++++++++++++++++++++++---
1 files changed, 637 insertions(+), 46 deletions(-)
diff --git a/DevApp/Gs.DevApp/DevFrm/Work/Frm_Work01.cs b/DevApp/Gs.DevApp/DevFrm/Work/Frm_Work01.cs
index 180fa9d..f7a9f83 100644
--- a/DevApp/Gs.DevApp/DevFrm/Work/Frm_Work01.cs
+++ b/DevApp/Gs.DevApp/DevFrm/Work/Frm_Work01.cs
@@ -1,67 +1,381 @@
-锘縰sing Gs.DevApp.Entity;
+锘縰sing DevExpress.XtraEditors;
+using DevExpress.XtraGrid.Columns;
+using DevExpress.XtraLayout.Utils;
+using Gs.DevApp.Entity;
using Gs.DevApp.ToolBox;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
+using NModbus;
using System;
+using System.Collections.Generic;
+using System.Configuration;
using System.Data;
+using System.Data.SqlClient;
+using System.Dynamic;
+using System.IO;
+using System.Net.Sockets;
+using System.Text;
using System.Windows.Forms;
namespace Gs.DevApp.DevFrm.Work
{
public partial class Frm_Work01 : DevExpress.XtraEditors.XtraForm
{
+ string isWater = "0";
+ string hostName = "192.168.60.51";
+ int hostNamePoint = 502;
+ string strConn = "Data Source=192.168.1.146,12468;Initial Catalog=GS_MES;User ID=mesUser;Password =qixi1qaz@WSXmes";
+ bool isCleanDianJian = true;
string _webServiceName = "WorkCollect/";
- string fGx = "";
- string fBc = "";
+ string dianJianPath = "";//鐢垫鍙栧�艰矾寰�
string goodTag = "鈭�";
string badTag = "脳";
- public Frm_Work01(string _fGx, string _fBc)
- {
- InitializeComponent();
- this.Text = "宸ュ簭閲囬泦 - " + _fGx + " - " + fBc;
- this.fGx = _fGx;
- this.fBc = _fBc;
- txt_gx.Text = fGx;
- txt_bc.Text = fBc;
- txt_barCode.KeyDown += (s, e) =>
- {
- if (e.KeyCode == Keys.Enter) { getModel("", goodTag); };
- };
- btnGood.Click += (s, e) =>
- {
- getModel("", goodTag);
- };
- btnBad.Click += (s, e) =>
- {
- getModel("", badTag);
- };
- }
+ string fGxTouRu = "G001:鎶曞叆";
+ string fGxDianJian = "G002:鐢垫";
+ string fGxShouJian = "G003:姘存";
+ string fGxZhongJian = "G004:缁堟";
/// <summary>
///
/// </summary>
- /// <param name="_checkVal">妫�娴嬪��</param>
- /// <param name="_checkResult">妫�娴嬬粨鏋�</param>
- private void getModel(string _checkVal, string _checkResult)
+ /// <param name="_fGx">宸ュ簭</param>
+ /// <param name="_fBc">鐝</param>
+ /// <param name="_strinOther">鐩墠涓虹數妫�璺緞</param>
+ /// <param name="chkWater">鏄惁姘存</param>
+ public Frm_Work01(string _fGx, string _fBc, string _strinOther, int chkWater = 0)
+ {
+ InitializeComponent();
+ System.Drawing.Font ft1 = new System.Drawing.Font("瀹嬩綋", 35F);//澶ф寜閽�
+ System.Drawing.Font ft2 = new System.Drawing.Font("瀹嬩綋", 25F);//涓寜閽�
+ System.Drawing.Font ft3 = new System.Drawing.Font("瀹嬩綋", 15F);//grid
+ System.Drawing.Font ft4 = new System.Drawing.Font("瀹嬩綋", 12F);//head
+ System.Drawing.Font ft5 = new System.Drawing.Font("瀹嬩綋", 12F);//琛ㄥご
+ //璁剧疆瀛椾綋澶у皬
+ this.btnGood.Appearance.Font = ft1;
+ this.btnBad.Appearance.Font = ft1;
+ this.simpleButton3.Appearance.Font = ft2;
+ this.simpleButton7.Appearance.Font = ft2;
+ this.simpleButton5.Appearance.Font = ft2;
+ this.simpleButton4.Appearance.Font = ft2;
+ this.simpleButton6.Appearance.Font = ft2;
+ this.lbSum1.Appearance.Font = ft2;
+ this.lbSum2.Appearance.Font = ft2;
+ this.lbSum3.Appearance.Font = ft2;
+ this.lbSum4.Appearance.Font = ft2;
+ this.gvMx1.Appearance.Row.Font = ft3;
+ this.gvMx2.Appearance.Row.Font = ft3;
+ this.layoutControlItem1.AppearanceItemCaption.Font = ft4;
+ this.layoutControlItem2.AppearanceItemCaption.Font = ft4;
+ this.layoutControlItem3.AppearanceItemCaption.Font = ft4;
+ this.layoutControlItem4.AppearanceItemCaption.Font = ft4;
+ this.layoutControlItem5.AppearanceItemCaption.Font = ft4;
+ this.layShuiJian.AppearanceItemCaption.Font = ft4;
+ this.layoutControlItem7.AppearanceItemCaption.Font = ft4;
+ this.layoutControlItem8.AppearanceItemCaption.Font = ft4;
+ this.layoutControlItem10.AppearanceItemCaption.Font = ft4;
+ this.layoutControlItem11.AppearanceItemCaption.Font = ft4;
+ this.layoutControlItem12.AppearanceItemCaption.Font = ft4;
+ this.layoutControlItem13.AppearanceItemCaption.Font = ft4;
+ this.layoutControlItem14.AppearanceItemCaption.Font = ft4;
+ this.layoutControlItem15.AppearanceItemCaption.Font = ft4;
+ this.txt_gdbh.Properties.Appearance.Font = ft5;
+ this.txt_itemNo.Properties.Appearance.Font = ft5;
+ this.txt_itemModel.Properties.Appearance.Font = ft5;
+ this.txt_gx.Properties.Appearance.Font = ft5;
+ this.txt_bc.Properties.Appearance.Font = ft5;
+ this.txt_itemName.Properties.Appearance.Font = ft5;
+ this.txt_yjDate.Properties.Appearance.Font = ft5;
+ this.txt_collectBy.Properties.Appearance.Font = ft5;
+ this.txt_sbNo.Properties.Appearance.Font = ft5;
+ this.txt_sjXt.Properties.Appearance.Font = ft5;
+ this.txt_sjDate.Properties.Appearance.Font = ft5;
+ this.txt_barCode.Properties.Appearance.Font = ft5;
+ this.txt_currentBarCode.Properties.Appearance.Font = ft5;
+ this.txt_gongWei.Properties.Appearance.Font = ft5;
+ this.txt_dianJianPath.Properties.Appearance.Font = ft5;
+ try
+ {
+ string _vanishingSeconds = chkWater.ToString();
+ if (!string.IsNullOrEmpty(_vanishingSeconds))
+ isWater = _vanishingSeconds;
+ }
+ catch (Exception)
+ {
+
+ }
+ gvMx1.IndicatorWidth = 60;
+ gvMx1.CustomDrawRowIndicator += (s, e) =>
+ {
+ if (e.Info.IsRowIndicator && e.RowHandle >= 0)
+ e.Info.DisplayText = (e.RowHandle + 1).ToString();
+ };
+ txt_gx.Text = _fGx;
+ txt_bc.Text = _fBc;
+ txt_dianJianPath.Text = _strinOther;
+ dianJianPath = _strinOther;
+ this.Text = "宸ュ簭閲囬泦銆�" + _fGx + " - " + _fBc + "銆�";
+ label8.Text = _fGx + "鏁伴噺";
+ addColumn();
+ //杩芥函鐮佹鍥炶溅浜嬩欢
+ txt_barCode.KeyDown += (s, e) =>
+ {
+ if (e.KeyCode == Keys.Enter)
+ {
+ //濡傛灉鏄按妫�锛岃繕瑕佹壂宸ヤ綅
+ if (txt_gx.Text.Trim() == fGxShouJian && isWater == "1")
+ {
+ txt_gongWei.Focus();
+ }
+ else
+ addModel(goodTag);
+ }
+ };
+ //宸ヤ綅鍥炶溅妗嗕簨浠�
+ txt_gongWei.KeyDown += (s, e) =>
+ {
+ if (e.KeyCode == Keys.Enter)
+ {
+ //濡傛灉鏄按妫�锛屽彲浠ユ彁浜や簡
+ if (txt_gx.Text.Trim() == fGxShouJian)
+ {
+ if (txt_gongWei.Text.Trim().Length <= 0)
+ {
+ Toast vm = new Toast(-1, "鎿嶄綔澶辫触@n璇峰厛鎵弿宸ヤ綅鐮�");
+ vm.Show();
+ this.ActiveControl = this.txt_gongWei;
+ txt_gongWei.Focus();
+ return;
+ }
+ addModel(goodTag);
+ }
+ }
+ };
+ //鑹搧鎸夐挳浜嬩欢
+ btnGood.Click += (s, e) =>
+ {
+ addModel(goodTag);
+ };
+ //涓嶈壇鍝佹寜閽簨浠�
+ btnBad.Click += (s, e) =>
+ {
+ int idx = tabMx.SelectedTabPageIndex;
+ if (idx > 0)
+ {
+ Toast vm = new Toast(-1, "璇烽噸鏂版搷浣淍n宸插府浣犲垏鎹㈠埌銆愯壇鍝佹槑缁嗐��");
+ vm.Show();
+ tabMx.SelectedTabPageIndex = 0;
+ return;
+ }
+ string _collectGuid = "";
+ string _collCode = "";
+ var dr = gvMx1.GetFocusedDataRow();
+ if (dr == null || string.IsNullOrEmpty(dr["guid"].ToString()))
+ {
+
+ }
+ else
+ {
+ _collectGuid = dr["guid"].ToString();
+ _collCode = dr["barCode"].ToString();
+ }
+ if (_collectGuid.Length < 30)
+ {
+ Toast vm = new Toast(-1, "鎿嶄綔澶辫触@n璇峰厛閫夋嫨杩芥函鐮�");
+ vm.Show();
+ return;
+ }
+ string _msg = "浣犲噯澶囧皢銆�" + _collCode + "銆戝彉鏇翠负涓嶈壇";
+ string _type = "";
+ if (txt_gx.Text.Trim() == fGxTouRu)
+ _type = "宸ュ簭G001:鎶曞叆涓嶈壇鎻忚堪";
+ if (txt_gx.Text.Trim() == fGxDianJian)
+ _type = "宸ュ簭G002:鐢垫涓嶈壇鎻忚堪";
+ if (txt_gx.Text.Trim() == fGxShouJian)
+ _type = "宸ュ簭G003:姘存涓嶈壇鎻忚堪";
+ if (txt_gx.Text.Trim() == fGxZhongJian)
+ _type = "宸ュ簭G004:缁堟涓嶈壇鎻忚堪";
+ string condition = $" pid<>'00000000-0000-0000-0000-000000000000' " ;
+ if(txt_orgId.Text.Trim() == "104554") // 鐢靛櫒
+ {
+ condition += $" and a.s_type = '{_type}' ";
+ }
+ if (txt_orgId.Text.Trim() == "104540") // 榄斿嚒
+ {
+ condition += $" and a.s_type = '榄斿嚒{_type}' ";
+ }
+
+ UcDictionarySelect frm = new UcDictionarySelect(_type, condition, _msg);
+ frm.UpdateParent += (ss, ee) =>
+ {
+ System.Text.StringBuilder stringBuilder = new System.Text.StringBuilder();
+ var lst = ee.DynamicList;
+ foreach (dynamic dym in lst)
+ {
+ if (stringBuilder.Length > 0)
+ stringBuilder.Append("&");
+ stringBuilder.Append(dym.dicTxt);
+ }
+ string _txt = stringBuilder.ToString();
+ if (string.IsNullOrEmpty(_txt))
+ {
+ Toast vm = new Toast(-1, "鎿嶄綔澶辫触@n璇烽�夋嫨涓嶈壇椤圭洰");
+ vm.Show();
+ }
+ else
+ addModel(badTag, _txt, _collectGuid);
+ };
+ frm.ShowDialog();
+ this.ActiveControl = this.txt_barCode;
+ txt_barCode.Focus();
+ };
+ this.ActiveControl = this.txt_barCode;
+ txt_barCode.Focus();
+ }
+
+ /// <summary>
+ /// 鏍规嵁宸ュ簭锛屾瀯閫犱笉鍚岀被鍨嬬殑瀹炰綋锛岃鍙栦笉鍚岀殑鏁版嵁
+ /// </summary>
+ /// <param name="_barCode">鏉$爜</param>
+ /// <param name="_checkResult">缁撴灉</param>
+ /// <param name="_badDescription">涓嶈壇鎻忚堪</param>
+ /// <param name="_collectGuid">閲囬泦guid,濡傛灉鏄笉鑹紝闇�瑕乧ollectGuid</param>
+ /// <returns></returns>
+ private dynamic getObj(string _barCode, string _checkResult, string _badDescription = "", string _collectGuid = "")
+ {
+ dynamic _obj = new ExpandoObject();
+ _obj.barCode = _barCode;
+ _obj.checkResult = _checkResult;//妫�娴嬬粨鏋�
+ _obj.processNo = txt_gx.Text.Trim();//宸ュ簭
+ _obj.banCi = txt_bc.Text.Trim();//鐝
+ _obj.gongWei = txt_gongWei.Text.Trim();//宸ヤ綅
+ _obj.badDescription = _badDescription.Trim();//涓嶈壇鎻忚堪
+ _obj.collectGuid = _collectGuid;
+ //涓嶈壇锛岀洿鎺ユ彁浜�
+ if (!string.IsNullOrEmpty(_collectGuid))
+ {
+ return _obj;
+ }
+ //鎶曞叆锛岀洿鎺ユ彁浜�
+ if (txt_gx.Text.Trim() == fGxTouRu)
+ {
+ return _obj;
+ }
+ //鐢垫锛岄渶瑕佽鍙栫浉鍏虫暟鎹�
+ if (txt_gx.Text.Trim() == fGxDianJian)
+ {
+ string TM = "";
+ string JD = "";//鎺ュ湴
+ string JY = "";//缁濈紭
+ string JN = "";//浜よ��
+ string XL = "";//娉勬紡
+ string GV = ""; //GV鍔熺巼
+ string JDV = "";
+ string JYV = "";
+ string JNV = "";
+ string XLV = "";
+ string GVV = "";
+ string myStr = File.ReadAllText(dianJianPath, Encoding.Default);
+ if (myStr == "")
+ {
+ return _obj;
+ }
+ //鎶婄數妫�鏁版嵁杞负json
+ //[{"TiaoMa":"","JiaoNai":{"state":"ok","value":"1800V 0.192mA"},"XieLou":{"state":"ok","value":"235.0V 0.024mA"},"JieDi":{"state":"ok","value":"25.0A 43m娆�"},"GongLv":{"state":"ok","value":"220.0V 9.96A 2196.0W"}}]
+ JArray dsTemp = JArray.Parse(myStr);
+ foreach (var ss in dsTemp)
+ {
+ TM = (((JObject)ss)["TiaoMa"] == null) ? "" : ((JObject)ss)["TiaoMa"].ToString();
+ //鐘舵�侊紝ng鎴杘k
+ JD = (((JObject)ss)["JieDi"] == null) ? "" : ((JObject)ss)["JieDi"]["state"].ToString();
+ JY = (((JObject)ss)["JueYuan"] == null) ? "" : ((JObject)ss)["JueYuan"]["state"].ToString();
+ JN = (((JObject)ss)["JiaoNai"] == null) ? "" : ((JObject)ss)["JiaoNai"]["state"].ToString();
+ XL = (((JObject)ss)["XieLou"] == null) ? "" : ((JObject)ss)["XieLou"]["state"].ToString();
+ GV = (((JObject)ss)["GongLv"] == null) ? "" : ((JObject)ss)["GongLv"]["state"].ToString();
+ //鍏蜂綋鐨勫��
+ JDV = (((JObject)ss)["JieDi"] == null) ? "" : ((JObject)ss)["JieDi"]["value"].ToString().Replace(" ", ",");
+ JYV = (((JObject)ss)["JueYuan"] == null) ? "" : ((JObject)ss)["JueYuan"]["value"].ToString().Replace(" ", ", ");
+ JNV = (((JObject)ss)["JiaoNai"] == null) ? "" : ((JObject)ss)["JiaoNai"]["value"].ToString().Replace(" ", ", ");
+ XLV = (((JObject)ss)["XieLou"] == null) ? "" : ((JObject)ss)["XieLou"]["value"].ToString().Replace(" ", ", ");
+ GVV = (((JObject)ss)["GongLv"] == null) ? "" : ((JObject)ss)["GongLv"]["value"].ToString().Replace(" ", ", ");
+ }
+ _obj.t001 = TM;
+ _obj.t002 = JD;
+ _obj.t003 = JY;
+ _obj.t004 = JN;
+ _obj.t005 = XL;
+ _obj.t006 = GV;
+ _obj.t007 = JDV;
+ _obj.t008 = JYV;
+ _obj.t009 = JNV;
+ _obj.t010 = XLV;
+ _obj.t011 = GVV;
+ if (isCleanDianJian == true)
+ File.WriteAllText(dianJianPath, "");
+ return _obj;
+ }
+ //姘存
+ if (txt_gx.Text.Trim() == fGxShouJian)
+ {
+ if (isWater == "0")
+ {
+ return _obj;
+ }
+ string strCsl1 = "";//妯″紡1鍑烘按閲�
+ string strSw1 = "";//妯″紡1姘存俯
+ string strCsl2 = "";
+ string strSw2 = "";
+ string strCsl3 = "";
+ string strSw3 = "";
+ string strCsl4 = "";
+ string strSw4 = "";
+ string strCsl5 = "";
+ string strSw5 = "";
+ string SJJG = "";//姘存鏌ョ粨鏋渙k銆乶g
+ string GWZT = "";//宸ヤ綅鐘舵��
+ string SJJGZ = "";//姘存鏌ョ粨鏋�1
+ (strCsl1, strSw1, SJJG, GWZT, SJJGZ) = getShuiJian();
+ _obj.t002 = strCsl1;//鍑烘按閲�1
+ _obj.t003 = strSw1;//姘存俯1
+ _obj.t004 = strCsl2;//鍑烘按閲�2
+ _obj.t005 = strSw2;//姘存俯2
+ _obj.t006 = strCsl3;//鍑烘按閲�3
+ _obj.t007 = strSw3;//姘存俯3
+ _obj.t008 = strCsl4;
+ _obj.t009 = strSw4;
+ _obj.t010 = strCsl5;
+ _obj.t011 = strSw5;
+ _obj.t012 = SJJGZ;//姘存缁撴灉浼间箮涓嶇敤
+ _obj.t013 = GWZT;//宸ヤ綅鐘舵�佷技涔庝笉鐢�
+ return _obj;
+ }
+ //缁堟
+ if (txt_gx.Text.Trim() == fGxZhongJian)
+ {
+ return _obj;
+ }
+ return null;
+ }
+
+ /// <summary>
+ /// 涓婃姤瀹炰綋
+ /// </summary>
+ /// <param name="_checkResult">缁撴灉锛氣垰</param>
+ /// <param name="_badDescription">涓嶈壇鎻忚堪</param>
+ private void addModel(string _checkResult, string _badDescription = "", string _collectGuid = "")
{
string _barCode = txt_barCode.Text.Trim();
- string _inBz = ""; ; //澶囨敞
- if (string.IsNullOrEmpty(_barCode))
+ if (string.IsNullOrEmpty(_collectGuid))
{
- Toast vm = new Toast(-1, "~璇峰厛鎵拷婧爜~");
- vm.Show();
- return;
+ if (string.IsNullOrEmpty(_barCode))
+ {
+ Toast vm = new Toast(-1, "鎿嶄綔澶辫触@n璇峰厛鎵弿杩芥函鐮�");
+ vm.Show();
+ this.ActiveControl = this.txt_barCode;
+ txt_barCode.Focus();
+ return;
+ }
}
- var _obj = new
- {
- barCode = _barCode,
- inBz = _inBz,
- checkVal = _checkVal,
- checkResult = _checkResult,
- processNo = txt_gx.Text.Trim(),//宸ュ簭
- banCi = txt_bc.Text.Trim(),//鐝
- gongWei = txt_gw.Text.Trim(),//宸ヤ綅
- };
+ dynamic _obj = getObj(_barCode, _checkResult, _badDescription, _collectGuid);
try
{
string strJson = UtilityHelper.HttpPost("", _webServiceName + "GetModel", JsonConvert.SerializeObject(_obj));
@@ -69,6 +383,7 @@
if (_rtn.rtnCode > 0)
{
dynamic dy = _rtn.rtnData;
+ //琛ㄥご鍜屾眹鎬�
UtilityHelper.SetValueByObj(this.layoutMx1.Controls, dy, false);
lbSum1.Text = dy.lbSum1;
lbSum2.Text = dy.lbSum2;
@@ -76,6 +391,9 @@
lbSum4.Text = dy.lbSum4;
prog1.Position = dy.jd;
txt_barCode.ReadOnly = false;
+ if (txt_gx.Text.Trim() == fGxShouJian)
+ txt_gongWei.ReadOnly = false;
+ //鑹搧鍒楄〃
JObject _job = JObject.Parse(strJson);
JArray array = new JArray();
foreach (var a in _job["rtnData"]["list"])
@@ -95,6 +413,7 @@
{
Gs.DevApp.ToolBox.UtilityHelper.SetDefaultTable(gcMx1, gvMx1);
}
+ //涓嶈壇鍝佸垪琛�
JArray array2 = new JArray();
foreach (var a in _job["rtnData"]["list2"])
{
@@ -116,23 +435,295 @@
string _msg = _rtn.rtnMsg;
if (!string.IsNullOrEmpty(_msg))
{
-
- Toast vm = new Toast((goodTag == "鈭�" ? 1 : -1), _msg);
+ // Toast vm = new Toast((goodTag == "鈭�" ? 1 : -1), _msg); 2025-08-20 淇敼鎻愮ず澶栬
+ Toast vm;
+ if (_msg.EndsWith("."))
+ vm = new Toast(-1, _rtn.rtnMsg);
+ else
+ vm = new Toast(1, _rtn.rtnMsg);
vm.Show();
- };
+ }
}
else
{
Toast vm = new Toast(-1, _rtn.rtnMsg);
vm.Show();
}
-
}
catch (Exception ex)
{
Toast vm = new Toast(-1, ex.Message);
vm.Show();
}
+ txt_barCode.Text = "";
+ txt_gongWei.Text = "";
+ this.ActiveControl = this.txt_barCode;
+ txt_barCode.Focus();
}
+
+ /// <summary>
+ /// 澧炲姞鐢垫锛屾按妫�鐨勫垪
+ /// </summary>
+ public void addColumn()
+ {
+ //鍙湁鐢垫鎵嶆樉绀�
+ if (txt_gx.Text.Trim() == fGxDianJian)
+ layDianJian.Visibility = LayoutVisibility.Always;
+ else
+ layDianJian.Visibility = LayoutVisibility.Never;
+ //鍙湁姘存鎵嶆樉绀�
+ if (txt_gx.Text.Trim() == fGxShouJian && isWater == "1")
+ layShuiJian.Visibility = LayoutVisibility.Always;
+ else
+ layShuiJian.Visibility = LayoutVisibility.Never;
+ List<dynamic> _lst = new List<dynamic>();
+ if (txt_gx.Text.Trim() == fGxDianJian)
+ {
+ _lst.Add(new
+ {
+ ziduan = "t002",
+ wenben = "鎺ュ湴",
+ kejian = true,
+ visibleIndex = 1,
+ });
+ _lst.Add(new
+ {
+ ziduan = "t004",
+ wenben = "浜よ��",
+ kejian = true,
+ visibleIndex = 1,
+ });
+ _lst.Add(new
+ {
+ ziduan = "t005",
+ wenben = "娉勬紡",
+ kejian = true,
+ visibleIndex = 1,
+ });
+ _lst.Add(new
+ {
+ ziduan = "t006",
+ wenben = "鍔熺巼",
+ kejian = true,
+ visibleIndex = 1,
+ });
+ _lst.Add(new
+ {
+ ziduan = "t007",
+ wenben = "鎺ュ湴缁撴灉",
+ visibleIndex = 1,
+ });
+ _lst.Add(new
+ {
+ ziduan = "t009",
+ wenben = "浜よ�愮粨鏋�",
+ visibleIndex = 1,
+ });
+ _lst.Add(new
+ {
+ ziduan = "t010",
+ wenben = "娉勬紡缁撴灉",
+ visibleIndex = 1,
+ });
+ _lst.Add(new
+ {
+ ziduan = "t011",
+ wenben = "鍔熺巼缁撴灉",
+ visibleIndex = 1,
+ });
+ }
+ if (txt_gx.Text.Trim() == fGxShouJian)
+ {
+ _lst.Add(new
+ {
+ ziduan = "t002",
+ wenben = "鍑烘按閲�1",
+ kejian = true,
+ visibleIndex = 1,
+ });
+ _lst.Add(new
+ {
+ ziduan = "t003",
+ wenben = "姘存俯1",
+ kejian = true,
+ visibleIndex = 1,
+ });
+ _lst.Add(new
+ {
+ ziduan = "t004",
+ wenben = "鍑烘按閲�2",
+ visibleIndex = -1,
+ });
+ _lst.Add(new
+ {
+ ziduan = "t005",
+ wenben = "姘存俯2",
+ visibleIndex = -1,
+ });
+ _lst.Add(new
+ {
+ ziduan = "t006",
+ wenben = "鍑烘按閲�3",
+ visibleIndex = -1,
+ });
+ _lst.Add(new
+ {
+ ziduan = "t007",
+ wenben = "姘存俯3",
+ visibleIndex = -1,
+ });
+ _lst.Add(new
+ {
+ ziduan = "t008",
+ wenben = "鍑烘按閲�4",
+ visibleIndex = -1,
+ });
+ _lst.Add(new
+ {
+ ziduan = "t009",
+ wenben = "姘存俯4",
+ visibleIndex = -1,
+ });
+ _lst.Add(new
+ {
+ ziduan = "t010",
+ wenben = "鍑烘按閲�5",
+ visibleIndex = -1,
+ });
+ _lst.Add(new
+ {
+ ziduan = "t011",
+ wenben = "姘存俯5",
+ visibleIndex = -1,
+ });
+ _lst.Add(new
+ {
+ ziduan = "t012",
+ wenben = "鏁版嵁缁撴灉",
+ kejian = true,
+ visibleIndex = 1,
+ });
+ }
+ foreach (var item in _lst)
+ {
+ GridColumn newColumn = new GridColumn();
+ newColumn.FieldName = item.ziduan; // 璁剧疆涓庢暟鎹簮瀵瑰簲鐨勫瓧娈靛悕
+ newColumn.Caption = item.wenben; // 璁剧疆鍒楃殑鏍囬
+ newColumn.VisibleIndex = item.visibleIndex; // 璁剧疆鍒楃殑鏄剧ず椤哄簭
+ gvMx1.Columns.Add(newColumn);
+ }
+ }
+
+
+ #region 璇诲彇姘存鏁版嵁
+ private (string, string, string, string, string) getShuiJian()
+ {
+ string strCsl1 = ""; //妯″紡1鍑烘按閲�
+ string strSw1 = "";//妯″紡1姘存俯
+ string SJJG = "";//姘存鏌ョ粨鏋渙k銆乶g
+ string GWZT = "";//宸ヤ綅鐘舵��
+ string SJJGZ = "";//姘存鏌ョ粨鏋�1
+ bool blIp = true;
+ blIp = CheckPort(hostName, hostNamePoint);
+ if (blIp)
+ {
+ System.Text.StringBuilder sbSql1 = new StringBuilder();
+ sbSql1.Append($"select MIG004,MIG005 from BASMIG(nolock) where MIG001='ShuiJianZhanWei01' and MIG003='{((BaseEdit)this.txt_gongWei).EditValue.ToString()}'");
+ DataTable dataTable1 = this.GetDataTable(sbSql1.ToString(), "tmpBASMIG2");
+ if (dataTable1 == null || dataTable1.Rows.Count <= 0)
+ {
+ ((BaseEdit)this.txt_gongWei).EditValue = (object)"";
+ LogHelper.Debug(this.ToString(), txt_gongWei.Text + "璇ユ按妫�绔欎綅鐮佷笉瀛樺湪锛岃纭锛�");
+ //Toast vm = new Toast(-1, "璇ユ按妫�绔欎綅鐮佷笉瀛樺湪锛岃纭锛�");
+ //vm.Show();
+ }
+ else
+ {
+ ModbusFactory modbusFactory = new ModbusFactory();
+ byte num1 = byte.Parse("1");
+ ushort num2 = ushort.Parse("1");
+ System.Text.StringBuilder sbSql2 = new StringBuilder();
+ sbSql2.Append(string.Format($"select case when MIG006='D' then MIG003+{dataTable1.Rows[0][0]} else MIG003+{dataTable1.Rows[0][1]} end MIG003,MIG004 from BASMIG(nolock) where MIG001 = 'ShuiJianAddress01' order by MIG005"));
+ DataTable dataTable2 = GetDataTable(sbSql2.ToString(), "tmpBASMIG3");
+ if (dataTable2 == null || dataTable2.Rows.Count <= 0)
+ {
+ ((BaseEdit)this.txt_gongWei).EditValue = (object)"";
+ LogHelper.Debug(this.ToString(), txt_gongWei.Text + "姘存鍦板潃涓嶅瓨鍦紝璇风‘璁わ紒");
+ //Toast vm = new Toast(-1, "姘存鍦板潃涓嶅瓨鍦紝璇风‘璁わ紒");
+ //vm.Show();
+ }
+ else
+ {
+ try
+ {
+ IModbusMaster master = modbusFactory.CreateMaster(new TcpClient(this.hostName, this.hostNamePoint));
+ master.Transport.ReadTimeout = 10000;
+ master.Transport.Retries = 10000;
+ strCsl1 = master.ReadHoldingRegisters(num1, ushort.Parse(dataTable2.Rows[0]["MIG003"].ToString()), num2)[0].ToString();
+ strSw1 = (float.Parse(master.ReadHoldingRegisters(num1, ushort.Parse(dataTable2.Rows[1]["MIG003"].ToString()), num2)[0].ToString()) / 10f).ToString();
+ ushort[] numArray = master.ReadHoldingRegisters(num1, ushort.Parse(dataTable2.Rows[2]["MIG003"].ToString()), num2);
+ SJJGZ = numArray[0].ToString();
+ SJJG = numArray[0].ToString();
+ SJJG = (SJJG == "1" ? "OK" : (SJJG == "2" ? "NG" : SJJG));
+ GWZT = master.ReadCoils(num1, ushort.Parse(dataTable2.Rows[3]["MIG003"].ToString()), num2)[0].ToString();
+ }
+ catch (Exception ex)
+ {
+ ((BaseEdit)this.txt_gongWei).EditValue = (object)"";
+ LogHelper.Debug(this.ToString(), txt_gongWei.Text + ex.Message);
+ //Toast vm = new Toast(-1, ex.Message);
+ //vm.Show();
+ }
+ }
+ }
+ }
+ return (strCsl1, strSw1, SJJG, GWZT, SJJGZ);
+ }
+ private DataTable GetDataTable(string SQLString, string tmpBASMIG2)
+ {
+ using (var connection = new SqlConnection(strConn))
+ {
+ var ds = new DataSet();
+ try
+ {
+ connection.Open();
+ var command = new SqlDataAdapter(SQLString, connection);
+ command.Fill(ds, tmpBASMIG2);
+ }
+ catch (SqlException ex)
+ {
+ LogHelper.Debug(this.ToString(), ex.Message);
+ }
+ return ds.Tables[0];
+ }
+ }
+
+ private bool CheckPort(string host, int port)
+ {
+ int vanishingSeconds = 3;
+ string _vanishingSeconds = ConfigurationManager.AppSettings["AsyncSeconds"];
+ if (!string.IsNullOrEmpty(_vanishingSeconds))
+ vanishingSeconds = int.Parse(_vanishingSeconds);
+ bool isOpen = false;
+ try
+ {
+ using (var client = new TcpClient())
+ {
+ var result = client.BeginConnect(host, port, null, null);
+ var success = result.AsyncWaitHandle.WaitOne(TimeSpan.FromSeconds(vanishingSeconds)); // 绛夊緟5绉�
+ if (success)
+ {
+ isOpen = true;
+ }
+ }
+ }
+ catch (Exception ex)
+ {
+ LogHelper.Debug(this.ToString(), "CheckPort:" + ex.Message);
+ }
+ return isOpen;
+ }
+ #endregion
+
}
}
\ No newline at end of file
--
Gitblit v1.9.3