/// <summary> /// 分配任务设备 /// </summary> /// <param name="item"></param> public void ReadDevice(WCS_TASK_ITEM item) { try { // 获取任务所在固定辊台 String frt = task.GetFRTByWCSNo(item.WCS_NO); if (String.IsNullOrEmpty(frt)) { return; } // 获取任务所在作业区域 String area = task.GetArea(frt); if (String.IsNullOrEmpty(frt)) { return; } switch (item.ITEM_ID.Substring(0, 2)) { case "01": #region 摆渡车 // 获取作业区域内空闲的摆渡车 List <WCS_CONFIG_DEVICE> dList_ARF = task.GetDeviceList(area, DeviceType.摆渡车); // 确认其中最适合的摆渡车 // =>根据任务讯息获取位置允许范围可用设备 // =>确认设备 //更新状态 task.UpdateItem(item.WCS_NO, item.ITEM_ID, ItemColumnName.作业状态, ItemStatus.请求执行); #endregion break; case "02": #region 运输车 // =>根据任务讯息获取位置允许范围可用设备 // =>确认设备 //更新状态 task.UpdateItem(item.WCS_NO, item.ITEM_ID, ItemColumnName.作业状态, ItemStatus.请求执行); #endregion break; case "03": #region 行车 // =>根据任务讯息获取位置允许范围可用设备 // =>确认设备 //更新状态 task.UpdateItem(item.WCS_NO, item.ITEM_ID, ItemColumnName.作业状态, ItemStatus.请求执行); #endregion break; default: break; } } catch (Exception ex) { //初始化 task.UpdateItem(item.WCS_NO, item.ITEM_ID, ItemColumnName.作业状态, ItemStatus.可执行); throw ex; } }