# TODO (MES_Core) ## Склады (UI) - Доработать сортировку по дате «Поступление» (стабильно сортировать как datetime, а не как текст). - По клику на строку открывать карточку «Единица на складе» (read-only для observer, редактирование для admin/technologist/master/clerk): - правка: сделка, давальческий, размеры (лист/хлыст), количество, примечание (если добавим) - отображение: история перемещений/приходов/отгрузок (если потребуется). - Реализовать инвентаризацию складов участков/цехов: - сценарий: фактический пересчёт, ввод корректировок (излишек/недостача), фиксация причины - хранить историю инвентаризаций и разницы по позициям - права: master/clerk/admin, read-only для observer ## Доступы (UI) - Доработать видимость и действия для разных ролей/цехов: фильтрация по allowed_workshops, замещение, read-only руководитель. ## Списание (UI) - Доработать страницу «Списание»: фильтры, удобная сводка по материалам/изделиям и отметка «внесено в 1С». ## Потребность (Материалы) - Пересмотреть расчёт потребности: уйти от м²/мм, формировать пачки DXF по материалам/толщинам и прокат по длинам (для nesting/ручного расчёта). ## Изделия (Сборка) - Проработать интерфейс сборки изделия: редактирование состава, паспорт узла, маршруты, сварные швы, быстрые переходы по уровням. # TODO: Миграция сменных заданий на WorkItem - WorkItem как единая сущность сменных назначений: - operation/workshop обязательны; machine — опционально - plan/done/status/date — общие поля - запись создаётся в planning_deal (кнопка «В смену») - Переход от Item к WorkItem: - Экраны «Реестр сменных заданий» и «Закрытие смены» - читать и отображать WorkItem - для резки предусмотреть учёт списаний/остатков; временно можно дублировать Item ← WorkItem (мост) - Data‑migration: - перенести исторические Item → WorkItem (deal, entity, date, machine, qty_plan, qty_fact, status) - восстановить operation/workshop по EntityOperation + DealEntityProgress/историческим правилам - Постепенное отключение Item: - заменить все места создания Item на WorkItem - после стабилизации убрать Item из UI и сервисов - Прогресс/план по сделке: - верхняя таблица «Позиции сделки»: Надо / Запущено / Осталось (по DealBatchItem.started_qty) - факт (Сделано) — от WorkItem.quantity_done на последней операции техпроцесса - Снабжение: - покупное/литьё/аутсорс — не создавать ProductionTask, вести учёт как ProcurementRequirement - вывести сводку потребностей для снабженца (группировка по сделке/позиции/сроку) - Логи и диагностика: - единый логгер `mes` для всех сервисных действий (включая explode_roots_additive и start_batch_item_production)