From 0aa197a5db67db52dd0ffc7f8f69a073cb19a761 Mon Sep 17 00:00:00 2001 From: Luca Date: Wed, 27 Jun 2018 12:28:28 +0200 Subject: [PATCH] =?UTF-8?q?Widget=20attivit=C3=A0=20senza=20nessun=20tecni?= =?UTF-8?q?co=20assegnato?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- include/top.php | 2 +- ...nti.pianificazionedashboard.interventi.php | 102 ++++++++++++++++++ update/2_4_1.sql | 3 + 3 files changed, 106 insertions(+), 1 deletion(-) create mode 100644 modules/interventi/widgets/interventi.pianificazionedashboard.interventi.php diff --git a/include/top.php b/include/top.php index 9f58e9c87..039576d0f 100644 --- a/include/top.php +++ b/include/top.php @@ -160,7 +160,7 @@ echo ' -
'; +
'; if (Auth::check()) { $calendar = ($_SESSION['period_start'] != date('Y').'-01-01' || $_SESSION['period_end'] != date('Y').'-12-31') ? 'red' : 'white'; diff --git a/modules/interventi/widgets/interventi.pianificazionedashboard.interventi.php b/modules/interventi/widgets/interventi.pianificazionedashboard.interventi.php new file mode 100644 index 000000000..9355a9d6d --- /dev/null +++ b/modules/interventi/widgets/interventi.pianificazionedashboard.interventi.php @@ -0,0 +1,102 @@ +fetchArray($qp); +$n = $dbo->fetchNum($qp); + +if (!empty($n)) { + + + // Elenco interventi da pianificare + foreach ($rsp as $i => $r) { + + // Se cambia il mese ricreo l'intestazione della tabella + if (!isset($rsp[$i - 1]) || $r['mese'] != $rsp[$i - 1]['mese']) { + if ($i == 0) { + $attr = ''; + $class = 'fa-minus-circle'; + } else { + $attr = 'style="display:none;"'; + $class = 'fa-plus-circle'; + } + + echo " +

+ + ".$mesi[intval(date('m', strtotime($r['data_richiesta']))) - 1].' '.date('Y', strtotime($r['data_richiesta'])).' + +

'; + + echo ' +
+ + + + + + + + + + + + + '; + } + + echo ' + + + + + + + '; + + echo ' + '; + + echo ' + '; + + if (!isset($rsp[$i + 1]) || $r['mese'] != $rsp[$i + 1]['mese']) { + echo ' + +
'.tr('Codice').''.tr('Cliente').''.tr('Data richiesta').''.tr('Tipo intervento').''.tr('Descrizione').''.tr('Sede').'
'.Modules::link(Modules::get('Interventi')['id'], $r['id'], $r['codice']).''.$r['ragione_sociale'].''.Translator::dateToLocale($r['data_richiesta']).''.$r['tipointervento'].''.nl2br($r['richiesta']).''; + // Sede + if ($r['idsede'] == '-1') { + echo '- '.('Nessuna').' -'; + } elseif (empty($r['idsede'])) { + echo tr('Sede legale'); + } else { + $rsp2 = $dbo->fetchArray("SELECT id, CONCAT( CONCAT_WS( ' (', CONCAT_WS(', ', nomesede, citta), indirizzo ), ')') AS descrizione FROM an_sedi WHERE id=".prepare($r['idsede'])); + + echo $rsp2[0]['descrizione']; + } + echo ' +
+
'; + } + } +} else { + echo ' +

'.tr('Non ci sono interventi da pianificare').'.

'; +} diff --git a/update/2_4_1.sql b/update/2_4_1.sql index 1ba9703e0..cfa5b11f9 100644 --- a/update/2_4_1.sql +++ b/update/2_4_1.sql @@ -295,3 +295,6 @@ ADD FOREIGN KEY (`id_field`) REFERENCES `zz_fields`(`id`) ON DELETE CASCADE; ALTER TABLE `zz_prints` ADD FOREIGN KEY (`id_module`) REFERENCES `zz_modules`(`id`) ON DELETE CASCADE; + +-- Widget per attività senza nessun tecnico assegnato +INSERT INTO `zz_widgets` (`id`, `name`, `type`, `id_module`, `location`, `class`, `query`, `bgcolor`, `icon`, `print_link`, `more_link`, `more_link_type`, `php_include`, `text`, `enabled`, `order`, `help`) VALUES (NULL, 'Attività da pianificare', 'stats', (SELECT id FROM zz_modules WHERE name = 'Dashboard'), 'controller_top', 'col-md-3', 'SELECT COUNT(id) AS dato FROM in_interventi WHERE id NOT IN (SELECT idintervento FROM in_interventi_tecnici) AND idstatointervento IN (SELECT idstatointervento FROM in_statiintervento WHERE completato = 0) ', '#6dab3c', 'fa fa-cogs', '', './modules/interventi/widgets/interventi.pianificazionedashboard.interventi.php', 'popup', '', 'Promemoria attività da pianificare', 1, '0', NULL);