login user use case and corresponding request dto
This commit is contained in:
parent
5bfa1044b2
commit
ec36052f22
2 changed files with 37 additions and 0 deletions
26
src/User/UseCases/LoginUser.php
Normal file
26
src/User/UseCases/LoginUser.php
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
<?php
|
||||
|
||||
namespace FreightQuote\User\UseCases;
|
||||
|
||||
use FreightQuote\User\UserRepository;
|
||||
|
||||
class LoginUser
|
||||
{
|
||||
public function __construct(
|
||||
private LoginUserRequest $dto,
|
||||
private UserRepository $userRepo,
|
||||
) {}
|
||||
|
||||
public function execute(): bool
|
||||
{
|
||||
$user = $this->userRepo->findByEmail($this->dto->email);
|
||||
if (!$user) {
|
||||
return false;
|
||||
}
|
||||
if (!password_verify($this->dto->password, $user->getPassword())) {
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
}
|
||||
11
src/User/UseCases/LoginUserRequest.php
Normal file
11
src/User/UseCases/LoginUserRequest.php
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
<?php
|
||||
|
||||
namespace FreightQuote\User\UseCases;
|
||||
|
||||
class LoginUserRequest
|
||||
{
|
||||
public function __construct(
|
||||
public string $email,
|
||||
public string $password
|
||||
) {}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue