From 5f2abdf275c3765290ee7d6728842cba6d3af184 Mon Sep 17 00:00:00 2001 From: Syndamia Date: Fri, 7 May 2021 15:27:34 +0300 Subject: Implemented editing user --- .../Services/Models/EditUserServiceModel.cs | 9 ++++++++ ExamTemplate/Services/UserService.cs | 26 +++++++++++++++++++++- 2 files changed, 34 insertions(+), 1 deletion(-) create mode 100644 ExamTemplate/Services/Models/EditUserServiceModel.cs (limited to 'ExamTemplate/Services') diff --git a/ExamTemplate/Services/Models/EditUserServiceModel.cs b/ExamTemplate/Services/Models/EditUserServiceModel.cs new file mode 100644 index 0000000..80e5501 --- /dev/null +++ b/ExamTemplate/Services/Models/EditUserServiceModel.cs @@ -0,0 +1,9 @@ +namespace ExamTemplate.Services.Models +{ + public class EditUserServiceModel + { + public string FirstName { get; set; } + public string LastName { get; set; } + public string Username { get; set; } + } +} diff --git a/ExamTemplate/Services/UserService.cs b/ExamTemplate/Services/UserService.cs index 6b5078b..329d21e 100644 --- a/ExamTemplate/Services/UserService.cs +++ b/ExamTemplate/Services/UserService.cs @@ -1,4 +1,5 @@ -using System.Threading.Tasks; +using System.Security.Claims; +using System.Threading.Tasks; using AutoMapper; using ExamTemplate.Data.Models; using ExamTemplate.Data.Repositories; @@ -50,5 +51,28 @@ namespace ExamTemplate.Services return this._autoMapper.Map(user); } + + public async Task GetUserByClaimsAsync(ClaimsPrincipal claimsPrincipal) + { + User user = await this._userRepository.GetByClaimsAsync(claimsPrincipal); + + return this._autoMapper.Map(user); + } + + public async Task EditUserAsync(ClaimsPrincipal claimsPrincipal, EditUserServiceModel editUserServiceModel) + { + User user = await this._userRepository.GetByClaimsAsync(claimsPrincipal); + + user.UserName = editUserServiceModel.Username; + user.FirstName = editUserServiceModel.FirstName; + user.LastName = editUserServiceModel.LastName; + + return await this._userRepository.EditUserAsync(user); + } + + public bool IsSignedIn(ClaimsPrincipal claimsPrincipal) + { + return this._signInManager.IsSignedIn(claimsPrincipal); + } } } -- cgit v1.2.3