From fb745c842df36edc5101291a7f239c11c97bcc2f Mon Sep 17 00:00:00 2001
From: wangxinhui <wangxinhui@hnkhzn.com>
Date: 星期四, 11 九月 2025 16:46:33 +0800
Subject: [PATCH] 最新代码更新,BST,MES部分

---
 项目代码/WMS/WMSServices/WIDESEA_TaskInfoService/TaskService.cs |  120 +++++++----------------------------------------------------
 1 files changed, 15 insertions(+), 105 deletions(-)

diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_TaskInfoService/TaskService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_TaskInfoService/TaskService.cs"
index 5ddf32a..05becf4 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_TaskInfoService/TaskService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_TaskInfoService/TaskService.cs"
@@ -34,13 +34,16 @@
 using WIDESEA_Core.Helper;
 using WIDESEA_DTO;
 using WIDESEA_DTO.Inbound;
-using WIDESEA_DTO.MES;
 using WIDESEA_DTO.Stock;
 using WIDESEA_DTO.Task;
 using WIDESEA_External.ERPService;
 using WIDESEA_External.Model;
 using WIDESEA_IBasicRepository;
 using WIDESEA_IBasicService;
+using WIDESEA_IInboundRepository;
+using WIDESEA_InboundRepository;
+using WIDESEA_IOutboundRepository;
+using WIDESEA_IOutboundService;
 using WIDESEA_IRecordService;
 using WIDESEA_IStockRepository;
 using WIDESEA_IStockService;
@@ -64,6 +67,11 @@
         private readonly IInvokeERPService _invokeERPService;
         private readonly IPalletTypeInfoRepository _palletTypeInfoRepository;
         private readonly IAGVStationInfoRepository _agvStationInfoRepository;
+        private readonly IPurchaseBSTOrderRepository _purchaseBSTOrderRepository;
+        private readonly IPurchaseBSTOrderDetailRepository _purchaseBSTOrderDetailRepository;
+        private readonly IOutBSTOrderDetailRepository _outBSTOrderDetailRepository;
+        private readonly IOutBSTOrderRepository _outBSTOrderRepository;
+        private readonly IOutBSTOrderDetailService _outBSTOrderDetailService;
         public ITaskRepository Repository => BaseDal;
 
         private Dictionary<string, OrderByType> _taskOrderBy = new()
@@ -76,7 +84,7 @@
 
         public List<int> TaskOutboundTypes => typeof(TaskTypeEnum).GetEnumIndexList().Where(x => x >= 100 && x < 500).ToList();
 
-        public TaskService(ITaskRepository BaseDal, IMapper mapper, IUnitOfWorkManage unitOfWorkManage, IStockRepository stockRepository, IBasicService basicService, IRecordService recordService, IStockService stockService, IBasicRepository basicRepository, IApiInfoRepository apiInfoRepository, IInvokeERPService invokeERPService, IPalletTypeInfoRepository palletTypeInfoRepository, IAGVStationInfoRepository agvStationInfoRepository) : base(BaseDal)
+        public TaskService(ITaskRepository BaseDal, IMapper mapper, IUnitOfWorkManage unitOfWorkManage, IStockRepository stockRepository, IBasicService basicService, IRecordService recordService, IStockService stockService, IBasicRepository basicRepository, IApiInfoRepository apiInfoRepository, IInvokeERPService invokeERPService, IPalletTypeInfoRepository palletTypeInfoRepository, IAGVStationInfoRepository agvStationInfoRepository, IPurchaseBSTOrderRepository purchaseBSTOrderRepository, IPurchaseBSTOrderDetailRepository purchaseBSTOrderDetailRepository, IOutBSTOrderDetailRepository outBSTOrderDetailRepository, IOutBSTOrderRepository outBSTOrderRepository,IOutBSTOrderDetailService outBSTOrderDetailService) : base(BaseDal)
         {
             _mapper = mapper;
             _unitOfWorkManage = unitOfWorkManage;
@@ -89,6 +97,11 @@
             _invokeERPService = invokeERPService;
             _palletTypeInfoRepository = palletTypeInfoRepository;
             _agvStationInfoRepository = agvStationInfoRepository;
+            _purchaseBSTOrderRepository = purchaseBSTOrderRepository;
+            _purchaseBSTOrderDetailRepository = purchaseBSTOrderDetailRepository;
+            _outBSTOrderRepository= outBSTOrderRepository;
+            _outBSTOrderDetailRepository= outBSTOrderDetailRepository;
+            _outBSTOrderDetailService= outBSTOrderDetailService;
         }
 
         /// <summary>
@@ -140,109 +153,6 @@
             {
                 return WebResponseContent.Instance.Error(ex.Message);
             }
-        }
-
-        /// <summary>
-        /// 鎴愬搧浠撳叆搴撲换鍔″畬鎴�
-        /// </summary>
-        public WebResponseContent InProductCompleted(Dt_Task task)
-        {
-            WebResponseContent content=new WebResponseContent();
-            try
-            {
-                switch (task.TaskType)
-                {
-                    case (int)TaskTypeEnum.EmptyProductBack:
-                        content = EmptyProBackCompleted(task);
-                        break;
-                    case (int)TaskTypeEnum.InProductBack:
-                        content = InProBackCompleted(task);
-                        break;
-                    default:
-                        content.Error("鏈煡浠诲姟绫诲瀷");
-                        break;
-                }
-            }
-            catch (Exception ex)
-            {
-                _unitOfWorkManage.RollbackTran();
-                content.Error(ex.Message);
-            }
-            return content;
-        }
-        public WebResponseContent EmptyProBackCompleted(Dt_Task task)
-        {
-            WebResponseContent content = new WebResponseContent();
-            try
-            {
-                //鏇存柊鍏ュ簱鐘舵��
-                task.TaskStatus = TaskStatusEnum.Finish.ObjToInt();
-                _unitOfWorkManage.BeginTran();
-                BaseDal.DeleteAndMoveIntoHty(task, App.User.UserId > 0 ? OperateTypeEnum.浜哄伐瀹屾垚 : OperateTypeEnum.鑷姩瀹屾垚);
-                _unitOfWorkManage.CommitTran();
-                content.OK();
-            }
-            catch (Exception ex)
-            {
-                _unitOfWorkManage.RollbackTran();
-                content.Error(ex.Message);
-            }
-            return content;
-        }
-        /// <summary>
-        /// 鎴愬搧浣欐枡閫�搴撲换鍔″畬鎴�
-        /// </summary>
-        /// <param name="task"></param>
-        /// <returns></returns>
-        public WebResponseContent InProBackCompleted(Dt_Task task)
-        {
-            WebResponseContent content = new WebResponseContent();
-            try
-            {
-                //鑾峰彇缁勭洏淇℃伅
-                Dt_ProStockInfo proStockInfo = _stockRepository.ProStockInfoRepository.Db.Queryable<Dt_ProStockInfo>().Where(x => x.PalletCode == task.PalletCode).Includes(x => x.proStockInfoDetails).First();
-                if (proStockInfo == null)
-                {
-                    return content.Error($"鏈壘鍒拌兌妗嗕负{task.PalletCode}缁勭洏淇℃伅");
-                }
-                Dt_LocationInfo locationInfo = _basicService.LocationInfoService.Repository.QueryFirst(x => x.LocationCode == task.TargetAddress);
-                if (locationInfo == null)
-                {
-                    return content.Error($"鏈壘鍒扮洰鏍囪揣浣嶄俊鎭�");
-                }
-                if (locationInfo.LocationStatus == LocationStatusEnum.InStock.ObjToInt())
-                {
-                    return content.Error($"璐т綅鐘舵�佷笉姝g‘");
-                }
-                if (proStockInfo.StockStatus!=StockStatusEmun.鎴愬搧浣欐枡鍥炲簱.ObjToInt())
-                {
-                    return content.Error($"鑳舵{proStockInfo.PalletCode}搴撳瓨鐘舵�佷笉姝g‘");
-                }
-                LocationStatusEnum lastStatus = (LocationStatusEnum)locationInfo.LocationStatus;
-                locationInfo.LocationStatus = LocationStatusEnum.InStock.ObjToInt();
-                proStockInfo.LocationCode = locationInfo.LocationCode;
-                proStockInfo.StockStatus = StockStatusEmun.鍏ュ簱瀹屾垚.ObjToInt();
-                proStockInfo.proStockInfoDetails.ForEach(x =>
-                {
-                    x.ProOutDetailStatus = StockStatusEmun.鍏ュ簱瀹屾垚.ObjToInt();
-                });
-                //鏇存柊鍏ュ簱鐘舵��
-                task.TaskStatus = TaskStatusEnum.Finish.ObjToInt();
-                _unitOfWorkManage.BeginTran();
-                BaseDal.DeleteAndMoveIntoHty(task, App.User.UserId > 0 ? OperateTypeEnum.浜哄伐瀹屾垚 : OperateTypeEnum.鑷姩瀹屾垚);
-                _basicService.LocationInfoService.UpdateLocationStatus(locationInfo, proStockInfo.PalletType, LocationStatusEnum.InStock, locationInfo.WarehouseId);
-                _stockRepository.ProStockInfoRepository.UpdateData(proStockInfo);
-                _stockRepository.ProStockInfoDetailRepository.UpdateData(proStockInfo.proStockInfoDetails);
-                _recordService.LocationStatusChangeRecordSetvice.AddLocationStatusChangeRecord(locationInfo, lastStatus, LocationStatusEnum.InStock, LocationChangeType.InboundCompleted);
-                _unitOfWorkManage.CommitTran();
-                content.OK();
-            }
-            catch (Exception ex)
-            {
-                _unitOfWorkManage.RollbackTran();
-                content.Error(ex.Message);
-            }
-            return content;
         }
     }
 }

--
Gitblit v1.9.3