generated from Sithas/conan_template
UseCase редактирования дня в дневнике
This commit is contained in:
@@ -65,7 +65,6 @@
|
||||
##### Требования к валидации:
|
||||
* login: 3-50 символов, ^[A-Za-z0-9_]+$, уникальное значение
|
||||
* password: ≥ 5 символов
|
||||
|
||||
##### Response - 201 - Created
|
||||
```
|
||||
{
|
||||
@@ -75,7 +74,6 @@
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
##### Errors
|
||||
* `409 USER_EXISTS` — пользователь с таким логином уже есть(`B1`)
|
||||
* `422 VALIDATION_FAILED` — пустой логин/неправильный пароль(`B2`)
|
||||
@@ -131,12 +129,10 @@
|
||||
"token": af32df3bas739f272bd109c823
|
||||
}
|
||||
```
|
||||
|
||||
##### Errors
|
||||
* `401 BAD_CREDENTIALS` — неверный логин/пароль (B1)
|
||||
* `422 VALIDATION_FAILED` — пустые поля (B2)
|
||||
* `400 BAD_REQUEST` — сервер не смог десереализовать JSON
|
||||
|
||||
#### Logout-Request
|
||||
```
|
||||
{
|
||||
@@ -179,7 +175,6 @@ null
|
||||
### 8.API-Маршруты
|
||||
* `GET /api/v1/User/Diaries` - получить кусок дневника пользователя (требует Authorization: Bearer <token>) query-параметры: from (int, по умолч. 0), count (int, по умолч. 20)
|
||||
* `GET /api/v1/User/TreatmentSchemes` - получить список схем пользователя (требует Authorization: Bearer <token>) query-параметры: from (int, по умолч. 0), count (int, по умолч. 20)
|
||||
|
||||
### 9.Контракт
|
||||
#### Diaries-Request
|
||||
##### Response - 200 - OK
|
||||
@@ -222,11 +217,9 @@ null
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
##### Errors
|
||||
* `401 TOKEN_REQUIRED|TOKEN_EXPIRED` — токен недействителен, либо отсутствует
|
||||
* `500 DATA_LOAD_FAILED` — ошибка при загрузке данных (`B1`)
|
||||
|
||||
#### TreatmentSchemes-Request
|
||||
##### Response - 200 - OK
|
||||
```
|
||||
@@ -249,11 +242,9 @@ null
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
##### Errors
|
||||
* `401 TOKEN_REQUIRED|TOKEN_EXPIRED` — токен недействителен, либо отсутствует
|
||||
* `500 DATA_LOAD_FAILED` — ошибка при загрузке данных (B1)
|
||||
|
||||
### 10. Используемые сущности ДБ
|
||||
* diaries(uuid(PK), time , mania_level , depression_level , mood_level , activity_level , appetite_level , dream_level , anxiety_level, user_treatment_schemes_uuid)
|
||||
* mania(level(PK))
|
||||
@@ -310,7 +301,6 @@ null
|
||||
##### Требования к валидации:
|
||||
* Все поля, кроме `comment` обязательны к заполнению
|
||||
* `user_treatment_schemes_uuid` должен указывать на существующую схему лечения
|
||||
|
||||
##### Response - 201 - Created
|
||||
```
|
||||
{
|
||||
@@ -341,13 +331,11 @@ null
|
||||
},
|
||||
}
|
||||
```
|
||||
|
||||
##### Errors
|
||||
* `400 BAD_REQUEST` — отсутствуют обязательные поля
|
||||
* `400 BAD_REQUEST` — сервер не смог десереализовать JSON
|
||||
* `422 UNPROCECCABLE_ENTITY` - Во `time` значение размерностей ниже, чем день, должно быть равно 0
|
||||
* `422 TREATMENT_SCHEME_IS_NOT_EXISTS` - такой схемы лечения болезни не существует
|
||||
|
||||
### 10. Используемые сущности ДБ
|
||||
* diaries(uuid(PK), time , mania_level , depression_level , mood_level , activity_level , appetite_level , dream_level , anxiety_level, user_treatment_schemes_uuid)
|
||||
* mania(level(PK))
|
||||
@@ -385,8 +373,6 @@ null
|
||||
* Пользователь изменил запись соглсано условиям выше в БД
|
||||
### 8.API-Маршруты
|
||||
* `PUT /api/v1/Auth/Diaries/:diary_guid` - Изменение записи в дневнике
|
||||
|
||||
|
||||
### 9.Контракт
|
||||
#### Diaries-Request
|
||||
```
|
||||
@@ -408,7 +394,6 @@ null
|
||||
##### Требования к валидации:
|
||||
* Все поля, кроме `comment` обязательны к заполнению
|
||||
* `user_treatment_schemes_uuid` должен указывать на существующую схему лечения
|
||||
|
||||
##### Response - 201 - Updated
|
||||
```
|
||||
{
|
||||
@@ -444,7 +429,6 @@ null
|
||||
* `400 BAD_REQUEST` — сервер не смог десереализовать JSON
|
||||
* `422 UNPROCECCABLE_ENTITY` - `time` не должно быть изменено
|
||||
* `422 TREATMENT_SCHEME_IS_NOT_EXISTS` - такой схемы лечения болезни не существует
|
||||
|
||||
### 10. Используемые сущности ДБ
|
||||
* diaries(uuid(PK), time , mania_level , depression_level , mood_level , activity_level , appetite_level , dream_level , anxiety_level, user_treatment_schemes_uuid)
|
||||
* mania(level(PK))
|
||||
@@ -478,22 +462,21 @@ null
|
||||
* Целевая запись отсутствует в БД
|
||||
### 8.API-Маршруты
|
||||
* `DELETE /api/v1/Auth/Diaries/:diary_guid` - удаление записи в дневнике
|
||||
|
||||
### 9.Контракт
|
||||
#### Diaries-Request
|
||||
##### Требования к валидации:
|
||||
* `:diary_guid` должен указывать на существующую страницу дневника
|
||||
|
||||
##### Response - 204 - Deleted
|
||||
```
|
||||
null
|
||||
```
|
||||
##### Errors
|
||||
* `404 NOT_FOUND` - такой схемы лечения болезни никогда не существовало или она уже удалена
|
||||
|
||||
### 10. Используемые сущности ДБ
|
||||
* diaries(uuid(PK))
|
||||
|
||||
|
||||
|
||||
## UseCase №7
|
||||
### 1.Название: Создание схемы лечения
|
||||
### 2.Актор: Пользователь
|
||||
@@ -511,3 +494,64 @@ null
|
||||
* Схему нельзя создать в таком виде. На попытку создать схему выходит окно ошибок
|
||||
### 7.Постусловия
|
||||
* Схема создана и доступна для выбора в качестве лечения
|
||||
### 8.API-маршруты
|
||||
* `POST /api/v1/TreatmentScheme` - создание схемы лечения
|
||||
### 9.Контракт
|
||||
#### Diaries-Request
|
||||
```
|
||||
{
|
||||
"treatment_name": "Bipolar I Scheme Urgent",
|
||||
"instructions": "Схема для быстрого и жесткого купирования психозов. Аминазин пить каждый день.",
|
||||
"medications": [
|
||||
{
|
||||
"uuid": "eda5a5f7-167a-44b9-900d-c5c6acfc249b",
|
||||
"name": "Aminazin",
|
||||
"dose": 100,
|
||||
"unit": "mg",
|
||||
"is_urgent": true
|
||||
},
|
||||
{
|
||||
"uuid": "eda5a5f7-167a-44b9-900d-c5c6acfc249b",
|
||||
"name": "Haloperidol",
|
||||
"dose": 15,
|
||||
"unit": "mg",
|
||||
"is_urgent": false
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
##### Требования к валидации:
|
||||
* `treatment_name` обязателен к заполнению
|
||||
* `medications` должен содержать хотя бы одно лекарство
|
||||
##### Response - 200 - Updated
|
||||
```
|
||||
{
|
||||
"uuid": "eda5a5f7-167a-44b9-900d-c5c6acfc249b"
|
||||
"treatment_name": "Bipolar I Scheme Urgent",
|
||||
"instructions": "Схема для быстрого и жесткого купирования психозов. Аминазин пить каждый день.",
|
||||
"medications": [
|
||||
{
|
||||
"uuid": "eda5a5f7-167a-44b9-900d-c5c6acfc249b",
|
||||
"name": "Aminazin",
|
||||
"dose": 100,
|
||||
"unit": "mg",
|
||||
"is_urgent": true
|
||||
},
|
||||
{
|
||||
"uuid": "eda5a5f7-167a-44b9-900d-c5c6acfc249b",
|
||||
"name": "Haloperidol",
|
||||
"dose": 15,
|
||||
"unit": "mg",
|
||||
"is_urgent": false
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
##### Errors
|
||||
* `400 BAD_REQUEST` — сервер не смог десереализовать JSON
|
||||
* `400 BAD_REQUEST` — Обязательные поля заполнены неправильно
|
||||
* `409 SCHEME_ALREADYEXISTS` - такая схема уже существует
|
||||
### 10. Используемые сущности ДБ
|
||||
* user_treatment_schemes(uuid, user_uuid, treatment_name, instructions)
|
||||
* medications(uuid, name, dose, unit, is_urgent)
|
||||
* treatment_schemes(user_treatment_schemes_uuid, medication_uuid)
|
||||
|
||||
Reference in New Issue
Block a user