diff --git a/CHANGELOG.md b/CHANGELOG.md index 71deac966..398357014 100755 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -39,6 +39,7 @@ Il formato utilizzato è basato sulle linee guida di [Keep a Changelog](http://k ### Aggiunto (Added) - Aggiunta nel calendario della Dashboard visualizzazione dei preventivi pianificabili in corrispondenza alla data di accettazione e conclusione. + - Aggiunta impostazione per la visualizzazione delle ore nella stampa intervento (Decimale, Sessantesimi). ### Fixed - diff --git a/src/Translator.php b/src/Translator.php index c8b918d88..208ed2b8f 100755 --- a/src/Translator.php +++ b/src/Translator.php @@ -359,4 +359,24 @@ class Translator extends Util\Singleton self::$formatter->setPrecision(auth()->check() ? setting('Cifre decimali per importi') : 2); } + + /** + * Converte il numero in ore. + * + * @param string $string + * + * @return string + */ + public static function numberToHours($string) + { + $string = !isset($string) ? 0 : $string; + + $ore = number_format($string, 2); + $splitted_hour = explode('.', $ore); + $hour = $splitted_hour[0]; + $minutes = ($splitted_hour[1]/100)*60; + $time = $hour.":".sprintf("%02d", $minutes); + + return $time; + } } diff --git a/templates/interventi/body.php b/templates/interventi/body.php index 8dc3832cc..3eef79857 100755 --- a/templates/interventi/body.php +++ b/templates/interventi/body.php @@ -179,6 +179,15 @@ if (!$righe->isEmpty()) { '; foreach ($righe as $riga) { + if(setting('Formato ore in stampa')=='Sessantesimi'){ + if($riga->um=='ore'){ + $qta = Translator::numberToHours($riga->qta); + } else{ + $qta = Translator::numberToLocale($riga->qta, 'qta'); + } + } else{ + $qta = Translator::numberToLocale($riga->qta, 'qta'); + } // Articolo echo ' @@ -208,7 +217,7 @@ if (!$righe->isEmpty()) { // Quantità echo ' - '.Translator::numberToLocale($riga->qta, 'qta').' '.$riga->um.' + '.$qta.' '.$riga->um.' '; // Prezzo unitario @@ -323,10 +332,16 @@ foreach ($sessioni as $i => $sessione) { } // Ore lavorate +if(setting('Formato ore in stampa')=='Sessantesimi'){ + $ore_totali = Translator::numberToHours($documento->ore_totali); +} else{ + $ore_totali = Translator::numberToLocale($documento->ore_totali, 2); +} + echo ' - '.tr('Ore lavorate').':
'.Translator::numberToLocale($documento->ore_totali, 2).' + '.tr('Ore lavorate').':
'.$ore_totali.' '; // Costo totale manodopera 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 diff --git a/update/2_4_24.sql b/update/2_4_24.sql index d9045d502..79511489a 100644 --- a/update/2_4_24.sql +++ b/update/2_4_24.sql @@ -23,5 +23,8 @@ INSERT INTO `zz_settings` (`id`, `nome`, `valore`, `tipo`, `editable`, `sezione` 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'; +-- Aggiunta impostazione formato ore in stampa intervento +INSERT INTO `zz_settings` (`id`, `nome`, `valore`, `tipo`, `editable`, `sezione`, `created_at`, `updated_at`, `order`, `help`) VALUES (NULL, 'Formato ore in stampa', 'Decimale', 'list[Decimale,Sessantesimi]', '1', 'Attività', NOW(), NOW(), '1', ''); + -- 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 +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, '', '');