From 3452d373f030b114aa20957efeba41bc8091d6f6 Mon Sep 17 00:00:00 2001
From: wangxinhui <wangxinhui@hnkhzn.com>
Date: 星期五, 13 六月 2025 11:37:10 +0800
Subject: [PATCH] 更新gitignore文件,优化防呆

---
 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/TaskService.cs |   28 +++++++++++++++++++++++-----
 1 files changed, 23 insertions(+), 5 deletions(-)

diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/TaskService.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/TaskService.cs"
index 4e74fc0..74436ca 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/TaskService.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/TaskService.cs"
@@ -112,7 +112,7 @@
         /// 浠诲姟淇℃伅鎺ㄩ�佽嚦WCS
         /// </summary>
         /// <returns></returns>
-        public WebResponseContent PushTasksToWCS(List<Dt_Task> tasks, string agvDescription = "")
+        public WebResponseContent PushTasksToWCS(List<Dt_Task> tasks, string agvDescription = "",string agvtaskNum="")
         {
             try
             {
@@ -120,6 +120,7 @@
                 taskDTOs.ForEach(x =>
                 {
                     x.AGVArea = agvDescription;
+                    x.AGVTaskNum = agvtaskNum;
                 });
                 string url = AppSettings.Get("WCS");
                 if (string.IsNullOrEmpty(url))
@@ -206,7 +207,9 @@
                     TaskType = TaskTypeEnum.OutAllocate.ObjToInt(),
                     TaskStatus = TaskStatusEnum.New.ObjToInt(),
                     WarehouseId = stockInfo.WarehouseId,
-                    PalletType = stockInfo.PalletType
+                    PalletType = stockInfo.PalletType,
+                    MaterielCode = stockInfo.Details.Where(x => x.StockId == stockInfo.Id).FirstOrDefault()?.MaterielCode,
+                    Quantity = (float)stockInfo.Details.Where(x => x.StockId == stockInfo.Id).FirstOrDefault()?.StockQuantity,
                 };
                 _unitOfWorkManage.BeginTran();
                 BaseDal.AddData(newTask);
@@ -374,6 +377,7 @@
                 });
                 //鏇存柊浠诲姟鐘舵��
                 task.TaskStatus = TaskStatusEnum.Finish.ObjToInt();
+                FeedBackWCSTaskCompleted(taskNum);
                 _unitOfWorkManage.BeginTran();
                 BaseDal.DeleteAndMoveIntoHty(task, App.User.UserId > 0 ? OperateTypeEnum.浜哄伐瀹屾垚 : OperateTypeEnum.鑷姩瀹屾垚);
                 _basicService.LocationInfoService.UpdateLocationStatus(locationInfo, stockInfo.PalletType, LocationStatusEnum.InStock, stockInfo.WarehouseId);
@@ -507,6 +511,11 @@
                 {
                     x.ProOutDetailStatus = StockStatusEmun.鍏ュ簱瀹屾垚.ObjToInt();
                 });
+
+                #region todo:涓存椂鏇存柊鎵�鏈夌爺鍙戣浆鎴愬搧
+                proStockInfo.ProStockAttribute=ProStockAttributeEnum.鎴愬搧.ObjToInt();
+                proStockInfo.WarehouseId = locationInfo.WarehouseId;
+                #endregion
                 //鏇存柊鍏ュ簱鐘舵��
                 task.TaskStatus = TaskStatusEnum.Finish.ObjToInt();
                 _unitOfWorkManage.BeginTran();
@@ -619,7 +628,7 @@
                 List<Dt_OutboundOrderDetail> outboundOrderDetails = new List<Dt_OutboundOrderDetail>();
                 List<Dt_MesOutboundOrder> mesOutboundOrders = new List<Dt_MesOutboundOrder>();
                 List<Dt_MesPPOutboundOrder> mesPPOutboundOrders = new List<Dt_MesPPOutboundOrder>();
-                if ((outStockLockInfos == null || outStockLockInfos.Count == 0) && warehouse.WarehouseCode != WarehouseEnum.HA64.ToString() && (task.TaskType != TaskTypeEnum.OutEmpty.ObjToInt()))
+                if ((outStockLockInfos == null || outStockLockInfos.Count == 0) &&(warehouse.WarehouseCode != WarehouseEnum.HA64.ToString()|| warehouse.WarehouseCode != WarehouseEnum.HA154.ToString()) && (task.TaskType != TaskTypeEnum.OutEmpty.ObjToInt()))
                 {
                     return WebResponseContent.Instance.Error($"鏈壘鍒板嚭搴撹鎯呬俊鎭�");
                 }
@@ -632,7 +641,7 @@
                             Dt_MesOutboundOrder mesOutboundOrder = _outboundService.MesOutboundOrderService.Repository.QueryFirst(x => x.TaskNo == item.OrderNo);
                             if (mesOutboundOrder != null)
                             {
-                                mesOutboundOrder.OverOutQuantity = item.AssignQuantity;
+                                mesOutboundOrder.OverOutQuantity += item.AssignQuantity;
                                 if (mesOutboundOrder.OverOutQuantity == mesOutboundOrder.OrderQuantity)
                                 {
                                     mesOutboundOrder.OrderStatus = OrderDetailStatusEnum.Over.ObjToInt();
@@ -672,6 +681,7 @@
                 }
 
                 task.TaskStatus = TaskStatusEnum.Finish.ObjToInt();
+                FeedBackWCSTaskCompleted(taskNum);
                 _unitOfWorkManage.BeginTran();
 
                 if (task.TaskType == TaskTypeEnum.Outbound.ObjToInt() || task.TaskType == TaskTypeEnum.OutAllocate.ObjToInt() || task.TaskType == TaskTypeEnum.MesHandPickOutbound.ObjToInt() || task.TaskType == TaskTypeEnum.MesHandOutbound.ObjToInt())
@@ -687,6 +697,10 @@
                     {
                         x.Status = StockStatusEmun.鍑哄簱瀹屾垚.ObjToInt();
                     });
+                    if (stockInfo.StockLength>0)
+                    {
+                        stockInfo.StockLength = 0;
+                    }
                     _stockRepository.StockInfoRepository.UpdateData(stockInfo);
                     _stockRepository.StockInfoDetailRepository.UpdateData(stockInfo.Details);
                 }
@@ -701,12 +715,16 @@
                     _stockService.StockInfoService.Repository.DeleteAndMoveIntoHty(stockInfo, App.User.UserId == 0 ? OperateTypeEnum.鑷姩瀹屾垚 : OperateTypeEnum.浜哄伐瀹屾垚);
                     _stockService.StockInfoDetailService.Repository.DeleteAndMoveIntoHty(stockInfo.Details, App.User.UserId == 0 ? OperateTypeEnum.鑷姩瀹屾垚 : OperateTypeEnum.浜哄伐瀹屾垚);
                 }
+                else if (warehouse.WarehouseCode == WarehouseEnum.HA154.ToString())
+                {
+                    _stockService.StockInfoService.Repository.DeleteAndMoveIntoHty(stockInfo, App.User.UserId == 0 ? OperateTypeEnum.鑷姩瀹屾垚 : OperateTypeEnum.浜哄伐瀹屾垚);
+                    _stockService.StockInfoDetailService.Repository.DeleteAndMoveIntoHty(stockInfo.Details, App.User.UserId == 0 ? OperateTypeEnum.鑷姩瀹屾垚 : OperateTypeEnum.浜哄伐瀹屾垚);
+                }
                 _outboundService.OutboundStockLockInfoService.Repository.UpdateData(outStockLockInfos);
 
                 int beforeStatus = locationInfo.LocationStatus;
                 locationInfo.LocationStatus = LocationStatusEnum.Free.ObjToInt();
                 _basicService.LocationInfoService.UpdateLocationStatus(locationInfo, stockInfo.PalletType, LocationStatusEnum.Free, stockInfo.WarehouseId);
-
                 BaseDal.DeleteAndMoveIntoHty(task, App.User.UserId == 0 ? OperateTypeEnum.鑷姩瀹屾垚 : OperateTypeEnum.浜哄伐瀹屾垚);
 
                 _recordService.LocationStatusChangeRecordSetvice.AddLocationStatusChangeRecord(locationInfo, (LocationStatusEnum)beforeStatus, LocationStatusEnum.Free, LocationChangeType.OutboundCompleted, stockInfo.Details.FirstOrDefault()?.OrderNo ?? "", task.TaskNum);

--
Gitblit v1.9.3