From c3fdd3ead425cf39da619a8e69a1a1784a28b492 Mon Sep 17 00:00:00 2001
From: schangxiang@126.com <schangxiang@126.com>
Date: 周三, 02 10月 2024 09:34:15 +0800
Subject: [PATCH] 调整sda

---
 SDA/iWareSda/SdaMainForm.cs |  212 ++++++++++++++++------------------------------------
 1 files changed, 66 insertions(+), 146 deletions(-)

diff --git a/SDA/iWareSda/SdaMainForm.cs b/SDA/iWareSda/SdaMainForm.cs
index fa08681..c005de3 100644
--- a/SDA/iWareSda/SdaMainForm.cs
+++ b/SDA/iWareSda/SdaMainForm.cs
@@ -32,16 +32,16 @@
         private static IDictionary<string, string> realtimePlcValueDict_Srm = new Dictionary<string, string>();
 
         /// <summary>
-        /// RGV瀹炴椂PLC鍊煎瓧鍏�
+        /// Station瀹炴椂PLC鍊煎瓧鍏�
         /// </summary>
-        private static IDictionary<string, string> realtimePlcValueDict_Rgv = new Dictionary<string, string>();
+        private static IDictionary<string, string> realtimePlcValueDict_Station = new Dictionary<string, string>();
 
         #region 鍙戦�乄CS蹇冭烦
         /// <summary>
         /// 鍙戦�佸爢鍨涙満鐨勫績璺�
         /// </summary>
         private List<Thread> SendStackerHeartToSrmThreads = new List<Thread>();
-        private List<Thread> SendStackerHeartToRgvThreads = new List<Thread>();
+        private List<Thread> SendStackerHeartToStationThreads = new List<Thread>();
         /// <summary>
         /// 鍙戦�佽緭閫佺嚎鐨勫績璺�
         /// </summary>
@@ -51,7 +51,7 @@
 
 
         private List<Thread> GetSrmStateThreads = new List<Thread>();
-        private List<Thread> GetRgvStateThreads = new List<Thread>();
+        private List<Thread> GetStationStateThreads = new List<Thread>();
         private List<Thread> GetLineStateThreads = new List<Thread>();
 
         #endregion
@@ -62,16 +62,16 @@
         public static bool isShowPlcValue_Srm = false;
 
         /// <summary>
-        /// 鏄惁瑕佹樉绀哄疄鏃禦gv鐨凱LC鍊煎爢鍨涙満
+        /// 鏄惁瑕佹樉绀哄疄鏃禨tation鐨凱LC鍊煎爢鍨涙満
         /// </summary>
-        public static bool isShowPlcValue_Rgv = false;
+        public static bool isShowPlcValue_Station = false;
 
         static string errorStr = string.Empty;
 
         static string infoStr_ChangeHandshake = string.Empty;
         static string errorStr_Line = string.Empty;
         static string errorStr_Srm = string.Empty;
-        static string errorStr_Rgv = string.Empty;
+        static string errorStr_Station = string.Empty;
         static string infoStr_SaveLine = string.Empty;
 
         static string infoStr_Connection = string.Empty;
@@ -107,14 +107,9 @@
             try
             {
                 #region 瀵瑰鍙戝竷WCF褰㈠紡鏁版嵁璁块棶鏈嶅姟
-                var srmServiceHost = new ServiceHost(typeof(iWareSda.SrmService));
-                srmServiceHost.Open();
 
-                //var lineServiceHost = new ServiceHost(typeof(iWareSda.LineService));
-                //lineServiceHost.Open();
-
-                var rgvServiceHost = new ServiceHost(typeof(iWareSda.RgvService));
-                rgvServiceHost.Open();
+                var StationServiceHost = new ServiceHost(typeof(iWareSda.StationService));
+                StationServiceHost.Open();
 
                 #endregion
 
@@ -140,91 +135,35 @@
             #region 鐘舵�佷俊鎭幏鍙�
 
 
-            //鑾峰彇鍫嗗灈鏈虹殑鐘舵�佷俊鎭�
-            Srm_CacheEntity.DeviceObjs.ForEach(x =>
-            {
-                var thread = new Thread(new ParameterizedThreadStart(GetSrmInfo));
-                thread.Name = string.Format("鑾峰彇鍫嗗灈鏈簕0}鐨勭姸鎬�", x.View.DeviceName);
-                GetSrmStateThreads.Add(thread);
-                StartThread(thread, x);
-            });
-            ////妯℃嫙娴嬭瘯
-            //var y = Srm_CacheEntity.DeviceObjs[3];
-            //var thread_test = new Thread(new ParameterizedThreadStart(GetSrmInfo));
-            //thread_test.Name = string.Format("鑾峰彇鍫嗗灈鏈簕0}鐨勭姸鎬�", y.View.DeviceName);
-            //GetSrmStateThreads.Add(thread_test);
-            //StartThread(thread_test, y);
 
-
-            //鑾峰彇Rgv鐨勭姸鎬佷俊鎭�
-            Rgv_CacheEntity.DeviceObjs.ForEach(x =>
+            //鑾峰彇Station鐨勭姸鎬佷俊鎭�
+            Station_CacheEntity.DeviceObjs.ForEach(x =>
             {
-                var thread = new Thread(new ParameterizedThreadStart(GetRgvInfo));
-                thread.Name = string.Format("鑾峰彇Rgv{0}鐨勭姸鎬�", x.View.DeviceName);
-                GetRgvStateThreads.Add(thread);
+                var thread = new Thread(new ParameterizedThreadStart(GetStationInfo));
+                thread.Name = string.Format("鑾峰彇Station{0}鐨勭姸鎬�", x.View.DeviceName);
+                GetStationStateThreads.Add(thread);
                 StartThread(thread, x);
             });
 
 
-            /*
-            Rgv_CacheEntity.DeviceObjs.ForEach(x =>
-            {
-                var thread = new Thread(new ParameterizedThreadStart(HandleRGVAckBug));
-                thread.Name = string.Format("淇Rgv{0}鐨凙CK BUG", x.View.DeviceName);
-                GetRgvStateThreads.Add(thread);
-                StartThread(thread, x);
-            });
-            //*/
 
-
-            ////鑾峰彇杈撻�佺嚎鐨勭姸鎬佷俊鎭�
-            //HuscoLine_CacheEntity.DeviceObjs.ForEach(x =>
-            //{
-            //    var thread = new Thread(new ParameterizedThreadStart(GetLineInfo));
-            //    thread.Name = string.Format("鑾峰彇杈撻�佺嚎{0}鐨勭姸鎬�", x.View.DeviceName);
-            //    GetLineStateThreads.Add(thread);
-            //    StartThread(thread, x);
-            //});
 
             #endregion
 
             #region 璁惧鍙戦�佸績璺�
 
-            //寮�鍚� 鍫嗗灈鏈� 蹇冭烦鐨勭嚎绋�
-            Srm_CacheEntity.DeviceObjs.ForEach(x =>
+
+            //寮�鍚� Station 蹇冭烦鐨勭嚎绋�
+            Station_CacheEntity.DeviceObjs.ForEach(x =>
             {
-                var thread = new Thread(new ParameterizedThreadStart(SendStackerHeartToSrm));
-                thread.Name = string.Format("鑷姩鍙戦�佸爢鍨涙満{0}蹇冭烦", x.View.DeviceName);
-                SendStackerHeartToSrmThreads.Add(thread);
+                var thread = new Thread(new ParameterizedThreadStart(SendStackerHeartToStation));
+                thread.Name = string.Format("鑷姩鍙戦�丼tation{0}蹇冭烦", x.View.DeviceName);
+                SendStackerHeartToStationThreads.Add(thread);
                 StartThread(thread, x);
             });
-            //寮�鍚� Rgv 蹇冭烦鐨勭嚎绋�
-            Rgv_CacheEntity.DeviceObjs.ForEach(x =>
-            {
-                var thread = new Thread(new ParameterizedThreadStart(SendStackerHeartToRgv));
-                thread.Name = string.Format("鑷姩鍙戦�丷gv{0}蹇冭烦", x.View.DeviceName);
-                SendStackerHeartToRgvThreads.Add(thread);
-                StartThread(thread, x);
-            });
-            /*
-            //寮�鍚� 杈撻�佺嚎 蹇冭烦鐨勭嚎绋�
-            HuscoLine_CacheEntity.DeviceObjs.ForEach(x =>
-            {
-                var thread = new Thread(new ParameterizedThreadStart(SendStackerHeartToLine));
-                thread.Name = string.Format("鑷姩鍙戦�佽緭閫佺嚎{0}蹇冭烦", x.View.DeviceName);
-                SendStackerHeartToLineThreads.Add(thread);
-                StartThread(thread, x);
-            });
-            //*/
 
             #endregion
 
-            #region UI鏄剧ず
-
-            var treadShowUI = new Thread(ShowUI);
-            treadShowUI.Start();
-
-            #endregion
 
             new Thread(DeleteData).Start();
             //*/
@@ -492,16 +431,16 @@
 
         #endregion
 
-        #region Rgv
+        #region Station
 
         #region 璁惧鐘舵�佷俊鎭�
         /// <summary>
-        /// 鑾峰彇 Rgv 鐨勭姸鎬佷俊鎭�
+        /// 鑾峰彇 Station 鐨勭姸鎬佷俊鎭�
         /// </summary>
         /// <param name="obj"></param>
-        private void GetRgvInfo(object obj)
+        private void GetStationInfo(object obj)
         {
-            var s = (RgvEntity)obj;
+            var s = (StationEntity)obj;
             if (s.plcService != null && !s.plcService.IsConnected)
             {
                 s.plcService.Close();
@@ -514,8 +453,8 @@
                     s.InitData();
                     if (s.plcService == null || !s.plcService.IsConnected)
                     {
-                        errorStr_Rgv = "Rgv" + s.View.DeviceName + "杩炴帴宸叉柇寮�锛屾鍦ㄥ皾璇曟墦寮�銆傘�傘��";
-                        errorStr_Rgv = SysHelper.Language(WareSdaStruct.LanguageFlg, errorStr_Rgv, "Piler connection disconnected,waiting for reconnection ");
+                        errorStr_Station = "Station" + s.View.DeviceName + "杩炴帴宸叉柇寮�锛屾鍦ㄥ皾璇曟墦寮�銆傘�傘��";
+                        errorStr_Station = SysHelper.Language(WareSdaStruct.LanguageFlg, errorStr_Station, "Piler connection disconnected,waiting for reconnection ");
                         s.plcService.Close();
                         s.plcService.OpenService();
                         Thread.Sleep(100);
@@ -524,7 +463,7 @@
                     else
                     {
                         var s7 = s.plcService;
-                        var Rgv_db = s.DBBlockForWrite;
+                        var Station_db = s.DBBlockForWrite;
 
                         s.SetPropertyValueForRead();
                         s.SetPropertyValueForWrite();
@@ -533,44 +472,44 @@
                         //s.View.BodyTestName = s.GetBodyTestName(s.View.r_S);
                         //s.View.StateName = s.GetStateName(s.View.R_State);
 
-                        if (SdaMainForm.isShowPlcValue_Rgv)
+                        if (SdaMainForm.isShowPlcValue_Station)
                         {
-                            string dbValues = SdaHelper.GetStrShow<RgvView, RgvDBForWrite, RgvDBForRead>(s.View, s.DBBlockForWrite, s.DBBlockForRead, "", "", s.View.DeviceId, s.View.DeviceName);
-                            realtimePlcValueDict_Rgv[s.View.DeviceName] = dbValues;
+                            string dbValues = SdaHelper.GetStrShow<StationView, StationDBForWrite, StationDBForRead>(s.View, s.DBBlockForWrite, s.DBBlockForRead, "", "", s.View.DeviceId, s.View.DeviceName);
+                            realtimePlcValueDict_Station[s.View.DeviceName] = dbValues;
                         }
                         else
                         {
-                            realtimePlcValueDict_Rgv[s.View.DeviceName] = "";
+                            realtimePlcValueDict_Station[s.View.DeviceName] = "";
                         }
 
-                        foreach (var item in s.View.R_RgvForReadCommList)
+                        foreach (var item in s.View.R_StationForReadCommList)
                         {
                             //鍒ゆ柇濡傛灉ACK=1锛屽垯鍐欏叆STB涓�0
                             if (item.R_ACK == true)
                             {
-                                var writeObj = s.View.W_RgvForWriteCommList.Where(x => x.StationCode == item.StationCode).FirstOrDefault();
-                                var writeAddressObj = s.DBBlockForWrite.W_RgvForWriteCommList.Where(x => x.StationCode == item.StationCode).FirstOrDefault();
-                                MessageModel fr = s.plcService.WriteValuePoint(writeAddressObj.W_STP, false, writeObj.W_STP);
+                                var writeObj = s.View.W_StationForWriteCommList.Where(x => x.StationCode == item.StationCode).FirstOrDefault();
+                                var writeAddressObj = s.DBBlockForWrite.W_StationForWriteCommList.Where(x => x.StationCode == item.StationCode).FirstOrDefault();
+                                MessageModel fr = null;
                                 if (fr.result == false)
                                 {
-                                    Log4NetHelper.WriteErrorLog(LogType.SrmTheadService, "鑾峰彇 RGV鍜岃緭閫佺嚎 鐨勭姸鎬佷俊鎭椂锛屽垽鏂瑼CK=1锛屾洿鏂癝TB涓�0鏃堕敊璇�:" + fr.resMsg, null);
+                                    Log4NetHelper.WriteErrorLog(LogType.SrmTheadService, "鑾峰彇 Station鍜岃緭閫佺嚎 鐨勭姸鎬佷俊鎭椂锛屽垽鏂瑼CK=1锛屾洿鏂癝TB涓�0鏃堕敊璇�:" + fr.resMsg, null);
                                 }
                             }
                         }
 
                         //璧嬪�兼姤璀�
                         //s.View.R_Line_WarningDBList = s.GetLineAlertDatas();
-                        s.View.R_Rgv_WarningDBList = s.GetRgvAlertDatas();
+                        s.View.R_Station_WarningDBList = s.GetStationAlertDatas();
                     }
                 }
                 catch (Exception ex)
                 {
                     s.InitData();
-                    errorStr_Rgv = "GetRgvInfo鍑虹幇寮傚父:" + ex.Message;
-                    errorStr_Rgv = SysHelper.Language(WareSdaStruct.LanguageFlg, errorStr_Rgv,
-                        "GetRgvInfo throw exceptions: " + ex.Message);
+                    errorStr_Station = "GetStationInfo鍑虹幇寮傚父:" + ex.Message;
+                    errorStr_Station = SysHelper.Language(WareSdaStruct.LanguageFlg, errorStr_Station,
+                        "GetStationInfo throw exceptions: " + ex.Message);
 
-                    Log4NetHelper.WriteErrorLog(LogType.RgvSdaService, "鑾峰彇 Rgv 鐨勭姸鎬佷俊鎭嚭鐜板紓甯�", ex);
+                    Log4NetHelper.WriteErrorLog(LogType.StationSdaService, "鑾峰彇 Station 鐨勭姸鎬佷俊鎭嚭鐜板紓甯�", ex);
                 }
                 Thread.Sleep(1000);
             }
@@ -582,26 +521,26 @@
         #region 蹇冭烦鐩稿叧
 
         /// <summary>
-        /// 鍙戦�佺粰Rgv鐨勫績璺�
+        /// 鍙戦�佺粰Station鐨勫績璺�
         /// </summary>
         /// <param name="obj"></param>
-        private void SendStackerHeartToRgv(object obj)
+        private void SendStackerHeartToStation(object obj)
         {
             bool handShakeValue = true;
             while (true)
             {
-                var s = (RgvEntity)obj;
+                var s = (StationEntity)obj;
                 handShakeValue = !handShakeValue;
                 try
                 {
                     if (s.plcService != null && !s.plcService.IsConnected)
                     {
 
-                        errorStr_Rgv = SysHelper.Language(WareSdaStruct.LanguageFlg, "Rgv" + s.View.DeviceName + "杩炴帴宸叉柇寮�", "Piler connection disconnected ");
+                        errorStr_Station = SysHelper.Language(WareSdaStruct.LanguageFlg, "Station" + s.View.DeviceName + "杩炴帴宸叉柇寮�", "Piler connection disconnected ");
                         Thread.Sleep(100);
                         continue;
                     }
-                    errorStr_Rgv = SysHelper.Language(WareSdaStruct.LanguageFlg, "Rgv" + s.View.DeviceName + "杩炴帴宸茶繛鎺ャ�傘�傘��", "Piler connection connected ");
+                    errorStr_Station = SysHelper.Language(WareSdaStruct.LanguageFlg, "Station" + s.View.DeviceName + "杩炴帴宸茶繛鎺ャ�傘�傘��", "Piler connection connected ");
                     if (s.plcService != null && s.plcService.IsConnected)
                     {
                         MessageModel fr = s.plcService.WriteValuePoint(s.DBBlockForWrite.W_HandShake, handShakeValue, s.View.W_HandShake);
@@ -615,8 +554,8 @@
                 }
                 catch (Exception ex)
                 {
-                    errorStr_Rgv = SysHelper.Language(WareSdaStruct.LanguageFlg, "鍙戦�佸績璺崇粰Rgv鍑虹幇寮傚父銆傘�傘��" + ex.Message, "Send to stacker for heart beat throw expection: " + ex.Message);
-                    Log4NetHelper.WriteErrorLog(LogType.SdaService, "鍙戦�佺粰Rgv鐨勫績璺冲嚭鐜板紓甯�:" + ex.Message, ex);
+                    errorStr_Station = SysHelper.Language(WareSdaStruct.LanguageFlg, "鍙戦�佸績璺崇粰Station鍑虹幇寮傚父銆傘�傘��" + ex.Message, "Send to stacker for heart beat throw expection: " + ex.Message);
+                    Log4NetHelper.WriteErrorLog(LogType.SdaService, "鍙戦�佺粰Station鐨勫績璺冲嚭鐜板紓甯�:" + ex.Message, ex);
                 }
             }
         }
@@ -675,7 +614,7 @@
                         //line.View.R_WarningDBList = line.GetAlertDatas();
 
                         string dbValues = SdaHelper.GetStrShow<HuscoLineView, HuscoLineDBForWrite, HuscoLineDBForRead>(line.View, line.DBBlockForWrite, line.DBBlockForRead, HuscoLine_CacheEntity.W_DBHeader, HuscoLine_CacheEntity.R_DBHeader, line.View.DeviceId, line.View.DeviceName);
-                        this.tb_Rgv.Text = dbValues + " \r\n  AssemblyBarcode:" + _AssemblyBarcode + " \r\n CoilCode:" + _CoilCode + " \r\n";
+                        this.tb_Station.Text = dbValues + " \r\n  AssemblyBarcode:" + _AssemblyBarcode + " \r\n CoilCode:" + _CoilCode + " \r\n";
 
                         //棣栧厛璇诲彇鎻℃墜淇″彿鏄惁鏄痶rue锛屽彧鏈塼rue 鐨勬椂鍊欐墠鑳芥嬁鍊�
                         var isRead = Convert.ToInt32(line.plcService.ReadValuePoint("", handShareAddress, typeof(Int32)));
@@ -796,32 +735,13 @@
                 Thread.Sleep(1000);
                 try
                 {
-                    foreach (var item in realtimePlcValueDict_Srm)
-                    {
-                        if (item.Key == "Srm1")
-                        {
-                            this.tb_Srm1.Text = item.Value;
-                        }
-                        else if (item.Key == "Srm2")
-                        {
-                            this.tb_Srm2.Text = item.Value;
-                        }
-                        else if (item.Key == "Srm3")
-                        {
-                            this.tb_Srm3.Text = item.Value;
-                        }
-                        else if (item.Key == "Srm4")
-                        {
-                            this.tb_Srm4.Text = item.Value;
-                        }
-                    }
 
-                    var str_rgv = "";
-                    foreach (var item in realtimePlcValueDict_Rgv)
+                    var str_Station = "";
+                    foreach (var item in realtimePlcValueDict_Station)
                     {
-                        str_rgv += item.Value;
+                        str_Station += item.Value;
                     }
-                    this.tb_Rgv.Text = str_rgv;
+                    this.tb_Station.Text = str_Station;
 
                 }
                 catch (Exception)
@@ -856,7 +776,7 @@
             {
                 realtimePlcValueDict_Srm.Add(x.View.DeviceName, "");
             });
-            Rgv_CacheEntity.DeviceObjs.ForEach(x =>
+            Station_CacheEntity.DeviceObjs.ForEach(x =>
             {
                 realtimePlcValueDict_Srm.Add(x.View.DeviceName, "");
             });
@@ -1012,36 +932,36 @@
 
         private void button2_Click_1(object sender, EventArgs e)
         {
-            isShowPlcValue_Rgv = true;
+            isShowPlcValue_Station = true;
         }
 
         private void button1_Click_1(object sender, EventArgs e)
         {
-            isShowPlcValue_Rgv = false;
+            isShowPlcValue_Station = false;
         }
 
         /*
         /// <summary>
-        /// 涓�鐩村瓨鍦≧GVACK淇″彿鏃犳硶娓呴櫎鐨凚UG锛屽仛涓畾鏃舵竻闄ょ殑绾跨▼
+        /// 涓�鐩村瓨鍦⊿tationACK淇″彿鏃犳硶娓呴櫎鐨凚UG锛屽仛涓畾鏃舵竻闄ょ殑绾跨▼
         /// </summary>
-        public void HandleRGVAckBug(object obj)
+        public void HandleStationAckBug(object obj)
         {
-            var s = (RgvEntity)obj;
+            var s = (StationEntity)obj;
             
             while (true)
             {
                 Thread.Sleep(1000);
-                bool finishRgv = (bool)s.plcService.ReadValuePoint(s.DBBlockForRead.R_RGV_Finish, typeof(bool));
-                bool finisAck = (bool)s.plcService.ReadValuePoint(s.DBBlockForWrite.W_RGV_FinishACK, typeof(bool));
+                bool finishStation = (bool)s.plcService.ReadValuePoint(s.DBBlockForRead.R_Station_Finish, typeof(bool));
+                bool finisAck = (bool)s.plcService.ReadValuePoint(s.DBBlockForWrite.W_Station_FinishACK, typeof(bool));
 
-                if (finisAck == false && finishRgv == true)
+                if (finisAck == false && finishStation == true)
                 {
                     Thread.Sleep(10000);//濡傛灉10绉掕繕娌℃竻闄わ紝灏卞己鍒舵竻闄�
-                    finishRgv = (bool)s.plcService.ReadValuePoint(s.DBBlockForRead.R_RGV_Finish, typeof(bool));
-                    finisAck = (bool)s.plcService.ReadValuePoint(s.DBBlockForWrite.W_RGV_FinishACK, typeof(bool));
-                    if (finisAck == false && finishRgv == true)
+                    finishStation = (bool)s.plcService.ReadValuePoint(s.DBBlockForRead.R_Station_Finish, typeof(bool));
+                    finisAck = (bool)s.plcService.ReadValuePoint(s.DBBlockForWrite.W_Station_FinishACK, typeof(bool));
+                    if (finisAck == false && finishStation == true)
                     {
-                        s.plcService.WriteValuePoint(s.DBBlockForWrite.W_RGV_FinishACK, true, s.View.W_RGV_FinishACK);//閲嶅彂涓�娆� 20230503 鐜嬮摦
+                        s.plcService.WriteValuePoint(s.DBBlockForWrite.W_Station_FinishACK, true, s.View.W_Station_FinishACK);//閲嶅彂涓�娆� 20230503 鐜嬮摦
                     }
 
                 }

--
Gitblit v1.9.3