Aggiunta apertura conti automatica nel piano dei conti

This commit is contained in:
loviuz 2019-12-21 16:31:34 +01:00
parent 03d618a046
commit 782a1656c6
2 changed files with 32 additions and 0 deletions

View File

@ -19,6 +19,30 @@ GROUP BY co_movimenti.idmastrino
ORDER BY co_movimenti.data DESC'; ORDER BY co_movimenti.data DESC';
$movimenti = $dbo->fetchArray($query); $movimenti = $dbo->fetchArray($query);
// Se il conto fa parte dello stato patrimoniale, sommo i movimenti del periodo precedente
$primo_livello = $dbo->fetchOne('SELECT co_pianodeiconti1.descrizione FROM co_pianodeiconti1 INNER JOIN co_pianodeiconti2 ON co_pianodeiconti1.id=co_pianodeiconti2.idpianodeiconti1 INNER JOIN co_pianodeiconti3 ON co_pianodeiconti2.id=co_pianodeiconti3.idpianodeiconti2 WHERE co_pianodeiconti3.id='.prepare($id_conto))['descrizione'];
if ($primo_livello == 'Patrimoniale') {
$saldo_precedente = $dbo->fetchOne('SELECT SUM(totale) AS totale FROM co_movimenti WHERE idconto='.prepare($id_conto).' AND data < '.prepare($_SESSION['period_start']).' GROUP BY idconto')['totale'];
$movimenti_precedenti[] =
[
'id' => null,
'idmastrino' => null,
'data' => $_SESSION['period_start'],
'data_documento' => null,
'iddocumento' => 0,
'id_scadenza' => null,
'is_insoluto' => 0,
'idanagrafica' => 0,
'descrizione' => 'Apertura conti',
'idconto' => $idconto,
'totale' => $saldo_precedente,
'primanota' => 0,
];
$movimenti = array_merge($movimenti_precedenti, $movimenti);
}
if (!empty($movimenti)) { if (!empty($movimenti)) {
echo ' echo '
<table class="table table-bordered table-hover table-condensed table-striped"> <table class="table table-bordered table-hover table-condensed table-striped">

View File

@ -56,6 +56,14 @@ foreach ($primo_livello as $conto_primo) {
$movimenti = $dbo->fetchArray($query); $movimenti = $dbo->fetchArray($query);
$totale_conto = sum(array_column($movimenti, 'totale')); $totale_conto = sum(array_column($movimenti, 'totale'));
// Se il conto è patrimoniale, aggiungo i movimenti del periodo precedente
if ($conto_primo['descrizione'] == 'Patrimoniale') {
$saldo_precedente = $dbo->fetchOne('SELECT SUM(totale) AS totale FROM co_movimenti WHERE idconto='.prepare($conto_terzo['id']).' AND data < '.prepare($_SESSION['period_start']).' GROUP BY idconto')['totale'];
$totale_conto += $saldo_precedente;
}
$totale_conto = ($conto_primo['descrizione'] == 'Patrimoniale') ? $totale_conto : -$totale_conto; $totale_conto = ($conto_primo['descrizione'] == 'Patrimoniale') ? $totale_conto : -$totale_conto;
// Somma dei totali // Somma dei totali