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