2023-11-22 12:04:33 +10:00
|
|
|
|
using PARR.Constants;
|
2023-10-05 16:56:02 +10:00
|
|
|
|
using PARR.DAL.Models;
|
2023-10-05 12:28:31 +10:00
|
|
|
|
using PARR.DAL.Services.Interfaces.Base;
|
2026-04-13 16:58:30 +10:00
|
|
|
|
using PARR.Domain.Enums;
|
2023-10-05 12:28:31 +10:00
|
|
|
|
|
|
|
|
|
|
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>
|
2025-12-09 12:20:27 +10:00
|
|
|
|
void ChangeRobotStatus(RobotStatusEnum robotStatus, RobotConfiguration configuration);
|
2023-10-05 16:56:02 +10:00
|
|
|
|
|
|
|
|
|
|
/// <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>
|
2025-11-26 14:34:03 +10:00
|
|
|
|
void ChangeTaskStatus(TaskStatusEnum taskStatus, RobotConfiguration configuration);
|
2023-10-05 16:56:02 +10:00
|
|
|
|
|
|
|
|
|
|
/// <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>
|
2025-11-26 14:34:03 +10:00
|
|
|
|
RobotConfiguration GetFromTemplateByRobotCode(RobotsEnum robotsEnum, Template template);
|
2026-03-06 15:10:30 +10:00
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
|
/// Установить статус задания "Обновить", если разрешено
|
|
|
|
|
|
/// </summary>
|
|
|
|
|
|
/// <param name="configuration"></param>
|
|
|
|
|
|
/// <returns>true - если изменил статус, false - нельзя изменить статус</returns>
|
|
|
|
|
|
bool SetUpdateTaskStatusIfAllow(RobotConfiguration configuration);
|
2023-10-05 12:28:31 +10:00
|
|
|
|
}
|
|
|
|
|
|
}
|