Разработка:storages/learningplan — различия между версиями
Konovalov (обсуждение | вклад) (→Дополнительные методы:) |
Konovalov (обсуждение | вклад) (→Дополнительные методы:) |
||
Строка 14: | Строка 14: | ||
=Дополнительные методы:= | =Дополнительные методы:= | ||
+ | |||
===='''create_learningplan($type, $typeid)'''==== | ===='''create_learningplan($type, $typeid)'''==== | ||
Строка 20: | Строка 21: | ||
''Аргументы:'' | ''Аргументы:'' | ||
− | * $type(string) - тип учебного плана (programmsbc или agroup | + | * $type(string) - тип индивидуального учебного плана (ИП), может быть 'programmsbc' или 'agroup' |
− | * $typeid(int) - id | + | * $typeid(int) - id записи в таблице [[Разработка:storages/programmsbcs|programmsbcs]] или [[Разработка:storages/agroups|agroups]] |
''Возвращаемые значения:'' | ''Возвращаемые значения:'' | ||
* (bool) - результат операции | * (bool) - результат операции | ||
+ | |||
+ | |||
+ | ===='''get_all_pitems($type, $typeid, $agenum = false, $status = null)'''==== | ||
+ | |||
+ | Получить все дисциплины программы, кроме запланированных в виде академической разницы (agenum=0), для всех параллелей, или только указанной | ||
+ | |||
+ | ''Аргументы:'' | ||
+ | * $type(string) - тип индивидуального учебного плана (ИП), может быть 'programmsbc' или 'agroup' | ||
+ | * $typeid(int) - id записи в таблице [[Разработка:storages/programmsbcs|programmsbcs]] или [[Разработка:storages/agroups|agroups]] | ||
+ | * $agenum(int) - номер семестра (параллели), если false - все семестры | ||
+ | * $status(string|array) - статус дисциплин, можно передать массив или false для всех | ||
+ | ''Возвращаемые значения:'' | ||
+ | * (bool) - false в случае ошибки | ||
+ | * (array) - дисциплины программы, исключая запланированные | ||
+ | |||
===='''get_learningplan_info($type, $typeid)'''==== | ===='''get_learningplan_info($type, $typeid)'''==== | ||
Строка 30: | Строка 46: | ||
''Аргументы:'' | ''Аргументы:'' | ||
− | * $type(string) - тип учебного плана ('programmsbc' или 'agroup' | + | * $type(string) - тип индивидуального учебного плана (ИП), может быть 'programmsbc' или 'agroup' |
− | * $typeid(int) - id | + | * $typeid(int) - id записи в таблице [[Разработка:storages/programmsbcs|programmsbcs]] или [[Разработка:storages/agroups|agroups]] |
''Возвращаемые значения:'' | ''Возвращаемые значения:'' | ||
* (object) - возвращаемый объект с полями | * (object) - возвращаемый объект с полями |
Версия 18:24, 7 июля 2014
Плагин | |
Название | 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_all_pitems($type, $typeid, $agenum = false, $status = null)
Получить все дисциплины программы, кроме запланированных в виде академической разницы (agenum=0), для всех параллелей, или только указанной
Аргументы:
- $type(string) - тип индивидуального учебного плана (ИП), может быть 'programmsbc' или 'agroup'
- $typeid(int) - id записи в таблице programmsbcs или agroups
- $agenum(int) - номер семестра (параллели), если false - все семестры
- $status(string|array) - статус дисциплин, можно передать массив или false для всех
Возвращаемые значения:
- (bool) - false в случае ошибки
- (array) - дисциплины программы, исключая запланированные
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).