Fix calcolo giacenze fra sedi della propria azienda

This commit is contained in:
NicNal 2019-06-17 11:10:32 +02:00
parent 4947ab40a9
commit 4303bd8bf8
1 changed files with 10 additions and 13 deletions

View File

@ -1,7 +1,6 @@
<?php <?php
$sedi = $dbo->fetchArray("SELECT SUM(mg_movimenti.qta)AS qta, IF(mg_movimenti.idsede_azienda= 0,'Sede legale',(CONCAT_WS(' - ',an_sedi.nomesede,an_sedi.citta))) as sede FROM mg_movimenti LEFT JOIN an_sedi ON an_sedi.id = mg_movimenti.idsede_azienda WHERE mg_movimenti.idarticolo=".prepare($id_record).' GROUP BY idsede_azienda'); $sedi = $dbo->fetchArray( '(SELECT "0" AS id, "Sede legale" AS nomesede) UNION (SELECT id, CONCAT(nomesede, " - ", citta ) AS nomesede FROM an_sedi WHERE idanagrafica='.prepare(setting('Azienda predefinita')).')' );
?> ?>
<div class="row"> <div class="row">
@ -12,11 +11,6 @@ $sedi = $dbo->fetchArray("SELECT SUM(mg_movimenti.qta)AS qta, IF(mg_movimenti.id
</div> </div>
<div class="panel-body"> <div class="panel-body">
<?php
if (empty($sedi)) {
echo '<div class="alert alert-info">'.tr('Non ci sono ancora movimenti').'</div>';
} else {
?>
<table class="table table-striped table-condensed table-bordered"> <table class="table table-striped table-condensed table-bordered">
<thead> <thead>
<tr> <tr>
@ -28,17 +22,20 @@ $sedi = $dbo->fetchArray("SELECT SUM(mg_movimenti.qta)AS qta, IF(mg_movimenti.id
<tbody> <tbody>
<?php <?php
foreach ($sedi as $sede) { foreach ($sedi as $sede) {
// Lettura movimenti della sede
$qta_azienda = $dbo->fetchOne("SELECT SUM(mg_movimenti.qta) AS qta, IF(mg_movimenti.idsede_azienda= 0,'Sede legale',(CONCAT_WS(' - ',an_sedi.nomesede,an_sedi.citta))) as sede FROM mg_movimenti LEFT JOIN an_sedi ON an_sedi.id = mg_movimenti.idsede_azienda WHERE mg_movimenti.idarticolo=".prepare($id_record).' AND idsede_azienda='.prepare($sede['id']).' GROUP BY idsede_azienda');
// Lettura eventuali movimenti ad una propria sede
$qta_controparte = $dbo->fetchOne("SELECT SUM(mg_movimenti.qta) AS qta, IF(mg_movimenti.idsede_controparte= 0,'Sede legale',(CONCAT_WS(' - ',an_sedi.nomesede,an_sedi.citta))) as sede FROM mg_movimenti LEFT JOIN an_sedi ON an_sedi.id = mg_movimenti.idsede_controparte WHERE mg_movimenti.idarticolo=".prepare($id_record)." AND idsede_controparte=".prepare($sede['id'])." GROUP BY idsede_controparte");
echo ' echo '
<tr> <tr>
<td>'.$sede['sede'].'</td> <td>'.$sede['nomesede'].'</td>
<td class="text-right">'.Translator::numberToLocale($sede['qta']).'</td> <td class="text-right">'.Translator::numberToLocale($qta_azienda['qta'] - $qta_controparte['qta'] ).'</td>
</tr>'; </tr>';
} ?> } ?>
</tbody> </tbody>
</table> </table>
<?php
}
?>
</div> </div>
</div> </div>
</div> </div>