Renvoit du rôle au frontend avec Get Login (UPDATE-DATABASE)

This commit is contained in:
MarcEricMartel
2022-11-01 10:33:08 -07:00
parent 5112762ac9
commit cd37fd2c15
16 changed files with 761 additions and 125 deletions

View File

@@ -14,11 +14,13 @@ using GrossesMitainesAPI.Models;
Authorize(AuthenticationSchemes = "Identity.Application")]
public class LoginController : Controller {
private readonly UserManager<InventoryUser> _userMan;
private readonly RoleManager<IdentityRole> _roleMan;
private readonly SignInManager<InventoryUser> _signInMan;
public LoginController(SignInManager<InventoryUser> signin, UserManager<InventoryUser> userman) {
public LoginController(SignInManager<InventoryUser> signin, UserManager<InventoryUser> userman, RoleManager<IdentityRole> roleMan) {
this._signInMan = signin;
this._userMan = userman;
this._roleMan = roleMan;
}
public class LoginUser {
@@ -28,9 +30,16 @@ public class LoginController : Controller {
[HttpGet, Route("Login")]
public ReturnUserViewModel WhoAmI() {
var user = _userMan.GetUserAsync(_signInMan.Context.User);
var user = _userMan.GetUserAsync(_signInMan.Context.User);
user.Wait();
return new ReturnUserViewModel(user.Result);
var roles = _userMan.GetRolesAsync(user.Result);
roles.Wait();
string role = "";
if (roles.Result.Contains("Administrateur"))
role = "Administrateur";
else role = "Client";
return new ReturnUserViewModel(user.Result, role);
}
[HttpPost, Route("Login"), AllowAnonymous]