Files
econom/goals.md
brusnitsyn fb2e6c58e3
Some checks failed
linter / quality (push) Has been cancelled
tests / ci (8.3) (push) Has been cancelled
tests / ci (8.4) (push) Has been cancelled
tests / ci (8.5) (push) Has been cancelled
first commit
2026-04-06 00:06:00 +09:00

6.3 KiB
Raw Permalink Blame History

Проект: econom-calculator Стек: Laravel 13, PHP 8.3, Inertia.js v3, Vue 3, Wayfinder, Pest, Tailwind v4.

Цель проекта: Перенести Excel-логику в веб-приложение. Конечный целевой отчет — лист АНАЛИЗ.

Что выяснили по Excel:

  • Итог книги — лист АНАЛИЗ.
  • Расход-2026 — отдельный ручной ввод расхода медикаментов.
  • 2026 не является прямым автогенератором Расход-2026.
  • Более вероятная логика листа 2026:
    • службы/отделения вводят, сколько услуг они оказали другим отделениям,
    • у услуги есть стоимость,
    • затем по получателям считаются затраты,
    • эти затраты попадают в АНАЛИЗ.
  • То есть правильная модель для аналога 2026:
    • отделение-исполнитель
    • отделение-получатель
    • услуга
    • количество
    • цена
    • сумма

Что уже реализовано:

  • Раздел Справочники -> Отделения
  • Раздел Отчеты -> Периоды
  • Раздел Отчеты -> Объемные показатели
  • Раздел Отчеты -> Расход медикаментов
  • Раздел Отчеты -> Анализ

Как сейчас устроена бизнес-модель:

  1. report_periods
  • период по команде (team_id, year, month, status)
  • статус: draft / approved
  1. service_catalogs
  • каталог услуг
  • поля:
    • code
    • name
    • unit
    • default_price
    • sort_order
    • is_active
  1. service_entries
  • журнал оказанных услуг
  • поля:
    • report_period_id
    • service_catalog_id
    • provider_department_id
    • recipient_department_id
    • quantity
    • unit_price
  1. medication_expense_rows
  • строка расхода медикаментов на период + отделение
  1. medication_expense_values
  • детализация расхода по:
    • источнику финансирования
    • категории расхода

Справочники расхода медикаментов:

  • funding_source:
    • oms
    • budget
    • paid
    • vmp_oms
    • vmp_budget
  • expense_category:
    • alcohol
    • narcotic
    • solutions
    • medicines
    • dressing

Как сейчас должен работать пользовательский поток:

  1. Создать отделения и профили отделений.
  2. Создать период, например Февраль 2026.
  3. В Объемные показатели:
  • выбрать период
  • выбрать отделение-исполнитель
  • выбрать услугу
  • ввести по каждому отделению-получателю:
    • количество
    • цену
  • система считает сумму как количество × цена
  1. В Расход медикаментов:
  • выбрать период
  • выбрать отделение
  • ввести первичные суммы по сетке:
    • источник финансирования
    • категория расхода
  1. В Анализ:
  • выбрать период
  • получить по каждому отделению:
    • услуги и затраты по ним
    • общий итог по услугам
    • расход медикаментов
    • итоговые расчетные поля

Что сейчас считает Анализ:

  • входящие услуги по отделению-получателю
  • затраты по каждой услуге
  • общий итог по услугам
  • расход без перевязки
  • перевязка / ИМН
  • общий расход медикаментов
  • расход медикаментов без бюджета

Что НЕ сделано:

  • Приемник не подключен
  • зарплата не подключена
  • нет полной копии всех строк и служебных блоков Excel
  • нет полной сверки с реальным месяцем Excel
  • нет импорта из Excel
  • нет итоговых служебных групп, как в Excel

Что важно технически:

  • Новая схема уже переосмыслена под service_catalogs + service_entries
  • Старую упрощенную схему operational_metric_catalogs + operational_values лучше не возвращать
  • Анализ должен дальше развиваться именно от модели услуг, а не от абстрактных показателей

Проблемы/ограничения окружения:

  • Feature-тесты не запускаются, потому что в окружении нет pdo_sqlite
  • Unit-тесты проходили
  • Если миграции уже применялись на старой версии схемы, может потребоваться php artisan migrate:fresh

Что стоит проверить первым делом в новом чате:

  1. Текущее состояние миграций и моделей реально соответствует service_catalogs/service_entries
  2. Маршруты и Inertia-страницы не остались на старых operational_* сущностях
  3. Анализ действительно читает услуги как затраты по получателям
  4. Нужно ли сразу добавлять сверку с конкретным кейсом:
  • КДЛ
  • Гематологическое
  • февраль
  • 2471 услуг

Следующий логичный шаг:

  • пройти по текущему коду и проверить, что весь проект консистентно переведен на модель услуг,
  • потом взять 1 реальный кейс из Excel и вручную сверить расчет в UI и в Анализе.