fetchArray($q); $idcliente = $rspreventivii[0]['idanagrafica']; // carica report html $report = file_get_contents($docroot.'/templates/preventivi/preventivo.html'); $body = file_get_contents($docroot.'/templates/preventivi/preventivo_body.html'); include_once $docroot.'/templates/pdfgen_variables.php'; $totrows = sizeof($rspreventivii); $totale_km = 0; $totale_ore = 0; $totale = 0; $preventivi = []; $ore = []; $km = []; $ntecnici = []; $tecnici = []; $costi_orari = []; $costi_km = []; $idinterventi = ['-1']; if ($totrows > 0) { for ($i = 0; $i < $totrows; ++$i) { // Lettura numero tecnici collegati all'intervento $query = 'SELECT an_anagrafiche.idanagrafica, ragione_sociale FROM in_interventi_tecnici LEFT OUTER JOIN an_anagrafiche ON in_interventi_tecnici.idtecnico=an_anagrafiche.idanagrafica WHERE idintervento="'.$rspreventivii[$i]['idintervento'].'"'; $rs = $dbo->fetchArray($query); $n_tecnici = sizeof($rs); $tecnici_full = ''; for ($j = 0; $j < $n_tecnici; ++$j) { $tecnici_full .= '- '.$rs[$j]['ragione_sociale']."
\n"; } // Conteggio ore totali $t = datediff('n', $rspreventivii[$i]['ora_dal'], $rspreventivii[$i]['ora_al']); $ore_pausa = Translator::numberToLocale($rspreventivii[$i]['ore_pausa'], 2); $t = round($t / 60 - $rspreventivii[$i]['ore_pausa'], 1); if ($rspreventivii[$i]['data'] != '') { $line = 'Intervento del '.Translator::dateToLocale($rspreventivii[$i]['data']).":
".str_replace("\n", '
', $rspreventivii[$i]['descrizione'])."

\n"; array_push($preventivi, $line); } array_push($km, floatval($rspreventivii[$i]['km'])); array_push($ore, $t); array_push($ntecnici, $n_tecnici); array_push($tecnici, $tecnici_full); if ($rspreventivii[$i]['prezzo_ore'] > 0) { array_push($ore, $rspreventivii[$i]['prezzo_ore_scontato'] / $rspreventivii[$i]['prezzo_ore']); } else { array_push($ore, 0); } array_push($costi_orari, floatval($rspreventivii[$i]['costo_orario'])); array_push($costi_km, floatval($rspreventivii[$i]['costo_km'])); if ($rspreventivii[$i]['prezzo_ore_unitario'] > 0) { $totale_ore += $rspreventivii[$i]['prezzo_ore_scontato'] / $rspreventivii[$i]['prezzo_ore_unitario']; } $totale_km += floatval($rspreventivii[$i]['km']); } } // Sostituisco i valori tra | | con il valore del campo del db $body .= preg_replace('/|(.+?)|/', $rspreventivii[0]['${1}'], $body); // Lettura nome referenti collegati all'anagrafica $query = 'SELECT * FROM an_referenti WHERE id = '.$rspreventivii[0]['idreferente']; $rs = $dbo->fetchArray($query); $nome_referente = $rs[0]['nome']; // Tabella intestazione $body .= "\n"; $body .= "\n"; $body .= "\n"; $body .= "\n"; if ($nome_referente != '') { $body .= "\n"; $body .= "\n"; } $body .= "\n"; $body .= "\n"; $body .= "
\n"; $body .= ''.$f_citta.', '.$rspreventivii[0]['data']."

\n"; $body .= 'PREVENTIVO No '.$rspreventivii[0]['numero'].' DEL '.$rspreventivii[0]['data']."\n"; $body .= "
\n"; if ($c_cap != '') { $c_cap = $c_cap.' '; } if ($c_provincia != '') { $c_provincia = ' ('.$c_provincia.')'; } $body .= 'Spettabile
'.$c_ragionesociale.'
'.$c_indirizzo.'
'.$c_cap.$c_citta.$c_provincia.'
P.Iva: '.$c_piva."
\n"; $body .= "
\n"; $body .= 'C.A. '.$nome_referente."\n"; $body .= "
\n"; $body .= ''.str_replace("\n", '
', $rspreventivii[0]['cdescrizione'])."


\n"; $body .= "
\n"; /* TABELLA COSTI */ $body .= "\n"; $body .= "\n"; $body .= "\n"; $body .= "\n"; $body .= "\n"; $body .= "\n"; $body .= "\n"; $body .= "\n"; $body .= "\n"; $body .= "\n"; $cifredecimali = get_var('Cifre decimali per importi'); // ARTICOLI $q_art = "SELECT *, IFNULL((SELECT codice FROM mg_articoli WHERE id=idarticolo),'') AS codice, (SELECT descrizione FROM co_iva WHERE id=idiva) AS desc_iva FROM `co_righe_preventivi` WHERE idpreventivo='$idpreventivo' ORDER BY id ASC"; $rs_art = $dbo->fetchArray($q_art); $tot_art = sizeof($rs_art); $imponibile_articoli = 0.0; $totale_iva = 0.0; $totale_sconto = 0.0; for ($i = 0; $i < $tot_art; ++$i) { // descrizione $body .= "\n"; // q.tà $body .= "\n"; // Costo unitario $body .= "\n"; $body .= "\n"; // Imponibile $body .= "\n"; $imponibile_articoli += $rs_art[$i]['subtotale']; $totale_iva += $iva; } // SCONTO if (abs($totale_sconto) > 0) { $body .= "\n"; $body .= "\n"; } // Totale iva $body .= "\n"; $body .= "\n"; // Totale iva $body .= "\n"; $body .= "\n"; // Totale complessivo intervento $body .= "\n"; $body .= "\n"; $body .= "\n"; $body .= "
DescrizioneQ.tàCosto U.IvaImponibile
\n"; if ($rs_art[$i]['codice'] != '') { $body .= $rs_art[$i]['codice'].' - '; } $body .= nl2br($rs_art[$i]['descrizione']); $body .= "\n"; $qta = $rs_art[$i]['qta']; $body .= Translator::numberToLocale($rs_art[$i]['qta'], 2)."\n"; if ($rs_art[$i]['um'] != '') { $body .= "
\n".$rs_art[$i]['um']."\n"; } $body .= "
\n"; if ($show_costi) { $body .= Translator::numberToLocale($rs_art[$i]['subtotale'] / $rs_art[$i]['qta'], 2)." €\n"; if ($rs_art[$i]['sconto'] > 0) { $body .= "
\n- sconto ".Translator::numberToLocale($rs_art[$i]['sconto'], 2)." €\n"; } } else { $body .= '-'; } $totale_sconto += ($rs_art[$i]['sconto'] * $qta); $body .= "
\n"; $iva = $rs_art[$i]['iva']; $body .= Translator::numberToLocale($iva, 2)." €
".$rs_art[$i]['desc_iva']."\n"; $body .= "
\n"; if ($show_costi) { $body .= Translator::numberToLocale($rs_art[$i]['subtotale'] - ($qta * $rs_art[$i]['sconto']), 2)." €\n"; } else { $body .= '-'; } $body .= "
\n"; $body .= " SCONTO:\n"; $body .= "\n"; $body .= ' - '.Translator::numberToLocale($totale_sconto, 2)." €\n"; $body .= "
\n"; $body .= " TOTALE IMPONIBILE:\n"; $body .= "\n"; $body .= ' '.Translator::numberToLocale(($imponibile_articoli - $totale_sconto), 2)." €\n"; $body .= "
\n"; $body .= " TOTALE IVA:\n"; $body .= "\n"; $body .= ''.Translator::numberToLocale($totale_iva, 2)." €\n"; $body .= "
\n"; $body .= "QUOTAZIONE TOTALE: \n"; $body .= "\n"; $body .= ''.Translator::numberToLocale(($imponibile_articoli - $totale_sconto) + $totale_iva, 2)." €\n"; $body .= "


\n"; // CONDIZIONI GENERALI DI FORNITURA // Lettura pagamenti $query = 'SELECT * FROM co_pagamenti WHERE id = '.$rspreventivii[0]['idpagamento']; $rs = $dbo->fetchArray($query); $pagamento = $rs[0]['descrizione']; // Lettura resa $query = 'SELECT * FROM dt_porto WHERE id = '.$rspreventivii[0]['idporto']; $rs = $dbo->fetchArray($query); $resa_materiale = $rs[0]['descrizione']; $rspreventivii[0]['idpagamento']; $body .= "\n"; $body .= "\n"; $body .= "\n"; // PAGAMENTI $body .= "\n"; $body .= "\n"; // RESA MATERIALI $body .= "\n"; $body .= "\n"; // VALIDITA' OFFERTA $body .= "\n"; $body .= "\n"; // TEMPI CONSEGNA $body .= "\n"; $body .= "\n"; // ESCLUSIONI $body .= "\n"; $body .= "\n"; $body .= "\n"; $body .= " \n"; $body .= "\n"; $body .= "
\n"; $body .= "CONDIZIONI GENERALI DI FORNITURA\n"; $body .= "
\n"; $body .= "PAGAMENTI:\n"; $body .= "\n"; $body .= ''.$pagamento."\n"; $body .= "
\n"; $body .= "RESA MATERIALI:\n"; $body .= "\n"; $body .= ''.$resa_materiale."\n"; $body .= "
\n"; $body .= "VALIDITÀ OFFERTA:\n"; $body .= "\n"; $body .= ''.$rspreventivii[0]['validita']." giorni\n"; $body .= "
\n"; $body .= "TEMPI CONSEGNA:\n"; $body .= "\n"; $body .= ''.$rspreventivii[0]['tempi_consegna']." giorni\n"; $body .= "
\n"; $body .= "ESCLUSIONI:\n"; $body .= "\n"; $body .= ''.nl2br($rspreventivii[0]['esclusioni'])."\n"; $body .= "
\n"; $body .= "
In attesa di un Vostro Cortese riscontro, colgo l’occasione per porgere Cordiali Saluti.\n"; $body .= "
\n"; $report_name = 'preventivo_'.$idpreventivo.'.pdf';