Две сущности: история и живой срез
В системе субаренда представлена в двух местах одновременно, и важно не путать их назначение.Период субаренды инвентаря — это запись истории: она фиксирует, что конкретная единица в конкретный промежуток времени сдавалась в субаренду определённым владельцем под определённый процент. Таких записей у одной единицы может быть много — по одной на каждый интервал действия условий.Живой кэш на самой единице инвентаря (поля «владелец» и «процент субаренды» прямо в карточке единицы) — это текущий срез: кто владелец прямо сейчас и какой процент действует сейчас. Он всегда один и отражает актуальное состояние.
Модель данных
Период субаренды инвентаря
Записи истории по умолчанию упорядочены от самых свежих к самым старым (по началу периода).
Полуоткрытый таймлайн и правило корректности
Периоды образуют таймлайн с полуоткрытыми границами: любая из дат может быть пустой. Пустое начало означает «действовало с незапамятных времён», пустой конец — «действует до сих пор». Это позволяет описать и текущий активный период (у него задано только начало), и исторический интервал (заданы обе даты), и период без явного старта. На уровне базы данных действует ограничение целостности: если заданы обе даты, начало периода обязано быть строго раньше конца. Если хотя бы одна из дат пустая, ограничение не проверяется — открытая граница разрешена всегда. Запись, где начало не раньше конца при обеих заполненных датах, сохранить нельзя.Как это используется в метриках
Отчёты по субаренде считают доход, делят его между владельцем и компанией и группируют по владельцам, единицам и отдельным начислениям. Полное описание отчётной части — деление на факт и прогноз, четыре уровня детализации, права доступа и подводные камни двойного учёта — уже опубликовано отдельно. Подробнее: «Зарплаты и субаренда сотрудников». Здесь важно объяснить только одно: по какому из двух источников (история или живой кэш) метрики определяют владельца и процент.Атрибуция: по живому кэшу, а не по истории
Ключевой момент: при расчёте дохода по единицам инвентаря и по владельцам система привязывает доход к владельцу и берёт процент из живого кэша единицы, а не из записей истории.- Список единиц в субаренде у конкретного пользователя отбирается по полю «владелец» в карточке самой единицы.
- Доля владельца считается как доход, умноженный на текущий «процент субаренды» из карточки единицы и делённый на 100.
- Доля компании считается как доход, умноженный на (100 минус текущий процент) и делённый на 100.
- Сам доход при этом делится на факт (по завершённым и долговым арендам) и прогноз (по текущим, просроченным, зарезервированным и долговым арендам) — детали в связанном разделе.
Кто попадает в отчёт
Список владельцев для сводных отчётов ограничен пользователями, которые являются администраторами текущей компании, а сама компания должна иметь признак «работает с субарендой». Если у компании этот признак не включён, отчёт по владельцам будет пустым. Историю начислений (список отдельных записей прибыли) можно посмотреть по конкретному владельцу отдельно.Полуоткрытый таймлайн в истории начислений
На уровне детальной истории (список записей прибыли по единице) каждая строка — это отрезок начисления со своими началом и концом. Такие записи как раз и опираются на полуоткрытый принцип: у каждой есть свои границы во времени и количество дней, попадающих в отрезок. Эта часть детально разобрана в связанном разделе.Права доступа
Все отчёты по субаренде используют одинаковую логику доступа: если у обращающегося пользователя есть личный признак субарендатора, ему достаточно быть аутентифицированным (он видит отчёт в режиме чтения). Иначе доступ проверяется по общим правам на объект метрик. Это позволяет показывать субарендодателю его собственные доходы, не выдавая ему полные административные права на метрики.Сводка
Особенности поведения
- Проверка корректности касается лишь пары дат внутри одной записи и не гарантирует отсутствие пересечений или разрывов между периодами одной единицы — непротиворечивость таймлайна обеспечивает только бизнес-логика.
- Сводный список владельцев ограничен администраторами текущей компании и требует у компании включённого признака работы с субарендой; иначе отчёт пуст.
- Владелец в записи истории может быть пустым, поэтому не у каждого периода есть субарендодатель.
- Доступ ко всем отчётам субаренды даётся аутентифицированному пользователю с личным признаком субарендатора в режиме чтения; иначе проверяются общие права на объект метрик.
- Доход делится на факт (завершённые и долговые аренды) и прогноз (текущие, просроченные, зарезервированные и долговые аренды), причём статус «должник» участвует в обеих группах.
Связанные страницы
Глоссарий: Субаренда
Полный перечень полей и терминов раздела субаренды.
Инвентарь и услуги (CRM)
Обзорная страница модуля инвентаря и услуг.
Инвентарь (единицы)
Отдельные единицы оборудования: статусы и состояние, пробег, страховка, авто-поля, импорт, массовое обновление, перемещение, продажа.
Продукт
Учёт однотипного инвентаря по количеству: продукты, их состояние и тарифы вместо отдельных единиц.
Комплекты (наборы)
Наборы инвентаря, сдаваемые как единое целое: состав, позиции и цены комплекта.
Тарифы и цены
Тарифы аренды по временным периодам для единиц, продуктов и комплектов инвентаря.
Доступность и расписание
Расписание занятости инвентаря и расчёт доступности с учётом заказов, склада и задач мастерской.
Услуги (сервисы)
Дополнительные платные услуги и их тарифы, публикуемые в каталоге и добавляемые к заказам.
Обслуживание и ремонт
Плановое и разовое техобслуживание инвентаря по интервалу или пробегу, с ресурсами и уведомлениями.
Инвентаризация
Проверки состояния инвентаря при выдаче и приёмке заказов, автоматически обновляющие статус единицы.