From 19e5b7583a2aa1968c674b4b35f618cc6c2e29ef Mon Sep 17 00:00:00 2001
From: huanghongfeng <huanghongfeng@hnkhzn.com>
Date: 星期一, 09 十二月 2024 14:16:30 +0800
Subject: [PATCH] 新增历史信息,页面排序,生产时间

---
 代码管理/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/StackerCraneJob/CommonStackerCraneJob.cs |   99 ++++++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 85 insertions(+), 14 deletions(-)

diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/StackerCraneJob/CommonStackerCraneJob.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/StackerCraneJob/CommonStackerCraneJob.cs"
index 4438c4e..545f443 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/StackerCraneJob/CommonStackerCraneJob.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/StackerCraneJob/CommonStackerCraneJob.cs"
@@ -143,20 +143,59 @@
                 if (targetCodes[4] == "02")
                 {
 
-                    task = OutTaskMovelibrary(task);
-                    if (task != null)
+                    Dt_Task taskst = OutTaskMovelibrary(task);
+                    if (taskst != null)
+                    {
+                        if(taskst.TaskType == (int)TaskRelocationTypeEnum.Relocation) 
+                        {
+                            return taskst;
+                        }
+                        else
+                        {
+                            if(taskst.TargetAddress== "R02-001-021-001-02" || taskst.TargetAddress == "R02-001-022-001-02")
+                            {
+                                return taskst;
+                            }
+                            else
+                            {
+                                if (OutTaskStationIsOccupied(taskst) != null)
+                                {
+                                    return taskst;
+                                }
+                            }
+                                
+                        }
+                        
+                    }
+                    task = _taskService.QueryStackerCraneInTask(commonStackerCrane.DeviceCode);
+                }
+                else
+                {
+                    if (task.TargetAddress == "R02-001-021-001-02" || task.TargetAddress == "R02-001-022-001-02")
                     {
                         return task;
                     }
+                    else
+                    {
+                        if (OutTaskStationIsOccupied(task) != null)
+                        {
+                            return task;
+                        }
+                    }
+                    
+                    task = _taskService.QueryStackerCraneInTask(commonStackerCrane.DeviceCode);
                 }
-                if (OutTaskStationIsOccupied(task) != null)
+
+
+                /*if (OutTaskStationIsOccupied(task) != null)
                 {
                     return task;
                 }
                 else
                 {
                     List<string> otherOutStaionCodes = _routerService.QueryNextRoutes(commonStackerCrane.DeviceCode, task.NextAddress).Select(x => x.ChildPosi).ToList();
-                    List<Dt_Task> tasks = _taskService.QueryStackerCraneOutTasks(commonStackerCrane.DeviceCode, otherOutStaionCodes);
+
+                    List<Dt_Task> tasks = _taskService.QueryStackerCraneOutTasks(commonStackerCrane.DeviceCode);
                     foreach (var item in tasks)
                     {
                         if (OutTaskStationIsOccupied(task) != null)
@@ -165,9 +204,8 @@
                         }
                     }
                     //task = _taskService.QueryStackerCraneInTask(commonStackerCrane.DeviceCode);
-                }
+                }*/
             }
-
             return task;
         }
 
@@ -220,10 +258,10 @@
                 }
                 targetCodes[4] = "01";
                 string SourceAddress = string.Join("-", targetCodes); //缁勮娴呭簱浣嶅湴鍧�
-                Dt_Task? tasks = _taskService.QueryStationIsOccupiedOutTasks(task.Roadway, SourceAddress).FirstOrDefault();
+                Dt_Task? tasks = _taskService.QueryStationIsOccupiedOutTasks(task.Roadway, SourceAddress).FirstOrDefault(); //鎵炬祬搴撲綅鏄惁鏈変换鍔�
                 if (tasks != null)
                 {
-                    return task;
+                    return tasks;
                 }
                 else
                 {
@@ -248,7 +286,7 @@
             if (Applyrelease(commonStackerCrane)) //璇诲彇鍫嗗灈鏈烘斁璐х敵璇�
             {
                 Dt_Task task = _taskService.IngStackerCraneTask2(commonStackerCrane.DeviceCode);
-                if (task.TaskType == (int)TaskOutboundTypeEnum.Outbound)
+                if (task.TaskType == (int)TaskOutboundTypeEnum.Outbound && (task.TargetAddress != "R02-001-021-001-02" && task.TargetAddress != "R02-001-022-001-02"))
                 {
                     IDevice? device = Storage.Devices.FirstOrDefault(x => x.DeviceProDTOs.Exists(x => x.DeviceChildCode == task.TargetAddress));
                     if (device != null)
@@ -288,7 +326,7 @@
             else
             {
                 Dt_Task task = _taskService.IngStackerCraneTask2(commonStackerCrane.DeviceCode);
-                if (task !=null && task.TaskType == (int)TaskOutboundTypeEnum.Outbound)
+                if (task !=null && task.TaskType == (int)TaskOutboundTypeEnum.Outbound &&(task.TargetAddress != "R02-001-021-001-02" && task.TargetAddress != "R02-001-022-001-02"))
                 {
                     if (Completesignal(commonStackerCrane, task.TargetAddress))        //璇诲彇鍒版斁璐у畬鎴愪俊鍙�
                     {
@@ -589,7 +627,14 @@
                     {
                         return true;
                     }
-                   
+                }
+                DeviceProDTO? deviceProDTO6 = GetDeviceProDTO2(commonStackerCrane, commonStackerCrane.DeviceCode, "DeliveryRequest_A2in");  //绌烘墭鍑哄叆搴�
+                if (deviceProDTO6 != null)
+                {
+                    if (GetStacker(commonStackerCrane, deviceProDTO6.DeviceProAddress).Status)
+                    {
+                        return true;
+                    }
                 }
             }
             return false;
@@ -639,6 +684,15 @@
                 if (deviceProDTO != null)
                 {
                    if(SetStacker(commonStackerCrane, deviceProDTO.DeviceProAddress, SCcrane).Status) { return true; }
+                }
+            }
+
+            if (Destinationaddress == "R01-002-043-001-01")
+            {
+                DeviceProDTO? deviceProDTO = GetDeviceProDTO2(commonStackerCrane, commonStackerCrane.DeviceCode, "DeliveryPermission_A2in");
+                if (deviceProDTO != null)
+                {
+                    if (SetStacker(commonStackerCrane, deviceProDTO.DeviceProAddress, SCcrane).Status) { return true; }
                 }
             }
 
@@ -706,7 +760,17 @@
                     }
                 }
             }
-
+            if (Destinationaddress == "R01-002-043-001-01")
+            {
+                DeviceProDTO? deviceProDTO = GetDeviceProDTO2(commonStackerCrane, commonStackerCrane.DeviceCode, "DeliveryCompleted_A2in");
+                if (deviceProDTO != null)
+                {
+                    if (GetStacker(commonStackerCrane, deviceProDTO.DeviceProAddress).Status)
+                    {
+                        return true;
+                    }
+                }
+            }
             return false;
 
         }
@@ -755,7 +819,14 @@
                     if (SetStacker(commonStackerCrane, deviceProDTO.DeviceProAddress, SCcrane).Status) { return true; }
                 }
             }
-
+            if (Destinationaddress == "R01-002-043-001-01")
+            {
+                DeviceProDTO? deviceProDTO = GetDeviceProDTO2(commonStackerCrane, commonStackerCrane.DeviceCode, "DeliveryCompletion_A2in");
+                if (deviceProDTO != null)
+                {
+                    if (SetStacker(commonStackerCrane, deviceProDTO.DeviceProAddress, SCcrane).Status) { return true; }
+                }
+            }
             return false;
         }
 
@@ -1055,7 +1126,7 @@
         {
             StackerCraneTaskCommand stackerCraneTaskCommand = new StackerCraneTaskCommand();
 
-            stackerCraneTaskCommand.Barcode = task.PalletCode;
+            stackerCraneTaskCommand.Barcode = ""; /*task.PalletCode;*/
             stackerCraneTaskCommand.TaskNum = task.TaskNum;
             stackerCraneTaskCommand.WorkType = 1;
             stackerCraneTaskCommand.TrayType = 0;

--
Gitblit v1.9.3