27 lines
1.1 KiB
C#
27 lines
1.1 KiB
C#
using PARR.Common.Domain;
|
|
using PARR.DAL.Models;
|
|
using PARR.DAL.Services.Interfaces.Base;
|
|
|
|
namespace PARR.DAL.Services.Interfaces
|
|
{
|
|
public interface ITemplateService : IBaseService<Template>
|
|
{
|
|
Task<Template?> GetTemplateByNameAsync(string name);
|
|
|
|
/// <summary>
|
|
/// Резервирует неиспользуемый шаблон для указанного ЭК и работы.
|
|
/// Для корректного расчета NextRun назначает захваченному шаблону ЭК и работу
|
|
/// </summary>
|
|
/// <param name="newUnitId">Id ЭК.</param>
|
|
/// <param name="newJobId">Id работы.</param>
|
|
/// <param name="initiator">Данные инициатора операции.</param>
|
|
/// <returns>
|
|
/// Id зарезервированного шаблона или <see langword="null"/>,
|
|
/// если подходящий шаблон не найден.
|
|
/// </returns>
|
|
Task<Guid?> ReserveUnusedTemplateAsync(Guid newUnitId, Guid newJobId, HistoryInitiator initiator);
|
|
|
|
IQueryable<Template> GetWithIncludes();
|
|
}
|
|
}
|