From de3731f81b826c0188cb3dfc2a3ff0661db9c3d9 Mon Sep 17 00:00:00 2001 From: zhanghonglin <zhanghonglin@hnkhzn.com> Date: 星期五, 11 七月 2025 10:35:47 +0800 Subject: [PATCH] 注释 --- 项目代码/WCS/WCSServices/WIDESEAWCS_Tasks/成品仓/RGVJob_CP.cs | 53 +++++++++++++++++++++++++++++++++++++++++------------ 1 files changed, 41 insertions(+), 12 deletions(-) diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_Tasks/\346\210\220\345\223\201\344\273\223/RGVJob_CP.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_Tasks/\346\210\220\345\223\201\344\273\223/RGVJob_CP.cs" index 64903f2..d5ed193 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_Tasks/\346\210\220\345\223\201\344\273\223/RGVJob_CP.cs" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_Tasks/\346\210\220\345\223\201\344\273\223/RGVJob_CP.cs" @@ -75,28 +75,52 @@ if (deviceProRead != null && deviceProWrite != null) { R_RGVCPInfo rgvInfoRead = device.Communicator.ReadCustomer<R_RGVCPInfo>(deviceProRead.DeviceProAddress); - if (rgvInfoRead.Mode==4 && rgvInfoRead.State == 0 && rgvInfoRead.TaskDone==1) + W_RGVCPInfo rgvInfoWrite = device.Communicator.ReadCustomer<W_RGVCPInfo>(deviceProWrite.DeviceProAddress); + if (rgvInfoRead.Mode==5 && rgvInfoRead.State == 0 && rgvInfoRead.TaskDone==1) { + List<Dt_Task> tasks = _taskRepository.QueryData(x => _taskService.TaskInboundTypes.Contains(x.TaskType) && x.TaskState != TaskStatusEnum.RGV_Execute.ObjToInt() && x.DeviceCode == device.DeviceCode); //鑾峰彇浠诲姟 - Dt_Task task = _taskRepository.QueryFirst(x => _taskService.TaskInboundTypes.Contains(x.TaskType) && x.TaskState == TaskStatusEnum.RGV_Execute.ObjToInt() && x.DeviceCode==device.DeviceCode); - if (task != null) + Dt_Task? task1 = tasks.FirstOrDefault(x => x.HeightType==1); + Dt_Task? task2 = tasks.FirstOrDefault(x => x.HeightType == 2); + Dt_Task? task3 = tasks.FirstOrDefault(x => x.HeightType == 3); + Dt_Task task = _taskRepository.QueryFirst(x => _taskService.TaskInboundTypes.Contains(x.TaskType) && x.TaskState == TaskStatusEnum.RGV_Execute.ObjToInt() && x.DeviceCode == device.DeviceCode); + if (task != null && task1 == null) { - device.SetValue(W_RgvCPDB.WcsTask, task.TaskNum); + device.SetValue(W_RgvCPDB.WcsTask1, task.TaskNum); device.SetValue(W_RgvCPDB.TaskType, 4); device.SetValue(W_RgvCPDB.WorkStation, 1); device.SetValue(W_RgvCPDB.Qu1, task.CurrentAddress); device.SetValue(W_RgvCPDB.Fang1, task.NextAddress); device.SetValue(W_RgvCPDB.TaskReceivedDone, 1); - Thread.Sleep(1000); - //澶嶄綅淇″彿 - device.SetValue(W_RgvCPDB.TaskReceivedDone, 0); + task.HeightType = 1; + _taskService.UpdateTask(task, TaskStatusEnum.RGV_Executing); + }else if (task != null && task2 == null) + { + device.SetValue(W_RgvCPDB.WcsTask1, task.TaskNum); + device.SetValue(W_RgvCPDB.TaskType, 4); + device.SetValue(W_RgvCPDB.WorkStation, 1); + device.SetValue(W_RgvCPDB.Qu2, task.CurrentAddress); + device.SetValue(W_RgvCPDB.Fang2, task.NextAddress); + device.SetValue(W_RgvCPDB.TaskReceivedDone, 1); + task.HeightType = 2; + _taskService.UpdateTask(task, TaskStatusEnum.RGV_Executing); + } + else if (task != null && task3 == null) + { + device.SetValue(W_RgvCPDB.WcsTask1, task.TaskNum); + device.SetValue(W_RgvCPDB.TaskType, 4); + device.SetValue(W_RgvCPDB.WorkStation, 1); + device.SetValue(W_RgvCPDB.Qu3, task.CurrentAddress); + device.SetValue(W_RgvCPDB.Fang3, task.NextAddress); + device.SetValue(W_RgvCPDB.TaskReceivedDone, 1); + task.HeightType = 3; _taskService.UpdateTask(task, TaskStatusEnum.RGV_Executing); } } - else if(rgvInfoRead.Mode == 4 && rgvInfoRead.State == 1 && rgvInfoRead.TaskDone == 3) + else if((rgvInfoRead.Mode == 5 || rgvInfoRead.Mode == 4) && rgvInfoRead.TaskDone == 3) { //鑾峰彇浠诲姟 - Dt_Task task = _taskRepository.QueryFirst(x =>x.TaskNum==rgvInfoRead.RgvEndTask && _taskService.TaskInboundTypes.Contains(x.TaskType) && x.TaskState == TaskStatusEnum.RGV_Executing.ObjToInt() && x.DeviceCode == device.DeviceCode); + Dt_Task task = _taskRepository.QueryFirst(x =>x.TaskNum==rgvInfoRead.RgvTask && _taskService.TaskInboundTypes.Contains(x.TaskType) && x.TaskState == TaskStatusEnum.RGV_Executing.ObjToInt() && x.DeviceCode == device.DeviceCode); if (task != null) { //鑾峰彇涓嬩竴涓妭鐐圭殑璺敱 @@ -105,9 +129,6 @@ task.NextAddress = ""; task.DeviceCode = stationManger.StationDeviceCode; device.SetValue(W_RgvCPDB.TaskReceivedDone, 2); - Thread.Sleep(1000); - //澶嶄綅淇″彿 - device.SetValue(W_RgvCPDB.TaskReceivedDone, 0); _taskService.UpdateTask(task, TaskStatusEnum.Line_Execute); WriteError(device.DeviceName, $"RGV浠诲姟瀹屾垚,浠诲姟鍙穥rgvInfoRead.RgvEndTask}"); } @@ -116,6 +137,14 @@ WriteError(device.DeviceName, $"鏈壘鍒癛GV瀵瑰簲鐨勭粨鏉熶换鍔rgvInfoRead.RgvEndTask}"); } } + else if (rgvInfoRead.TaskDone == 2 && rgvInfoWrite.TaskReceivedDone == 1) + { + device.SetValue(W_RgvCPDB.TaskReceivedDone, 0); + } + else if (rgvInfoRead.TaskDone == 0 && rgvInfoWrite.TaskReceivedDone == 2) + { + device.SetValue(W_RgvCPDB.TaskReceivedDone, 0); + } } else { -- Gitblit v1.9.3