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

Материал из DOF
Версия от 16:58, 3 июля 2014; Konovalov (обсуждение | вклад) (Дополнительные методы:)
Перейти к: навигация, поиск
Плагин
Название learningplan
Тип storages


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

learningplan - запланированные на будущие периоды дисциплины.

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

  • type - тип объекта, на которого запланирована дисциплина (programmsbc, agroup).
  • programmsbcid - id слушателя из таблицы programmsbcs , type=programmsbc или NULL
  • agroupid - id группы из таблицы agroups , если type=agroup или NULL
  • agenum - номер параллели, для которой задан план. Если слушатель обязан пройти дисциплину в любой период обучения 0. Уточнение: ageid мы не планируем, так как он пока не известен.
  • programmitemid - id запланированной дисциплины из таблицы programmitems (дисциплина должна относится к той программе, на которую подписан слушатель или группа и быть активной на момент перевода в соответствующую параллель, чтобы произошла подписка).

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

create_learningplan($type, $typeid)

Создать начальную конфигурацию учебного плана: добавление всех обязательных дисциплин в соответствии с указанными семестрами.

Аргументы:

  • $type(string) - тип учебного плана (programmsbc или agroup)
  • $typeid(int) - id из таблицы programmsbcs или agroups

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

  • (bool) - результат операции

get_learningplan_info($type, $typeid)

Получить информацию об учебном плане: тип, код, имя, программа, текущий семестр, период, количество семестров.

Аргументы:

  • $type(string) - тип учебного плана ('programmsbc' или 'agroup')
  • $typeid(int) - id из таблицы programmsbcs или agroups

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

  • (object) - возвращаемый объект с полями
    • type - тип учебного плана ('programmsbc' или 'agroup')
    • typeid - id записи в таблице programmsbcs или agroups
    • code - код объекта
    • name - имя объекта (содержит либо имя группы, либо полное имя персоны с номером договора)
    • programm - учебная программа, на которую планируются дисциплины - объект с полями id, code, name
    • agenum - текущий семестр
    • age - текущий период - объект с полями id, name, begindate, eduweeks
    • agenums - количество семестров в программе
  • (bool) - false в случае возникновения ошибки


get_listing($limitfrom, $limitnum, $conds=null, $countonly=false)

Возвращает список запланированных дисциплин по заданным критериям.

Аргументы:

  • $limitfrom(int) - начиная с какой записи просматривается фрагмент списка записей.
  • $limitnum(int) - сколько записей нужно извлечь из базы.
  • $conds(object) - объект со списком свойств, по которым будет происходить поиск, по умолчанию - нет(null),
  • $countonly(object) - вернуть список записей по указанным условиям или только их количество, по умолчанию - список(false),

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

  • (array) - массив записей из базы.
  • (bool) - false, в случае ошибки.


get_select_listing($inputconds)

Возвращает фрагмент sql-запроса после слова WHERE.

Аргументы:

  • $inputconds(object) - список полей с условиями запроса в формате "поле_БД->значение".

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

  • (string).