diff --git a/SurveyLib.Core/Repositories/IAnswerRepository.cs b/SurveyLib.Core/Repositories/IAnswerRepository.cs index 59d2213..0906f21 100644 --- a/SurveyLib.Core/Repositories/IAnswerRepository.cs +++ b/SurveyLib.Core/Repositories/IAnswerRepository.cs @@ -5,4 +5,6 @@ namespace SurveyLib.Core.Repositories; public interface IAnswerRepository : IGenericRepository { Task DeleteAsync(int questionId, int completionId); + Task> GetAnswersByCompletionIdAsync(int completionId); + Task> GetAnswersByQuestionIdAsync(int questionId); } \ No newline at end of file diff --git a/SurveyLib.Core/Repositories/ICompletionRepository.cs b/SurveyLib.Core/Repositories/ICompletionRepository.cs index 9b41e97..b8cffac 100644 --- a/SurveyLib.Core/Repositories/ICompletionRepository.cs +++ b/SurveyLib.Core/Repositories/ICompletionRepository.cs @@ -4,5 +4,5 @@ namespace SurveyLib.Core.Repositories; public interface ICompletionRepository : IGenericRepository { - + Task> GetCompletionsBySurveyIdAsync(int surveyId); } \ No newline at end of file diff --git a/SurveyLib.Infrastructure.EFCore/Repositories/AnswerRepository.cs b/SurveyLib.Infrastructure.EFCore/Repositories/AnswerRepository.cs index 4a84d49..88fbe40 100644 --- a/SurveyLib.Infrastructure.EFCore/Repositories/AnswerRepository.cs +++ b/SurveyLib.Infrastructure.EFCore/Repositories/AnswerRepository.cs @@ -47,4 +47,14 @@ public class AnswerRepository : IAnswerRepository .ExecuteDeleteAsync(); await _context.SaveChangesAsync(); } + + public async Task> GetAnswersByCompletionIdAsync(int completionId) + { + return await _context.Answers.Where(a => a.CompletionId == completionId).ToListAsync(); + } + + public async Task> GetAnswersByQuestionIdAsync(int questionId) + { + return await _context.Answers.Where(a => a.QuestionId == questionId).ToListAsync(); + } } \ No newline at end of file diff --git a/SurveyLib.Infrastructure.EFCore/Repositories/CompletionRepository.cs b/SurveyLib.Infrastructure.EFCore/Repositories/CompletionRepository.cs index 5082e34..bc1c39c 100644 --- a/SurveyLib.Infrastructure.EFCore/Repositories/CompletionRepository.cs +++ b/SurveyLib.Infrastructure.EFCore/Repositories/CompletionRepository.cs @@ -41,4 +41,9 @@ public class CompletionRepository : ICompletionRepository await _context.Completions.Where(c => c.Id == id).ExecuteDeleteAsync(); await _context.SaveChangesAsync(); } + + public async Task> GetCompletionsBySurveyIdAsync(int surveyId) + { + return await _context.Completions.Where(c => c.SurveyId == surveyId).ToListAsync(); + } } \ No newline at end of file