Files
parr_api/PARR.DAL/Services/Interfaces/ITemplateService.cs

27 lines
1.2 KiB
C#
Raw Normal View History

using PARR.Common.Domain;
using PARR.DAL.Models;
2023-09-01 12:40:41 +10:00
using PARR.DAL.Services.Interfaces.Base;
namespace PARR.DAL.Services.Interfaces
{
public interface ITemplateService : IBaseService<Template>
{
Task<Template?> GetTemplateByNameAsync(string name);
2023-09-19 16:42:06 +10:00
/// <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);
2023-09-19 16:42:06 +10:00
IQueryable<Template> GetWithIncludes();
2023-09-01 12:40:41 +10:00
}
}