CalibrationWriteTask.cs 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. using SHJX.Service.Model.Dao;
  2. using SHJX.Service.Common.ReadXML;
  3. using SHJX.Service.Control.Interface;
  4. namespace SHJX.Service.Control.TimerControl.WriteTaskToEquipment
  5. {
  6. public class CalibrationWriteTask : WriteTaskToEquipmentImp
  7. {
  8. public CalibrationWriteTask(ReadConfigUtil config, FlowContent operateController)
  9. : base(config, operateController) { }
  10. public override void WriteTaskToEquipmentEvent()
  11. {
  12. if (!ReadConfig.TaskRunning)
  13. return;
  14. var task = GetBdNewTask(1);
  15. if (task is null)
  16. return;
  17. OperateController.OperateControllerContent(task);
  18. }
  19. private EquipmentTask GetBdNewTask(int routeId)
  20. {
  21. var task = DataManager.QueryDoingBdTaskFirst(TaskState.Doing, routeId);
  22. if (task is not null)
  23. return task;
  24. //如果存在同一步骤未完成的情况
  25. if (DataManager.QueryEqualsRouteIdCount(routeId, "BD") > 0)
  26. return null;
  27. //任务路由已为最后一条
  28. if (routeId.Equals(9))
  29. return null;
  30. task = GetBdNewTask(++routeId);
  31. return task;
  32. }
  33. }
  34. }