'data/files/fr-prodejna.csv', ]; protected function run(array $arguments) { $znzUtil = ServiceContainer::getService(ZNZUtil::class); $inserted = 0; $notFound = 0; foreach (FileUtil::loadCSV($arguments['file'], ';') as $key => $item) { if ($key === 0) { continue; } $userId = sqlQueryBuilder() ->select('id') ->from('users') ->where(Operator::equals(['email' => $item[2]])) ->execute()->fetchOne(); if (!$userId) { $this->log('User not found: '.$item[2]); $notFound++; continue; } if (!($groupId = $znzUtil->getMapping(UserSynchronizer::$typeGroups, $item[6]))) { $this->log('User group not found: '.$item[6]); continue; } try { sqlQueryBuilder() ->insert('users_groups_relations') ->directValues(['id_user' => $userId, 'id_group' => $groupId]) ->execute(); } catch (UniqueConstraintViolationException $e) { } $inserted++; } $this->log('Inserted user groups: '.$inserted); $this->log('Not found users: '.$notFound); } } return ImportUserGroupsRelationsScript::class;