Разработка:storages/persons
Плагин | |
Название | 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) - полное имя пользователя или пустая строка, если пользователь не найден.
Структура работы:
- по id находим запись из таблицы БД.
- формируем строку в формате ФИО и возвращаем результат.
- get_bu($userid = NULL,$create=false), get_by_moodleid($muserid = NULL,$create=false), get_by_moodleid_id($muserid = NULL,$create=false) - Получить запись по mdluser.
Планы:
Дополнительные методы:
- Получить запись вместе с адресом
- Сохранить (добавить или обновить) запись вместе с адресом
- Найти список людей, относящихся к структурному подразделению
- Удалить (изменить статус на "удален")