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

# Interface DocumentsService

    @MTOM(enabled=true)
    public interface DocumentsService

Сервис для работы с документами плагина, файлами документов, а также со справочниками Типы, Журналы, Статусы документов

- ## Method Summary

  Modifier and Type | Method | Description
  --- | --- | ---
  `java.util.List<java.lang.String>` | `checkNotFillParams​(int cid, int patternId, int journal, int type)` |
  `void` | `deleteDocument​(java.util.List<java.lang.Integer> documentIdList)` | Удаление документа.
  `void` | `deleteDocumentFiles​(java.util.List<java.lang.Integer> fileIds)` | Удаление списка файлов по их идентификаторам.
  `int` | `documentJournalDelete​(int journalId)` | Удаление журнала из БД.
  `DocumentJournal` | `documentJournalGet​(int journalId)` | Получение отдельно взятого журнала по коду.
  `java.util.List<DocumentJournal>` | `documentJournalList()` | Получение списка журналов документов.
  `int` | `documentJournalUpdate​(DocumentJournal journal)` | Добавление/Обновление журнала.
  `int` | `documentStatusDelete​(int statusId)` | Удаление статуса документа из БД.
  `DocumentStatus` | `documentStatusGet​(int statusId)` | Получение конкретного статуса документа по его коду.
  `java.util.List<DocumentStatus>` | `documentStatusList()` | Получение списка статусов документа.
  `int` | `documentStatusUpdate​(DocumentStatus status)` | Добавление/Обновление статуса документа в БД.
  `int` | `documentTypeDelete​(int typeId)` | Удаление типа документа по его коду из БД.
  `DocumentType` | `documentTypeGet​(int typeId)` | Получение конкретного типа документа по его коду.
  `java.util.List<DocumentType>` | `documentTypeList()` | Получение списка типов документов.
  `int` | `documentTypeUpdate​(DocumentType type)` | Добавление/Обновление типа документа.
  `BGServerFile` | `downloadDocumentFile​(int fileId, int contractId, javax.xml.ws.Holder<javax.activation.DataHandler> fileData)` | Скачивание указанного файла с сервера.
  `Document` | `generateDocument​(int cid, int pattern, int journal, int type)` | Генерация документа определенного типа по заданному шаблону с заданным журналом
  `java.lang.String` | `getAdditionalParams​(int contractId)` | Метод возвращает набор дополнительных параметров, которые необходимы для автоматического создания директорий при загрузке/выгрузке документов, если документ имеет определенный тип и имя договора соответствует определенному шаблону.
  `Document` | `getDocument​(int documentId)` | Получение одного единственного документа по его коду.
  `java.util.List<BGServerFile>` | `getDocumentFileList​(int documentId)` | Возвращает список файлов (мета-информация), привязанных к документу.
  `java.util.List<Document>` | `getDocumentList​(int contractId, java.lang.String title, Period period)` | Получение списка документов плагина у договора.
  `java.util.List<DocumentStatusLogItem>` | `getDocumentStatusLogList​(int documentId)` | Получение лога изменений статуса документа по коду документа.
  `java.io.File` | `getFileNetShare​(int id, java.lang.String title)` | Возвращает файл для открытия
  `void` | `sendFileByEmail​(java.util.List<java.lang.String> emails, java.util.List<java.lang.Integer> fileIds)` | Отравляет файл по почте
  `int` | `updateDocument​(Document document)` | Добавление/Обновление документа и привязка его к договору
  `void` | `updateDocumentFile​(BGServerFile file)` | Обновление данных вложенного файла (комментарий)
  `boolean` | `updateDocumentStatus​(int documentId, int statusId, java.lang.String statusComment)` | Обновление статуса документа.
  `java.util.List<DocumentStatusLogItem>` | `updateStatusLog​(DocumentStatusLogItem item)` | Добавление записи в историю изменений статуса документа.

- ## Method Details

  - ### getDocumentList

    java.util.List<Document> getDocumentList​(int contractId, java.lang.String title, Period period) throws ru.bitel.bgbilling.common.BGException
    Получение списка документов плагина у договора.
    Parameters:
      `contractId` - код договора
      `title` - фильтр по названию документа
      `period` - фильтр по периоду создания документа
    Returns:
      список документов
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### getDocument

    Document getDocument​(int documentId) throws ru.bitel.bgbilling.common.BGException
    Получение одного единственного документа по его коду.
    Parameters:
      `documentId` - код документа
    Returns:
      документ
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### updateDocument

    int updateDocument​(Document document) throws ru.bitel.bgbilling.common.BGException
    Добавление/Обновление документа и привязка его к договору
    Parameters:
      `document` - документ плагина
    Returns:
      код документа, который был добавлен/обновлен. Нужно для того, чтобы можно было привязывать файлы к еще не сохраненному в БД документу
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### deleteDocument

    void deleteDocument​(java.util.List<java.lang.Integer> documentIdList) throws ru.bitel.bgbilling.common.BGException
    Удаление документа. Происходит отвязка от договора, а также удаление вложенных файлов.
    Parameters:
      `documentId` - код документа
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### updateDocumentStatus

    boolean updateDocumentStatus​(int documentId, int statusId, java.lang.String statusComment) throws ru.bitel.bgbilling.common.BGException
    Обновление статуса документа.
    Parameters:
      `documentId` - код документа
      `statusId` - код статуса
      `statusComment` - комментарий к статусу
    Returns:
      true - если статус обновлен, false - в противном случае (провал может быть, если у документа уже установлен такой статус прежде)
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### getAdditionalParams

    java.lang.String getAdditionalParams​(int contractId) throws ru.bitel.bgbilling.common.BGException
    Метод возвращает набор дополнительных параметров, которые необходимы для автоматического создания директорий при загрузке/выгрузке документов, если документ имеет определенный тип и имя договора соответствует определенному шаблону.
    Parameters:
      `contractId` - код договора
    Returns:
      мап с параметрами
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### getDocumentFileList

    java.util.List<BGServerFile> getDocumentFileList​(int documentId) throws ru.bitel.bgbilling.common.BGException
    Возвращает список файлов (мета-информация), привязанных к документу. Непосредственное скачивание файлов происходит в методе downloadFile
    Parameters:
      `documentId` - код документа, чей список файлов необходимо получить
    Returns:
      список файлов
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### downloadDocumentFile

    BGServerFile downloadDocumentFile​(int fileId, int contractId, javax.xml.ws.Holder<javax.activation.DataHandler> fileData) throws ru.bitel.bgbilling.common.BGException
    Скачивание указанного файла с сервера. Происходит как в случае простого скачивания для сохранения файла на диске, так и для открытия файла в системном приложении
    Parameters:
      `fileId` - код файла
      `contractId` - код договора
      `fileData` - входной поток с данными файла
    Returns:
      сущность, содержащая информацию о файле в системе BG
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### deleteDocumentFiles

    void deleteDocumentFiles​(java.util.List<java.lang.Integer> fileIds) throws ru.bitel.bgbilling.common.BGException
    Удаление списка файлов по их идентификаторам. Используется при удалении файлов из документа плагина
    Parameters:
      `fileIds` - список идентификаторов файлов
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### updateDocumentFile

    void updateDocumentFile​(BGServerFile file) throws ru.bitel.bgbilling.common.BGException
    Обновление данных вложенного файла (комментарий)
    Parameters:
      `file` - вложенный файл
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### documentJournalList

    java.util.List<DocumentJournal> documentJournalList() throws ru.bitel.bgbilling.common.BGException
    Получение списка журналов документов. Используется в справочнике.
    Returns:
      список журналов
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### documentJournalGet

    DocumentJournal documentJournalGet​(int journalId) throws ru.bitel.bgbilling.common.BGException
    Получение отдельно взятого журнала по коду. Используется в справочнике.
    Parameters:
      `journalId` -
    Returns:
      журнал
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### documentJournalUpdate

    int documentJournalUpdate​(DocumentJournal journal) throws ru.bitel.bgbilling.common.BGException
    Добавление/Обновление журнала. Используется в справочнике. В данном случае бросается событие, что данная сущность изменилась и требуется обновление на клиенте.
    Parameters:
      `journal` - журнал
    Returns:
      количество вставленных/обновленных записей.
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### documentJournalDelete

    int documentJournalDelete​(int journalId) throws ru.bitel.bgbilling.common.BGException
    Удаление журнала из БД. При этом происходит автоматическая проверка используется ли данный журнал в каком-либо документе. Если используется, то удаление не произойдет.
    Parameters:
      `journalId` - код журанала
    Returns:
      количество удаленных записей.
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### documentTypeList

    java.util.List<DocumentType> documentTypeList() throws ru.bitel.bgbilling.common.BGException
    Получение списка типов документов. Используется в справочниках
    Returns:
      список типов документов
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### documentTypeGet

    DocumentType documentTypeGet​(int typeId) throws ru.bitel.bgbilling.common.BGException
    Получение конкретного типа документа по его коду. Используется в справочниках.
    Parameters:
      `typeId` - код типа документа
    Returns:
      тип документа
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### documentTypeUpdate

    int documentTypeUpdate​(DocumentType type) throws ru.bitel.bgbilling.common.BGException
    Добавление/Обновление типа документа. Используется в справочниках. При этом инициируется событие изменения типа документа и при необходимости с сервера подгружается обновленная информация на клиент.
    Parameters:
      `type` - тип документа
    Returns:
      количество вставленных/обновленных записей.
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### documentTypeDelete

    int documentTypeDelete​(int typeId) throws ru.bitel.bgbilling.common.BGException
    Удаление типа документа по его коду из БД. Используется в справочнике.
    Parameters:
      `typeId` - код типа документа
    Returns:
      количество удаленных записей.
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### documentStatusList

    java.util.List<DocumentStatus> documentStatusList() throws ru.bitel.bgbilling.common.BGException
    Получение списка статусов документа. Используется в справочниках.
    Returns:
      список статусов
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### documentStatusGet

    DocumentStatus documentStatusGet​(int statusId) throws ru.bitel.bgbilling.common.BGException
    Получение конкретного статуса документа по его коду. Используется в справочниках.
    Parameters:
      `statusId` - код статуса документа.
    Returns:
      статус документа
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### documentStatusUpdate

    int documentStatusUpdate​(DocumentStatus status) throws ru.bitel.bgbilling.common.BGException
    Добавление/Обновление статуса документа в БД. Используется в справочниках.
    Parameters:
      `status` - статус документа
    Returns:
      количество вставленных/обновленных записей.
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### documentStatusDelete

    int documentStatusDelete​(int statusId) throws ru.bitel.bgbilling.common.BGException
    Удаление статуса документа из БД. Удаление произойдет в том случае, если данный статус нигде в документах не используется. Иначе удаление невозможно.
    Parameters:
      `statusId` - код статуса.
    Returns:
      количество удаленных записей.
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### getDocumentStatusLogList

    java.util.List<DocumentStatusLogItem> getDocumentStatusLogList​(int documentId) throws ru.bitel.bgbilling.common.BGException
    Получение лога изменений статуса документа по коду документа.
    Parameters:
      `documentId` - код документа
    Returns:
      история изменений статуса.
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### updateStatusLog

    java.util.List<DocumentStatusLogItem> updateStatusLog​(DocumentStatusLogItem item) throws ru.bitel.bgbilling.common.BGException
    Добавление записи в историю изменений статуса документа. Тут же возвращается обновленная история изменения статусов по договору.
    Parameters:
      `item` - запись лога
    Returns:
      обновленная история изменений статусов
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### generateDocument

    Document generateDocument​(int cid, int pattern, int journal, int type) throws ru.bitel.bgbilling.common.BGException
    Генерация документа определенного типа по заданному шаблону с заданным журналом
    Parameters:
      `cid` - код договора
      `pattern` - шаблон документа, по которому будет генерироваться документ
      `journal` - журнал
      `type` - тип документа
    Returns:
      сгенерированный документ
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### checkNotFillParams

    java.util.List<java.lang.String> checkNotFillParams​(int cid, int patternId, int journal, int type) throws ru.bitel.bgbilling.common.BGException
    Parameters:
      `cid` - код договора
      `patternId` - шаблон документа, по которому будет генерироваться документ
      `journal` - журнал
      `type` - тип документа
    Returns:
      список названий незаполненных параметров
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### getFileNetShare

    java.io.File getFileNetShare​(int id, java.lang.String title) throws ru.bitel.bgbilling.common.BGException
    Возвращает файл для открытия
    Returns:
      файл
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### sendFileByEmail

    void sendFileByEmail​(java.util.List<java.lang.String> emails, java.util.List<java.lang.Integer> fileIds) throws ru.bitel.bgbilling.common.BGException
    Отравляет файл по почте
    Parameters:
      `emails` - - адреса получателей
      `fileIds` - - id'шники отправляемых файлов
    Throws:
      `ru.bitel.bgbilling.common.BGException`