from messagebus import TokenCreator, TokenPriority


class BusTokens(object):

    # RemoteOrder
    TK_REMOTE_ORDER_GET_RUPTURED_ITEMS = TokenCreator.create_token(TokenPriority.low, "37", "213")

    # FiscalWrapper
    TK_FISCALWRAPPER_PROCESS_REQUEST = TokenCreator.create_token(TokenPriority.high, "31", "1")
    TK_FISCALWRAPPER_SEFAZ_CONNECTIVITY = TokenCreator.create_token(TokenPriority.high, "31", "4")
    TK_FISCALWRAPPER_SAT_OPERATIONAL_STATUS_REQUEST = TokenCreator.create_token(TokenPriority.high, "31", "5")
    TK_FISCALWRAPPER_GET_NF_TYPE = TokenCreator.create_token(TokenPriority.low, "31", "7")
    TK_FISCALWRAPPER_SAT_STORE_STATUS = TokenCreator.create_token(
        priority=TokenPriority.low,
        message_group="31",
        number="32",
    )

    # EletronicPayment
    TK_ELECTRONIC_PAYMENT_ADD_PAYMENT = TokenCreator.create_token(TokenPriority.low, "0E", "1")
    TK_ELECTRONIC_PAYMENT_CANCEL_PAYMENT = TokenCreator.create_token(TokenPriority.low, "0E", "2")
    TK_ELECTRONIC_PAYMENT_FINISH_PAYMENT = TokenCreator.create_token(TokenPriority.low, "0E", "3")
    TK_ELECTRONIC_PAYMENT_CONNECTIVITY_TEST = TokenCreator.create_token(TokenPriority.low, "0E", "4")
    TK_ELECTRONIC_PAYMENT_SEND_RESPONSE = TokenCreator.create_token(TokenPriority.low, "0E", "5")
    TK_ELECTRONIC_PAYMENT_GET_ELECTRONIC_TYPES = TokenCreator.create_token(TokenPriority.low, "0E", "8")

    # Benefits
    TK_NDISCOUNT_ADD_BENEFIT = TokenCreator.create_token(TokenPriority.low, "112", "1")

    # Coupons
    TK_COUPON_GET = TokenCreator.create_token(TokenPriority.low, "46", "2")
    TK_COUPON_GET_FREE_COUPON_DATA = TokenCreator.create_token(TokenPriority.low, "46", "B")
    TK_COUPON_APPLY = TokenCreator.create_token(TokenPriority.low, "113", "1")
    TK_COUPON_REMOVE = TokenCreator.create_token(TokenPriority.low, "112", "2")

    # PosUpdater
    TK_POS_UPDATER_GET_VERSIONS = TokenCreator.create_token(TokenPriority.low, "95", "6")

    # I18N
    TK_I18N_GETLANGS = TokenCreator.create_token(TokenPriority.low, "7", "4")
    TK_I18N_GETTABLEJSON = TokenCreator.create_token(TokenPriority.low, "7", "5")

    # Static Config
    TK_POS_EXECUTEACTION = TokenCreator.create_token(TokenPriority.high, "5", "3")

    # Device Manager
    TK_GET_USED_SERVICE = TokenCreator.create_token(TokenPriority.low, "D", "1")

    # NSale/ProductManager
    TK_SLCTRL_PMGR_GET_NAVIGATION = TokenCreator.create_token(
        priority=TokenPriority.low,
        message_group="A",
        number="61",
    )

    TK_SLCTRL_PMGR_GET_MAIN_MENU = TokenCreator.create_token(
        priority=TokenPriority.low,
        message_group="A",
        number="64",
    )

    # Loyalty
    TK_LOYALTY_GET_LOYALTY_ID = TokenCreator.create_token(
        priority=TokenPriority.low,
        message_group="111",
        number="1",
    )
    TK_LOYALTY_GET_AND_LOCK_VOUCHER = TokenCreator.create_token(
        priority=TokenPriority.low,
        message_group="111",
        number="2",
    )
    TK_LOYALTY_BURN_VOUCHER = TokenCreator.create_token(
        priority=TokenPriority.low,
        message_group="111",
        number="3",
    )
    TK_LOYALTY_UNLOCK_VOUCHER = TokenCreator.create_token(
        priority=TokenPriority.low,
        message_group="111",
        number="4",
    )
    TK_LOYALTY_IS_AVAILABLE = TokenCreator.create_token(
        priority=TokenPriority.low,
        message_group="111",
        number="FF",
    )
    TK_LOYALTY_GET_ID_TYPE = TokenCreator.create_token(
        priority=TokenPriority.low,
        message_group="111",
        number="5",
    )
