Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
100.00% covered (success)
100.00%
8 / 8
100.00% covered (success)
100.00%
1 / 1
CRAP
100.00% covered (success)
100.00%
1 / 1
RequestLogStoreService
100.00% covered (success)
100.00%
8 / 8
100.00% covered (success)
100.00%
1 / 1
2
100.00% covered (success)
100.00%
1 / 1
 store
100.00% covered (success)
100.00%
8 / 8
100.00% covered (success)
100.00%
1 / 1
2
1<?php
2
3namespace Domain\Request\Services;
4
5use App\Events\ServiceProcessed;
6use App\Models\Request\RequestLog;
7use App\Models\User;
8use Domain\Request\DTOs\RequestLogStoreDTO;
9
10readonly class RequestLogStoreService
11{
12    public function store(RequestLogStoreDTO $requestLogStoreDTO, User $user)
13    {
14        $requestLog = new RequestLog();
15        $requestLog->fill($requestLogStoreDTO->toArray());
16        $requestLog->user()->associate($requestLogStoreDTO->user);
17        $requestLog->stockIO()->associate($requestLogStoreDTO->stockIO);
18
19        if ($requestLogStoreDTO->request) {
20            $requestLog->request()->associate($requestLogStoreDTO->request);
21        }
22
23        $requestLog->save();
24
25        ServiceProcessed::dispatch(self::class, $user);
26    }
27}
28
29