App\services\ImportService::mapCSV PHP 메소드

mapCSV() 공개 메소드

public mapCSV ( array $files ) : array
$files array
리턴 array
    public function mapCSV(array $files)
    {
        $data = [];
        foreach ($files as $entityType => $filename) {
            $class = 'App\\Models\\' . ucwords($entityType);
            $columns = $class::getImportColumns();
            $map = $class::getImportMap();
            // Lookup field translations
            foreach ($columns as $key => $value) {
                unset($columns[$key]);
                $columns[$value] = trans("texts.{$value}");
            }
            array_unshift($columns, ' ');
            $data[$entityType] = $this->mapFile($entityType, $filename, $columns, $map);
            if ($entityType === ENTITY_CLIENT) {
                if (count($data[$entityType]['data']) + Client::scope()->count() > Auth::user()->getMaxNumClients()) {
                    throw new Exception(trans('texts.limit_clients', ['count' => Auth::user()->getMaxNumClients()]));
                }
            }
        }
        return $data;
    }