From c1a18e87764130bd4f2b5d7ed0abff5d88ae0f6a Mon Sep 17 00:00:00 2001 From: lu <99954486@qq.com> Date: 星期三, 21 五月 2025 17:19:13 +0800 Subject: [PATCH] 称重 --- DevApp/Gs.DevApp/DevFrm/Work/Frm_Work09.cs | 105 +++++++++++++++++++++++++++++----------------------- 1 files changed, 58 insertions(+), 47 deletions(-) diff --git a/DevApp/Gs.DevApp/DevFrm/Work/Frm_Work09.cs b/DevApp/Gs.DevApp/DevFrm/Work/Frm_Work09.cs index bc434a9..19b3a47 100644 --- a/DevApp/Gs.DevApp/DevFrm/Work/Frm_Work09.cs +++ b/DevApp/Gs.DevApp/DevFrm/Work/Frm_Work09.cs @@ -1,6 +1,5 @@ 锘縰sing System; using System.Collections.Generic; -using System.Data; using System.IO.Ports; using System.Timers; using System.Windows.Forms; @@ -8,12 +7,12 @@ using Gs.DevApp.ToolBox; using Newtonsoft.Json; - namespace Gs.DevApp.DevFrm.Work { public partial class Frm_Work09 : DevExpress.XtraEditors.XtraForm { string _webServiceName = "WorkWeight/"; + string value = string.Empty; /// <summary> /// 涓插彛绫� /// </summary> @@ -28,12 +27,20 @@ /// </summary> private HandleInterfaceUpdataDelegate interfaceUpdataHandle; - System.Timers.Timer timer = new System.Timers.Timer(10000); // 1000姣闂撮殧 - public Frm_Work09() { InitializeComponent(); + this.FormClosing += (s, e) => + { + if (Sp.IsOpen) + Sp.Close(); + if (timer != null) + { + timer.Stop(); + timer.Dispose(); + } + }; GetComList(); this.comLine.getSuppler(""); Gs.DevApp.ToolBox.UtilityHelper.SetGridViewParameterMx(gvMx1); @@ -51,7 +58,6 @@ cmbSerialPortNum.Properties.Items.Add(port); } } - /// <summary> /// 鍚姩浜嬩欢 /// </summary> @@ -60,11 +66,11 @@ private void btnStart_Click(object sender, EventArgs e) { string _comLine = comLine.GetId(); - string _cmbSerialPortNum = cmbSerialPortNum.SelectedText.Trim(); - string _cmbBaudRate = cmbBaudRate.SelectedText.Trim(); - string _comSjw = comSjw.SelectedText.Trim(); - string _comStopBits = comStopBits.SelectedText.Trim(); - string _comParity = comParity.SelectedText.Trim(); + string _cmbSerialPortNum = cmbSerialPortNum.Text.Trim(); + string _cmbBaudRate = cmbBaudRate.Text.Trim(); + string _comSjw = comSjw.Text.Trim(); + string _comStopBits = comStopBits.Text.Trim(); + string _comParity = comParity.Text.Trim(); if (string.IsNullOrEmpty(_comLine)) { Gs.DevApp.ToolBox.MsgHelper.ShowError("璇烽�夋嫨绾夸綋"); @@ -91,7 +97,7 @@ } if (comStopBits.SelectedIndex < 0) { - Gs.DevApp.ToolBox.MsgHelper.ShowError("璇烽�夋嫨鏁板仠姝綅"); + Gs.DevApp.ToolBox.MsgHelper.ShowError("璇烽�夋嫨鍋滄浣�"); this.comStopBits.Focus(); return; } @@ -104,42 +110,35 @@ try { interfaceUpdataHandle = new HandleInterfaceUpdataDelegate(UpdateTextBox);//瀹炰緥鍖栧鎵樺璞� - Sp.RtsEnable = true; - Sp.DtrEnable = true; Sp.ReceivedBytesThreshold = 1; - Sp.PortName = this.cmbSerialPortNum.Text.Trim(); - Sp.BaudRate = Convert.ToInt32(this.cmbBaudRate.Text.Trim()); - // Sp.Parity = Parity.Even; + Sp.PortName = _cmbSerialPortNum; + Sp.BaudRate = Convert.ToInt32(_cmbBaudRate);//璁剧疆娉㈢壒鐜� if (Enum.TryParse(_comParity, out Parity pt1)) { - Sp.Parity = pt1; + Sp.Parity = pt1;// 璁剧疆鏍¢獙浣� } else { Gs.DevApp.ToolBox.MsgHelper.ShowError("鏃犳硶璇嗗埆鐨勬牎楠�"); } - // Sp.StopBits = StopBits.One; if (Enum.TryParse(_comStopBits, out StopBits pt2)) { - Sp.StopBits = pt2; + Sp.StopBits = pt2;//璁剧疆鍋滄浣� } else { Gs.DevApp.ToolBox.MsgHelper.ShowError("鏃犳硶璇嗗埆鐨勫仠姝綅"); } + Sp.DataBits = int.Parse(_comSjw); // 璁剧疆鏁版嵁浣� Sp.DataReceived += new SerialDataReceivedEventHandler(Sp_DataReceived); Sp.ReceivedBytesThreshold = 1; - LogHelper.Debug(this.ToString(), "鎵撳紑涓插彛閫氫俊"); + LogHelper.Debug(this.ToString(), "鎵撳紑涓插彛閫氫俊PortName-" + Sp.PortName.ToString() + ",BaudRate-" + Sp.BaudRate.ToString() + ",StopBits-" + Sp.StopBits.ToString() + ",Parity-" + Sp.Parity.ToString()); if (!Sp.IsOpen) Sp.Open(); setEnable(false); - //timer1.Enabled = false; - // LogHelper.Debug(this.ToString(), "鍚姩鍒锋柊鏁版嵁瀹氭椂鍣�"); - // timer1.Start(); timer.Elapsed += OnTimedEvent; timer.AutoReset = true; // 璁剧疆涓簍rue琛ㄧず閲嶅鎵ц锛宖alse琛ㄧず鎵ц涓�娆″悗鍋滄 timer.Enabled = true; // 寮�濮嬭鏃� - Gs.DevApp.ToolBox.MsgHelper.ShowInformation("鎵撳紑鎴愬姛锛�"); } catch (Exception exe) @@ -150,36 +149,26 @@ } /// <summary> - /// 涓叉敹鍒版暟鎹� + /// 涓插彛鏀跺埌鏁版嵁 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> public void Sp_DataReceived(object sender, System.IO.Ports.SerialDataReceivedEventArgs e) { - //string start = "\nwn"; string abc = string.Empty; - string strTemp = ""; try { - LogHelper.Debug(this.ToString(), $"1鐩戝惉鍒版暟鎹紑濮�: "); int i = Sp.BytesToRead; - LogHelper.Debug(this.ToString(), $"2鐩戝惉鍒板瓧鑺傛暟:{i}"); if (i > 0) { abc = Sp.ReadExisting(); - LogHelper.Debug(this.ToString(), $"3鐩戝惉鍒版暟鎹�:{abc}"); - //strTemp = abc.Substring(7, 7); - //LogHelper.Debug(this.ToString(), :鎴彇鏁版嵁:{strTemp}"); - //value = Math.Round(float.Parse(strTemp), 2).ToString(); - //LogHelper.Debug(this.ToString(), :杞崲鏁版嵁:{value}"); - //this.Invoke(interfaceUpdataHandle, value); + LogHelper.Debug(this.ToString(), $"鐩戝惉鍒版暟鎹�:{abc}"); this.Invoke(interfaceUpdataHandle, abc); } } catch (Exception ex) { - LogHelper.Debug(this.ToString(), ex.Message); - Gs.DevApp.ToolBox.MsgHelper.ShowError("鏀跺埌鏁版嵁:" + ex.Message); + LogHelper.Debug(this.ToString(), $"鐩戝惉鍒版暟鎹甧rror:{ex.Message}"); return; } } @@ -190,8 +179,26 @@ /// <param name="text"></param> private void UpdateTextBox(string text) { - txtNum.Text = text; - addModel(); + //ST,GS,+ 250.2kg + string _tmpStr = text.Trim(); + if (_tmpStr.Length <= 0) + { + LogHelper.Debug(this.ToString(), "_tmpStr闀垮害<=0锛岄��鍑轰笂鎶�"); + return; + } + if (!_tmpStr.Contains("ST")) + { + LogHelper.Debug(this.ToString(), "_tmpStr閲嶉噺鐘舵�佷笉涓篠T锛岄��鍑轰笂鎶�"); + return; + } + if (!_tmpStr.Contains("+")) + { + LogHelper.Debug(this.ToString(), "_tmpStr閲嶉噺+锛岄��鍑轰笂鎶�"); + return; + } + _tmpStr = _tmpStr.Substring(7); + txtNum.Text = _tmpStr; + addModel(_tmpStr); } /// <summary> /// 鍚敤鎴栫鐢� @@ -210,10 +217,9 @@ /// <summary> /// 涓婁紶绉伴噸鏁版嵁 /// </summary> - private void addModel() + private void addModel(string _realWeight) { string _lineId = comLine.GetId(); - string _realWeight = txtNum.Text.Trim(); var _obj = new { lineId = _lineId, @@ -235,7 +241,12 @@ } } - private void OnTimedEvent(Object source, ElapsedEventArgs e) + /// <summary> + /// 瀹氭椂璇诲彇鍒楄〃 + /// </summary> + /// <param name="source"></param> + /// <param name="e"></param> + private void OnTimedEvent(Object source, ElapsedEventArgs e) { var _obj = new { @@ -244,11 +255,11 @@ try { var lst = new List<string>(); - var strReturn = UtilityHelper.HttpPost("", _webServiceName + "GetModelList", JsonConvert.SerializeObject(_obj),false); + var strReturn = UtilityHelper.HttpPost("", _webServiceName + "GetModelList", JsonConvert.SerializeObject(_obj), false); var dd = UtilityHelper.ReturnToList(strReturn); var dt = dd.rtnData; - BeginInvoke(new Action(() => { - // txtNum.Text = DateTime.Now.ToString(); + BeginInvoke(new Action(() => + { gcMx1.BindingContext = new BindingContext(); gcMx1.DataSource = dt; gcMx1.ForceInitialize(); @@ -257,9 +268,9 @@ } catch (Exception ex) { - MessageBox.Show(ex.Message); + MessageBox.Show("gvMx1:" + ex.Message); } - } + } } \ No newline at end of file -- Gitblit v1.9.3