From 84b36c79f37d9d3abad3bba4ff7ea99b2cc17942 Mon Sep 17 00:00:00 2001
From: 肖洋 <cathay_xy@163.com>
Date: 星期三, 18 十二月 2024 23:19:51 +0800
Subject: [PATCH] 合并

---
 Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs |   29 +++++++++++++++++++++++++----
 1 files changed, 25 insertions(+), 4 deletions(-)

diff --git a/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs b/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs
index 4b333bf..c962f62 100644
--- a/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs
+++ b/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs
@@ -40,6 +40,7 @@
         private readonly IDt_StationManagerRepository _stationManagerRepository;
         private readonly IRouterRepository _routerRepository;
         private readonly ITask_HtyRepository _taskHtyRepository;
+        private readonly IDt_needBarcodeRepository _taskNeedBarcodeRepository;
 
         private Dictionary<string, OrderByType> _taskOrderBy = new()
         {
@@ -54,7 +55,7 @@
 
         public List<int> TaskOutboundTypes => typeof(TaskOutboundTypeEnum).GetEnumIndexList();
 
-        public TaskService(ITaskRepository BaseDal, IRouterService routerService, ITaskExecuteDetailService taskExecuteDetailService, ITaskExecuteDetailRepository taskExecuteDetailRepository, IMapper mapper, ISys_ConfigService sys_ConfigService, IDt_StationManagerService stationManagerService, IDt_StationManagerRepository stationManagerRepository, IRouterRepository routerRepository, ITask_HtyRepository htyRepository) : base(BaseDal)
+        public TaskService(ITaskRepository BaseDal, IRouterService routerService, ITaskExecuteDetailService taskExecuteDetailService, ITaskExecuteDetailRepository taskExecuteDetailRepository, IMapper mapper, ISys_ConfigService sys_ConfigService, IDt_StationManagerService stationManagerService, IDt_StationManagerRepository stationManagerRepository, IRouterRepository routerRepository, ITask_HtyRepository htyRepository, IDt_needBarcodeRepository taskNeedBarcodeRepository) : base(BaseDal)
         {
             _routerService = routerService;
             _taskExecuteDetailService = taskExecuteDetailService;
@@ -65,6 +66,7 @@
             _stationManagerRepository = stationManagerRepository;
             _routerRepository = routerRepository;
             _taskHtyRepository = htyRepository;
+            _taskNeedBarcodeRepository = taskNeedBarcodeRepository;
         }
 
         /// <summary>
@@ -170,7 +172,7 @@
                 if (task.TaskType == (int)TaskInboundTypeEnum.InNG)
                 {
                     var station = await _stationManagerRepository.QueryFirstAsync(x => x.stationChildCode == task.SourceAddress);
-                    Dt_Task  _Task = _mapper.Map<Dt_Task>(task);
+                    Dt_Task _Task = _mapper.Map<Dt_Task>(task);
                     _Task.TaskState = (int)TaskInStatusEnum.InNew;
                     _Task.CurrentAddress = task.SourceAddress;
                     _Task.NextAddress = station.stationNGChildCode;
@@ -246,6 +248,12 @@
         {
             return BaseDal.QueryFirst(x => x.TaskNum == taskNum && x.CurrentAddress == currentAddress && (x.TaskState == (int)TaskInStatusEnum.Line_InFinish || x.TaskState == (int)TaskOutStatusEnum.Line_OutFinish), TaskOrderBy);
         }
+
+        public Dt_Task QueryBarcodeTask(string barcode, string currentAddress)
+        {
+            return BaseDal.QueryFirst(x => x.PalletCode == barcode && x.CurrentAddress == currentAddress, TaskOrderBy);
+        }
+
 
         /// <summary>
         /// 鏍规嵁浠诲姟鍙枫�佸綋鍓嶅湴鍧�鏌ヨ杈撻�佺嚎鏂板缓鐨勪换鍔�
@@ -623,9 +631,17 @@
                     else
                     {
                         task.TaskState = (int)TaskOutStatusEnum.OutFinish;
+                        //濡傞珮娓╁嚭搴撳悗 NG 鍒欏皢浠诲姟鏍囪涓篘G 骞跺湪鍑哄簱鐢宠鍚庡皢浠诲姟鍑鸿嚦NG鍙�
+                        if (task.Remark == "NG")
+                        {
+                            BaseDal.UpdateData(task);
+                        }
+                        else
+                        {
+                            BaseDal.DeleteData(task);
+                            ConsoleHelper.WriteWarningLine($"楂樻俯鍑哄簱鐩殑鍦板潃{task.TargetAddress}");
+                        }
 
-                        BaseDal.DeleteData(task);
-                        ConsoleHelper.WriteWarningLine($"楂樻俯鍑哄簱鐩殑鍦板潃{task.TargetAddress}");
                         var taskHty = task.Adapt<Dt_Task_Hty>();
                         _taskHtyRepository.AddData(taskHty);
                         _taskExecuteDetailService.AddTaskExecuteDetail(task.TaskId, $"鍫嗗灈鏈哄嚭搴撳畬鎴�");
@@ -777,5 +793,10 @@
         {
             return BaseDal.QueryFirst(x => x.Roadway == deviceNo && x.TaskType == (int)TaskRelocationTypeEnum.Relocation && x.TaskState == (int)TaskStatus.Created);
         }
+
+        public Dt_Task QueryExecutingTaskByBarcode(string barcode, string nextAddress)
+        {
+            return BaseDal.QueryFirst(x => x.PalletCode == barcode && x.NextAddress == nextAddress && (x.TaskState == (int)TaskInStatusEnum.Line_InExecuting || x.TaskState == (int)TaskOutStatusEnum.Line_OutExecuting), TaskOrderBy);
+        }
     }
 }
\ No newline at end of file

--
Gitblit v1.9.3