Понятия
Модели и поля
Лимит компании
Лимит по конкретному типу ресурса для одной компании: сколько разрешено (платно и бесплатно) и сколько фактически используется. Уникальна пара (компания, тип); при сохранении лимит подтягивается минимум до бесплатного лимита; срок действия обязателен; кэш лимитов сбрасывается по сигналу сохранения.Цена лимита за период
Цена единицы лимита для типа ресурса и длительности периода; глобальная (без компании) либо персональная для конкретной компании. Уникальна тройка (компания, тип, месяцы); при пустой компании цена глобальная, персональная имеет приоритет; поддерживаемые периоды 1/3/6/12 месяцев.Менеджер лимитов с ценой
Менеджер лимитов, который аннотирует каждый лимит полем цены, подбирая её из цен за период с приоритетом персональной цены над глобальной. Цена равна нулю, если тариф не настроен; подзапрос сортирует по компании с пустыми значениями в конце, чтобы персональная строка была первой.Получение цены лимита
Функция, возвращающая цену лимита для компании, типа и длительности периода с приоритетом персональной цены над глобальной. Бросает ошибку при неподдерживаемом периоде и при отсутствии настроенной цены.Пересчёт лимита (задача)
Фоновая задача, пересчитывающая фактическое количество ресурсов компании (сотрудники, точки, авто/самокаты/мотоциклы), обновляющая текущее количество и уведомляющая администратора. Работает только внутри контекста компании; при пустом типе пересчитывает все типы подряд; шлёт web-уведомление и уведомление администратора при росте по сотрудникам, точкам аренды и автомобилям.Статусы и справочники
Тип лимита
- Сотрудники
- Точки аренды
- Автомобили
- Самокаты
- Мотоциклы