Разработка:storages/agroups

Материал из DOF
Версия от 18:47, 4 ноября 2010; Puppetmaster (обсуждение | вклад) (Дополнительные методы:)
Перейти к: навигация, поиск
Плагин
Название agroups
Тип storages


Таблица в базе данных

agroups - классы/академические группы. Связывают контракты на обучение и учебные программы при групповой форме обучения.

Подробный формат полей в таблице:

  • name - название академической группы/класса
  • code - кодовое обозначение группы (текстовое поле, обязательное, уникальное)
  • programmid - id учебной программы в таблице programms , которую реализует академическая группа
  • departmentid - отдел в таблице departments , ответственный за группу
  • agenum - порядковый номер текущего учебного периода (изменяется приказом по контингенту). Параллель группы может быти изменена только если группа находится в статусе "формируется".
  • status - список статусов указан в одноименном плагине рабочих процессов agroups

Дополнительные методы:

insert()

Вставляет запись в таблицу(ы) плагина

Аргументы:

  • $dataobject - данные записи

Возвращаемые значения:

  • mixed bool - false если операция не удалась или id вставленной записи


search_group_code()

находит группу по коду

Аргументы:

  • $code - код группы

Возвращаемые значения:

  • mixed object объект группы
  • bool false если группа не найдена


get_groups_programm()

находит все группы, обучающиеся по учебной программе.

Аргументы:

  • $prid(int) - id программы в таблице programms .
  • $status(string) - статус группы, по умолчанию - обучается(learn).
  • $agenum(int) - номер периода.
  • $dpid(int) - id структурного подразделения.

Возвращаемые значения:

  • (array) список групп.
  • (bool) false - если группы не найдены.

Структура работы:

  • формируем SQL-запрос и возвращаем список групп:
    • если указывается статус - группы с указанным статусом,
    • если статус указывается null - группы с любым статусом,
    • если статус не указывается - группы со статусом learn.
    • если указывается номер периода - группы с указанным периодом,
    • если номер периода указывается null или не указывается - группы с любым периодом.
    • если указывается id подразделения - группы указанного подразделения,
    • если id подразделения указывается null или не указывается - группы любого подразделения.


get_group_department()

Получает все группы, относящиеся к структурному подразделению и обучающиеся по программе

Аргументы:

  • $dpid(int) - id структурного подразделения в таблице departments .
  • $prid(int) - id программы в таблице programms , по умолчанию - все(null).
  • $status(string) - статус группы, по умолчанию - обучается(learn).

Возвращаемые значения:

  • mixed array список групп или bool false если группы не найдены

Структура работы:

  • формируем SQL-запрос и возвращаем список групп:
    • если указывается id программы - группы с указанным id,
    • если id программы не указывается или указывается как null- группы с любым id.
    • если указывается статус - группы с указанным статусом,
    • если статус указывается null - группы с любым статусом,
    • если статус не указывается - группы со статусом learn.


get_group_cstream()

Получить все группы, подписанные на учебный процесс с данным id.

Аргументы:

  • $csid(int) - id учебного процесса в таблице cstreams .

Возвращаемые значения:

  • (array) список групп.
  • (bool) false - если группы не найдены.

Планы:

События

В этом разделе описан список всех событий, которые генерируются, перехватываются и обрабатываются этим плагином.

Перехватываемые события

Таблица событий, которые перехватывает этот плагин
Тип плагина Код плагина Код события Доп. данные Пояснение
Этот плагин не перехватывает никаких событий

Генерируемые события

Таблица событий, которые генерирует этот плагин
Тип плагина Код плагина Код события Доп. данные Пояснение
storage agroups insert Массив, содержащий в поле "new" объект с данными для вставки в таблицу.

Пример: array('new' => $dataobject)

Генерируется каждый раз при вставке новой записи в таблицу agroups.
storage agroups update Массив, содержащий в поле "new" обновленный объект, и в поле "old" объект со старыми данными, до обновления записи.

Пример: array('old' => $dataobject_old, 'new' => $dataobject_new)

Генерируется каждый раз при обновлении записи в таблице agroups.
storage agroups delete Массив, содержащий в поле "old" объект с данными, которые удаляются из таблицы

Пример: array('old' => $dataobject)

Генерируется каждый раз при удалении записи из таблицы agroups.