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

Материал из DOF
Перейти к: навигация, поиск
(Новая: == Отделы == Этот интерфейс позволяет просматривать и редактировать информацию о структурных подразде...)
 
Строка 2: Строка 2:
 
Этот интерфейс позволяет просматривать и редактировать информацию о структурных подразделениях.
 
Этот интерфейс позволяет просматривать и редактировать информацию о структурных подразделениях.
 
=== Список отделов ===
 
=== Список отделов ===
Программы выводятся списком, каждая строчка в котором отображает информацию о структурном подразделении. В левом верхнем углу экрана содержится ссылка на создание подразделения.
+
Подразделения выводятся списком, каждая строчка в котором отображает информацию о структурном подразделении. В левом верхнем углу экрана содержится ссылка на создание подразделения.
  
 
Пользователь попадает на эту страницу, только если у него есть право просматривать данные своего подразделения (в этом случае необходимо указать дополнительный параметр - id подразделения), либо имеет право видеть все подразделения.
 
Пользователь попадает на эту страницу, только если у него есть право просматривать данные своего подразделения (в этом случае необходимо указать дополнительный параметр - id подразделения), либо имеет право видеть все подразделения.
Строка 38: Строка 38:
 
* Добавить под названием родительского подразделения ссылки "перейти на уровень вверх" и "перейти на верхний уровень".
 
* Добавить под названием родительского подразделения ссылки "перейти на уровень вверх" и "перейти на верхний уровень".
 
* Выводить в табличку всю древовидную структуру дочрних подразделений, а не только один уровень.
 
* Выводить в табличку всю древовидную структуру дочрних подразделений, а не только один уровень.
 +
 +
== API ==
 +
Здесь описаны функции для работы со списком подразделений.
 +
===== get_listing() =====
 +
 +
''Параметры:''
 +
* $limitfrom - с какой записи начинать вывод
 +
* $limitnum - сколько записей выводить на одной странице
 +
* $conds - Обьект, содержащий данные с условиями выборки, в формате ''поле_БД->значение'' по умолчанию пустой массив
 +
 +
''Возвращаемые значения:''
 +
* (array) массив записей из базы, или false в случае ошибки
 +
 +
===== form() =====
 +
Возвращает форму создания/редактирования подразделений с начальными данными
 +
 +
''Параметры:''
 +
* $id - id подразделения в таблице [[Разработка:storages/departments|departments]], для редактирования которой вызывается форма. По умолчанию NULL (создается новое подразделение).
 +
 +
''Возвращаемые значения:''
 +
* [[Разработка:moodleQuickForm|moodleQuickForm]] object - объект формы, с загруженными в нее исходными данными.
 +
 +
===== showlist() =====
 +
Возвращает html-код списка подразделений.
 +
 +
''Параметры:''
 +
* $list - массив записей из таблицы [[Разработка:storages/departments|departments]] для отображения.
 +
 +
''Возвращаемые значения:''
 +
* (string) - html-код или false в случае ошибки
 +
 +
===== show_id() =====
 +
Возвращает html-код отображения информации об одном подразделении
 +
 +
''Параметры:''
 +
* $id - id записи в таблице [[Разработка:storages/departments|departments]]
 +
 +
''Возвращаемые значения:''
 +
* (string) - html-код или false в случае ошибки

Версия 11:15, 5 октября 2009

Отделы

Этот интерфейс позволяет просматривать и редактировать информацию о структурных подразделениях.

Список отделов

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

Пользователь попадает на эту страницу, только если у него есть право просматривать данные своего подразделения (в этом случае необходимо указать дополнительный параметр - id подразделения), либо имеет право видеть все подразделения.

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

Также, если указать дополнительный параметр leaddepid - id подразделения, страница выведет список всех дочерних подразделений указанного подразделения.

Создание и редактирование

Это действие доступно только для пользователей с правом редактирования подразделения.

Назначение полей:

  • Название - название подразделения. Обязательное поле.
  • Кодовое название - код подразделения, обязательное поле. Не может быть создано двух подразделений с одинаковым кодом.
  • Руководитель - научный руководитель структурного подразделения. По умолчанию не указан. Выбирается из списка существующих персон.
  • Вышестоящий отдел - какому подразделению подчиняется данное подразделение. По умолчанию стоит самое первое созданное подразделение. Выбирается из списка существующих подразделений. Может принимать значение - нет (штатная ситуация). Обязательное поле.
  • Часовой пояс - в какой временной зоне находится подразделение. Необходимо для правильного расчета времени при составлении рассписания и др. Выбирается по шкале универсального координированного времени, UTC. По умолчанию время сервера (GMT+5). Обязательное поле.


Также имеет дополнительные поля адреса, которые скрыты. Если данные поля активны, то на подразделение создается/редактируется его адрес.

При создании/редактировании подразделения

  • Поле "код предмета" должно быть уникальным и содержать латинские буквы и числа

При создании/редактировании адреса подразделения

  • Индекс должен быть числовым.
  • Если указывается улица, то необходимо указать ее тип.

Карточка отдела

Выводит всю информацию о структурном подразделении. Имеет те же поля, что и в форме создания/редактирования включая адрес подразделения. Также выводит список всех дочерних подразделения данного позразделения в древовидной структуре.

Планы

  • Добавить колонку "дочерние отделы". И в ней ссылка на список дочерних подразделений.
  • Добавить под названием родительского подразделения ссылки "перейти на уровень вверх" и "перейти на верхний уровень".
  • Выводить в табличку всю древовидную структуру дочрних подразделений, а не только один уровень.

API

Здесь описаны функции для работы со списком подразделений.

get_listing()

Параметры:

  • $limitfrom - с какой записи начинать вывод
  • $limitnum - сколько записей выводить на одной странице
  • $conds - Обьект, содержащий данные с условиями выборки, в формате поле_БД->значение по умолчанию пустой массив

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

  • (array) массив записей из базы, или false в случае ошибки
form()

Возвращает форму создания/редактирования подразделений с начальными данными

Параметры:

  • $id - id подразделения в таблице departments, для редактирования которой вызывается форма. По умолчанию NULL (создается новое подразделение).

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

  • moodleQuickForm object - объект формы, с загруженными в нее исходными данными.
showlist()

Возвращает html-код списка подразделений.

Параметры:

  • $list - массив записей из таблицы departments для отображения.

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

  • (string) - html-код или false в случае ошибки
show_id()

Возвращает html-код отображения информации об одном подразделении

Параметры:

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

  • (string) - html-код или false в случае ошибки