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