From bb929bd0809eefc1108dd779846ff07d997f7ef0 Mon Sep 17 00:00:00 2001
From: huanghongfeng <huanghongfeng@hnkhzn.com>
Date: 星期五, 19 七月 2024 09:25:14 +0800
Subject: [PATCH] 反馈MES工单完成

---
 代码管理/PCS/WCS_Server/WIDESEA_Comm/MES_Info/Request/MES_head.cs           |   21 +++++++
 代码管理/PCS/WCS_Server/WIDESEA_WCS/JobsPart/Common/AutoUpdateWork.cs       |   37 +++++++++++
 代码管理/PCS/WCS_Server/WIDESEA_WCS/JobsPart/Common/ToMES/HandleTask_Mes.cs |   63 +++++++++++++++++++++
 代码管理/PCS/WCS_Server/WIDESEA_Comm/MES_Info/MES_Response.cs               |   46 +++++++++++++++
 4 files changed, 165 insertions(+), 2 deletions(-)

diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/PCS/WCS_Server/WIDESEA_Comm/MES_Info/MES_Response.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/PCS/WCS_Server/WIDESEA_Comm/MES_Info/MES_Response.cs"
new file mode 100644
index 0000000..06317ac
--- /dev/null
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/PCS/WCS_Server/WIDESEA_Comm/MES_Info/MES_Response.cs"
@@ -0,0 +1,46 @@
+锘縰sing System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace WIDESEA_Comm.MES_Info
+{
+    public class MES_Response
+    {
+        /// <summary>
+        /// 鐘舵�佺爜
+        /// </summary>
+        public string code { get; set; }
+
+        /// <summary>
+        /// 娑堟伅
+        /// </summary>
+        public string message { get; set; }
+
+        /// <summary>
+        /// 鍝嶅簲鏁版嵁
+        /// </summary>
+        public string data { get; set; }
+
+        /// <summary>
+        /// 鍫嗘爤娑堟伅
+        /// </summary>
+        public string stackMsg { get; set; }
+
+        /// <summary>
+        /// 鎵╁睍
+        /// </summary>
+        public string Extras { get; set; }
+
+        /// <summary>
+        /// 绫诲瀷
+        /// </summary>
+        public string Type { get; set; }
+
+        /// <summary>
+        /// 鏃堕棿
+        /// </summary>
+        public DateTime Time { get; set; }
+    }
+}
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/PCS/WCS_Server/WIDESEA_Comm/MES_Info/Request/MES_head.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/PCS/WCS_Server/WIDESEA_Comm/MES_Info/Request/MES_head.cs"
new file mode 100644
index 0000000..f3bb183
--- /dev/null
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/PCS/WCS_Server/WIDESEA_Comm/MES_Info/Request/MES_head.cs"
@@ -0,0 +1,21 @@
+锘縰sing System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace WIDESEA_Comm.MES_Info.Request
+{
+    public class MES_head
+    {
+        /// <summary>
+        /// 鐘舵��          14涓哄畬鎴�
+        /// </summary>
+        public string status { get; set; }
+
+        /// <summary>
+        /// 宸ュ崟
+        /// </summary>
+        public string jobID { get; set; }
+    }
+}
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/PCS/WCS_Server/WIDESEA_WCS/JobsPart/Common/AutoUpdateWork.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/PCS/WCS_Server/WIDESEA_WCS/JobsPart/Common/AutoUpdateWork.cs"
index bec1f3e..9854254 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/PCS/WCS_Server/WIDESEA_WCS/JobsPart/Common/AutoUpdateWork.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/PCS/WCS_Server/WIDESEA_WCS/JobsPart/Common/AutoUpdateWork.cs"
@@ -8,6 +8,7 @@
 using WIDESEA_Entity.DomainModels;
 using WIDESEA_WCS.IRepositories;
 using WIDESEA_WCS.IServices;
+using WIDESEA_WCS.Jobs.Task;
 using WIDESEA_WCS.Repositories;
 using WIDESEA_WCS.Services;
 using WIDESEA_WMS.IRepositories;
@@ -71,7 +72,24 @@
             {
                 foreach (var mes_head in mes_head_jcxs)
                 {
-                    AddHtyMesWork(mes_head, mes_HeadRepository);
+                    if (mes_head.quantity == mes_head.agv_finishNum)
+                    {
+                        if (mes_head.creator == "MES")
+                        {
+                            var uploadResult = HandleTask_Mes.UploadMESInfo(mes_head.jobID);
+                            if (uploadResult.Status)
+                            {
+                                AddHtyMesWork(mes_head, mes_HeadRepository);
+                            }
+                        }
+                        else
+                        {
+                            AddHtyMesWork(mes_head, mes_HeadRepository);
+                        }
+                        
+                    }
+                        
+                    
                 }
             }
             #endregion
@@ -83,7 +101,22 @@
                 foreach (var mes_head in mes_head_jjgs)
                 {
                     if (mes_head.quantity == mes_head.agv_finishNum)
-                        AddHtyMesWork(mes_head, mes_HeadRepository);
+                    {
+                        if (mes_head.creator == "MES")
+                        {
+                            var uploadResult = HandleTask_Mes.UploadMESInfo(mes_head.jobID);
+                            if (uploadResult.Status)
+                            {
+                                AddHtyMesWork(mes_head, mes_HeadRepository);
+                            }
+                        }
+                        else
+                        {
+                            AddHtyMesWork(mes_head, mes_HeadRepository);
+                        }
+                        
+                    }
+                       
                 }
             }
             #endregion
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/PCS/WCS_Server/WIDESEA_WCS/JobsPart/Common/ToMES/HandleTask_Mes.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/PCS/WCS_Server/WIDESEA_WCS/JobsPart/Common/ToMES/HandleTask_Mes.cs"
new file mode 100644
index 0000000..766d3e2
--- /dev/null
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/PCS/WCS_Server/WIDESEA_WCS/JobsPart/Common/ToMES/HandleTask_Mes.cs"
@@ -0,0 +1,63 @@
+锘縰sing Newtonsoft.Json;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Reflection.Metadata;
+using System.Text;
+using System.Threading.Tasks;
+using WIDESEA_Comm;
+using WIDESEA_Comm.Http;
+using WIDESEA_Comm.LogInfo;
+using WIDESEA_Comm.MES_Info;
+using WIDESEA_Comm.MES_Info.Request;
+using WIDESEA_Comm.TaskNo;
+using WIDESEA_Core.Extensions;
+using WIDESEA_Core.Utilities;
+using WIDESEA_Entity.DomainModels;
+using static System.Collections.Specialized.BitVector32;
+using static WIDESEA_Comm.MES_Info.Request.MES_head;
+
+namespace WIDESEA_WCS.Jobs.Task
+{
+    /// <summary>
+    /// 鍚慚ES鍙嶉鍑哄叆搴撲俊鎭�
+    /// </summary>
+    public class HandleTask_Mes
+    {
+        public static WebResponseContent UploadMESInfo(string jobID)
+        {
+            WebResponseContent content = new WebResponseContent();
+            string postJson = "";
+            string mesData = "";
+            try
+            {
+                MES_head mES_Head = new MES_head { status = "14", jobID = jobID };
+                postJson = JsonConvert.SerializeObject(mES_Head);
+                string url = "http://10.13.3.15:81/api/agv/agvNSHJobOrderStatus";
+                mesData = Request.RequestData(postJson, url);
+
+                if (mesData.Contains("杩炴帴灏濊瘯澶辫触"))
+                    throw new Exception(mesData);
+
+                var requestMes = JsonConvert.DeserializeObject<MES_Response>(mesData);
+
+                if (requestMes.code == "200" && requestMes.Type == "success")
+                {
+                    content.OK("宸ュ崟瀹屾垚淇℃伅鎴愬姛锛�");
+                    WritePCSLog.LogAdd("", "鎴愬姛", "MES", "PCS", postJson, mesData, "宸ュ崟淇℃伅鍙嶉", "agvNSHJobOrderStatus", requestMes.message);
+                }
+                else
+                {
+                    throw new Exception(requestMes.message);
+                }
+            }
+            catch (Exception ex)
+            {
+                content.Error(ex.Message);
+                WritePCSLog.LogAdd("", "澶辫触", "MES", "WMS", postJson, mesData, "宸ュ崟淇℃伅鍙嶉", "agvNSHJobOrderStatus", ex.Message);
+            }
+
+            return content;
+        }
+    }
+}

--
Gitblit v1.9.3