27 lines
835 B
PHP
27 lines
835 B
PHP
<?php declare(strict_types=1);
|
|
|
|
namespace App\Services\ProjectTranslationServiceTextHash;
|
|
|
|
use App\Enums\ProjectTranslationServiceHashes\Status;
|
|
use App\Models\ProjectTranslationServiceTextHash;
|
|
|
|
final readonly class ProjectTranslationServiceTextHashCommandHandler
|
|
{
|
|
public function handleStore(array $data): ProjectTranslationServiceTextHash
|
|
{
|
|
return ProjectTranslationServiceTextHash::create($data);
|
|
}
|
|
|
|
public function handleUpdate(ProjectTranslationServiceTextHash $hash, array $data): ProjectTranslationServiceTextHash
|
|
{
|
|
$hash->update($data);
|
|
$hash->touch();
|
|
return $hash;
|
|
}
|
|
|
|
public function handleSetStatusById(array $ids, Status $status): void
|
|
{
|
|
ProjectTranslationServiceTextHash::query()->whereIn('id', $ids)->update(['status' => $status->value]);
|
|
}
|
|
}
|