Files
parr_api/PARR.Core/Services/RobotTask/Interfaces/IRobotTaskService.cs

37 lines
1.4 KiB
C#

using PARR.Domain.DTOs.RobotTask;
using PARR.Domain.Entities.Base.History;
using PARR.Domain.Enums;
namespace PARR.Core.Services.RobotTask.Interfaces
{
/// <summary>
/// Управление заданиями роботам
/// </summary>
public interface IRobotTaskService
{
/// <summary>
/// Получить задание роботу - шаблоны.
/// </summary>
/// <param name="taskStatusCode"></param>
/// <param name="acquireTask"></param>
/// <param name="robotIp"></param>
/// <param name="robotId"></param>
/// <returns></returns>
Task<RobotTaskTemplate> GetTemplateTaskAsync(TaskStatusEnum taskStatusCode, bool acquireTask, string? robotIp, string? robotId);
/// <summary>
/// Получить задание роботу - расписания.
/// </summary>
/// <param name="taskStatusCode"></param>
/// <param name="acquireTask"></param>
/// <param name="robotIp"></param>
/// <param name="robotId"></param>
/// <param name="historyInitiator"></param>
/// <param name="scheduleCooldownDuration"></param>
/// <returns></returns>
Task<RobotTaskSchedule> GetScheduleTaskAsync(TaskStatusEnum taskStatusCode, bool acquireTask, string? robotIp, string? robotId, IHistoryInitiator historyInitiator, TimeSpan scheduleCooldownDuration);
}
}