Конкретно пересмотрел логику работы. Легаси вынесена в архив
All checks were successful
Deploy MES Core / deploy (push) Successful in 13s

This commit is contained in:
2026-04-13 07:36:57 +03:00
parent 86215c9fa8
commit 28537447f8
80 changed files with 10246 additions and 684 deletions

View File

@@ -67,4 +67,45 @@ git push origin main
Если сайт по адресу `192.168.1.108` не открывается:
1. Проверь логи контейнеров: `docker compose logs -f`.
2. Убедись, что порты в `docker-compose.yml` стоят `80:80`.
3. Перезапусти всё одной командой: `docker compose up -d --build`.
3. Перезапусти всё одной командой: `docker compose up -d --build`.
---
# 👤 Роли и доступ (Django Admin)
В проекте используются **Django Groups как роли** (можно назначать несколько ролей одному пользователю).
## 1) Роли (Groups)
Имена групп должны совпадать с кодами ролей:
- `operator`
- `master`
- `technologist`
- `clerk`
- `supply`
- `prod_head`
- `director`
- `observer`
- `admin`
Важно:
- Название группы — это "код роли" и используется прямо в коде (чувствительно к регистру).
- Писать строчными латиницей, без пробелов.
- Для панели снабженца используется группа `supply` (экран `/procurement/`).
Как выдать роль пользователю:
1. Открой Django admin: `/admin/`
2. `Users` → выбери пользователя
3. Поле `Groups` → добавь нужные группы
4. `Save`
Примечание: на переходном этапе может использоваться fallback на `EmployeeProfile.role`, чтобы при деплое до раздачи групп доступ не "слетал".
## 2) Назначение станков и цехов пользователю
Станки/цеха назначаются через профиль сотрудника (Shiftflow):
1. Django admin: `/admin/`
2. `Shiftflow``Employee profiles` → выбрать профиль пользователя
3. Поля:
- `Machines` — закреплённые станки (обычно для операторов)
- `Allowed workshops` — доступные цеха (ограничение видимости/действий)
- `Is readonly` — режим "только просмотр" (удобно для руководителя/наблюдателя)
4. `Save`