Разработка:lib/workflow.php — различия между версиями

Материал из DOF
Перейти к: навигация, поиск
(get_available($))
 
(не показаны 2 промежуточные версии этого же участника)
Строка 5: Строка 5:
  
 
== Описание ==
 
== Описание ==
Родительский класс интерфейса рабочих процессов
+
Родительский класс интерфейса рабочих процессов.
 +
Вносит дополнительную характеристику конкретных объектов в виде текущего статуса объекта.
 +
Выполняет контроль перехода объекта в новый статус, а также устанавливает начальный статус созданного объекта при инициализации объекта.
  
 
== API ==
 
== API ==
Строка 15: Строка 17:
 
* (string) - название хранилища
 
* (string) - название хранилища
  
====update($dataobject,$id = NULL,$quiet=false,$bulk=false)====
+
==== get_list() ====
Обновляет запись в БД.
+
Возвращает массив всех состояний, в которых может находиться экземпляр объекта, обрабатываемый этим плагином
 
 
''Аргументы:''
 
* $dataobject (object) - данные для вставки в БД
 
* $id (int) - id записи в базе, если значение отсутствует id ищется в dataobject.
 
* $quiet (bool) - флаг запрета генерации событий, true - запретить, false - разрешить.
 
* $bulk (bool) - true если операций последует много, false если обновлено будет всего несколько записей (для производительности).
 
 
 
''Возвращаемые значения:''
 
* (bool), true если запись обновилась
 
* (bool), false если операция не удалась
 
 
 
====delete($id,$quiet=false)====
 
Удаляет запись из БД.
 
 
 
''Аргументы:''
 
* $id (int) - id записи в базе.
 
* $quiet (bool) - флаг запрета генерации событий, true - запретить, false - разрешить.
 
 
 
''Возвращаемые значения:''
 
* (bool), true если запись удалилась
 
* (bool), false если операция не удалась
 
 
 
====get($conditions, $fields='*', $strictness=IGNORE_MISSING)====
 
Получает запись из БД.
 
 
 
''Аргументы:''
 
* $conditions(int) - id записи в таблице
 
* $fields (string) - название возвращаемых полей, '*' - все.
 
* $strictness (constant) -
 
    IGNORE_MISSING - если запись не найдена - то функция возвращает false и выводит отладочное сообщение
 
    IGNORE_MULTIPLE - вернуть первое значение и игнорировать остальные, если нашлось больше одной записи (не рекомендуется)
 
    MUST_EXIST - если запись не найдена, или найдено несколько записей вместо одной, то будет вызвано исключение.
 
 
 
''Возвращаемые значения:''
 
* (object), если запись нашлась
 
* (bool), false если операция не удалась
 
 
 
====get_columns($usecache = true)====
 
 
 
Возвращает детальную информацию о полях в таблице. Информация кешируется
 
 
 
''Аргументы:''
 
* $usecache (bool) - флаг для использования внутреннего кеширования. По-умолчанию включено
 
 
 
''Возвращаемые значения:''
 
* (array) объекты database_column_info проиндексированные по названию полей
 
 
 
====get_field($conditions,$return, $strictness=IGNORE_MISSING)====
 
Возвращает значение поля из БД.
 
 
 
''Аргументы:''
 
* $conditions(int|array) - id записи|массив полей и значений в таблице
 
* $return (string) - название поля в таблице.
 
* $strictness (constant) -
 
    IGNORE_MISSING - если запись не найдена - то функция возвращает false и выводит отладочное сообщение
 
    IGNORE_MULTIPLE - вернуть первое значение и игнорировать остальные, если нашлось больше одной записи (не рекомендуется)
 
    MUST_EXIST - если запись не найдена, или найдено несколько записей вместо одной, то будет вызвано исключение.
 
  
 
''Возвращаемые значения:''
 
''Возвращаемые значения:''
* (string), если запись нашлась
+
* (array) - массив статусов
* (bool), false если операция не удалась
 
  
====get_record($conditions, $fields='*', $strictness=IGNORE_MISSING)====
+
==== get_name() ====
Получает запись из БД по критериям.
+
Получить локализованное имя статуса
  
 
''Аргументы:''  
 
''Аргументы:''  
* $conditions(array) - массив полей и значений в таблице
+
* (string) $status - код статуса
* $fields (string) - название возвращаемых полей, '*' - все.
 
* $strictness (constant) -
 
    IGNORE_MISSING - если запись не найдена - то функция возвращает false и выводит отладочное сообщение
 
    IGNORE_MULTIPLE - вернуть первое значение и игнорировать остальные, если нашлось больше одной записи (не рекомендуется)
 
    MUST_EXIST - если запись не найдена, или найдено несколько записей вместо одной, то будет вызвано исключение.
 
  
 
''Возвращаемые значения:''
 
''Возвращаемые значения:''
* (object), если запись нашлась
+
* (string) - локализованное имя статус
* (bool), false если операция не удалась
 
  
====get_records($conditions=array(), $sort='', $fields='*', $limitfrom=0, $limitnum=0)====
+
==== get_available() ====
Получает записи из БД по критериям.
+
Получить список статусов, в которые текущий объект может перейти
  
 
''Аргументы:''  
 
''Аргументы:''  
* $conditions(array) - массив полей и значений в таблице
+
* (int) $id - id записи в таблице
* $sort (string) - сортировка полей
 
* $fields (string) - название возвращаемых полей, '*' - все
 
* $limitfrom (int) - начиная с какой записи в выборке возвращать результат
 
* $limitnum (int) - сколько записей вернуть
 
  
 
''Возвращаемые значения:''
 
''Возвращаемые значения:''
* (object), если записи нашлась
+
* (array) - массив доступных статусов
* (bool), false если операция не удалась
+
* (false) - отсутствуют доступные статусы
  
====get_records_select($select, array $params=null, $sort='', $fields='*', $limitfrom=0, $limitnum=0)====
+
==== change() ====
Получает записи из БД по sql-запросу после WHERE.
+
Перевод текущего объекта в указанный статус
  
 
''Аргументы:''  
 
''Аргументы:''  
* $select (string) - sql-запрос после WHERE
+
* (int) $id - ID объекта
* $params (array) - маска значений
+
* (string) $newstatus - Статус, в который требуется перевести объект
* $sort (string) - сортировка полей
+
* (array) $options - Массив дополнительных опций
* $fields (string) - название возвращаемых полей, '*' - все
 
* $limitfrom (int) - начиная с какой записи в выборке возвращать результат
 
* $limitnum (int) - сколько записей вернуть
 
  
 
''Возвращаемые значения:''
 
''Возвращаемые значения:''
* (object), если записи нашлась
+
* (bool) - результат перевода объекта в новый статус
* (bool), false если операция не удалась
 
  
====get_records_sql($sql, array $params=null, $limitfrom=0, $limitnum=0)====
+
==== init() ====
Получает записи из БД по sql-запросу.
+
Первичная инициализация объекта
  
 
''Аргументы:''  
 
''Аргументы:''  
* $sql (string) - sql-запрос
+
* (int) $id - id записи объекта
* $params (array) - маска значений
 
* $limitfrom (int) - начиная с какой записи в выборке возвращать результат
 
* $limitnum (int) - сколько записей вернуть
 
  
 
''Возвращаемые значения:''
 
''Возвращаемые значения:''
* (object), если записи нашлась
+
* (bool) - статус иницилизации объекта
* (bool), false если операция не удалась
 

Текущая версия на 11:26, 16 мая 2017

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


Описание

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

API

get_storage()

Получить название хранилища, которое обслуживает текущий учебный процесс

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

  • (string) - название хранилища

get_list()

Возвращает массив всех состояний, в которых может находиться экземпляр объекта, обрабатываемый этим плагином

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

  • (array) - массив статусов

get_name()

Получить локализованное имя статуса

Аргументы:

  • (string) $status - код статуса

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

  • (string) - локализованное имя статус

get_available()

Получить список статусов, в которые текущий объект может перейти

Аргументы:

  • (int) $id - id записи в таблице

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

  • (array) - массив доступных статусов
  • (false) - отсутствуют доступные статусы

change()

Перевод текущего объекта в указанный статус

Аргументы:

  • (int) $id - ID объекта
  • (string) $newstatus - Статус, в который требуется перевести объект
  • (array) $options - Массив дополнительных опций

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

  • (bool) - результат перевода объекта в новый статус

init()

Первичная инициализация объекта

Аргументы:

  • (int) $id - id записи объекта

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

  • (bool) - статус иницилизации объекта