2023-10-05 16:56:02 +10:00
|
|
|
|
using PARR.DAL.Contracts;
|
|
|
|
|
|
using PARR.DAL.Models;
|
2023-10-05 12:28:31 +10:00
|
|
|
|
using PARR.DAL.Services.Interfaces.Base;
|
|
|
|
|
|
|
|
|
|
|
|
namespace PARR.DAL.Services.Interfaces
|
|
|
|
|
|
{
|
|
|
|
|
|
public interface IRobotConfigurationService : IBaseService<RobotConfiguration>
|
|
|
|
|
|
{
|
2023-10-05 16:56:02 +10:00
|
|
|
|
/// <summary>
|
|
|
|
|
|
/// Обновить статус работы робота
|
|
|
|
|
|
/// </summary>
|
|
|
|
|
|
/// <param name="robotStatus"></param>
|
|
|
|
|
|
/// <param name="configuration"></param>
|
|
|
|
|
|
void ChangeRobotStatus(RobotStatusEnum robotStatus, ref RobotConfiguration configuration);
|
|
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
2023-10-06 11:38:33 +10:00
|
|
|
|
/// Обновить статус задания (автоматически обновляется статус робота при необходимости)
|
2023-10-05 16:56:02 +10:00
|
|
|
|
/// </summary>
|
|
|
|
|
|
/// <param name="taskStatus"></param>
|
|
|
|
|
|
/// <param name="configuration"></param>
|
|
|
|
|
|
void ChangeTaskStatus(TaskStatusEnum taskStatus, ref RobotConfiguration configuration);
|
|
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
|
/// Поиск невыполненных заданий и установка им статуса ошибки робота
|
|
|
|
|
|
/// </summary>
|
|
|
|
|
|
/// <param name="robotAttemptsNumber"></param>
|
|
|
|
|
|
/// <param name="robotWaitTime"></param>
|
|
|
|
|
|
/// <returns></returns>
|
|
|
|
|
|
Task FindUnfulfilledTaskAndSetRobotErrorStatusAsync(int robotAttemptsNumber, TimeSpan robotWaitTime);
|
|
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
|
/// Получить конфигурацию из шаблона по RobotCode. У шаблона обязательно должен быть Include таблицы RobotConfiguration
|
|
|
|
|
|
/// </summary>
|
|
|
|
|
|
/// <param name="robotsEnum"></param>
|
|
|
|
|
|
/// <param name="template"></param>
|
|
|
|
|
|
/// <returns></returns>
|
|
|
|
|
|
RobotConfiguration GetFromTemplateByRobotCode(RobotsEnum robotsEnum, ref Template template);
|
2023-10-05 12:28:31 +10:00
|
|
|
|
}
|
|
|
|
|
|
}
|