23 lines
991 B
C#
23 lines
991 B
C#
using HelpDesk.Models.Entities;
|
|
|
|
namespace HelpDesk.Data.Repositories;
|
|
|
|
public interface IKnowledgeBaseRepository
|
|
{
|
|
// Articles
|
|
Task<KnowledgeBaseArticle?> GetArticleByIdAsync(Guid id);
|
|
Task<IEnumerable<KnowledgeBaseArticle>> GetAllArticlesAsync();
|
|
Task<IEnumerable<KnowledgeBaseArticle>> GetPublishedArticlesAsync();
|
|
Task<IEnumerable<KnowledgeBaseArticle>> SearchArticlesAsync(string query);
|
|
Task<KnowledgeBaseArticle> CreateArticleAsync(KnowledgeBaseArticle article);
|
|
Task<KnowledgeBaseArticle?> UpdateArticleAsync(KnowledgeBaseArticle article);
|
|
Task<bool> DeleteArticleAsync(Guid id);
|
|
|
|
// Categories
|
|
Task<KnowledgeBaseCategory?> GetCategoryByIdAsync(Guid id);
|
|
Task<IEnumerable<KnowledgeBaseCategory>> GetAllCategoriesAsync();
|
|
Task<KnowledgeBaseCategory> CreateCategoryAsync(KnowledgeBaseCategory category);
|
|
Task<KnowledgeBaseCategory?> UpdateCategoryAsync(KnowledgeBaseCategory category);
|
|
Task<bool> DeleteCategoryAsync(Guid id);
|
|
}
|