From f3493a6f6f9958cea100ad596fa84239a6e2e962 Mon Sep 17 00:00:00 2001
From: dengjunjie <dengjunjie@hnkhzn.com>
Date: 星期二, 18 六月 2024 16:58:53 +0800
Subject: [PATCH] 获取老PCS下VK、桁架机械手、机床、状态信息

---
 代码管理/PCS/WCS_Server/WIDESEA_WCS/Common/Gantry.cs |   40 +++++++++++++++++++++-------------------
 1 files changed, 21 insertions(+), 19 deletions(-)

diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/PCS/WCS_Server/WIDESEA_WCS/Common/Gantry.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/PCS/WCS_Server/WIDESEA_WCS/Common/Gantry.cs"
index 04117b6..fa4ebb5 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/PCS/WCS_Server/WIDESEA_WCS/Common/Gantry.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/PCS/WCS_Server/WIDESEA_WCS/Common/Gantry.cs"
@@ -4,6 +4,7 @@
 using System;
 using System.Collections.Generic;
 using System.Linq;
+using System.Net;
 using System.Security.Cryptography.Xml;
 using System.Text;
 using System.Threading.Tasks;
@@ -61,6 +62,18 @@
                         if (name == "3鍗曞厓杈婇亾涓嬫枡鏌ヨ杞﹁疆") number = "3鍗曞厓杈婇亾涓嬫枡鏌ヨ璁㈠崟";
                         if (name == "杈婇亾涓婃枡鏌ヨ杞﹁疆") number = "杈婇亾涓婃枡鏌ヨ璁㈠崟";
                         var wp_id = client.ReadByOrder<string>("R_o_wp_id", number);
+
+                        if (name == "杈婇亾涓婃枡鏌ヨ杞﹁疆")
+                        {
+                            var wp_id1 = client.ReadByOrder<string>("W_Wheel_id", "涓婃枡鍖�");//杞﹁疆SN鍙�
+                            if (wp_id != wp_id1)
+                            {
+                                client.WriteByOrder("W_i_status", (byte)2, name);
+                                client.WriteByOrder("R_oi_on", (byte)0, name);
+                                WriteLog.Write_Log(name, wp_id, "閿欒淇℃伅锛�", $"璇诲彇妗佹灦淇℃伅锛歕n鏌ヨ杞﹁疆SN锛歿wp_id}\n涓婃枡鐢宠SN锛歿wp_id}\n\n鍐欏叆妗佹灦淇℃伅锛歕nW_i_status锛�2\nR_oi_on锛�0\n\n鏈煡璇㈠埌宸ュ崟淇℃伅");
+                                continue;
+                            }
+                        }
 
                         var Mes_Work = workinfoRepository.Find(x => x.SN == wp_id && x.processCode == (name != "杈婇亾涓婃枡鏌ヨ杞﹁疆" ? "17" : "28")).FirstOrDefault();
                         if (Mes_Work == null)
@@ -173,17 +186,6 @@
 
                         var mes_Head = mes_HeadRepository.FindFirst(x => x.jobID == Mes_Work.jobID);
 
-                        //闇�娣诲姞鏌ヨ杞﹁疆SN鍙疯鍗曢�昏緫   闇�娣诲姞鍏ュ簱妯″紡鍒ゆ柇锛屾墜鍔ㄥ叆搴撴ā寮忛渶浜哄伐娣诲姞鍏ュ簱搴撳尯锛屽惁鍒欐姤璀�
-                        var pattern = patternRepository.FindFirst(x => x.pattern_name == "鍏ュ簱妯″紡").pattern_state;
-                        if (pattern != 1 && string.IsNullOrEmpty(mes_Head.area))
-                        {
-                            client.WriteByOrder("W_i_status", (byte)4, name);
-                            client.WriteByOrder("R_oi_on", (byte)0, name);
-                            #region 鏃ュ織璁板綍
-                            WriteLog.Write_Log(name, wp_id, "閿欒淇℃伅锛�", $"璇诲彇妗佹灦淇℃伅锛歕n杞﹁疆SN锛歿wp_id}\n\n鍐欏叆妗佹灦淇℃伅锛歕nW_i_status锛�4\nR_oi_on锛�0\n\n鎵嬪姩鍏ュ簱妯″紡鏈�夋嫨搴撳尯");
-                            #endregion
-                            continue;
-                        }
                         var geometry = Pipeline.QueryMateriel(Mes_Work.drawingNo);
                         if (geometry == null)
                         {
@@ -206,12 +208,12 @@
                             client.WriteByOrder("W_i_batch_id", Mes_Work.heatBatchID, name);
 
                             //灞忚斀宸ヨ壓(灞忚斀瑙嗚妫�娴�/灞忚斀娑傛补)
-                            //if (name != "杈婇亾涓婃枡鏌ヨ杞﹁疆")
-                            //{
-                            client.WriteByOrder("W_i_skip_op_SJ1", name == "3鍗曞厓杈婇亾涓嬫枡鏌ヨ璁㈠崟" ? true : mes_Head.skip_op_1, name);//灞忚斀瑙嗚妫�娴嬭澶�1
-                            client.WriteByOrder("W_i_skip_op_SJ2", name == "3鍗曞厓杈婇亾涓嬫枡鏌ヨ璁㈠崟" ? true : mes_Head.skip_op_2, name);//灞忚斀瑙嗚妫�娴嬭澶�2
-                            client.WriteByOrder("W_i_skip_op_LT", mes_Head.skip_op_3, name);//灞忚斀閾炬潯鏈�
-                                                                                            //}
+                            if (name != "杈婇亾涓婃枡鏌ヨ璁㈠崟")
+                            {
+                                client.WriteByOrder("W_i_skip_op_SJ1", name == "3鍗曞厓杈婇亾涓嬫枡鏌ヨ璁㈠崟" ? true : mes_Head.skip_op_1, name);//灞忚斀瑙嗚妫�娴嬭澶�1
+                                client.WriteByOrder("W_i_skip_op_SJ2", name == "3鍗曞厓杈婇亾涓嬫枡鏌ヨ璁㈠崟" ? true : mes_Head.skip_op_2, name);//灞忚斀瑙嗚妫�娴嬭澶�2
+                                client.WriteByOrder("W_i_skip_op_LT", mes_Head.skip_op_3, name);//灞忚斀閾炬潯鏈�
+                            }
                             client.WriteByOrder("R_oi_on", (byte)0, name);
                             #region 鏃ュ織璁板綍
                             WriteLog.Write_Log(name, wp_id, "鍐欏叆淇℃伅锛�", $"璇诲彇妗佹灦淇℃伅锛歕n杞﹁疆SN锛歿wp_id}\n杞瀷ID锛歿wp_type}\n\n鍐欏叆妗佹灦淇℃伅锛歕nW_i_status锛�1" +
@@ -393,13 +395,13 @@
                                 var Detail = mes_DetailRepository.FindFirst(x => x.jobID == Mes_Work.jobID && x.SN == Mes_Work.SN);
                                 Detail.Status = "涓嬬嚎";
                                 Detail.FinishTime = DateTime.Now;
-                                count = mes_DetailRepository.Update(Detail, true);
+                                count = mes_DetailRepository.Update(Detail, x => new { x.Status, x.FinishTime }, true);
                                 if (count < 1)
                                     throw new Exception($"宸ュ崟瀛愯〃淇℃伅鏇存柊澶辫触锛佽溅杞甋N鍙凤細{Detail.SN}");
                                 var Head = mes_HeadRepository.FindFirst(x => x.jobID == Detail.jobID);
                                 Head.finishNum = Head.finishNum + 1;
                                 if (Head.finishNum == Head.quantity) Head.FinishTime = DateTime.Now;
-                                count = mes_HeadRepository.Update(Head, true);
+                                count = mes_HeadRepository.Update(Head, x => new { x.finishNum, x.FinishTime }, true);
                                 if (count < 1)
                                     throw new Exception($"宸ュ崟澶磋〃淇℃伅鏇存柊澶辫触锛佸伐鍗曞彿锛歿Head.jobID}");
                                 #endregion

--
Gitblit v1.9.3