Class EdoContext
java.lang.Object
ru.bitel.bgbilling.plugins.edo.server.bean.EdoContext
- Direct Known Subclasses:
EdoBillContext,EdoContext.EdoDefaultContext,EdoDocumentsContext
Контекст, который собирается для процессинга документа из разных настроек по источникам.
По сути представляет собой прокси для конфига ParameterMap с доп. параметрами.
Помимо генерации документов используется в остальных действиях по эдо внутренних и внешних (поиски, запросы итд).
Также процессинг значений по макросам итд тоже встроен в контекст.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classДефолтная реализация контекста для использования вне контекста модуля/плагина, просто пустая поверх абстрактного -
Field Summary
FieldsModifier and TypeFieldDescriptionможет быть не задан для некоторых побочных/служебных действийможет быть не задан для некоторых побочных/служебных действийвсегда задан (если ID_DEFAULT_SIGNATORY, то к этому месту он развернётся в реальный ид дефолтного подписанта)вcегда задан, может остаться USER_SERVER для серверны/автоматических действий -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionПолучение из контекста (сырого) значения указанного параметра.protected String_process_one_value(String valueParam, int contractId, String nameParam) обработка отдельного значения параметра, на предмет тегов итд, в конкретном контексте может перегрузиться, чтобы учесть теги/значения из него. valueParam всегда не null и не пустое.Из конфига парсит значения и берёт их откуда настроено.Сначала ищется значение, если нет, то дефолтное значение.get_oneof_req(String nameParam1, String nameParam2) Сначала ищется первое значение, потом второе.
-
Field Details
-
_edoDocumentTypeId
может быть не задан для некоторых побочных/служебных действий -
_signatoryId
всегда задан (если ID_DEFAULT_SIGNATORY, то к этому месту он развернётся в реальный ид дефолтного подписанта) -
_contractId
может быть не задан для некоторых побочных/служебных действий -
_userId
вcегда задан, может остаться USER_SERVER для серверны/автоматических действий
-
-
Constructor Details
-
EdoContext
-
-
Method Details
-
_get_raw
Получение из контекста (сырого) значения указанного параметра. Для внутрикодовых и специфических случаев.- Throws:
EdoNoContextParamException
-
get
public String get(String nameParam, boolean required) throws EdoNoContextParamException, EdoNoContextValueException, ru.bitel.bgbilling.common.BGException Из конфига парсит значения и берёт их откуда настроено. Макросы откуда пытаться взять: pid:666 - брать из параметра договора; contract:comment - поле договора (title, comment, ...) customer:/customer/fio/first - поле сущности клиент (путь по json) 666 - константа как есть. Несколько значений через знак "|" - берёт последовательно пока не получит значение, т.е. можно насроить получение из нескольких мест, например, сначала из кастомера потом из параметра. В FnsFileGenerator расширяется поиск ещё дополнительно.- Throws:
EdoNoContextParamExceptionEdoNoContextValueExceptionru.bitel.bgbilling.common.BGException
-
_process_one_value
protected String _process_one_value(String valueParam, int contractId, String nameParam) throws ru.bitel.bgbilling.common.BGException обработка отдельного значения параметра, на предмет тегов итд, в конкретном контексте может перегрузиться, чтобы учесть теги/значения из него. valueParam всегда не null и не пустое.- Throws:
ru.bitel.bgbilling.common.BGException
-
get_def
public String get_def(String nameParam, String defValue) throws ru.bitel.bgbilling.common.BGException Сначала ищется значение, если нет, то дефолтное значение. (required=false для поиске в конфиге). Просто частый кейс сначала взять из конфига потом если не настраивали то дефолт (для почти понятных значений).- Throws:
ru.bitel.bgbilling.common.BGException
-
get_oneof_req
public String get_oneof_req(String nameParam1, String nameParam2) throws ru.bitel.bgbilling.common.BGException Сначала ищется первое значение, потом второе. Обшая required=true. Просто частый кейс сначала взять перекрытого конфига потом общего.- Throws:
ru.bitel.bgbilling.common.BGException
-