Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
100.00% covered (success)
100.00%
14 / 14
100.00% covered (success)
100.00%
1 / 1
CRAP
100.00% covered (success)
100.00%
1 / 1
RestoreUserService
100.00% covered (success)
100.00%
14 / 14
100.00% covered (success)
100.00%
1 / 1
1
100.00% covered (success)
100.00%
1 / 1
 restore
100.00% covered (success)
100.00%
14 / 14
100.00% covered (success)
100.00%
1 / 1
1
1<?php
2
3namespace Domain\User\Services;
4
5use App\Events\ServiceProcessed;
6use App\Models\User;
7use Domain\User\Enums\UserLogOperationEnum;
8
9readonly class RestoreUserService
10{
11    public static function restore(User $userToRestore, User $user): void
12    {
13        $oldDeletedAt = $userToRestore->deleted_at;
14
15        $userToRestore->restore();
16
17        (new StoreUserLogService())->store(
18            $userToRestore,
19            $user,
20            UserLogOperationEnum::RESTORE,
21            [
22                'deleted_at' => [
23                    'old_value' => $oldDeletedAt,
24                    'new_value' => $userToRestore->deleted_at
25                ]
26            ]
27        );
28
29        ServiceProcessed::dispatch(self::class, $user);
30    }
31}