From b8c024874d21dd9b27a00b324e6c14ad29fb666b Mon Sep 17 00:00:00 2001
From: yanjinhui <3306209981@qq.com>
Date: 星期四, 09 四月 2026 21:21:47 +0800
Subject: [PATCH] 优化job接口

---
 代码管理/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/TestJob.cs |  124 +----------------------------------------
 1 files changed, 4 insertions(+), 120 deletions(-)

diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/TestJob.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/TestJob.cs"
index 77922a3..54859c8 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/TestJob.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/TestJob.cs"
@@ -28,7 +28,7 @@
 namespace WIDESEAWCS_Tasks
 {
     [DisallowConcurrentExecution]
-    public class TestJob : JobBase, IJob
+    public partial class TestJob : JobBase, IJob
     {
         private readonly ITaskService _taskService;
         private readonly IStationMangerService _stationMangerService;
@@ -51,127 +51,11 @@
                 // _taskService.Repository 浠撳偍灞傦紝杩涜鏁版嵁搴撹闂�-
                 try
                 {
-                    #region 鍥涘悜杞︿换鍔�
-                    List<Dt_Task> Uptasks = new List<Dt_Task>();
-                    var taskList = _taskService.Repository.QueryData(x => x.TaskType == TaskTypeEnum.CPInbound.ObjToInt() && x.TaskState == TaskStatusEnum.CheckShapeing.ObjToInt());
-                    //浠诲姟鐨勭洰鏍囧湴鍧�瀵逛簬绔欏彴鍙凤紱
-                    foreach (var task in taskList)
-                    {
-                        if (device.GetValue<QualityInspectionCommandEnum, bool>(QualityInspectionCommandEnum.R_QualityInspection, task.SourceAddress))
-                        {
-                            device.SetValue(QualityInspectionCommandEnum.StartqualityInspection, false, task.SourceAddress);
-                            //鍐嶈鍙栬川妫�缁撴灉
-                            var qualityResult = device.GetValue<QualityInspectionCommandEnum, bool>(QualityInspectionCommandEnum.R_QualityInspectionInProgress, task.SourceAddress);
-                            //宸﹁秴瀹借鍛�
-                            var R_LeftOverWidthWarning = device.GetValue<QualityInspectionCommandEnum, bool>(QualityInspectionCommandEnum.R_LeftOverWidthWarning, task.SourceAddress);
-                            //鍙宠秴瀹借鍛�
-                            var R_RightWideWarning = device.GetValue<QualityInspectionCommandEnum, bool>(QualityInspectionCommandEnum.R_RightWideWarning, task.SourceAddress);
-                            //瓒呴珮璀﹀憡
-                            var R_ExtremeWarning = device.GetValue<QualityInspectionCommandEnum, bool>(QualityInspectionCommandEnum.R_ExtremeWarning, task.SourceAddress);
-                            if (qualityResult)
-                            {
-                                //濡傛灉璐ㄦ閫氳繃浜嗭紝灏辨妸浠诲姟鐘舵�佹敼涓鸿川妫�瀹屾垚
-                                task.TaskState = TaskStatusEnum.CheckShapeingOk.ObjToInt();
-                                task.ExceptionMessage = "";
-                                Uptasks.Add(task);
-                            }
-                            else
-                            {
-                                task.TaskState = TaskStatusEnum.CheckShapeingNG.ObjToInt();
-                                task.ExceptionMessage = "澶栨澶辫触";
-                                if (R_LeftOverWidthWarning) task.ExceptionMessage += ",宸﹁秴瀹�";
-                                if (R_RightWideWarning) task.ExceptionMessage += ",鍙宠秴瀹�";
-                                if (R_ExtremeWarning) task.ExceptionMessage += ",瓒呴珮";
-                                Uptasks.Add(task);
-                                //鍐欏叆澶嶄綅淇″彿
-                                //device.SetValue(QualityInspectionCommandEnum.FaultReset, true, task.SourceAddress);
-                            }
-                            //鍐欏叆鍋滄璐ㄦ淇″彿
-                            device.SetValue(QualityInspectionCommandEnum.StopqualityInspection, true, task.SourceAddress);
-                            Thread.Sleep(500);
-                            device.SetValue(QualityInspectionCommandEnum.StopqualityInspection, false, task.SourceAddress);
-                        }
-                        //else
-                        //{
-                        //    //鍐欏叆鍋滄璐ㄦ淇″彿
-                        //    device.SetValue(QualityInspectionCommandEnum.StopqualityInspection, false, task.SourceAddress);
-                        //    device.SetValue(QualityInspectionCommandEnum.StartqualityInspection, true, task.SourceAddress);
-                        //}
-                        else
-                        {
-                            task.TaskState = TaskStatusEnum.CheckShapeingNG.ObjToInt();
-                            task.ExceptionMessage = "鏈娴嬪埌璐ㄦ瀹屾垚淇″彿";
-                            Uptasks.Add(task);
-                        }
-                    }
-                    #endregion
+                    SXCTasks(device);
 
-                    var AGVtaskList = _taskService.Repository.QueryData(x => x.TaskState == TaskStatusEnum.AGV_WaitToExecute.ObjToInt() && (x.TaskType == TaskTypeEnum.Q3RK.ObjToInt() || x.TaskType == TaskTypeEnum.Q3CK.ObjToInt()));//1-6鍜�6-1妤间换鍔�
-                    foreach (var item in AGVtaskList)
-                    {
-                        var address = item.TaskType == TaskTypeEnum.Q3RK.ObjToInt() ? item.TargetAddress : item.SourceAddress;
-                        var stationManger = _stationMangerService.Repository.QueryFirst(x => x.StationCode == address);
-                        if (stationManger == null)
-                        {
-                            item.ExceptionMessage = $"鏈壘鍒般�恵address}銆戠珯鍙颁俊鎭�";
-                            Uptasks.Add(item);
-                            continue;
-                        }
-                        var StockAvailableSymbol = device.GetValue<QualityInspectionCommandEnum, bool>(QualityInspectionCommandEnum.R_StockAvailableSymbol, address);
-                        if (item.TaskType == TaskTypeEnum.Q3RK.ObjToInt())
-                        {
-                            if (StockAvailableSymbol)
-                            {
-                                item.ExceptionMessage = $"{address}绔欏彴鍏夌數妫�娴嬫湁璐э紒";
-                                Uptasks.Add(item);
-                                continue;
-                            }
-                            if (stationManger.IsOccupied == (int)LocationStatusEnum.Lock)
-                            {
-                                item.ExceptionMessage = $"绔欏彴鏈夎揣锛�";
-                                Uptasks.Add(item);
-                                continue;
-                            }
-                        }
-                        else
-                        {
-                            if (!StockAvailableSymbol)
-                            {
-                                item.ExceptionMessage = $"{address}绔欏彴鍏夌數妫�娴嬫棤璐э紒";
-                                Uptasks.Add(item);
-                                continue;
-                            }
-                            if (stationManger.IsOccupied == (int)LocationStatusEnum.Free)
-                            {
-                                item.ExceptionMessage = $"绔欏彴鏃犺揣锛�";
-                                Uptasks.Add(item);
-                                continue;
-                            }
-                        }
-                        //into杩涘叆涓�妤间綅缃殑鏃跺�欙紝鍐欏叆杩涘叆淇″彿
-                        device.SetValue(QualityInspectionCommandEnum.RequestToEnter, true, address);
-                        if (!device.GetValue<QualityInspectionCommandEnum, bool>(QualityInspectionCommandEnum.Blocking, address))
-                        {
-                            item.ExceptionMessage = $"{address}绔欏彴鍏夋爡涓嶄负true锛�1锛�!";
-                            Uptasks.Add(item);
-                            continue;
-                        }
-                        var result = _taskService.Hikvisiontaskscontinue(item.WMSTaskNum);
-                        if (result.Status == false)
-                        {
-                            if (item.ExceptionMessage != result.Message)
-                            {
-                                item.ExceptionMessage = result.Message;
-                                Uptasks.Add(item);
-                            }
-                            continue;
-                        }
-                        item.TaskState = (int)TaskStatusEnum.AGV_ToExecute;
-                        item.ExceptionMessage = "";
-                        Uptasks.Add(item);
-                    }
+                    KHTasks(device);
 
-                    _taskService.UpdateData(Uptasks);
+
                     //WriteInfo(device.DeviceName, "infoLog");
 
                     //WriteDebug(device.DeviceName, "debugLog");

--
Gitblit v1.9.3