From 16b0a2c97ee5349079f4deda0aab512af8a06dae Mon Sep 17 00:00:00 2001
From: chengsc <11752@DESKTOP-DS49RCP>
Date: 星期四, 08 五月 2025 08:26:31 +0800
Subject: [PATCH] 修改采购入库测出的问题

---
 Wms/WMS.BLL/HttpServer.cs                       |   59 +++++++++
 Wms/WMS.IBLL/IHttpServer.cs                     |   16 ++
 Wms/WMS.BLL/BllSoServer/ExportNoticeServer.cs   |   20 +-
 Wms/Wms/appsettings.json                        |    4 
 Wms/WMS.IBLL/IBllAsnServer/IPalletBindServer.cs |    9 +
 Wms/Model/InterFaceModel/HttpModel.cs           |   11 +
 Wms/WMS.BLL/BllCheckServer/StockCheckServer.cs  |   10 
 Wms/WMS.BLL/BllPdaServer/PdaAsnServer.cs        |   21 ++-
 Wms/Wms/Controllers/DownApiController.cs        |   70 +++++------
 Wms/WMS.BLL/BllAsnServer/PalletBindServer.cs    |  122 ++++++++++++++++++--
 10 files changed, 265 insertions(+), 77 deletions(-)

diff --git a/Wms/Model/InterFaceModel/HttpModel.cs b/Wms/Model/InterFaceModel/HttpModel.cs
index b176c7f..a3db8e2 100644
--- a/Wms/Model/InterFaceModel/HttpModel.cs
+++ b/Wms/Model/InterFaceModel/HttpModel.cs
@@ -74,13 +74,22 @@
 
     #region WCS鎺ュ彛瀹炰綋绫�
     /// <summary>
-    /// 鎺ユ敹wcs鎺ュ彛杩斿洖鍙傛暟鐨刴odel
+    /// 鎺ユ敹wcs鎺ュ彛杩斿洖WCS缁撴灉鍙傛暟鐨刴odel
     /// </summary>
     public class WcsModel
     {
         public int StatusCode { get; set; }
         public string Msg { get; set; }
     }
+    /// <summary>
+    /// 鎺ュ彈WCS鍙嶉鐨勫弬鏁�
+    /// </summary>
+    public class WcsModel2
+    {
+        public int code { get; set; }
+        public string message { get; set; }
+        
+    }
 
     public enum PLCTypeEnum
     {
diff --git a/Wms/WMS.BLL/BllAsnServer/PalletBindServer.cs b/Wms/WMS.BLL/BllAsnServer/PalletBindServer.cs
index aa0096e..f5c6885 100644
--- a/Wms/WMS.BLL/BllAsnServer/PalletBindServer.cs
+++ b/Wms/WMS.BLL/BllAsnServer/PalletBindServer.cs
@@ -1435,6 +1435,7 @@
                 var skuNo = ""; //鍏ュ簱鐗╂枡
                 var isAddTask = true; //鏄惁娣诲姞鏂颁换鍔�
                 var oldTaskNo = "";  //鏃т换鍔″彿
+                var starLocate = ""; // 璧峰鍌ㄤ綅
                 var stockDetail = Db.Queryable<DataStockDetail>().Where(m => m.PalletNo == palletNo).ToList();
                 //楠岃瘉鐗╂枡鏄惁鏈夋垚鍝�
                 foreach (var item in stockDetail)
@@ -1461,7 +1462,7 @@
                             {
                                 PalletNo = palletNo,//鎵樼洏鍙�
                                 StartRoadway = beingTask.StartRoadway, // 璧峰宸烽亾
-                                StartLocate = "", // 璧峰浣嶇疆
+                                StartLocate = starLocate, // 璧峰浣嶇疆
                                 EndLocate = beingTask.EndLocat, // 鐩爣浣嶇疆
                                 EndRoadway = beingTask.EndRoadway,                           //  鐩爣宸烽亾
                                 TaskNo = beingTask.TaskNo, // 浠诲姟鍙�
@@ -1529,9 +1530,21 @@
                     {
                         throw new Exception($"{palletNo}鎵樼洏鏉$爜涓嶅叿鏈夌鐮佷俊鎭紝涓嶅彲鍏ュ簱锛�");
                     }
-                    if (stockDetail.Count(m => !string.IsNullOrWhiteSpace(m.LocatNo)) > 0)
+                    if (stockDetail.Count(m => !string.IsNullOrWhiteSpace(m.LocatNo)) == 0)
                     {
-                        throw new Exception("褰撳墠鎵樼洏宸插湪搴撳唴锛岃鏍稿疄");
+                        throw new Exception("褰撳墠鎵樼洏娌℃湁鍦ㄥ钩搴撳偍浣嶄笂锛岃鏍稿疄");
+                    }
+                    starLocate = stockDetail.First().LocatNo;
+
+                    var pingAreaStr = Db.Queryable<SysStorageArea>().Where(m => m.IsDel == "0" && m.WareHouseNo == "W04" && m.AreaNo != "B06" && m.AreaNo != "B07").Select(m=>m.AreaNo).ToList();
+                    var pingLocateInfo = Db.Queryable<SysStorageLocat>().First(m => m.LocatNo == starLocate && pingAreaStr.Contains(m.AreaNo) && m.IsDel == "0");
+                    if (pingLocateInfo == null )
+                    {
+                        throw new Exception("褰撳墠鎵樼洏鎵�鍦ㄧ殑鍌ㄤ綅娌℃湁鍦ㄧ郴缁熶腑鎵惧埌淇℃伅");
+                    }
+                    if (pingLocateInfo.Status != "1")
+                    {
+                        throw new Exception("褰撳墠鎵樼洏鎵�鍦ㄧ殑鍌ㄤ綅鐘舵�侀敊璇紝涓嶆槸绌哄偍浣�");
                     }
                     skuNo = stockDetail.First().SkuNo;
 
@@ -1545,13 +1558,14 @@
                             {
                                 PalletNo = palletNo,//鎵樼洏鍙�
                                 StartRoadway = beingTask.StartRoadway, // 璧峰宸烽亾
-                                StartLocate = "", // 璧峰浣嶇疆
+                                StartLocate = beingTask.StartLocat, // 璧峰浣嶇疆
                                 EndLocate = beingTask.EndLocat, // 鐩爣浣嶇疆
                                 EndRoadway = beingTask.EndRoadway,                           //  鐩爣宸烽亾
                                 TaskNo = beingTask.TaskNo, // 浠诲姟鍙�
                                 TaskType = "0",// 浠诲姟绫诲瀷 (鍑哄簱)
                                 OutMode = "",  //鐩爣鍦板潃
-                                Order = 1
+                                Order = 1,
+                                Type = PLCTypeEnum.AGV
                             };
                             if (beingTask.IsSuccess == 0)
                             {
@@ -1663,7 +1677,7 @@
                             SendDate = DateTime.Now,  //鍙戦�佹椂闂�
                             BackDate = DateTime.Now,  //杩斿洖鏃堕棿
                             StartRoadway = "",            // 璧峰宸烽亾
-                            StartLocat = "",//璧峰浣嶇疆
+                            StartLocat = starLocate,//璧峰浣嶇疆
                             EndLocat = locate.LocatNo,//鐩爣浣嶇疆
                             EndRoadway = locate.RoadwayNo,  // 鐩爣宸烽亾
                             PalletNo = palletNo,//鎵樼洏鐮�
@@ -1779,13 +1793,14 @@
                     {
                         PalletNo = palletNo,//鎵樼洏鍙�
                         StartRoadway = "",
-                        StartLocate = "", // 璧峰浣嶇疆
+                        StartLocate = starLocate, // 璧峰浣嶇疆
                         EndLocate = locate.LocatNo, // 鐩爣浣嶇疆 
                         EndRoadway = locate.RoadwayNo,   // 鐩爣宸烽亾
                         TaskNo = oldTaskNo, // 浠诲姟鍙�
                         TaskType = "0",// 浠诲姟绫诲瀷 (鍑哄簱)
                         OutMode = "",  //鐩爣鍦板潃
-                        Order = 1
+                        Order = 1,
+                        Type = PLCTypeEnum.AGV
                     };
 
                 }
@@ -2578,17 +2593,16 @@
                     var time2 = DateTime.Now;//杩斿洖鏃堕棿 .ToString("yyyy-MM-dd HH:mm:ss")
                     var list = new List<string>() { model.TaskNo };
                     //瑙f瀽杩斿洖鏁版嵁 
-                    var wcsModel = JsonConvert.DeserializeObject<WcsModel>(response);
-                    if (wcsModel.StatusCode == 0)
+                    var wcsModel = JsonConvert.DeserializeObject<WcsModel2>(response);
+                    if (wcsModel.code == 200)
                     {
                         //鏇存敼浠诲姟鐨勫彂閫佽繑鍥炴椂闂�//
                         new TaskServer().EditTaskIssueOk(list, time1, time2);
 
-                    }
-                    if (wcsModel.StatusCode == -1)
+                    }else
                     {
-                        new TaskServer().EditTaskIssueNo(list, time1, time2, wcsModel.Msg);
-                        throw new Exception(wcsModel.Msg);
+                        new TaskServer().EditTaskIssueNo(list, time1, time2, wcsModel.message);
+                        throw new Exception("WCS鍙嶉锛�"+wcsModel.message);
                     }
                 }
                 catch (Exception ex)
@@ -2602,6 +2616,86 @@
             }
         }
 
+        /// <summary>
+        /// 鍏ュ簱浠诲姟瀹屾垚JC34
+        /// </summary>
+        /// <param name="taskNo"></param>
+        /// <param name="userId"></param>
+        /// <exception cref="Exception"></exception>
+        public void ArrivalSuccess2(string taskNo, int userId)
+        {
+            try
+            {
+                //姝e父鍏ュ簱 
+                var task = Db.Queryable<LogTask>().First(m => m.IsDel == "0" && m.TaskNo == taskNo);
+                if (task == null)
+                {
+                    throw new Exception("鏈煡璇㈠埌浠诲姟淇℃伅");
+                }
+                if (task.Status == "2")
+                {
+                    throw new Exception("褰撳墠浠诲姟宸插畬鎴�");
+                }
+
+                var stockDetail = Db.Queryable<DataStockDetail>().Where(m => m.PalletNo == task.PalletNo).ToList();
+                var upShelf = Db.Queryable<BllPalletUpShelf>().First(m => m.TaskNo == taskNo);
+                if (upShelf == null)
+                {
+                    throw new Exception("娌℃湁鎵惧埌鎵樼洏涓婃灦淇℃伅");
+                }
+                //褰撳墠浠诲姟涓殑鍌ㄤ綅淇℃伅
+                var locate = Db.Queryable<SysStorageLocat>().First(m => m.LocatNo == task.EndLocat);
+                if (locate == null)
+                {
+                    throw new Exception($"鏈煡璇㈠埌浠诲姟涓殑鍌ㄤ綅淇℃伅");
+                }
+                Db.BeginTran();
+
+                task.Status = "2";//浠诲姟鐘舵��
+                task.IsSend = 0;
+                task.IsCancel = 0;
+                task.IsFinish = 0;
+                task.FinishDate = DateTime.Now;//瀹屾垚鏃堕棿
+                Db.Updateable(task).ExecuteCommand();
+                if (userId != 0)
+                {
+                    //娣诲姞鎿嶄綔鏃ュ織璁板綍
+                    var k = new OperationASNServer().AddLogOperationAsn("鍏ュ簱浣滀笟", "鍏ュ簱鏃ュ織", taskNo, "瀹屾垚", $"鐐瑰嚮瀹屾垚鎸夐挳銆佸畬鎴愪换鍔″彿涓猴細{taskNo}鐨勪换鍔�", userId);
+                }
+
+                //鍒ゆ柇鏄惁鏄洖娴佸叆搴撳畬鎴�
+                if (stockDetail.Any())
+                {
+                    throw new Exception("娌℃湁鏌ヨ鍒板簱瀛樹俊鎭�");
+                }
+
+                foreach (var item in stockDetail)
+                {
+                    item.WareHouseNo = locate.WareHouseNo;
+                    item.RoadwayNo = locate.RoadwayNo;
+                    item.AreaNo = locate.AreaNo;
+                    item.LocatNo = locate.LocatNo;
+                    item.UpdateTime = DateTime.Now;
+                    if (userId != 0)
+                    {
+                        item.UpdateUser = userId;
+                    }
+                }
+                upShelf.Status = "2";
+                Db.Updateable(upShelf).ExecuteCommand();
+
+                locate.Status = "1";
+                Db.Updateable(locate).ExecuteCommand();
+                Db.Updateable(stockDetail).ExecuteCommand();
+                Db.CommitTran();
+
+            }
+            catch (Exception e)
+            {
+                throw new Exception(e.Message);
+            }
+        }
+
         #endregion
 
         #region 鎸囧畾鍌ㄤ綅
diff --git a/Wms/WMS.BLL/BllCheckServer/StockCheckServer.cs b/Wms/WMS.BLL/BllCheckServer/StockCheckServer.cs
index eb93eca..029afae 100644
--- a/Wms/WMS.BLL/BllCheckServer/StockCheckServer.cs
+++ b/Wms/WMS.BLL/BllCheckServer/StockCheckServer.cs
@@ -1852,17 +1852,17 @@
                     var time2 = DateTime.Now;//杩斿洖鏃堕棿 .ToString("yyyy-MM-dd HH:mm:ss")
 
                     ////瑙f瀽杩斿洖鏁版嵁 
-                    var wcsModel = JsonConvert.DeserializeObject<WcsModel>(response);
-                    if (wcsModel.StatusCode == 0)
+                    var wcsModel = JsonConvert.DeserializeObject<WcsModel2>(response);
+                    if (wcsModel.code == 200)
                     {
                         //鏇存敼浠诲姟鐨勫彂閫佽繑鍥炴椂闂�//
                         new TaskServer().EditTaskIssueOk(list, time1, time2);
 
                     }
-                    if (wcsModel.StatusCode == -1)
+                    else
                     {
-                        new TaskServer().EditTaskIssueNo(list, time1, time2, wcsModel.Msg);
-                        throw new Exception($"wcs杩斿洖鐘舵�佸紓甯革細{wcsModel.Msg}");
+                        new TaskServer().EditTaskIssueNo(list, time1, time2, wcsModel.message);
+                        throw new Exception($"wcs杩斿洖鐘舵�佸紓甯革細{wcsModel.message}");
                     }
                 }
                 catch (Exception ex)
diff --git a/Wms/WMS.BLL/BllPdaServer/PdaAsnServer.cs b/Wms/WMS.BLL/BllPdaServer/PdaAsnServer.cs
index 6b68462..57367dd 100644
--- a/Wms/WMS.BLL/BllPdaServer/PdaAsnServer.cs
+++ b/Wms/WMS.BLL/BllPdaServer/PdaAsnServer.cs
@@ -1826,11 +1826,16 @@
                 {
                     if (models[0].Status == "1")
                     {
-                        sqlString = $"select count(id) from DataStockDetail where PalletNo = '{palletNo}' and isnull(LocatNo,'') != '' and isdel = '0';";
-                        int rowNum = Db.Ado.GetInt(sqlString);
-                        if (rowNum > 0)
+                        var detail = Db.Queryable<DataStockDetail>().First(m=>m.PalletNo == palletNo );
+                        
+                        if (detail!= null && !string.IsNullOrWhiteSpace(detail.LocatNo))
                         {
-                            sqlMsg = "-1:鎵樼洏浣跨敤涓紝姝ゆ墭鐩樺簲鍦ㄥ簱鍐呰鏍稿疄!";
+                            var pingAreaStr = Db.Queryable<SysStorageArea>().Where(m => m.IsDel == "0" && m.WareHouseNo == "W04" && m.AreaNo != "B06" && m.AreaNo != "B07").Select(m => m.AreaNo).ToList();
+                            var pingLocateInfo = Db.Queryable<SysStorageLocat>().First(m => m.LocatNo == detail.LocatNo && pingAreaStr.Contains(m.AreaNo) && m.IsDel == "0");
+                            if (pingLocateInfo == null)
+                            {
+                                sqlMsg = "-1:鎵樼洏浣跨敤涓紝姝ゆ墭鐩樺簲鍦ㄥ簱鍐呰鏍稿疄!";
+                            }
                         }
                     }
                 }
@@ -3287,7 +3292,7 @@
             try
             {
                 string strMsg = "";
-                var storageLocat = Db.Queryable<SysStorageLocat>().First(w => w.IsDel == "0" && w.LocatNo == locatNo && w.Status == "0" && w.WareHouseNo == "W02");
+                var storageLocat = Db.Queryable<SysStorageLocat>().First(w => w.IsDel == "0" && w.LocatNo == locatNo && w.Status == "0" && w.WareHouseNo == "W04");
                 if (storageLocat == null)
                 {
                     throw new Exception("-1:鍦扮爜(鍌ㄤ綅淇℃伅)涓嶅瓨鍦ㄦ垨闈炵┖闂茬姸鎬侊紝璇锋牳鏌�!");
@@ -5424,7 +5429,7 @@
                     //淇敼搴撳瓨鏄庣粏淇℃伅
                     foreach (var item in stockDetail)
                     {
-                        item.Status = "0";                                  // 鐘舵�佹洿鏀逛负寰呭垎閰�
+                        //item.Status = "0";                                  // 鐘舵�佹洿鏀逛负寰呭垎閰�
                         item.WareHouseNo = storageLocat.WareHouseNo;        // 鎵�灞炰粨搴�
                         item.RoadwayNo = storageLocat.RoadwayNo;            // 鎵�灞炲贩閬�
                         item.AreaNo = storageLocat.AreaNo;                  // 鎵�灞炲尯鍩�
@@ -5456,14 +5461,14 @@
                         SendDate = DateTime.Now,  //鍙戦�佹椂闂�
                         BackDate = DateTime.Now,  //杩斿洖鏃堕棿
                         StartLocat = "",//璧峰浣嶇疆
-                        EndLocat = "骞冲簱",//鐩爣浣嶇疆
+                        EndLocat = model.LocatNo,//鐩爣浣嶇疆
                         PalletNo = model.PalletNo,//鎵樼洏鐮�
                         IsSend = 0,//鏄惁鍙啀娆′笅鍙�
                         IsCancel = 0,//鏄惁鍙彇娑�
                         IsFinish = 0,//鏄惁鍙畬鎴�
                         Type = "0",//浠诲姟绫诲瀷 0 鍏ュ簱浠诲姟 1 鍑哄簱浠诲姟  2 绉诲簱浠诲姟
                         Status = "2",//浠诲姟鐘舵��0锛氱瓑寰呮墽琛�1姝e湪鎵ц2鎵ц瀹屾垚
-                        OrderType = "3",//0 鍏ュ簱鍗� 1 鍑哄簱鍗�  2 鐩樼偣鍗�  3 绉诲簱鍗�
+                        OrderType = "0",//0 鍏ュ簱鍗� 1 鍑哄簱鍗�  2 鐩樼偣鍗�  3 绉诲簱鍗�
                         Msg = "骞冲簱鐨勫叆搴撲换鍔�",
                     };
                     Db.Insertable(exTask).ExecuteCommand();
diff --git a/Wms/WMS.BLL/BllSoServer/ExportNoticeServer.cs b/Wms/WMS.BLL/BllSoServer/ExportNoticeServer.cs
index 88bb8bb..c42c3f5 100644
--- a/Wms/WMS.BLL/BllSoServer/ExportNoticeServer.cs
+++ b/Wms/WMS.BLL/BllSoServer/ExportNoticeServer.cs
@@ -2200,17 +2200,17 @@
                             var time2 = DateTime.Now;//杩斿洖鏃堕棿 .ToString("yyyy-MM-dd HH:mm:ss")
 
                             ////瑙f瀽杩斿洖鏁版嵁 
-                            var wcsModel = JsonConvert.DeserializeObject<WcsModel>(response);
-                            if (wcsModel.StatusCode == 0)
+                            var wcsModel = JsonConvert.DeserializeObject<WcsModel2>(response);
+                            if (wcsModel.code == 200)
                             {
                                 //鏇存敼浠诲姟鐨勫彂閫佽繑鍥炴椂闂�//
                                 new TaskServer().EditTaskIssueOk(list2, time1, time2);
                                 str += "涓嬪彂鎴愬姛";
                             }
-                            if (wcsModel.StatusCode == -1)
+                            else
                             {
-                                new TaskServer().EditTaskIssueNo(list2, time1, time2, wcsModel.Msg);
-                                throw new Exception(wcsModel.Msg);
+                                new TaskServer().EditTaskIssueNo(list2, time1, time2, wcsModel.message);
+                                throw new Exception(wcsModel.message);
                             }
                         }
                         catch (Exception ex)
@@ -5978,17 +5978,17 @@
                     var time2 = DateTime.Now;//杩斿洖鏃堕棿 .ToString("yyyy-MM-dd HH:mm:ss")
 
                     ////瑙f瀽杩斿洖鏁版嵁 
-                    var wcsModel = JsonConvert.DeserializeObject<WcsModel>(response);
-                    if (wcsModel.StatusCode == 0)
+                    var wcsModel = JsonConvert.DeserializeObject<WcsModel2>(response);
+                    if (wcsModel.code == 200)
                     {
                         //鏇存敼浠诲姟鐨勫彂閫佽繑鍥炴椂闂�//
                         new TaskServer().EditTaskIssueOk(list, time1, time2);
 
                     }
-                    if (wcsModel.StatusCode == -1)
+                    else
                     {
-                        new TaskServer().EditTaskIssueNo(list, time1, time2, wcsModel.Msg);
-                        throw new Exception($"wcs杩斿洖鐘舵�佸紓甯革細{wcsModel.Msg}");
+                        new TaskServer().EditTaskIssueNo(list, time1, time2, wcsModel.message);
+                        throw new Exception($"wcs杩斿洖鐘舵�佸紓甯革細{wcsModel.message}");
                     }
                 }
                 catch (Exception ex)
diff --git a/Wms/WMS.BLL/HttpServer.cs b/Wms/WMS.BLL/HttpServer.cs
new file mode 100644
index 0000000..210df4f
--- /dev/null
+++ b/Wms/WMS.BLL/HttpServer.cs
@@ -0,0 +1,59 @@
+锘縰sing SqlSugar;
+using System;
+using System.Collections.Generic;
+using System.Text;
+using WMS.BLL.LogServer;
+using WMS.Entity.Context;
+using WMS.Entity.DataEntity;
+using WMS.Entity.LogEntity;
+using WMS.Entity.SysEntity;
+using WMS.IBLL;
+
+namespace WMS.BLL
+{
+    public class HttpServer:IHttpServer
+    {
+        private static readonly SqlSugarScope Db = DataContext.Db;
+        public HttpServer() { }
+
+        public void UpLocateByAgvOut(string taskNo, int userId)
+        {
+            try
+            {
+
+                var task = Db.Queryable<LogTask>().First(m => m.IsDel == "0" && m.TaskNo == taskNo);
+                if (task == null)
+                {
+                    throw new Exception("鏈煡璇㈠埌浠诲姟淇℃伅");
+                }
+                if (task.Status != "1")
+                {
+                    throw new Exception("褰撳墠浠诲姟宸插畬鎴�");
+                }
+                if (userId != 0)
+                {
+                    //娣诲姞鎿嶄綔鏃ュ織璁板綍
+                    var k = new OperationASNServer().AddLogOperationAsn("鍏ュ簱浣滀笟", "鍏ュ簱鏃ュ織", taskNo, "瀹屾垚", $"鐐瑰嚮瀹屾垚鎸夐挳銆佸畬鎴愪换鍔″彿涓猴細{taskNo}鐨勪换鍔�", userId);
+                }
+                
+                var locate = Db.Queryable<SysStorageLocat>().First(m => m.LocatNo == task.StartLocat);
+                if (locate == null)
+                {
+                    throw new Exception($"鏈煡璇㈠埌浠诲姟涓殑鍌ㄤ綅淇℃伅");
+                }
+                var pingAreaStr = Db.Queryable<SysStorageArea>().Where(m => m.IsDel == "0" && m.WareHouseNo == "W04" && m.AreaNo != "B06" && m.AreaNo != "B07").Select(m => m.AreaNo).ToList();
+                var pingLocateInfo = Db.Queryable<SysStorageLocat>().First(m => m.LocatNo == locate.LocatNo && pingAreaStr.Contains(m.AreaNo) && m.IsDel == "0");
+                if (pingLocateInfo == null)
+                {
+                    throw new Exception("褰撳墠浠诲姟璧峰鍌ㄤ綅涓嶅湪骞冲簱鍌ㄤ綅");
+                }
+                locate.Status = "0";
+                Db.Updateable(locate).ExecuteCommand();
+            }
+            catch (Exception e)
+            {
+                throw new Exception(e.Message);
+            }
+        }
+    }
+}
diff --git a/Wms/WMS.IBLL/IBllAsnServer/IPalletBindServer.cs b/Wms/WMS.IBLL/IBllAsnServer/IPalletBindServer.cs
index d69ac6d..f5ebebe 100644
--- a/Wms/WMS.IBLL/IBllAsnServer/IPalletBindServer.cs
+++ b/Wms/WMS.IBLL/IBllAsnServer/IPalletBindServer.cs
@@ -88,7 +88,7 @@
         /// <returns></returns>
         OutCommandDto RequestLocation(string palletNo, string houseNo);
         /// <summary>
-        /// 涓嬪彂鍏ュ簱鐢宠鍌ㄤ綅浠诲姟锛堜笅鍙�==銆婣GV灏忚溅锛�
+        /// 涓嬪彂鍏ュ簱鐢宠鍌ㄤ綅浠诲姟锛堜笅鍙�==銆媁CS锛�
         /// </summary>
         /// <param name="model"></param>
         /// <param name="url"></param>
@@ -110,6 +110,13 @@
         /// <returns></returns>
         OutCommandDto RequestMiJiLocation(string palletNo, string houseNo, string roadwayNo);
 
+
+        /// <summary>
+        /// 鍏ュ簱瀹屾垚JC34
+        /// </summary>
+        /// <param name="taskNo">浠诲姟鍙�</param>
+        /// <param name="userId">鎿嶄綔浜�(涓嬫父绯荤粺鏃朵负绌�)</param> 
+        void ArrivalSuccess2(string taskNo, int userId);
         /// <summary>
         /// 鍏ュ簱瀹屾垚
         /// </summary>
diff --git a/Wms/WMS.IBLL/IHttpServer.cs b/Wms/WMS.IBLL/IHttpServer.cs
new file mode 100644
index 0000000..75e2da5
--- /dev/null
+++ b/Wms/WMS.IBLL/IHttpServer.cs
@@ -0,0 +1,16 @@
+锘縰sing System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace WMS.IBLL
+{
+    public interface IHttpServer
+    {
+        /// <summary>
+        /// agv璧板嚭鍌ㄤ綅淇敼鍌ㄤ綅淇℃伅锛屼粎闄愬钩搴撳偍浣�
+        /// </summary>
+        /// <param name="taskNo"></param>
+        /// <param name="userId"></param>
+        void UpLocateByAgvOut(string taskNo,int userId);
+    }
+}
diff --git a/Wms/Wms/Controllers/DownApiController.cs b/Wms/Wms/Controllers/DownApiController.cs
index 1064126..7e9adf6 100644
--- a/Wms/Wms/Controllers/DownApiController.cs
+++ b/Wms/Wms/Controllers/DownApiController.cs
@@ -21,6 +21,7 @@
 using Model.ModelVm.BllCheckVm;
 using System.Collections.Generic;
 using System.Security.Policy;
+using WMS.IBLL;
 
 namespace Wms.Controllers
 {
@@ -38,7 +39,8 @@
         private readonly ITaskServer _taskSvc;//浠诲姟Svc
         private readonly IBllTaskSyncServer _taskSyncSvc;//浠诲姟鍚屾Svc
         private readonly IWaveMageServer _waveSvc;//浠诲姟鍚屾Svc
-        public DownApiController(IOptions<ApiUrlConfig> setting, IExportNoticeServer exNoticeSvc, IPalletBindServer asnPalletBindSvc, IStockCheckServer crCheckSvc, ITaskServer taskSvc, IBllTaskSyncServer taskSyncSvc, IWaveMageServer waveSvc)
+        private readonly IHttpServer _http;//浠诲姟鍚屾Svc
+        public DownApiController(IOptions<ApiUrlConfig> setting, IExportNoticeServer exNoticeSvc, IPalletBindServer asnPalletBindSvc, IStockCheckServer crCheckSvc, ITaskServer taskSvc, IBllTaskSyncServer taskSyncSvc, IWaveMageServer waveSvc,IHttpServer http)
         {
             _config = setting.Value;
             _exNoticeSvc = exNoticeSvc;
@@ -47,6 +49,7 @@
             _taskSvc = taskSvc;
             _taskSyncSvc = taskSyncSvc;
             _waveSvc = waveSvc;
+            _http = http;
         }
 
         #region WMS鎺ュ彛 璋冪敤涓嬫父绯荤粺鎺ュ彛 
@@ -273,38 +276,6 @@
         #region WMS鎺ュ彛 琚笅娓哥郴缁熸帴鍙h皟鐢�
 
         /// <summary>
-        /// 缁戝畾淇℃伅杩斿洖宸烽亾鍙�
-        /// </summary>
-        /// <param name="model">鍏ュ簱鍗曚俊鎭�</param>
-        /// <returns></returns>
-        //[AllowAnonymous]
-        //[HttpPost]
-        //public IActionResult BindRequestRoadWay(BoxPalletBindVm model)
-        //{
-        //    var logStr = $@".\log\WCS\WCS鎵樼洏缁戝畾-鐢宠宸烽亾" + DateTime.Now.ToString("yyyyMMdd") + ".txt";
-
-        //    try
-        //    {
-
-        //        var jsonData = JsonConvert.SerializeObject(model);
-        //        LogFile.SaveLogToFile($"WCS鎵樼洏缁戝畾-鐢宠宸烽亾锛�( {jsonData} ),", logStr);
-
-        //        _asnPalletBindSvc.BindPalletStock(model, 0);
-        //        //鐢宠宸烽亾
-        //        var list = _asnPalletBindSvc.RequestRoadWay(model.PalletNo, "W01");
-        //        LogFile.SaveLogToFile($"WCS鎵樼洏缁戝畾-鐢宠宸烽亾杩斿洖锛�( {JsonConvert.SerializeObject(list)} ),", logStr);
-
-        //        return Ok(new { Success = 0, Message = "鎵樼洏缁戝畾-鐢宠宸烽亾鎴愬姛", TaskList = list });
-        //    }
-        //    catch (Exception e)
-        //    {
-        //        LogFile.SaveLogToFile($"WCS鎵樼洏缁戝畾-鐢宠宸烽亾杩斿洖锛�( {e.Message} ),", logStr);
-
-        //        return Ok(new ErpModel { Success = -1, Message = e.Message });
-        //    }
-        //}
-
-        /// <summary>
         /// PDA 浜哄伐鐢宠鍌ㄤ綅 锛堢珛浣撳簱锛�
         /// </summary>
         /// <param name="model">鍏ュ簱鍗曚俊鎭�</param>
@@ -330,7 +301,7 @@
             try
             {
                 var list = _asnPalletBindSvc.RequestLocation(model.PalletNo, model.HouseNo);
-                _asnPalletBindSvc.IssueAsnTask(list, _config.WcsHost+ _config.IssueComApiUrl);//WCS璺緞
+                _asnPalletBindSvc.IssueAsnTask(list, _config.WcsHost+ _config.IssueComApiUrl2);//WCS璺緞
                 
                 new OperationASNServer().AddLogOperationAsn("PDA妯″潡", "鐢宠鍏ュ簱", model.PalletNo, "娣诲姞", $"鐢宠鍌ㄤ綅鎵樼洏鍙凤細{model.PalletNo}鐨勬垚鍔熶俊鎭�", int.Parse(userId));
 
@@ -458,7 +429,7 @@
                     case "0"://鍏ュ簱瀹屾垚浠诲姟
                         if (model.TaskType == "0")//0锛氬叆搴� 1锛氬嚭搴� 2锛氱Щ搴�
                         {
-                            _asnPalletBindSvc.ArrivalSuccess(model.TaskNo, 0);
+                            _asnPalletBindSvc.ArrivalSuccess2(model.TaskNo, 0);
                             return Ok(new WcsModel { StatusCode = 0, Msg = "鍏ュ簱瀹屾垚" });
                         }
                         break;
@@ -482,7 +453,7 @@
                         }
                         else if (model.TaskType == "0")// 鐩樼偣鍑哄簱鎵樼洏鍥炲簱瀹屾垚
                         {
-                            _asnPalletBindSvc.ArrivalSuccess(model.TaskNo, 0);
+                            _asnPalletBindSvc.ArrivalSuccess2(model.TaskNo, 0);
                             return Ok(new WcsModel { StatusCode = 0, Msg = "鍏ュ簱瀹屾垚" });
                         }
                         break;
@@ -503,6 +474,33 @@
             }
         }
 
+        /// <summary>
+        /// 鎺ュ彈wcs杩斿洖鐨勪俊鍙� 骞冲簱鍙栬揣瀹屾垚浠诲姟鍙嶉
+        /// </summary>
+        /// <returns></returns>
+        [HttpPost]
+        public IActionResult UpLocateByAgvOut(ReceiveWcsSignal model)
+        {
+            try
+            {
+                //璁板綍log
+                var logStr = $@".\log\WCS\鍙栬揣瀹屾垚浠诲姟鍙嶉" + DateTime.Now.ToString("yyyyMMdd") + ".txt";
+                var jsonData = JsonConvert.SerializeObject(model);
+                LogFile.SaveLogToFile($"AGV鍙栬揣瀹屾垚WCS浠诲姟鍙嶉锛�( {jsonData} ),", logStr);
+
+                if (string.IsNullOrEmpty(model.TaskNo))
+                {
+                    return Ok(new WcsModel { StatusCode = -1, Msg = "鎺ュ彛鏁版嵁涓嶆纭紝浠诲姟鍙蜂负绌�" });
+                }
+                _http.UpLocateByAgvOut(model.TaskNo,0); 
+                
+                return Ok(new WcsModel { StatusCode = 0, Msg = "鎺ユ敹鎴愬姛" });
+            }
+            catch (Exception ex)
+            {
+                return Ok(new WcsModel { StatusCode = -1, Msg = ex.Message });
+            }
+        }
 
         /// <summary>
         /// WCS鍙嶉AGV浠诲姟鍙栬揣瀹屾垚
diff --git a/Wms/Wms/appsettings.json b/Wms/Wms/appsettings.json
index 42bd2db..715247a 100644
--- a/Wms/Wms/appsettings.json
+++ b/Wms/Wms/appsettings.json
@@ -27,8 +27,8 @@
     "WcsHost": "http://10.26.254.34:5005", //wcsIPhttp://localhost:57061/
     "BoxHost": "http://10.110.24.30:8081", //boxIP
 
-    "IssueComApiUrl": "/api/WCSApi/AddTasks", //涓嬪彂鍛戒护(鍑哄簱銆佺Щ搴�)
-    "IssueComApiUrl2": "/api/WCSApi/AddTask", //閲嶆柊涓嬪彂鍛戒护(鍑哄簱銆佺Щ搴�)
+    "IssueComApiUrl": "/api/openApi/wcsTasks", //涓嬪彂鍛戒护(鍑哄簱銆佺Щ搴�)
+    "IssueComApiUrl2": "/api/openApi/wcsTask", //閲嶆柊涓嬪彂鍛戒护(鍑哄簱銆佺Щ搴�)
 
     "AsnFinishUrl": "/api/wmsInterface/OutStockTask", //鍏ュ簱璁㈠崟鍏抽棴
     "SoFinishUrl": "/api/wmsInterface/OutStockTask", //鍑哄簱璁㈠崟鍏抽棴

--
Gitblit v1.8.0