Модуль manufacture
Путь: app/manufacture/
Django app: app.manufacture
Назначение
Управляет производственными процессами: графики смен, выработка, расчёт зарплат, HACCP-журналы.
Ключевые модели
ActualWorkSchedule
python
class ActualWorkShedule(Model):
"""Фактический график работы сотрудника"""
employee = FK(User)
date = DateField()
shift_type = CharField(choices=[
('day', 'Дневная'),
('night', 'Ночная'),
('day_off', 'Выходной'),
])
hours_worked = DecimalField()
is_approved = BooleanField() # утверждён руководителемПроизводственный календарь
Интеграция с isdayoff.ru API:
- Загрузка производственного календаря на год
- Определение праздников и переносов
- Расчёт нормы часов по графику
Сервисный слой
app/manufacture/service/:
- Расчёт нормы рабочего времени
- Начисление заработной платы по выработке
- Расчёт смен при переходе на тип графика 4
Celery-задачи
post_save_work_shifts
Запускается после сохранения смены (signal: post_save):
- Пересчитывает итоговые часы за период
- Обновляет
ActualWorkSchedule - Уведомляет руководителя об изменениях
API
| Endpoint | Описание |
|---|---|
GET /api/v2/manufacture/schedule/ | Графики смен |
GET /api/v2/manufacture/positions/ | Производственные позиции |
GET /api/v2/manufacture/work-orders/ | Заказы на производство |
GET /api/v2/reports/production/ | Отчёты по производству |
HACCP-журналы
app.haccp_journals — журналы контроля критических точек (HACCP):
| Журнал | Назначение |
|---|---|
| Температурный контроль | Фиксация температур в зонах |
| Санитарная обработка | График и факт дезинфекции |
| Входной контроль сырья | Проверка при приёмке |
ADR
- ADR 0002 — Производственный календарь isdayoff
- ADR 0003 — Оплата по календарю без переработок
- ADR 0004 — Адаптер производственного календаря
- ADR 0005 — Интеграция расчёта смен type=4
Связи
app.document— заказы на производство, списание материаловapp.company_structure— сотрудники и отделыapp.qcheck— контроль качества продукции