Разработка:storages/teachers — различия между версиями
Dido86 (обсуждение | вклад) (→Дополнительные методы:) |
Dido86 (обсуждение | вклад) (→Дополнительные методы:) |
||
Строка 24: | Строка 24: | ||
* $appointmentid(int) - id назначения на должность в таблице [[Разработка:storages/appointments | appointments ]] | * $appointmentid(int) - id назначения на должность в таблице [[Разработка:storages/appointments | appointments ]] | ||
* $programmitemid(int) - id предмета в таблице [[Разработка:storages/programmitems | programmitems ]] | * $programmitemid(int) - id предмета в таблице [[Разработка:storages/programmitems | programmitems ]] | ||
− | * $departmentid(int) - id подразделения в таблице [[Разработка:storages/departments | departments ]] | + | * $departmentid(int) - id подразделения в таблице [[Разработка:storages/departments | departments ]], по умочанию null |
''Возвращает значение:'' | ''Возвращает значение:'' | ||
* bool | * bool | ||
Строка 50: | Строка 50: | ||
''Аргументы:'' | ''Аргументы:'' | ||
* $dataobject(obj) - объект для вставки в таблицу | * $dataobject(obj) - объект для вставки в таблицу | ||
− | * $quiet | + | * $quiet(obj) - не генерировать событий, по умолчанию false |
''Возвращает значение:'' | ''Возвращает значение:'' | ||
* int|bool (id новой записи если операция вставки прошла успешно, false усли вставка в таблицу не удалась) | * int|bool (id новой записи если операция вставки прошла успешно, false усли вставка в таблицу не удалась) | ||
Строка 61: | Строка 61: | ||
* $dataobject(obj) - объект для вставки в таблицу | * $dataobject(obj) - объект для вставки в таблицу | ||
* $id(int) - id обновляемой записи | * $id(int) - id обновляемой записи | ||
− | * $quiet | + | * $quiet(obj) - не генерировать событий, по умолчанию false |
''Возвращает значение:'' | ''Возвращает значение:'' | ||
* array|bool ($dataobject(obj) | false - если не успешно) | * array|bool ($dataobject(obj) | false - если не успешно) | ||
Строка 80: | Строка 80: | ||
''Аргументы:'' | ''Аргументы:'' | ||
* $dataobject(obj) - объект для обновления таблицы | * $dataobject(obj) - объект для обновления таблицы | ||
− | * $id(int) - id обновляемой записи | + | * $id(int) - id обновляемой записи, по умолчанию null |
''Возвращает значение:'' | ''Возвращает значение:'' | ||
* bool (true - если вставка возможна, false - если вставка невозможна) | * bool (true - если вставка возможна, false - если вставка невозможна) | ||
Строка 108: | Строка 108: | ||
''Аргументы:'' | ''Аргументы:'' | ||
* $pitemid(int) - id предмета в таблице [[Разработка:storages/programmitems | programmitems ]] | * $pitemid(int) - id предмета в таблице [[Разработка:storages/programmitems | programmitems ]] | ||
− | * $ | + | * $coun(bool) - получить только количество учителей, по умолчанию false |
+ | * $mask(str) - поиск по маске (если он производится), по умолчанию пусто | ||
''Возвращает значение:'' | ''Возвращает значение:'' | ||
* return array|bool массив записей из таблицы [[Разработка:storages/persons | persons ]] или false в случае ошибки | * return array|bool массив записей из таблицы [[Разработка:storages/persons | persons ]] или false в случае ошибки | ||
Строка 114: | Строка 115: | ||
===='''get_pitem_no_teachers($pitemid, $count=false, $mask=" ")'''==== | ===='''get_pitem_no_teachers($pitemid, $count=false, $mask=" ")'''==== | ||
− | Получить | + | Получить всех учителей, которые не ведут указанный предмет |
''Аргументы:'' | ''Аргументы:'' | ||
* $pitemid(int) - id предмета в таблице [[Разработка:storages/programmitems | programmitems ]] | * $pitemid(int) - id предмета в таблице [[Разработка:storages/programmitems | programmitems ]] | ||
− | * $count | + | * $count(bool) - получить только количество учителей, по умолчаню false |
+ | * $mask(str) - поиск по маске (если он производится), по умолчанию пусто | ||
''Возвращает значение:'' | ''Возвращает значение:'' | ||
− | * return array|bool | + | * return array|int|bool - список учителей, количество учителей, или false если ничего не найдено |
===События=== | ===События=== |
Версия 15:02, 8 ноября 2010
Плагин | |
Название | 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)
- 2.10 get_pitem_teachers($pitemid, $count=false, $mask=" ")
- 2.11 get_pitem_no_teachers($pitemid, $count=false, $mask=" ")
- 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 , по умочанию null
Возвращает значение:
- bool
remove_teacher($id)
Освободает учителя от преподаваемого предмета
Аргументы:
- $id(int) - id записи о преподаваемом предмете в этой таблице
add_teacher($teacher)
Добавляет новую запись о преподавании учителем курса, сразу же переводя ее в статус "активна"
Аргументы:
- $teacher(obj) - объект для вставки в таблицу teachers
Возвращает значение:
- bool
safe_insert($dataobject, $quiet=false)
Безопасная вставка в таблицу. Использование этой функции вместо традиционного insert гарантирует, что все ваши данные будут проверены, идентификаторы на момент вставки будут точно указывать на существующие записи, а также что логика работы системы не будет нарушена
Аргументы:
- $dataobject(obj) - объект для вставки в таблицу
- $quiet(obj) - не генерировать событий, по умолчанию false
Возвращает значение:
- int|bool (id новой записи если операция вставки прошла успешно, false усли вставка в таблицу не удалась)
safe_update($dataobject, $id, $quiet=false)
Безопасное обновление записи в таблице. Использование этой функции вместо традиционного update гарантирует, что все ваши данные будут проверены, идентификаторы на момент вставки будут точно указывать на существующие записи, а также что логика работы системы не будет нарушена
Аргументы:
- $dataobject(obj) - объект для вставки в таблицу
- $id(int) - id обновляемой записи
- $quiet(obj) - не генерировать событий, по умолчанию false
Возвращает значение:
- array|bool ($dataobject(obj) | false - если не успешно)
insert_possible($dataobject)
Определяет, возможно ли вставить запись в таблицу
Аргументы:
- $dataobject(obj) - объект для вставки в таблицу
Возвращает значение:
- bool (true - если вставка возможна, false - если вставка невозможна)
update_possible($dataobject, $id=null)
Определяет, возможно ли обновить запись в таблице
Аргументы:
- $dataobject(obj) - объект для обновления таблицы
- $id(int) - id обновляемой записи, по умолчанию null
Возвращает значение:
- 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 - массив курсов из таблицы programmitems или false если учителю не назначено пока ни одного курса
get_pitem_teachers($pitemid, $count=false, $mask=" ")
Получить список курсов, которые учитель уже может вести в рамках указанного назначения на должность
Аргументы:
- $pitemid(int) - id предмета в таблице programmitems
- $coun(bool) - получить только количество учителей, по умолчанию false
- $mask(str) - поиск по маске (если он производится), по умолчанию пусто
Возвращает значение:
- return array|bool массив записей из таблицы persons или false в случае ошибки
get_pitem_no_teachers($pitemid, $count=false, $mask=" ")
Получить всех учителей, которые не ведут указанный предмет
Аргументы:
- $pitemid(int) - id предмета в таблице programmitems
- $count(bool) - получить только количество учителей, по умолчаню false
- $mask(str) - поиск по маске (если он производится), по умолчанию пусто
Возвращает значение:
- return array|int|bool - список учителей, количество учителей, или 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) |
Генерируется каждый раз при удалении записи из таблицы. |