https://github.com/qunetol57/yii2_api_test
Тестовое задание на yii2 с использованием Swagger. Система автоматизированной работы с заявками.
https://github.com/qunetol57/yii2_api_test
docker docker-compose php8 yii-rest-api yii2 yii2-advanced yii2-swagger
Last synced: about 1 month ago
JSON representation
Тестовое задание на yii2 с использованием Swagger. Система автоматизированной работы с заявками.
- Host: GitHub
- URL: https://github.com/qunetol57/yii2_api_test
- Owner: QUNETOL57
- License: bsd-3-clause
- Created: 2023-10-09T08:24:08.000Z (over 1 year ago)
- Default Branch: master
- Last Pushed: 2023-10-11T06:42:12.000Z (over 1 year ago)
- Last Synced: 2025-02-16T09:41:47.741Z (3 months ago)
- Topics: docker, docker-compose, php8, yii-rest-api, yii2, yii2-advanced, yii2-swagger
- Language: PHP
- Homepage:
- Size: 494 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
Система автоматизированной работы с заявками. Тестовое задание на yii2 с использованием Swagger
# Краткое описание:
Любой пользователь может создать заявку.У заявок есть 3 статуса ```0 - Новая```, ```1 - В работе```, ```2 - Закрыта```.
Заявка создается с обязательным назначением менеджера. При изменении статуса заявки сохраняется история.
Если заявка находится в статусе ```В работе``` и у нее будет заполнен комментарий - она автоматически перейдет в статус```Закрыта```,
а так же создателю заявки будет отправлено письмо.Видимость заявок:
- Админ - видит все заявки
- Менеджер - видит только заявки назначенные на него
- Пользователь - видит только заявки созданные им# Развертывание проекта:
1. Клонировать репозиторий
2. Необходимо запустить билд докер образа
```
docker-composer build
```
3. Запуск докер контейнеров
```
docker-composer up -d
```
4. Необходимо зайти в контейнер backend
```
docker-composer exec backend bash
```
5. Запустить инициализацию yii и установку пакетов composer
```
php-init
composer install
```
6. Необходимо заменить файл ```common/config/main-local.php``` на ```common/config/main-local-template.php```
7. Запуск миграций
```
./yii migrate
```
8. Запуск скрипта для создания пользователей
```
./yii start/create-users
```
Скрипт создаст:
Пользователя с ролью админ (логин / пароль): ```admin``` / ```12345```
Пользователей с ролью менеджер (логин / пароль): ```manager1``` / ```12345``` , ```manager2``` / ```12345```
Пользователей с ролью юзер (логин / пароль): ```user1``` / ```12345``` , ```user2``` / ```12345```# Работа с проектом:
1. Необходимо открыть swagger, для этого перейти по ссылке http://localhost/swagger/docs/
2. В разделе "Пользователи" открыть запрос для получений токена ```/user/login```, внести данные для Basic authorization, выполнить запрос
3. Полученный токен необходимо вставить в Bearer (apiKey) авторизацию, необходимо вставлять по шаблону ```Bearer ```, например ```Bearer A4BgV7GX7Fvxw_Rz-lQ1L1TvAASN332X```