Package ru.bitel.bgbilling.plugins.documents.server.bean.pattern

# Interface PatternDataExtractor

public interface PatternDataExtractor
Интерфейс, реализовав который, можно получить данные для генерации документов. Используется в редакторе шаблонов документов. Возвращает мап "имя_переменной -> значение". Значения параметров, указанных в мапе имеют бОльший приоритет, нежели переменные с аналогичными названиями в списке переменных шаблона.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `Map<String,String>`
  `extractData(Connection con, int contractId, DocumentPattern pattern, DocumentType type, DocumentJournal journal, Map<String,String> apiMap)`
  Deprecated.
  Используйте метод `extractData(Connection, int, DocumentPattern, DocumentType, DocumentJournal, Map, int)`, в котором добавлен код пользователя в сигнатуру метода.
  `default Map<String,String>`
  `extractData(Connection con, int contractId, DocumentPattern pattern, DocumentType type, DocumentJournal journal, Map<String,String> apiMap, int userId)`
  Метод, используемый для генерации данных с использованием динамического кода.

- ## Method Details

  - ### extractData

    @Deprecated Map<String,String> extractData(Connection con, int contractId, DocumentPattern pattern, DocumentType type, DocumentJournal journal, Map<String,String> apiMap) throws ru.bitel.bgbilling.common.BGException
    Deprecated.
    Используйте метод `extractData(Connection, int, DocumentPattern, DocumentType, DocumentJournal, Map, int)`, в котором добавлен код пользователя в сигнатуру метода.
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### extractData

    default Map<String,String> extractData(Connection con, int contractId, DocumentPattern pattern, DocumentType type, DocumentJournal journal, Map<String,String> apiMap, int userId) throws ru.bitel.bgbilling.common.BGException
    Метод, используемый для генерации данных с использованием динамического кода. Позволяет добавить произвольные данные в качестве переменных, переопределить уже существующие переменные.
    Parameters:
      `con` - соединение с БД биллинга
      `contractId` - код договора
      `pattern` - объект шаблона, по которому генерируется документ. Есть возможность поменять что то в шаблоне ДО генерации документов
      `type` - объект Тип документа, выбранный при генерации
      `journal` - объект Журнал документа, выбранный при генерации
      `apiMap` - мап вида "имя_переменной -> значение", переданный в дин. класс после вызова метода генерации через API биллинга, в который и был передан данный мап. Это необходимо в случае, когда используется генерация документов в скриптах поведения/глобальных скриптах, для того, чтобы можно было что либо изменить в динамическом коде шаблона документа. Данный мап всегда не null (может быть пустым).
      `userId` - код пользователя, который генерирует документ.
    Returns:
      мап вида "имя_переменной -> значение". При необходимости можно вернуть мап из API, изменив/добавив/удалив из него какие-либо данные.
    Throws:
      `ru.bitel.bgbilling.common.BGException`