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

Материал из DOF
Перейти к: навигация, поиск
(Дополнительные методы:)
Строка 1: Строка 1:
===Таблица в базе данных===
+
===Дополнительные методы:===
''cpassed'' - изучаемые и пройденные курсы: отражает ход изучения учащимися выбранной учебной программы, итоговые отметки.
+
 
 +
'''get_cstream_students()'''
 +
 
 +
Получает список всех подписок студентов, приписаных к одному предмето-потоку.
 +
 
 +
''Аргументы:''
 +
* $csid(int) - id учебного потока.
 +
* $status(string) - статус подписки, по умолчанию - все(null).
 +
''Возвращаемые значения:''
 +
* (array) список подписок на учебный поток.
 +
* (bool) false если подписки не найдены.
 +
''Структура работы:''
 +
* формируем SQL-запрос и возвращаем список подписок:
 +
** если указывается статус - подписки с указанным статусом,
 +
** если статус не указывается или указывается как null - подписки с любым статусом.
 +
 
 +
'''get_cpassed_student()'''
 +
 
 +
Получает список всех подписок для слушателя.
 +
 
 +
''Аргументы:''
 +
* $stid(int) - id студента
 +
* $status(string) - статус подписки, по умолчанию - идет(go).
 +
''Возвращаемые значения:''
 +
* (array) список подписок на учебный поток.
 +
* (bool) false если подписки не найдены.
 +
''Структура работы:''
 +
* формируем SQL-запрос и возвращаем список подписок:
 +
** если указывается статус - подписки с указанным статусом,
 +
** если статус указывается null - подписки с любым статусом,
 +
** если статус не указывается - подписки со статусом go.
 +
 
 +
'''get_cpassed_programm()'''
 +
 
 +
Получает список дисциплин, изученных слушателем в рамках учебной программы.
 +
 
 +
''Аргументы:''
 +
* $stid(int) - id студента.
 +
* $prid(int) - id подписки на программу.
 +
* $status(string) - статус подписки, по умолчанию - завершен(complete).
 +
''Возвращаемые значения:''
 +
* (array) список подписок на учебный поток.
 +
* (bool) false если подписки не найдены.
 +
''Структура работы:''
 +
* формируем SQL-запрос и возвращаем список подписок:
 +
** если указывается статус - подписки с указанным статусом,
 +
** если статус указывается null - подписки с любым статусом,
 +
** если статус не указывается - подписки со статусом complete.
  
====Подробный формат полей в таблице:====
 
* cstreamid - id учебного процесса, по которому велось обучение
 
* programmsbcid - id подписки контракта на программу обучения
 
* programmitemid - id дисциплины
 
* studentid - id слушателя по таблице persons
 
* grade (итоговая отметка по курсу)
 
* gradelevel - уровень оценки (оценка не идет в кандуит, дисциплина, курсовая работа, практика, междисциплинарный экзамин, дипломная работа). Берется из programmitems.
 
* credit - количество кредитов, полученное за прохождение дисциплины
 
* notice - текстовое пояснение об источнике оценки при перезачете
 
* repeatid - id предыдущей подписке, если обучение выполняется повторно (пересдача, повторное обучение - при этом подписка, на которую выполняется ссылка должна иметь статус "пересдан")
 
* typesync - тип синхронизации (выставление вручную, синхронизация с moodle)
 
* mdlinstance - id задания в moodle, с которым выполнялась синхронизация
 
* teacherid - id сотрудника по справочнику persons, вручную выставившего итоговую отметку
 
* status - список статусов указан в одноименном плагине рабочих процессов  [[Разработка:workflows/cpassed | cpassed ]]
 
  
===Дополнительные методы:===
+
'''get_cpassed_programmitem()'''
* '''get_cstream_students'''($csid, $status = null) - получить список всех подписок студентов, приписаных к одному предмето-потоку.
+
 
* '''get_cpassed_student'''($stid, $status = 'go') - получить список дисциплин для слушателя (второй параметр - статус, по умолчанию - "идет").
+
Получает информацию о дисциплине, изученной слушателем (статусы "успешно завершен" и "перезачет) по id слушателя и id дисциплины.
* '''get_cpassed_programm'''($stid, $prid, $status = 'complete') - получить список дисциплин, изученных слушателем в рамках учебной программы (третий параметр - статус, по умолчанию - "успешно завершен").
+
 
* '''get_cpassed_programmitem'''($stid, $prid, $levelgrade = null) - получить информацию о дисциплине, изученной слушателем (статусы "успешно завершен" и "перезачет) по id слушателя и id дисциплины (третий параметр - уровень оценки, по умолчанию - все)
+
''Аргументы:''  
* '''update_total_grade'''($id, $grade, $comment = null) - установить/обновить студенту итоговую оценку и комментарий для существующей подписки (в перспективе, когда будет реализован справочник с историей изменения отметок - вызов функции протоколирования). Если оценка равна или выше минимальной, подписка переводится в статус "успешно завершен"
+
* $stid(int) - id студента.
* '''insert_grade_reoffset'''($stid, $prid, $cpid, $grade, $status, $comment, $initialid) - добавить оценку в режиме "перезачета" (параметры: id студента, id дисциплины, id подписки на программу, оценка, комментарий, статус - перезачет или пересдача, id исходной подписки). В случаее пересдачи одновременно обновляется статус исходной подписки на "пересдан". (в перспективе, когда будет реализован справочник с историей изменения отметок - вызов функции протоколирования)
+
* $prid(int) - id дисциплины.
 +
* $levelgrade(string) - уровень оценки, по умолчанию - null.
 +
''Возвращаемые значения:''
 +
* (object) подписка на дисциплину.
 +
* (bool) false если подписка не найдена или слушатель ее еще не изучил.
 +
''Структура работы:''
 +
* формируем SQL-запрос и возвращаем список подписок:
 +
** если указывается уровень оценки - подписки с указанным уровнем оценки,
 +
** если уровень оценки не указывается или указывается как null - подписки с любым уровнем оценки.
 +
 
 +
'''update_total_grade()'''
 +
 
 +
Установливает/обновляет студенту итоговую оценку и комментарий для существующей подписки (в перспективе, когда будет реализован справочник с историей изменения отметок - вызов функции протоколирования). Если оценка равна или выше минимальной, подписка переводится в статус "успешно завершен".
 +
 
 +
''Аргументы:''  
 +
* $id(int) - id подписки.
 +
* $grade(int) - итоговая оценка.
 +
* $comment(string) - коментарий
 +
''Возвращаемые значения:''
 +
* (bool) true в случае успешного обновления и false в остальных
 +
''Структура работы:''
 +
# создаем объект для вставки в таблицу БД.
 +
# (не реализовано)меняем статус подписки.
 +
# обновляем запись в БД.
 +
 
 +
'''insert_grade_reoffset()'''
 +
 
 +
Добавляет оценку в режиме "перезачета".(в перспективе, когда будет реализован справочник с историей изменения отметок - вызов функции протоколирования)
  
 +
''Аргументы:''
 +
* $stid(int) - id студента.
 +
* $prid(int) - id дисциплины.
 +
* $cpid(int) - id подписки на программу.
 +
* $grade(int) - итоговая оценка.
 +
* $comment(string) - коментарий.
 +
* $status(string) - статус - перезачет(reoffset) или пересдача(repeating).
 +
* $initialid(int) - id исходной подписки.
 +
''Возвращаемые значения:''
 +
* (int) id добавленной записи
 +
* (bool) false если добавление не удалось
 +
''Структура работы:''
 +
# если дисиплина пересдается (статус = repeating), статус исходной подписки меняем на пересдан и обновляем запись в БД.
 +
# формируем новый объект в БД.
 +
# вставляем сформированную запись в таблицу БД.
  
====Планируются:====
+
===Планы:===

Версия 11:15, 13 августа 2009

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

get_cstream_students()

Получает список всех подписок студентов, приписаных к одному предмето-потоку.

Аргументы:

  • $csid(int) - id учебного потока.
  • $status(string) - статус подписки, по умолчанию - все(null).

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

  • (array) список подписок на учебный поток.
  • (bool) false если подписки не найдены.

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

  • формируем SQL-запрос и возвращаем список подписок:
    • если указывается статус - подписки с указанным статусом,
    • если статус не указывается или указывается как null - подписки с любым статусом.

get_cpassed_student()

Получает список всех подписок для слушателя.

Аргументы:

  • $stid(int) - id студента
  • $status(string) - статус подписки, по умолчанию - идет(go).

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

  • (array) список подписок на учебный поток.
  • (bool) false если подписки не найдены.

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

  • формируем SQL-запрос и возвращаем список подписок:
    • если указывается статус - подписки с указанным статусом,
    • если статус указывается null - подписки с любым статусом,
    • если статус не указывается - подписки со статусом go.

get_cpassed_programm()

Получает список дисциплин, изученных слушателем в рамках учебной программы.

Аргументы:

  • $stid(int) - id студента.
  • $prid(int) - id подписки на программу.
  • $status(string) - статус подписки, по умолчанию - завершен(complete).

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

  • (array) список подписок на учебный поток.
  • (bool) false если подписки не найдены.

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

  • формируем SQL-запрос и возвращаем список подписок:
    • если указывается статус - подписки с указанным статусом,
    • если статус указывается null - подписки с любым статусом,
    • если статус не указывается - подписки со статусом complete.


get_cpassed_programmitem()

Получает информацию о дисциплине, изученной слушателем (статусы "успешно завершен" и "перезачет) по id слушателя и id дисциплины.

Аргументы:

  • $stid(int) - id студента.
  • $prid(int) - id дисциплины.
  • $levelgrade(string) - уровень оценки, по умолчанию - null.

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

  • (object) подписка на дисциплину.
  • (bool) false если подписка не найдена или слушатель ее еще не изучил.

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

  • формируем SQL-запрос и возвращаем список подписок:
    • если указывается уровень оценки - подписки с указанным уровнем оценки,
    • если уровень оценки не указывается или указывается как null - подписки с любым уровнем оценки.

update_total_grade()

Установливает/обновляет студенту итоговую оценку и комментарий для существующей подписки (в перспективе, когда будет реализован справочник с историей изменения отметок - вызов функции протоколирования). Если оценка равна или выше минимальной, подписка переводится в статус "успешно завершен".

Аргументы:

  • $id(int) - id подписки.
  • $grade(int) - итоговая оценка.
  • $comment(string) - коментарий

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

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

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

  1. создаем объект для вставки в таблицу БД.
  2. (не реализовано)меняем статус подписки.
  3. обновляем запись в БД.

insert_grade_reoffset()

Добавляет оценку в режиме "перезачета".(в перспективе, когда будет реализован справочник с историей изменения отметок - вызов функции протоколирования)

Аргументы:

  • $stid(int) - id студента.
  • $prid(int) - id дисциплины.
  • $cpid(int) - id подписки на программу.
  • $grade(int) - итоговая оценка.
  • $comment(string) - коментарий.
  • $status(string) - статус - перезачет(reoffset) или пересдача(repeating).
  • $initialid(int) - id исходной подписки.

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

  • (int) id добавленной записи
  • (bool) false если добавление не удалось

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

  1. если дисиплина пересдается (статус = repeating), статус исходной подписки меняем на пересдан и обновляем запись в БД.
  2. формируем новый объект в БД.
  3. вставляем сформированную запись в таблицу БД.

Планы: