wxw
2025-10-13 33ef96c0b10aea2a5c9cee18dbc39cdf169ccf92
优化四向车任务反馈流程
1个文件已修改
15 ■■■■■ 已修改文件
Admin.NET/WCS.Application/PLC/PLCService.cs 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Admin.NET/WCS.Application/PLC/PLCService.cs
@@ -192,6 +192,21 @@
                            } 
                            if (carTask != null && carTask.Status != TaskStatusEnum.Complete)
                            {
                                //查找该任务的上一条子任务完成时间和当前时间间隔,如果间隔时间太短说明有问题,等3秒后再执行
                                var carTaskAfter = _db.Queryable<WcsCarTasks>().First(m => m.IsDelete == false && m.Status == TaskStatusEnum.Complete && m.CarTaskNo != valueTaskStr
                                && m.CarNo == modDevice.PlcIdIP && m.TaskNo == carTask.TaskNo);
                                if (carTaskAfter != null && carTaskAfter.UpdateTime != null)
                                {
                                    TimeSpan difference = DateTime.Now - Convert.ToDateTime(carTaskAfter.UpdateTime);
                                    double seconds = difference.TotalSeconds;
                                    if (seconds < 3)
                                    {
                                        Log.Error($"四向车第二条子任务反馈完成时间异常:{carTaskNext.TaskNo}");
                                        Thread.Sleep(3000);
                                        break;
                                    }
                                }
                                carTask.Status = TaskStatusEnum.Complete;
                                carTask.UpdateTime = DateTime.Now;
                                _db.Updateable(carTask).ExecuteCommand();