Добавление нового типа сущности, добавление владельца проект в список пользователей проекта

This commit is contained in:
Kavalar 2024-02-12 22:56:40 +03:00
parent 32a7f483fb
commit 1a250c4b00
4 changed files with 26 additions and 4 deletions

View File

@ -8,6 +8,8 @@ class Entity
const ENTITY_TYPE_PROJECT = 1; const ENTITY_TYPE_PROJECT = 1;
const ENTITY_TYPE_TASK = 2; const ENTITY_TYPE_TASK = 2;
const ENTITY_TYPE_REQUEST = 3;
/** /**
* @return string[] * @return string[]
*/ */
@ -16,6 +18,7 @@ class Entity
return [ return [
self::ENTITY_TYPE_PROJECT => "Проект", self::ENTITY_TYPE_PROJECT => "Проект",
self::ENTITY_TYPE_TASK => "Задача", self::ENTITY_TYPE_TASK => "Задача",
self::ENTITY_TYPE_REQUEST => "Запрос на создание проекта",
]; ];
} }

View File

@ -88,6 +88,25 @@ class Project extends \yii\db\ActiveRecord
]; ];
} }
/**
* @param $insert
* @param $changedAttributes
* @return void
*/
public function afterSave($insert, $changedAttributes): void
{
if ($insert) {
$model = new ProjectUser();
$model->user_id = $this->owner_id;
$model->project_id = $this->id;
$model->status = 1;
if ($model->save()) {
}
}
parent::afterSave($insert, $changedAttributes);
}
/** /**
* @return ActiveQuery * @return ActiveQuery
*/ */

View File

@ -197,7 +197,7 @@ class ProjectController extends ApiController
->one(); ->one();
if (empty($projectTaskCategory)) { if (empty($projectTaskCategory)) {
throw new NotFoundHttpException('The project not found'); throw new BadRequestHttpException('This user cannot be added to the project');
} }
$projectTaskCategory->title = Yii::$app->request->post('new_title'); $projectTaskCategory->title = Yii::$app->request->post('new_title');

View File

@ -82,8 +82,8 @@ class RequestController extends ApiController
/** /**
* *
* @OA\Get(path="/request/get-request-list", * @OA\Get(path="/request/get-request-list",
* summary="Создать запрос", * summary="Получить список запросов",
* description="Метод для создания запроса, если параметр user_id не передан, то запрос создается от имени текущего пользователя.", * description="Метод для получения списка запросов, если параметр user_id не передан, то запрос создается от имени текущего пользователя.",
* security={ * security={
* {"bearerAuth": {}} * {"bearerAuth": {}}
* }, * },
@ -108,7 +108,7 @@ class RequestController extends ApiController
* ), * ),
* @OA\Response( * @OA\Response(
* response=200, * response=200,
* description="Возвращает объект Запроса", * description="Возвращает массив объектов Запроса",
* @OA\MediaType( * @OA\MediaType(
* mediaType="application/json", * mediaType="application/json",
* @OA\Schema(ref="#/components/schemas/RequestsExample"), * @OA\Schema(ref="#/components/schemas/RequestsExample"),