This commit is contained in:
SpecialX
2025-07-01 19:05:07 +08:00
parent a21ca80782
commit 017cc2169c
33 changed files with 3778 additions and 109 deletions

View File

@@ -3,6 +3,7 @@ using Entities.DTO;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Identity;
using Microsoft.AspNetCore.Mvc;
using TechHelper.Server.Services;
using TechHelper.Services;
namespace TechHelper.Server.Controllers
@@ -11,12 +12,14 @@ namespace TechHelper.Server.Controllers
[ApiController]
public class UserController : ControllerBase
{
private IUserSerivces _userSerivces;
private IClassService _classService;
private UserManager<User> _userManager;
public UserController(IClassService classService, UserManager<User> userManager)
public UserController(IClassService classService, UserManager<User> userManager, IUserSerivces userSerivces)
{
_classService = classService;
_userManager = userManager;
_userSerivces = userSerivces;
}
@@ -26,5 +29,22 @@ namespace TechHelper.Server.Controllers
{
return Ok();
}
[HttpGet("restoreUserRole")]
public async Task<IActionResult> RestoreUserRole()
{
var user = await _userManager.FindByEmailAsync(User.Identity.Name);
if (user == null) return NotFound();
if (User.IsInRole("Teacher") || User.IsInRole("Student"))
return Ok();
var result = await _userSerivces.RestoreUserRoleInformation(user);
if (result.Status)
return Ok();
else
return Unauthorized();
}
}
}