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

Материал из DOF
Перейти к: навигация, поиск
(Дополнительные методы:)
(Подробный формат полей в таблице:: описания полей)
Строка 7: Строка 7:
  
 
====Подробный формат полей в таблице:====
 
====Подробный формат полей в таблице:====
*firstname
+
*firstname - имя
*middlename  
+
*middlename - отчество
*lastname
+
*lastname - фамилия
*sortname
+
*sortname - ФИО для сортировки по умолчанию (нужно ли оно?)
*preferredname
+
*preferredname - префикс для имения (Mr. Dr. Г-н, Г-а)
 
*dateofbirth - дата рождения у UTS
 
*dateofbirth - дата рождения у UTS
 
*gender - пол  (male, female, unknown)
 
*gender - пол  (male, female, unknown)
 
*email - основной адрес электронной почты
 
*email - основной адрес электронной почты
*phonehome
+
*phonehome - домашний телефон
*phonework
+
*phonework - рабочий телефон
*phonecell
+
*phonecell - сотовый телефон
 
*passtypeid - тип удостоверения личности (1 - свидетельство о рождение, 2 - паспорт гражданина РФ, 3 - загранпасспорт, 4 - разрешение на временное проживание лица без гражданства, 5 - вид на жительство, 6 - военный билет, 7 - водительсткое удостоверение пластиковое, 8 - вод. удостоверение форма 1, 9 - вод. удостоверение международное)
 
*passtypeid - тип удостоверения личности (1 - свидетельство о рождение, 2 - паспорт гражданина РФ, 3 - загранпасспорт, 4 - разрешение на временное проживание лица без гражданства, 5 - вид на жительство, 6 - военный билет, 7 - водительсткое удостоверение пластиковое, 8 - вод. удостоверение форма 1, 9 - вод. удостоверение международное)
 
*passportserial - серия удостоверения личности (если предусмотрена типом документа)
 
*passportserial - серия удостоверения личности (если предусмотрена типом документа)

Версия 19:14, 15 октября 2009

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


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

persons - адресная книга, в которую включены все участники учебного процесса: учащиеся, законные представители, сотрудники, преподаватели и т. д.

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

  • firstname - имя
  • middlename - отчество
  • lastname - фамилия
  • sortname - ФИО для сортировки по умолчанию (нужно ли оно?)
  • preferredname - префикс для имения (Mr. Dr. Г-н, Г-а)
  • dateofbirth - дата рождения у UTS
  • gender - пол (male, female, unknown)
  • email - основной адрес электронной почты
  • phonehome - домашний телефон
  • phonework - рабочий телефон
  • phonecell - сотовый телефон
  • passtypeid - тип удостоверения личности (1 - свидетельство о рождение, 2 - паспорт гражданина РФ, 3 - загранпасспорт, 4 - разрешение на временное проживание лица без гражданства, 5 - вид на жительство, 6 - военный билет, 7 - водительсткое удостоверение пластиковое, 8 - вод. удостоверение форма 1, 9 - вод. удостоверение международное)
  • passportserial - серия удостоверения личности (если предусмотрена типом документа)
  • passportnum - номер удостоверения личности
  • passportdate - дата выдачи удостоверения личности
  • passportem - название организации, выдавшей удостоверение личности
  • citizenship - гражданство
  • passportaddrid - адрес прописки по паспорту
  • mdluser - id пользователя в moodle (если есть)
  • sync2moodle - признак синхронизации с moodle
  • addressid - текущий адрес
  • status - список статусов указан в одноименном плагине рабочих процессов persons
  • adddate - дата добавления
  • departmentid - основной отдел, к которому приписан человек (может редактировать его данные в persons)

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

get_list_synced()

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

Аргументы: нет

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

  • (array) список персон, требующих синхронизации.

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

По SQL-запросу находим список необходимых персон.

get_list_normal()

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

Аргументы: нет

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

  • (array) список неудаленных персон.

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

По SQL-запросу находим список необходимых персон.

get_list_search_lastname()

Получает список персон по запрашиваемой фамилии

Аргументы:

  • $query(string) - фамилия, которую ищем.

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

  • (array) список персон.

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

По SQL-запросу находим список необходимых персон.

is_email_unique()

Проверяет, если другие персоны с указанным email.

Аргументы:

  • $email(string) - электронный адрес, который ищем.

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

  • (bool) true - нет, false - да.

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

По SQL-запросу находим количество персон и возвращаем результат.

reg_moodleuser()

Регестрирует персону для переданного пользователя Moodle

Аргументы:

  • $USER(object) - пользователь Moodle.

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

  • (int) id созданной персоны.
  • (bool) false если запись не удалась.
make_sortname()

Создает сортировочное имя для поля записи в таблицу БД. Защищенный метод.

Аргументы:

  • $person(object) - объект записи в БД.

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

  • (string) имя для сортировки.

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

Формирует имя в формате ФИО, исключая из него определенные пункты, если таковых не существует.

get_fullname()

Получает полное имя пользователя в формате ФИО.

Аргументы:

  • $id(int) - id записи пользователя.

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

  • (string) - полное имя пользователя или пустая строка, если пользователь не найден.

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

  1. по id находим запись из таблицы БД.
  2. формируем строку в формате ФИО и возвращаем результат.


  • get_bu($userid = NULL,$create=false), get_by_moodleid($muserid = NULL,$create=false), get_by_moodleid_id($muserid = NULL,$create=false) - Получить запись по mdluser.

Планы:

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

  • Получить запись вместе с адресом
  • Сохранить (добавить или обновить) запись вместе с адресом
  • Найти список людей, относящихся к структурному подразделению
  • Удалить (изменить статус на "удален")