ru.bitel.bgbilling.plugins.documents.common.service

## Interface DocumentsPatternService

-     @MTOM
      public interface DocumentsPatternService

  Веб-сервис, предназначенный для манипуляции с шаблонами документов: создание/редактирование/удаление, работа с таблицами и переменными в шаблонах

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `clonePattern(int patternId)` Полное клонирование шаблона документа, в т.ч. файла шаблона на диске.
    `void` | `deletePattern(int patternId)` Удаление конкретного шаблона документа по его коду.
    `void` | `deletePatternFile(int patternId)` Удаляет файл из шаблона документа физически и из БД.
    `BGServerFile` | `downloadPatternFile(int patternId, javax.xml.ws.Holder<javax.activation.DataHandler> fileData)` Метод скачивает выбранный файл с сервера
    `void` | `getEmbeddedFilename(int patternId, javax.xml.ws.Holder<java.lang.String> fileName, javax.xml.ws.Holder<java.lang.String> fileComment)` Получение имени файла, прикрепленного к шаблону документа
    `java.lang.String` | `getFilePath(int patternId)` Получение ссылки на файл шаблона из общедоступной для сервера и клиента директории.
    `DocumentPattern` | `getPattern(int patternId)` Получение одного шаблона по его коду.
    `java.lang.String` | `getPatternExtractorIfaceClassName()` Получение имени интерфейса, который нужно реализовывать классам-имплементорам, чтобы получать данные для параметров в тексте
    `java.util.List<DocumentPattern>` | `getPatternList(int contractId)` Возвращает список всех шаблонов документов
    `java.lang.String` | `getTableExtractorIfaceClassName()` Получение имени интерфейса, который нужно реализовывать классам-имплементорам, чтобы получать данные для таблиц.
    `int` | `updatePattern(DocumentPattern documentPattern)` Обновление одного конкретного шаблона
    `void` | `updatePos(java.util.List<int[]> idPosList)`
    `boolean` | `uploadPatternFile(BGServerFile serverFile, javax.xml.ws.Holder<javax.activation.DataHandler> fileData)` Метод закачивает выбранный файл на сервер и привязывает его к шаблону документа

- - ### Method Detail

    - #### getPatternList

          java.util.List<DocumentPattern> getPatternList(int contractId)
                                                  throws ru.bitel.bgbilling.common.BGException

      Возвращает список всех шаблонов документов
      Parameters:
        `contractId` - код договора. Передается в случае, если грузим список шаблонов в карточке договора. В некоторых случаях (при использовании доменов) список может отличаться от списка шаблонов в редакторе шаблонов плагина
      Returns:
        список шаблонов
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### getPattern

          DocumentPattern getPattern(int patternId)
                              throws ru.bitel.bgbilling.common.BGException

      Получение одного шаблона по его коду. Используется в случае, когда сервис создается в других модулях.
      Parameters:
        `patternId` - код шаблона
      Returns:
        шаблон документа
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### getEmbeddedFilename

          void getEmbeddedFilename(int patternId,
                                   javax.xml.ws.Holder<java.lang.String> fileName,
                                   javax.xml.ws.Holder<java.lang.String> fileComment)
                            throws ru.bitel.bgbilling.common.BGException

      Получение имени файла, прикрепленного к шаблону документа
      Parameters:
        `patternId` - код шаблона документа
        `fileName` - имя файла
        `fileComment` - комментарий к файлу
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### updatePattern

          int updatePattern(DocumentPattern documentPattern)
                     throws ru.bitel.bgbilling.common.BGException

      Обновление одного конкретного шаблона
      Parameters:
        `documentPattern` - шаблон документа
      Returns:
        код шаблона документа, который был добавлен/обновлен. Это нужно, чтобы можно было привязывать файл к шаблону, еще не сохраненному в БД.
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### deletePattern

          void deletePattern(int patternId)
                      throws ru.bitel.bgbilling.common.BGException

      Удаление конкретного шаблона документа по его коду. Также вместе с шаблоном удаляется привязанный файл шаблона, а также все привязанные к шаблону динамические классы.
      Parameters:
        `patternId` - код шаблона
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### clonePattern

          void clonePattern(int patternId)
                     throws ru.bitel.bgbilling.common.BGException

      Полное клонирование шаблона документа, в т.ч. файла шаблона на диске.
      Parameters:
        `patternId` - код шаблона, который нужно клонировать
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### getTableExtractorIfaceClassName

          java.lang.String getTableExtractorIfaceClassName()
                                                    throws ru.bitel.bgbilling.common.BGException

      Получение имени интерфейса, который нужно реализовывать классам-имплементорам, чтобы получать данные для таблиц.
      Returns:
        полное имя интерфейса
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### getPatternExtractorIfaceClassName

          java.lang.String getPatternExtractorIfaceClassName()
                                                      throws ru.bitel.bgbilling.common.BGException

      Получение имени интерфейса, который нужно реализовывать классам-имплементорам, чтобы получать данные для параметров в тексте
      Returns:
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### uploadPatternFile

          boolean uploadPatternFile(BGServerFile serverFile,
                                    javax.xml.ws.Holder<javax.activation.DataHandler> fileData)
                             throws ru.bitel.bgbilling.common.BGException

      Метод закачивает выбранный файл на сервер и привязывает его к шаблону документа
      Parameters:
        `serverFile` - представление файла на сервере, содержит в себе мета-информацию о файле: размер, код родительской сущности, название, пользователь, добавивший файл и т.д.
        `fileData` - содержимое файла в виде FileDataSource
      Returns:
        true в случае успеха закачки файла на сервер
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### downloadPatternFile

          BGServerFile downloadPatternFile(int patternId,
                                           javax.xml.ws.Holder<javax.activation.DataHandler> fileData)
                                    throws ru.bitel.bgbilling.common.BGException

      Метод скачивает выбранный файл с сервера
      Parameters:
        `patternId` - код шаблона, к которому привязан файл
        `fileData` - содержимое файла в виде FileDataSource
      Returns:
        сущность, содержащая информацию о файле в системе BG
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### deletePatternFile

          void deletePatternFile(int patternId)
                          throws ru.bitel.bgbilling.common.BGException

      Удаляет файл из шаблона документа физически и из БД.
      Parameters:
        `patternId` - код шаблона
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### getFilePath

          java.lang.String getFilePath(int patternId)
                                throws ru.bitel.bgbilling.common.BGException

      Получение ссылки на файл шаблона из общедоступной для сервера и клиента директории. Фактически - открытие файла напрямую с диска. Используется для оперативной правки файла шаблона
      Parameters:
        `patternId` - код шаблона, для которого нужно получить ссылку.
      Returns:
        ссылка на файл шаблона.
      Throws:
        `ru.bitel.bgbilling.common.BGException`
      Since:
        6.2

    - #### updatePos

          void updatePos(java.util.List<int[]> idPosList)
                  throws ru.bitel.bgbilling.common.BGException

      Throws:
        `ru.bitel.bgbilling.common.BGException`