1
0
mirror of https://github.com/devcode-it/openstamanager.git synced 2025-02-02 17:07:01 +01:00

Fix pagamento scadenze generiche

This commit is contained in:
Matteo Baccarin 2019-07-04 09:20:02 +02:00
parent 1fe890941f
commit d9cc7ab20d
3 changed files with 14 additions and 5 deletions

View File

@ -118,13 +118,17 @@ function aggiungi_scadenza($iddocumento, $pagamento = '', $pagato = false)
* @param $totale_pagato float Totale importo pagato
* @param $data_pagamento datetime Data in cui avviene il pagamento (yyyy-mm-dd)
*/
function aggiorna_scadenziario($iddocumento, $totale_pagato, $data_pagamento)
function aggiorna_scadenziario($iddocumento, $totale_pagato, $data_pagamento, $idscadenza='')
{
$dbo = database();
if ($totale_pagato > 0) {
// Lettura righe scadenziario
$query = "SELECT * FROM co_scadenziario WHERE iddocumento='$iddocumento' AND ABS(pagato) < ABS(da_pagare) ORDER BY scadenza ASC";
if($idscadenza!=''){
$add_query = 'AND id='.prepare($idscadenza);
}
$query = "SELECT * FROM co_scadenziario WHERE iddocumento='$iddocumento' AND ABS(pagato) < ABS(da_pagare) ".$add_query." ORDER BY scadenza ASC";
$rs = $dbo->fetchArray($query);
$rimanente_da_pagare = abs($rs[0]['pagato']) + $totale_pagato;

View File

@ -6,6 +6,7 @@ switch (post('op')) {
case 'add':
$all_ok = true;
$iddocumento = post('iddocumento');
$idscadenza = post('idscadenza');
$data = post('data');
$idmastrino = get_new_idmastrino();
$descrizione = post('descrizione');
@ -45,10 +46,10 @@ switch (post('op')) {
if ($totale_pagato != 0 && empty($insoluto)) {
// Inserisco nello scadenziario il totale pagato
aggiorna_scadenziario($iddocumento, abs($totale_pagato), $data);
aggiorna_scadenziario($iddocumento, abs($totale_pagato), $data, $idscadenza);
} elseif (!empty($insoluto)) {
//Rimuovo dallo scadenzario l'insoluto
aggiorna_scadenziario($iddocumento, -abs($totale_pagato), $data);
aggiorna_scadenziario($iddocumento, -abs($totale_pagato), $data, $idscadenza);
}
// Se non va a buon fine qualcosa elimino il mastrino per non lasciare incongruenze nel db

View File

@ -6,6 +6,7 @@ include_once __DIR__.'/../../core.php';
<input type="hidden" name="op" value="add">
<input type="hidden" name="backto" value="record-edit">
<input type="hidden" name="iddocumento" id="iddocumento" value="<?php echo get('iddocumento'); ?>">
<input type="hidden" name="idscadenza" id="idscadenza" value="<?php echo get('idscadenza'); ?>">
<input type="hidden" name="crea_modello" id="crea_modello" value="0">
<input type="hidden" name="idmastrino" id="idmastrino" value="0">
@ -141,12 +142,15 @@ include_once __DIR__.'/../../core.php';
$totale_avere = $importo_conto_controparte;
}
} else {
$scadenza = $dbo->fetchOne('SELECT descrizione, scadenza FROM co_scadenziario WHERE id='.prepare($idscadenza));
$scadenza = $dbo->fetchOne('SELECT descrizione, scadenza, SUM(da_pagare-pagato) AS pagare FROM co_scadenziario WHERE id='.prepare($idscadenza));
$descrizione = tr('Pag. _OP_ del _DATE_', [
'_OP_' => $scadenza['descrizione'],
'_DATE_' => Translator::dateToLocale($scadenza['scadenza']),
]);
$importo_conto_aziendale = $scadenza['pagare'];
$importo_conto_controparte = $scadenza['pagare'];
}
?>