Services API

pull/6/head
Leni BEAULATON 3 weeks ago
parent 960a966f06
commit af4f9c8ba0

@ -119,6 +119,16 @@ namespace Dto2Entities
return user; return user;
} }
public static List<UserDTO> ToDto(this List<Users> users)
{
List<UserDTO> userDTOs = new List<UserDTO>();
foreach (Users user in users)
{
userDTOs.Add(ToDto(user));
}
return userDTOs;
}
public static TypeLangageDTO ToDto(this LangEnum item) public static TypeLangageDTO ToDto(this LangEnum item)
{ {
switch (item) switch (item)

@ -0,0 +1,9 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net8.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
</PropertyGroup>
</Project>

@ -0,0 +1,92 @@
using Shared;
using DTO;
using Contextlib;
using Entity;
using System.Xml.XPath;
using Dto2Entities;
namespace ServicesApi
{
public class UserService : IUserService<UserDTO>
{
private IUserService<Users> userService;
public UserService(IUserService<Users> user)
{
userService = user;
}
public async Task AddUser(UserDTO user)
{
//await userService.AddUser(user); Quand les toEntity seront présents
}
public async Task<int> CountUser()
{
return await userService.CountUser();
}
public async Task<bool> ExistEmail(string email)
{
return await userService.ExistEmail(email);
}
public async Task<bool> ExistUsername(string username)
{
return await userService.ExistUsername(username);
}
public async Task<PaginationResult<UserDTO>> GetAllUser()
{
var users = userService.GetAllUser().Result.items;
return new PaginationResult<UserDTO>(users.Count(), 0, 10, users.ToDto());
}
public async Task<string> GetHashPassword(string username)
{
return await userService.GetHashPassword(username);
}
public async Task<int> GetLastUserId()
{
return await userService.GetLastUserId();
}
public async Task<PaginationResult<UserDTO>> GetSomeUser(int index, int pageSize)
{
var users = userService.GetSomeUser(index, pageSize).Result.items;
return new PaginationResult<UserDTO>(users.Count(),index, pageSize, users.ToDto());
}
public async Task<UserDTO> GetUserByEmail(string email)
{
return userService.GetUserByEmail(email).Result.ToDto();
}
public async Task<UserDTO> GetUserById(int id)
{
return userService.GetUserById(id).Result.ToDto();
}
public async Task<UserDTO> GetUserByUsername(string username)
{
return userService.GetUserByUsername(username).Result.ToDto();
}
public async Task RemoveUser(UserDTO user)
{
//await userService.RemoveUser(user); Quand les toEntity seront présents
}
public async Task SetAdminRole(bool isAdmin)
{
await userService.SetAdminRole(isAdmin);
}
public async Task<UserDTO> UpdateUser(int userId, UserDTO user)
{
//await userService.UpdateUser(userId, user); Quand les toEntity seront présents
throw new NotImplementedException();
}
}
}

@ -8,11 +8,11 @@ using System.Threading.Tasks;
namespace StubApi namespace StubApi
{ {
public class QuoteService : IQuoteService<QuoteDTO> public class QuoteServiceStub : IQuoteService<QuoteDTO>
{ {
private readonly List<QuoteDTO> _quotes; private readonly List<QuoteDTO> _quotes;
public QuoteService() public QuoteServiceStub()
{ {
_quotes = new List<QuoteDTO> _quotes = new List<QuoteDTO>
{ {

@ -2,11 +2,11 @@
using DTO; using DTO;
namespace StubApi namespace StubApi
{ {
public class UserService : IUserService<UserDTO> public class UserServiceStub : IUserService<UserDTO>
{ {
private readonly List<UserDTO> _users; private readonly List<UserDTO> _users;
public UserService() public UserServiceStub()
{ {
_users = new List<UserDTO> _users = new List<UserDTO>
{ {

@ -1,11 +1,16 @@
using DTO; using DTO;
using Shared; using Shared;
using StubApi; using StubApi;
using Contextlib;
using Entity;
var builder = WebApplication.CreateBuilder(args); var builder = WebApplication.CreateBuilder(args);
//API
builder.Services.AddScoped<IUserService<UserDTO>, UserServiceStub>();
builder.Services.AddScoped<IQuoteService<QuoteDTO>, QuoteServiceStub>();
builder.Services.AddScoped<IUserService<UserDTO>, UserService>(); //EF
builder.Services.AddScoped<IQuoteService<QuoteDTO>, QuoteService>(); builder.Services.AddScoped<IUserService<Users>, DbUsersManager>();
// Add services to the container. // Add services to the container.
builder.Services.AddControllers(); builder.Services.AddControllers();

Loading…
Cancel
Save