1
0
mirror of https://github.com/devcode-it/openstamanager.git synced 2024-12-22 21:28:08 +01:00
This commit is contained in:
Luca 2018-05-18 18:12:19 +02:00
parent 66ee74031c
commit f852fe0262
5 changed files with 54 additions and 50 deletions

View File

@ -61,7 +61,7 @@ function add_movimento_magazzino($idarticolo, $qta, $array = [], $descrizone = '
// Intervento
elseif (!empty($array['idintervento'])) {
$rs_data = $dbo->fetchArray("SELECT IFNULL(MAX(orario_fine), data_richiesta) AS data, codice FROM in_interventi LEFT JOIN in_interventi_tecnici ON in_interventi.id=in_interventi_tecnici.idintervento WHERE in_interventi.id='".$array['idintervento']."'");
$rs_data = $dbo->fetchArray('SELECT IFNULL(MAX(orario_fine), data_richiesta) AS data, codice FROM in_interventi LEFT JOIN in_interventi_tecnici ON in_interventi.id=in_interventi_tecnici.idintervento WHERE in_interventi.id = '.prepare($array['idintervento']));
$data = $rs_data[0]['data'];
$codice_intervento = $rs_data[0]['codice'];

View File

@ -2,37 +2,29 @@
include_once __DIR__.'/../../core.php';
// Mostro le righe del preventivo
$totale_preventivo = 0.00;
$totale_imponibile = 0.00;
$totale_iva = 0.00;
$totale_da_evadere = 0.00;
/*
ARTICOLI
ARTICOLI + RIGHE GENERICHE
*/
$rs_art = $dbo->fetchArray('SELECT *, IFNULL((SELECT codice FROM mg_articoli WHERE id=idarticolo), "") AS codice FROM co_righe2_contratti WHERE idcontratto='.prepare($id_record).' ORDER BY `order`');
$imponibile_art = 0.0;
$iva_art = 0.0;
$rs = $dbo->fetchArray('SELECT *, round(iva,'.Settings::get('Cifre decimali per importi').') AS iva, round(sconto_unitario,'.Settings::get('Cifre decimali per importi').') AS sconto_unitario, round(sconto,'.Settings::get('Cifre decimali per importi').') AS sconto, round(subtotale,'.Settings::get('Cifre decimali per importi').') AS subtotale, IFNULL((SELECT codice FROM mg_articoli WHERE id=idarticolo), "") AS codice FROM co_righe2_contratti WHERE idcontratto='.prepare($id_record).' ORDER BY `order`');
echo '
<table class="table table-striped table-hover table-condensed table-bordered">
<thead>
<tr>
<th>'.tr('Descrizione').'</th>
<th width="10%" class="text-center">'.tr('Q.').'</th>
<th width="10%" class="text-center">'.tr('U.m.').'</th>
<th width="12%" class="text-center">'.tr('Costo unitario').'</th>
<th width="12%" class="text-center">'.tr('Iva').'</th>
<th width="10%" class="text-center">'.tr('Imponibile').'</th>
<th width="80"></th>
<th width="120">'.tr('Q.').'</th>
<th width="80">'.tr('U.m.').'</th>
<th width="120">'.tr('Costo unitario').'</th>
<th width="120">'.tr('Iva').'</th>
<th width="120">'.tr('Imponibile').'</th>
<th width="60"></th>
</tr>
</thead>
<tbody class="sortable">';
// se ho almeno un articolo caricato mostro la riga
if (!empty($rs_art)) {
foreach ($rs_art as $r) {
if (!empty($rs)) {
foreach ($rs as $r) {
// descrizione
echo '
<tr data-id="'.$r['id'].'">
@ -48,7 +40,7 @@ if (!empty($rs_art)) {
// q.tà
echo '
<td class="text-center">';
<td class="text-right">';
if (empty($r['is_descrizione'])) {
echo '
'.Translator::numberToLocale($r['qta']);
@ -140,10 +132,20 @@ if (!empty($rs_art)) {
</td>
</tr>';
$iva_art += number_format($r['iva'], 2);
$imponibile_art += $r['subtotale'] - $r['sconto'];
$imponibile_nosconto += $r['subtotale'];
$sconto_art += $r['sconto'];
// Calcoli
$imponibile = sum(array_column($rs, 'subtotale'));
$sconto = sum(array_column($rs, 'sconto'));
$iva = sum(array_column($rs, 'iva'));
$imponibile_scontato = sum($imponibile, -$sconto);
$totale = sum([
$imponibile_scontato,
$iva,
]);
}
}
@ -151,7 +153,7 @@ echo '
</tbody>';
// SCONTO
if (abs($sconto_art) > 0) {
if (abs($sconto) > 0) {
// Totale imponibile scontato
echo '
<tr>
@ -159,7 +161,7 @@ if (abs($sconto_art) > 0) {
<b>'.tr('Imponibile', [], ['upper' => true]).':</b>
</td>
<td class="text-right">
<span id="budget">'.Translator::numberToLocale($imponibile_nosconto).' &euro;</span>
<span id="budget">'.Translator::numberToLocale($imponibile).' &euro;</span>
</td>
<td></td>
</tr>';
@ -170,7 +172,7 @@ if (abs($sconto_art) > 0) {
<b>'.tr('Sconto', [], ['upper' => true]).':</b>
</td>
<td class="text-right">
'.Translator::numberToLocale($sconto_art).' &euro;
'.Translator::numberToLocale($sconto).' &euro;
</td>
<td></td>
</tr>';
@ -182,7 +184,7 @@ if (abs($sconto_art) > 0) {
<b>'.tr('Imponibile scontato', [], ['upper' => true]).':</b>
</td>
<td class="text-right">
'.Translator::numberToLocale($imponibile_art).' &euro;
'.Translator::numberToLocale($imponibile_scontato).' &euro;
</td>
<td></td>
</tr>';
@ -194,7 +196,7 @@ if (abs($sconto_art) > 0) {
<b>'.tr('Imponibile', [], ['upper' => true]).':</b>
</td>
<td class="text-right">
<span id="budget">'.Translator::numberToLocale($imponibile_art).' &euro;</span>
<span id="budget">'.Translator::numberToLocale($imponibile).' &euro;</span>
</td>
<td></td>
</tr>';
@ -207,7 +209,7 @@ echo '
<b>'.tr('Iva', [], ['upper' => true]).':</b>
</td>
<td class="text-right">
'.Translator::numberToLocale($iva_art).' &euro;
'.Translator::numberToLocale($iva).' &euro;
</td>
<td></td>
</tr>';
@ -219,7 +221,7 @@ echo '
<b>'.tr('Totale', [], ['upper' => true]).':</b>
</td>
<td class="text-right">
'.Translator::numberToLocale($imponibile_art + $iva_art).' &euro;
'.Translator::numberToLocale($totale).' &euro;
</td>
<td></td>
</tr>';

View File

@ -5,7 +5,7 @@ include_once __DIR__.'/../../core.php';
/*
Righe fattura
*/
$rs = $dbo->fetchArray("SELECT *, IFNULL((SELECT codice FROM mg_articoli WHERE id=idarticolo),'') AS codice, (SELECT descrizione FROM co_pianodeiconti3 WHERE co_pianodeiconti3.id=IF(co_righe_documenti.idconto = 0, (SELECT idconto FROM co_documenti WHERE iddocumento=".prepare($id_record).' LIMIT 1), co_righe_documenti.idconto)) AS descrizione_conto FROM `co_righe_documenti` WHERE iddocumento='.prepare($id_record).' ORDER BY `order`');
$rs = $dbo->fetchArray('SELECT *, round(iva,'.Settings::get('Cifre decimali per importi').') AS iva, round(sconto_unitario,'.Settings::get('Cifre decimali per importi').') AS sconto_unitario, round(sconto,'.Settings::get('Cifre decimali per importi').') AS sconto, round(subtotale,'.Settings::get('Cifre decimali per importi').') AS subtotale, IFNULL((SELECT codice FROM mg_articoli WHERE id=idarticolo),"") AS codice, (SELECT descrizione FROM co_pianodeiconti3 WHERE co_pianodeiconti3.id=IF(co_righe_documenti.idconto = 0, (SELECT idconto FROM co_documenti WHERE iddocumento='.prepare($id_record).' LIMIT 1), co_righe_documenti.idconto)) AS descrizione_conto FROM `co_righe_documenti` WHERE iddocumento='.prepare($id_record).' ORDER BY `order`');
echo '
<table class="table table-striped table-hover table-condensed table-bordered">
@ -282,7 +282,7 @@ echo '
// Calcoli
$imponibile = sum(array_column($rs, 'subtotale'));
$sconto = sum(array_column($rs, 'sconto'));
$iva = sum(array_column($rs, 'iva'), null, 2);
$iva = sum(array_column($rs, 'iva'));
$imponibile_scontato = sum($imponibile, -$sconto);

View File

@ -10,7 +10,7 @@ echo '
<!-- DATI -->
<div class="panel panel-primary">
<div class="panel-heading">
<h3 class="panel-title">'.tr('Valori della sezione').'</h3>
<h3 class="panel-title">'.tr('Valori della sezione').': '.$records[0]['sezione'].'</h3>
</div>
<div class="panel-body">';

View File

@ -5,11 +5,12 @@ include_once __DIR__.'/../../core.php';
/*
ARTICOLI + RIGHE GENERICHE
*/
$q_art = "SELECT *, IFNULL((SELECT codice FROM mg_articoli WHERE id=idarticolo), '') AS codice FROM co_righe_preventivi WHERE idpreventivo=".prepare($id_record).' ORDER BY `order`';
$q_art = 'SELECT *, round(iva,'.Settings::get('Cifre decimali per importi').') AS iva, round(sconto_unitario,'.Settings::get('Cifre decimali per importi').') AS sconto_unitario, round(sconto,'.Settings::get('Cifre decimali per importi').') AS sconto, round(subtotale,'.Settings::get('Cifre decimali per importi').') AS subtotale, IFNULL((SELECT codice FROM mg_articoli WHERE id=idarticolo), "") AS codice FROM co_righe_preventivi WHERE idpreventivo='.prepare($id_record).' ORDER BY `order`';
$rs = $dbo->fetchArray($q_art);
echo '
<table class="table table-striped table-hover table-condensed table-bordered">
<thead>
<tr>
<th>'.tr('Descrizione').'</th>
<th width="120">'.tr('Q.').'</th>
@ -19,6 +20,7 @@ echo '
<th width="120">'.tr('Imponibile').'</th>
<th width="60"></th>
</tr>
</thead>
<tbody class="sortable">';
// se ho almeno un articolo caricato mostro la riga
@ -38,7 +40,7 @@ if (!empty($rs)) {
// q.tà
echo '
<td class="text-center">';
<td class="text-right">';
if (empty($r['is_descrizione'])) {
echo '
'.Translator::numberToLocale($r['qta'] - $r['qta_evasa']);
@ -131,7 +133,7 @@ if (!empty($rs)) {
// Calcoli
$imponibile = sum(array_column($rs, 'subtotale'));
$sconto = sum(array_column($rs, 'sconto'));
$iva = sum(array_column($rs, 'iva'), null, 2);
$iva = sum(array_column($rs, 'iva'));
$imponibile_scontato = sum($imponibile, -$sconto);