ru.bitel.bgbilling.plugins.dispatch.common

## Interface DispatchService

-     @MTOM
      public interface DispatchService

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addMessageInclusion(DispatchMessage dm, javax.xml.ws.Holder<javax.activation.DataHandler> inclusion, java.lang.String fileName)` Добавляет вложение в сообщение.
    `void` | `addSubscriptions(java.lang.String dispatchIds, java.lang.String contractIds)` Добавляет подписки на выбранные рассылки в выбранные договоры.
    `void` | `deleteContact(int id)` Удаляет контакт.
    `void` | `deleteContactType(int contactTypeId)` Удаляет тип контакта.
    `void` | `deleteDispatch(Dispatch d)` Удаляет рассылку.
    `void` | `deleteMessage(DispatchMessage dm)` Удаление сообщения из рассылки.
    `void` | `deleteMessageInclusion(DispatchMessage dm, BGServerFile inclusion)` Удаляет вложение из сообщения.
    `void` | `deleteSenderType(int id)` Удаляет метод отправки по его коду
    `void` | `deleteSubscription(int subscriptionId)` Удаляет подписку
    `java.util.List<Subscription>` | `getActiveSubscriptions(int dispatchId)` Возвращает список подписок
    `java.util.List<IdTitle>` | `getAddressParamList()` Получение списка адресных параметров, которые заведены в параметрах договорах.
    `java.util.List<Contact>` | `getContacts(int contractId)` Возвращает контакты для договора
    `java.util.List<ContactType>` | `getContactTypes()` Возвращает список типов контактов
    `java.util.List<ContractContact>` | `getContracts(java.lang.String name, int typeId)` Получение списка договоров по контакту
    `java.util.List<Dispatch>` | `getDispatchList()` Возвращает список всех рассылок.
    `java.util.List<BGServerFile>` | `getMessageInclusions(DispatchMessage dm)` Возвращает список вложений в сообщение
    `java.util.List<DispatchMessage>` | `getMessageList(int did, boolean onlyNotSent)` Возвращает список сообщения для рассылки
    `java.lang.String` | `getSenderIfaceClassName()` Возвращает имя интерфейса, который должен имплементировать новый создаваемый метод отправки
    `java.util.List<SenderType>` | `getSenderTypes()` Возвращает методы отправки
    `java.util.List<Subscription>` | `getSubscriptions(int dispatchId, int contractId)` Возвращает список подписок
    `void` | `setEventForSubscription(int dispatchId, int contractId)` Устанавливает подпискам договора флаг события
    `void` | `updateContact(Contact current)` Изменяет\создает новый контакт.
    `void` | `updateContactType(ContactType current)` Изменяет\создает тип контакта
    `void` | `updateDispatch(Dispatch d)` Изменяет\создает рассылку
    `void` | `updateMessage(DispatchMessage dm)` Изменяет\создает сообщение
    `void` | `updateSenderType(SenderType current)` Изменяет метод отправки
    `void` | `updateSubscriptions(Subscription subscription)` Изменяет\создает подписку

- - ### Method Detail

    - #### getDispatchList

          java.util.List<Dispatch> getDispatchList()
                                            throws ru.bitel.bgbilling.common.BGException

      Возвращает список всех рассылок.
      Returns:
        пустой список, если рассылки еще не были заведены
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### getMessageList

          java.util.List<DispatchMessage> getMessageList(int did,
                                                         boolean onlyNotSent)
                                                  throws ru.bitel.bgbilling.common.BGException

      Возвращает список сообщения для рассылки
      Parameters:
        `did` - код рассылки
        `onlyNotSent` - выбрать только неотправленные
      Returns:
        пустой список, если сообщений в рассылке еще нет
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### updateDispatch

          void updateDispatch(Dispatch d)
                       throws ru.bitel.bgbilling.common.BGException

      Изменяет\создает рассылку
      Parameters:
        `d` - рассылка (id <= 0 для создания новой)
      Throws:
        `ru.bitel.bgbilling.common.BGException`
        `ru.bitel.bgbilling.common.BGMessageException` - если у существующей рассылки изменяется тип контактов

    - #### updateMessage

          void updateMessage(DispatchMessage dm)
                      throws ru.bitel.bgbilling.common.BGException

      Изменяет\создает сообщение
      Parameters:
        `dm` - сообщение (id <= 0 для создания нового)
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### getMessageInclusions

          java.util.List<BGServerFile> getMessageInclusions(DispatchMessage dm)
                                                     throws ru.bitel.bgbilling.common.BGException

      Возвращает список вложений в сообщение
      Parameters:
        `dm` - сообщение
      Returns:
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### addMessageInclusion

          void addMessageInclusion(DispatchMessage dm,
                                   javax.xml.ws.Holder<javax.activation.DataHandler> inclusion,
                                   java.lang.String fileName)
                            throws ru.bitel.bgbilling.common.BGException

      Добавляет вложение в сообщение. Нельзя добавлять вложения в отправленные сообщения.
      Parameters:
        `dm` - сообщение
        `inclusion` - данные для вложения
        `fileName` - имя вложения
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### deleteMessageInclusion

          void deleteMessageInclusion(DispatchMessage dm,
                                      BGServerFile inclusion)
                               throws ru.bitel.bgbilling.common.BGException

      Удаляет вложение из сообщения. Нельзя удалить вложение из отправленного сообщения.
      Parameters:
        `dm` - сообщение
        `inclusion` - вложение
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### deleteDispatch

          void deleteDispatch(Dispatch d)
                       throws ru.bitel.bgbilling.common.BGException

      Удаляет рассылку. Удаление рассылки приводит к удалению всех шаблонов рассылки, всех сообщений рассылки и всех подписок на эту рассылку.
      Parameters:
        `d` - рассылка
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### deleteMessage

          void deleteMessage(DispatchMessage dm)
                      throws ru.bitel.bgbilling.common.BGException

      Удаление сообщения из рассылки. Невозможно удалить отправленное сообщение, только если не установлен флаг allow.delete.sent.messages=1 в конфигурации плагина.
      Parameters:
        `dm` - сообщение
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### updateContactType

          void updateContactType(ContactType current)
                          throws ru.bitel.bgbilling.common.BGException

      Изменяет\создает тип контакта
      Parameters:
        `current` - (id <= 0 для создания нового типа контакта)
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### deleteContactType

          void deleteContactType(int contactTypeId)
                          throws ru.bitel.bgbilling.common.BGException

      Удаляет тип контакта. Тип контакта может быть удален ТОЛЬКО если отсутствуют рассылки с таким типом.
      Parameters:
        `contactTypeId` - код типа контакта
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### getContactTypes

          java.util.List<ContactType> getContactTypes()
                                               throws ru.bitel.bgbilling.common.BGException

      Возвращает список типов контактов
      Returns:
        пустой список, если типов контактов еще нет
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### getContacts

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

      Возвращает контакты для договора
      Parameters:
        `contractId` - код договора
      Returns:
        пустой список, если контактов нет
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### updateContact

          void updateContact(Contact current)
                      throws ru.bitel.bgbilling.common.BGException

      Изменяет\создает новый контакт. Осуществляется проверка на соответствие шаблону типа контакта.
      Parameters:
        `current` - контакт (id <= 0 для созданиея нового)
      Throws:
        `ru.bitel.bgbilling.common.BGException`
        `ru.bitel.bgbilling.common.BGMessageException` - если проверка значения контакта по шаблону типа контакта не прошла

    - #### deleteContact

          void deleteContact(int id)
                      throws ru.bitel.bgbilling.common.BGException

      Удаляет контакт. Проверяет наличие подписок для контакта перед удалением.
      Parameters:
        `id` -
      Throws:
        `ru.bitel.bgbilling.common.BGException`
        `ru.bitel.bgbilling.common.BGMessageException` - если контакт подписан на рассылки

    - #### getSubscriptions

          java.util.List<Subscription> getSubscriptions(int dispatchId,
                                                        int contractId)
                                                 throws ru.bitel.bgbilling.common.BGException

      Возвращает список подписок
      Parameters:
        `dispatchId` - если 0, то возвращает список всех подписок для договора
        `contractId` - если 0, то возвращает список всех подписок на рассылку
      Returns:
        пустой список, если таковых нет
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### getActiveSubscriptions

          java.util.List<Subscription> getActiveSubscriptions(int dispatchId)
                                                       throws ru.bitel.bgbilling.common.BGException

      Возвращает список подписок
      Parameters:
        `dispatchId` - если 0, то возвращает список всех подписок для договора
      Returns:
        пустой список, если таковых нет
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### deleteSubscription

          void deleteSubscription(int subscriptionId)
                           throws ru.bitel.bgbilling.common.BGException

      Удаляет подписку
      Parameters:
        `subscriptionId` - код подписки
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### updateSubscriptions

          void updateSubscriptions(Subscription subscription)
                            throws ru.bitel.bgbilling.common.BGException

      Изменяет\создает подписку
      Parameters:
        `subscription` - (id <= 0 для создания новой)
      Throws:
        `ru.bitel.bgbilling.common.BGException`
        `ru.bitel.bgbilling.common.BGMessageException` - если в подписке нет контактов

    - #### addSubscriptions

          void addSubscriptions(java.lang.String dispatchIds,
                                java.lang.String contractIds)
                         throws ru.bitel.bgbilling.common.BGException

      Добавляет подписки на выбранные рассылки в выбранные договоры. Используется в групповой операции. Подписка добавится только в том случае, если в договоре заведен контакт (-ы) с таким же типом контакта, который указан в рассылке.
      Parameters:
        `dispatchIds` - список кодов рассылок через запятую.
        `contractIds` - список кодов договоров через запятую, которым следует добавить подписки на рассылки.
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### getSenderTypes

          java.util.List<SenderType> getSenderTypes()
                                             throws ru.bitel.bgbilling.common.BGException

      Возвращает методы отправки
      Returns:
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### getSenderIfaceClassName

          java.lang.String getSenderIfaceClassName()

      Возвращает имя интерфейса, который должен имплементировать новый создаваемый метод отправки
      Returns:

    - #### updateSenderType

          void updateSenderType(SenderType current)
                         throws ru.bitel.bgbilling.common.BGException

      Изменяет метод отправки
      Parameters:
        `current` - создает при id <= 0
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### deleteSenderType

          void deleteSenderType(int id)
                         throws ru.bitel.bgbilling.common.BGException

      Удаляет метод отправки по его коду
      Parameters:
        `id` -
      Throws:
        `ru.bitel.bgbilling.common.BGException`

    - #### getAddressParamList

          java.util.List<IdTitle> getAddressParamList()
                                               throws ru.bitel.bgbilling.common.BGException

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

    - #### getContracts

          java.util.List<ContractContact> getContracts(java.lang.String name,
                                                       int typeId)

      Получение списка договоров по контакту
      Parameters:
        `name` - Строка для поиска
        `typeId` - Id типа контакта
      Returns:

    - #### setEventForSubscription

          void setEventForSubscription(int dispatchId,
                                       int contractId)
                                throws ru.bitel.bgbilling.common.BGException

      Устанавливает подпискам договора флаг события
      Parameters:
        `dispatchId` - код рассылки
        `contractId` - ид договора
      Throws:
        `ru.bitel.bgbilling.common.BGException`