1
huangxiaoqiang
6 天以前 60f86b0fba3ab82e245654cddfa5abc62fe1f9e8
项目代码/WCS/WCSServices/WIDESEAWCS_Tasks/成品仓/ConveyorLineJob_CPC.cs
@@ -75,13 +75,14 @@
                    if (item.StationType == StationTypeEnum.StationType_InStartAndOutEnd.ObjToInt() && deviceProRead != null)
                    {
                        R_ConveyorLineCPInfo conveyorLineInfoRead = device.Communicator.ReadCustomer<R_ConveyorLineCPInfo>(deviceProRead.DeviceProAddress);
                        //鐮佸灈婊$洏鐢熸垚RGV鎼繍浠诲姟
                        if (conveyorLineInfoRead != null && conveyorLineInfoRead.StatusPV == 2 && conveyorLineInfoRead.Command == 11)
                        {
                            Dt_Task task = _taskRepository.QueryFirst(x => x.SourceAddress == item.StationCode && _taskService.TaskInboundTypes.Contains(x.TaskType) && (x.TaskState == TaskStatusEnum.RGV_Execute.ObjToInt() || x.TaskState == TaskStatusEnum.RGV_Executing.ObjToInt() || x.TaskState == TaskStatusEnum.New.ObjToInt()));
                            if (task == null)
                            {
                                //鑾峰彇绔欏彴鐢熸垚浠诲姟
                                WebResponseContent content = _taskService.RequestWMSTaskSimple("", item.StationCode);
                                WebResponseContent content = _taskService.RequestWMSTaskSimple("", item.StationCode,taskType:TaskTypeEnum.InProduct.ObjToInt());
                                if (content.Status)
                                {
                                    Dt_Task taskNew = _taskRepository.QueryFirst(x => x.SourceAddress == item.StationCode && _taskService.TaskInboundTypes.Contains(x.TaskType) && (x.TaskState == TaskStatusEnum.New.ObjToInt()));
@@ -93,9 +94,18 @@
                                Thread.Sleep(1000);
                            }
                        }
                        if (conveyorLineInfoRead != null && conveyorLineInfoRead.StatusPV == 2 && conveyorLineInfoRead.Command == 10)
                        {
                            item.IsOccupied = 0;
                        }
                        else
                        {
                            item.IsOccupied = 1;
                        }
                    }
                    
                }
                _stationMangerRepository.UpdateData(stationMangers);
            }
            return Task.CompletedTask;
        }