Разработка:storages/learninghistory — различия между версиями
Ilya (обсуждение | вклад)  (→Дополнительные методы:)  | 
				Konovalov (обсуждение | вклад)   (→Дополнительные методы:)  | 
				||
| (не показано 18 промежуточных версий 4 участников) | |||
| Строка 1: | Строка 1: | ||
{{Infobox_Plugin  | {{Infobox_Plugin  | ||
| name = learninghistory  | | name = learninghistory  | ||
| − | | type =   | + | | type = storages  | 
}}  | }}  | ||
===Таблица в базе данных===  | ===Таблица в базе данных===  | ||
| Строка 7: | Строка 7: | ||
====Подробный формат полей в таблице:====  | ====Подробный формат полей в таблице:====  | ||
| − | * '''  | + | * '''programmsbcsid''' - id подписки ученика на учебную программу в таблице [[Разработка:storages/programmsbcs|programmsbcs]].  | 
| − | + | * '''ageid''' - id учебного периода в таблице [[Разработка:storages/ages|ages]], в котором были пройдены дисциплины данной параллели  | |
| − | * '''ageid''' - id учебного периода в таблице [[Разработка:storages/ages|ages]]  | + | * '''agenum''' - номер параллели (класс или семестр и т. п.)  | 
| − | * '''agenum''' - номер   | + | * '''changedate''' - дата создания записи в формате unixtimestamp  | 
| − | * '''  | + | * '''orderid''' - id приказа, в результате которого учащийся был записан на данную параллель (таблица [[Разработка:storages/orders|orders]]). Возможно null-значение, если изменения не были связаны ни с каким приказом.  | 
===Дополнительные методы:===  | ===Дополнительные методы:===  | ||
| − | '''  | + | |
| + | |||
| + | ===='''get_ageid_agenum($programmsbcid, $agenum)'''====  | ||
| + | |||
| + | Получить id учебного периода подписки на программу по номеру семестра  | ||
| + | |||
| + | ''Аргументы:''  | ||
| + | * $programmsbcid(int) - id из таблицы [[Разработка:storages/programmsbcs | programmsbcs ]]  | ||
| + | * $agenum(int) - номер параллели  | ||
| + | ''Возвращаемые значения:''  | ||
| + | * int - id периода из таблицы [[Разработка:storages/ages | ages ]] или  | ||
| + | * bool - false, если найти не удалось  | ||
| + | |||
| + | |||
| + | ===='''get_first_learning_data($programmsbcid)''' ====  | ||
Получить первую запись на момент начала обучения  | Получить первую запись на момент начала обучения  | ||
''Аргументы:''    | ''Аргументы:''    | ||
| − | * $  | + | * $programmsbcid - id подписки ученика на учебную программу (таблица [[Разработка:storages/programmsbcs|programmsbcs]]), по которой запрашивается история  | 
| + | ''Возвращаемое значение:''   | ||
| + | * (mix) object|bool - объект из таблицы [[Разработка:storages/learninghistory|learninghistory]], или false  | ||
| − | '''get_actual_learning_data()'''    | + | ===='''get_actual_learning_data($programmsbcid)'''====  | 
| − | + | Получение текущую информацию об учебных подписках и периодах    | |
''Аргументы:''    | ''Аргументы:''    | ||
| − | * $  | + | * $programmsbcid - id подписки ученика на учебную программу (таблица [[Разработка:storages/programmsbcs|programmsbcs]]), по которой запрашивается история  | 
| + | ''Возвращаемое значение:''   | ||
| + | * (mix) object|bool - объект из таблицы [[Разработка:storages/learninghistory|learninghistory]], или false  | ||
| − | '''get_history()'''    | + | ===='''get_history($programmsbcid, $timefrom=null, $timeto=null)'''====  | 
| − | + | Получение истории изменения подписок по времени  | |
''Аргументы:''    | ''Аргументы:''    | ||
| − | * $  | + | * $programmsbcid - id подписки ученика на учебную программу (таблица [[Разработка:storages/programmsbcs|programmsbcs]]), по которой запрашивается история   | 
| − | * $timefrom - начало временного периода, за который запрашивается история изменения подписок   | + | * $timefrom - начало временного периода, за который запрашивается история изменения подписок, по умолчанию null  | 
| − | * $timeto - конец временного периода, за который запрашивается история изменения подписок (если   | + | * $timeto - конец временного периода, за который запрашивается история изменения подписок, по умолчанию null  | 
| + | ''Возвращаемое значение:''   | ||
| + | * (mix) object|bool - объект из таблицы [[Разработка:storages/learninghistory|learninghistory]], или false  | ||
| + | |||
| + | ===='''get_subscribe_ages($programmsbcid)'''====  | ||
| + | |||
| + | Выводит все учебные периоды, в которых проходила указанная учебная программа(без повторений)  | ||
| + | |||
| + | ''Аргументы:''  | ||
| + | * $programmsbcid - id подписки ученика на учебную программу (таблица [[Разработка:storages/programmsbcs|programmsbcs]]), по которой запрашивается история  | ||
| + | ''Возвращаемое значение:''   | ||
| + | * array - массив записей из таблицы [[Разработка:storages/learninghistory|learninghistory]]  | ||
| + | |||
| + | ===='''add($programmsbc)'''====  | ||
| + | |||
| + | Добавляет историю изменения учебного процесса для ученика.   | ||
| + | |||
| + | ''Аргументы:''  | ||
| + | * $programmsbc - id в таблице [[Разработка:storages/programmsbcs|programmsbcs]]) или сам объект с таким id  | ||
| + | ''Возвращаемое значение:''   | ||
| + | * array - массив записей или false  | ||
| + | |||
| + | ===='''set_actual_learninghistoryid($cpassed)'''====  | ||
| + | |||
| + | Устанавливает learninghistoryid для записей cpassed, если есть актуальные данные в истории обучения  | ||
| + | |||
| + | ''Аргументы:''  | ||
| + | * (object|int) $cpassed - изучаемый или пройденный курс  | ||
| + | ''Возвращаемое значение:''   | ||
| + | * bool - результат операции  | ||
===Планы:===  | ===Планы:===  | ||
| + | |||
| + | ===События===  | ||
| + | В этом разделе описан список всех событий, которые генерируются, перехватываются и обрабатываются этим плагином.  | ||
| + | ====Перехватываемые события====  | ||
| + | {| border="1"  | ||
| + |  |+ Таблица событий, которые перехватывает этот плагин  | ||
| + |  ! Тип плагина  | ||
| + |  ! Код плагина  | ||
| + |  ! Код события  | ||
| + |  ! Доп. данные  | ||
| + |  ! Пояснение  | ||
| + |  |-  | ||
| + |  |storage  | ||
| + |  |cpassed  | ||
| + |  |insert  | ||
| + |  |Стандартные  | ||
| + |  |  | ||
| + |  |-  | ||
| + |  |storage  | ||
| + |  |cpassed  | ||
| + |  |update  | ||
| + |  |Стандартные  | ||
| + |  |  | ||
| + |  |-  | ||
| + |  |storage  | ||
| + |  |cpassed  | ||
| + |  |delete  | ||
| + |  |Стандартные  | ||
| + |  |  | ||
| + |  |}  | ||
| + | |||
| + | ====Генерируемые события====  | ||
| + | {| border="1"  | ||
| + |  |+ Таблица событий, которые генерирует этот плагин  | ||
| + |  ! Тип плагина  | ||
| + |  ! Код плагина  | ||
| + |  ! Код события  | ||
| + |  ! Доп. данные  | ||
| + |  ! Пояснение  | ||
| + |  |-  | ||
| + |  |storage  | ||
| + |  |learninghistory  | ||
| + |  |insert  | ||
| + |  |Массив, содержащий в поле "new" объект с данными для вставки в таблицу.  | ||
| + | ''Пример:'' array('new' => $dataobject)  | ||
| + |  |Генерируется каждый раз при вставке новой записи в таблицу learninghistory.  | ||
| + |  |-  | ||
| + |  |storage  | ||
| + |  |learninghistory  | ||
| + |  |update  | ||
| + |  |Массив, содержащий в поле "new" обновленный объект, и в поле "old" объект со старыми данными, до обновления записи.  | ||
| + | ''Пример:'' array('old' => $dataobject_old, 'new' => $dataobject_new)  | ||
| + |  |Генерируется каждый раз при обновлении записи в таблице learninghistory.  | ||
| + |  |-  | ||
| + |  |storage  | ||
| + |  |learninghistory  | ||
| + |  |delete  | ||
| + |  |Массив, содержащий в поле "old" объект с данными, которые удаляются из таблицы  | ||
| + | ''Пример:'' array('old' => $dataobject)  | ||
| + |  |Генерируется каждый раз при удалении записи из таблицы learninghistory.  | ||
| + |  |}  | ||
Текущая версия на 12:55, 20 августа 2014
| Плагин | |
| Название | learninghistory | 
| Тип | storages | 
Содержание
- 1 Таблица в базе данных
 - 2 Дополнительные методы:
- 2.1 get_ageid_agenum($programmsbcid, $agenum)
 - 2.2 get_first_learning_data($programmsbcid)
 - 2.3 get_actual_learning_data($programmsbcid)
 - 2.4 get_history($programmsbcid, $timefrom=null, $timeto=null)
 - 2.5 get_subscribe_ages($programmsbcid)
 - 2.6 add($programmsbc)
 - 2.7 set_actual_learninghistoryid($cpassed)
 
 - 3 Планы:
 - 4 События
 
Таблица в базе данных
learninghistory - таблица хранит историю изменений учебных процессов для каждого ученика.
Подробный формат полей в таблице:
- programmsbcsid - id подписки ученика на учебную программу в таблице programmsbcs.
 - ageid - id учебного периода в таблице ages, в котором были пройдены дисциплины данной параллели
 - agenum - номер параллели (класс или семестр и т. п.)
 - changedate - дата создания записи в формате unixtimestamp
 - orderid - id приказа, в результате которого учащийся был записан на данную параллель (таблица orders). Возможно null-значение, если изменения не были связаны ни с каким приказом.
 
Дополнительные методы:
get_ageid_agenum($programmsbcid, $agenum)
Получить id учебного периода подписки на программу по номеру семестра
Аргументы:
- $programmsbcid(int) - id из таблицы programmsbcs
 - $agenum(int) - номер параллели
 
Возвращаемые значения:
- int - id периода из таблицы ages или
 - bool - false, если найти не удалось
 
get_first_learning_data($programmsbcid)
Получить первую запись на момент начала обучения
Аргументы:
- $programmsbcid - id подписки ученика на учебную программу (таблица programmsbcs), по которой запрашивается история
 
Возвращаемое значение:
- (mix) object|bool - объект из таблицы learninghistory, или false
 
get_actual_learning_data($programmsbcid)
Получение текущую информацию об учебных подписках и периодах
Аргументы:
- $programmsbcid - id подписки ученика на учебную программу (таблица programmsbcs), по которой запрашивается история
 
Возвращаемое значение:
- (mix) object|bool - объект из таблицы learninghistory, или false
 
get_history($programmsbcid, $timefrom=null, $timeto=null)
Получение истории изменения подписок по времени
Аргументы:
- $programmsbcid - id подписки ученика на учебную программу (таблица programmsbcs), по которой запрашивается история
 - $timefrom - начало временного периода, за который запрашивается история изменения подписок, по умолчанию null
 - $timeto - конец временного периода, за который запрашивается история изменения подписок, по умолчанию null
 
Возвращаемое значение:
- (mix) object|bool - объект из таблицы learninghistory, или false
 
get_subscribe_ages($programmsbcid)
Выводит все учебные периоды, в которых проходила указанная учебная программа(без повторений)
Аргументы:
- $programmsbcid - id подписки ученика на учебную программу (таблица programmsbcs), по которой запрашивается история
 
Возвращаемое значение:
- array - массив записей из таблицы learninghistory
 
add($programmsbc)
Добавляет историю изменения учебного процесса для ученика.
Аргументы:
- $programmsbc - id в таблице programmsbcs) или сам объект с таким id
 
Возвращаемое значение:
- array - массив записей или false
 
set_actual_learninghistoryid($cpassed)
Устанавливает learninghistoryid для записей cpassed, если есть актуальные данные в истории обучения
Аргументы:
- (object|int) $cpassed - изучаемый или пройденный курс
 
Возвращаемое значение:
- bool - результат операции
 
Планы:
События
В этом разделе описан список всех событий, которые генерируются, перехватываются и обрабатываются этим плагином.
Перехватываемые события
| Тип плагина | Код плагина | Код события | Доп. данные | Пояснение | 
|---|---|---|---|---|
| storage | cpassed | insert | Стандартные | |
| storage | cpassed | update | Стандартные | |
| storage | cpassed | delete | Стандартные | 
Генерируемые события
| Тип плагина | Код плагина | Код события | Доп. данные | Пояснение | 
|---|---|---|---|---|
| storage | learninghistory | insert | Массив, содержащий в поле "new" объект с данными для вставки в таблицу.
 Пример: array('new' => $dataobject)  | 
Генерируется каждый раз при вставке новой записи в таблицу learninghistory. | 
| storage | learninghistory | update | Массив, содержащий в поле "new" обновленный объект, и в поле "old" объект со старыми данными, до обновления записи.
 Пример: array('old' => $dataobject_old, 'new' => $dataobject_new)  | 
Генерируется каждый раз при обновлении записи в таблице learninghistory. | 
| storage | learninghistory | delete | Массив, содержащий в поле "old" объект с данными, которые удаляются из таблицы
 Пример: array('old' => $dataobject)  | 
Генерируется каждый раз при удалении записи из таблицы learninghistory. |