From 5499e01effdd97d66868d01a7750292ee1646d85 Mon Sep 17 00:00:00 2001 From: Beppe Date: Mon, 14 Jun 2021 18:34:55 +0200 Subject: [PATCH 1/2] Plugin allegati dell'anagrafica --- modules/anagrafiche/plugins/allegati.php | 154 +++++++++++++++++++++++ update/2_4_24.sql | 5 +- 2 files changed, 158 insertions(+), 1 deletion(-) create mode 100755 modules/anagrafiche/plugins/allegati.php diff --git a/modules/anagrafiche/plugins/allegati.php b/modules/anagrafiche/plugins/allegati.php new file mode 100755 index 000000000..ce609f188 --- /dev/null +++ b/modules/anagrafiche/plugins/allegati.php @@ -0,0 +1,154 @@ +. + */ + +use Modules\Anagrafiche\Anagrafica; +use Models\Upload; + +include_once __DIR__.'/../../../core.php'; + +//Controllo i permessi dei modulo per la visualizzazione degli allegati +$rs = $dbo->table('zz_permissions')->where('idgruppo',$user->idgruppo)->get(); +$permessi = []; +foreach($rs as $r){ + $permessi[] = $r->idmodule; +} + +$documenti[] = [ + 'id_module' => $id_module, + 'id_record' => $id_record, + 'descrizione' => "Allegato dell'anagrafica", +]; + +//Interventi dell'anagrafica +if( $user->is_admin || in_array(Modules::get('Interventi')['id'],$permessi) ){ + $interventi = $dbo->fetcharray("SELECT ".prepare(Modules::get('Interventi')['id'])." AS id_module, id AS id_record, CONCAT('Intervento num. ',codice,' del ',DATE_FORMAT(data_richiesta,'%d/%m/%Y')) AS descrizione FROM in_interventi WHERE idanagrafica=".prepare($id_record)); + $documenti = array_merge($documenti, $interventi); +} + +//Preventivi dell'anagrafica +if( $user->is_admin || in_array(Modules::get('Preventivi')['id'],$permessi) ){ + $preventivi = $dbo->fetcharray("SELECT ".prepare(Modules::get('Preventivi')['id'])." AS id_module, id AS id_record, CONCAT('Preventivo num. ',numero,' del ',DATE_FORMAT(data_bozza,'%d/%m/%Y')) AS descrizione FROM co_preventivi WHERE idanagrafica=".prepare($id_record)); + $documenti = array_merge($documenti, $preventivi); +} + +//Contratti dell'anagrafica +if( $user->is_admin || in_array(Modules::get('Contratti')['id'],$permessi) ){ + $contratti = $dbo->fetcharray("SELECT ".prepare(Modules::get('Contratti')['id'])." AS id_module, id AS id_record, CONCAT('Preventivo num. ',numero,' del ',DATE_FORMAT(data_bozza,'%d/%m/%Y')) AS descrizione FROM co_contratti WHERE idanagrafica=".prepare($id_record)); + $documenti = array_merge($documenti, $contratti); +} + +//DDT dell'anagrafica +if( $user->is_admin || in_array(Modules::get('Ddt di vendita')['id'],$permessi) ){ + $ddt_vendita = $dbo->fetcharray("SELECT ".prepare(Modules::get('Ddt di vendita')['id'])." AS id_module, id AS id_record, CONCAT('Ddt di vendita num. ',IFNULL(numero_esterno,numero),' del ',DATE_FORMAT(data,'%d/%m/%Y')) AS descrizione FROM dt_ddt WHERE idanagrafica=".prepare($id_record)); + $documenti = array_merge($documenti, $ddt_vendita); +} + +if( $user->is_admin || in_array(Modules::get('Ddt di acquisto')['id'],$permessi) ){ + $ddt_acquisto = $dbo->fetcharray("SELECT ".prepare(Modules::get('Ddt di acquisto')['id'])." AS id_module, id AS id_record, CONCAT('Ddt di acquisto num. ',IFNULL(numero_esterno,numero),' del ',DATE_FORMAT(data,'%d/%m/%Y')) AS descrizione FROM dt_ddt WHERE idanagrafica=".prepare($id_record)); + $documenti = array_merge($documenti, $ddt_acquisto); +} + +//Fatture dell'anagrafica +if( $user->is_admin || in_array(Modules::get('Fatture di vendita')['id'],$permessi) ){ + $fatture_vendita = $dbo->fetcharray("SELECT ".prepare(Modules::get('Fatture di vendita')['id'])." AS id_module, id AS id_record, CONCAT('Fattura di vendita num. ',IFNULL(numero_esterno,numero),' del ',DATE_FORMAT(data_registrazione,'%d/%m/%Y')) AS descrizione FROM co_documenti WHERE idanagrafica=".prepare($id_record)); + $documenti = array_merge($documenti, $fatture_vendita); +} + +if( $user->is_admin || in_array(Modules::get('Fatture di acquisto')['id'],$permessi) ){ + $fatture_acquisto = $dbo->fetcharray("SELECT ".prepare(Modules::get('Fatture di acquisto')['id'])." AS id_module, id AS id_record, CONCAT('Fattura di acquisto num. ',IFNULL(numero_esterno,numero),' del ',DATE_FORMAT(data_registrazione,'%d/%m/%Y')) AS descrizione FROM co_documenti WHERE idanagrafica=".prepare($id_record)); + $documenti = array_merge($documenti, $fatture_acquisto); +} + +//Ordini dell'anagrafica +if( $user->is_admin || in_array(Modules::get('Ordini cliente')['id'],$permessi) ){ + $ordini_vendita = $dbo->fetcharray("SELECT ".prepare(Modules::get('Ordini cliente')['id'])." AS id_module, id AS id_record, CONCAT('Ordine cliente num. ',IFNULL(numero_esterno,numero),' del ',DATE_FORMAT(data,'%d/%m/%Y')) AS descrizione FROM or_ordini WHERE idanagrafica=".prepare($id_record)); + $documenti = array_merge($documenti, $ordini_vendita); +} + +if( $user->is_admin || in_array(Modules::get('Ordini fornitore')['id'],$permessi) ){ + $ordini_acquisto = $dbo->fetcharray("SELECT ".prepare(Modules::get('Ordini fornitore')['id'])." AS id_module, id AS id_record, CONCAT('Ordine fornitore num. ',IFNULL(numero_esterno,numero),' del ',DATE_FORMAT(data,'%d/%m/%Y')) AS descrizione FROM or_ordini WHERE idanagrafica=".prepare($id_record)); + $documenti = array_merge($documenti, $ordini_acquisto); +} + +//Allegati dell'anagrafica +echo ' +
+
+

'.tr('Allegati dell\'anagrafica').'

+
+
'; + + if (!empty($documenti)) { + echo ' + + + + + + + '; + + foreach($documenti as $documento){ + $allegati = $dbo->fetchArray("SELECT * FROM zz_files WHERE id_module=".prepare($documento['id_module'])." AND id_record=".prepare($documento['id_record'])); + + foreach($allegati as $allegato){ + $file = Upload::find($allegato['id']); + + echo ' + + + + + + '; + } + } + echo ' +
#'.tr('Allegato').''.tr('Documento').''.tr('Data').'
+ + + '; + + // Anteprime supportate dal browser + if ($file->hasPreview()) { + echo ' + '; + } else { + echo ' + '; + } + + echo ' + + + '.$file->name.' + + '.Modules::link(Modules::get($allegato['id_module'])['name'], $file->id_record, $documento['descrizione']).''.Translator::dateToLocale($file->created_at).'
'; + } else { + echo ' +
'.tr('Nessun allegato per questa anagrafica').'.
'; + } + +echo ' +
+
'; \ No newline at end of file diff --git a/update/2_4_24.sql b/update/2_4_24.sql index 302c82951..d9045d502 100644 --- a/update/2_4_24.sql +++ b/update/2_4_24.sql @@ -21,4 +21,7 @@ INSERT INTO `zz_settings` (`id`, `nome`, `valore`, `tipo`, `editable`, `sezione` -- Rinominate stampe ordini fornitore UPDATE `zz_prints` SET `title` = 'Richiesta di offerta (RdO)' WHERE `zz_prints`.`name` = 'Ordine fornitore (senza costi)'; -UPDATE `zz_prints` SET `title` = 'Richiesta di acquisto (RdA)' WHERE `zz_prints`.`name` = 'Ordine fornitore'; \ No newline at end of file +UPDATE `zz_prints` SET `title` = 'Richiesta di acquisto (RdA)' WHERE `zz_prints`.`name` = 'Ordine fornitore'; + +-- Aggiunta plugin allegati dell'anagrafica +INSERT INTO `zz_plugins` (`name`, `title`, `idmodule_from`, `idmodule_to`, `position`, `script`, `enabled`, `default`, `order`, `compatibility`, `version`, `options2`, `options`, `directory`, `help`) VALUES ('Allegati', 'Allegati', (SELECT `zz_modules`.`id` FROM `zz_modules` WHERE `zz_modules`.`name`='Anagrafiche'), (SELECT `zz_modules`.`id` FROM `zz_modules` WHERE `zz_modules`.`name`='Anagrafiche'), 'tab', 'allegati.php', '1', '0', '0', '', '', NULL, NULL, '', ''); \ No newline at end of file From ca7cdfdd084c22e8c6b978e6a575346b5e5cfac4 Mon Sep 17 00:00:00 2001 From: Matteo Date: Tue, 15 Jun 2021 11:22:34 +0200 Subject: [PATCH 2/2] Aggiunta colonna scalare su stampa mastrino --- templates/partitario_mastrino/bottom.php | 1 + templates/partitario_mastrino/piece.php | 7 +++++++ templates/partitario_mastrino/top.php | 9 ++++++--- 3 files changed, 14 insertions(+), 3 deletions(-) diff --git a/templates/partitario_mastrino/bottom.php b/templates/partitario_mastrino/bottom.php index 74e50396d..be07e4aef 100644 --- a/templates/partitario_mastrino/bottom.php +++ b/templates/partitario_mastrino/bottom.php @@ -35,6 +35,7 @@ if (get('lev') == '2' || get('lev') == '3') { SALDO FINALE '.moneyFormat(abs($dare)).' '.moneyFormat(abs($avere)).' + '.moneyFormat(abs($scalare)).' '; } elseif (get('lev') == '1') { $totale_attivo = 0; diff --git a/templates/partitario_mastrino/piece.php b/templates/partitario_mastrino/piece.php index 24f3f13fc..aa90fc004 100644 --- a/templates/partitario_mastrino/piece.php +++ b/templates/partitario_mastrino/piece.php @@ -38,5 +38,12 @@ echo ' echo ' '.moneyFormat(abs($record['totale']), 2).''; } + + $scalare += $record['totale']; + + echo ' + + '.moneyFormat($scalare, 2).' + '; echo ''; $prev_titolo = $record['titolo']; diff --git a/templates/partitario_mastrino/top.php b/templates/partitario_mastrino/top.php index 5415188a5..bd065e5a9 100644 --- a/templates/partitario_mastrino/top.php +++ b/templates/partitario_mastrino/top.php @@ -24,9 +24,12 @@ echo ' DATA - DESCRIZIONE - DARE - AVERE + DESCRIZIONE + DARE + AVERE + SCALARE '; + + $scalare = 0; \ No newline at end of file