Notificaciones de correo electrónico para superadministradores al registrarse un nuevo usuario
En el proyecto devlog-ist/landing, se ha implementado una mejora en el sistema de notificaciones para administradores.
El problema
Anteriormente, solo se notificaba sobre los usuarios en lista de espera, pero no había un mecanismo para alertar a los superadministradores cuando un nuevo usuario se registraba en el sistema. Esto dificultaba el seguimiento de nuevos registros y la gestión de la plataforma.
La solución
Se ha añadido un listener encolado que envía un correo electrónico de notificación a todos los superadministradores configurados cada vez que un nuevo usuario se registra. Este nuevo listener sigue el patrón de notificación existente para la lista de espera, asegurando consistencia y facilidad de mantenimiento.
El flujo de trabajo es el siguiente:
- Un nuevo usuario completa el formulario de registro.
- El sistema crea una nueva cuenta de usuario.
- Se dispara un evento de registro de usuario.
- Un listener encolado captura este evento.
- El listener recupera la lista de superadministradores configurados.
- El listener envía un correo electrónico de notificación a cada superadministrador.
Ejemplo ilustrativo
Este es un ejemplo de cómo se podría implementar el envío de la notificación:
use App\Events\UserRegistered;
use App\Models\User;
use App\Notifications\SuperadminNewUser;
use Illuminate\Support\Facades\Notification;
class SendSuperadminNotification
{
public function handle(UserRegistered $event)
{
$superadmins = User::where('role', 'superadmin')->get();
Notification::send($superadmins, new SuperadminNewUser($event->user));
}
}
Beneficios
- Mejor visibilidad: Los superadministradores están al tanto de cada nuevo registro.
- Gestión optimizada: Facilita la gestión de usuarios y la administración de la plataforma.
- Consistencia: Sigue el patrón de notificación existente, reduciendo la complejidad y facilitando el mantenimiento.