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

Материал из DOF
Перейти к: навигация, поиск
(добавлен шаблон)
(Подробный формат полей в таблице:)
Строка 9: Строка 9:
 
====Подробный формат полей в таблице:====
 
====Подробный формат полей в таблице:====
 
* eventid - событие
 
* eventid - событие
* personid - ученик
+
* personid - ученик в таблице [[Разработка:storages/persons | persons ]]
 
* present - присутствие: 0/1
 
* present - присутствие: 0/1
* orderid - id приказа, в соответствии в котором был выставлен статус присутсвия
+
* orderid - id приказа в таблице [[Разработка:storages/orders | orders ]], в соответствии в котором был выставлен статус присутсвия
  
 
===Дополнительные методы:===
 
===Дополнительные методы:===

Версия 22:51, 13 января 2010

Плагин
Название schpresences
Тип storages


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

schpresences - содержит сведения о присутствии или отсутствии учащихся на учебном событии.

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

  • eventid - событие
  • personid - ученик в таблице persons
  • present - присутствие: 0/1
  • orderid - id приказа в таблице orders , в соответствии в котором был выставлен статус присутсвия

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

save_present_student()

Сохраняет статус присутствия/отсутствия ученика на занятии.

Аргументы:

  • $obj(object) - запись в таблицу БД.

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

  • (int) id вставленной записи, если запись вставляется.
  • (bool) true, если запись обновляется.
  • (bool) false, если операции не удались.

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

  1. находим запись в таблице БД по данным из обьекта:
    • если запись была найдена, мы ее обновляем и возвращаем результат.
    • если не найдена - запысываем в таблицу БД и возвращаем результат.

save_present_students()

Сохраняет список статусов присутствия/отсутствия учеников на занятии.

Аргументы:

  • $obj(object) - запись в таблицу БД (объект, в котором первое свойство(eventid) является id события, а второе(presents) - массив записей, где ключ - id персоны, значение - статус присутствия).

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

  • (bool) true, если все записи успешно обновились/вставились.
  • (bool) false во всех остальных случаях.

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

  1. обновляем/вставляем все записи в БД
    • перебираем исходный массив из данных объекта.
    • формируем объект для обновления/вставки в БД.
    • обновляем/вставляем объект в таблицу БД.
  2. возвращаем результат.

get_present_status()

Получает статус присутствия ученика на занятии.

Аргументы:

  • $stid(int) - id студента.
  • $evid(int) - id события.

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

  • (int) статус присутствия, если собитие существует.
  • (bool) false если события нет.

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

  1. находим запись в таблице БД.
    • если запись найдена, возвращаем статус присутствия.
    • если не найдена, возвращаем false.

get_present_students()

Получает статусы присутствия учеников на занятии.

Аргументы:

  • $evid(int) - id события

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

  • (array) массив, где ключ - id персоны, значение - статус присутствия

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

  1. находим все записи связанные с данным собитием в таблице БД.
  2. формируем массив id ученика=>статус присутствия по каждому из событий.
  3. возвращаем результат.

Планы:

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

  • Получить статистику посещения учеником занятий по id учебного процесса и id ученика: количество прошедших занятий, количество посещенных занятий, доля посещенных занятий (от 0 до 1), если установлен флаг - массив с посещаемостью всех прошедших занятий id_события => статус посещения.
  • Получить статистику посещения учениками занятий по id учебного процесса (общие показатели по группе), если установлен флаг - массив с посещаемостью всех прошедших занятий id_события => =>id_студента =>статус посещения.