refactor(users): eliminar columna orden, listar alfabéticamente
- Migración 012: ALTER TABLE users DROP COLUMN orden - Lookups: abogadoNames y allUsers ordenan por name ASC - API admin: create/update_user dejan de leer/escribir orden - UI admin: removida la columna "Orden" de la tabla y el input "Orden" del modal de usuario
This commit is contained in:
+7
-11
@@ -46,7 +46,6 @@ try {
|
||||
$name = trim((string)($b['name'] ?? ''));
|
||||
$role = in_array(($b['role'] ?? ''), ROLES, true) ? $b['role'] : 'usuario';
|
||||
$activo = (int)($b['activo'] ?? 1) === 1 ? 1 : 0;
|
||||
$orden = (int)($b['orden'] ?? 0);
|
||||
|
||||
// Solo admins pueden crear nuevos admins
|
||||
if ($role === 'admin' && !Auth::isAdmin()) {
|
||||
@@ -58,21 +57,20 @@ try {
|
||||
if ($exists->fetch()) err('Ya existe un usuario con ese email', 409);
|
||||
|
||||
$ins = $pdo->prepare(
|
||||
'INSERT INTO users (email, name, role, activo, orden, first_seen_at, last_login_at)
|
||||
VALUES (:email, :name, :role, :activo, :orden, NULL, NULL)'
|
||||
'INSERT INTO users (email, name, role, activo, first_seen_at, last_login_at)
|
||||
VALUES (:email, :name, :role, :activo, NULL, NULL)'
|
||||
);
|
||||
$ins->execute([
|
||||
':email' => $email, ':name' => $name, ':role' => $role,
|
||||
':activo' => $activo, ':orden' => $orden,
|
||||
':activo' => $activo,
|
||||
]);
|
||||
$id = (int)$pdo->lastInsertId();
|
||||
|
||||
$sel = $pdo->prepare('SELECT id, email, name, role, activo, orden, first_seen_at, last_login_at FROM users WHERE id = :id');
|
||||
$sel = $pdo->prepare('SELECT id, email, name, role, activo, first_seen_at, last_login_at FROM users WHERE id = :id');
|
||||
$sel->execute([':id' => $id]);
|
||||
$row = $sel->fetch();
|
||||
$row['id'] = (int)$row['id'];
|
||||
$row['activo'] = (int)$row['activo'];
|
||||
$row['orden'] = (int)$row['orden'];
|
||||
AuditLog::log('admin', 'create_user', 'user', (string)$id, $email, ['role'=>$role, 'name'=>$name]);
|
||||
ok($row);
|
||||
}
|
||||
@@ -116,25 +114,23 @@ try {
|
||||
}
|
||||
|
||||
$name = trim((string)($b['name'] ?? ''));
|
||||
$orden = (int)($b['orden'] ?? 0);
|
||||
|
||||
$upd = $pdo->prepare(
|
||||
'UPDATE users SET email = :email, name = :name, role = :role,
|
||||
activo = :activo, orden = :orden
|
||||
activo = :activo
|
||||
WHERE id = :id'
|
||||
);
|
||||
$upd->execute([
|
||||
':email' => $newEmail, ':name' => $name, ':role' => $newRole,
|
||||
':activo' => $newActivo, ':orden' => $orden,
|
||||
':activo' => $newActivo,
|
||||
':id' => $id,
|
||||
]);
|
||||
|
||||
$sel = $pdo->prepare('SELECT id, email, name, role, activo, orden, first_seen_at, last_login_at FROM users WHERE id = :id');
|
||||
$sel = $pdo->prepare('SELECT id, email, name, role, activo, first_seen_at, last_login_at FROM users WHERE id = :id');
|
||||
$sel->execute([':id' => $id]);
|
||||
$row = $sel->fetch();
|
||||
$row['id'] = (int)$row['id'];
|
||||
$row['activo'] = (int)$row['activo'];
|
||||
$row['orden'] = (int)$row['orden'];
|
||||
$diff = [];
|
||||
if ($existing['role'] !== $newRole) $diff['role'] = ['from'=>$existing['role'], 'to'=>$newRole];
|
||||
if ((int)$existing['activo'] !== $newActivo) $diff['activo'] = ['from'=>(int)$existing['activo'], 'to'=>$newActivo];
|
||||
|
||||
Reference in New Issue
Block a user