create user use case with request and dto

This commit is contained in:
Yisroel Baum 2026-02-14 21:58:10 +02:00
parent 6aaa8cac83
commit f18d958481
Signed by: yisroelbaum
GPG key ID: 0FA60884F75520A9
3 changed files with 42 additions and 0 deletions

View file

@ -0,0 +1,20 @@
<?php
namespace App\User\UseCases;
use App\User\UserRepository;
use App\ValueObjects\EmailAddress;
class CreateUser
{
public function __construct(
private UserRepository $userRepo,
) {}
public function execute(CreateUserRequest $dto): void
{
$this->userRepo->create(new CreateUserDto(
email: new EmailAddress($dto->email),
));
}
}

View file

@ -0,0 +1,12 @@
<?php
namespace App\User\UseCases;
use App\ValueObjects\EmailAddress;
class CreateUserDto
{
public function __construct(
public EmailAddress $email,
) {}
}

View file

@ -0,0 +1,10 @@
<?php
namespace App\User\UseCases;
class CreateUserRequest
{
public function __construct(
public string $email,
) {}
}