Non puoi selezionare più di 25 argomenti Gli argomenti devono iniziare con una lettera o un numero, possono includere trattini ('-') e possono essere lunghi fino a 35 caratteri.
 
 
 

628 righe
27 KiB

<?php
$mode = $_REQUEST['action'];
switch ($mode) {
case 'load':
load();
break;
case 'listSconti':
listSconti();
break;
case 'listScontiNonErogati':
listScontiNonErogati();
break;
case 'presaincarico':
presaincarico();
break;
case 'approva':
approva(true);
break;
case 'disapprova':
approva(false);
break;
case 'eroga':
eroga();
break;
case 'escludi':
escludi();
break;
case 'valida':
valida();
break;
case 'loadMandato':
loadMandato();
break;
case 'lista_decreti':
listDecreti();
break;
case 'forza':
forzaResidenza(1);
break;
case 'togli_forzatura_residenza':
forzaResidenza(0);
break;
case 'approvaVerificati':
approvaVerificati();
break;
case 'cambiaLotto':
cambiaLotto();
break;
}
function load() {
$id = Utils::getFromReq("id", 0);
$record = new DomandaSconti($id);
if ($record->NOTE != "") {
$nota = explode('[!]', $record->NOTE);
if (count($nota) > 0) {
$record->NOTE = $nota[1];
}
}
exit(json_encode($record));
}
function listSconti() {
global $LoggedAccount, $STATI_RICHIESTE_SCONTI, $ICONE_STATI_RICHIESTE_SCONTI;
$response = array();
$draw = $_POST['draw'];
$row = $_POST['start'];
$rowperpage = $_POST['length']; // Rows display per page
$columnIndex = $_POST['order'][0]['column']; // Column index
$columnName = $_POST['columns'][$columnIndex]['data']; // Column name
$columnSortOrder = $_POST['order'][0]['dir']; // asc or desc
$searchValue = $_POST['search']['value']; // Search value
$data = array();
$searchArray = array();
$data_modifica = "";
//$countAllegatiCompleti = 0;
//$iTotalRecordsObbligatori = 0;
## Search
$totCount = false;
$stato = $_POST['columns'][8]['search']['value'];
if ($stato == "") {
$stato = 0;
$searchQuery = " AND STATO >= :STATO";
} else {
$searchQuery = " AND STATO = :STATO";
}
$priority = $_POST['columns'][1]['search']['value'];
if ($priority == "") {
$priority = 0;
$searchQuery .= " AND PRIORITA >= :PRIORITA";
} else {
$searchQuery .= " AND PRIORITA = :PRIORITA";
}
$searchArray = array(
'STATO' => $stato,
'PRIORITA' => $priority,
);
if ($searchValue != '') {
$searchQuery .= " AND ( REGEXP_LIKE(COGNOME,:COGNOME,'i') OR REGEXP_LIKE(NOME,:NOME,'i') OR CODICE_FISCALE = :CODICE_FISCALE OR ID = :ID ) ";
$searchArray['COGNOME'] = $searchValue;
$searchArray['NOME'] = $searchValue;
$searchArray['CODICE_FISCALE'] = $searchValue;
$searchArray['ID'] = intval($searchValue);
}
$res = DomandaSconti::LoadDataTable($searchQuery, $searchArray, $columnName, $columnSortOrder, $row, $rowperpage);
//Utils::print_array($res);exit();
foreach ($res['empRecords'] as $row) {
$btn_Downloads = '';
$btn_OP = '';
$note_esclusione = '';
if ($row['FILEPATH_BIGLIETTO'] != "") {
$btn_Downloads .= '<button type="button" data-toggle="tooltip" data-placement="top" title="Scarica il biglietto elettronico" onclick="openStreamer(\'' . $row['ID'] . '\', \'biglietto\' )" class="btn btn-sm btn-success"><i class="fas fa-download"></i>&nbsp;Biglietto elettronico</button>';
}
if ($row['FILEPATH_CARTAIMBARCO'] != "") {
$btn_Downloads .= '<button type="button" data-toggle="tooltip" data-placement="top" title="Scarica la carta di imbarco" onclick="openStreamer(\'' . $row['ID'] . '\', \'imbarco\' )" class="btn btn-sm btn-info"><i class="fas fa-download"></i>&nbsp;Carta d\'imbarco</button>';
}
if ($row['STATO'] < RS_EROGATA && $row['STATO'] > RS_IN_ELABORAZIONE) {
$onclick = 'siparsFramework.takeChargeFromName(\'' . $row['ID'] . '\',\'elenco_sconti\', \'load\', \'\', \'form-edit-sconto\' )';
//$fnAddMod = '<a href="#editFaq" ' . $onclick . ' data-toggle="modal" data-target="#editFaq" class="btn btn-primary "><i class="fas fa-quidditch"></i></a>';
$btn_OP = '<button type="button" data-toggle="modal" data-target="#editEscludiRichiesta" onclick="' . $onclick . '" title="Escludi la singola richiesta" class="btn btn-sm btn-danger"><i class="fas fa-ban"></i></button>';
}
if ($row['STATO'] == RS_PRESA_IN_CARICO) {
$onclick = 'siparsFramework.takeChargeFromName(\'' . $row['ID'] . '\',\'elenco_sconti\', \'load\', \'\', \'form-edit-sconto-valida\' )';
$btn_OP .= '<button type="button" data-toggle="modal" data-target="#editValidaRichiesta" onclick="' . $onclick . '" title="Valida la singola richiesta" class="btn btn-sm btn-info"><i class="far fa-check-square"></i></button>';
}
if ($row['NOTE'] != "") {
$nota = explode('[!]', $row['NOTE']);
if (count($nota) > 0) {
$row['NOTE'] = $nota[0] . ($nota[1] != "" ? " - " . $nota[1] : "");
}
$note_esclusione = "<h5 class='text-success text-uppercase'>" . $row['NOTE'] . "</h5>";
}
if ($row['STATO'] == RS_NON_APPROVATA) {
$note_esclusione = "<h6 class='text-danger text-uppercase'>" . $row['NOTE'] . "</h6>";
}
$label_forza_residenza = (intval($row['FORZA_RESIDENZA']) == 0 ? '' : '<br/><small class="text-success">Forzato sconto residenza</small>');
if ($row['STATO'] == RS_IN_ELABORAZIONE) {
if ($row['FORZA_RESIDENZA'] == 0) {
$onclickForza = 'onclick="siparsFramework.takeChargeConfirm(\'' . $row['ID'] . '\',\'elenco_sconti\', \'forza\', \'#lista_richieste\' )"';
$btn_OP .= '<button type="button" ' . $onclickForza . ' title="Forza lo sconto residenza" class="btn btn-sm btn-info"><i class="fas fa-bell"></i></button>';
} else {
$onclickForza = 'onclick="siparsFramework.takeChargeConfirm(\'' . $row['ID'] . '\',\'elenco_sconti\', \'togli_forzatura_residenza\', \'#lista_richieste\' )"';
$btn_OP .= '<button type="button" ' . $onclickForza . ' title="Togli la forzatura dello sconto residenza" class="btn btn-sm btn-danger"><i class="fas fa-bell-slash"></i></button>';
}
}
$data_richiesta = '';
if ($row['DATA_REGISTRAZIONE'] != "") {
$data_richiesta = Date::dateOracleTimeStamp($row['DATA_REGISTRAZIONE'], 'd-m-Y');
}
$data_acquisto = '';
if ($row['DATA_ACQUISTO'] != "") {
$data_acquisto = Date::dateOracleDate($row['DATA_ACQUISTO'], 'd-m-Y');
}
$data_volo = '';
if ($row['DATA_VOLO'] != "") {
$data_volo = Date::dateOracleDate($row['DATA_VOLO'], 'd-m-Y');
}
$controlloVolo = Utils::isPeriodoNativita($row['DATA_VOLO']);
if ($controlloVolo == 0) {
$priority = '<span class="h5 float-right text-warning"><i class="fas fa-star"></i><i class="far fa-star"></i></span>';
if ($row['PRIORITA'] > 0 || $row['ISEE'] == 1) {
$priority = '<span class="h5 float-right text-warning"><i class="fas fa-star"></i><i class="fas fa-star"></i></span>';
}
if ($row['PRIORITA'] == 1 || $row['ISEE'] == 1) {
$txt_priority = 'PRIORITARIO';
} else {
$txt_priority = 'RESIDENTE';
}
$tipoVolo = $txt_priority . $priority;
} else {
$tipoVolo = "<span class='text-danger'>DDG 3848</span>";
}
$tratta = '<small class="text-success"><i class="fas fa-ticket-alt"></i>&nbsp;' . $row['NUMERO_VOLO'] . '</small><br/>';
$tratta .= '<small>Compagnia: <b>' . $row['COMPAGNIA_AEREA'] . '</b></small><br/>';
$tratta .= '<small class="text-info"><i class="fas fa-plane-departure"></i>&nbsp;' . $row['AEROPORTO_PARTENZA'] . '</small> - ';
$tratta .= '<small class="text-success"><i class="fas fa-plane-arrival"></i>&nbsp;' . $row['AEROPORTO_DESTINAZIONE'] . '</small><br/>';
$tratta .= '<small class="text-primary"><i class="fas fa-euro-sign"></i>&nbsp;' . number_format($row['COSTO_TRATTA'], 2, ',', '.') . '</small>';
$fnVisualizza = '<button type="button" data-toggle="tooltip" data-placement="top" title="Visualizza l\'istanza del dichiarante" class="btn btn-sm btn-primary" onclick=\'redirectDomanda("' . $row['ID_DOMANDA'] . '")\'><i class="fas fa-file-alt"></i></button>';
$gruopDowuloads = '<div class="btn-group" role="group" aria-label="Basic example">' . $btn_Downloads . '</div>';
$gruopOP = '<div class="btn-group" role="group" aria-label="Basic example">' . $btn_OP . $fnVisualizza . '</div>';
$benficiario = "<small>[" . $row['CODICE_FISCALE'] . "]</small>&nbsp;" . $row['COGNOME'] . "&nbsp;" . $row['NOME'];
$benficiario .= "<br/>" . $gruopDowuloads . $note_esclusione;
$data[] = array(
"ID" => $row['ID'],
"DATA_RICHIESTA" => $data_richiesta,
"PRIORITA" => $tipoVolo,
"BENEFICIARIO" => $benficiario,
"DATA_ACQUISTO" => $data_acquisto,
"DATA_VOLO" => $data_volo,
"TRATTA" => $tratta,
"SCONTO_TOTALE" => number_format($row['SCONTO_TOTALE'], 2, ',', '.') . $label_forza_residenza,
"STATO" => $ICONE_STATI_RICHIESTE_SCONTI[$row['STATO']] . (intval($row['LOTTO']) > 0 ? '&nbsp;<small>Lotto n.' . $row['LOTTO'] . '</small>' : '' ),
"OP" => $gruopOP//($domanda->STATO > STATO_DOMANDA_IN_PREPARAZIONE ? '' : $btn_genera . $btn)
);
}
## Response
$response = array(
"draw" => intval($draw),
"iTotalRecords" => $res['iTotalRecords'],
"iTotalDisplayRecords" => $res['iTotalDisplayRecords'],
"aaData" => $data
);
exit(json_encode($response));
}
function listScontiNonErogati() {
global $LoggedAccount, $STATI_RICHIESTE_SCONTI, $ICONE_STATI_RICHIESTE_SCONTI;
$response = array();
$draw = $_POST['draw'];
$row = $_POST['start'];
$rowperpage = $_POST['length']; // Rows display per page
$columnIndex = $_POST['order'][0]['column']; // Column index
$columnName = $_POST['columns'][$columnIndex]['data']; // Column name
$columnSortOrder = $_POST['order'][0]['dir']; // asc or desc
$searchValue = $_POST['search']['value']; // Search value
$data = array();
$searchArray = array();
$data_modifica = "";
//$countAllegatiCompleti = 0;
//$iTotalRecordsObbligatori = 0;
## Search
$totCount = false;
$searchQuery = "AND ((STATO=" . RS_EROGATA . " AND SCONTO_TOTALE=0) OR STATO =" . RS_NON_APPROVATA . ")";
$priority = $_POST['columns'][1]['search']['value'];
if ($priority == "") {
$priority = 0;
$searchQuery .= " AND PRIORITA >= :PRIORITA";
} else {
$searchQuery .= " AND PRIORITA = :PRIORITA";
}
$searchArray = array(
'PRIORITA' => $priority,
);
if ($searchValue != '') {
$searchQuery .= " AND ( REGEXP_LIKE(COGNOME,:COGNOME,'i') OR REGEXP_LIKE(NOME,:NOME,'i') OR CODICE_FISCALE = :CODICE_FISCALE OR ID = :ID ) ";
$searchArray['COGNOME'] = $searchValue;
$searchArray['NOME'] = $searchValue;
$searchArray['CODICE_FISCALE'] = $searchValue;
$searchArray['ID'] = intval($searchValue);
}
//Utils::print_array($searchQuery);exit();
$res = DomandaSconti::LoadDataTable($searchQuery, $searchArray, $columnName, $columnSortOrder, $row, $rowperpage);
//Utils::print_array($res);exit();
foreach ($res['empRecords'] as $row) {
$btn_Downloads = '';
$btn_OP = '';
$note_esclusione = '';
if ($row['FILEPATH_BIGLIETTO'] != "") {
$btn_Downloads .= '<button type="button" data-toggle="tooltip" data-placement="top" title="Scarica il biglietto elettronico" onclick="openStreamer(\'' . $row['ID'] . '\', \'biglietto\' )" class="btn btn-sm btn-success"><i class="fas fa-download"></i>&nbsp;Biglietto elettronico</button>';
}
if ($row['FILEPATH_CARTAIMBARCO'] != "") {
$btn_Downloads .= '<button type="button" data-toggle="tooltip" data-placement="top" title="Scarica la carta di imbarco" onclick="openStreamer(\'' . $row['ID'] . '\', \'imbarco\' )" class="btn btn-sm btn-info"><i class="fas fa-download"></i>&nbsp;Carta d\'imbarco</button>';
}
if ($row['STATO'] < RS_EROGATA && $row['STATO'] > RS_IN_ELABORAZIONE) {
$onclick = 'siparsFramework.takeChargeFromName(\'' . $row['ID'] . '\',\'elenco_sconti\', \'load\', \'\', \'form-edit-sconto\' )';
//$fnAddMod = '<a href="#editFaq" ' . $onclick . ' data-toggle="modal" data-target="#editFaq" class="btn btn-primary "><i class="fas fa-quidditch"></i></a>';
$btn_OP = '<button type="button" data-toggle="modal" data-target="#editEscludiRichiesta" onclick="' . $onclick . '" title="Escludi la singola richiesta" class="btn btn-sm btn-danger"><i class="fas fa-ban"></i></button>';
}
if ($row['STATO'] == RS_PRESA_IN_CARICO) {
$onclick = 'siparsFramework.takeChargeFromName(\'' . $row['ID'] . '\',\'elenco_sconti\', \'load\', \'\', \'form-edit-sconto-valida\' )';
$btn_OP .= '<button type="button" data-toggle="modal" data-target="#editValidaRichiesta" onclick="' . $onclick . '" title="Valida la singola richiesta" class="btn btn-sm btn-info"><i class="far fa-check-square"></i></button>';
}
if ($row['NOTE'] != "") {
$nota = explode('[!]', $row['NOTE']);
if (count($nota) > 0) {
$row['NOTE'] = $nota[0] . ($nota[1] != "" ? " - " . $nota[1] : "");
}
$note_esclusione = "<h5 class='text-success text-uppercase'>" . $row['NOTE'] . "</h5>";
}
if ($row['STATO'] == RS_NON_APPROVATA) {
$note_esclusione = "<h6 class='text-danger text-uppercase'>" . $row['NOTE'] . "</h6>";
}
$label_forza_residenza = (intval($row['FORZA_RESIDENZA']) == 0 ? '' : '<br/><small class="text-success">Forzato sconto residenza</small>');
if ($row['STATO'] == RS_IN_ELABORAZIONE) {
if ($row['FORZA_RESIDENZA'] == 0) {
$onclickForza = 'onclick="siparsFramework.takeChargeConfirm(\'' . $row['ID'] . '\',\'elenco_sconti\', \'forza\', \'#lista_richieste\' )"';
$btn_OP .= '<button type="button" ' . $onclickForza . ' title="Forza lo sconto residenza" class="btn btn-sm btn-info"><i class="fas fa-bell"></i></button>';
} else {
$onclickForza = 'onclick="siparsFramework.takeChargeConfirm(\'' . $row['ID'] . '\',\'elenco_sconti\', \'togli_forzatura_residenza\', \'#lista_richieste\' )"';
$btn_OP .= '<button type="button" ' . $onclickForza . ' title="Togli la forzatura dello sconto residenza" class="btn btn-sm btn-danger"><i class="fas fa-bell-slash"></i></button>';
}
}
$data_richiesta = '';
if ($row['DATA_REGISTRAZIONE'] != "") {
$data_richiesta = Date::dateOracleTimeStamp($row['DATA_REGISTRAZIONE'], 'd-m-Y');
}
$data_acquisto = '';
if ($row['DATA_ACQUISTO'] != "") {
$data_acquisto = Date::dateOracleDate($row['DATA_ACQUISTO'], 'd-m-Y');
}
$data_volo = '';
if ($row['DATA_VOLO'] != "") {
$data_volo = Date::dateOracleDate($row['DATA_VOLO'], 'd-m-Y');
}
$priority = '<span class="h5 float-right text-warning"><i class="fas fa-star"></i><i class="far fa-star"></i></span>';
if ($row['PRIORITA'] > 0) {
$priority = '<span class="h5 float-right text-warning"><i class="fas fa-star"></i><i class="fas fa-star"></i></span>';
}
$txt_priority = ($row['PRIORITA'] == 1 ? 'PRIORITARIO' : 'RESIDENTE');
$tratta = '<small class="text-success"><i class="fas fa-ticket-alt"></i>&nbsp;' . $row['NUMERO_VOLO'] . '</small><br/>';
$tratta .= '<small>Compagnia: <b>' . $row['COMPAGNIA_AEREA'] . '</b></small><br/>';
$tratta .= '<small class="text-info"><i class="fas fa-plane-departure"></i>&nbsp;' . $row['AEROPORTO_PARTENZA'] . '</small> - ';
$tratta .= '<small class="text-success"><i class="fas fa-plane-arrival"></i>&nbsp;' . $row['AEROPORTO_DESTINAZIONE'] . '</small><br/>';
$tratta .= '<small class="text-primary"><i class="fas fa-euro-sign"></i>&nbsp;' . number_format($row['COSTO_TRATTA'], 2, ',', '.') . '</small>';
$fnVisualizza = '<button type="button" data-toggle="tooltip" data-placement="top" title="Visualizza l\'istanza del dichiarante" class="btn btn-sm btn-primary" onclick=\'redirectDomanda("' . $row['ID_DOMANDA'] . '")\'><i class="fas fa-file-alt"></i></button>';
$gruopDowuloads = '<div class="btn-group" role="group" aria-label="Basic example">' . $btn_Downloads . '</div>';
$gruopOP = '<div class="btn-group" role="group" aria-label="Basic example">' . $btn_OP . $fnVisualizza . '</div>';
$benficiario = "<small>[" . $row['CODICE_FISCALE'] . "]</small>&nbsp;" . $row['COGNOME'] . "&nbsp;" . $row['NOME'];
$benficiario .= "<br/>" . $gruopDowuloads . $note_esclusione;
$data[] = array(
"ID" => $row['ID'],
"DATA_RICHIESTA" => $data_richiesta,
"PRIORITA" => $txt_priority . $priority,
"BENEFICIARIO" => $benficiario,
"DATA_ACQUISTO" => $data_acquisto,
"DATA_VOLO" => $data_volo,
"TRATTA" => $tratta,
"SCONTO_TOTALE" => number_format($row['SCONTO_TOTALE'], 2, ',', '.') . $label_forza_residenza,
"STATO" => $ICONE_STATI_RICHIESTE_SCONTI[$row['STATO']] . (intval($row['LOTTO']) > 0 ? '&nbsp;<small>Lotto n.' . $row['LOTTO'] . '</small>' : '' ),
"OP" => $gruopOP//($domanda->STATO > STATO_DOMANDA_IN_PREPARAZIONE ? '' : $btn_genera . $btn)
);
}
## Response
$response = array(
"draw" => intval($draw),
"iTotalRecords" => $res['iTotalRecords'],
"iTotalDisplayRecords" => $res['iTotalDisplayRecords'],
"aaData" => $data
);
exit(json_encode($response));
}
function presaincarico() {
$data_estrazione = Utils::get_filter_string_POST('data_estrazione');
$tipo = Utils::get_filter_string_POST('tipo');
$response = Utils::initDefaultResponse();
$response = DomandaSconti::SetPresInCarico($data_estrazione, $tipo);
exit(json_encode($response));
}
function approva($t) {
$lotto = Utils::get_filter_string_POST('lotto');
$tipo = Utils::get_filter_string_POST('tipo');
$response = Utils::initDefaultResponse();
if (!$t) {
$response = DomandaSconti::SetDisApprova($lotto, $tipo);
} else {
$response = DomandaSconti::SetApprova($lotto, $tipo);
}
exit(json_encode($response));
}
function eroga() {
$lotto = $_POST['lotto'];
$response = Utils::initDefaultResponse();
$response = DomandaSconti::SetErogato($lotto);
exit(json_encode($response));
}
function escludi() {
global $LoggedAccount;
$response = Utils::initDefaultResponse();
if (intval($_POST['ID']) > 0) {
$rec = new DomandaSconti($_POST['ID']);
$rec->ID_UID_FIREBASE = $LoggedAccount->ID;
$rec->NOTE = $_POST['NOTE'];
$rec->STATO = RS_NON_APPROVATA;
$now = new DateTime();
$rec->DATA_ESITO = $now->format('d-M-y');
$rec->NUMERO_VOLO = $rec->NUMERO_VOLO . '-CANCELLED-' . time();
$response = $rec->Save();
$caricoControllo = DomandaScontiControlli::loadControlloFromSconto($_POST['ID']);
$domandaControlli = new DomandaScontiControlli($caricoControllo['ID']);
$domandaControlli->DATA_ESITO = date(FORMAT_TIMESTAMP_ORACLE);
$domandaControlli->ESITO = RS_NON_APPROVATA;
$domandaControlli->ID_UID_FIREBASE_ADMIN = $LoggedAccount->ID;
$eseguo = $domandaControlli->Save();
}
exit(json_encode($response));
}
function valida() {
// error_reporting(E_ALL);
//ini_set('display_errors', 1);
global $LoggedAccount, $con;
$response = Utils::initDefaultResponse();
$transaction = false;
$con->db_transactionStart();
if (intval($_POST['ID']) > 0) {
$rec = new DomandaSconti($_POST['ID']);
$rec->ID_UID_FIREBASE = $LoggedAccount->ID;
$txt_validato = "[VALIDATA]";
$rec->NOTE = $txt_validato . "[!]" . $_POST['NOTE'];
$response = $rec->Save();
$caricoControllo = DomandaScontiControlli::loadControlloFromSconto($_POST['ID']);
if ($caricoControllo['ID'] > 0) {
$domandaControlli = new DomandaScontiControlli($caricoControllo['ID']);
} else {
$caricoLotto = DomandaSconti::getLottoFromRecord($_POST['ID']);
$domandaControlli = new DomandaScontiControlli();
$domandaControlli->LOTTO = $caricoLotto['LOTTO'];
$domandaControlli->ID_DOMANDA_SCONTI = $_POST['ID'];
}
$domandaControlli->DATA_ESITO = date(FORMAT_TIMESTAMP_ORACLE);
$domandaControlli->ESITO = RS_PRESA_IN_CARICO;
$domandaControlli->ID_UID_FIREBASE_ADMIN = $LoggedAccount->ID;
$eseguo = $domandaControlli->Save();
if ($eseguo['esito'] == 1) {
$transaction = true;
}
// $caricoControllo = DomandaScontiControlli::loadControlloFromSconto($_POST['ID']);
// $domandaControlli = new DomandaScontiControlli($caricoControllo['ID']);
// $domandaControlli->DATA_ESITO = date(FORMAT_TIMESTAMP_ORACLE);
// $domandaControlli->ESITO = RS_PRESA_IN_CARICO;
// $domandaControlli->ID_UID_FIREBASE_ADMIN = $LoggedAccount->ID;
// $eseguo = $domandaControlli->Save();
if ($transaction) {
$con->db_transactionCommit();
$response['esito'] = 1;
} else {
$con->db_transactionRollback();
}
}
exit(json_encode($response));
}
function loadMandato() {
global $TIPO_RICHIESTA;
$id = Utils::getFromReq("id", 0);
$totaliEsportazione = DomandaSconti::GetTotaleFromLotto($id);
$return = array();
$record = new Esportazioni($id);
$return = Utils::ObjectToArray($record);
$return['TIPO_TXT'] = $TIPO_RICHIESTA[$record->TIPO];
$return['DATA_FILTRO'] = Date::dateOracleDate($record->DATA_FILTRO, 'Y-m-d');
$return['DATA_DRS'] = ($record->DATA_DRS == '' ? date('Y-m-d') : Date::dateOracleDate($record->DATA_DRS, 'Y-m-d'));
$return['IMPORTO_MANDATO'] = "€. " . number_format($totaliEsportazione['SCONTO'], '2', ',', '.');
exit(json_encode($return));
}
function saveMandato() {
$response = Utils::initDefaultResponse();
$controllValidita = true;
$dati_mancanti = '';
$filteredInput = Utils::requestDati($_POST);
$id = Utils::getFromReq("LOTTO");
$filteredInput['NUMERO_DRS'] = Utils::getFromReq('NUMERO_DRS');
$filteredInput['DATA_DRS'] = Utils::getFromReq("DATA_DRS");
if ($filteredInput['NUMERO_DRS'] == "") {
$controllValidita = false;
$dati_mancanti .= "Campo Numero DRS Obbligatorio.<br>";
}
if ($filteredInput['DATA_DRS'] == "") {
$controllValidita = false;
$dati_mancanti .= "Campo Data DRS Obbligatorio..<br>";
}
$totaliEsportazione = DomandaSconti::GetTotaleFromLotto($id);
$rec = new Esportazioni($id);
$rec->NUMERO_DRS = $filteredInput['NUMERO_DRS'];
$rec->DATA_DRS = ($filteredInput['DATA_DRS'] != "" ? Date::dateOracleDate($filteredInput['DATA_DRS'], 'd-M-y') : '');
$rec->IMPORTO_MANDATO = $totaliEsportazione['SCONTO'];
if ($controllValidita) {
/*
* Inserire la generazione del PDF
* */
$response = $rec->Save();
} else {
$response['erroreDescrizione'] = ("Verificare i seguenti campi: " . $dati_mancanti);
}
exit(json_encode($response));
}
function listDecreti() {
global $LoggedAccount, $STATI_RICHIESTE_SCONTI, $ICONE_STATI_RICHIESTE_SCONTI, $TIPO_RICHIESTA;
$response = array();
$draw = $_POST['draw'];
$row = $_POST['start'];
$rowperpage = $_POST['length']; // Rows display per page
$columnIndex = $_POST['order'][0]['column']; // Column index
$columnName = $_POST['columns'][$columnIndex]['data']; // Column name
$columnSortOrder = $_POST['order'][0]['dir']; // asc or desc
$searchValue = $_POST['search']['value']; // Search value
$data = array();
$searchQuery = '';
$searchArray = array();
$data_modifica = "";
//$countAllegatiCompleti = 0;
//$iTotalRecordsObbligatori = 0;
## Search
$totCount = false;
if ($searchValue != '') {
$searchQuery .= " AND ( REGEXP_LIKE(NUMERO_DRS,:SEARCH,'i') OR LOTTO = :LOTTO ) ";
$searchArray['SEARCH'] = $searchValue;
$searchArray['LOTTO'] = intval($searchValue);
}
$res = Esportazioni::LoadDataTable($searchQuery, $searchArray, $columnName, $columnSortOrder, $row, $rowperpage);
//Utils::print_array($res);exit();
foreach ($res['empRecords'] as $row) {
$btn_Downloads = '';
$btn_OP = '';
$note_esclusione = '';
if ($row['FILEPATH'] != "") {
$btn_Downloads .= '<button type="button" data-toggle="tooltip" data-placement="top" title="Scarica il decreto di liquidazione" onclick="openStreamer(\'' . $row['FILEPATH'] . '\')" class="btn btn-sm btn-success"><i class="fas fa-download"></i>&nbsp;Decreto di liquidazione</button>';
}
$data_creazione = '';
if ($row['DATA_CREAZIONE'] != "") {
$data_creazione = Date::dateOracleTimeStamp($row['DATA_CREAZIONE'], 'd-m-Y');
}
$data_filtro = '';
if ($row['DATA_FILTRO'] != "") {
$data_filtro = "dal 04/12/2023 al " . Date::dateOracleDate($row['DATA_FILTRO'], 'd-m-Y');
}
$data_drs = '';
if ($row['DATA_DRS'] != "") {
$data_drs = Date::dateOracleDate($row['DATA_DRS'], 'd-m-Y');
}
$gruopOP = '<div class="btn-group" role="group" aria-label="Basic example">' . $btn_OP . $btn_Downloads . '</div>';
$data[] = array(
"LOTTO" => $row['LOTTO'],
"DATA_CREAZIONE" => $data_creazione,
"DATA_FILTRO" => $data_filtro,
"NUMERO_DRS" => $row['NUMERO_DRS'],
"DATA_DRS" => $data_drs,
"TIPO" => $TIPO_RICHIESTA[$row['TIPO']],
"OP" => $gruopOP//($domanda->STATO > STATO_DOMANDA_IN_PREPARAZIONE ? '' : $btn_genera . $btn)
);
}
## Response
$response = array(
"draw" => intval($draw),
"iTotalRecords" => $res['iTotalRecords'],
"iTotalDisplayRecords" => $res['iTotalDisplayRecords'],
"aaData" => $data
);
exit(json_encode($response));
}
function forzaResidenza($forza = 1) {
$id = Utils::getFromReq("id", 0);
$record = new DomandaSconti($id);
$return = $record->SetForzaResidenza($forza);
exit(json_encode($return));
}
function approvaVerificati() {
$lotto = Utils::get_filter_string_POST('lotto');
$response = Utils::initDefaultResponse();
$response = DomandaSconti::SetApprovaVerificati($lotto);
exit(json_encode($response));
}
function cambiaLotto(){
$from = Utils::getFromReq("LOTTO_FROM", 0);
$to = Utils::getFromReq("LOTTO_TO", 0);
$response = Utils::initDefaultResponse();
$response = DomandaSconti::SetCambiaLotto($from, $to);
exit(json_encode($response));
}