using PARR.DAL.Models; using PARR.DAL.Services.Interfaces.Base; using PARR.Domain.Enums; namespace PARR.DAL.Services.Interfaces { public interface IRobotConfigurationService : IBaseService { /// /// Обновить статус работы робота /// /// /// void ChangeRobotStatus(RobotStatusEnum robotStatus, RobotConfiguration configuration); /// /// Обновить статус задания (автоматически обновляется статус робота при необходимости) /// /// /// void ChangeTaskStatus(TaskStatusEnum taskStatus, RobotConfiguration configuration); /// /// Поиск невыполненных заданий и установка им статуса ошибки робота /// /// /// /// Task FindUnfulfilledTaskAndSetRobotErrorStatusAsync(int robotAttemptsNumber, TimeSpan robotWaitTime); /// /// Получить конфигурацию из шаблона по RobotCode. У шаблона обязательно должен быть Include таблицы RobotConfiguration /// /// /// /// RobotConfiguration GetFromTemplateByRobotCode(RobotsEnum robotsEnum, Template template); /// /// Установить статус задания "Обновить", если разрешено /// /// /// true - если изменил статус, false - нельзя изменить статус bool SetUpdateTaskStatusIfAllow(RobotConfiguration configuration); } }