Загрузка данных
var registerTable = new QueryTable("Ky2zYzjd", {
initComplete: function (settings, json) {
registerTable.insertActionButton("addNewRegister", "Создать", addNewRegister, "btn-success", false, 0);
registerTable.insertActionButton("checkRegister", "Проверить", checkRegister, "btn-primary", true, 2);
registerTable.addActionButton("exportRegister", "Сформировать xml c проверкой", exportRegister, "btn-primary", true);
registerTable.addActionButton("uploadRegister", "Отправить в СФР", uploadRegister, "btn-primary", true);
registerTable.addActionButton("deleteRegister", "Удалить", deleteRegister, "btn-danger", true);
registerTable.addActionButton("exportSettings", ' ', exportSettings, "btn-primary", true);
$('#exportSettings').css('display', 'inline-block').append($('<i></i>').addClass('glyphicon glyphicon-wrench icon-white')); // glyphicon glyphicon-cog
$('#exportSettings').append(' Настройка');
//registerTable.addActionButton("exportRegisterXML", "Выгрузить xml", exportRegisterXML, "btn-primary", true);
},
onRowSelect: function (data, index) {
dataTable.reload();
dataTable_error.reload();
defaultBatches = true;
},
onRowDeselect: function (data, index) {
dataTable.reload();
dataTable_error.reload();
},
drawCallback: function (settings) {
skip_url_app = (settings.oAjaxData.queryTableFilter.size != 0);
dataTable.reload();
dataTable_error.reload();
}
},
function () {
var appData = registerTable.data();
var data = {};
data.registerType ="СИЗЛП";
let id_register = application().id;
// есть ли выбранные фильтры
const isFilterActive = registerTable.filter().parts.some(function (value) {
return (
["VALUE", "PREDICATE"].includes(value.type) || value.id.includes("NULL")
);
});
if (id_register && id_register > -1) {
data.id = id_register; // показываем переданный ID
} else if (isFilterActive) {
data.id = -1; // при выбранном фильтре показываем записи
} else {
data.id = null; // записи скрыты
}
/*if(skip_url_app) {
data.id = -1;
}else{
data.id = id_register;
}*/
var filter_status = $("#filter_status").val();
var filter_date_from = $("#filter\\.created_at_from").val();
var filter_date_to = $("#filter\\.created_at_to").val();
var filter_number = $("#filter\\.register_number").val();
data.filter_status = filter_status;
data.filter_date_from = filter_date_from;
data.filter_date_to = filter_date_to;
data.filter_number = filter_number;
return data;
},
{selectFirstRow: true, order: [[0, 'desc']]}
);
SELECT
r.id as id,
to_char(r.date, 'dd.MM.yyyy') as date,
r.year as year,
r.number as number,
case when mftv.zip_name is null then
case when mftv.name is not null then
'<a target="_blank" href="modelFileToVerification/modelFileToVerification/downloadSource?id='|| mftv.id ||'" '||
case when mftv.name is null then 'style="color: #d9534f;"' else '' end ||'>
<span class="glyphicon glyphicon-file" aria-hidden="true"></span>' || case when mftv.name = '' then
'' else mftv.name end || '</a>'
else ''
end
else
'<a target="_blank" href="modelFileToVerification/modelFileToVerification/downloadArchive?ArchiveName='|| mftv.zip_name
||'" '|| '>
<span class="glyphicon glyphicon-file" aria-hidden="true"></span>' || mftv.zip_name || '</a>'
end as verified_file_id,
case when mftv.id is not null then
'<a target="_blank" href="view?viewCode=9hUIiHYU&ids=' || mftv.id ||'">
<span class="glyphicon glyphicon-book" aria-hidden="true"></span>' || ' ' || mftv.id || '</a>'
else
' '
end as journal_id,
case mftv.count when 1 then 'Сформирован'
when 2 then 'Проверяется'
when 3 then 'ФЛК пройден'
when 4 then 'Ошибка ФЛК'
when 5 then 'Отправлен'
else ''
end as sfr_status,
'<a href="queryDataSource/ufvhPMTj/queryDataSourceFile/download?id='|| smev.get_sk_file_id(r.sk1) ||'" '||
case when r.sk1 is not null then
case when smev.get_sk_file_status_id(r.sk1) = 0 then 'style="color: #d9534f;"' else '' end
end ||'>
<span class="glyphicon glyphicon-file" aria-hidden="true"></span>' || case when r.sk1 is not null then
case when smev.get_sk_file_status_id(r.sk1) = 0 then 'Ошибка' else 'Отчёт' end
end || '</a>' as sk1,
'<a href="queryDataSource/ufvhPMTj/queryDataSourceFile/download?id='|| smev.get_sk_file_id(r.sk2) ||'" '||
case when r.sk2 is not null then
case when smev.get_sk_file_status_id(r.sk2) = 0 then 'style="color: #d9534f;"' else '' end
end ||'>
<span class="glyphicon glyphicon-file" aria-hidden="true"></span>' || case when r.sk2 is not null then
case when smev.get_sk_file_status_id(r.sk2) = 0 then 'Ошибка' else 'Отчёт' end
end || '</a>' as sk2,
mftv.name as sfr_file_name,
r.description as decription,
mftv.id as v_file_id,
mftv.count in (3,5) as ready_to_upload,
to_char(r.query_date, 'dd.MM.yyyy') as query_date,
to_char(r.sent, 'dd.MM.yyyy') as sent,
r.short_name as short_name,
r.inn as inn,
r.kpp as kpp,
r.address as address,
r.guid as guid,
r.username as username,
to_char(r.version, 'DD.MM.YYYY HH24:MI:SS') as version
FROM report.smev_register r
left join dev.model_file_to_verification mftv on r.verified_file_id = mftv.id
WHERE (case when :like_sign = false
then r.smev_register_type_code = any(string_to_array(:registerType, ','))
else r.smev_register_type_code in ('РПФР-ДСВ','РПФР-М','РПФР-СВ') end)
AND case
when :id = -1 then true
when :id is null then false
else r.id = :id
end
AND (:filter_status is null or :filter_status = '' or mftv.count = cast(:filter_status as int))
AND (:filter_date_from is null or :filter_date_from = '' or r.date >= to_date(:filter_date_from, 'YYYY-MM-DD'))
AND (:filter_date_to is null or :filter_date_to = '' or r.date <= to_date(:filter_date_to, 'YYYY-MM-DD'))
AND (:filter_number is null or :filter_number = '' or cast(r.number as text) like '%' || :filter_number || '%')