WashWriteTask.cs 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  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 WashWriteTask : WriteTaskToEquipmentImp
  7. {
  8. public WashWriteTask(ReadConfigUtil config, FlowContent operateController)
  9. : base(config, operateController)
  10. {
  11. }
  12. #region WriteTask
  13. public override void WriteTaskToEquipmentEvent()
  14. {
  15. if (!ReadConfig.TaskRunning) return;
  16. var task = GetWashNewTask(1);
  17. if (task is null) return;
  18. OperateController.OperateControllerContent(task);
  19. }
  20. private EquipmentTask GetWashNewTask(int routeId)
  21. {
  22. var task = DataManager.QueryDoingWashTaskFirst(TaskState.Doing, routeId);
  23. if (task is not null)
  24. return task;
  25. //如果存在同一步骤未完成的情况
  26. if (DataManager.QueryEqualsRouteIdCount(routeId, "Wash") > 0)
  27. return null;
  28. //任务路由已为最后一条
  29. if (routeId.Equals(6))
  30. return null;
  31. task = GetWashNewTask(++routeId);
  32. return task;
  33. }
  34. #endregion
  35. }
  36. }