diff --git a/DrinkRateAPI/ApiModels/UserProfile/UserProfileGet.cs b/DrinkRateAPI/ApiModels/UserProfile/UserProfileGet.cs new file mode 100644 index 0000000..ed241cf --- /dev/null +++ b/DrinkRateAPI/ApiModels/UserProfile/UserProfileGet.cs @@ -0,0 +1,6 @@ +namespace DrinkRateAPI.ApiModels.UserProfile; + +public class UserProfileGet +{ + +} \ No newline at end of file diff --git a/DrinkRateAPI/ApiModels/UserProfile/UserProfilePut.cs b/DrinkRateAPI/ApiModels/UserProfile/UserProfilePut.cs new file mode 100644 index 0000000..020071d --- /dev/null +++ b/DrinkRateAPI/ApiModels/UserProfile/UserProfilePut.cs @@ -0,0 +1,6 @@ +namespace DrinkRateAPI.ApiModels.UserProfile; + +public class UserProfilePut +{ + public string UserName { get; set; } +} \ No newline at end of file diff --git a/DrinkRateAPI/Controllers/UserProfileController.cs b/DrinkRateAPI/Controllers/UserProfileController.cs new file mode 100644 index 0000000..3405fd6 --- /dev/null +++ b/DrinkRateAPI/Controllers/UserProfileController.cs @@ -0,0 +1,18 @@ +using System.Security.Claims; +using DrinkRateAPI.ApiModels.UserProfile; +using Microsoft.AspNetCore.Mvc; + +namespace DrinkRateAPI.Controllers; + +[ApiController] +[Route("user_profile")] +public class UserProfileController : ControllerBase +{ + [HttpPut(Name = "user_profile")] + public UserProfileGet PutUserProfile(UserProfilePut userProfile) + { + throw new ApplicationException(); + var x = User.FindFirst(ClaimTypes.NameIdentifier)?.Value; //HttpContext.User.Identities.First(); + return new(); + } +} \ No newline at end of file diff --git a/DrinkRateAPI/Services/UserProfileService.cs b/DrinkRateAPI/Services/UserProfileService.cs index 1eec317..96b1091 100644 --- a/DrinkRateAPI/Services/UserProfileService.cs +++ b/DrinkRateAPI/Services/UserProfileService.cs @@ -1,14 +1,21 @@ using System.Security.Claims; +using DrinkRateAPI.ApiModels.UserProfile; using DrinkRateAPI.Contexts; using DrinkRateAPI.DbEntities; +using DrinkRateAPI.DbEntities; using DrinkRateAPI.Exceptions; using Microsoft.EntityFrameworkCore; +using Microsoft.AspNetCore.Authorization; +using Microsoft.AspNetCore.Mvc; + namespace DrinkRateAPI.Services; -public class UserProfileService(ApplicationDbContext context) +public class UserProfileService(ApplicationDbContext context, + ApplicationUserService applicationUserService) { private ApplicationDbContext _context = context; + private ApplicationUserService _applicationUserService = applicationUserService; public bool IsUserProfileAdmin(DbUserProfile userProfile) { @@ -24,6 +31,15 @@ public class UserProfileService(ApplicationDbContext context) return userProfile; } + + public async Task PutUserProfileAsync(UserProfilePut userProfile, ClaimsPrincipal identity) + { + var profile = _applicationUserService.UserProfileByApplicationUserAsync(identity); + + + + return new(); + } public DbUserProfile GetUserProfileById(string userId) {