where('idanagrafica', $id_record) ->where('default_revision', 1) ->get(); $totale_preventivi = $preventivi->sum('totale_imponibile'); // Contratti $contratti = Contratto::whereBetween('data_accettazione', [$start, $end]) ->where('idanagrafica', $id_record) ->get(); $totale_contratti = $contratti->sum('totale_imponibile'); // Ordini cliente $ordini_cliente = Ordine::whereBetween('data', [$start, $end]) ->where('idanagrafica', $id_record) ->get(); $totale_ordini_cliente = $ordini_cliente->sum('totale_imponibile'); // Interventi // Clienti if ($anagrafica->isTipo('Cliente')) { $rsi = $dbo->fetchArray('SELECT ragione_sociale, (SELECT MIN(orario_inizio) FROM in_interventi_tecnici WHERE idintervento=in_interventi.id) AS data, (SELECT SUM(prezzo_ore_consuntivo+prezzo_km_consuntivo+prezzo_dirittochiamata) FROM in_interventi_tecnici WHERE idintervento=in_interventi.id) AS totale FROM in_interventi INNER JOIN an_anagrafiche ON in_interventi.idanagrafica=an_anagrafiche.idanagrafica WHERE in_interventi.idanagrafica='.prepare($id_record).' AND data_richiesta BETWEEN '.prepare($start).' AND '.prepare($end)); } // Tecnici elseif ($anagrafica->isTipo('Tecnico')) { $rsi = $dbo->fetchArray('SELECT ragione_sociale, (SELECT MIN(orario_inizio) FROM in_interventi_tecnici WHERE idintervento=in_interventi.id) AS data, (SELECT SUM(prezzo_ore_consuntivo+prezzo_km_consuntivo+prezzo_dirittochiamata) FROM in_interventi_tecnici WHERE idintervento=in_interventi.id AND in_interventi_tecnici.idtecnico = '.prepare($id_record).' ) AS totale FROM in_interventi INNER JOIN an_anagrafiche ON in_interventi.idanagrafica=an_anagrafiche.idanagrafica INNER JOIN in_interventi_tecnici ON in_interventi.id = in_interventi_tecnici.idintervento WHERE in_interventi_tecnici.idtecnico='.prepare($id_record).' AND data_richiesta BETWEEN '.prepare($start).' AND '.prepare($end)); } $totale_interventi = 0; for ($i = 0; $i < count($rsi); ++$i) { $totale_interventi += $rsi[$i]['totale']; } // Ddt in uscita $ddt_uscita = DDT::whereBetween('data', [$start, $end]) ->where('idanagrafica', $id_record) ->whereHas('tipo', function ($query) { $query->where('dt_tipiddt.dir', '=', 'entrata'); }) ->get(); $totale_ddt_uscita = $ddt_uscita->sum('totale_imponibile'); // Fatture di vendita $fatture_vendita = Fattura::whereBetween('data', [$start, $end]) ->where('idanagrafica', $id_record) ->whereHas('tipo', function ($query) { $query->where('co_tipidocumento.dir', '=', 'entrata'); }) ->get(); $totale_fatture_vendita = $fatture_vendita->sum('totale_imponibile'); echo '

'.tr('Dal _START_ al _END_', [ '_START_' => dateFormat($start), '_END_' => dateFormat($end), ]).' - '.tr('Periodo _NUM_', [ '_NUM_' => $calendar_id, ]).'

'.tr('Preventivi').' '.($preventivi->count() > 0 ? ''.tr('Visualizza').' ' : '').'
'.count($preventivi).'
'.moneyFormat($totale_preventivi).'
'.tr('Contratti').' '.($contratti->count() > 0 ? ''.tr('Visualizza').' ' : '').'
'.count($contratti).'
'.moneyFormat($totale_contratti).'
'.tr('Ordini cliente').' '.($ordini_cliente->count() > 0 ? ''.tr('Visualizza').' ' : '').'
'.count($ordini_cliente).'
'.moneyFormat($totale_ordini_cliente).'
'.tr('Attività').' '.(count($rsi) > 0 ? ''.tr('Visualizza').' ' : '').'
'.count($rsi).'
'.moneyFormat($totale_interventi).'
'.tr('Ddt in uscita').' '.($ddt_uscita->count() > 0 ? ''.tr('Visualizza').' ' : '').'
'.count($ddt_uscita).'
'.moneyFormat($totale_ddt_uscita).'
'.tr('Fatture').' '.($fatture_vendita->count() > 0 ? ''.tr('Visualizza').' ' : '').'
'.count($fatture_vendita).'
'.moneyFormat($totale_fatture_vendita).'
';