Разработка:storages/teachers
Плагин | |
Название | teachers |
Тип | storages |
Содержание
- 1 Таблица в базе данных
- 2 Дополнительные методы:
- 2.1 remove_programmitem_from_appointment($appointmentid, $programmitemid, $departmentid=null)
- 2.2 remove_teacher($id)
- 2.3 add_teacher($teacher)
- 2.4 safe_insert($dataobject, $quiet=false)
- 2.5 safe_update($dataobject, $id, $quiet=false)
- 2.6 insert_possible($dataobject)
- 2.7 update_possible($dataobject, $id=null)
- 2.8 get_available_pitems_for_appointment($appointmentid)
- 2.9 get_appointment_pitems($appointmentid)
- 3 События
Таблица в базе данных
teachers - Связь должностей с преподаваемыми дисциплинами.
Подробный формат полей в таблице:
- appointmentid - id связи должности с табельным номером в таблице appointments
- programmitemid - id дисциплины в таблице programmitems (таблица programmitems)
- worktime - ставка в часах/неделю,
- departmentid - подразделение, которому принадлежит учебный процесс в таблице departments
- status - список статусов указан в одноименном плагине рабочих процессов teachers
Дополнительные методы:
remove_programmitem_from_appointment($appointmentid, $programmitemid, $departmentid=null)
Освобождает учителя от преподавания упредмета в указанной должности
Аргументы:
- $appointmentid(int) - id назначения на должность в таблице appointments
- $programmitemid(int) - id предмета в таблице programmitems
- $departmentid(int) - id подразделения в таблице departments
Возвращает значение:
- bool
remove_teacher($id)
Освободает учителя от преподаваемого предмета
Аргументы:
- $id(int) - id записи о преподаваемом предмете в этой таблице
add_teacher($teacher)
Добавляет новую запись о преподавании учителем курса, сразу же переводя ее в статус "активна"
Аргументы:
- $teacher(obj) - объект для вставки в таблицу teachers
Возвращает значение:
- bool
safe_insert($dataobject, $quiet=false)
Безопасная вставка в таблицу. Использование этой функции вместо традиционного insert гарантирует, что все ваши данные будут проверены, идентификаторы на момент вставки будут точно указывать на существующие записи, а также что логика работы системы не будет нарушена
Аргументы:
- $dataobject(obj) - объект для вставки в таблицу
- $quiet[optional](obj) - не генерировать событий
Возвращает значение:
- int|bool (id новой записи если операция вставки прошла успешно, false усли вставка в таблицу не удалась)
safe_update($dataobject, $id, $quiet=false)
Безопасное обновление записи в таблице. Использование этой функции вместо традиционного update гарантирует, что все ваши данные будут проверены, идентификаторы на момент вставки будут точно указывать на существующие записи, а также что логика работы системы не будет нарушена
Аргументы:
- $dataobject(obj) - объект для вставки в таблицу
- $id(int) - id обновляемой записи
- $quiet[optional](obj) - не генерировать событий
Возвращает значение:
- array|bool ($dataobject(obj) | false - если не успешно)
insert_possible($dataobject)
Определяет, возможно ли вставить запись в таблицу
Аргументы:
- $dataobject(obj) - объект для вставки в таблицу
Возвращает значение:
- bool (true - если вставка возможна, false - если вставка невозможна)
update_possible($dataobject, $id=null)
Определяет, возможно ли обновить запись в таблице
Аргументы:
- $dataobject(obj) - объект для обновления таблицы
- $id(int) - id обновляемой записи
Возвращает значение:
- bool (true - если вставка возможна, false - если вставка невозможна)
get_available_pitems_for_appointment($appointmentid)
Получить список возможных предметов для преподавания для переданного назначения на должность
Аргументы:
- $appointmentid(int) - id назначения на должность в таблице appointments
Возвращает значение:
- array|bool - массив записей из таблицы programmitems , исключая те предметы, которые уже были привязаны к этой должности в таблице teachers
get_appointment_pitems($appointmentid)
Получить список курсов, которые учитель уже может вести в рамках указанного назначения на должность
Аргументы:
- $appointmentid(int) - id назначения на должность в таблице appointments
Возвращает значение:
- return array|bool - массив курсов из таблицы pitems или false если учителю не назначено пока ни одного курса
События
В этом разделе описан список всех событий, которые генерируются, перехватываются и обрабатываются этим плагином.
Перехватываемые события
Тип плагина | Код плагина | Код события | Доп. данные | Пояснение |
---|---|---|---|---|
Этот плагин не перехватывает никаких событий |
Генерируемые события
Тип плагина | Код плагина | Код события | Доп. данные | Пояснение |
---|---|---|---|---|
storage | teachers | insert | Массив, содержащий в поле "new" объект с данными для вставки в таблицу.
Пример: array('new' => $dataobject) |
Генерируется каждый раз при вставке новой записи в таблицу. |
storage | teachers | update | Массив, содержащий в поле "new" обновленный объект, и в поле "old" объект со старыми данными, до обновления записи.
Пример: array('old' => $dataobject_old, 'new' => $dataobject_new) |
Генерируется каждый раз при обновлении записи в таблице. |
storage | teachers | delete | Массив, содержащий в поле "old" объект с данными, которые удаляются из таблицы
Пример: array('old' => $dataobject) |
Генерируется каждый раз при удалении записи из таблицы. |