From 8125956d5dfe340fe3a3b6c9bc028a4f2f95eeb1 Mon Sep 17 00:00:00 2001 From: Thomas Zilio Date: Thu, 21 Sep 2017 15:51:39 +0200 Subject: [PATCH] Introduzione delle stampe nel database --- pdfgen.php | 209 +---------- src/Permissions.php | 4 +- src/Plugins.php | 26 +- src/Prints.php | 354 ++++++++++++++++++ templates/base/header.php | 2 +- templates/contratti/body.php | 8 +- templates/contratti/init.php | 4 +- templates/contratti_cons/body.php | 8 +- templates/contratti_cons/init.php | 2 +- templates/ddt/body.php | 8 +- templates/ddt/footer.php | 2 +- templates/ddt/init.php | 4 +- templates/fatture/body.php | 2 +- templates/fatture/footer.php | 4 +- templates/fatture/init.php | 2 +- templates/info.php | 9 +- templates/interventi/body.php | 26 +- templates/interventi/init.php | 6 +- .../pdfgen.magazzino_inventario.php | 8 +- templates/ordini/body.php | 6 +- templates/ordini/init.php | 4 +- .../pdfgen.partitario_mastrino.php | 14 +- templates/preventivi/body.php | 8 +- templates/preventivi/init.php | 4 +- templates/preventivi_cons/body.php | 6 +- templates/preventivi_cons/init.php | 2 +- templates/riepilogo_contratti/contratto.html | 17 - .../riepilogo_contratti/contratto_body.html | 27 -- .../riepilogo_contratti/logo_azienda.jpg | Bin 4348 -> 0 bytes .../pdfgen.riepilogo_contratti.php | 148 -------- .../pdfgen.riepilogo_interventi.php | 2 +- templates/scadenzario/pdfgen.scadenzario.php | 4 +- update/2_3_1.sql | 67 ++++ 33 files changed, 509 insertions(+), 488 deletions(-) create mode 100644 src/Prints.php delete mode 100644 templates/riepilogo_contratti/contratto.html delete mode 100644 templates/riepilogo_contratti/contratto_body.html delete mode 100644 templates/riepilogo_contratti/logo_azienda.jpg delete mode 100644 templates/riepilogo_contratti/pdfgen.riepilogo_contratti.php create mode 100644 update/2_3_1.sql diff --git a/pdfgen.php b/pdfgen.php index 5e37a6a71..8826a1d12 100644 --- a/pdfgen.php +++ b/pdfgen.php @@ -2,205 +2,16 @@ include_once __DIR__.'/core.php'; -ob_end_clean(); +$filename = !empty($filename) ? $filename : null; +$id_print = get('id_print'); -// Assegnazione di tutte le variabile GET -foreach ($get as $key => $value) { - ${$key} = !empty(${$key}) ? ${$key} : $value; +// Retrocompatibilitaà +$ptype = get('ptype'); +if (!empty($ptype)) { + $print = $dbo->fetchArray('SELECT id, previous FROM zz_prints WHERE directory = '.prepare($ptype).' ORDER BY main DESC LIMIT 1'); + $id_print = $print[0]['id']; + + $id_record = !empty($id_record) ? $id_record : get($print[0]['previous']); } -// Impostazione automatica della precisione a 2 numeri decimali -Translator::getFormatter()->setPrecision(2); - -// Individuazione del formato della stampa -$old_format = file_exists($docroot.'/templates/'.$ptype.'/pdfgen.'.$ptype.'.php') || file_exists($docroot.'/templates/'.$ptype.'/custom/pdfgen.'.$ptype.'.php'); - -// Nuovo sistema di generazione stampe -if (!$old_format) { - // Impostazioni di default - if (file_exists($docroot.'/templates/base/custom/settings.php')) { - $default = include $docroot.'/templates/base/custom/settings.php'; - } else { - $default = include $docroot.'/templates/base/settings.php'; - } - - // Impostazioni personalizzate della stampa - if (file_exists($docroot.'/templates/'.$ptype.'/custom/settings.php')) { - $custom = include $docroot.'/templates/'.$ptype.'/custom/settings.php'; - } elseif (file_exists($docroot.'/templates/'.$ptype.'/settings.php')) { - $custom = include $docroot.'/templates/'.$ptype.'/settings.php'; - } - - // Individuazione delle impostazioni finali - $settings = array_merge($default, (array) $custom); - - // Individuazione delle variabili fondamentali per la sostituzione dei contenuti - if (file_exists($docroot.'/templates/'.$ptype.'/custom/init.php')) { - include $docroot.'/templates/'.$ptype.'/custom/init.php'; - } elseif (file_exists($docroot.'/templates/'.$ptype.'/init.php')) { - include $docroot.'/templates/'.$ptype.'/init.php'; - } - - // Individuazione delle variabili per la sostituzione - include_once __DIR__.'/templates/info.php'; - - if (!empty($id_module)) { - Permissions::addModule($id_module); - } - Permissions::check(); - - // Operazioni di sostituzione - include $docroot.'/templates/info.php'; - - // Generazione dei contenuti della stampa - ob_start(); - if (file_exists($docroot.'/templates/'.$ptype.'/custom/body.php')) { - include $docroot.'/templates/'.$ptype.'/custom/body.php'; - } else { - include $docroot.'/templates/'.$ptype.'/body.php'; - } - $report = ob_get_clean(); - - if (!empty($autofill)) { - $result = ''; - - // max($autofill['additional']) = $autofill['rows'] - 1 - for ($i = (floor($autofill['count']) % $autofill['rows']); $i < $autofill['additional']; ++$i) { - $result .= ' - '; - for ($c = 0; $c < $autofill['columns']; ++$c) { - $result .= ' -  '; - } - $result .= ' - '; - } - - $report = str_replace('|autofill|', $result, $report); - } - - // Generazione dei contenuti dell'header - ob_start(); - if (file_exists($docroot.'/templates/'.$ptype.'/custom/header.php')) { - include $docroot.'/templates/'.$ptype.'/custom/header.php'; - } elseif (file_exists($docroot.'/templates/'.$ptype.'/header.php')) { - include $docroot.'/templates/'.$ptype.'/header.php'; - } - $head = ob_get_clean(); - - // Footer di default - $head = !empty($head) ? $head : '$default_header$'; - - // Generazione dei contenuti del footer - ob_start(); - if (file_exists($docroot.'/templates/'.$ptype.'/custom/footer.php')) { - include $docroot.'/templates/'.$ptype.'/custom/footer.php'; - } elseif (file_exists($docroot.'/templates/'.$ptype.'/footer.php')) { - include $docroot.'/templates/'.$ptype.'/footer.php'; - } - $foot = ob_get_clean(); -} else { - $orientation = 'P'; - $body_table_params = "style='width:210mm;'"; - $table = 'margin-left:1.7mm'; - $font_size = '10pt'; - - // Decido se usare la stampa personalizzata (se esiste) oppure quella standard - if (file_exists($ptype.'/custom/pdfgen.'.$ptype.'.php')) { - include $docroot.'/templates/'.$ptype.'/custom/pdfgen.'.$ptype.'.php'; - } else { - include $docroot.'/templates/'.$ptype.'/pdfgen.'.$ptype.'.php'; - } - - // Sostituzione di variabili generiche - $report = str_replace('$body$', $body, $report); - $report = str_replace('$footer$', $footer, $report); - - $report = str_replace('$font_size$', $font_size, $report); - $report = str_replace('$body_table_params$', $body_table_params, $report); - $report = str_replace('$table$', $table, $report); -} - -// Footer di default -$foot = !empty($foot) ? $foot : '$default_footer$'; - -// Operazioni di sostituzione -include $docroot.'/templates/replace.php'; - -// Individuazione dellla configurazione -$directory = dirname($filename); -if (!empty($filename) && !directory($directory)) { - $error = tr('Non hai i permessi per creare directory e files in _DIRECTORY_', [ - '_DIRECTORY_' => $directory, - ]); - - $_SESSION['errors'][] = $error; - - echo ' -

'.$error.'

'; - - exit(); -} - -$mode = !empty($filename) ? 'F' : 'I'; - -$filename = !empty($filename) ? $filename : sanitizeFilename($report_name); -$title = basename($filename); - -if (!$old_format) { - $styles = [ - 'templates/base/bootstrap.css', - 'templates/base/style.css', - ]; - - $settings['orientation'] = strtoupper($settings['orientation']) == 'L' ? 'L' : 'P'; - $settings['format'] = is_string($settings['format']) ? $settings['format'].($settings['orientation'] == 'L' ? '-L' : '') : $settings['format']; - - // Instanziamento dell'oggetto mPDF - $mpdf = new mPDF( - 'c', - $settings['format'], - $settings['font-size'], - 'helvetica', - $settings['margins']['left'], - $settings['margins']['right'], - $settings['margins']['top'] + $settings['header-height'], - $settings['margins']['bottom'] + $settings['footer-height'], - $settings['margins']['top'], - $settings['margins']['bottom'], - $settings['orientation'] - ); - - // Impostazione di header e footer - $mpdf->SetHTMLFooter($foot); - $mpdf->SetHTMLHeader($head); - - // Impostazione del titolo del PDF - $mpdf->SetTitle($title); - - // Inclusione dei fogli di stile CSS - foreach ($styles as $value) { - $mpdf->WriteHTML(file_get_contents(__DIR__.'/'.$value), 1); - } - - // Impostazione del font-size - $mpdf->WriteHTML('body {font-size: '.$settings['font-size'].'pt;}', 1); - - $mpdf->shrink_tables_to_fit = 1; - // Aggiunta dei contenuti - $mpdf->WriteHTML($report); - - // Creazione effettiva del PDF - $mpdf->Output($filename, $mode); -} else { - if (!str_contains($report, '')) { - $report .= ''.$foot.''; - } - - $html2pdf = new Spipu\Html2Pdf\Html2Pdf($orientation, 'A4', 'it', true, 'UTF-8'); - - $html2pdf->writeHTML($report); - $html2pdf->pdf->setTitle($title); - - $html2pdf->output($filename, $mode); -} +Prints::render($id_print, $id_record, $filename); diff --git a/src/Permissions.php b/src/Permissions.php index ebfb7e92b..4602a2e55 100644 --- a/src/Permissions.php +++ b/src/Permissions.php @@ -56,7 +56,7 @@ class Permissions * * @return bool */ - public static function check($permissions = []) + public static function check($permissions = [], $die = true) { if (empty($permissions)) { $permissions = ['r', 'rw']; @@ -80,7 +80,7 @@ class Permissions } } - if (!$result) { + if (!$result && $die) { die(tr('Accesso negato')); } } diff --git a/src/Plugins.php b/src/Plugins.php index cb35a3c91..2b74a2d8e 100644 --- a/src/Plugins.php +++ b/src/Plugins.php @@ -1,7 +1,7 @@ fetchArray('SELECT * FROM zz_prints'); + + $prints = []; + + foreach ($results as $result) { + $result['full_directory'] = DOCROOT.'/templates/'.$result['directory']; + + $prints[$result['id']] = $result; + $prints[$result['name']] = $result['id']; + + if (!isset(self::$modules[$result['id_module']])) { + self::$modules[$result['id_module']] = []; + } + + self::$modules[$result['id_module']][] = $result['id']; + } + + self::$prints = $prints; + } + + return self::$prints; + } + + /** + * Restituisce le informazioni relative a un singolo modulo specificato. + * + * @param string|int $print + * + * @return array + */ + public static function getPrint($print) + { + if (!is_numeric($print) && !empty(self::getPrints()[$print])) { + $print = self::getPrints()[$print]; + } + + return self::getPrints()[$print]; + } + + /** + * Restituisce le informazioni relative alle stampe di un singolo modulo specificato. + * + * @param string|int $module + * + * @return array + */ + public static function getModulePrints($module) + { + $module_id = Modules::getModule($module)['id']; + + $result = []; + + foreach ((array) self::$modules[$module_id] as $value) { + $result[] = $value; + } + + if (!is_numeric($print) && !empty(self::getPrints()[$print])) { + $print = self::getPrints()[$print]; + } + + return $result; + } + + public static function render($print, $id_record, $filename = null) + { + ob_end_clean(); + + $infos = self::getPrint($print); + + Permissions::addModule($infos['id_module']); + + if (empty($infos) || empty($infos['enabled']) || !Permissions::check([], false)) { + return false; + } + + // Impostazione automatica della precisione a 2 numeri decimali + Translator::getFormatter()->setPrecision(2); + + // Individuazione della configurazione + $directory = dirname($filename); + if (!empty($filename) && !directory($directory)) { + $error = tr('Non hai i permessi per creare directory e files in _DIRECTORY_', [ + '_DIRECTORY_' => $directory, + ]); + + $_SESSION['errors'][] = $error; + + echo ' +

'.$error.'

'; + + exit(); + } + + if (self::isOldStandard($print)) { + self::oldLoader($infos['id'], $id_record, $filename); + } else { + self::loader($infos['id'], $id_record, $filename); + } + } + + protected static function getLink($print, $id_record) + { + $infos = self::getPrint($print); + + $link = ROOTDIR.'/pdfgen.php?'; + + if (self::isOldStandard($infos['id'])) { + $link .= 'ptype='.$infos['directory'].'&'.$infos['previous'].'='.$id_record; + } else { + $link .= 'id_print='.$infos['id'].'&id_record='.$id_record; + } + + return $link; + } + + protected static function readOptions($string) + { + // Fix per contenuti con newline integrate + $string = str_replace(["\n", "\r"], ['\\n', '\\r'], $string); + + $result = (array) json_decode($string, true); + + return $result; + } + + protected static function isOldStandard($id) + { + $infos = self::getPrint($print); + + return file_exists($infos['full_directory'].'/pdfgen.'.$ptype.'.php') || file_exists($infos['full_directory'].'/custom/pdfgen.'.$ptype.'.php'); + } + + protected static function isNewStandard($id) + { + return !self::isOldStandard($id); + } + + protected static function oldLoader($id_print, $id_record, $filename = null) + { + $infos = self::getPrint($id_print); + $options = self::readOptions($infos['options']); +var_dump($infos);exit(); + $database = Database::getConnection(); + $dbo = $database; + + $_GET[$infos['previous']] = $id_record; + ${$infos['previous']} = $id_record; + $ptype = $infos['directory']; + + $orientation = 'P'; + $body_table_params = "style='width:210mm;'"; + $table = 'margin-left:1.7mm'; + $font_size = '10pt'; + + // Decido se usare la stampa personalizzata (se esiste) oppure quella standard + if (file_exists($infos['full_directory'].'/custom/pdfgen.'.$ptype.'.php')) { + include $infos['full_directory'].'/custom/pdfgen.'.$ptype.'.php'; + } else { + include $infos['full_directory'].'/pdfgen.'.$ptype.'.php'; + } + + // Sostituzione di variabili generiche + $report = str_replace('$body$', $body, $report); + $report = str_replace('$footer$', $footer, $report); + + $report = str_replace('$font_size$', $font_size, $report); + $report = str_replace('$body_table_params$', $body_table_params, $report); + $report = str_replace('$table$', $table, $report); + + // Operazioni di sostituzione + include DOCROOT.'/templates/replace.php'; + + $mode = !empty($filename) ? 'F' : 'I'; + + $filename = !empty($filename) ? $filename : sanitizeFilename($report_name); + $title = basename($filename); + + // Footer di default + if (!str_contains($report, '')) { + $report .= '$default_footer$'; + } + + $html2pdf = new Spipu\Html2Pdf\Html2Pdf($orientation, 'A4', 'it', true, 'UTF-8'); + + $html2pdf->writeHTML($report); + $html2pdf->pdf->setTitle($title); + + $html2pdf->output($filename, $mode); + } + + protected static function loader($id_print, $id_record, $filename = null) + { + $infos = self::getPrint($id_print); + $options = self::readOptions($infos['options']); + + $database = Database::getConnection(); + $dbo = $database; + + // Impostazioni di default + if (file_exists(DOCROOT.'/templates/base/custom/settings.php')) { + $default = include DOCROOT.'/templates/base/custom/settings.php'; + } else { + $default = include DOCROOT.'/templates/base/settings.php'; + } + + // Impostazioni personalizzate della stampa + if (file_exists($infos['full_directory'].'/custom/settings.php')) { + $custom = include $infos['full_directory'].'/custom/settings.php'; + } elseif (file_exists($infos['full_directory'].'/settings.php')) { + $custom = include $infos['full_directory'].'/settings.php'; + } + + // Individuazione delle impostazioni finali + $settings = array_merge($default, (array) $custom); + + // Individuazione delle variabili fondamentali per la sostituzione dei contenuti + if (file_exists($infos['full_directory'].'/custom/init.php')) { + include $infos['full_directory'].'/custom/init.php'; + } elseif (file_exists($infos['full_directory'].'/init.php')) { + include $infos['full_directory'].'/init.php'; + } + + // Individuazione delle variabili per la sostituzione + include_once DOCROOT.'/templates/info.php'; + + // Generazione dei contenuti della stampa + ob_start(); + if (file_exists($infos['full_directory'].'/custom/body.php')) { + include $infos['full_directory'].'/custom/body.php'; + } else { + include $infos['full_directory'].'/body.php'; + } + $report = ob_get_clean(); + + if (!empty($autofill)) { + $result = ''; + + // max($autofill['additional']) = $autofill['rows'] - 1 + for ($i = (floor($autofill['count']) % $autofill['rows']); $i < $autofill['additional']; ++$i) { + $result .= ' + '; + for ($c = 0; $c < $autofill['columns']; ++$c) { + $result .= ' +  '; + } + $result .= ' + '; + } + + $report = str_replace('|autofill|', $result, $report); + } + + // Generazione dei contenuti dell'header + ob_start(); + if (file_exists($infos['full_directory'].'/custom/header.php')) { + include $infos['full_directory'].'/custom/header.php'; + } elseif (file_exists($infos['full_directory'].'/header.php')) { + include $infos['full_directory'].'/header.php'; + } + $head = ob_get_clean(); + + // Generazione dei contenuti del footer + ob_start(); + if (file_exists($infos['full_directory'].'/custom/footer.php')) { + include $infos['full_directory'].'/custom/footer.php'; + } elseif (file_exists($infos['full_directory'].'/footer.php')) { + include $infos['full_directory'].'/footer.php'; + } + $foot = ob_get_clean(); + + // Header di default + $head = !empty($head) ? $head : '$default_header$'; + + // Footer di default + $foot = !empty($foot) ? $foot : '$default_footer$'; + + // Operazioni di sostituzione + include DOCROOT.'/templates/replace.php'; + + $mode = !empty($filename) ? 'F' : 'I'; + + $filename = !empty($filename) ? $filename : sanitizeFilename($report_name); + $title = basename($filename); + + $styles = [ + 'templates/base/bootstrap.css', + 'templates/base/style.css', + ]; + + $settings['orientation'] = strtoupper($settings['orientation']) == 'L' ? 'L' : 'P'; + $settings['format'] = is_string($settings['format']) ? $settings['format'].($settings['orientation'] == 'L' ? '-L' : '') : $settings['format']; + + // Instanziamento dell'oggetto mPDF + $mpdf = new mPDF( + 'c', + $settings['format'], + $settings['font-size'], + 'helvetica', + $settings['margins']['left'], + $settings['margins']['right'], + $settings['margins']['top'] + $settings['header-height'], + $settings['margins']['bottom'] + $settings['footer-height'], + $settings['margins']['top'], + $settings['margins']['bottom'], + $settings['orientation'] + ); + + // Impostazione di header e footer + $mpdf->SetHTMLFooter($foot); + $mpdf->SetHTMLHeader($head); + + // Impostazione del titolo del PDF + $mpdf->SetTitle($title); + + // Inclusione dei fogli di stile CSS + foreach ($styles as $value) { + $mpdf->WriteHTML(file_get_contents(DOCROOT.'/'.$value), 1); + } + + // Impostazione del font-size + $mpdf->WriteHTML('body {font-size: '.$settings['font-size'].'pt;}', 1); + + $mpdf->shrink_tables_to_fit = 1; + // Aggiunta dei contenuti + $mpdf->WriteHTML($report); + + // Creazione effettiva del PDF + $mpdf->Output($filename, $mode); + } +} diff --git a/templates/base/header.php b/templates/base/header.php index a107d958a..a546ce0dc 100644 --- a/templates/base/header.php +++ b/templates/base/header.php @@ -12,7 +12,7 @@ return '
- Logo + Logo

'.$f_ragionesociale.'

diff --git a/templates/contratti/body.php b/templates/contratti/body.php index 2b2d248b0..6628f5b1a 100644 --- a/templates/contratti/body.php +++ b/templates/contratti/body.php @@ -2,7 +2,7 @@ include_once __DIR__.'/../../core.php'; -$report_name = 'contratto_'.$idcontratto.'.pdf'; +$report_name = 'contratto_'.$id_record.'.pdf'; $autofill = [ 'count' => 0, // Conteggio delle righe @@ -80,7 +80,7 @@ echo " '; // RIGHE PREVENTIVO CON ORDINAMENTO UNICO -$righe = $dbo->fetchArray('SELECT * FROM co_righe2_contratti WHERE idcontratto='.prepare($idcontratto).' ORDER BY `order`'); +$righe = $dbo->fetchArray('SELECT * FROM co_righe2_contratti WHERE idcontratto='.prepare($id_record).' ORDER BY `order`'); foreach ($righe as $r) { $count = 0; $count += ceil(strlen($r['descrizione']) / $autofill['words']); @@ -110,7 +110,7 @@ foreach ($righe as $r) { ".(empty($r['qta']) ? '' : Translator::numberToLocale($r['qta'])).' '.$r['um'].' '; - if ($mostra_prezzi) { + if ($options['pricing']) { // Prezzo unitario echo " @@ -161,7 +161,7 @@ echo ' '; // TOTALE COSTI FINALI -if ($mostra_prezzi) { +if ($options['pricing']) { // Eventuale sconto incondizionato if (!empty($sconto)) { // Totale imponibile diff --git a/templates/contratti/init.php b/templates/contratti/init.php index b90bb00ae..d0b79b67a 100644 --- a/templates/contratti/init.php +++ b/templates/contratti/init.php @@ -5,9 +5,7 @@ include_once __DIR__.'/../../core.php'; $module_name = 'Contratti'; // Lettura info fattura -$records = $dbo->fetchArray('SELECT *, (SELECT orario_inizio FROM in_interventi_tecnici WHERE idintervento=in_interventi.id LIMIT 0,1) AS data, co_contratti.descrizione AS `cdescrizione`, co_contratti.idanagrafica AS `idanagrafica`, co_contratti.costo_orario AS costo_orario , co_contratti.costo_km AS costo_km FROM co_contratti LEFT OUTER JOIN (co_righe_contratti LEFT OUTER JOIN in_interventi ON co_righe_contratti.idintervento=in_interventi.id) ON co_contratti.id=co_righe_contratti.idcontratto WHERE co_contratti.id='.prepare($idcontratto)); +$records = $dbo->fetchArray('SELECT *, (SELECT orario_inizio FROM in_interventi_tecnici WHERE idintervento=in_interventi.id LIMIT 0,1) AS data, co_contratti.descrizione AS `cdescrizione`, co_contratti.idanagrafica AS `idanagrafica`, co_contratti.costo_orario AS costo_orario , co_contratti.costo_km AS costo_km FROM co_contratti LEFT OUTER JOIN (co_righe_contratti LEFT OUTER JOIN in_interventi ON co_righe_contratti.idintervento=in_interventi.id) ON co_contratti.id=co_righe_contratti.idcontratto WHERE co_contratti.id='.prepare($id_record)); $id_cliente = $records[0]['idanagrafica']; $id_sede = $records[0]['idsede']; - -$mostra_prezzi = get_var('Stampa i prezzi sui contratti'); diff --git a/templates/contratti_cons/body.php b/templates/contratti_cons/body.php index 7dfa34934..e955c3d7b 100644 --- a/templates/contratti_cons/body.php +++ b/templates/contratti_cons/body.php @@ -4,7 +4,7 @@ include_once __DIR__.'/../../core.php'; include_once $docroot.'/modules/interventi/modutil.php'; -$report_name = 'contratto_'.$idcontratto.'_cons.pdf'; +$report_name = 'contratto_'.$id_record.'_cons.pdf'; echo '
@@ -61,7 +61,7 @@ $totale_ore_impiegate = 0; $sconto = []; $imponibile = []; -$interventi = $dbo->fetchArray('SELECT *, in_interventi.id, in_interventi.codice, (SELECT GROUP_CONCAT(DISTINCT ragione_sociale) FROM in_interventi_tecnici JOIN an_anagrafiche ON an_anagrafiche.idanagrafica = in_interventi_tecnici.idtecnico WHERE idintervento=in_interventi.id) AS tecnici, (SELECT MIN(orario_inizio) FROM in_interventi_tecnici WHERE idintervento=in_interventi.id) AS inizio, (SELECT SUM(ore) FROM in_interventi_tecnici WHERE idintervento=in_interventi.id) AS ore, (SELECT SUM(km) FROM in_interventi_tecnici WHERE idintervento=in_interventi.id) AS km FROM co_righe_contratti JOIN in_interventi ON co_righe_contratti.idintervento=in_interventi.id WHERE co_righe_contratti.idcontratto='.prepare($idcontratto).' ORDER BY inizio DESC'); +$interventi = $dbo->fetchArray('SELECT *, in_interventi.id, in_interventi.codice, (SELECT GROUP_CONCAT(DISTINCT ragione_sociale) FROM in_interventi_tecnici JOIN an_anagrafiche ON an_anagrafiche.idanagrafica = in_interventi_tecnici.idtecnico WHERE idintervento=in_interventi.id) AS tecnici, (SELECT MIN(orario_inizio) FROM in_interventi_tecnici WHERE idintervento=in_interventi.id) AS inizio, (SELECT SUM(ore) FROM in_interventi_tecnici WHERE idintervento=in_interventi.id) AS ore, (SELECT SUM(km) FROM in_interventi_tecnici WHERE idintervento=in_interventi.id) AS km FROM co_righe_contratti JOIN in_interventi ON co_righe_contratti.idintervento=in_interventi.id WHERE co_righe_contratti.idcontratto='.prepare($id_record).' ORDER BY inizio DESC'); if (!empty($interventi)) { // Interventi @@ -464,10 +464,10 @@ $imponibile = sum($imponibile); $totale = $imponibile - $sconto; -$rs = $dbo->fetchArray("SELECT SUM(subtotale) as budget FROM `co_righe2_contratti` WHERE idcontratto = ".prepare($idcontratto)); +$rs = $dbo->fetchArray("SELECT SUM(subtotale) as budget FROM `co_righe2_contratti` WHERE idcontratto = ".prepare($id_record)); $budget = $rs[0]['budget']; -$rs = $dbo->fetchArray("SELECT SUM(qta) AS totale_ore FROM `co_righe2_contratti` WHERE um='ore' AND idcontratto = ".prepare($idcontratto)); +$rs = $dbo->fetchArray("SELECT SUM(qta) AS totale_ore FROM `co_righe2_contratti` WHERE um='ore' AND idcontratto = ".prepare($id_record)); $totale_ore = $rs[0]['totale_ore']; $rapporto = $budget - $totale; diff --git a/templates/contratti_cons/init.php b/templates/contratti_cons/init.php index 16e31b68d..90d0c0011 100644 --- a/templates/contratti_cons/init.php +++ b/templates/contratti_cons/init.php @@ -5,7 +5,7 @@ include_once __DIR__.'/../../core.php'; $module_name = 'Contratti'; // Lettura info fattura -$records = $dbo->fetchArray('SELECT *, data_bozza AS data FROM co_contratti WHERE id='.prepare($idcontratto)); +$records = $dbo->fetchArray('SELECT *, data_bozza AS data FROM co_contratti WHERE id='.prepare($id_record)); $id_cliente = $records[0]['idanagrafica']; $id_sede = $records[0]['idsede']; diff --git a/templates/ddt/body.php b/templates/ddt/body.php index 5219c04ae..629380dfb 100644 --- a/templates/ddt/body.php +++ b/templates/ddt/body.php @@ -9,7 +9,7 @@ $autofill = [ 'words' => 70, 'rows' => 16, 'additional' => 15, - 'columns' => $mostra_prezzi ? 5 : 2, + 'columns' => $options['pricing'] ? 5 : 2, ]; $imponibile = []; @@ -24,7 +24,7 @@ echo " ".tr('Descrizione', [], ['upper' => true])." ".tr('Q.tà', [], ['upper' => true]).''; -if ($mostra_prezzi) { +if ($options['pricing']) { echo " ".tr('Prezzo unitario', [], ['upper' => true])." ".tr('Importo', [], ['upper' => true])." @@ -38,7 +38,7 @@ if ($mostra_prezzi) { '; // Righe -$rs_gen = $dbo->fetchArray('SELECT *, (SELECT percentuale FROM co_iva WHERE id=idiva) AS perc_iva, IFNULL((SELECT peso_lordo FROM mg_articoli WHERE id=idarticolo),0) * qta AS peso_lordo, IFNULL((SELECT volume FROM mg_articoli WHERE id=idarticolo),0) * qta AS volume FROM `dt_righe_ddt` WHERE idddt='.prepare($idddt)); +$rs_gen = $dbo->fetchArray('SELECT *, (SELECT percentuale FROM co_iva WHERE id=idiva) AS perc_iva, IFNULL((SELECT peso_lordo FROM mg_articoli WHERE id=idarticolo),0) * qta AS peso_lordo, IFNULL((SELECT volume FROM mg_articoli WHERE id=idarticolo),0) * qta AS volume FROM `dt_righe_ddt` WHERE idddt='.prepare($id_record)); foreach ($rs_gen as $r) { $count = 0; $count += ceil(strlen($r['descrizione']) / $autofill['words']); @@ -73,7 +73,7 @@ foreach ($rs_gen as $r) { ".Translator::numberToLocale($r['qta']).' '.$r['um'].' '; - if ($mostra_prezzi) { + if ($options['pricing']) { echo " ".Translator::numberToLocale($r['subtotale'] / $r['qta']).' € diff --git a/templates/ddt/footer.php b/templates/ddt/footer.php index 88f12544f..bbd3a6f7a 100644 --- a/templates/ddt/footer.php +++ b/templates/ddt/footer.php @@ -4,7 +4,7 @@ echo ' '; -if ($mostra_prezzi) { +if ($options['pricing']) { // Riga 1 echo " diff --git a/templates/ddt/init.php b/templates/ddt/init.php index 999e26648..97b4a785a 100644 --- a/templates/ddt/init.php +++ b/templates/ddt/init.php @@ -3,7 +3,7 @@ include_once __DIR__.'/../../core.php'; // Lettura info ddt -$q = 'SELECT *, (SELECT dir FROM dt_tipiddt WHERE id=idtipoddt) AS dir, (SELECT descrizione FROM dt_tipiddt WHERE id=idtipoddt) AS tipo_doc, (SELECT descrizione FROM dt_causalet WHERE id=idcausalet) AS causalet, (SELECT descrizione FROM dt_porto WHERE id=idporto) AS porto, (SELECT descrizione FROM dt_aspettobeni WHERE id=idaspettobeni) AS aspettobeni, (SELECT descrizione FROM dt_spedizione WHERE id=idspedizione) AS spedizione, (SELECT ragione_sociale FROM an_anagrafiche WHERE idanagrafica=idvettore) AS vettore FROM dt_ddt WHERE id='.prepare($idddt); +$q = 'SELECT *, (SELECT dir FROM dt_tipiddt WHERE id=idtipoddt) AS dir, (SELECT descrizione FROM dt_tipiddt WHERE id=idtipoddt) AS tipo_doc, (SELECT descrizione FROM dt_causalet WHERE id=idcausalet) AS causalet, (SELECT descrizione FROM dt_porto WHERE id=idporto) AS porto, (SELECT descrizione FROM dt_aspettobeni WHERE id=idaspettobeni) AS aspettobeni, (SELECT descrizione FROM dt_spedizione WHERE id=idspedizione) AS spedizione, (SELECT ragione_sociale FROM an_anagrafiche WHERE idanagrafica=idvettore) AS vettore FROM dt_ddt WHERE id='.prepare($id_record); $records = $dbo->fetchArray($q); $module_name = ($records[0]['dir'] == 'entrata') ? 'Ddt di vendita' : 'Ddt di acquisto'; @@ -59,5 +59,3 @@ $custom = [ if ($id_cliente != Auth::user()['idanagrafica'] && !Auth::admin()) { die(tr('Non hai i permessi per questa stampa!')); } - -$mostra_prezzi = get_var("Stampa i prezzi sui ddt"); diff --git a/templates/fatture/body.php b/templates/fatture/body.php index a88030143..00da4e220 100644 --- a/templates/fatture/body.php +++ b/templates/fatture/body.php @@ -35,7 +35,7 @@ echo " '; // RIGHE FATTURA CON ORDINAMENTO UNICO -$righe = $dbo->fetchArray("SELECT *, IFNULL((SELECT codice FROM mg_articoli WHERE id=idarticolo),'') AS codice_articolo, (SELECT percentuale FROM co_iva WHERE id=idiva) AS perc_iva FROM `co_righe_documenti` WHERE iddocumento=".prepare($iddocumento).' ORDER BY `order`'); +$righe = $dbo->fetchArray("SELECT *, IFNULL((SELECT codice FROM mg_articoli WHERE id=idarticolo),'') AS codice_articolo, (SELECT percentuale FROM co_iva WHERE id=idiva) AS perc_iva FROM `co_righe_documenti` WHERE iddocumento=".prepare($id_record).' ORDER BY `order`'); foreach ($righe as $r) { $count = 0; $count += ceil(strlen($r['descrizione']) / $autofill['words']); diff --git a/templates/fatture/footer.php b/templates/fatture/footer.php index 1eae9dc10..b634fdacc 100644 --- a/templates/fatture/footer.php +++ b/templates/fatture/footer.php @@ -22,7 +22,7 @@ echo " '; // Elenco scadenze -$rs2 = $dbo->fetchArray('SELECT * FROM co_scadenziario WHERE iddocumento='.prepare($iddocumento).' ORDER BY `data_emissione` ASC'); +$rs2 = $dbo->fetchArray('SELECT * FROM co_scadenziario WHERE iddocumento='.prepare($id_record).' ORDER BY `data_emissione` ASC'); if (!empty($rs2)) { for ($i = 0; $i < sizeof($rs2); ++$i) { echo " @@ -159,7 +159,7 @@ if (!empty($sconto)) { // Ritenuta d'acconto if ($records[0]['ritenutaacconto'] != 0) { - $rs2 = $dbo->fetchArray('SELECT percentuale FROM co_ritenutaacconto WHERE id=(SELECT idritenutaacconto FROM co_righe_documenti WHERE iddocumento='.prepare($iddocumento).' AND idritenutaacconto!=0 LIMIT 0,1)'); + $rs2 = $dbo->fetchArray('SELECT percentuale FROM co_ritenutaacconto WHERE id=(SELECT idritenutaacconto FROM co_righe_documenti WHERE iddocumento='.prepare($id_record).' AND idritenutaacconto!=0 LIMIT 0,1)'); echo " diff --git a/templates/fatture/init.php b/templates/fatture/init.php index 3f5587bdc..e7ba805dc 100644 --- a/templates/fatture/init.php +++ b/templates/fatture/init.php @@ -8,7 +8,7 @@ $records = $dbo->fetchArray('SELECT *, (SELECT descrizione FROM co_tipidocumento WHERE id=idtipodocumento) AS tipo_doc, (SELECT descrizione FROM co_pagamenti WHERE id=idpagamento) AS tipo_pagamento, (SELECT dir FROM co_tipidocumento WHERE id=idtipodocumento) AS dir -FROM co_documenti WHERE id='.prepare($iddocumento)); +FROM co_documenti WHERE id='.prepare($id_record)); $module_name = ($records[0]['dir'] == 'entrata') ? 'Fatture di vendita' : 'Fatture di acquisto'; diff --git a/templates/info.php b/templates/info.php index 7b26d36a9..7a2075f62 100644 --- a/templates/info.php +++ b/templates/info.php @@ -85,10 +85,11 @@ foreach ($replace as $prefix => $values) { // Valori aggiuntivi per la sostituzione $replaces = array_merge($replaces, [ - 'docroot' => DOCROOT, - 'rootdir' => ROOTDIR, - 'footer' => !empty($footer) ? $footer : '', - 'dicitura_fissa_fattura' => get_var('Dicitura fissa fattura'), 'default_header' => include DOCROOT.'/templates/base/header.php', 'default_footer' => include DOCROOT.'/templates/base/footer.php', + 'docroot' => DOCROOT, + 'rootdir' => ROOTDIR, + 'directory' => Prints::getPrint($id_print)['full_directory'], + 'footer' => !empty($footer) ? $footer : '', + 'dicitura_fissa_fattura' => get_var('Dicitura fissa fattura'), ]); diff --git a/templates/interventi/body.php b/templates/interventi/body.php index 88923256a..85640f65f 100644 --- a/templates/interventi/body.php +++ b/templates/interventi/body.php @@ -4,7 +4,7 @@ include_once __DIR__.'/../../core.php'; include_once $docroot.'/modules/interventi/modutil.php'; -$report_name = 'intervento_'.$idintervento.'.pdf'; +$report_name = 'intervento_'.$id_record.'.pdf'; /* Dati intervento @@ -59,7 +59,7 @@ echo ' // riga 3 // Elenco impianti su cui è stato fatto l'intervento -$rs2 = $dbo->fetchArray('SELECT *, (SELECT nome FROM my_impianti WHERE id=my_impianti_interventi.idimpianto) AS nome, (SELECT matricola FROM my_impianti WHERE id=my_impianti_interventi.idimpianto) AS matricola FROM my_impianti_interventi WHERE idintervento='.prepare($idintervento)); +$rs2 = $dbo->fetchArray('SELECT *, (SELECT nome FROM my_impianti WHERE id=my_impianti_interventi.idimpianto) AS nome, (SELECT matricola FROM my_impianti WHERE id=my_impianti_interventi.idimpianto) AS matricola FROM my_impianti_interventi WHERE idintervento='.prepare($id_record)); $impianti = []; for ($j = 0; $j < sizeof($rs2); ++$j) { $impianti[] = ''.$rs2[$j]['nome']."(".$rs2[$j]['matricola'].')'; @@ -95,7 +95,7 @@ echo ' $totale = []; // MATERIALE UTILIZZATO -$rs2 = $dbo->fetchArray('SELECT *, (SELECT codice FROM mg_articoli WHERE id=idarticolo) AS codice_art FROM `mg_articoli_interventi` WHERE idintervento='.prepare($idintervento)." AND NOT idarticolo='0' ORDER BY idarticolo ASC"); +$rs2 = $dbo->fetchArray('SELECT *, (SELECT codice FROM mg_articoli WHERE id=idarticolo) AS codice_art FROM `mg_articoli_interventi` WHERE idintervento='.prepare($id_record)." AND NOT idarticolo='0' ORDER BY idarticolo ASC"); if (!empty($rs2)) { echo '
@@ -153,7 +153,7 @@ if (!empty($rs2)) { $netto = $r['prezzo_vendita'] * $r['qta'] - $r['sconto']; echo ' '; } @@ -162,7 +162,7 @@ if (!empty($rs2)) { '; // Totale spesa articoli - if ($mostra_prezzi) { + if ($options['pricing']) { echo '
- '.($mostra_prezzi ? Translator::numberToLocale($netto) : '-').' + '.($options['pricing'] ? Translator::numberToLocale($netto) : '-').'
@@ -182,7 +182,7 @@ if (!empty($rs2)) { // FINE MATERIALE UTILIZZATO // Conteggio SPESE AGGIUNTIVE -$rs2 = $dbo->fetchArray('SELECT * FROM in_righe_interventi WHERE idintervento='.prepare($idintervento).' ORDER BY id ASC'); +$rs2 = $dbo->fetchArray('SELECT * FROM in_righe_interventi WHERE idintervento='.prepare($id_record).' ORDER BY id ASC'); if (!empty($rs2)) { echo ' @@ -231,21 +231,21 @@ if (!empty($rs2)) { // Prezzo unitario echo ' '; // Prezzo totale $netto = $r['prezzo_vendita'] * $r['qta'] - $r['sconto']; echo ' '; } echo ' '; - if ($mostra_prezzi) { + if ($options['pricing']) { // Totale spese aggiuntive echo ' @@ -300,7 +300,7 @@ echo ' '; // Sessioni di lavoro dei tecnici -$rst = $dbo->fetchArray('SELECT an_anagrafiche.*, in_interventi_tecnici.* FROM in_interventi_tecnici JOIN an_anagrafiche ON in_interventi_tecnici.idtecnico=an_anagrafiche.idanagrafica WHERE in_interventi_tecnici.idintervento='.prepare($idintervento).' ORDER BY in_interventi_tecnici.orario_inizio'); +$rst = $dbo->fetchArray('SELECT an_anagrafiche.*, in_interventi_tecnici.* FROM in_interventi_tecnici JOIN an_anagrafiche ON in_interventi_tecnici.idtecnico=an_anagrafiche.idanagrafica WHERE in_interventi_tecnici.idintervento='.prepare($id_record).' ORDER BY in_interventi_tecnici.orario_inizio'); foreach ($rst as $i => $r) { echo ' @@ -349,8 +349,8 @@ echo ' '; // Ore lavorate -if ($mostra_prezzi) { - $ore = get_ore_intervento($idintervento); +if ($options['pricing']) { + $ore = get_ore_intervento($id_record); $costo_orario = $records[0]['tot_ore_consuntivo'] - $records[0]['tot_dirittochiamata']; @@ -396,7 +396,7 @@ echo ' '; // TOTALE COSTI FINALI -if ($mostra_prezzi) { +if ($options['pricing']) { // Totale imponibile echo ' diff --git a/templates/interventi/init.php b/templates/interventi/init.php index b5c55179a..022172117 100644 --- a/templates/interventi/init.php +++ b/templates/interventi/init.php @@ -7,10 +7,10 @@ include_once $docroot.'/modules/interventi/modutil.php'; $module_name = 'Interventi'; // carica intervento -$query = 'SELECT in_interventi.*, (SELECT numero FROM co_contratti WHERE id=(SELECT idcontratto FROM co_righe_contratti WHERE idintervento=in_interventi.id)) AS numero_contratto, (SELECT numero FROM co_preventivi WHERE id=(SELECT idpreventivo FROM co_preventivi_interventi WHERE idintervento=in_interventi.id ORDER BY idpreventivo DESC LIMIT 0,1)) AS numero_preventivo, (SELECT SUM(prezzo_dirittochiamata) FROM in_interventi_tecnici GROUP BY idintervento HAVING idintervento=in_interventi.id) AS `tot_dirittochiamata`, (SELECT SUM(km) FROM in_interventi_tecnici GROUP BY idintervento HAVING idintervento=in_interventi.id) AS `tot_km`, (SELECT SUM(ore*prezzo_ore_unitario) FROM in_interventi_tecnici GROUP BY idintervento HAVING idintervento=in_interventi.id) AS `tot_ore_consuntivo`, (SELECT SUM(prezzo_km_consuntivo) FROM in_interventi_tecnici GROUP BY idintervento HAVING idintervento=in_interventi.id) AS `tot_km_consuntivo`, in_interventi.descrizione AS `descrizione_intervento`, richiesta FROM in_interventi INNER JOIN in_tipiintervento ON in_interventi.idtipointervento=in_tipiintervento.idtipointervento WHERE id='.prepare($idintervento).' '.Modules::getAdditionalsQuery('Interventi'); +$query = 'SELECT in_interventi.*, (SELECT numero FROM co_contratti WHERE id=(SELECT idcontratto FROM co_righe_contratti WHERE idintervento=in_interventi.id)) AS numero_contratto, (SELECT numero FROM co_preventivi WHERE id=(SELECT idpreventivo FROM co_preventivi_interventi WHERE idintervento=in_interventi.id ORDER BY idpreventivo DESC LIMIT 0,1)) AS numero_preventivo, (SELECT SUM(prezzo_dirittochiamata) FROM in_interventi_tecnici GROUP BY idintervento HAVING idintervento=in_interventi.id) AS `tot_dirittochiamata`, (SELECT SUM(km) FROM in_interventi_tecnici GROUP BY idintervento HAVING idintervento=in_interventi.id) AS `tot_km`, (SELECT SUM(ore*prezzo_ore_unitario) FROM in_interventi_tecnici GROUP BY idintervento HAVING idintervento=in_interventi.id) AS `tot_ore_consuntivo`, (SELECT SUM(prezzo_km_consuntivo) FROM in_interventi_tecnici GROUP BY idintervento HAVING idintervento=in_interventi.id) AS `tot_km_consuntivo`, in_interventi.descrizione AS `descrizione_intervento`, richiesta FROM in_interventi INNER JOIN in_tipiintervento ON in_interventi.idtipointervento=in_tipiintervento.idtipointervento WHERE id='.prepare($id_record).' '.Modules::getAdditionalsQuery('Interventi'); $records = $dbo->fetchArray($query); -$costi_intervento = get_costi_intervento($idintervento); +$costi_intervento = get_costi_intervento($id_record); $id_cliente = $records[0]['idanagrafica']; $id_sede = $records[0]['idsede']; @@ -22,5 +22,3 @@ $custom = [ 'intervento_data' => Translator::dateToLocale($records[0]['data_richiesta']), 'commessa_numero' => !empty($records[0]['numero_preventivo']) ? $records[0]['codice'] : ' ', ]; - -$mostra_prezzi = get_var("Visualizza i costi sulle stampe degli interventi"); diff --git a/templates/magazzino_inventario/pdfgen.magazzino_inventario.php b/templates/magazzino_inventario/pdfgen.magazzino_inventario.php index 556f666ea..92bda994a 100644 --- a/templates/magazzino_inventario/pdfgen.magazzino_inventario.php +++ b/templates/magazzino_inventario/pdfgen.magazzino_inventario.php @@ -6,10 +6,10 @@ include_once __DIR__.'/../../core.php'; $report = file_get_contents($docroot.'/templates/magazzino_inventario/magazzino_inventario.html'); $body = file_get_contents($docroot.'/templates/magazzino_inventario/magazzino_inventario_body.html'); -$search_codice = get('search_codice'); -$search_descrizione = get('search_descrizione'); -$search_categoria = get('search_categoria').' '.get('search_subcategoria'); -$search_tipo = get('search_tipo'); +$search_codice = $_GET['search_codice']; +$search_descrizione = $_GET['search_descrizione']; +$search_categoria = $_GET['search_categoria'].' '.$_GET['search_subcategoria']; +$search_tipo = $_GET['search_tipo']; if ($search_tipo == '') { $search_tipo = 'solo prodotti attivi'; diff --git a/templates/ordini/body.php b/templates/ordini/body.php index 2ea6163d5..cb5f41b1a 100644 --- a/templates/ordini/body.php +++ b/templates/ordini/body.php @@ -32,7 +32,7 @@ echo " '; // RIGHE PREVENTIVO CON ORDINAMENTO UNICO -$righe = $dbo->fetchArray("SELECT *, IFNULL((SELECT codice FROM mg_articoli WHERE id=idarticolo),'') AS codice_articolo, (SELECT percentuale FROM co_iva WHERE id=idiva) AS perc_iva FROM `or_righe_ordini` WHERE idordine=".prepare($idordine).' ORDER BY `order`'); +$righe = $dbo->fetchArray("SELECT *, IFNULL((SELECT codice FROM mg_articoli WHERE id=idarticolo),'') AS codice_articolo, (SELECT percentuale FROM co_iva WHERE id=idiva) AS perc_iva FROM `or_righe_ordini` WHERE idordine=".prepare($id_record).' ORDER BY `order`'); foreach ($righe as $r) { $count = 0; $count += ceil(strlen($r['descrizione']) / $autofill['words']); @@ -62,7 +62,7 @@ foreach ($righe as $r) { ".(empty($r['qta']) ? '' : Translator::numberToLocale($r['qta'])).' '.$r['um'].' '; - if ($mostra_prezzi) { + if ($options['pricing']) { // Prezzo unitario echo " '; // TOTALE COSTI FINALI -if ($mostra_prezzi) { +if ($options['pricing']) { // Totale imponibile echo ' diff --git a/templates/ordini/init.php b/templates/ordini/init.php index 2d19fcd99..405ff1be6 100644 --- a/templates/ordini/init.php +++ b/templates/ordini/init.php @@ -5,7 +5,7 @@ include_once __DIR__.'/../../core.php'; $module_name = 'Preventivi'; // Lettura info fattura -$records = $dbo->fetchArray('SELECT *, (SELECT descrizione FROM or_tipiordine WHERE or_tipiordine.id=idtipoordine) AS tipo_doc, (SELECT descrizione FROM co_pagamenti WHERE id=idpagamento) AS tipo_pagamento FROM or_ordini WHERE id='.prepare($idordine)); +$records = $dbo->fetchArray('SELECT *, (SELECT descrizione FROM or_tipiordine WHERE or_tipiordine.id=idtipoordine) AS tipo_doc, (SELECT descrizione FROM co_pagamenti WHERE id=idpagamento) AS tipo_pagamento FROM or_ordini WHERE id='.prepare($id_record)); $id_cliente = $records[0]['idanagrafica']; $id_sede = $records[0]['idsede']; @@ -20,5 +20,3 @@ $custom = [ 'data' => Translator::dateToLocale($records[0]['data']), 'pagamento' => $records[0]['tipo_pagamento'], ]; - -$mostra_prezzi = get_var('Stampa i prezzi sugli ordini'); diff --git a/templates/partitario_mastrino/pdfgen.partitario_mastrino.php b/templates/partitario_mastrino/pdfgen.partitario_mastrino.php index fa059465e..d38a2f96d 100644 --- a/templates/partitario_mastrino/pdfgen.partitario_mastrino.php +++ b/templates/partitario_mastrino/pdfgen.partitario_mastrino.php @@ -2,7 +2,7 @@ include_once __DIR__.'/../../core.php'; -$idconto = get('idconto'); +$idconto = $_GET['idconto']; $module_name = 'Piano dei conti'; // carica report html @@ -11,7 +11,7 @@ $body = file_get_contents($docroot.'/templates/partitario_mastrino/partitario_bo include_once $docroot.'/templates/pdfgen_variables.php'; // Calcolo il percorso piano dei conti -if (get('lev') == '3') { +if ($_GET['lev'] == '3') { $rs = $dbo->fetchArray("SELECT idpianodeiconti2, CONCAT_WS(' ', numero, descrizione ) AS descrizione FROM co_pianodeiconti3 WHERE id=\"".$idconto.'"'); $percorso = $rs[0]['descrizione']; $idpianodeiconti2 = $rs[0]['idpianodeiconti2']; @@ -24,7 +24,7 @@ if (get('lev') == '3') { ($rs[0]['descrizione'] == '01 Patrimoniale') ? $descrizione = 'Stato patrimoniale' : $descrizione = 'Conto economico'; $percorso = $descrizione.'
  '.$percorso; -} elseif (get('lev') == '2') { +} elseif ($_GET['lev'] == '2') { $rs = $dbo->fetchArray("SELECT idpianodeiconti1, CONCAT_WS(' ', numero, descrizione ) AS descrizione FROM co_pianodeiconti2 WHERE id=\"".$idconto.'"'); $percorso = $rs[0]['descrizione'].'
    '.$percorso; $idpianodeiconti1 = $rs[0]['idpianodeiconti1']; @@ -33,7 +33,7 @@ if (get('lev') == '3') { ($rs[0]['descrizione'] == '01 Patrimoniale') ? $descrizione = 'Stato patrimoniale' : $descrizione = 'Conto economico'; $percorso = $descrizione.'
  '.$percorso; -} elseif (get('lev') == '1') { +} elseif ($_GET['lev'] == '1') { $rs = $dbo->fetchArray("SELECT CONCAT_WS(' ', numero, descrizione ) AS descrizione FROM co_pianodeiconti1 WHERE id=\"".$idconto.'"'); ($rs[0]['descrizione'] == '01 Patrimoniale') ? $descrizione = 'Stato patrimoniale' : $descrizione = 'Conto economico'; @@ -46,7 +46,7 @@ $body = str_replace('|period_start|', Translator::dateToLocale($_SESSION['period $body = str_replace('|period_end|', Translator::dateToLocale($_SESSION['period_end']), $body); // Stampa da livello 3 -if (get('lev') == '3') { +if ($_GET['lev'] == '3') { $body .= "
- '.($mostra_prezzi ? Translator::numberToLocale($r['prezzo_vendita']).' €' : '-').' + '.($options['pricing'] ? Translator::numberToLocale($r['prezzo_vendita']).' €' : '-').' - '.($mostra_prezzi ? Translator::numberToLocale($netto) : '-').' + '.($options['pricing'] ? Translator::numberToLocale($netto) : '-').'
@@ -133,7 +133,7 @@ echo '
\n"; @@ -101,7 +101,7 @@ if (get('lev') == '3') { } // Stampa da livello 2 -elseif (get('lev') == '2') { +elseif ($_GET['lev'] == '2') { $body .= "
\n"; @@ -155,7 +155,7 @@ elseif (get('lev') == '2') { } // Stampa completa bilancio -elseif (get('lev') == '1') { +elseif ($_GET['lev'] == '1') { $ricavi = 0; $costi = 0; $totale_attivita = 0; diff --git a/templates/preventivi/body.php b/templates/preventivi/body.php index d8f36638b..d1f715c63 100644 --- a/templates/preventivi/body.php +++ b/templates/preventivi/body.php @@ -2,7 +2,7 @@ include_once __DIR__.'/../../core.php'; -$report_name = 'preventivo_'.$idpreventivo.'.pdf'; +$report_name = 'preventivo_'.$id_record.'.pdf'; $autofill = [ 'count' => 0, // Conteggio delle righe @@ -81,7 +81,7 @@ echo " '; // RIGHE PREVENTIVO CON ORDINAMENTO UNICO -$righe = $dbo->fetchArray("SELECT *, IFNULL((SELECT codice FROM mg_articoli WHERE id=idarticolo),'') AS codice, (SELECT percentuale FROM co_iva WHERE id=idiva) AS perc_iva FROM `co_righe_preventivi` WHERE idpreventivo=".prepare($idpreventivo).' ORDER BY `order`'); +$righe = $dbo->fetchArray("SELECT *, IFNULL((SELECT codice FROM mg_articoli WHERE id=idarticolo),'') AS codice, (SELECT percentuale FROM co_iva WHERE id=idiva) AS perc_iva FROM `co_righe_preventivi` WHERE idpreventivo=".prepare($id_record).' ORDER BY `order`'); foreach ($righe as $r) { $count = 0; $count += ceil(strlen($r['descrizione']) / $autofill['words']); @@ -111,7 +111,7 @@ foreach ($righe as $r) { ".(empty($r['qta']) ? '' : Translator::numberToLocale($r['qta'])).' '.$r['um'].' '; - if ($mostra_prezzi) { + if ($options['pricing']) { // Prezzo unitario echo " '; // TOTALE COSTI FINALI -if ($mostra_prezzi) { +if ($options['pricing']) { // Totale imponibile echo ' diff --git a/templates/preventivi/init.php b/templates/preventivi/init.php index 478368e64..108b5adc8 100644 --- a/templates/preventivi/init.php +++ b/templates/preventivi/init.php @@ -5,9 +5,7 @@ include_once __DIR__.'/../../core.php'; $module_name = 'Preventivi'; // Lettura info fattura -$records = $dbo->fetchArray('SELECT *, data_bozza AS data FROM co_preventivi WHERE co_preventivi.id='.prepare($idpreventivo)); +$records = $dbo->fetchArray('SELECT *, data_bozza AS data FROM co_preventivi WHERE co_preventivi.id='.prepare($id_record)); $id_cliente = $records[0]['idanagrafica']; $id_sede = $records[0]['idsede']; - -$mostra_prezzi = get_var('Stampa i prezzi sui preventivi'); diff --git a/templates/preventivi_cons/body.php b/templates/preventivi_cons/body.php index 41791aa77..8b0470d9e 100644 --- a/templates/preventivi_cons/body.php +++ b/templates/preventivi_cons/body.php @@ -4,7 +4,7 @@ include_once __DIR__.'/../../core.php'; include_once $docroot.'/modules/interventi/modutil.php'; -$report_name = 'preventivo_'.$idpreventivo.'_cons.pdf'; +$report_name = 'preventivo_'.$id_record.'_cons.pdf'; echo '
@@ -59,7 +59,7 @@ if (!empty($records[0]['descrizione'])) { $sconto = []; $imponibile = []; -$interventi = $dbo->fetchArray('SELECT *, in_interventi.id, in_interventi.codice, (SELECT GROUP_CONCAT(DISTINCT ragione_sociale) FROM in_interventi_tecnici JOIN an_anagrafiche ON an_anagrafiche.idanagrafica = in_interventi_tecnici.idtecnico WHERE idintervento=in_interventi.id) AS tecnici, (SELECT MIN(orario_inizio) FROM in_interventi_tecnici WHERE idintervento=in_interventi.id) AS inizio, (SELECT SUM(ore) FROM in_interventi_tecnici WHERE idintervento=in_interventi.id) AS ore, (SELECT SUM(km) FROM in_interventi_tecnici WHERE idintervento=in_interventi.id) AS km FROM co_preventivi_interventi JOIN in_interventi ON co_preventivi_interventi.idintervento=in_interventi.id WHERE co_preventivi_interventi.idpreventivo='.prepare($idpreventivo).' ORDER BY inizio DESC'); +$interventi = $dbo->fetchArray('SELECT *, in_interventi.id, in_interventi.codice, (SELECT GROUP_CONCAT(DISTINCT ragione_sociale) FROM in_interventi_tecnici JOIN an_anagrafiche ON an_anagrafiche.idanagrafica = in_interventi_tecnici.idtecnico WHERE idintervento=in_interventi.id) AS tecnici, (SELECT MIN(orario_inizio) FROM in_interventi_tecnici WHERE idintervento=in_interventi.id) AS inizio, (SELECT SUM(ore) FROM in_interventi_tecnici WHERE idintervento=in_interventi.id) AS ore, (SELECT SUM(km) FROM in_interventi_tecnici WHERE idintervento=in_interventi.id) AS km FROM co_preventivi_interventi JOIN in_interventi ON co_preventivi_interventi.idintervento=in_interventi.id WHERE co_preventivi_interventi.idpreventivo='.prepare($id_record).' ORDER BY inizio DESC'); if (!empty($interventi)) { // Interventi @@ -456,7 +456,7 @@ $imponibile = sum($imponibile); $totale = $imponibile - $sconto; -$rs = $dbo->fetchArray('SELECT SUM(subtotale) as budget FROM `co_righe_preventivi` WHERE idpreventivo = '.prepare($idpreventivo)); +$rs = $dbo->fetchArray('SELECT SUM(subtotale) as budget FROM `co_righe_preventivi` WHERE idpreventivo = '.prepare($id_record)); $budget = $rs[0]['budget']; $rapporto = $budget - $totale; diff --git a/templates/preventivi_cons/init.php b/templates/preventivi_cons/init.php index beb880fec..de2488afe 100644 --- a/templates/preventivi_cons/init.php +++ b/templates/preventivi_cons/init.php @@ -5,7 +5,7 @@ include_once __DIR__.'/../../core.php'; $module_name = 'Preventivi'; // Lettura info fattura -$records = $dbo->fetchArray('SELECT *, data_bozza AS data FROM co_preventivi WHERE id='.prepare($idpreventivo)); +$records = $dbo->fetchArray('SELECT *, data_bozza AS data FROM co_preventivi WHERE id='.prepare($id_record)); $id_cliente = $records[0]['idanagrafica']; $id_sede = $records[0]['idsede']; diff --git a/templates/riepilogo_contratti/contratto.html b/templates/riepilogo_contratti/contratto.html deleted file mode 100644 index 8caf2af02..000000000 --- a/templates/riepilogo_contratti/contratto.html +++ /dev/null @@ -1,17 +0,0 @@ - - - - $body$ - diff --git a/templates/riepilogo_contratti/contratto_body.html b/templates/riepilogo_contratti/contratto_body.html deleted file mode 100644 index a37508a03..000000000 --- a/templates/riepilogo_contratti/contratto_body.html +++ /dev/null @@ -1,27 +0,0 @@ - -
@@ -182,7 +182,7 @@ echo '
- - - - - - -
- Logo
- $f_ragionesociale$ - $f_indirizzo$ - $f_citta_full$ - $f_piva$ - $f_codicefiscale$ - $f_capsoc$ - $f_telefono$ - $f_sitoweb$ - $f_email$ -
- Spett.le $c_ragionesociale$ - $c_indirizzo$ - $c_citta$ - $c_piva$ -
-
- diff --git a/templates/riepilogo_contratti/logo_azienda.jpg b/templates/riepilogo_contratti/logo_azienda.jpg deleted file mode 100644 index 3fd3914522510a5f6af55ca002d656131577943f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4348 zcmcIG2UJtpwl@VrCxoJO0wL0+iU>%N7AX=0X-XSViqaGWl->m-1e5`!S7|~75d=X3 zN^z7RHAo$0C`u6!6#_qDW_+&y)_d>IU-Qnn>)hSXzWeNb_t_uYp8?>f4KM}(2m}J0 zs1w+q08Rn)P&#@#C_OzLJq$+AzyxPvVq|3EVq<54AL2TE_z)Kl51*j8Fdx5|01uCd zjEETeh@_MxuduAVtc1L{gro$`2nYs)F)=W4GBI&V@bU0T{N=IV32-m~J|H;=hyws~ zfFK;8{VsqX009uHw;YHsSymH+?*e`4T3wM!=3P%0DwPvc>F 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 pzkP8z7RFBvfetchArray($query); - -// Se il cliente è uno solo carico la sua intestazione, altrimenti la lascio in bianco -$idcliente = $rsi[0]['idanagrafica']; -$singolo_cliente = true; -for ($i = 0; $i < sizeof($rs); ++$i) { - if ($rs[$i]['idanagrafica'] != $idcliente) { - $singolo_cliente = false; - } -} - -if (!$singolo_cliente) { - $idcliente = ''; -} - -// carica report html -$report = file_get_contents($docroot.'/templates/riepilogo_contratti/contratto.html'); -$body = file_get_contents($docroot.'/templates/riepilogo_contratti/contratto_body.html'); - -if (!$singolo_cliente) { - $body = str_replace('Spett.le', '', $body); -} - -include_once $docroot.'/templates/pdfgen_variables.php'; - -$body .= 'RIEPILOGO CONTRATTI DAL '.$search_datastart.' al '.$search_dataend."

\n"; - -// Sostituisco i valori tra | | con il valore del campo del db -$body .= preg_replace('/|(.+?)|/', $rs[0]['${1}'], $body); - -// Tabella con riepilogo contratti -$body .= "\n"; -$body .= "\n"; -$body .= "\n"; -$body .= "\n"; - -$body .= "\n"; - -$body .= "\n"; - -$body .= "\n"; - -$body .= "\n"; - -$body .= "\n"; - -$body .= "\n"; -$body .= "\n"; - -$body .= "\n"; - -// Tabella con i dati -for ($i = 0; $i < sizeof($rs); ++$i) { - $data_accettazione = Translator::dateToLocale($rs[$i]['data_accettazione']); - $data_conclusione = Translator::dateToLocale($rs[$i]['data_conclusione']); - - if ($data_accettazione == '01/01/1970') { - $data_accettazione = ''; - } - - if ($data_conclusione == '01/01/1970') { - $data_conclusione = ''; - } - - $body .= "\n"; - - $body .= "\n"; - - $body .= "\n"; - - $body .= "\n"; - - $body .= "\n"; - - $body .= "\n"; - - $body .= "\n"; - - $totale += $rs[$i]['budget_totale']; -} - -// Totale -$body .= "\n"; - -$body .= "\n"; - -$body .= "\n"; -$body .= "
\n"; -$body .= " Numero\n"; -$body .= "\n"; -$body .= " Ragione sociale\n"; -$body .= "\n"; -$body .= " Nome\n"; -$body .= "\n"; -$body .= " Stato\n"; -$body .= "\n"; -$body .= " Data inizio\n"; -$body .= "\n"; -$body .= " Data conclusione\n"; -$body .= "\n"; -$body .= " Budget\n"; -$body .= "
\n"; - $body .= ' '.$rs[$i]['numero']."\n"; - $body .= "\n"; - $body .= ' '.str_replace(' ', ' ', $rs[$i]['ragione_sociale'])."\n"; - $body .= "\n"; - $body .= ' '.str_replace(' ', ' ', $rs[$i]['nome'])."\n"; - $body .= "\n"; - $body .= ' '.str_replace(' ', ' ', $rs[$i]['stato'])."\n"; - $body .= "\n"; - $body .= ' '.$data_accettazione."\n"; - $body .= "\n"; - $body .= ' '.$data_conclusione."\n"; - $body .= "\n"; - $body .= ' '.Translator::numberToLocale($rs[$i]['budget_totale']).' €\n'; - $body .= "
\n"; -$body .= " TOTALE:\n"; -$body .= "\n"; -$body .= ' '.Translator::numberToLocale($totale)." €\n"; -$body .= "
\n"; - -$orientation = 'L'; -$report_name = 'Riepilogo_contratti.pdf'; diff --git a/templates/riepilogo_interventi/pdfgen.riepilogo_interventi.php b/templates/riepilogo_interventi/pdfgen.riepilogo_interventi.php index b574357ad..a36a570ec 100644 --- a/templates/riepilogo_interventi/pdfgen.riepilogo_interventi.php +++ b/templates/riepilogo_interventi/pdfgen.riepilogo_interventi.php @@ -4,7 +4,7 @@ include_once __DIR__.'/../../core.php'; $module_name = 'Interventi'; -$id_module = get('id_module'); +$id_module = $_GET['id_module']; $fields = []; $select = '*'; diff --git a/templates/scadenzario/pdfgen.scadenzario.php b/templates/scadenzario/pdfgen.scadenzario.php index e07bcc32f..93411526d 100644 --- a/templates/scadenzario/pdfgen.scadenzario.php +++ b/templates/scadenzario/pdfgen.scadenzario.php @@ -13,10 +13,10 @@ include_once $docroot.'/templates/pdfgen_variables.php'; /* Dati scadenzario */ -if (get('type') == 'clienti') { +if ($_GET['type'] == 'clienti') { $titolo = 'Scadenzario clienti'; $add_where = "AND co_tipidocumento.dir='entrata'"; -} elseif (get('type') == 'fornitori') { +} elseif ($_GET['type'] == 'fornitori') { $titolo = 'Scadenzario fornitori'; $add_where = "AND co_tipidocumento.dir='uscita'"; } else { diff --git a/update/2_3_1.sql b/update/2_3_1.sql new file mode 100644 index 000000000..75ed6c5df --- /dev/null +++ b/update/2_3_1.sql @@ -0,0 +1,67 @@ +-- +-- Struttura della tabella `zz_prints` +-- + +CREATE TABLE IF NOT EXISTS `zz_prints` ( + `id` int(11) NOT NULL AUTO_INCREMENT, + `id_module` int(11) NOT NULL, + `name` varchar(255) NOT NULL, + `title` varchar(255) NOT NULL, + `directory` varchar(50) NOT NULL, + `previous` varchar(50) NOT NULL, + `options` text NOT NULL, + `icon` varchar(255) NOT NULL, + `version` varchar(15) NOT NULL, + `compatibility` varchar(1000) NOT NULL, + `order` int(11) NOT NULL, + `main` tinyint(1) NOT NULL, + `default` tinyint(1) NOT NULL, + `enabled` tinyint(1) NOT NULL, + PRIMARY KEY (`id`), + FOREIGN KEY (`id_module`) REFERENCES `zz_modules`(`id`) ON DELETE CASCADE +) ENGINE=InnoDB; + +-- Inserimento delle stampe di base +INSERT INTO `zz_prints` (`id_module`, `name`, `directory`, `options`, `previous`, `enabled`, `default`) VALUES +((SELECT `id` FROM `zz_modules` WHERE `name` = 'Fatture di vendita'), 'Fattura di vendita', 'fatture', 'iddocumento', '', 1, 1), +((SELECT `id` FROM `zz_modules` WHERE `name` = 'Interventi'), 'Riepilogo intervento', 'riepilogo_interventi', '', '', 1, 1), +((SELECT `id` FROM `zz_modules` WHERE `name` = 'Articoli'), 'Inventario magazzino', 'magazzino_inventario', '', '', 1, 1), +((SELECT `id` FROM `zz_modules` WHERE `name` = 'Piano dei conti'), 'Mastrino', 'partitario_mastrino', '', 'idconto', 1, 1), +((SELECT `id` FROM `zz_modules` WHERE `name` = 'Scadenzario'), 'Scadenziario', 'scadenzario', '', '', 1, 1), +((SELECT `id` FROM `zz_modules` WHERE `name` = 'Stampe contabili'), 'Registro IVA', 'registro_iva', '', '', 1, 1), +((SELECT `id` FROM `zz_modules` WHERE `name` = 'Stampe contabili'), 'Fatturato', 'fatturato', '', '', 1, 1), +((SELECT `id` FROM `zz_modules` WHERE `name` = 'Stampe contabili'), 'Spesometro', 'spesometro', '', '', 1, 1); + +-- Inserimento delle stampe con prezzo disabilitato +INSERT INTO `zz_prints` (`id_module`, `name`, `directory`, `options`, `previous`, `enabled`, `default`) VALUES +((SELECT `id` FROM `zz_modules` WHERE `name` = 'Contratti'), 'Contratto (senza costi)', 'contratti', '{"pricing":false}', 'idcontratto', 1, 1), +((SELECT `id` FROM `zz_modules` WHERE `name` = 'Interventi'), 'Intervento (senza costi)', 'interventi', '{"pricing":false}', 'idintervento', 1, 1), +((SELECT `id` FROM `zz_modules` WHERE `name` = 'Ordini cliente'), 'Ordine clienti (senza costi)', 'ordini', '{"pricing":false}', 'idordine', 1, 1), +((SELECT `id` FROM `zz_modules` WHERE `name` = 'Ddt di vendita'), 'Ddt di vendita (senza costi)', 'ddt', '{"pricing":false}', 'idddt', 1, 1), +((SELECT `id` FROM `zz_modules` WHERE `name` = 'Preventivi'), 'Preventivo (senza costi)', 'preventivi', '{"pricing":false}', 'idpreventivo', 1, 1), +((SELECT `id` FROM `zz_modules` WHERE `name` = 'Contratti'), 'Consuntivo contratto (senza costi)', 'contratti_cons', '{"pricing":false}', 'idcontratto', 1, 1), +((SELECT `id` FROM `zz_modules` WHERE `name` = 'Preventivi'), 'Consuntivo preventivo (senza costi)', 'preventivi_cons', '{"pricing":false}', 'idpreventivo', 1, 1), +((SELECT `id` FROM `zz_modules` WHERE `name` = 'Contratti'), 'Ordini di servizio pianificati (senza costi)', 'interventi_ordiniservizio', '{"pricing":false}', 'idintervento', 1, 1); + +-- Inserimento delle stampe con prezzo abilitate +INSERT INTO `zz_prints` (`id_module`, `name`, `directory`, `options`, `main`, `previous`, `enabled`, `default`) VALUES +((SELECT `id` FROM `zz_modules` WHERE `name` = 'Contratti'), 'Contratto', 'contratti', '{"pricing":true}', 1, 'idcontratto', 1, 1), +((SELECT `id` FROM `zz_modules` WHERE `name` = 'Interventi'), 'Intervento', 'interventi', '{"pricing":true}', 1, 'idintervento', 1, 1), +((SELECT `id` FROM `zz_modules` WHERE `name` = 'Ordini cliente'), 'Ordine clienti', 'ordini', '{"pricing":true}', 1, 'idordine', 1, 1), +((SELECT `id` FROM `zz_modules` WHERE `name` = 'Ddt di vendita'), 'Ddt di vendita', 'ddt', '{"pricing":true}', 1, 'idddt', 1, 1), +((SELECT `id` FROM `zz_modules` WHERE `name` = 'Preventivi'), 'Preventivo', 'preventivi', '{"pricing":true}', 1, 'idpreventivo', 1, 1), +((SELECT `id` FROM `zz_modules` WHERE `name` = 'Contratti'), 'Consuntivo contratto', 'contratti_cons', '{"pricing":true}', 1, 'idcontratto', 1, 1), +((SELECT `id` FROM `zz_modules` WHERE `name` = 'Preventivi'), 'Consuntivo preventivo', 'preventivi_cons', '{"pricing":true}', 1, 'idpreventivo', 1, 1), +((SELECT `id` FROM `zz_modules` WHERE `name` = 'Contratti'), 'Ordini di servizio pianificati', 'interventi_ordiniservizio', '{"pricing":true}', 1, 'idintervento', 1, 1); + +-- Impostazione dei titoli di default +UPDATE `zz_prints` SET `title` = `name` WHERE `title` = ''; + +-- Impostazione delle icone di default +UPDATE `zz_prints` SET `icon` = 'fa fa-print' WHERE `icon` = ''; + +-- DELETE FROM `zz_settings` WHERE `nome` = 'Stampa i prezzi sui contratti'; +-- DELETE FROM `zz_settings` WHERE `nome` = 'Stampa i prezzi sui ddt'; +-- DELETE FROM `zz_settings` WHERE `nome` = 'Visualizza i costi sulle stampe degli interventi'; +-- DELETE FROM `zz_settings` WHERE `nome` = 'Stampa i prezzi sugli ordini'; +-- DELETE FROM `zz_settings` WHERE `nome` = 'Stampa i prezzi sui preventivi';