feat(notification): implement email notifications for user registration and purchase events

This commit is contained in:
2026-07-22 09:54:19 -03:00
parent 7e1ffbf417
commit 528772fc96
19 changed files with 450 additions and 10 deletions

View File

@@ -3,20 +3,27 @@
namespace App\Domains\Auth\Services;
use App\Domains\Auth\Models\User;
use App\Domains\Notification\Events\UserRegistered;
class RegisterUserService
{
/**
* @param array{nombre_apellido: string, email: string, password: string, dni?: string|null, telefono?: string|null} $data
* @param array{tenant_codigo?: string|null, nombre_apellido: string, email: string, password: string, dni?: string|null, telefono?: string|null} $data
*/
public function register(array $data): User
{
return User::query()->create([
$user = User::query()->create([
'nombre_apellido' => $data['nombre_apellido'],
'email' => $data['email'],
'password' => $data['password'],
'dni' => $data['dni'] ?? null,
'telefono' => $data['telefono'] ?? null,
]);
if (! empty($data['tenant_codigo'])) {
UserRegistered::dispatch($user, $data['tenant_codigo']);
}
return $user;
}
}