# -*- coding: cp1251 -*-

"""
    Параметры модулей расширения.

    Аргументы:
        n           -- int, порядковый номер записи файла: 1,2,..., 1 - заголовки справочника
        node        -- ET.Element, узел тега текущей записи заказа, тег <FileBody_Record>
        data        -- list, список данных полей входящего файла-справочника
        logger      -- func, функция печати журнала
        saveback    -- dict, сохраненные данные обработки на предыдущих итерациях

    Ключевые аргументы:
        actions     -- Actions, задания файловой системы
        checker     -- tuple: (keys, codes), результаты обработки текущей записи файла
        connect     -- func, функция для работы с базой данных
        fieldset    -- dict, дескриптор набора данных
        keys        -- tuple, список полей файла
        order       -- Order, объект-заказ
        service     -- BaseService, корневой процесс сервиса
        total       -- int, общее кол-во записей в файле
        tmp         -- str, маршурут к каталогу временных файлов
"""

# ----------------------------------------------
#   Глобальный маршрут-сценарий для исполнения
# ----------------------------------------------

global_scenario = [
    #'preloader',
    #'loader',
    #'unloader',
    #'order_check',
    'order_generate',
    #'order_merge',
    'order_report',
]

# -------------------------------
#   Список модулей типов файлов
# -------------------------------

filetypes_modules = [
    'postbank',
]

# -----------------------------------------
#   Cписок имен модулей из состава пакета
# -----------------------------------------

ext_modules = {
    'preloader'      : [],
    'loader'         : ['postbank'],
    'order_check'    : ['postbank'],
    'order_generate' : ['postbank'],
    'order_merge'    : ['postbank'],
    'order_report'   : ['postbank'],
    'unloader'       : ['postbank'],
}

# --------------------------------------
#   Сценарии командного интерпретатора
# --------------------------------------

command_scenario = {
    'postbank_report' : [
        ('unloader', "ext.unloader.command_scenario['postbank']", {'report_name' : 'CRDSRT', 'is_report_today' : 0}), 
        ('order_report', "ext.order_report.command_scenario['postbank']", {'report_name' : 'POST 1 CLASS', 'is_report_today' : 0}),
    ],
}

# ------------------------------------------------
#   Производственный календарь (праздничные дни)
# ------------------------------------------------

calendar = (
    '20190509', '20190510', '20190511', '20190512', 
    '20190612', 
    '20191104', 
    '20200101', '20200102', '20200103', '20200104', '20200105', '20200106', '20200107', '20200108', '20200109', '20200110', '20200111', '20200112', 
    '20200224', 
    '20200309', 
    '20200501', '20200504', '20200505', '20200511', 
    '20200612', 
    '20201104', 
    '20210101', '20210104', '20210105', '20210106', '20210107', '20210108', 
    '20210222', '20210223', 
    '20210308', 
    '20210503', '20210510', 
    '20210614', 
    '20211104', '20211105', 
    '20211231', 
)

suspended_dates = (
    ('20210201', ('P', 'E'), ('C1',)), 
    ('20210708', ('P', 'E'), ('C1',)), 
)
