mirror of
https://github.com/devcode-it/openstamanager.git
synced 2025-01-21 11:35:35 +01:00
Bugfix stampe
This commit is contained in:
parent
daa5f37737
commit
8ccdd70622
@ -12,10 +12,10 @@ function get_ore_intervento($idintervento)
|
||||
$dbo = database();
|
||||
$totale_ore = 0;
|
||||
|
||||
$rs = $dbo->fetchArray('SELECT idintervento, TIMESTAMPDIFF( MINUTE, orario_inizio, orario_fine ) / 60 AS tot_ore FROM in_interventi_tecnici WHERE idintervento = '.prepare($idintervento));
|
||||
$sessioni = $dbo->fetchArray('SELECT idintervento, TIMESTAMPDIFF(MINUTE, orario_inizio, orario_fine) / 60 AS tot_ore FROM in_interventi_tecnici WHERE idintervento = '.prepare($idintervento));
|
||||
|
||||
for ($i = 0; $i < count($rs); ++$i) {
|
||||
$totale_ore = $totale_ore + $rs[$i]['tot_ore'];
|
||||
foreach ($sessioni as $sessione) {
|
||||
$totale_ore = $totale_ore + $sessione['tot_ore'];
|
||||
}
|
||||
|
||||
return $totale_ore;
|
||||
|
@ -8,7 +8,7 @@ $id_print = get('id_print');
|
||||
// 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');
|
||||
$print = $dbo->fetchArray('SELECT id, previous FROM zz_prints WHERE directory = '.prepare($ptype).' ORDER BY predefined DESC LIMIT 1');
|
||||
$id_print = $print[0]['id'];
|
||||
|
||||
$id_record = !empty($id_record) ? $id_record : get($print[0]['previous']);
|
||||
|
@ -124,6 +124,11 @@ class Prints
|
||||
|
||||
$infos = self::get($print);
|
||||
|
||||
$modutil = Modules::filepath($infos['id_module'], 'modutil.php');
|
||||
if (!empty($modutil)) {
|
||||
include $modutil;
|
||||
}
|
||||
|
||||
Permissions::addModule($infos['id_module']);
|
||||
|
||||
if (empty($infos) || empty($infos['enabled']) || !Permissions::check([], false)) {
|
||||
|
@ -57,7 +57,6 @@ include_once $docroot.'/templates/pdfgen_variables.php';
|
||||
|
||||
$totrows = sizeof($rsi);
|
||||
$totale_km = 0.00;
|
||||
$totale_ore = 0.00;
|
||||
$totale = 0.00;
|
||||
$totale_calcolato = 0.00;
|
||||
$info_intervento = [];
|
||||
@ -78,30 +77,25 @@ $idinterventi = ['0'];
|
||||
if ($totrows > 0) {
|
||||
for ($i = 0; $i < $totrows; ++$i) {
|
||||
// Lettura dati dei tecnici dell'intervento corrente
|
||||
$query = 'SELECT *, ( ( TIME_TO_SEC(orario_fine)-TIME_TO_SEC(orario_inizio) ) ) AS t, (SELECT ragione_sociale FROM an_anagrafiche WHERE idanagrafica=idtecnico) AS nome_tecnico FROM in_interventi_tecnici WHERE idintervento="'.$rsi[$i]['id'].'"';
|
||||
$rs = $dbo->fetchArray($query);
|
||||
$n_tecnici = sizeof($rs);
|
||||
$sessioni = $dbo->fetchArray('SELECT *, (SELECT ragione_sociale FROM an_anagrafiche WHERE idanagrafica=idtecnico) AS nome_tecnico FROM in_interventi_tecnici WHERE idintervento='.prepare($rsi[$i]['id']));
|
||||
|
||||
$riga_tecnici = "<table><tr><td style='border:0px solid transparent;' colspan='2'><div style='width:75mm;'></div></td></tr>\n";
|
||||
$t = 0;
|
||||
|
||||
for ($j = 0; $j < $n_tecnici; ++$j) {
|
||||
$riga_tecnici .= "<tr><td valign='top' style='border:0px solid transparent;' align='left' >\n".$rs[$j]['nome_tecnico']."\n</td>\n";
|
||||
$riga_tecnici .= "<td valign='bottom' style='border:0px solid transparent;' align='right'>\n".Translator::dateToLocale($rs[$j]['orario_inizio']).' - '.Translator::timeToLocale($rs[$j]['orario_inizio']).'-'.Translator::timeToLocale($rs[$j]['orario_fine'])."\n";
|
||||
foreach ($sessioni as $sessione) {
|
||||
$riga_tecnici .= "<tr><td valign='top' style='border:0px solid transparent;' align='left' >\n".$sessione['nome_tecnico']."\n</td>\n";
|
||||
$riga_tecnici .= "<td valign='bottom' style='border:0px solid transparent;' align='right'>\n".Translator::dateToLocale($sessione['orario_inizio']).' - '.Translator::timeToLocale($sessione['orario_inizio']).'-'.Translator::timeToLocale($sessione['orario_fine'])."\n";
|
||||
$riga_tecnici .= "</td></tr>\n";
|
||||
|
||||
// Conteggio ore totali
|
||||
$t += round($rs[$j]['t'] / 60 / 60, 2);
|
||||
array_push($costi_orari, floatval($sessione['prezzo_ore_unitario']));
|
||||
array_push($costi_km, floatval($sessione['prezzo_km_unitario']));
|
||||
array_push($diritto_chiamata, floatval($sessione['prezzo_dirittochiamata']));
|
||||
|
||||
array_push($costi_orari, floatval($rs[$j]['prezzo_ore_unitario']));
|
||||
array_push($costi_km, floatval($rs[$j]['prezzo_km_unitario']));
|
||||
array_push($diritto_chiamata, floatval($rs[$j]['prezzo_dirittochiamata']));
|
||||
|
||||
array_push($costo_ore_cons, floatval($rs[$j]['prezzo_ore_consuntivo']));
|
||||
array_push($costo_km_cons, floatval($rs[$j]['prezzo_km_consuntivo']));
|
||||
array_push($diritto_chiamata_cons, floatval($rs[$j]['prezzo_dirittochiamata_consuntivo']));
|
||||
array_push($km, floatval($rs[$j]['km']));
|
||||
$totale_km += floatval($rs[$j]['km']);
|
||||
array_push($costo_ore_cons, floatval($sessione['prezzo_ore_consuntivo']));
|
||||
array_push($costo_km_cons, floatval($sessione['prezzo_km_consuntivo']));
|
||||
array_push($diritto_chiamata_cons, floatval($sessione['prezzo_dirittochiamata_consuntivo']));
|
||||
array_push($km, floatval($sessione['km']));
|
||||
$totale_km += floatval($sessione['km']);
|
||||
}
|
||||
|
||||
$riga_tecnici .= "</table>\n";
|
||||
@ -117,8 +111,8 @@ if ($totrows > 0) {
|
||||
|
||||
array_push($ntecnici, $n_tecnici);
|
||||
array_push($tecnici, $riga_tecnici);
|
||||
array_push($ore, $t);
|
||||
$totale_ore += floatval($t);
|
||||
array_push($ore, get_ore_intervento($rsi[$i]['id']));
|
||||
|
||||
$totale_dirittochiamata += floatval($rs[$i]['prezzo_dirittochiamata']);
|
||||
array_push($idinterventi, "'".$rsi[$i]['id']."'");
|
||||
}
|
||||
@ -219,7 +213,7 @@ if (sizeof($info_intervento) > 0) {
|
||||
|
||||
// Totale costo ore
|
||||
$body .= "<td align=\"center\">\n";
|
||||
$body .= '<b>'.Translator::numberToLocale($totale_ore)."</b>\n";
|
||||
$body .= '<b>'.Translator::numberToLocale(sum($ore))."</b>\n";
|
||||
$body .= "</td>\n";
|
||||
$body .= "<td></td>\n";
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user