F2 avanzada
This commit is contained in:
@@ -167,8 +167,8 @@ namespace vita_asistente.Controllers
|
||||
RolesDisponibles = todosLosRoles.Select(r => new RoleCheckbox
|
||||
{
|
||||
RoleId = r.Id,
|
||||
RoleName = r.Name,
|
||||
IsSelected = rolesDelUsuario.Contains(r.Name)
|
||||
RoleName = r.Name ?? string.Empty,
|
||||
IsSelected = rolesDelUsuario.Contains(r.Name ?? string.Empty)
|
||||
}).ToList()
|
||||
};
|
||||
return View(model);
|
||||
@@ -183,7 +183,7 @@ namespace vita_asistente.Controllers
|
||||
if (usuario == null) return NotFound();
|
||||
|
||||
var rolesDelUsuario = await _userManager.GetRolesAsync(usuario);
|
||||
var rolesSeleccionados = model.RolesDisponibles.Where(r => r.IsSelected).Select(r => r.RoleName).ToList();
|
||||
var rolesSeleccionados = model.RolesDisponibles.Where(r => r.IsSelected).Where(r => !string.IsNullOrEmpty(r.RoleName)).Select(r => r.RoleName).ToList();
|
||||
|
||||
// Remover roles que ya no están seleccionados
|
||||
var rolesAEliminar = rolesDelUsuario.Except(rolesSeleccionados).ToList();
|
||||
@@ -206,15 +206,15 @@ namespace vita_asistente.Controllers
|
||||
// ViewModels para la gestión de roles (dentro del mismo archivo por simplicidad)
|
||||
public class ManageRolesViewModel
|
||||
{
|
||||
public string UsuarioId { get; set; }
|
||||
public string UsuarioNombre { get; set; }
|
||||
public List<RoleCheckbox> RolesDisponibles { get; set; }
|
||||
public required string UsuarioId { get; set; }
|
||||
public required string UsuarioNombre { get; set; }
|
||||
public required List<RoleCheckbox> RolesDisponibles { get; set; }
|
||||
}
|
||||
|
||||
public class RoleCheckbox
|
||||
public class RoleCheckbox
|
||||
{
|
||||
public string RoleId { get; set; }
|
||||
public string RoleName { get; set; }
|
||||
public required string RoleId { get; set; }
|
||||
public required string RoleName { get; set; }
|
||||
public bool IsSelected { get; set; }
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user