From 1c2541b283ce6ba855e67c476412dffe2c693480 Mon Sep 17 00:00:00 2001
From: chengsc <11752@DESKTOP-DS49RCP>
Date: 星期三, 11 六月 2025 13:56:23 +0800
Subject: [PATCH] Merge branch 'csc'

---
 Wms/Wms/Controllers/DownApiController.cs |  189 ++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 185 insertions(+), 4 deletions(-)

diff --git a/Wms/Wms/Controllers/DownApiController.cs b/Wms/Wms/Controllers/DownApiController.cs
index 0bdcc9b..1a8c847 100644
--- a/Wms/Wms/Controllers/DownApiController.cs
+++ b/Wms/Wms/Controllers/DownApiController.cs
@@ -131,7 +131,7 @@
                 {
                     var list = _exNoticeSvc.IssueOutHouseMk(soNo, outMode, int.Parse(userId), _config.WcsHost + _config.IssueComApiUrl, out string str);
 
-                    return Ok(new { code = 0, msg = "str" });
+                    return Ok(new { code = 0, msg = str });
                 }
                 else if (house == "W02")
                 {
@@ -151,6 +151,58 @@
             }
         }
 
+        /// <summary>
+        /// PDA涓嬪彂鍑哄簱
+        /// </summary>
+        /// <param name="soNo"></param>
+        /// <param name="soDetailId">鍑哄簱鍗曟槑缁咺D</param>
+        /// <param name="outMode">鍑哄簱鍦板潃锛堝钩搴撴嫞璐т綅锛�</param>
+        /// <returns></returns>
+        [HttpGet]
+        public IActionResult PDAIssueOut(string soNo, string soDetailId,string palletNo,string outMode)
+        {
+            try
+            {
+                //鑾峰彇褰撳墠鐧诲綍鐨勭敤鎴稩D
+                var claimsIdentity = this.User.Identity as ClaimsIdentity;
+                if (claimsIdentity == null)
+                {
+                    return Ok(new HttpReturnModel { Success = "-1", Message = "鏈幏鍙栧埌褰撳墠鎿嶄綔浜轰俊鎭�"});
+                }
+                var userId = claimsIdentity.FindFirst(ClaimTypes.Name)?.Value;
+                if (string.IsNullOrWhiteSpace(userId))
+                {
+                    return Ok(new HttpReturnModel { Success = "-1", Message = "鏈幏鍙栧埌褰撳墠鎿嶄綔浜轰俊鎭�"});
+                }
+                //楠岃瘉鍑哄簱鍙�
+                if (string.IsNullOrWhiteSpace(outMode))
+                {
+                    return Ok(new HttpReturnModel { Success = "-1", Message = "璇烽�夋嫨鍑哄簱鍦板潃" });
+                }
+                var house = _exNoticeSvc.GetHouseBySo(soNo);
+                if (house == "W01")
+                {
+                    //var list = _exNoticeSvc.IssueOutHouseMk(soNo, outMode, int.Parse(userId), _config.WcsHost + _config.IssueComApiUrl, out string str);
+
+                    return Ok(new HttpReturnModel { Success = "0", Message = "str", Data = "list" });
+                }
+                else if (house == "W02")
+                {
+                    var list = _http.IssueOutHouseLk(soNo,soDetailId, outMode,palletNo, int.Parse(userId), _config.WcsHost + _config.IssueComApiUrl, out string str);
+
+                    return Ok(new HttpReturnModel { Success = "0", Message = str, Data = list});
+                }
+                else
+                {
+                    return Ok(new HttpReturnModel { Success = "-1", Message = "浠撳簱淇℃伅閿欒锛岃鏍稿疄鍗曟嵁淇℃伅" });
+                }
+
+            }
+            catch (Exception e)
+            {
+                return Ok(new HttpReturnModel { Success = "-1", Message = e.Message });
+            }
+        }
 
         /// <summary>
         /// 閲嶆柊涓嬪彂鍑哄簱浠诲姟
@@ -277,6 +329,40 @@
         #region WMS鎺ュ彛 琚笅娓哥郴缁熸帴鍙h皟鐢�
 
         /// <summary>
+        /// WCS鐢宠绌烘墭璺虹粍鎵樺叆搴� 锛堝彔鎵樼洏鏈猴級
+        /// </summary>
+        /// <param name="model">鍏ュ簱鍗曚俊鎭�</param>
+        /// <returns></returns>
+        [AllowAnonymous]
+        [HttpPost]
+        public IActionResult RequestPalletIn(RequestLocate model)
+        {
+            var logStr = "";
+
+            logStr = $@".\log\WCS\WCS鐢宠绌烘墭璺虹粍鎵樺叆搴�" + DateTime.Now.ToString("yyyyMMdd") + ".txt";
+
+            try
+            {
+
+                var jsonData = JsonConvert.SerializeObject(model);
+                LogFile.SaveLogToFile($"WCS鐢宠绌烘墭璺虹粍鎵樺叆搴擄細( {jsonData} ),", logStr);
+
+                var list = _http.RequestPalletIn(model.PalletNo, model.HouseNo, model.palletNum,model.locate);
+
+                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>
@@ -301,7 +387,7 @@
 
             try
             {
-                var list = _http.RequestLocation(model.PalletNo, model.HouseNo);
+                var list = _http.RequestLocation(model.PalletNo, model.HouseNo,model.Ceng);
                 _asnPalletBindSvc.IssueAsnTask(list, _config.WcsHost+ _config.IssueComApiUrl2);//WCS璺緞
                 
                 new OperationASNServer().AddLogOperationAsn("PDA妯″潡", "鐢宠鍏ュ簱", model.PalletNo, "娣诲姞", $"鐢宠鍌ㄤ綅鎵樼洏鍙凤細{model.PalletNo}鐨勬垚鍔熶俊鎭�", int.Parse(userId));
@@ -420,7 +506,7 @@
                         }
                         else if (model.TaskType == "2")
                         {
-                            _exNoticeSvc.RelocationSuccess(model.TaskNo, 0);
+                            _http.ExMoveSuccess(model.TaskNo, 0);
                             return Ok(new WcsModel { StatusCode = 0, Msg = "绉诲簱瀹屾垚" });
                         }
                         break;
@@ -436,11 +522,19 @@
                             return Ok(new WcsModel { StatusCode = 0, Msg = "鍏ュ簱瀹屾垚" });
                         }
                         break;
-                    case "3"://绉诲簱瀹屾垚浠诲姟銆佷紭鍖栧偍浣�
+                    case "3"://绉诲簱鍗�  AGV璧拌繖
                         if (model.TaskType == "2") //0锛氬叆搴� 1锛氬嚭搴� 2锛氱Щ搴�
                         {
                             //濉啓绉诲簱瀹屾垚浠g爜
                             _http.MoveSuccess(model.TaskNo, 0);
+                            return Ok(new WcsModel { StatusCode = 0, Msg = "绉诲簱瀹屾垚" });
+                        }
+                        break;
+                    case "4"://璐ㄦ鍑哄簱
+                        if (model.TaskType == "2") //0锛氬叆搴� 1锛氬嚭搴� 2锛氱Щ搴�
+                        {
+                            //濉啓绉诲簱瀹屾垚浠g爜
+                            _http.ExMoveSuccess(model.TaskNo, 0);
                             return Ok(new WcsModel { StatusCode = 0, Msg = "绉诲簱瀹屾垚" });
                         }
                         break;
@@ -483,6 +577,93 @@
             }
         }
 
+
+        /// <summary>
+        /// 鎵嬪姩瀹屾垚鐨勪俊鍙� //鎸囦护鍙嶉锛堟槸鍚﹀畬鎴愶級
+        /// </summary>
+        /// <returns></returns>
+        [HttpPost]
+        public IActionResult ReceiveRenGongSignal(ReceiveWcsSignal model)
+        {
+            //鑾峰彇褰撳墠鐧诲綍鐨勭敤鎴稩D
+            var claimsIdentity = this.User.Identity as ClaimsIdentity;
+            if (claimsIdentity == null)
+            {
+                return Ok(new HttpReturnModel { Success = "1", Message = "鏈幏鍙栧埌褰撳墠鎿嶄綔浜轰俊鎭�" });
+            }
+            var userId = claimsIdentity.FindFirst(ClaimTypes.Name)?.Value;
+            if (string.IsNullOrWhiteSpace(userId))
+            {
+                return Ok(new HttpReturnModel { Success = "1", Message = "鏈幏鍙栧埌褰撳墠鎿嶄綔浜轰俊鎭�" });
+            }
+            try
+            {
+                if (string.IsNullOrEmpty(model.TaskNo) || string.IsNullOrEmpty(model.TaskStatus) || string.IsNullOrEmpty(model.TaskType))
+                {
+                    return Ok(new HttpReturnModel { Success = "-1", Message = "鍙傛暟閿欒" });
+                }
+                //鎺ユ敹鏃堕棿
+                 
+                var orderType = _taskSvc.GetTaskOrderType(model.TaskNo);// 鍒ゆ柇鍗曟嵁绫诲瀷鍏ュ嚭绉�
+                switch (orderType)
+                {
+                    case "0"://鍏ュ簱瀹屾垚浠诲姟
+                        if (model.TaskType == "0")//0锛氬叆搴� 1锛氬嚭搴� 2锛氱Щ搴�
+                        {
+                            _http.ArrivalSuccess2(model.TaskNo, 0);
+                            return Ok(new HttpReturnModel { Success = "0", Message = "鍏ュ簱瀹屾垚" });
+                        }
+                        break;
+                    case "1"://鍑哄簱瀹屾垚浠诲姟
+                        if (model.TaskType == "1")//0锛氬叆搴� 1锛氬嚭搴� 2锛氱Щ搴�
+                        {
+                            _exNoticeSvc.ExportSuccess(model.TaskNo, 0);
+                            return Ok(new HttpReturnModel { Success = "0", Message = "鍑哄簱瀹屾垚" });
+                        }
+                        else if (model.TaskType == "2")
+                        {
+                            _http.ExMoveSuccess(model.TaskNo, 0);
+                            return Ok(new HttpReturnModel { Success = "0", Message = "绉诲簱瀹屾垚" });
+                        }
+                        break;
+                    case "2"://鐩樺簱瀹屾垚浠诲姟
+                        if (model.TaskType == "1")//0锛氬叆搴� 1锛氬嚭搴� 2锛氱Щ搴�
+                        {
+                            _crCheckSvc.CheckSuccess(model.TaskNo, 0);
+                            return Ok(new HttpReturnModel { Success = "0", Message = "鐩樼偣鍑哄簱瀹屾垚" });
+                        }
+                        else if (model.TaskType == "0")// 鐩樼偣鍑哄簱鎵樼洏鍥炲簱瀹屾垚
+                        {
+                            _http.ArrivalSuccess2(model.TaskNo, 0);
+                            return Ok(new HttpReturnModel { Success = "0", Message = "鍏ュ簱瀹屾垚" });
+                        }
+                        break;
+                    case "3"://绉诲簱鍗�
+                        if (model.TaskType == "2") //0锛氬叆搴� 1锛氬嚭搴� 2锛氱Щ搴�
+                        {
+                            //濉啓绉诲簱瀹屾垚浠g爜
+                            _http.MoveSuccess(model.TaskNo, 0);
+                            return Ok(new HttpReturnModel { Success = "0", Message = "绉诲簱瀹屾垚" });
+                        }
+                        break;
+                    case "4"://璐ㄦ鍑哄簱
+                        if (model.TaskType == "2") //0锛氬叆搴� 1锛氬嚭搴� 2锛氱Щ搴�
+                        {
+                            _http.ExMoveSuccess(model.TaskNo, 0);
+                            return Ok(new HttpReturnModel { Success = "0", Message = "绉诲簱瀹屾垚" });
+                        }
+                        break;
+                    default:
+                        return Ok(new HttpReturnModel { Success = "-1", Message = "浼犻�掔殑浠诲姟鐘舵�佷负澶辫触鐘舵��" });
+                }
+                return Ok(new HttpReturnModel { Success = "-1", Message = "浼犻�掔殑浠诲姟鐘舵�佷负澶辫触鐘舵��" });
+            }
+            catch (Exception ex)
+            {
+                return Ok(new HttpReturnModel { Success = "-1", Message = ex.Message });
+            }
+        }
+
         /// <summary>
         /// WCS鍙嶉AGV浠诲姟鍙栬揣瀹屾垚
         /// </summary>

--
Gitblit v1.8.0