Разработка:storages/learninghistory — различия между версиями

Материал из DOF
Перейти к: навигация, поиск
(Исправлено описание функций и комментарии к ним)
(Дополнительные методы:)
 
(не показано 15 промежуточных версий 4 участников)
Строка 1: Строка 1:
 
{{Infobox_Plugin
 
{{Infobox_Plugin
 
| name = learninghistory
 
| name = learninghistory
| type = storage
+
| type = storages
 
}}
 
}}
 
===Таблица в базе данных===
 
===Таблица в базе данных===
Строка 7: Строка 7:
  
 
====Подробный формат полей в таблице:====
 
====Подробный формат полей в таблице:====
* '''programscbcid''' - id подписки ученика на учебную программу в таблице [[Разработка:storages/programmsbcs|programmsbcs]].
+
* '''programmsbcsid''' - id подписки ученика на учебную программу в таблице [[Разработка:storages/programmsbcs|programmsbcs]].
* '''orderid''' - id приказа, в результате которого была изменена подписка на учебную дисциплину (таблица [[Разработка:storages/orders|orders]]). Возможно null-значение, если изменения не были связаны ни с каким приказом.
+
* '''ageid''' - id учебного периода в таблице [[Разработка:storages/ages|ages]], в котором были пройдены дисциплины данной параллели
* '''ageid''' - id учебного периода в таблице [[Разработка:storages/ages|ages]]
+
* '''agenum''' - номер параллели (класс или семестр и т. п.)
* '''agenum''' - номер ступени обучения. (второй класс, четвертый курс, и т. п.)
+
* '''changedate''' - дата создания записи в формате unixtimestamp
* '''changedate''' - дата создания записи в формате unixtime
+
* '''orderid''' - id приказа, в результате которого учащийся был записан на данную параллель (таблица [[Разработка:storages/orders|orders]]). Возможно null-значение, если изменения не были связаны ни с каким приказом.
  
 
===Дополнительные методы:===
 
===Дополнительные методы:===
'''get_begin_learning_data()'''  
+
 
 +
 
 +
===='''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]]), по которой запрашивается история  
+
* $programmsbcid - id подписки ученика на учебную программу (таблица [[Разработка:storages/programmsbcs|programmsbcs]]), по которой запрашивается история
 +
''Возвращаемое значение:''
 +
* (mix) object|bool - объект из таблицы [[Разработка:storages/learninghistory|learninghistory]], или false
  
'''get_actual_learning_data()'''  
+
===='''get_actual_learning_data($programmsbcid)'''====
  
Получить текущую информацию об учебных подписках и периодах  
+
Получение текущую информацию об учебных подписках и периодах  
  
 
''Аргументы:''  
 
''Аргументы:''  
* $studentid - id подписки ученика на учебную программу (таблица [[Разработка:storages/programmsbcs|programmsbcs]]), по которой запрашивается история  
+
* $programmsbcid - id подписки ученика на учебную программу (таблица [[Разработка:storages/programmsbcs|programmsbcs]]), по которой запрашивается история
 +
''Возвращаемое значение:''
 +
* (mix) object|bool - объект из таблицы [[Разработка:storages/learninghistory|learninghistory]], или false
  
'''get_history()'''  
+
===='''get_history($programmsbcid, $timefrom=null, $timeto=null)'''====
  
Получить историю изменений подписок по времени
+
Получение истории изменения подписок по времени
  
 
''Аргументы:''  
 
''Аргументы:''  
* $studentid - id подписки ученика на учебную программу (таблица [[Разработка:storages/programmsbcs|programmsbcs]]), по которой запрашивается история  
+
* $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


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

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), по которой запрашивается история

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

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.