/
AleksWork
/
diary_plants
Обзор
Документация
Войти
/
AleksWork
/
diary_plants
Код
Пакеты
0
Релизы
0
Аналитика
Безопасность
develop
src/Domain/Service/Csv/Import/GroupImporter.php
36 строк
909 B
AlekseySerov
Make optimize logic in CsvService() class
12 апр 2026, 23:37
12 апр 2026, 23:37
cc6d47a
Код
Авторство
О чём код?
<?php namespace App\Domain\Service\Csv\Import; use App\Domain\Service\GroupService; use App\Domain\Service\ModelFactory; use App\Domain\Model\Group\CreateGroupModel; class GroupImporter extends AbstractCsvImporter implements EntityImporterInterface { public function __construct( protected readonly ModelFactory $modelFactory, private readonly GroupService $groupService ) { } public function supports(string $fileName): bool { return $fileName === 'group'; } public function import(array $data): void { $model = $this->modelFactory->makeModel(CreateGroupModel::class, ...$this->map($data)); $this->groupService->create($model); } private function map(array $d): array { return [ $this->str2bool($d['is_active']), $d['title'], $this->es($d['description']) ]; } }