Use PATCH, fix message, remove username check
Update API/Controllers/Auth/AppUserController.cs: change route attribute to [HttpPatch("{id:guid}")] (fixing verb and missing bracket), correct German error message to indicate the user was deactivated, and remove the redundant existing-username conflict check before SetUserNameAsync. These changes clarify intent and rely on userManager to handle username validation.
This commit is contained in:
@@ -36,7 +36,7 @@ namespace API.Controllers.Auth
|
||||
return Ok(await user.ToCurrentUserResponseAsync(userManager));
|
||||
}
|
||||
|
||||
[HttpPost("{id:guid")]
|
||||
[HttpPatch("{id:guid}")]
|
||||
public async Task<IActionResult> UpdateAppUser([FromRoute] Guid id, [FromBody] ChangeUserRequest changeDto)
|
||||
{
|
||||
var user = await userManager.Users.FirstOrDefaultAsync(x => x.Id == id);
|
||||
@@ -55,7 +55,7 @@ namespace API.Controllers.Auth
|
||||
var stampResult = await userManager.UpdateSecurityStampAsync(user);
|
||||
if (!stampResult.Succeeded)
|
||||
{
|
||||
return StatusCode(500, new { message = "Benutzer wurde auf geändert, aber Sessions konnten nicht invalidiert werden. " +
|
||||
return StatusCode(500, new { message = "Benutzer wurde deaktiviert, aber Sessions konnten nicht invalidiert werden. " +
|
||||
"Er könnte also immer noch Angemeldet sein!" });
|
||||
}
|
||||
}
|
||||
@@ -72,12 +72,6 @@ namespace API.Controllers.Auth
|
||||
|
||||
if (!string.Equals(newUserName, user.UserName, StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
var existing = await userManager.FindByNameAsync(newUserName);
|
||||
if (existing is not null && existing.Id != user.Id)
|
||||
{
|
||||
return Conflict(new { message = "Benutzername ist bereits vergeben." });
|
||||
}
|
||||
|
||||
var setNameResult = await userManager.SetUserNameAsync(user, newUserName);
|
||||
if (!setNameResult.Succeeded)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user