refactor: align frontend with FSD architecture
This commit is contained in:
@@ -576,12 +576,12 @@ Query params:
|
||||
Страница имеет четыре серверных состояния. Они отличаются составом данных, но используют один и тот же
|
||||
endpoint `/api/v1/competence-map/analytics/`.
|
||||
|
||||
| `association_type` | KPI | `main_block.type` | `region_ranking` | `top_industries.mode` | `trend_block` | `employee_stats` |
|
||||
|---|---|---|---|---|---|---|
|
||||
| `all` | 4 карточки по всем объединениям | `all_associations_composition` | 3 метрики по типам объединений | `stacked_by_association_type` | `opk_participation_by_year` | `null` |
|
||||
| `sez` | 4 карточки по ОЭЗ | `sez_types_and_priority_directions` | ОЭЗ + организации ОПК | `single_association_type` | `null` | сотрудники ОПК-резидентов ОЭЗ и сотрудники ОЭЗ |
|
||||
| `technoparks` | 4 карточки по технопаркам | `technopark_area_distribution` | технопарки + организации ОПК | `single_association_type` | `null` | сотрудники ОПК-резидентов технопарков и их доля |
|
||||
| `clusters` | 4 карточки по кластерам | `cluster_specializations` | кластеры + организации ОПК | `single_association_type` | `cluster_creation_dynamics` | `null` |
|
||||
| `association_type` | KPI | `main_block.type` | `region_ranking` | `top_industries.mode` | `trend_block` | `employee_stats` |
|
||||
| ------------------ | ------------------------------- | ----------------------------------- | ------------------------------ | ----------------------------- | --------------------------- | ----------------------------------------------- |
|
||||
| `all` | 4 карточки по всем объединениям | `all_associations_composition` | 3 метрики по типам объединений | `stacked_by_association_type` | `opk_participation_by_year` | `null` |
|
||||
| `sez` | 4 карточки по ОЭЗ | `sez_types_and_priority_directions` | ОЭЗ + организации ОПК | `single_association_type` | `null` | сотрудники ОПК-резидентов ОЭЗ и сотрудники ОЭЗ |
|
||||
| `technoparks` | 4 карточки по технопаркам | `technopark_area_distribution` | технопарки + организации ОПК | `single_association_type` | `null` | сотрудники ОПК-резидентов технопарков и их доля |
|
||||
| `clusters` | 4 карточки по кластерам | `cluster_specializations` | кластеры + организации ОПК | `single_association_type` | `cluster_creation_dynamics` | `null` |
|
||||
|
||||
Требования:
|
||||
|
||||
@@ -2287,16 +2287,16 @@ Backend должен гарантировать:
|
||||
|
||||
### Status code matrix
|
||||
|
||||
| Status | Когда возвращается |
|
||||
|---|---|
|
||||
| `200 OK` | Успешный ответ, включая валидные фильтры без данных. |
|
||||
| `304 Not Modified` | Conditional GET по `If-None-Match` или `If-Modified-Since`, если представление не изменилось. |
|
||||
| `400 Bad Request` | Некорректный query param, неизвестный query param, повтор параметра, неверный формат значения. |
|
||||
| `401 Unauthorized` | Пользователь не аутентифицирован. |
|
||||
| `403 Forbidden` | Пользователь аутентифицирован, но не имеет доступа к странице или разделу. |
|
||||
| `429 Too Many Requests` | Превышен rate limit. |
|
||||
| `500 Internal Server Error` | Непредвиденная ошибка backend-а. |
|
||||
| `503 Service Unavailable` | Временная недоступность сервиса или источника аналитических данных. |
|
||||
| Status | Когда возвращается |
|
||||
| --------------------------- | ---------------------------------------------------------------------------------------------- |
|
||||
| `200 OK` | Успешный ответ, включая валидные фильтры без данных. |
|
||||
| `304 Not Modified` | Conditional GET по `If-None-Match` или `If-Modified-Since`, если представление не изменилось. |
|
||||
| `400 Bad Request` | Некорректный query param, неизвестный query param, повтор параметра, неверный формат значения. |
|
||||
| `401 Unauthorized` | Пользователь не аутентифицирован. |
|
||||
| `403 Forbidden` | Пользователь аутентифицирован, но не имеет доступа к странице или разделу. |
|
||||
| `429 Too Many Requests` | Превышен rate limit. |
|
||||
| `500 Internal Server Error` | Непредвиденная ошибка backend-а. |
|
||||
| `503 Service Unavailable` | Временная недоступность сервиса или источника аналитических данных. |
|
||||
|
||||
Для collection/report endpoint-ов не использовать `404 Not Found`, если path существует, но по валидным фильтрам
|
||||
нет данных. В этом случае нужен `200 OK` с пустыми массивами.
|
||||
|
||||
Reference in New Issue
Block a user