/
v.bolshakov
/
AIEcosystem-Testing
Обзор
Документация
Войти
/
v.bolshakov
/
AIEcosystem-Testing
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
dev
api/controllers/LanguageController.php
70 строк
2 KB
Developer
Initial commit
03 авг 2026, 17:43
03 авг 2026, 17:43
7433917
Код
Авторство
О чём код?
<?php namespace api\controllers; use api\components\ApiException; use api\controllers\base\BaseController; use common\filter\LanguageFilter; use common\kdf\KLanguage; use common\search\LanguageSearch; use Yii; use yii\helpers\ArrayHelper; use yii\helpers\UnsetArrayValue; /** * Работа с моделью KLanguage * @see KLanguage * * @author Dmitry E. Semenov <sde.tomsk@gmail.com> * @copyright Self (c) 2024 */ class LanguageController extends BaseController { /** * {@inheritDoc} */ public function actions() { return ArrayHelper::merge(parent::actions(), [ 'index' => new UnsetArrayValue(), ]); } /** * @SWG\Get(path="/language", * tags = {"system"}, * summary = "Get system language List", * produces = {"application/json", "application/xml"}, * @SWG\Parameter(in = "header", name = "hub-key", required = true, type = "string", description = "User Hub ID"), * @SWG\Parameter(in = "query", name = "page", type = "integer", description = "Page index"), * @SWG\Parameter(in = "query", name = "per-page", type = "integer", description = "Page size"), * @SWG\Parameter(in = "query", name = "sort", type = "string", description = "Multiple sort"), * @SWG\Response(response = 200, description = "OK"), * @SWG\Response(response = 422, description = "Unprocessable entity"), * @SWG\Response(response = 500, description = "Internal Server Error") * ) */ public function actionIndex() { $requestParams = Yii::$app->getRequest()->getBodyParams(); if (empty($requestParams)) { $requestParams = Yii::$app->getRequest()->getQueryParams(); } $searchModel = new LanguageSearch(); $filter = new LanguageFilter(); $filter->setSearchModel($searchModel); $filter->load($requestParams, ''); $filter->execute(); if ($filter->hasErrors()) { $message = implode(', ', $filter->getErrorSummary(false)); $exception = new ApiException(422, $message); $exception->errors = $filter->errors; throw $exception; } return $searchModel->search(Yii::$app->request->queryParams); } }