Загрузка данных


$(function() {
    const fns_journal = new QueryTable("VxvzLyks", {
        initComplete: function(queryAction) {
            fns_journal.addActionButton("AddButtonMain", "Отправить в ФНС", uploadRegister, "btn-primary", true);
        },
        onRowSelect: function(data, index) {
            sr_number = data.request_number;
            fns_detail.reload();
            $('#openModalBtn').prop('disabled', false);
        },
        onRowDeselect: function(data, index) {
            sr_number = null;
            fns_detail.reload();
            $('#openModalBtn').prop('disabled', true);
        }
    }, function() {      
        return {
            flk_id: getQueryParam('flk_id'),
            id: getQueryParam('id'),
            startDate: $("#filter_startDate").val(),
            endDate: $("#filter_endDate").val(),
            Number: $("#filter_Number").val(),
            filterShowList: Search_All
        };
    });

    $("#filter_search_top").click(() => {
        const hasFilters = $('#filter_startDate').val().trim() || 
                    $('#filter_endDate').val().trim() || 
                    $('#filter_Number').val().trim();
        if (!hasFilters) {
            return;
        }
        Search_All = true;
        fns_journal.reload();
    });

    $('#filter_clean_top').click(() => {
        Search_All = false;
        clearFilters();
        sr_number = null; 
        fns_journal.reload();
        fns_detail.reload(); 
    });

    function uploadRegister() {
        const validationResult = [];
        const message_level = 'info';

        const appData = fns_journal.data();
        if (!appData.model_file_id) {
            validationResult.push({ messageType: message_level, message: 'Отсутствует документ в СФР' });
            showMessages(validationResult);
            return;
        }

        $.ajax({
            url: "queryAction/action",
            type: "POST",
            async: false,
            data: {
                viewCode: '7K6FKG8e',
                queryActionCode: 'DaizGytc',
                record_id: appData.model_file_id,
                unload_mode: 1
            },
            dataType: "json",
            success: response => handleUploadResponse(response, validationResult)
        });

        $.ajax({
            url: "queryAction/action",
            type: "POST",
            async: false,
            data: {
                viewCode: '7K6FKG8e',
                queryActionCode: 'sr8LySCh',
                model_file_to_verification_id: appData.model_file_id
            },
            dataType: "json",
            success: response => handleUploadResponse(response, validationResult)
        });

        showMessages(validationResult);
        fns_journal.reload();
    }

    function editNumber() {
        const validationResult = [];
        const appData = fns_journal.data();

        if (!appData.smevRegisterId) {
            validationResult.push({ messageType: 'info', message: 'Отсутствует ИД Реестра' });
            showMessages(validationResult);
            return;
        }

        const newNumber = $('#modalInput').val();

        $.ajax({
            url: "queryAction/action",
            type: "POST",
            async: false,
            data: {
                viewCode: '7K6FKG8e',
                queryActionCode: '4eEKszab',
                smevRegisterId: appData.smevRegisterId,
                new_number: newNumber,
                model_file_id: appData.model_file_id
            },
            dataType: "json",
            success: function(response){
                if(response.result) {
                    showMessages(response.messages);
                    return;
                }
                $('#editModal').modal('hide');
                fns_journal.reload();
                $('#openModalBtn').prop('disabled', true);
                showMessages(response.messages);
            }
        });
    }

    $('#editForm').on('submit', function(e) {
        e.preventDefault();
        editNumber();
    });

    function handleUploadResponse(response, validationResult) {
        const message_level = 'info';
        if (response.data === 0) {
            validationResult.push({ messageType: message_level, message: 'Файл выгружен.' });
        } else if (response.data === 1) {
            validationResult.push({ messageType: message_level, message: 'Файл с таким именем уже существует во внешнем хранилище.' });
        } else {
            validationResult.push({ messageType: message_level, message: `Ошибка: код процесса выгрузки ${response.data}` });
        }
    }

    const fns_detail = new QueryTable("T4gawA5f", {}, function() {
        return {
            sr_number: sr_number,
            filterInsuranceNumber: $("#filter_insuranceNumber").val(),
            filterActivityType: $("#filter_activity_type").val(),
            filterLastName: $("#filter_lastName").val(),
            filterFirstName: $("#filter_firstName").val(),
            filterMiddleName: $("#filter_middleName").val(),
            filterContractNumber: $("#filter_contractNumber").val(),
            filterShowList: Search_All
        };
    });

    $("#filter_search_bottom").click(() => fns_detail.reload());

    $("#filter_clean_bottom").click(() => {
        clearBottomFilters();
        sr_number = null;
        fns_detail.reload();
    });

    // ← ЗДЕСЬ, внутри $(function())
    $('#openModalBtn').on('click', function(){
        const appData = fns_journal.data();
        if (appData.is_sent_to_fns === 'true' || appData.is_sent_to_fns === true) {
            showMessages([{messageType: 'error', message: 'Редактирование невозможно: запрос уже отправлен в ФНС'}]);
            return;
        }
        $('#modalInput').val(sr_number);
        $('#editModal').modal('show');
    });

}); //