27 lines
1.2 KiB
C#
27 lines
1.2 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>
|
|
/// Резервирует неиспользуемый шаблон: устанавливает статус <see cref="TemplateStatusTypeEnum.Updating"/>
|
|
/// и фиксирует данные инициатора.
|
|
/// </summary>
|
|
/// <param name="newUnitId">Идентификатор подразделения (используется для фильтрации и логирования).</param>
|
|
/// <param name="initiator">Данные инициатора операции.</param>
|
|
/// <returns>
|
|
/// Идентификатор зарезервированного шаблона или <see langword="null"/>,
|
|
/// если подходящий шаблон не найден.
|
|
/// </returns>
|
|
Task<Guid?> ReserveUnusedTemplateAsync(Guid newUnitId, HistoryInitiator initiator);
|
|
|
|
IQueryable<Template> GetWithIncludes();
|
|
}
|
|
}
|