Разработка:storages/appointments

Материал из DOF
Версия от 20:12, 4 ноября 2010; Puppetmaster (обсуждение | вклад) (Дополнительные методы:)
Перейти к: навигация, поиск
Плагин
Название appointments
Тип storages


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

appointments - Сопоставление должностей с табельными номерами.

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

  • eagreementid - id договора с сотрудником в таблице eagreements
  • schpositionid - ссылка на вакансию в штатном расписании (таблица schpositions)
  • enumber - табельный номер (уникальное поле),
  • worktime - ставка в часах/неделю,
  • date - дата заключения договора в формате unixtime
  • begindate - дата начала работы в формате unixtime
  • enddate - дата окончания работы в формате unixtime
  • departmentid - подразделение, которому принадлежит учебный процесс в таблице departments
  • status - список статусов указан в одноименном плагине рабочих процессов appointments

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

get_listing()

находит фрагмент списка учебных периодов для вывода таблицы

Аргументы:

  • $limitfrom(int) - начиная с какой записи просматривается фрагмент списка записей.
  • $limitnum(int) - сколько записей нужно извлечь из базы.
  • $conds(object) - список параметров для выборки периодов, по умолчанию null.
  • $countonly(bool) - определяет, нужно ли вернуть список записей или просто их количество, по умолчанию false.

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

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


get_select_listing()

показывает фрагмент sql-запроса после слова WHERE

Аргументы:

  • $inputconds(object) - список полей с условиями запроса в формате "поле_БД->значение"

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

  • string


get_numberof()

находит количество периодов

Аргументы:

  • $select(string) - критерии отбора записей

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

  • int - количество найденных записей


is_enumber_unique()

Есть ли другие записи с таким табельным номером

Аргументы:

  • $enumber(string) - табельный номер

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

  • bool


get_free_worktime()

находит допустимое время вакансии

Аргументы:

  • $schpositionid(int) - id вакансии

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

  • int


get_person_by_appointment()

находит объект из таблицы persons по id в таблице appointments

Аргументы:

  • $appointment(object) - объект из таблицы appointments
  • $appointment(int) - id объекта из таблицы appointments
  • $enum(bool) - возвращать ли табельный номер, по умолчанию false

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

  • object - объект из таблицы persons
  • bool - false если ничего не нашлось


get_persons_by_appointments($appointments)

находит список персон по переданным записям appointments, отсортированный по ФИО

Аргументы:

  • array $appointments - массив записей из таблицы appointments

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

  • array - массив записей из таблицы persons, упорядоченных по sortname ASC. К каждой записи добавлено поле enumber - табельный номер поле appointmentid - id назначения на должность
  • bool false - если что-то не получилось

События

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

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

Таблица событий, которые перехватывает этот плагин
Тип плагина Код плагина Код события Доп. данные Пояснение
Этот плагин не перехватывает никаких событий

Генерируемые события

Таблица событий, которые генерирует этот плагин
Тип плагина Код плагина Код события Доп. данные Пояснение
storage appointments insert Массив, содержащий в поле "new" объект с данными для вставки в таблицу.

Пример: array('new' => $dataobject)

Генерируется каждый раз при вставке новой записи в таблицу.
storage appointments update Массив, содержащий в поле "new" обновленный объект, и в поле "old" объект со старыми данными, до обновления записи.

Пример: array('old' => $dataobject_old, 'new' => $dataobject_new)

Генерируется каждый раз при обновлении записи в таблице.
storage appointments delete Массив, содержащий в поле "old" объект с данными, которые удаляются из таблицы

Пример: array('old' => $dataobject)

Генерируется каждый раз при удалении записи из таблицы.