création du data manager des administrateurs
continuous-integration/drone/push Build is passing Details

API
Damien NORTIER 1 year ago
parent c19f389c17
commit 517c7adc4b

@ -0,0 +1,60 @@
using DbConnectionLibrairie;
using EntityManagers;
using ExtensionsClassLibrairie;
using ManagerInterfaces;
using Model;
using OrderCriterias;
namespace DataManagers
{
public class AdministratorDataManager(MyDbContext dbContext) : IAdministratorManager<Administrator>
{
private AdministratorEntityManager manager = new AdministratorEntityManager(dbContext);
public async Task<Administrator> addAdmin(Administrator admin)
{
return await Task.FromResult<Administrator>((await manager.addAdmin(admin.ToEntity())).ToModel());
}
public async Task<Administrator?> getAdministratorByUsername(string username)
{
return await Task.FromResult<Administrator?>((await manager.getAdministratorByUsername(username))?.ToModel());
}
public async Task<(int nbPages, IEnumerable<Administrator>? administrators)> getAdministrators(int nb, int count, AdministratorOrderCriteria orderCriteria = AdministratorOrderCriteria.ById)
{
List<Administrator>? tmp = new List<Administrator>();
var res = await manager.getAdministrators(nb, count, orderCriteria);
if (res.administrators == null) tmp = null;
else
{
foreach (var item in res.administrators)
{
tmp.Add(item.ToModel());
}
}
return await Task.FromResult<(int nbPages, IEnumerable<Administrator>? administrators)>((res.nbPages, tmp));
}
public int getNbElements()
{
return manager.getNbElements();
}
public async Task<Administrator?> removeAdmin(Administrator admin)
{
return (await manager.removeAdmin(admin.ToEntity()))?.ToModel();
}
public async Task<Administrator?> removeAdmin(int id)
{
return (await manager.removeAdmin(id))?.ToModel();
}
public async Task<bool> setPassword(string username, string newHashedPassword)
{
return await manager.setPassword(username, newHashedPassword);
}
}
}

@ -0,0 +1,16 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net8.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
</PropertyGroup>
<ItemGroup>
<ProjectReference Include="..\DbConnectionLibrairie\DbConnectionLibrairie.csproj" />
<ProjectReference Include="..\EntityManagers\EntityManagers.csproj" />
<ProjectReference Include="..\ManagerInterfaces\ManagerInterfaces.csproj" />
<ProjectReference Include="..\Model\Model.csproj" />
</ItemGroup>
</Project>

@ -24,7 +24,9 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "FakeDatas", "FakeDatas", "{
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Model", "Model\Model.csproj", "{95E60A3C-AB3C-4B8F-BAA2-EEB899E12CE7}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ExtensionsClassLibrairie", "ExtensionsClassLibrairie\ExtensionsClassLibrairie.csproj", "{66AAAC2F-10B0-4F29-971C-3548EB34B621}"
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ExtensionsClassLibrairie", "ExtensionsClassLibrairie\ExtensionsClassLibrairie.csproj", "{66AAAC2F-10B0-4F29-971C-3548EB34B621}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DataManagers", "DataManagers\DataManagers.csproj", "{C609569C-353E-4F1A-BDEE-7C686FBDA084}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
@ -68,6 +70,10 @@ Global
{66AAAC2F-10B0-4F29-971C-3548EB34B621}.Debug|Any CPU.Build.0 = Debug|Any CPU
{66AAAC2F-10B0-4F29-971C-3548EB34B621}.Release|Any CPU.ActiveCfg = Release|Any CPU
{66AAAC2F-10B0-4F29-971C-3548EB34B621}.Release|Any CPU.Build.0 = Release|Any CPU
{C609569C-353E-4F1A-BDEE-7C686FBDA084}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{C609569C-353E-4F1A-BDEE-7C686FBDA084}.Debug|Any CPU.Build.0 = Debug|Any CPU
{C609569C-353E-4F1A-BDEE-7C686FBDA084}.Release|Any CPU.ActiveCfg = Release|Any CPU
{C609569C-353E-4F1A-BDEE-7C686FBDA084}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE

Loading…
Cancel
Save