Разработка:storages/appointments — различия между версиями
(→Подробный формат полей в таблице:) |
(→Перехватываемые события) |
||
(не показано 6 промежуточных версий 2 участников) | |||
Строка 19: | Строка 19: | ||
===Дополнительные методы:=== | ===Дополнительные методы:=== | ||
+ | |||
+ | |||
+ | ===='''get_listing($limitfrom, $limitnum, $conds=null, $countonly=false)'''==== | ||
+ | |||
+ | находит фрагмент списка учебных периодов для вывода таблицы | ||
+ | |||
+ | ''Аргументы:'' | ||
+ | * $limitfrom(int) - начиная с какой записи просматривается фрагмент списка записей. | ||
+ | * $limitnum(int) - сколько записей нужно извлечь из базы. | ||
+ | * $conds(object) - список параметров для выборки периодов, по умолчанию - null. | ||
+ | * $countonly(bool) - определяет, нужно ли вернуть список записей или просто их количество, по умолчанию - false. | ||
+ | ''Возвращаемое значение:'' | ||
+ | * array - массив записей из базы | ||
+ | * bool - false, если произошла ошибка. | ||
+ | |||
+ | |||
+ | ===='''get_select_listing($inputconds)'''==== | ||
+ | |||
+ | показывает фрагмент sql-запроса после слова WHERE | ||
+ | |||
+ | ''Аргументы:'' | ||
+ | * $inputconds(object) - список полей с условиями запроса в формате "поле_БД->значение". | ||
+ | ''Возвращаемое значение:'' | ||
+ | * string | ||
+ | |||
+ | |||
+ | ===='''get_numberof($select)'''==== | ||
+ | |||
+ | находит количество периодов | ||
+ | |||
+ | ''Аргументы:'' | ||
+ | * $select(string) - критерии отбора записей. | ||
+ | ''Возвращаемое значение:'' | ||
+ | * int - количество найденных записей. | ||
+ | |||
+ | |||
+ | ===='''is_enumber_unique($enumber)'''==== | ||
+ | |||
+ | Есть ли другие записи с таким табельным номером | ||
+ | |||
+ | ''Аргументы:'' | ||
+ | * $enumber(string) - табельный номер. | ||
+ | ''Возвращаемое значение:'' | ||
+ | * bool | ||
+ | |||
+ | |||
+ | ===='''get_free_worktime($schpositionid)'''==== | ||
+ | |||
+ | находит допустимое время вакансии | ||
+ | |||
+ | ''Аргументы:'' | ||
+ | * $schpositionid(int) - id вакансии из таблицы [[Разработка:storages/schpositions | schpositions ]] | ||
+ | ''Возвращаемое значение:'' | ||
+ | * int | ||
+ | |||
+ | |||
+ | ===='''get_person_by_appointment($appointment, $enum = false)'''==== | ||
+ | |||
+ | находит объект из таблицы persons по id в таблице [[Разработка:storages/appointments | appointments ]] | ||
+ | |||
+ | ''Аргументы:'' | ||
+ | * $appointment(object) - объект из таблицы [[Разработка:storages/appointments | appointments ]]. | ||
+ | * $appointment(int) - id объекта из таблицы [[Разработка:storages/appointments | appointments ]]. | ||
+ | * $enum(bool) - возвращать ли табельный номер, по умолчанию - false. | ||
+ | ''Возвращаемое значение:'' | ||
+ | * object - объект из таблицы [[Разработка:storages/persons | persons ]]. | ||
+ | * bool - false если ничего не нашлось. | ||
+ | |||
+ | |||
+ | ===='''get_persons_by_appointments($appointments)'''==== | ||
+ | |||
+ | находит список персон по переданным записям отсортированный по ФИО | ||
+ | |||
+ | ''Аргументы:'' | ||
+ | * array $appointments - массив записей из таблицы [[Разработка:storages/appointments | appointments ]]. | ||
+ | ''Возвращаемое значение:'' | ||
+ | * array - массив записей из таблицы [[Разработка:storages/persons | persons ]], упорядоченных по sortname ASC. К каждой записи добавлено поле enumber - табельный номер, поле appointmentid - id назначения на должность. | ||
+ | * bool false - если произошла ошибка. | ||
+ | |||
+ | |||
+ | ===='''get_appointment_by_persons($personid)'''==== | ||
+ | |||
+ | Возвращает список табельных номеров для персоны. | ||
+ | |||
+ | ''Аргументы:'' | ||
+ | * $persons(int) - массив записей из таблицы [[Разработка:storages/persons | persons ]]. | ||
+ | ''Возвращаемое значение:'' | ||
+ | * array - массив записей из таблицы [[Разработка:storages/appointments | appointments ]]. | ||
+ | * bool false - если произошла ошибка. | ||
===События=== | ===События=== | ||
Строка 31: | Строка 120: | ||
! Пояснение | ! Пояснение | ||
|- | |- | ||
− | | | + | | storage |
+ | | appointments | ||
+ | | insert | ||
+ | | | ||
+ | | Обработка события добавления в собственный справочник | ||
+ | |- | ||
+ | | storage | ||
+ | | appointments | ||
+ | | update | ||
+ | | | ||
+ | | Обработка события обновления записи в собственном справочнике | ||
+ | |- | ||
+ | | im | ||
+ | | employees | ||
+ | | delete_person_info | ||
+ | | | ||
+ | | Ответ на запрос интерфейса. Отправляет число записей, которые данная персона может перевести в мусорный статус | ||
+ | |- | ||
+ | | im | ||
+ | | employees | ||
+ | | delete_person | ||
+ | | | ||
+ | | Ответ на запрос интерфейса. Переводит в мусорный статус записи, относящиеся к удаляемой персоне и доступные для персоны, запросившей удаление | ||
|} | |} | ||
+ | |||
====Генерируемые события==== | ====Генерируемые события==== | ||
{| border="1" | {| border="1" | ||
Строка 63: | Строка 175: | ||
|Генерируется каждый раз при удалении записи из таблицы. | |Генерируется каждый раз при удалении записи из таблицы. | ||
|} | |} | ||
− | |||
− | |||
− |
Текущая версия на 15:37, 21 января 2015
Плагин | |
Название | appointments |
Тип | storages |
Содержание
- 1 Таблица в базе данных
- 2 Дополнительные методы:
- 2.1 get_listing($limitfrom, $limitnum, $conds=null, $countonly=false)
- 2.2 get_select_listing($inputconds)
- 2.3 get_numberof($select)
- 2.4 is_enumber_unique($enumber)
- 2.5 get_free_worktime($schpositionid)
- 2.6 get_person_by_appointment($appointment, $enum = false)
- 2.7 get_persons_by_appointments($appointments)
- 2.8 get_appointment_by_persons($personid)
- 3 События
Таблица в базе данных
appointments - Сопоставление должностей с табельными номерами.
Подробный формат полей в таблице:
- eagreementid - id договора с сотрудником в таблице eagreements
- schpositionid - ссылка на вакансию в штатном расписании (таблица schpositions)
- enumber - табельный номер (уникальное поле),
- worktime - ставка в часах/неделю,
- date - дата заключения договора в формате unixtime
- begindate - дата начала работы в формате unixtime
- enddate - дата окончания работы в формате unixtime
- departmentid - подразделение, которому принадлежит учебный процесс в таблице departments
- status - список статусов указан в одноименном плагине рабочих процессов appointments
Дополнительные методы:
get_listing($limitfrom, $limitnum, $conds=null, $countonly=false)
находит фрагмент списка учебных периодов для вывода таблицы
Аргументы:
- $limitfrom(int) - начиная с какой записи просматривается фрагмент списка записей.
- $limitnum(int) - сколько записей нужно извлечь из базы.
- $conds(object) - список параметров для выборки периодов, по умолчанию - null.
- $countonly(bool) - определяет, нужно ли вернуть список записей или просто их количество, по умолчанию - false.
Возвращаемое значение:
- array - массив записей из базы
- bool - false, если произошла ошибка.
get_select_listing($inputconds)
показывает фрагмент sql-запроса после слова WHERE
Аргументы:
- $inputconds(object) - список полей с условиями запроса в формате "поле_БД->значение".
Возвращаемое значение:
- string
get_numberof($select)
находит количество периодов
Аргументы:
- $select(string) - критерии отбора записей.
Возвращаемое значение:
- int - количество найденных записей.
is_enumber_unique($enumber)
Есть ли другие записи с таким табельным номером
Аргументы:
- $enumber(string) - табельный номер.
Возвращаемое значение:
- bool
get_free_worktime($schpositionid)
находит допустимое время вакансии
Аргументы:
- $schpositionid(int) - id вакансии из таблицы schpositions
Возвращаемое значение:
- int
get_person_by_appointment($appointment, $enum = false)
находит объект из таблицы persons по id в таблице appointments
Аргументы:
- $appointment(object) - объект из таблицы appointments .
- $appointment(int) - id объекта из таблицы appointments .
- $enum(bool) - возвращать ли табельный номер, по умолчанию - false.
Возвращаемое значение:
- object - объект из таблицы persons .
- bool - false если ничего не нашлось.
get_persons_by_appointments($appointments)
находит список персон по переданным записям отсортированный по ФИО
Аргументы:
- array $appointments - массив записей из таблицы appointments .
Возвращаемое значение:
- array - массив записей из таблицы persons , упорядоченных по sortname ASC. К каждой записи добавлено поле enumber - табельный номер, поле appointmentid - id назначения на должность.
- bool false - если произошла ошибка.
get_appointment_by_persons($personid)
Возвращает список табельных номеров для персоны.
Аргументы:
- $persons(int) - массив записей из таблицы persons .
Возвращаемое значение:
- array - массив записей из таблицы appointments .
- bool false - если произошла ошибка.
События
В этом разделе описан список всех событий, которые генерируются, перехватываются и обрабатываются этим плагином.
Перехватываемые события
Тип плагина | Код плагина | Код события | Доп. данные | Пояснение |
---|---|---|---|---|
storage | appointments | insert | Обработка события добавления в собственный справочник | |
storage | appointments | update | Обработка события обновления записи в собственном справочнике | |
im | employees | delete_person_info | Ответ на запрос интерфейса. Отправляет число записей, которые данная персона может перевести в мусорный статус | |
im | employees | delete_person | Ответ на запрос интерфейса. Переводит в мусорный статус записи, относящиеся к удаляемой персоне и доступные для персоны, запросившей удаление |
Генерируемые события
Тип плагина | Код плагина | Код события | Доп. данные | Пояснение |
---|---|---|---|---|
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) |
Генерируется каждый раз при удалении записи из таблицы. |