From 7ca9651f81d7b84f054194d3d46fdbd1d9c8b922 Mon Sep 17 00:00:00 2001
From: dengjunjie <dengjunjie@hnkhzn.com>
Date: 星期三, 09 七月 2025 22:55:27 +0800
Subject: [PATCH] 增加质检出入库逻辑

---
 项目代码/WMS/WIDESEA_WMSServer/WIDESEA_InboundService/Service/InboundOrderService.cs |   46 +++++++++++++++++++++++++++++-----------------
 1 files changed, 29 insertions(+), 17 deletions(-)

diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_InboundService/Service/InboundOrderService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_InboundService/Service/InboundOrderService.cs"
index 4e165fe..a65a4a5 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_InboundService/Service/InboundOrderService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_InboundService/Service/InboundOrderService.cs"
@@ -47,24 +47,24 @@
         /// </summary>
         /// <param name="materielGroupDTO"></param>
         /// <returns></returns>
-        public WebResponseContent PdaAddEmptyStockInfo(PdaMaterielGroupDTO materielGroupDTO)
+        public WebResponseContent PdaAddEmptyStockInfo(string barcode, string station)
         {
             try
             {
                 #region 娣诲姞涓�涓┖鎵樼粍鐩樹俊鎭強绌烘墭浠诲姟骞朵笅鍙戠粰WCS
-                Dt_StockInfo stockInfo = _stockService.StockInfoService.Repository.GetStockInfo(materielGroupDTO.PalletCode);
+                Dt_StockInfo stockInfo = _stockService.StockInfoService.Repository.GetStockInfo(barcode);
                 if (stockInfo != null) throw new Exception($"鎵樼洏鍙枫�恵stockInfo.PalletCode}銆戝凡瀛樺湪缁勭洏淇℃伅");
-                Dt_Task task = _taskRepository.QueryFirst(x => x.PalletCode == materielGroupDTO.PalletCode && x.TaskType == TaskTypeEnum.PalletInbound.ObjToInt());
+                Dt_Task task = _taskRepository.QueryFirst(x => x.PalletCode == barcode && x.TaskType == TaskTypeEnum.PalletInbound.ObjToInt());
                 if (task == null)
                 {
                     task = new Dt_Task()
                     {
-                        CurrentAddress = "",
-                        NextAddress = "SC01",
-                        SourceAddress = "",
+                        CurrentAddress = station,
+                        NextAddress = "1001",
+                        SourceAddress = station,
                         TargetAddress = "SC01",
                         Creater = "System",
-                        PalletCode = materielGroupDTO.PalletCode,
+                        PalletCode = barcode,
                         Roadway = "SC01",
                         OrderNo = DateTime.Now.ToString("yyMMdd"),
                         TaskNum = _taskRepository.GetTaskNum(nameof(SequenceEnum.SeqTaskNum)),
@@ -74,16 +74,19 @@
                         Dispatchertime = DateTime.Now,
                     };
                     Db.Ado.BeginTran();
-                    _stockService.StockInfoService.AddStockEmpty(materielGroupDTO.PalletCode);
+                    WebResponseContent content = _stockService.StockInfoService.AddStockEmpty(barcode);
+                    if (!content.Status) throw new Exception(content.Message);
                     _taskRepository.AddData(task);
+                    List<WMSTaskDTO> wMSTaskDTOs = _mapper.Map<List<WMSTaskDTO>>(new List<Dt_Task> { task });
+                    var ResultData = HttpHelper.PostAsync(WCSInterfaceAddress.ReceiveTask, wMSTaskDTOs.ToJson(), headers: new Dictionary<string, string>());
+                    if (ResultData.Result == null) throw new Exception($"鍚慦CS涓嬪彂绌烘墭鍏ュ簱浠诲姟瓒呮椂");
+                    content = JsonConvert.DeserializeObject<WebResponseContent>(ResultData.Result);
+                    if (content == null) throw new Exception($"涓嬪彂绌烘墭鍏ュ簱浠诲姟WCS鏃犲搷搴�");
+                    if (!content.Status) throw new Exception(content.Message);
                     Db.Ado.CommitTran();
                 }
-                List<WMSTaskDTO> wMSTaskDTOs = _mapper.Map<List<WMSTaskDTO>>(task);
-                var ResultData = HttpHelper.PostAsync(WCSInterfaceAddress.ReceiveTask, wMSTaskDTOs.ToJson(), headers: new Dictionary<string, string>());
-                if (ResultData.Result == null) throw new Exception($"鍚慦CS涓嬪彂绌烘墭鍏ュ簱浠诲姟瓒呮椂");
-                WebResponseContent content = JsonConvert.DeserializeObject<WebResponseContent>(ResultData.Result);
-                if (content == null) throw new Exception($"涓嬪彂绌烘墭鍏ュ簱浠诲姟WCS鏃犲搷搴�");
-                if (!content.Status) throw new Exception(content.Message);
+                else
+                    throw new Exception($"鎵樼洏鍙枫�恵barcode}銆戝凡瀛樺湪浠诲姟");
                 #endregion
                 return WebResponseContent.Instance.OK();
             }
@@ -407,11 +410,11 @@
             return (true, "鎴愬姛", materielGroupDTO);
         }
 
-        public WebResponseContent QueryOrderInfo(int pageNo, string orderNo)
+        public WebResponseContent QueryOrderInfo(int pageNo, string orderNo, int orderType)
         {
             if (string.IsNullOrEmpty(orderNo))
             {
-                object obj = Repository.QueryPage(x => true, pageNo, 10, new Dictionary<string, OrderByType> { { nameof(Dt_InboundOrder.CreateDate), OrderByType.Desc } }).Rows.Select(x => new
+                object obj = Repository.QueryPage(x => x.OrderType == orderType, pageNo, 10, new Dictionary<string, OrderByType> { { nameof(Dt_InboundOrder.CreateDate), OrderByType.Desc } }).Rows.Select(x => new
                 {
                     x.OrderNo,
                     x.UpperOrderNo,
@@ -422,7 +425,7 @@
             }
             else
             {
-                object obj = Repository.QueryPage(x => x.OrderNo == orderNo, pageNo, 10, new Dictionary<string, OrderByType> { { nameof(Dt_InboundOrder.CreateDate), OrderByType.Desc } }).Rows.Select(x => new
+                object obj = Repository.QueryPage(x => x.OrderNo.Contains(orderNo), pageNo, 10, new Dictionary<string, OrderByType> { { nameof(Dt_InboundOrder.CreateDate), OrderByType.Desc } }).Rows.Select(x => new
                 {
                     x.OrderNo,
                     x.UpperOrderNo,
@@ -432,5 +435,14 @@
                 return WebResponseContent.Instance.OK(data: obj);
             }
         }
+
+        public WebResponseContent QueryOrderDetailInfo(int pageNo, string orderNo)
+        {
+            WebResponseContent content = new WebResponseContent();
+            Dt_InboundOrder inboundOrder = GetInboundOrder(orderNo);
+            List<Dt_InboundOrderDetail> inboundOrderDetails = inboundOrder.Details;
+            content.OK(data: inboundOrderDetails);
+            return content;
+        }
     }
 }

--
Gitblit v1.9.3