Разработка:storages/invorders — различия между версиями
Yumeneco (обсуждение | вклад) |
Yumeneco (обсуждение | вклад) |
||
(не показана 1 промежуточная версия этого же участника) | |||
Строка 13: | Строка 13: | ||
* invsetsid - id предпочтительного комплекта (при исполнении может быть предложен другой, что отражается в invexecutions, но не влияет на исходную заявку) | * invsetsid - id предпочтительного комплекта (при исполнении может быть предложен другой, что отражается в invexecutions, но не влияет на исходную заявку) | ||
* departmentid - id подразделения, которому назначено исполнение заказа (обычно - отдел-владелец комплекта) | * departmentid - id подразделения, которому назначено исполнение заказа (обычно - отдел-владелец комплекта) | ||
− | * status - | + | * status - список статусов указан в одноименном плагине рабочих процессов [[Разработка:workflows/invorders | invorders ]] |
* priority - приоритет заявки. Целое число. Чем выше число, тем выше приоритет. Может быть отрицательным. По умолчанию - 0. | * priority - приоритет заявки. Целое число. Чем выше число, тем выше приоритет. Может быть отрицательным. По умолчанию - 0. | ||
Строка 23: | Строка 23: | ||
* Вернуть информацию о комплекте вместе с массивом содержащим список и количество входящих в комплект ресурсов и объектами самих этих ресурсов | * Вернуть информацию о комплекте вместе с массивом содержащим список и количество входящих в комплект ресурсов и объектами самих этих ресурсов | ||
− | ===Обработка сигналов ($DOF->send_event()): | + | ===Обработка сигналов ($DOF->send_event()):=== |
* Прослушивание сингнал добавления уроков в расписание, получает список заказов, связанных с этим событием и вызывает метод планирования заказа по событию в storage/invexecutions | * Прослушивание сингнал добавления уроков в расписание, получает список заказов, связанных с этим событием и вызывает метод планирования заказа по событию в storage/invexecutions |
Текущая версия на 10:47, 9 февраля 2009
Содержание
Таблица в базе данных
invorders - заказы на комплекты учебных ресурсов. Ресурс может быть заказан на известный промежуток времени или бессрочно. При заказе комплекта резервируются ресурсы, входящие в состав комплекта. Если ресурсы расходуемые, после использования комплекта списывается соответствующее количество ресурса, если ресурс нерасходуемый - то после окончания использования ресурс освобождается. При заказе штучного комплекта заказчик, кроме категории ресурса, может выбрать также и конкретный комплект (например, портативный компьютер Toshiba с инвентарным номером X, а не портативный компьютер Roverbook с инвентарным номером Z). Если в число объектов, для которых могут быть заказаны ресурсы, помимо уроков в календаре, уроков в расписании на неделю, всех уроков учебного процесса, всех уроков по одному предмету/дисциплине, всех уроков по заданой теме в тематическом плане или конкретного человека, заказывающего ресурс, на заданный промежуток времени будут включены другие типы заказчиков, это изменение будет учтено в формате данного объекта, а остальная структура данных останется без изменений.
Подробный формат полей в таблице:
- repeat - флаг многократной повторяемости заказа (если он привязан к конкретному событию)
- date - дата и время подачи заявки в Unix Timestamp по UTC
- dateexec - дата и время начала исполнения заказа в Unix Timestamp по UTC если заказ исполняется независимо от внешних событий.
- duration - продолжительность заказа в секундах (обычно - один урок)
- customerid - сотрудник, подавший заявку (преподаватель, методист или администратор)
- objtype - тип объекта, к которому привязывается заявка
- objid - id объекта, к которому привязывается заявка
- invcategid - id заказанной категории пакета
- invsetsid - id предпочтительного комплекта (при исполнении может быть предложен другой, что отражается в invexecutions, но не влияет на исходную заявку)
- departmentid - id подразделения, которому назначено исполнение заказа (обычно - отдел-владелец комплекта)
- status - список статусов указан в одноименном плагине рабочих процессов invorders
- priority - приоритет заявки. Целое число. Чем выше число, тем выше приоритет. Может быть отрицательным. По умолчанию - 0.
Дополнительные методы:
- Список заказов, принадлежащих структурному подразделению, по статусу. Отсортированы по дате подачи.
- Список повторяемых заказов, исполнение которых связано с событием (в параметре передается объект с событием) с учетом заказов привязанных к шаблону в расписании, учебному процессу, дисциплине.
- Список заказов по подавшему сотруднику (необязательный параметр - статус, по умолчанию - null все статусы)
- Посчитать, сколько комплектов должно быть одолжено на момент в шаблоне расписания (день недели, вариант недели, время дня в секундах от 00:00) при условии исполнения всех заказов, прикрепленных к дисциплинам, учебным процессам и шаблонам в расписании (находит длящиеся шаблоны в расписании и считает заказы). Так же возвращает массив с id штучных комплектов в ключах и количестве заказов на них, как на предпочтительные - в значениях). Отдельно выводит список штучных комплектов, заказанных более одного раза. Количество одалживаемых счетных ресурсов, необходимых для исполнения всех этих заказов.
- Вернуть информацию о комплекте вместе с массивом содержащим список и количество входящих в комплект ресурсов и объектами самих этих ресурсов
Обработка сигналов ($DOF->send_event()):
- Прослушивание сингнал добавления уроков в расписание, получает список заказов, связанных с этим событием и вызывает метод планирования заказа по событию в storage/invexecutions