Если пациент докупил процедуры и в CRM появилось ещё одно оплаченное коммерческое предложение, план лечения должен учитывать доступные услуги из обоих документов. При этом уже проведённые процедуры должны сохранить свои связи с оплатой.
В приложении для клиники Ратинова мы доработали этот сценарий: обычные свободные оплаченные единицы распределяются автоматически, а наличие нескольких КП само по себе больше не требует ручной сверки каждой будущей процедуры. Обновление от 28 сентября продолжает работу, описанную в кейсе клиники.
Откуда возникала ручная работа
Одна услуга может встречаться в нескольких предложениях. По её названию нельзя понять, из какого документа расходовать конкретную единицу. Дополнительную сложность создают повторения по дням и зонам: одинаковая услуга в таблице может соответствовать разным назначениям.
До доработки наличие нескольких подходящих КП приводило к предложению вручную связать будущие процедуры с товарными единицами. Для обычной докупки это добавляло действия даже тогда, когда свободных оплаченных услуг было достаточно.
Как работает распределение
Приложение собирает доступные единицы услуг из связанных предложений и учитывает оплату, возвраты и уже сохранённые назначения. Каждое назначение имеет устойчивую связь с конкретной товарной единицей.
Сохранённые связи остаются на месте. Для свободных единиц используется определённый порядок распределения, поэтому простое повторное открытие таблицы не должно произвольно менять источник оплаты.
Это правило относится к обычным будущим процедурам. Неоднозначная старая история требует отдельной проверки: автоматическое распределение новых назначений не восстанавливает отсутствующий день или зону прошлой процедуры.

Что делает медсестра
Сотрудник открывает нужный день и оплачиваемую процедуру. Если подходящая единица уже определена автоматически, форма проведения открывается без дополнительного выбора КП и товарной единицы.
Перед записью выполнения сервер повторно проверяет, можно ли использовать выбранную единицу. Само отображение доступной ячейки не заменяет проверку в момент проведения: за время работы другой сотрудник мог изменить состояние курса.
Что проверили после обновления
На проверенной рабочей карточке с несколькими КП до исправления было 56 кнопок сверки. После обновления для того же сценария таких кнопок не осталось. В распределении было 75 назначений без повторного использования одной и той же единицы.
Также проверили открытие оплаченной ячейки: форма появилась без ручного выбора источника. Её закрыли без проведения. Эти результаты относятся к конкретной проверке, а не ко всем возможным комбинациям документов.
Когда сверка всё ещё нужна
Ручная проверка остаётся полезной, если старая запись не связана с точным назначением, сведения противоречат друг другу или нет подтверждённой доступной оплаты. Смысл доработки состоит в том, чтобы обычная докупка не превращала каждое следующее проведение в разбор документов.
Для похожего процесса сначала стоит проверить три ситуации: докупку той же услуги, возврат части курса и повторяющиеся назначения по разным зонам. В исходном кейсе показана общая схема, на которой построен этот учёт.