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

Материал из DOF
Перейти к: навигация, поиск
(Права плагина)
 
(не показано 30 промежуточных версий 2 участников)
Строка 1: Строка 1:
'''Расписание.'''
+
{{Infobox_Plugin
 +
| name = schedule
 +
| type = im
 +
}}
 +
== Раписание учебных занятий ==
 +
Плагин предназначен для ввода и отображения информации по расписанию учебных занятий.
  
Плагин предназначин для ввода и отображения информации по расписанию учебных занятий.
+
=== Интерфейс расписания учебных занятий ===
Плагин должен реализовывать следующие экраны интерфейса пользователя, возможность просмотра, отображения инструментов управления и использования которых определяется правами доступа пользователя:
+
Основной интерфейс раписания усебных занятий выглядит следующим образом:
 +
[[Изображение:Selection 058.png‎||350px|center|]]
  
* Экран просмотра общего шаблона расписания по структурному подразделению (структурное подразделение задается через id в ссылке) и учебному периоду. Расписание организовано по дням учебной недели/учебного цикла плюс вкладка "управление". Внутри каждой вкладки доступны подвкладки с вариантами учебной недели (общая, четная, нечетная) и вкладка "операции". Внутри подвкладок с вариантом недели - список шаблонов уроков, заданных на этот день и ссылка для добавления нового урока на этот день. Уроки отсортированы по времени начала. Отображаются колонки "время начала, продолжительность, дисциплина (берется из учебного потока), преподаватель (берутся из учебного потока), академические группы (берутся из привязки к учебному потоку), кабинет. Напротив каждой ссылки "удалить" и "редактировать".
+
Фильтр позволяет выбрать учебный период и увидеть список всех шаблонов, созданных в этом учебном периоде.
[[Изображение:Экран_просмотра_общего_шаблона_расписания.png|thumb|500px|center|Шаблон экрана "Просмотр общего шаблона расписания по структурному подразделению"]]
+
Доступны следующие способы отображения шаблонов.
* Экран импорта/экспорта шаблона учебного расписания по структурному подразделению и учебному периоду в формат CSV. [[Изображение:Экран_импорта_экспорта_шаблона_рассписания.png|thumb|500px|center|Шаблон экрана "Импорт/экспорт шаблона учебного расписания по структурному подразделению и учебному периоду в формат CSV"]]
+
 
* Экран редактирования записи в шаблоне расписания. Позволяет изменить день, вариант недели, время, продолжительность урока, тип события, место проведения (текстовое поле), статус, учебный поток (выпадающее меню - при смене учебного потока автоматически сменится преподаватель, группа и дисциплина, поскольку они задаются именно учебным потоком). Виджеты "занятость преподавателя на день", "занятость группы/ученика на день", "недельная нагрузка учебного потока" [[Изображение:Экран_редактирования_записи_в_шаблоне_рассписания.png|thumb|500px|center|Шаблон экрана "Редактирование записи в шаблоне расписания"]]
+
==== По времени ====
* Экран просмотра шаблона расписания по учебному потоку (во всех подразделениях). Аналогичен части экрана просмотра общего шаблона расписания на вариант дня недели, но отображаются только события, относящиеся к выбранному учебному потоку (id передается через ссылку), за всю учебную неделю в одну колонку, разделенную номерами/названиями дней недели. Строчка каждого события так же содержит вариант учебной недели, к которой оно относится. [[Изображение:Экран_просмотра_шаблона_рассписания_по_учебному_потоку.png|thumb|500px|center|Шаблон экрана "Просмотр шаблона расписания по учебному потоку"]]
+
[[Изображение:Selection 059.png‎||350px|center|]]
* Экран просмотра шаблона расписания по преподавателю и учебному периоду (во всех подразделениях). Аналогичен части экрана просмотра общего шаблона расписания на вариант дня недели, но отображаются только события, относящиеся к данному преподавателю (id передается через ссылку). [[Изображение:Экран_просмотра_шаблона_рассписания_по_преподавателю_и_учебному_периоду.png|thumb|500px|center|Шаблон экрана "Просмотр шаблона расписания по преподавателю и учебному периоду"]]
+
 
* Экран просмотра шаблона расписания по ученику и учебному периоду (во всех подразделения). Аналогичен экрану просмотра шаблона расписания по преподавателю. [[Изображение:Экран_просмотра_шаблона_расписания_по_ученику_и_учебному_периоду.png |thumb|500px|center|Шаблон экрана "Просмотр шаблона расписания по ученику и учебному периоду"]]
+
==== По учащимся ====
* Экран создания расписания на неделю. Размещается во вкладке "управление" экрана просмотра общего шаблона расписания. Позволяет выбрать начальную дату и вариант (кроме "нулевого"), начиная с которой будут созданы события по шаблону недели. [[Изображение:Экран_создания_расписания_на_неделю.png|thumb|500px|center|Шаблон экрана "Создание расписания на неделю"]]
+
[[Изображение:Selection 060.png‎||350px|center|]]
* Экран создания расписания на день. Размещается во вкладке "опции" экрана просмотра общего шаблона расписания. Позволяет выбрать дату и вариант (кроме "нулевого"), на которую будут созданы события по шаблону дня.
+
 
* Экран "реестр учебных дней". Отображает список созданных учебных дней в рамках подразделения и учебного периода. Рядом с каждым учебным днем отображаются параметры, с которыми он был создан.
+
==== По преподавателям ====
* Экран "экспорт учебных событий". Позволяет получить в виде файла CSV все учебные события по структурному подразделению за учебный день, диапазон дней, или учебный период.
+
[[Изображение:Selection 061.png‎||350px|center|]]
* Экран просмотра учебных событий на учебный день без группировки, отсортированных по времени.
+
 
* Экран просмотра учебных событий на учебный день по подразделению, сгруппированных по преподавателю.
+
==== По номеру кабинета ====
* Экран просмотра учебных событий на учебный день по подразделению, сгруппированных по академическим группам (для учебных потоков, привязанных к академическим группам).
+
[[Изображение:Selection 062.png‎||350px|center|]]
* Экран просмотра учебных событий на учебный день по подразделению, сгруппированных по ученикам. Возможность отфильтровать события, привязанные к учебным потокам, привязанным к академическим группам.
+
 
* Экран просмотра учебных событий на учебный день, для ученика (по id ученика, доступен ученику, законному представителю и тем, у кого есть доступ), не зависимо от подразделений.
+
=== Отчет о нагрузке шаблонов ===
* Экран просмотра учебных событий на учебный день для преподавателя (по id преподавателя, виден самому преподавателю и у кого есть доступ, изначально доступ есть у админов и руководителей структурного подразделения, которому принадлежит событие). События разделены по трем спискам: сегодняшние события, события, проведение которых не отмечено вовремя, отложенные события, точное время восполнения которых еще не назначено. С экрана есть ссылки на "Экран просмотра учебных событий на календарную дату по подразделению, сгруппированных по преподавателю" и "экран просмотра расписания по преподавателю". Напротив наступающих и неотмеченных событий есть ссылка.
+
Отчет включает себя два подотчета, один из которых отображает нагруженность учебных процессов, второй - пересечение шаблонов.
* Экран отметки о проведении события. Позволяет установить статус занятия. Преподаватель может сменить статус "запланировано" на "состоялось" или "отложено". Если разрешено политиками отдела (пока не реализовано), может изменить статус "отложено" на статус "заменено", указав новую дату события (других параметров при этом поменять не может. Администратор может изменить статус "запланировано" и "отложено" на "состоялось" и "отложено".
+
 
* Виджеты: генерируются с помощью специальных функций, вставляя на страницу, с которой были вызваны, дополнительную информацию:
+
==== Нагруженность учебных процессов ====
** Занятость преподавателя на день в шаблоне расписания с указанным вариантом (во всех структурных подразделениях): нагрузка в академических и список занятий с указанием кода группы и дисциплины.
+
[[Изображение:Selection 063.png‎||350px|center|]]
** Занятость группы/ученика на день в шаблоне расписания с указанным вариантом (во всех учебных программах, во всех структурных подразделениях): нагрузка в академических часах и список занятий с указанием дисциплины.
+
 
** Недельная нагрузка учебного потока (предмето-класса при указанном вариенте учебной недели) в шаблоне расписания: количество академических часов и список занятий в рамках данного учебного потока, приписанных к данной учебной недели.
+
==== Пересечение шаблонов  ====
** Календарь учебных дней по структурному подразделению. Отображает календарь, в котором созданные учебные дни подсвечиваются в виде ссылок на "экран просмотра учебных событий на учебный день без группировки" либо другой экран, ссылка на который была передана (к переданной ссылке добавляется id дня из реестра дней).
+
Пересечение шаблонов может быть по следующим параметрам:
 +
* По учителям
 +
* Ученикам
 +
* По кабинету
 +
[[Изображение:Selection 065.png‎||350px|center|]]
 +
 
 +
=== Интерфейс управления шаблоном раписания ===
 +
 
 +
==== Интерфейс создания/редактирования шаблона расписания: ====
 +
[[Изображение:Selection 066.png‎||350px|center|]]
 +
 
 +
==== Интерфейс просмотра шаблона расписания: ====
 +
[[Изображение:Selection 067.png‎||350px|center|]]
 +
 
 +
== API ==
 +
 
 +
=== Перехватываемые события ===
 +
Список перехватываемых событий:
 +
 
 +
==== im/obj/get_object_url ====
 +
 
 +
''Обязательные параметры (mixedvar):''
 +
* storage == schtemplates
 +
* action == view
 +
 
 +
''Дополнительные параметры (mixedvar):''
 +
* urlparams - в виде массива
 +
 
 +
''возвращаемые значения:''
 +
* Возвращает ссылку на просмотр шаблона
 +
 
 +
=== Конфиги ===
 +
Список конфигов со значениями по умолчанию:
 +
 
 +
==== enabled ====
 +
''Флаг включения плагина''
 +
* type = checkbox
 +
* code = enabled
 +
* value = 1
 +
 
 +
=== Права плагина ===
 +
Список прав:
 +
Начиная с версии 3.1.15b (3.5.3a) добавлено новое право "Право доступа к интерфейсу массовых действий с шаблонами расписания" (im schedule bulk:edit).
 +
==== create_schedule ====
 +
Право на создание расписания
 +
''Роли по умолчанию:''
 +
* Управляющий (manager)

Текущая версия на 12:42, 30 ноября 2018

Плагин
Название schedule
Тип im


Раписание учебных занятий

Плагин предназначен для ввода и отображения информации по расписанию учебных занятий.

Интерфейс расписания учебных занятий

Основной интерфейс раписания усебных занятий выглядит следующим образом:

Selection 058.png

Фильтр позволяет выбрать учебный период и увидеть список всех шаблонов, созданных в этом учебном периоде. Доступны следующие способы отображения шаблонов.

По времени

Selection 059.png

По учащимся

Selection 060.png

По преподавателям

Selection 061.png

По номеру кабинета

Selection 062.png

Отчет о нагрузке шаблонов

Отчет включает себя два подотчета, один из которых отображает нагруженность учебных процессов, второй - пересечение шаблонов.

Нагруженность учебных процессов

Selection 063.png

Пересечение шаблонов

Пересечение шаблонов может быть по следующим параметрам:

  • По учителям
  • Ученикам
  • По кабинету
Selection 065.png

Интерфейс управления шаблоном раписания

Интерфейс создания/редактирования шаблона расписания:

Selection 066.png

Интерфейс просмотра шаблона расписания:

Selection 067.png

API

Перехватываемые события

Список перехватываемых событий:

im/obj/get_object_url

Обязательные параметры (mixedvar):

  • storage == schtemplates
  • action == view

Дополнительные параметры (mixedvar):

  • urlparams - в виде массива

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

  • Возвращает ссылку на просмотр шаблона

Конфиги

Список конфигов со значениями по умолчанию:

enabled

Флаг включения плагина

  • type = checkbox
  • code = enabled
  • value = 1

Права плагина

Список прав: Начиная с версии 3.1.15b (3.5.3a) добавлено новое право "Право доступа к интерфейсу массовых действий с шаблонами расписания" (im schedule bulk:edit).

create_schedule

Право на создание расписания Роли по умолчанию:

  • Управляющий (manager)