WritePipeSchedule.cs 992 B

1234567891011121314151617181920212223242526272829303132
  1. using SHJX.Service.Control.Pipeline.Contents;
  2. namespace SHJX.Service.Control.Schedules
  3. {
  4. [EnableScheduling]
  5. public class WritePipeSchedule : IScheduler
  6. {
  7. private static IDataManager _dataManager;
  8. public WritePipeSchedule(IDataManager dataManager)
  9. {
  10. _dataManager = dataManager;
  11. }
  12. [Scheduled("WriteTaskToPipeline", 1000)]
  13. public void WriteTaskToPipeline()
  14. {
  15. EquipmentTask task = _dataManager.Query<EquipmentTask>().Where(item => item.RouteID.In(1, 2, 3, 4) && item.Status.Equals(TaskState.Doing)).First();
  16. if (task is null)
  17. {
  18. return;
  19. }
  20. task.Status = TaskState.Hit;
  21. _dataManager.Update(task);
  22. //if (task.To == "D2" && task.RouteStep == "Titration")
  23. //{
  24. //task.RouteStep = "Titration2";
  25. //}
  26. PipeContent.Factory(task.RouteStep).Invoke(task);
  27. }
  28. }
  29. }