diff --git a/WF_EF_Api/Dto2Entities/Extention.cs b/WF_EF_Api/Dto2Entities/Extention.cs index fb300ef..ad38331 100644 --- a/WF_EF_Api/Dto2Entities/Extention.cs +++ b/WF_EF_Api/Dto2Entities/Extention.cs @@ -119,6 +119,16 @@ namespace Dto2Entities return user; } + public static List ToDto(this List users) + { + List userDTOs = new List(); + foreach (Users user in users) + { + userDTOs.Add(ToDto(user)); + } + return userDTOs; + } + public static TypeLangageDTO ToDto(this LangEnum item) { switch (item) diff --git a/WF_EF_Api/ServicesApi/ServicesApi.csproj b/WF_EF_Api/ServicesApi/ServicesApi.csproj new file mode 100644 index 0000000..bb23fb7 --- /dev/null +++ b/WF_EF_Api/ServicesApi/ServicesApi.csproj @@ -0,0 +1,9 @@ + + + + net8.0 + enable + enable + + + diff --git a/WF_EF_Api/ServicesApi/UserService.cs b/WF_EF_Api/ServicesApi/UserService.cs new file mode 100644 index 0000000..cf71433 --- /dev/null +++ b/WF_EF_Api/ServicesApi/UserService.cs @@ -0,0 +1,92 @@ +using Shared; +using DTO; +using Contextlib; +using Entity; +using System.Xml.XPath; +using Dto2Entities; +namespace ServicesApi +{ + public class UserService : IUserService + { + + private IUserService userService; + + public UserService(IUserService user) + { + userService = user; + } + + public async Task AddUser(UserDTO user) + { + //await userService.AddUser(user); Quand les toEntity seront présents + } + + public async Task CountUser() + { + return await userService.CountUser(); + } + + public async Task ExistEmail(string email) + { + return await userService.ExistEmail(email); + } + + public async Task ExistUsername(string username) + { + return await userService.ExistUsername(username); + } + + public async Task> GetAllUser() + { + var users = userService.GetAllUser().Result.items; + return new PaginationResult(users.Count(), 0, 10, users.ToDto()); + } + + public async Task GetHashPassword(string username) + { + return await userService.GetHashPassword(username); + } + + public async Task GetLastUserId() + { + return await userService.GetLastUserId(); + } + + public async Task> GetSomeUser(int index, int pageSize) + { + var users = userService.GetSomeUser(index, pageSize).Result.items; + return new PaginationResult(users.Count(),index, pageSize, users.ToDto()); + } + + public async Task GetUserByEmail(string email) + { + return userService.GetUserByEmail(email).Result.ToDto(); + } + + public async Task GetUserById(int id) + { + return userService.GetUserById(id).Result.ToDto(); + } + + public async Task 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 UpdateUser(int userId, UserDTO user) + { + //await userService.UpdateUser(userId, user); Quand les toEntity seront présents + throw new NotImplementedException(); + } + } +} diff --git a/WF_EF_Api/StubApi/QuoteService.cs b/WF_EF_Api/StubApi/QuoteServiceStub.cs similarity index 97% rename from WF_EF_Api/StubApi/QuoteService.cs rename to WF_EF_Api/StubApi/QuoteServiceStub.cs index 53e261d..f0521b3 100644 --- a/WF_EF_Api/StubApi/QuoteService.cs +++ b/WF_EF_Api/StubApi/QuoteServiceStub.cs @@ -8,11 +8,11 @@ using System.Threading.Tasks; namespace StubApi { - public class QuoteService : IQuoteService + public class QuoteServiceStub : IQuoteService { private readonly List _quotes; - public QuoteService() + public QuoteServiceStub() { _quotes = new List { diff --git a/WF_EF_Api/StubApi/UserService.cs b/WF_EF_Api/StubApi/UserServiceStub.cs similarity index 96% rename from WF_EF_Api/StubApi/UserService.cs rename to WF_EF_Api/StubApi/UserServiceStub.cs index 315d9a5..b9c21f8 100644 --- a/WF_EF_Api/StubApi/UserService.cs +++ b/WF_EF_Api/StubApi/UserServiceStub.cs @@ -2,11 +2,11 @@ using DTO; namespace StubApi { - public class UserService : IUserService + public class UserServiceStub : IUserService { private readonly List _users; - public UserService() + public UserServiceStub() { _users = new List { diff --git a/WF_EF_Api/WfApi/Program.cs b/WF_EF_Api/WfApi/Program.cs index 5813f96..4232aa1 100644 --- a/WF_EF_Api/WfApi/Program.cs +++ b/WF_EF_Api/WfApi/Program.cs @@ -1,11 +1,16 @@ using DTO; using Shared; using StubApi; - +using Contextlib; +using Entity; var builder = WebApplication.CreateBuilder(args); +//API +builder.Services.AddScoped, UserServiceStub>(); +builder.Services.AddScoped, QuoteServiceStub>(); + -builder.Services.AddScoped, UserService>(); -builder.Services.AddScoped, QuoteService>(); +//EF +builder.Services.AddScoped, DbUsersManager>(); // Add services to the container. builder.Services.AddControllers();