From ba9d50cf57f3d1a35f1d043871a0f09bc3ac6116 Mon Sep 17 00:00:00 2001
From: 陈勇 <chenyong@hnkhzn.com>
Date: 星期四, 01 二月 2024 09:20:27 +0800
Subject: [PATCH] MES接口等

---
 代码管理/PCS/WCS_Server/WIDESEA_WCS/ToMES/ToMesServer.cs |   78 ++++++++++++++++++++++++++++++++++++++
 1 files changed, 77 insertions(+), 1 deletions(-)

diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/PCS/WCS_Server/WIDESEA_WCS/ToMES/ToMesServer.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/PCS/WCS_Server/WIDESEA_WCS/ToMES/ToMesServer.cs"
index 7359fba..ae1022e 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/PCS/WCS_Server/WIDESEA_WCS/ToMES/ToMesServer.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/PCS/WCS_Server/WIDESEA_WCS/ToMES/ToMesServer.cs"
@@ -1,15 +1,21 @@
-锘縰sing System;
+锘縰sing Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 using System.Linq;
+using System.Runtime.InteropServices;
 using System.Text;
 using System.Threading.Tasks;
+using WIDESEA_Common;
+using WIDESEA_Core.FreeDB;
 using WIDESEA_Core.Utilities;
 using WIDESEA_Entity.DomainModels;
+using static FreeSql.Internal.GlobalFilter;
 
 namespace WIDESEA_WCS
 {
     public partial class ToMesServer
     {
+
         /// <summary>
         /// 娣诲姞宸ュ崟淇℃伅
         /// </summary>
@@ -30,5 +36,75 @@
             WebResponseContent content = new WebResponseContent();
             return content;
         }
+
+        /// <summary>
+        /// MES涓嬪彂WMS宸ュ崟鎺ュ彛
+        /// </summary>
+        /// <param name="json"></param>
+        /// <returns></returns>
+        public static WebResponseContent AddMes_Info(object json)
+        {
+            WebResponseContent content = new WebResponseContent();
+            FreeDB freeDB = new FreeDB();
+            try
+            {
+                Mes_WorkInfo workInfo = JsonConvert.DeserializeObject<Mes_WorkInfo>(json.ToString());
+
+                if (workInfo == null)
+                {
+                    return content.Error("宸ュ崟淇℃伅鏁版嵁涓虹┖");
+                }
+
+                var mesinfo = freeDB.Select<dt_mes_head>().Where(x => x.jobID == workInfo.jobID).First();
+                if (mesinfo != null)
+                {
+                    return content.Error($"宸ュ崟鍙穥mesinfo.jobID}宸插瓨鍦�,璇锋牳瀹炲悗鍦ㄥ彂閫侊紒");
+                }
+
+                Guid head = Guid.NewGuid();
+                dt_mes_head mes_Head = new dt_mes_head
+                {
+                    mes_id = head,
+                    CreateTime = DateTime.Now,
+                    creator = "MES",
+                    drawingNo = workInfo.drawingNo,
+                    drawingNoVer = workInfo.drawingNoVer,
+                    expectedFinishTime = workInfo.expectedFinishTime,
+                    expectedStartTime = workInfo.expectedStartTime,
+                    jobID = workInfo.jobID,
+                    materialCode = workInfo.materialCode,
+                    maxDiameterDiff = workInfo.maxDiameterDiff,
+                    productDesc = workInfo.productDesc,
+                    productName = workInfo.productName,
+                    quantity = workInfo.quantity,
+                    reqID = workInfo.reqID,
+                    reqIDLineNo = workInfo.reqIDLineNo,
+                    stackNoRange = workInfo.stackNoRange,
+                    typeID = workInfo.typeID,
+                    workOrder = workInfo.workOrder
+                };
+                freeDB.Add(mes_Head);
+
+                foreach (var item in workInfo.details)
+                {
+                    dt_mes_detail mes_Detail = new dt_mes_detail
+                    {
+                        mes_detail_id = Guid.NewGuid(),
+                        mes_headID = head,
+                        jobID = item.jobID,
+                        billetID = item.billetID,
+                        heatBatchID = item.heatBatchID,
+                        heatID = item.heatID,
+                        SN = item.SN
+                    };
+                    freeDB.Add(mes_Detail);
+                }
+                return content.OK();
+            }
+            catch (Exception ex)
+            {
+                return content.Error(ex.Message); 
+            }
+        }
     }
 }

--
Gitblit v1.9.3