Merge branch 'unstable' into 'main'

move services to separate project

See merge request internship-2025/survey-webapp/surveylib!11
This commit is contained in:
Вячеслав 2025-04-20 07:58:46 +00:00
commit 52ae4eb194
8 changed files with 37 additions and 3 deletions

View file

@ -4,5 +4,5 @@ namespace SurveyLib.Core.Repositories;
public interface ISurveyRepository : IGenericRepository<Survey> public interface ISurveyRepository : IGenericRepository<Survey>
{ {
Task<IEnumerable<Survey>> GetSurveysByUserIdAsync(int userId);
} }

View file

@ -9,4 +9,5 @@ public interface ISurveyService
Task DeleteSurveyAsync(int id); Task DeleteSurveyAsync(int id);
Task<IEnumerable<Survey>> GetSurveysAsync(); Task<IEnumerable<Survey>> GetSurveysAsync();
Task<Survey?> GetSurveyAsync(int id); Task<Survey?> GetSurveyAsync(int id);
Task<IEnumerable<Survey>> GetSurveysByUserIdAsync(int userId);
} }

View file

@ -41,4 +41,9 @@ public class SurveyRepository : ISurveyRepository
_context.Surveys.Remove(entity); _context.Surveys.Remove(entity);
await _context.SaveChangesAsync(); await _context.SaveChangesAsync();
} }
public async Task<IEnumerable<Survey>> GetSurveysByUserIdAsync(int userId)
{
return await _context.Surveys.Where(s => s.CreatedBy == userId).ToListAsync();
}
} }

View file

@ -16,4 +16,8 @@
<ProjectReference Include="..\SurveyLib.Core\SurveyLib.Core.csproj" /> <ProjectReference Include="..\SurveyLib.Core\SurveyLib.Core.csproj" />
</ItemGroup> </ItemGroup>
<ItemGroup>
<Folder Include="Services\" />
</ItemGroup>
</Project> </Project>

View file

@ -2,7 +2,7 @@ using SurveyLib.Core.Models;
using SurveyLib.Core.Repositories; using SurveyLib.Core.Repositories;
using SurveyLib.Core.Services; using SurveyLib.Core.Services;
namespace SurveyLib.Infrastructure.EFCore.Services; namespace SurveyLib.Services.Services;
public class QuestionService : IQuestionService public class QuestionService : IQuestionService
{ {

View file

@ -2,7 +2,7 @@ using SurveyLib.Core.Models;
using SurveyLib.Core.Repositories; using SurveyLib.Core.Repositories;
using SurveyLib.Core.Services; using SurveyLib.Core.Services;
namespace SurveyLib.Infrastructure.EFCore.Services; namespace SurveyLib.Services.Services;
public class SurveyService : ISurveyService public class SurveyService : ISurveyService
{ {
@ -43,4 +43,9 @@ public class SurveyService : ISurveyService
{ {
return await _surveyRepository.GetByIdAsync(id); return await _surveyRepository.GetByIdAsync(id);
} }
public async Task<IEnumerable<Survey>> GetSurveysByUserIdAsync(int userId)
{
return await _surveyRepository.GetSurveysByUserIdAsync(userId);
}
} }

View file

@ -0,0 +1,13 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net8.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
</PropertyGroup>
<ItemGroup>
<ProjectReference Include="..\SurveyLib.Core\SurveyLib.Core.csproj" />
</ItemGroup>
</Project>

View file

@ -4,6 +4,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SurveyLib.Core", "SurveyLib
EndProject EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SurveyLib.Infrastructure.EFCore", "SurveyLib.Infrastructure.EFCore\SurveyLib.Infrastructure.EFCore.csproj", "{57B8F7D6-53A6-41DF-961A-D5E3E7186DB7}" Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SurveyLib.Infrastructure.EFCore", "SurveyLib.Infrastructure.EFCore\SurveyLib.Infrastructure.EFCore.csproj", "{57B8F7D6-53A6-41DF-961A-D5E3E7186DB7}"
EndProject EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SurveyLib.Services", "SurveyLib.Services\SurveyLib.Services.csproj", "{C57F4551-A397-45AB-8FF6-2C6400317CC6}"
EndProject
Global Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU Debug|Any CPU = Debug|Any CPU
@ -18,5 +20,9 @@ Global
{57B8F7D6-53A6-41DF-961A-D5E3E7186DB7}.Debug|Any CPU.Build.0 = Debug|Any CPU {57B8F7D6-53A6-41DF-961A-D5E3E7186DB7}.Debug|Any CPU.Build.0 = Debug|Any CPU
{57B8F7D6-53A6-41DF-961A-D5E3E7186DB7}.Release|Any CPU.ActiveCfg = Release|Any CPU {57B8F7D6-53A6-41DF-961A-D5E3E7186DB7}.Release|Any CPU.ActiveCfg = Release|Any CPU
{57B8F7D6-53A6-41DF-961A-D5E3E7186DB7}.Release|Any CPU.Build.0 = Release|Any CPU {57B8F7D6-53A6-41DF-961A-D5E3E7186DB7}.Release|Any CPU.Build.0 = Release|Any CPU
{C57F4551-A397-45AB-8FF6-2C6400317CC6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{C57F4551-A397-45AB-8FF6-2C6400317CC6}.Debug|Any CPU.Build.0 = Debug|Any CPU
{C57F4551-A397-45AB-8FF6-2C6400317CC6}.Release|Any CPU.ActiveCfg = Release|Any CPU
{C57F4551-A397-45AB-8FF6-2C6400317CC6}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection EndGlobalSection
EndGlobal EndGlobal