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

# Interface CardActionsService

All Superinterfaces:
  `LoggableService`

public interface CardActionsService extends LoggableService
1) Все действия над картами (из протокола, отправка сообщений, активации/деактивации итд, загрузка) 2) Все экшены карт - получение, апдейт. 3) Также тут экшен поиска карты (бывший ActionFindCard) 4) Также тут экшен CardTable - админка карт.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `activate(long cardNumber)`
  `int`
  `cardDealerAdd(String cards, int dealerId)`
  Модуль церберкрипт -> менеджер карт : передать дилеру.
  `int`
  `cardDealerDelete(String cards)`
  Модуль церберкрипт -> менеджер карт : забрать у дилера.
  `int`
  `cardLoad(String cards, int dealerId, boolean allowEmptyPassword)`
  Модуль церберкрипт -> менеджер карт: загрузить карты.
  `Result<Card>`
  `cardTable(Page page, MapHolder<String,String> request)`
  Таблица карт в менеджере карт.
  `void`
  `customCommand(long cardNumber, String action, String[] params)`
  Какая-то произвольная команда слишком специфичная для какой-то CAS с параметрами.
  `void`
  `deactivate(long cardNumber)`
  `void`
  `deleteCard(long cardNumber)`
  Удаление карты в справочнике карт.
  `void`
  `dosync(long cardNumber)`
  Запуск синхронизации по карте прямо сейчас.
  `Result<UserCard>`
  `findCard(Page page, Period period, long card, String sort, String mode)`
  Поиск карты по параметрам.
  `List<Long>`
  `getAllCardNumbers()`
  Возвращает номера всех карт заведённых.
  `Card`
  `getCard(long cardNumber)`
  `List<Long>`
  `getFreeCardNumbers()`
  Возвращает номера свободных карт (заведённых, но не стоящих ни в одном договоре).
  `String`
  `getPairing(long cardNumber)`
  запрос pairing с удалённого сервера. если null - то нету.
  `String`
  `getSubscribeInfo(long cardNumber)`
  Возвращает в строковом виде информацию о подписке (подразумевается, что идёт запрос с сервера).
  `void`
  `pinCode(long cardNumber, String pinCode)`
  `void`
  `sendMessages(String sendMode, String messageTitle, String messageBody, String receiverMode, MapHolder<String,String> request)`
  `void`
  `setPairing(long cardNumber, String pairingModule)`
  установление pairing на удалённый сервер. если pairingModule - null то типа убрать.
  `void`
  `updateCard(Card card)`

  ### Methods inherited from interface ru.bitel.common.model.LoggableService

  `logList`

- ## Method Details

  - ### activate

    void activate(long cardNumber) throws Exception
    Throws:
      `Exception`

  - ### deactivate

    void deactivate(long cardNumber) throws Exception
    Throws:
      `Exception`

  - ### getCard

    Card getCard(long cardNumber) throws Exception
    Throws:
      `Exception`

  - ### updateCard

    void updateCard(Card card) throws Exception
    Throws:
      `Exception`

  - ### getAllCardNumbers

    List<Long> getAllCardNumbers() throws Exception
    Возвращает номера всех карт заведённых.
    Returns:
      список длинных целых чисел.
    Throws:
      `BGException` - ошибка.
      `Exception`

  - ### getFreeCardNumbers

    List<Long> getFreeCardNumbers() throws Exception
    Возвращает номера свободных карт (заведённых, но не стоящих ни в одном договоре).
    Returns:
      список длинных целых чисел.
    Throws:
      `BGException` - ошибка.
      `Exception`

  - ### getSubscribeInfo

    String getSubscribeInfo(long cardNumber) throws Exception
    Возвращает в строковом виде информацию о подписке (подразумевается, что идёт запрос с сервера).
    Parameters:
      `cardNumber` - номер карты.
    Returns:
      строка (возможно, переводами строк) со справкой о подписке по этой карте.
    Throws:
      `BGException`
      `Exception`

  - ### dosync

    void dosync(long cardNumber) throws Exception
    Запуск синхронизации по карте прямо сейчас. Используется номер карты, юзеркарта вычисляется сейчас.
    Parameters:
      `cardNumber` - номер карты
    Throws:
      `BGException`
      `Exception`

  - ### findCard

    Result<UserCard> findCard(Page page, Period period, long card, String sort, String mode) throws Exception
    Поиск карты по параметрам. Модуль церберкрипт -> поиск карты
    Parameters:
      `page` -
      `period` -
      `card` - номер карты
      `sort` - сортировка: contract.title,card.number,card.date1,no ("no" по дефолту)
      `mode` - режим совпадения: start,end,include,equal("equal" по дефолту)
    Returns:
      резалт с юзеркартами (заполнены не все поля)
    Throws:
      `BGMessageException`
      `BGException`
      `Exception`

  - ### cardTable

    Result<Card> cardTable(Page page, MapHolder<String,String> request) throws Exception
    Таблица карт в менеджере карт. Модуль церберкрипт -> менеджер карт. Бывший CardTable. Часть фильтра пока передаётся как Map ("dealer","dealer_status","contract_status","number","count").
    Parameters:
      `page` -
      `request` -
    Returns:
      таблица Card
    Throws:
      `BGException`
      `Exception`

  - ### cardLoad

    int cardLoad(String cards, int dealerId, boolean allowEmptyPassword) throws Exception
    Модуль церберкрипт -> менеджер карт: загрузить карты.
    Parameters:
      `dealerId` - ид дилера (если не привязывать, то должен быть 0)
      `cards` - строка карт в виде как описано в доке (перевод строки, разделение табуляцийей)
      `allowEmptyPassword` - не проверять вторую колонку на наличие, если карты хотят грузить без пароля
    Returns:
      кол-во загруженых карт.
    Throws:
      `BGMessageException` - загрузки ошибки текст, если есть.
      `Exception`

  - ### cardDealerAdd

    int cardDealerAdd(String cards, int dealerId) throws Exception
    Модуль церберкрипт -> менеджер карт : передать дилеру.
    Parameters:
      `dealerId` - ид дилера.
      `cards` - список номеров карт через запятую.
    Returns:
      кол-во обработанных карт.
    Throws:
      `BGException`
      `Exception`

  - ### cardDealerDelete

    int cardDealerDelete(String cards) throws Exception
    Модуль церберкрипт -> менеджер карт : забрать у дилера.
    Parameters:
      `dealerId` - ид дилера (не используется?).
      `cards` - список номеров карт через запятую.
    Returns:
      кол-во обработанных карт.
    Throws:
      `Exception`

  - ### pinCode

    void pinCode(long cardNumber, String pinCode) throws Exception
    Throws:
      `Exception`

  - ### sendMessages

    void sendMessages(String sendMode, String messageTitle, String messageBody, String receiverMode, MapHolder<String,String> request) throws Exception
    Throws:
      `Exception`

  - ### getPairing

    String getPairing(long cardNumber) throws Exception
    запрос pairing с удалённого сервера. если null - то нету.
    Throws:
      `Exception`

  - ### setPairing

    void setPairing(long cardNumber, String pairingModule) throws Exception
    установление pairing на удалённый сервер. если pairingModule - null то типа убрать.
    Throws:
      `Exception`

  - ### deleteCard

    void deleteCard(long cardNumber) throws Exception
    Удаление карты в справочнике карт. Проверяются всякие проверки.
    Throws:
      `Exception`

  - ### customCommand

    void customCommand(long cardNumber, String action, String[] params) throws Exception
    Какая-то произвольная команда слишком специфичная для какой-то CAS с параметрами.
    Parameters:
      `cardNumber` -
      `action` -
      `params` -
    Throws:
      `BGMessageException`
      `BGException`
      `Exception`