Aggiornati riferimenti nelle stampe (#85)
This commit is contained in:
parent
3d22c8337c
commit
70d574249a
|
@ -58,19 +58,19 @@ if (!empty($result_query) && $result_query != 'menu' && $result_query != 'custom
|
|||
}
|
||||
}
|
||||
|
||||
/*filtro sezionali*/
|
||||
if (isset($_SESSION['entrata']['idsezionale']) and (($modules_info[$id_module]['name'] == 'Fatture di vendita') or ($modules_info[$id_module]['name'] == 'Laboratorio') or ($modules_info[$id_module]['name'] == 'Ticket'))) {
|
||||
// Ricerca
|
||||
if (!empty($search_filters)) {
|
||||
$result_query = str_replace('2=2', '2=2 AND ('.implode(' AND ', $search_filters).') ', $result_query);
|
||||
}
|
||||
|
||||
// Filtro sezionali
|
||||
if (isset($_SESSION['entrata']['idsezionale']) && (($modules_info[$id_module]['name'] == 'Fatture di vendita') || ($modules_info[$id_module]['name'] == 'Laboratorio') || ($modules_info[$id_module]['name'] == 'Ticket'))) {
|
||||
$result_query = str_replace('1=1', " 1=1 AND idsezionale = '".$_SESSION['entrata']['idsezionale']."' ", $result_query);
|
||||
}
|
||||
|
||||
if (isset($_SESSION['uscita']['idsezionale']) and ($modules_info[$id_module]['name'] == 'Fatture di acquisto')) {
|
||||
if (isset($_SESSION['uscita']['idsezionale']) && ($modules_info[$id_module]['name'] == 'Fatture di acquisto')) {
|
||||
$result_query = str_replace('1=1', " 1=1 AND idsezionale = '".$_SESSION['uscita']['idsezionale']."' ", $result_query);
|
||||
}
|
||||
/*fine filtro sezionali*/
|
||||
|
||||
if (!empty($search_filters)) {
|
||||
$result_query = str_replace('2=2', '2=2 AND ('.implode(' AND ', $search_filters).') ', $result_query);
|
||||
}
|
||||
|
||||
// Filtri derivanti dai permessi (eventuali)
|
||||
if (empty($id_plugin)) {
|
||||
|
|
|
@ -31,170 +31,128 @@ switch (filter('op')) {
|
|||
redirect($rootdir.'/editor.php?id_module='.$id_module.'&id_record='.$id_record.'#tab_'.$id_plugin);
|
||||
|
||||
break;
|
||||
|
||||
|
||||
|
||||
//pianificazione
|
||||
case 'pianificazione':
|
||||
|
||||
$idcontratto_riga = filter('idcontratto_riga');
|
||||
$intervallo = filter('intervallo');
|
||||
$parti_da_oggi = post('parti_da_oggi');
|
||||
|
||||
if (!empty($idcontratto_riga) and !empty($intervallo) ){
|
||||
|
||||
$qp = 'SELECT *, (SELECT idanagrafica FROM co_contratti WHERE id = '.$id_record.' ) AS idanagrafica, (SELECT data_conclusione FROM co_contratti WHERE id = '.$id_record.' ) AS data_conclusione, (SELECT descrizione FROM in_tipiintervento WHERE idtipointervento=co_righe_contratti.idtipointervento) AS tipointervento FROM co_righe_contratti WHERE id = '.$idcontratto_riga;
|
||||
$rsp = $dbo->fetchArray($qp);
|
||||
|
||||
$idtipointervento = $rsp[0]['idtipointervento'];
|
||||
$idsede = $rsp[0]['idsede'];
|
||||
$richiesta = $rsp[0]['richiesta'];
|
||||
|
||||
//mi serve per la pianificazione interventi
|
||||
$idanagrafica = $rsp[0]['idanagrafica'];
|
||||
|
||||
$data_conclusione = $rsp[0]['data_conclusione'];
|
||||
$data_richiesta = $rsp[0]['data_richiesta'];
|
||||
|
||||
|
||||
//se voglio pianificare anche le date precedenti ad oggi (parto da questo promemoria)
|
||||
if ($parti_da_oggi){
|
||||
|
||||
//oggi
|
||||
$min_date = date('Y-m-d');
|
||||
|
||||
|
||||
}else{
|
||||
|
||||
$min_date = date('Y-m-d', strtotime($data_richiesta));
|
||||
|
||||
}
|
||||
|
||||
//inizio controllo data_conclusione, data valida e maggiore della $min_date
|
||||
if ( (date('Y', strtotime($data_conclusione)) > 1970) and (date('Y-m-d', strtotime($min_date)) < date('Y-m-d', strtotime($data_conclusione))) ) {
|
||||
|
||||
//Ciclo partendo dalla data_richiesta fino all data conclusione del contratto
|
||||
while ( date('Y-m-d', strtotime($data_richiesta)) < date('Y-m-d', strtotime($data_conclusione)) ){
|
||||
|
||||
//calcolo nuova data richiesta
|
||||
$data_richiesta = date('Y-m-d', strtotime($data_richiesta. " + ".intval($intervallo)." days") );
|
||||
|
||||
|
||||
//controllo nuova data richiesta --> solo date maggiori o uguali di [oggi o data richiesta iniziale] ma che non superano la data di fine del contratto
|
||||
if ( (date('Y-m-d', strtotime($data_richiesta)) >= $min_date ) and (date('Y-m-d', strtotime($data_richiesta)) <= date('Y-m-d', strtotime($data_conclusione))) ){
|
||||
|
||||
//Controllo che non esista già un promemoria idcontratto, idtipointervento e data_richiesta.
|
||||
if ( count($dbo->fetchArray("SELECT id FROM co_righe_contratti WHERE data_richiesta = '".$data_richiesta."' AND idtipointervento = '".$idtipointervento."' AND idcontratto = '".$id_record."' ")) == 0 ){
|
||||
|
||||
$query = 'INSERT INTO `co_righe_contratti`(`idcontratto`, `idtipointervento`, `data_richiesta`, `richiesta`, `idsede`) VALUES('.prepare($id_record).', '.prepare($idtipointervento).', '.prepare($data_richiesta).', '.prepare($richiesta).', '.prepare($idsede).')';
|
||||
|
||||
if ($dbo->query($query)) {
|
||||
|
||||
$idriga = $dbo->lastInsertedID();
|
||||
|
||||
$_SESSION['infos'][] = tr('Promemoria intervento pianificato!');
|
||||
|
||||
|
||||
//pianificare anche l' intervento?
|
||||
if ($post['pianifica_intervento']){
|
||||
|
||||
/*$orario_inizio = post('orario_inizio');
|
||||
$orario_fine = post('orario_fine');*/
|
||||
|
||||
//$idanagrafica = 2;
|
||||
|
||||
//intervento sempre nello stato "In programmazione"
|
||||
$idstatointervento = 'WIP';
|
||||
|
||||
//calcolo codice intervento
|
||||
$formato = get_var('Formato codice intervento');
|
||||
$template = str_replace('#', '%', $formato);
|
||||
|
||||
$rs = $dbo->fetchArray('SELECT codice FROM in_interventi WHERE codice=(SELECT MAX(CAST(codice AS SIGNED)) FROM in_interventi) AND codice LIKE '.prepare($template).' ORDER BY codice DESC LIMIT 0,1');
|
||||
$codice = get_next_code($rs[0]['codice'], 1, $formato);
|
||||
//pianificazione
|
||||
case 'pianificazione':
|
||||
|
||||
if (empty($codice)) {
|
||||
$rs = $dbo->fetchArray('SELECT codice FROM in_interventi WHERE codice LIKE '.prepare($template).' ORDER BY codice DESC LIMIT 0,1');
|
||||
$idcontratto_riga = filter('idcontratto_riga');
|
||||
$intervallo = filter('intervallo');
|
||||
$parti_da_oggi = post('parti_da_oggi');
|
||||
|
||||
$codice = get_next_code($rs[0]['codice'], 1, $formato);
|
||||
}
|
||||
|
||||
|
||||
|
||||
// Creo intervento
|
||||
$dbo->insert('in_interventi', [
|
||||
'idanagrafica' => $idanagrafica,
|
||||
'idclientefinale' => post('idclientefinale') ?: 0,
|
||||
'idstatointervento' => $idstatointervento,
|
||||
'idtipointervento' => $idtipointervento,
|
||||
'idsede' => $idsede ?: 0,
|
||||
'idautomezzo' => $idautomezzo ?: 0,
|
||||
if (!empty($idcontratto_riga) && !empty($intervallo)) {
|
||||
$qp = 'SELECT *, (SELECT idanagrafica FROM co_contratti WHERE id = '.$id_record.' ) AS idanagrafica, (SELECT data_conclusione FROM co_contratti WHERE id = '.$id_record.' ) AS data_conclusione, (SELECT descrizione FROM in_tipiintervento WHERE idtipointervento=co_righe_contratti.idtipointervento) AS tipointervento FROM co_righe_contratti WHERE id = '.$idcontratto_riga;
|
||||
$rsp = $dbo->fetchArray($qp);
|
||||
|
||||
'codice' => $codice,
|
||||
'data_richiesta' => $data_richiesta,
|
||||
'richiesta' => $richiesta,
|
||||
]);
|
||||
$idtipointervento = $rsp[0]['idtipointervento'];
|
||||
$idsede = $rsp[0]['idsede'];
|
||||
$richiesta = $rsp[0]['richiesta'];
|
||||
|
||||
$idintervento = $dbo->lastInsertedID();
|
||||
|
||||
|
||||
|
||||
$idtecnici = post('idtecnico');
|
||||
|
||||
//aggiungo i tecnici
|
||||
foreach ($idtecnici as $idtecnico) {
|
||||
add_tecnico($idintervento, $idtecnico, $data_richiesta.' '.post('orario_inizio'), $data_richiesta.' '.post('orario_fine'), $id_record);
|
||||
}
|
||||
|
||||
//collego l'intervento ai promemoria
|
||||
$dbo->query('UPDATE co_righe_contratti SET idintervento='.prepare($idintervento).' WHERE id='.prepare($idriga));
|
||||
|
||||
// $_SESSION['infos'][] = tr('Intervento '.$codice.' pianificato correttamente.');
|
||||
|
||||
$_SESSION['infos'][] = tr('Interventi pianificati correttamente.');
|
||||
|
||||
|
||||
}
|
||||
//fine if pianificazione intervento
|
||||
|
||||
|
||||
}else{
|
||||
|
||||
$_SESSION['errors'][] = tr('Errore durante esecuzione query di pianificazione. #'.$idcontratto_riga);
|
||||
|
||||
}
|
||||
|
||||
}else{
|
||||
|
||||
$_SESSION['warnings'][] = tr("Esiste già un promemoria pianificato per il ".readDate($data_richiesta).".");
|
||||
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
//fine controllo nuova data richiesta
|
||||
|
||||
}
|
||||
//fine ciclo while
|
||||
|
||||
}else{
|
||||
|
||||
$_SESSION['errors'][] = tr('Nessuna data di conclusione del contratto oppure quest\'ultima è già trascorsa, impossibile pianificare nuovi promemoria.');
|
||||
|
||||
}
|
||||
//fine controllo data_conclusione
|
||||
|
||||
|
||||
}else{
|
||||
|
||||
$_SESSION['errors'][] = tr('Errore durante la pianificazione. #'.$idcontratto_riga);
|
||||
|
||||
}
|
||||
|
||||
redirect($rootdir.'/editor.php?id_module='.$id_module.'&id_record='.$id_record.'#tab_'.$id_plugin);
|
||||
break;
|
||||
|
||||
|
||||
//mi serve per la pianificazione interventi
|
||||
$idanagrafica = $rsp[0]['idanagrafica'];
|
||||
|
||||
$data_conclusione = $rsp[0]['data_conclusione'];
|
||||
$data_richiesta = $rsp[0]['data_richiesta'];
|
||||
|
||||
//se voglio pianificare anche le date precedenti ad oggi (parto da questo promemoria)
|
||||
if ($parti_da_oggi) {
|
||||
//oggi
|
||||
$min_date = date('Y-m-d');
|
||||
} else {
|
||||
$min_date = date('Y-m-d', strtotime($data_richiesta));
|
||||
}
|
||||
|
||||
//inizio controllo data_conclusione, data valida e maggiore della $min_date
|
||||
if ((date('Y', strtotime($data_conclusione)) > 1970) && (date('Y-m-d', strtotime($min_date)) < date('Y-m-d', strtotime($data_conclusione)))) {
|
||||
//Ciclo partendo dalla data_richiesta fino all data conclusione del contratto
|
||||
while (date('Y-m-d', strtotime($data_richiesta)) < date('Y-m-d', strtotime($data_conclusione))) {
|
||||
//calcolo nuova data richiesta
|
||||
$data_richiesta = date('Y-m-d', strtotime($data_richiesta.' + '.intval($intervallo).' days'));
|
||||
|
||||
//controllo nuova data richiesta --> solo date maggiori o uguali di [oggi o data richiesta iniziale] ma che non superano la data di fine del contratto
|
||||
if ((date('Y-m-d', strtotime($data_richiesta)) >= $min_date) && (date('Y-m-d', strtotime($data_richiesta)) <= date('Y-m-d', strtotime($data_conclusione)))) {
|
||||
//Controllo che non esista già un promemoria idcontratto, idtipointervento e data_richiesta.
|
||||
if (count($dbo->fetchArray("SELECT id FROM co_righe_contratti WHERE data_richiesta = '".$data_richiesta."' AND idtipointervento = '".$idtipointervento."' AND idcontratto = '".$id_record."' ")) == 0) {
|
||||
$query = 'INSERT INTO `co_righe_contratti`(`idcontratto`, `idtipointervento`, `data_richiesta`, `richiesta`, `idsede`) VALUES('.prepare($id_record).', '.prepare($idtipointervento).', '.prepare($data_richiesta).', '.prepare($richiesta).', '.prepare($idsede).')';
|
||||
|
||||
if ($dbo->query($query)) {
|
||||
$idriga = $dbo->lastInsertedID();
|
||||
|
||||
$_SESSION['infos'][] = tr('Promemoria intervento pianificato!');
|
||||
|
||||
//pianificare anche l' intervento?
|
||||
if ($post['pianifica_intervento']) {
|
||||
/*$orario_inizio = post('orario_inizio');
|
||||
$orario_fine = post('orario_fine');*/
|
||||
|
||||
//$idanagrafica = 2;
|
||||
|
||||
//intervento sempre nello stato "In programmazione"
|
||||
$idstatointervento = 'WIP';
|
||||
|
||||
//calcolo codice intervento
|
||||
$formato = get_var('Formato codice intervento');
|
||||
$template = str_replace('#', '%', $formato);
|
||||
|
||||
$rs = $dbo->fetchArray('SELECT codice FROM in_interventi WHERE codice=(SELECT MAX(CAST(codice AS SIGNED)) FROM in_interventi) AND codice LIKE '.prepare($template).' ORDER BY codice DESC LIMIT 0,1');
|
||||
$codice = get_next_code($rs[0]['codice'], 1, $formato);
|
||||
|
||||
if (empty($codice)) {
|
||||
$rs = $dbo->fetchArray('SELECT codice FROM in_interventi WHERE codice LIKE '.prepare($template).' ORDER BY codice DESC LIMIT 0,1');
|
||||
|
||||
$codice = get_next_code($rs[0]['codice'], 1, $formato);
|
||||
}
|
||||
|
||||
// Creo intervento
|
||||
$dbo->insert('in_interventi', [
|
||||
'idanagrafica' => $idanagrafica,
|
||||
'idclientefinale' => post('idclientefinale') ?: 0,
|
||||
'idstatointervento' => $idstatointervento,
|
||||
'idtipointervento' => $idtipointervento,
|
||||
'idsede' => $idsede ?: 0,
|
||||
'idautomezzo' => $idautomezzo ?: 0,
|
||||
|
||||
'codice' => $codice,
|
||||
'data_richiesta' => $data_richiesta,
|
||||
'richiesta' => $richiesta,
|
||||
]);
|
||||
|
||||
$idintervento = $dbo->lastInsertedID();
|
||||
|
||||
$idtecnici = post('idtecnico');
|
||||
|
||||
//aggiungo i tecnici
|
||||
foreach ($idtecnici as $idtecnico) {
|
||||
add_tecnico($idintervento, $idtecnico, $data_richiesta.' '.post('orario_inizio'), $data_richiesta.' '.post('orario_fine'), $id_record);
|
||||
}
|
||||
|
||||
//collego l'intervento ai promemoria
|
||||
$dbo->query('UPDATE co_righe_contratti SET idintervento='.prepare($idintervento).' WHERE id='.prepare($idriga));
|
||||
|
||||
// $_SESSION['infos'][] = tr('Intervento '.$codice.' pianificato correttamente.');
|
||||
|
||||
$_SESSION['infos'][] = tr('Interventi pianificati correttamente.');
|
||||
}
|
||||
//fine if pianificazione intervento
|
||||
} else {
|
||||
$_SESSION['errors'][] = tr('Errore durante esecuzione query di pianificazione. #'.$idcontratto_riga);
|
||||
}
|
||||
} else {
|
||||
$_SESSION['warnings'][] = tr('Esiste già un promemoria pianificato per il '.readDate($data_richiesta).'.');
|
||||
}
|
||||
}
|
||||
//fine controllo nuova data richiesta
|
||||
}
|
||||
//fine ciclo while
|
||||
} else {
|
||||
$_SESSION['errors'][] = tr('Nessuna data di conclusione del contratto oppure quest\'ultima è già trascorsa, impossibile pianificare nuovi promemoria.');
|
||||
}
|
||||
//fine controllo data_conclusione
|
||||
} else {
|
||||
$_SESSION['errors'][] = tr('Errore durante la pianificazione. #'.$idcontratto_riga);
|
||||
}
|
||||
|
||||
redirect($rootdir.'/editor.php?id_module='.$id_module.'&id_record='.$id_record.'#tab_'.$id_plugin);
|
||||
break;
|
||||
}
|
||||
|
||||
// Righe già inserite
|
||||
|
@ -248,18 +206,16 @@ if (count($rsp) != 0) {
|
|||
'_NUM_' => $rsp2[0]['codice'],
|
||||
'_DATE_' => Translator::dateToLocale($rsp2[0]['data']),
|
||||
]));
|
||||
|
||||
$disabled = 'disabled';
|
||||
|
||||
|
||||
$disabled = 'disabled';
|
||||
} else {
|
||||
$info_intervento = '- '.('Nessuno').' -';
|
||||
$disabled = '';
|
||||
$disabled = '';
|
||||
}
|
||||
|
||||
if (date('Y', strtotime($records[0]['data_conclusione'])) < 1971) {
|
||||
$records[0]['data_conclusione'] = '';
|
||||
}
|
||||
|
||||
|
||||
if (date('Y', strtotime($records[0]['data_conclusione']))<1971){
|
||||
$records[0]['data_conclusione'] = '';
|
||||
}
|
||||
echo '
|
||||
<tr>
|
||||
<td>'.Translator::dateToLocale($rsp[$i]['data_richiesta']).'<!--br><small>'.Translator::dateToLocale($records[0]['data_conclusione']).'</small--></td>
|
||||
|
@ -268,20 +224,14 @@ if (count($rsp) != 0) {
|
|||
<td>'.$info_intervento.'</td>
|
||||
<td>'.$info_sede.'</td>
|
||||
<td align="right">';
|
||||
|
||||
|
||||
|
||||
echo '
|
||||
<button type="button" class="btn btn-warning btn-sm" title="Pianifica altri promemoria..." data-toggle="tooltip" onclick="launch_modal(\'Pianifica altri promemoria\', \''.$rootdir.'/modules/contratti/plugins/addpianficazione.php?id_module='.Modules::get('Contratti')['id'].'&id_plugin='.Plugins::get('Pianificazione interventi')['id'].'&ref=interventi_contratti&id_record='.$id_record.'&idcontratto_riga='.$rsp[$i]['id'].'\');"'.( ( !empty($pianificabile) and strtotime($records[0]['data_conclusione'])) ? '' : ' disabled').'><i class="fa fa-clock-o"></i></button>';
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
echo '
|
||||
|
||||
echo '
|
||||
<button type="button" class="btn btn-warning btn-sm" title="Pianifica altri promemoria..." data-toggle="tooltip" onclick="launch_modal(\'Pianifica altri promemoria\', \''.$rootdir.'/modules/contratti/plugins/addpianficazione.php?id_module='.Modules::get('Contratti')['id'].'&id_plugin='.Plugins::get('Pianificazione interventi')['id'].'&ref=interventi_contratti&id_record='.$id_record.'&idcontratto_riga='.$rsp[$i]['id'].'\');"'.((!empty($pianificabile) && strtotime($records[0]['data_conclusione'])) ? '' : ' disabled').'><i class="fa fa-clock-o"></i></button>';
|
||||
|
||||
echo '
|
||||
<button type="button" '.$disabled.' class="btn btn-primary btn-sm '.$disabled.' " title="Pianifica intervento ora..." data-toggle="tooltip" onclick="launch_modal(\'Pianifica intervento\', \''.$rootdir.'/add.php?id_module='.Modules::get('Interventi')['id'].'&ref=interventi_contratti&idcontratto='.$id_record.'&idcontratto_riga='.$rsp[$i]['id'].'\');"'.(!empty($pianificabile) ? '' : ' disabled').'><i class="fa fa-calendar"></i></button>';
|
||||
|
||||
echo '
|
||||
echo '
|
||||
<button type="button" '.$disabled.' title="Elimina promemoria..." class="btn btn-danger btn-sm ask '.$disabled.' " data-op="depianifica" data-id="'.$rsp[$i]['id'].'">
|
||||
<i class="fa fa-trash"></i>
|
||||
</button>';
|
||||
|
|
|
@ -49,7 +49,7 @@ if (!empty($rs_art)) {
|
|||
// q.tà
|
||||
echo '
|
||||
<td class="text-center">';
|
||||
if ($r['is_descrizione'] == 0) {
|
||||
if (empty($r['is_descrizione'])) {
|
||||
echo
|
||||
Translator::numberToLocale($r['qta']);
|
||||
}
|
||||
|
@ -59,7 +59,7 @@ if (!empty($rs_art)) {
|
|||
// um
|
||||
echo '
|
||||
<td class="text-center">';
|
||||
if ($r['is_descrizione'] == 0) {
|
||||
if (empty($r['is_descrizione'])) {
|
||||
echo
|
||||
$r['um'];
|
||||
}
|
||||
|
@ -69,7 +69,7 @@ if (!empty($rs_art)) {
|
|||
// costo unitario
|
||||
echo '
|
||||
<td class="text-center">';
|
||||
if ($r['is_descrizione'] == 0) {
|
||||
if (empty($r['is_descrizione'])) {
|
||||
echo
|
||||
Translator::numberToLocale($r['subtotale'] / $r['qta']).' €';
|
||||
}
|
||||
|
@ -79,7 +79,7 @@ if (!empty($rs_art)) {
|
|||
// iva
|
||||
echo '
|
||||
<td class="text-right">';
|
||||
if ($r['is_descrizione'] == 0) {
|
||||
if (empty($r['is_descrizione'])) {
|
||||
echo
|
||||
Translator::numberToLocale($r['iva'])." €<br>
|
||||
<small class='help-block'>".$r['desc_iva'].'</small>';
|
||||
|
@ -90,7 +90,7 @@ if (!empty($rs_art)) {
|
|||
// Imponibile
|
||||
echo '
|
||||
<td class="text-right">';
|
||||
if ($r['is_descrizione'] == 0) {
|
||||
if (empty($r['is_descrizione'])) {
|
||||
echo
|
||||
Translator::numberToLocale($r['subtotale']).' €';
|
||||
|
||||
|
|
|
@ -91,7 +91,8 @@ if (!empty($rs)) {
|
|||
$ref_modulo = null;
|
||||
$ref_id = null;
|
||||
|
||||
// Aggiunta riferimento a ordine
|
||||
// Aggiunta dei riferimenti ai documenti
|
||||
// Ordine
|
||||
if (!empty($r['idordine'])) {
|
||||
$data = $dbo->fetchArray("SELECT IF(numero_esterno != '', numero_esterno, numero) AS numero, data FROM or_ordini WHERE id=".prepare($r['idordine']));
|
||||
|
||||
|
@ -99,28 +100,36 @@ if (!empty($rs)) {
|
|||
$ref_id = $r['idordine'];
|
||||
|
||||
$documento = tr('Ordine');
|
||||
} elseif (!empty($r['idddt'])) {
|
||||
}
|
||||
// DDT
|
||||
elseif (!empty($r['idddt'])) {
|
||||
$data = $dbo->fetchArray("SELECT IF(numero_esterno != '', numero_esterno, numero) AS numero, data FROM dt_ddt WHERE id=".prepare($r['idddt']));
|
||||
|
||||
$ref_modulo = ($dir == 'entrata') ? 'Ddt di vendita' : 'Ddt di acquisto';
|
||||
$ref_id = $r['idddt'];
|
||||
|
||||
$documento = tr('Ddt');
|
||||
} elseif (!empty($r['idpreventivo'])) {
|
||||
}
|
||||
// Preventivo
|
||||
elseif (!empty($r['idpreventivo'])) {
|
||||
$data = $dbo->fetchArray('SELECT numero, data_bozza AS data FROM co_preventivi WHERE id='.prepare($r['idpreventivo']));
|
||||
|
||||
$ref_modulo = 'Preventivi';
|
||||
$ref_id = $r['idpreventivo'];
|
||||
|
||||
$documento = tr('Preventivo');
|
||||
} elseif (!empty($r['idcontratto'])) {
|
||||
}
|
||||
// Contratto
|
||||
elseif (!empty($r['idcontratto'])) {
|
||||
$data = $dbo->fetchArray('SELECT numero, data_bozza AS data FROM co_contratti WHERE id='.prepare($r['idcontratto']));
|
||||
|
||||
$ref_modulo = 'Contratti';
|
||||
$ref_id = $r['idcontratto'];
|
||||
|
||||
$documento = tr('Contratto');
|
||||
} elseif (!empty($r['idintervento'])) {
|
||||
}
|
||||
// Intervento
|
||||
elseif (!empty($r['idintervento'])) {
|
||||
$data = $dbo->fetchArray('SELECT codice AS numero, data_richiesta AS data FROM in_interventi WHERE id='.prepare($r['idintervento']));
|
||||
|
||||
$ref_modulo = 'Interventi';
|
||||
|
@ -154,32 +163,32 @@ if (!empty($rs)) {
|
|||
|
||||
echo '
|
||||
<td class="text-right">';
|
||||
|
||||
if($r['is_descrizione']==0){
|
||||
echo
|
||||
|
||||
if (empty($r['is_descrizione'])) {
|
||||
echo
|
||||
Translator::numberToLocale($r['qta']);
|
||||
}
|
||||
|
||||
echo '
|
||||
|
||||
echo '
|
||||
</td>';
|
||||
|
||||
// Unità di misura
|
||||
echo '
|
||||
<td class="text-center">';
|
||||
|
||||
if($r['is_descrizione']==0){
|
||||
|
||||
if (empty($r['is_descrizione'])) {
|
||||
echo
|
||||
$r['um'];
|
||||
}
|
||||
|
||||
|
||||
echo '
|
||||
</td>';
|
||||
|
||||
// Costo unitario
|
||||
echo '
|
||||
<td class="text-right">';
|
||||
|
||||
if($r['is_descrizione']==0){
|
||||
|
||||
if (empty($r['is_descrizione'])) {
|
||||
echo
|
||||
Translator::numberToLocale($r['subtotale'] / $r['qta']).' €';
|
||||
|
||||
|
@ -191,27 +200,27 @@ if (!empty($rs)) {
|
|||
]).'</small>';
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
echo '
|
||||
</td>';
|
||||
|
||||
// Iva
|
||||
echo '
|
||||
<td class="text-right">';
|
||||
|
||||
if($r['is_descrizione']==0){
|
||||
|
||||
if (empty($r['is_descrizione'])) {
|
||||
echo
|
||||
Translator::numberToLocale($r['iva']).' €
|
||||
<br><small class="help-block">'.$r['desc_iva'].'</small>';
|
||||
}
|
||||
|
||||
|
||||
echo '
|
||||
</td>';
|
||||
|
||||
// Imponibile
|
||||
echo '
|
||||
<td class="text-right">';
|
||||
if($r['is_descrizione']==0){
|
||||
if (empty($r['is_descrizione'])) {
|
||||
echo
|
||||
Translator::numberToLocale($r['subtotale'] - $r['sconto']).' €';
|
||||
}
|
||||
|
|
|
@ -70,7 +70,7 @@ foreach ($rs_gen as $r) {
|
|||
|
||||
echo '
|
||||
<td class="text-center">';
|
||||
if ($r['is_descrizione'] == 0) {
|
||||
if (empty($r['is_descrizione'])) {
|
||||
echo
|
||||
Translator::numberToLocale($r['qta']).' '.$r['um'];
|
||||
}
|
||||
|
@ -91,7 +91,7 @@ foreach ($rs_gen as $r) {
|
|||
// Imponibile
|
||||
echo "
|
||||
<td class='text-right'>";
|
||||
if ($r['is_descrizione'] == 0) {
|
||||
if (empty($r['is_descrizione'])) {
|
||||
echo
|
||||
Translator::numberToLocale($r['subtotale']).' €';
|
||||
|
||||
|
@ -112,7 +112,7 @@ foreach ($rs_gen as $r) {
|
|||
// Iva
|
||||
echo "
|
||||
<td class='text-center'>";
|
||||
if ($r['is_descrizione'] == 0) {
|
||||
if (empty($r['is_descrizione'])) {
|
||||
echo
|
||||
Translator::numberToLocale($r['perc_iva']);
|
||||
}
|
||||
|
|
|
@ -57,6 +57,73 @@ foreach ($righe as $r) {
|
|||
}
|
||||
}
|
||||
|
||||
// Aggiunta dei riferimenti ai documenti
|
||||
$ref_modulo = null;
|
||||
$ref_id = null;
|
||||
|
||||
// Ordine
|
||||
if (!empty($r['idordine'])) {
|
||||
$data = $dbo->fetchArray("SELECT IF(numero_esterno != '', numero_esterno, numero) AS numero, data FROM or_ordini WHERE id=".prepare($r['idordine']));
|
||||
|
||||
$ref_modulo = ($records[0]['dir'] == 'entrata') ? 'Ordini cliente' : 'Ordini fornitore';
|
||||
$ref_id = $r['idordine'];
|
||||
|
||||
$documento = tr('Ordine');
|
||||
}
|
||||
// DDT
|
||||
elseif (!empty($r['idddt'])) {
|
||||
$data = $dbo->fetchArray("SELECT IF(numero_esterno != '', numero_esterno, numero) AS numero, data FROM dt_ddt WHERE id=".prepare($r['idddt']));
|
||||
|
||||
$ref_modulo = ($records[0]['dir'] == 'entrata') ? 'Ddt di vendita' : 'Ddt di acquisto';
|
||||
$ref_id = $r['idddt'];
|
||||
|
||||
$documento = tr('Ddt');
|
||||
}
|
||||
// Preventivo
|
||||
elseif (!empty($r['idpreventivo'])) {
|
||||
$data = $dbo->fetchArray('SELECT numero, data_bozza AS data FROM co_preventivi WHERE id='.prepare($r['idpreventivo']));
|
||||
|
||||
$ref_modulo = 'Preventivi';
|
||||
$ref_id = $r['idpreventivo'];
|
||||
|
||||
$documento = tr('Preventivo');
|
||||
}
|
||||
// Contratto
|
||||
elseif (!empty($r['idcontratto'])) {
|
||||
$data = $dbo->fetchArray('SELECT numero, data_bozza AS data FROM co_contratti WHERE id='.prepare($r['idcontratto']));
|
||||
|
||||
$ref_modulo = 'Contratti';
|
||||
$ref_id = $r['idcontratto'];
|
||||
|
||||
$documento = tr('Contratto');
|
||||
}
|
||||
// Intervento
|
||||
elseif (!empty($r['idintervento'])) {
|
||||
$data = $dbo->fetchArray('SELECT codice AS numero, data_richiesta AS data FROM in_interventi WHERE id='.prepare($r['idintervento']));
|
||||
|
||||
$ref_modulo = 'Interventi';
|
||||
$ref_id = $r['idintervento'];
|
||||
|
||||
$documento = tr('Intervento');
|
||||
}
|
||||
|
||||
if (!empty($ref_modulo) && !empty($ref_id)) {
|
||||
$documento = Stringy\Stringy::create($documento)->toLowerCase();
|
||||
|
||||
if (!empty($data)) {
|
||||
$descrizione = tr('Rif. _DOC_ num. _NUM_ del _DATE_', [
|
||||
'_DOC_' => $documento,
|
||||
'_NUM_' => $data[0]['numero'],
|
||||
'_DATE_' => Translator::dateToLocale($data[0]['data']),
|
||||
]);
|
||||
} else {
|
||||
$descrizione = tr('_DOC_ di riferimento _ID_ eliminato', [
|
||||
'_DOC_' => $documento->upperCaseFirst(),
|
||||
'_ID_' => $ref_id,
|
||||
]);
|
||||
}
|
||||
}
|
||||
|
||||
// Aggiunta riferimento a ordine
|
||||
if (!empty($r['idordine'])) {
|
||||
$rso = $dbo->fetchArray('SELECT numero, numero_esterno, data FROM or_ordini WHERE id='.prepare($r['idordine']));
|
||||
|
@ -96,9 +163,12 @@ foreach ($righe as $r) {
|
|||
}
|
||||
|
||||
// Aumento del conteggio
|
||||
if ((!empty($r['idordine']) || !empty($r['idddt']) || !empty($r['idpreventivo'])) && $count <= 1 && !empty($descrizione)) {
|
||||
echo '<br><small>'.$descrizione.'</small>';
|
||||
$count += 0.4;
|
||||
if (!empty($descrizione)) {
|
||||
echo '
|
||||
<br><small>'.$descrizione.'</small>';
|
||||
if ($count <= 1) {
|
||||
$count += 0.4;
|
||||
}
|
||||
}
|
||||
|
||||
echo '
|
||||
|
@ -106,8 +176,8 @@ foreach ($righe as $r) {
|
|||
|
||||
echo '
|
||||
<td class="text-center">';
|
||||
if($r['is_descrizione']==0){
|
||||
echo
|
||||
if (empty($r['is_descrizione'])) {
|
||||
echo
|
||||
Translator::numberToLocale($r['qta']).' '.$r['um'];
|
||||
}
|
||||
echo '
|
||||
|
@ -116,9 +186,8 @@ foreach ($righe as $r) {
|
|||
// Prezzo unitario
|
||||
echo "
|
||||
<td class='text-right'>";
|
||||
if($r['is_descrizione']==0){
|
||||
echo
|
||||
(empty($r['qta']) || empty($r['subtotale']) ? '' : Translator::numberToLocale($r['subtotale'] / $r['qta'])).' €';
|
||||
if (empty($r['is_descrizione'])) {
|
||||
echo(empty($r['qta']) || empty($r['subtotale']) ? '' : Translator::numberToLocale($r['subtotale'] / $r['qta'])).' €';
|
||||
|
||||
if ($r['sconto'] > 0) {
|
||||
echo "
|
||||
|
@ -139,10 +208,9 @@ foreach ($righe as $r) {
|
|||
// Imponibile
|
||||
echo "
|
||||
<td class='text-right'>";
|
||||
if($r['is_descrizione']==0){
|
||||
echo
|
||||
(empty($r['subtotale']) ? '' : Translator::numberToLocale($r['subtotale'] - $r['sconto'])).' €';
|
||||
|
||||
if (empty($r['is_descrizione'])) {
|
||||
echo(empty($r['subtotale']) ? '' : Translator::numberToLocale($r['subtotale'] - $r['sconto'])).' €';
|
||||
|
||||
if ($r['sconto'] > 0) {
|
||||
echo "
|
||||
<br><small class='text-muted'>".tr('sconto di _TOT_ _TYPE_', [
|
||||
|
@ -161,7 +229,7 @@ foreach ($righe as $r) {
|
|||
// Iva
|
||||
echo '
|
||||
<td class="text-center">';
|
||||
if($r['is_descrizione']==0){
|
||||
if (empty($r['is_descrizione'])) {
|
||||
echo
|
||||
Translator::numberToLocale($r['perc_iva']);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue