> ## Documentation Index
> Fetch the complete documentation index at: https://docs.yume.cloud/llms.txt
> Use this file to discover all available pages before exploring further.

# Глоссарий: Доступность и расписание

> Справочник моделей, менеджеров, фоновой задачи и статусов, из которых складывается расчёт доступности и занятости единиц инвентаря.

Справочник к странице [«Доступность инвентаря»](/ru/logic/inventory/availability).

## Понятия

| Понятие                              | Значение                                                                                                                             |
| ------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------ |
| Расписание инвентаря                 | Денормализованная запись занятости единицы на конкретный период по конкретной аренде; быстрый индекс для расчёта доступности.        |
| Менеджер единиц (расчёт доступности) | Кастомный менеджер, чьи методы вычисляют статус и доступность единиц по расписанию, состоянию, складу, задачам мастерской и продаже. |
| Менеджер расписания                  | Менеджер записей расписания; аннотирует каждую запись вычисляемым статусом единицы.                                                  |
| Фоновая задача обновления расписания | Задача, пересобирающая записи расписания для одной аренды из её позиций.                                                             |
| Статус единицы (вычисляемый)         | Оперативный статус единицы, вычисляемый на лету и не хранящийся в базе.                                                              |
| Статус выдачи в расписании           | Признак того, выдана ли уже единица клиенту в рамках записи расписания.                                                              |
| Статус аренды                        | Статус заявки/аренды, определяющий, попадает ли позиция в расписание и как влияет на занятость.                                      |

## Модели и поля

### Расписание инвентаря

*Денормализованная запись занятости единицы инвентаря на конкретный период по конкретной аренде; служит быстрым индексом для расчёта доступности. Одна строка = одна единица инвентаря в одной аренде; пересобирается из позиций аренды фоновой задачей, а не редактируется вручную.*

**Идентификация**

| Поле                 | Тип  | Описание                          |
| -------------------- | ---- | --------------------------------- |
| Идентификатор (UUID) | UUID | Первичный ключ записи расписания. |

**Связи**

| Поле                       | Тип   | Описание                                                                                    |
| -------------------------- | ----- | ------------------------------------------------------------------------------------------- |
| Единица инвентаря          | связь | Единица оборудования, чью занятость описывает запись.                                       |
| Продукт                    | связь | Продукт (количественный учёт), к которому относится единица; заполняется по данным единицы. |
| Точка проката              | связь | Точка проката единицы; используется для фильтрации расписания по правам сотрудника.         |
| Аренда (заявка)            | связь | Заявка/аренда, из-за которой единица занята в этот период.                                  |
| Позиция инвентаря в аренде | связь | Конкретная строка единицы внутри заявки — источник данных периода.                          |

**Состояние**

| Поле                   | Тип          | Описание                                                                                                   |
| ---------------------- | ------------ | ---------------------------------------------------------------------------------------------------------- |
| Статус выдачи          | перечисление | Выдана единица клиенту или ещё нет; зависит от факта выдачи.                                               |
| Статус аренды (снимок) | перечисление | Копия статуса заявки (бронь/в аренде/просрочка/должник) на момент пересборки; по нему считается занятость. |

**Сроки**

| Поле           | Тип        | Описание                                                                   |
| -------------- | ---------- | -------------------------------------------------------------------------- |
| Начало периода | дата/время | Начало занятости: фактическое начало выдачи, иначе плановое начало аренды. |
| Конец периода  | дата/время | Конец занятости: фактический возврат, иначе плановый конец аренды.         |

### Менеджер единиц (расчёт доступности)

*Кастомный менеджер единиц инвентаря: методы вычисляют статус и доступность единиц по расписанию, состоянию, складу, задачам мастерской и продаже. Аннотирует статус на лету; учитывает буфер между бронями.*

| Поле           | Тип   | Описание                                                                                                                                                                                             |
| -------------- | ----- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| С доступностью | метод | Аннотирует статус единицы с учётом брони, ремонта, склада, списания и продажи. Из задач мастерской учитываются только открытые задачи на этапах с признаком «Занимать инвентарь» и задачи без этапа. |
| По расписанию  | метод | Исключает единицы, занятые в интервале, проданные, на складе или отключённые. Задачи мастерской не учитывает.                                                                                        |
| Со статусом    | метод | Аннотирует статус без учёта арендного расписания; задачи мастерской отбираются по тому же признаку «Занимать инвентарь».                                                                             |

### Менеджер расписания (со статусом)

*Менеджер записей расписания; аннотирует каждую запись вычисляемым статусом единицы (склад, ремонт, поломка, продажа, отключение). Статус определяется каскадом условий: списание → отключение → склад → ремонт мастерской → поломка → продажа → свободна.*

### Фоновая задача обновления расписания

*Задача, пересобирающая записи расписания для одной аренды. Сравнивает текущие записи с актуальными позициями заявки и делает вставки/обновления/удаления атомарно.*

## Статусы и справочники

### Статус единицы (вычисляемый)

* Свободна
* Забронирована
* В аренде
* Сломана
* Просрочена
* Отключена/удалена
* Продана
* На ремонте
* Списана
* На складе
* На доставке
* Возврат с доставки

### Статус выдачи в расписании

* Ожидает выдачи
* Выдана

### Статус аренды

* Заявка
* Забронирована
* В аренде
* Отменена
* Завершена
* Должник
* Просрочена
