16 lines
943 B
C#
16 lines
943 B
C#
using Mws.Domain.Documents;
|
|||
|
|
|
||
|
|
namespace Mws.Application.Common.Repositories;
|
||
|
|
|
||
|
|
public interface IDocumentRepository : IRepository<Document>
|
||
|
|
{
|
||
|
|
Task<Document?> GetByIdAsync(Guid id, CancellationToken ct = default);
|
||
|
|
Task<List<Document>> GetTreeForProjectAsync(Guid projectId, CancellationToken ct = default);
|
||
|
|
Task<Document?> GetInProjectAsync(Guid parentId, Guid projectId, CancellationToken ct = default);
|
||
|
|
Task<Guid?> GetParentIdAsync(Guid documentId, CancellationToken ct = default);
|
||
|
|
Task<List<Document>> GetChildrenAsync(Guid parentId, CancellationToken ct = default);
|
||
|
|
Task<List<Document>> SearchAsync(List<Guid> projectIds, string? term, int take, CancellationToken ct = default);
|
||
|
|
Task<int> CountByTypeForProjectAsync(Guid projectId, DocumentType type, CancellationToken ct = default);
|
||
|
|
Task<List<Document>> GetRecentForProjectAsync(Guid projectId, DocumentType type, int take, CancellationToken ct = default);
|
||
|
|
}
|