From a0a0df2e824b6fe7e5a3c0afce78127fecf84fc9 Mon Sep 17 00:00:00 2001
From: wangxinhui <wangxinhui@hnkhzn.com>
Date: 星期一, 03 十一月 2025 08:23:05 +0800
Subject: [PATCH] ERP接口代码更新,WCS代码优化,出入库分配优化

---
 项目代码/WCS/WCSServices/WIDESEAWCS_Server/Controllers/AGV/AGVController.cs |   91 ++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 89 insertions(+), 2 deletions(-)

diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_Server/Controllers/AGV/AGVController.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_Server/Controllers/AGV/AGVController.cs"
index 0e9588b..70ebbef 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_Server/Controllers/AGV/AGVController.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_Server/Controllers/AGV/AGVController.cs"
@@ -8,6 +8,7 @@
 using WIDESEAWCS_Core.Enums;
 using WIDESEAWCS_Core.Helper;
 using WIDESEAWCS_Core.LogHelper;
+using WIDESEAWCS_DTO;
 using WIDESEAWCS_DTO.Agv;
 using WIDESEAWCS_IBasicInfoRepository;
 using WIDESEAWCS_ITaskInfoRepository;
@@ -321,6 +322,32 @@
                 {
                     return content.Error($"鏈壘鍒扮珯鍙伴厤缃�");
                 }
+                #region todo:涓存椂閫昏緫
+                if (stationManger.StationDeviceCode=="MES")
+                {
+                    
+                    RequestAGVArriveDTO requestAGVArriveDTO =new RequestAGVArriveDTO()
+                    {
+                        SD_WorkCentreAgvArriveNoticeInfo=new List<AgvArriveNotice> { new AgvArriveNotice()
+                        {
+                            DispatchPlanMaterialId=409,
+                            WorkCentreCode="66",
+                            LocationCode="3-ZD-ZJZZ",
+                            CallId="4534c242-27a7-4fb6-86f5-460b09db303d"
+                        } }
+                    };
+                    WebResponseContent webResponse= _taskService.MESAvgArriveNotice(requestAGVArriveDTO);
+                    if (webResponse.Message.Contains("\"obj\": true"))
+                    {
+                        return content.Error($"鍏佽鍙栨枡");
+                    }
+                    else
+                    {
+                        return content.Error($"绂佹鏀炬枡");
+                    }
+                    
+                }
+                #endregion
                 IDevice? device = Storage.Devices.FirstOrDefault(x => x.DeviceCode == stationManger.StationDeviceCode);
                 if (device == null)
                 {
@@ -397,7 +424,21 @@
                     }
                     else if (device.DeviceCode.Contains("TrussCarton"))//妗佹灦
                     {
-                        content.OK("鍏佽鏀炬枡");
+                        bool RequestPut = otherDevice.GetValue<W_TrussCartonDB, bool>(GetCartonRequest(stationManger.StackerCraneStationCode), stationManger.StationDeviceCode);
+                        if (!RequestPut)
+                        {
+                            otherDevice.SetValue(GetCartonRequest(stationManger.StackerCraneStationCode), true, stationManger.StationDeviceCode);
+                            Thread.Sleep(1000);
+                        }
+                        bool AllowFinish = otherDevice.GetValue<R_TrussCartonDB, bool>(GetCarton(stationManger.StackerCraneStationCode), stationManger.StationDeviceCode);
+                        if (AllowFinish)
+                        {
+                            content.OK("鍏佽鏀炬枡");
+                        }
+                        else
+                        {
+                            return content.Error("绂佹鏀炬枡");
+                        }
                     }
                 }
                 return content;
@@ -477,6 +518,53 @@
                     return W_TrussCartonDB.W_CartonPut5;
                 case "6":
                     return W_TrussCartonDB.W_CartonPut6;
+                default:
+                    throw new Exception("鏈畾涔夊伐浣�");
+            }
+        }
+        /// <summary>
+        /// 鑾峰彇妗佹灦璇锋眰淇″彿
+        /// </summary>
+        public W_TrussCartonDB GetCartonRequest(string StationCode)
+        {
+            switch (StationCode)
+            {
+                case "1":
+                    return W_TrussCartonDB.W_CartonRequest1;
+                case "2":
+                    return W_TrussCartonDB.W_CartonRequest2;
+                case "3":
+                    return W_TrussCartonDB.W_CartonRequest3;
+                case "4":
+                    return W_TrussCartonDB.W_CartonRequest4;
+                case "5":
+                    return W_TrussCartonDB.W_CartonRequest5;
+                case "6":
+                    return W_TrussCartonDB.W_CartonRequest6;
+                default:
+                    throw new Exception("鏈畾涔夊伐浣�");
+            }
+        }
+
+        /// <summary>
+        /// 鑾峰彇妗佹灦杩涘叆淇″彿
+        /// </summary>
+        public R_TrussCartonDB GetCarton(string StationCode)
+        {
+            switch (StationCode)
+            {
+                case "1":
+                    return R_TrussCartonDB.R_CartonAllow1;
+                case "2":
+                    return R_TrussCartonDB.R_CartonAllow2;
+                case "3":
+                    return R_TrussCartonDB.R_CartonAllow3;
+                case "4":
+                    return R_TrussCartonDB.R_CartonAllow4;
+                case "5":
+                    return R_TrussCartonDB.R_CartonAllow5;
+                case "6":
+                    return R_TrussCartonDB.R_CartonAllow6;
                 default:
                     throw new Exception("鏈畾涔夊伐浣�");
             }
@@ -567,7 +655,6 @@
             }
         }
 
-        //[HttpPost, HttpGet, Route("TakeFinish"), AllowAnonymous]
         /// <summary>
         /// 鍙栬揣瀹屾垚
         /// </summary>

--
Gitblit v1.9.3