"""General constants module.""" from abacus_common_logic.utils.enum import enum DEFAULT_PAGE_LIMIT = 100 DEFAULT_PAGE_OFFSET = 0 ERROR_INVALID_LIMIT_OFFSET = 'Limit and offset must be valid integers' LEDGER_TYPES = enum('LedgerTypes', CREDIT='credit', DEBIT='debit') VAT_TYPES = enum('VatTypes', SUPPLIER='supplier', CLIENT='client') VAT_CATEGORIES_OLD = enum( 'VatCategoriesOld', VAT_APPLIED='vat_applied', VAT_EXEMPT='vat_exempt' ) VAT_CATEGORIES = enum( 'VatCategories', CLOSING_BALANCE='closing_balance', COMMISSION='commission', DISTRIBUTION_FEE='distribution_fee', GROSS_REVENUE='gross_revenue', CUSTOM_PAYMENT='custom_payment', ) CONTRACT_TYPES = enum('ContractTypes', DISTRIBUTION='distribution') VAT_APPLICABLE_COUNTRIES = enum('VatApplicableCountries', GBR='GBR') STATEMENT_PERIOD_STATUSES = enum( 'StatementPeriodStatus', OPEN='open', CLOSED='closed', CURRENT='current' ) ACCOUNTING_RUN_STATUSES = enum( 'AccountingRunStatuses', COMMITTED='Committed', INVALID='Invalid', SKIPPED='Skipped' ) LEDGER_ACCOUNT_ENTRIES_SUCCESS_MSG = '{} ledger account entries created.' DISTRIBUTION_TYPES = enum('DistributionTypes', DIGITAL='digital', PHYSICAL='physical') LEDGER_CONTRACT_ADVANCE_SUCCESS_MSG = ( 'Successfully created ledger entries for contract advance.' ) CORRECTION_TYPES = enum( 'CorrectionTypes', ROYALTY_REVERSAL='royalty_reversal', ROYALTY_CORRECTION='royalty_correction', ) SUBLEDGER_EVENT_MAPPING = { LEDGER_TYPES.CREDIT: 'commit_reversal_to_subledger', LEDGER_TYPES.DEBIT: 'commit_to_subledger', }