Package ru.bitel.bgbilling.modules.cerbercrypt.common.service

# Interface SubscriptionService

public interface SubscriptionService
Управление подпиской, веб-сервис для использования в новом ЛК.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `String`
  `subscriptionClose(int contractId, int userCardId, int packetId, Date date, String comment)`
  Закрытие подписки.
  `BigDecimal`
  `subscriptionCost(int contractId, int userCardId, Date date)`
  Стоимость текущих подписок для карты договора.
  `void`
  `subscriptionDelete(int contractId, int usercardId, int cardPacketId)`
  Удаление подписки.
  `String`
  `subscriptionOpen(int contractId, int userCardId, int packetId, Date date, String comment)`
  Открытие подписки.

- ## Method Details

  - ### subscriptionDelete

    void subscriptionDelete(int contractId, int usercardId, int cardPacketId) throws Exception
    Удаление подписки.
    Parameters:
      `contractId` - ID договора
      `usercardId` - ID карты договора
      `cardPacketId` - ID карт-пакета
    Throws:
      `BGException`
      `BGMessageException`
      `BGIllegalArgumentException`
      `Exception`

  - ### subscriptionOpen

    String subscriptionOpen(int contractId, int userCardId, int packetId, Date date, String comment) throws Exception
    Открытие подписки.
    Parameters:
      `contractId` - ID договора
      `userCardId` - ID карты договора
      `packetId` - ID пакета
      `date` - дата, с которой нужно открыть пакет
      `comment` - комментарий
    Returns:
    Throws:
      `BGException`
      `BGMessageException`
      `BGIllegalArgumentException`
      `Exception`

  - ### subscriptionClose

    String subscriptionClose(int contractId, int userCardId, int packetId, Date date, String comment) throws Exception
    Закрытие подписки.
    Parameters:
      `contractId` - ID договора
      `userCardId` - ID карты договора
      `packetId` - ID пакета
      `date` - дата, с которой закрыть
      `comment` - комментарий
    Returns:
      сообщение, если таковое было установлено в скрипте
    Throws:
      `BGException`
      `BGMessageException`
      `BGIllegalArgumentException`
      `Exception`

  - ### subscriptionCost

    BigDecimal subscriptionCost(int contractId, int userCardId, Date date) throws Exception
    Стоимость текущих подписок для карты договора.
    Parameters:
      `contractId` - ID договора
      `userCardId` - ID карты договора
      `date` - дата, на которую нужно вернуть стоимость подписок
    Returns:
      стоимость подписок для карты договора
    Throws:
      `BGException`
      `BGMessageException`
      `BGIllegalArgumentException`
      `Exception`