Разработка:workflows/invsets — различия между версиями
Yumeneco (обсуждение | вклад) (Новая: ====Возможные статусы:==== * новый * доступен * временно не доступен * расформирован) |
Yumeneco (обсуждение | вклад) (→Маршруты статусов) |
||
| (не показано 10 промежуточных версий 3 участников) | |||
| Строка 1: | Строка 1: | ||
| − | ====Возможные статусы:==== | + | {{Infobox_Plugin |
| − | * новый | + | | name = invsets |
| − | * доступен | + | | type = workflows |
| − | * | + | }} |
| − | * | + | |
| + | ==Возможные статусы:== | ||
| + | * Доступен (active) - этот комплект сформирован и его можно выдавать | ||
| + | * Выдан (granted) - комплект выдан в пользование | ||
| + | * Расформирован (canceled) | ||
| + | * Не доступен (notavailable) по какой-то причине комплект не доступен(одна из сосатвляющих в ремонте или нет составляющих для полного комплекта) | ||
| + | * Удален (deleted) - ошибочная забивка данных | ||
| + | |||
| + | == Метастатусы == | ||
| + | * Активный: granted | ||
| + | * Актуальный: active, granted, notavailable | ||
| + | * Реальный: active, granted, canceled, notavailable | ||
| + | * Мусорный: deleted | ||
| + | |||
| + | == Маршруты статусов== | ||
| + | Правила описания маршрутов: описания возможностей перехода в новый статус на основании текущего статуса и условия, действительные только при переходе в новый статус из текущего статуса. При инициализации статус объекта равен доступный(active) | ||
| + | |||
| + | ==== Доступен(active) ==== | ||
| + | Возможные переходы ИЗ этого статуса: | ||
| + | * Выдан (granted) | ||
| + | * Расформирован (canceled) | ||
| + | * Не доступен (notavailable) | ||
| + | * Удален (deleted) | ||
| + | |||
| + | ==== Выдан (granted) ==== | ||
| + | Возможные переходы ИЗ этого статуса: | ||
| + | * Доступен(active) - если кому выдали комплект, то он должен сперва вернуться назад(доступен) | ||
| + | |||
| + | ==== Не доступен (notavailable) ==== | ||
| + | Возможные переходы ИЗ этого статуса: | ||
| + | * Доступный(active) | ||
| + | * Расформирован (canceled) | ||
| + | * Удален (deleted) | ||
| + | |||
| + | ==== Расформирован (canceled) ==== | ||
| + | Это конечный статус. | ||
| + | |||
| + | ==== Удален (deleted) ==== | ||
| + | Это конечный статус. | ||
| + | |||
| + | == API == | ||
| + | |||
| + | ==== get_list() ==== | ||
| + | Получить список всех возможных статусов | ||
| + | |||
| + | ''Аргументы:'' | ||
| + | * (нет) | ||
| + | ''Возвращаемые значения:'' | ||
| + | * Массив, со списком всех возможных статусов в формате "обозначение" => "Перевод" | ||
| + | |||
| + | ==== get_name() ==== | ||
| + | Получить название статуса по его обозначению в базе данных | ||
| + | |||
| + | ''Аргументы:'' | ||
| + | * (string) $status - обозначение статуса латинскими буквами | ||
| + | ''Возвращаемые значения:'' | ||
| + | * (string|bool) - перевод для этого статуса, либо false, если он не обнаружен в списке допустимых | ||
| + | |||
| + | ==== get_available() ==== | ||
| + | Получить список статусов, в которые может перейти указанный комплект. | ||
| + | |||
| + | ''Аргументы:'' | ||
| + | * $id - id учебного комплекта в таблице [[Разработка:storages/invsets|invsets]] | ||
| + | ''Возвращаемые значения:'' | ||
| + | * (array|bool) - массив возможных состояний в формате ('обозначение' => 'первод') или false в случае когда запись не найдена. В случае, когда переход из этого статуса невозможен - возвращается пустой массив. | ||
| + | |||
| + | ==== change() ==== | ||
| + | Сменить статус комплекта на указанный. | ||
| + | |||
| + | ''Аргументы:'' | ||
| + | * (int) $id - id комплекта в таблице [[Разработка:storages/invsets|invsets]] | ||
| + | * (string) $status - обозначение статуса латинскими буквами | ||
| + | * (array) $opt - Массив, где содержатся дополнительные параметры для смены статуса. По умолчанию null. | ||
| + | ''Возвращаемые значения:'' | ||
| + | * (bool) true - если статус удалось изменить, или false в случае ошибки | ||
| + | |||
| + | При обращении к функции change() выполняются дополнительные действия, указанные выше, в разделе "Маршруты статусов". При каждом изменении статуса данные записываются в таблицу [[Разработка:storages/statushistory|statushistory]]. | ||
| + | ==== init() ==== | ||
| + | Запускается при вставке в таблицу [[Разработка:storages/invsets|invsets]] новой записи. Автоматически назначает созданному учебному периоду статус "доступен" (active). | ||
| + | |||
| + | ''Аргументы:'' | ||
| + | * $id - id только что созданного учебного периода в таблице [[Разработка:storages/invsets|invsets]] | ||
| + | ''Возвращаемые значения:'' | ||
| + | * (bool) true если статус успешно назначен или false в случае ошибки | ||
| + | |||
| + | ==Перехватываемые события== | ||
| + | {| border="1" | ||
| + | |+ Таблица событий, которые перхватывает этот плагин | ||
| + | ! Тип плагина | ||
| + | ! Код плагина | ||
| + | ! Код события | ||
| + | ! Пояснение | ||
| + | |- | ||
| + | |storage | ||
| + | |invsets | ||
| + | |insert | ||
| + | |Присваивает объекту статус active при добавлении его в таблицу | ||
| + | |} | ||
| + | [[Категория:Оборудование]] | ||
Текущая версия на 10:40, 18 февраля 2014
| Плагин | |
| Название | invsets |
| Тип | workflows |
Содержание
Возможные статусы:
- Доступен (active) - этот комплект сформирован и его можно выдавать
- Выдан (granted) - комплект выдан в пользование
- Расформирован (canceled)
- Не доступен (notavailable) по какой-то причине комплект не доступен(одна из сосатвляющих в ремонте или нет составляющих для полного комплекта)
- Удален (deleted) - ошибочная забивка данных
Метастатусы
- Активный: granted
- Актуальный: active, granted, notavailable
- Реальный: active, granted, canceled, notavailable
- Мусорный: deleted
Маршруты статусов
Правила описания маршрутов: описания возможностей перехода в новый статус на основании текущего статуса и условия, действительные только при переходе в новый статус из текущего статуса. При инициализации статус объекта равен доступный(active)
Доступен(active)
Возможные переходы ИЗ этого статуса:
- Выдан (granted)
- Расформирован (canceled)
- Не доступен (notavailable)
- Удален (deleted)
Выдан (granted)
Возможные переходы ИЗ этого статуса:
- Доступен(active) - если кому выдали комплект, то он должен сперва вернуться назад(доступен)
Не доступен (notavailable)
Возможные переходы ИЗ этого статуса:
- Доступный(active)
- Расформирован (canceled)
- Удален (deleted)
Расформирован (canceled)
Это конечный статус.
Удален (deleted)
Это конечный статус.
API
get_list()
Получить список всех возможных статусов
Аргументы:
- (нет)
Возвращаемые значения:
- Массив, со списком всех возможных статусов в формате "обозначение" => "Перевод"
get_name()
Получить название статуса по его обозначению в базе данных
Аргументы:
- (string) $status - обозначение статуса латинскими буквами
Возвращаемые значения:
- (string|bool) - перевод для этого статуса, либо false, если он не обнаружен в списке допустимых
get_available()
Получить список статусов, в которые может перейти указанный комплект.
Аргументы:
- $id - id учебного комплекта в таблице invsets
Возвращаемые значения:
- (array|bool) - массив возможных состояний в формате ('обозначение' => 'первод') или false в случае когда запись не найдена. В случае, когда переход из этого статуса невозможен - возвращается пустой массив.
change()
Сменить статус комплекта на указанный.
Аргументы:
- (int) $id - id комплекта в таблице invsets
- (string) $status - обозначение статуса латинскими буквами
- (array) $opt - Массив, где содержатся дополнительные параметры для смены статуса. По умолчанию null.
Возвращаемые значения:
- (bool) true - если статус удалось изменить, или false в случае ошибки
При обращении к функции change() выполняются дополнительные действия, указанные выше, в разделе "Маршруты статусов". При каждом изменении статуса данные записываются в таблицу statushistory.
init()
Запускается при вставке в таблицу invsets новой записи. Автоматически назначает созданному учебному периоду статус "доступен" (active).
Аргументы:
- $id - id только что созданного учебного периода в таблице invsets
Возвращаемые значения:
- (bool) true если статус успешно назначен или false в случае ошибки
Перехватываемые события
| Тип плагина | Код плагина | Код события | Пояснение |
|---|---|---|---|
| storage | invsets | insert | Присваивает объекту статус active при добавлении его в таблицу |