Package ru.bitel.bgbilling.plugins.cashcheck.server.bean

# Class PrinterManager

java.lang.Object
ru.bitel.bgbilling.plugins.cashcheck.server.bean.PrinterManager

public class PrinterManager extends Object
Класс, предоставляющий доступ к информации о принтерах (из конфига), парсящий её, управляющий авторизацией и логинами на принтер и т.д.

- ## Nested Class Summary

  Nested Classes
  Modifier and Type
  Class
  Description
  `static class`
  `PrinterManager.PaymentMapping`
  `static enum`
  `PrinterManager.PaymentPrintMode`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `PrinterManager()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `static PrinterManager.PaymentMapping`
  `getCh(int chargeTypeId)`
  возвращает один ChargeMapping для указанного типа расхода, или null если не настроено на этот тип
  `static Map<Integer,PrinterManager.PaymentMapping>`
  `getChMap()`
  Возвращает Мэпинг типов расходов на регистраторы.
  `static int`
  `getCurrentRegistratorId()`
  Номер залогиненного регистратора.
  `static String`
  `getCurrentRegistratorPassword()`
  Текущий пароль залогиненного юзера в регистратор.
  `static Printer`
  `getPrinter()`
  Возвращает текущий выбранный принтер.
  `static Printer`
  `getPrinter(int kkmNum)`
  Возвращает указанный по номеру принтер.
  `static Collection<Printer>`
  `getPrinters()`
  Список всех настроенных принтеров в конфиге.
  `static PrinterManager.PaymentMapping`
  `getPt(int paymentTypeId)`
  возвращает один PaymentMapping для указанного типа платежа, или null если не настроено на этот тип
  `static Map<Integer,PrinterManager.PaymentMapping>`
  `getPtMap()`
  Возвращает Мэпинг типов платежей на регистраторы.
  `static Map<Integer,List<Integer>>`
  `getRegistratorChMap()`
  Расходы регистраторов.
  `static Map<Integer,List<Integer>>`
  `getRegistratorPtMap()`
  Платежи регистраторов.
  `static void`
  `resetCache()`
  `static void`
  `setCurrentRegistrator(int registratorId, String password)`
  Запись в сессию ИД регистратора, на котором пользователь залогинен.

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### PrinterManager

    public PrinterManager()

- ## Method Details

  - ### getPrinters

    public static Collection<Printer> getPrinters()
    Список всех настроенных принтеров в конфиге.
    Returns:
      коллекшен принтеров.

  - ### getPtMap

    public static Map<Integer,PrinterManager.PaymentMapping> getPtMap()
    Возвращает Мэпинг типов платежей на регистраторы.
    Returns:
      тип_платежа=>PaymentMapping[список номеров_регистраторов(всегда не null), итд].

  - ### getChMap

    public static Map<Integer,PrinterManager.PaymentMapping> getChMap()
    Возвращает Мэпинг типов расходов на регистраторы.
    Returns:
      тип_расхода=>PaymentMapping[список номеров_регистраторов(всегда не null), итд].

  - ### getPt

    public static PrinterManager.PaymentMapping getPt(int paymentTypeId)
    возвращает один PaymentMapping для указанного типа платежа, или null если не настроено на этот тип

  - ### getCh

    public static PrinterManager.PaymentMapping getCh(int chargeTypeId)
    возвращает один ChargeMapping для указанного типа расхода, или null если не настроено на этот тип

  - ### getRegistratorPtMap

    public static Map<Integer,List<Integer>> getRegistratorPtMap()
    Платежи регистраторов. Мэп обратный getPtMap(). Показываются привязки со ВСЕМИ режимами печати.
    Returns:
      мэп: номер_регистратора => [список типов платежей]. Pt выбираются из существующего getPtMap().

  - ### getRegistratorChMap

    public static Map<Integer,List<Integer>> getRegistratorChMap()
    Расходы регистраторов. Мэп обратный getChMap().
    Returns:
      мэп: номер_регистратора => [список типов расходов]. Ch выбираются из существующего getChMap().

  - ### setCurrentRegistrator

    public static void setCurrentRegistrator(int registratorId, String password)
    Запись в сессию ИД регистратора, на котором пользователь залогинен. И пароля пользователя. Передаём 0 - это значит мы разлогиниваемся.
    Parameters:
      `registratorId` - номер регистратора в системе.
      `password` - пароль введённый.

  - ### getCurrentRegistratorId

    public static int getCurrentRegistratorId()
    Номер залогиненного регистратора.
    Returns:
      номер регистратора, или 0 если не выбран регистратор.

  - ### getCurrentRegistratorPassword

    public static String getCurrentRegistratorPassword()
    Текущий пароль залогиненного юзера в регистратор. Используется при отправке команды на удалённый сервер печати.
    Returns:
      строка-пароль

  - ### getPrinter

    public static Printer getPrinter() throws BGPrinterNotloggedMessageException, ru.bitel.bgbilling.common.BGException
    Возвращает текущий выбранный принтер. Если не выбран текущий - бросается экзепшен с ошибкой. Не настроен - тоже. Используется в экшенах с действиями к принтеру, в остальных (запрос очереди итд) может использоваться getCurrentRegistratorId() отдельно. Внимание - это просто объект из мэпа настроек, никакого коннекта если не найден принтер - не происходит.
    Returns:
      экземпляр объекта "текущий принтер на который вошли", всегда не null. при любом казусе (незалогинен, ненастроен) бросается экзепшен. Возвращается клон принтера, а не оригинал из мапа. Чтобы можно было переопределять дальше его, перетирать внутри, а мап не ломался от этого.
    Throws:
      `BGPrinterNotloggedMessageException` - незалогинен, по нему можно отличить необходимость войти
      `ru.bitel.bgbilling.common.BGException` - остальные ошибки, например, ненастроеный принтер.

  - ### getPrinter

    public static Printer getPrinter(int kkmNum) throws ru.bitel.bgbilling.common.BGException
    Возвращает указанный по номеру принтер. Возвращается клон принтера, а не оригинал из мапа. Чтобы можно было переопределять дальше его, перетирать внутри, а мап не ломался от этого.
    Throws:
      `ru.bitel.bgbilling.common.BGException`

  - ### resetCache

    public static void resetCache()