Bugfix import scadenze FE

This commit is contained in:
Thomas Zilio 2019-02-13 10:53:29 +01:00
parent b40428f5f9
commit ddf9de5d94
3 changed files with 23 additions and 22 deletions

View File

@ -111,9 +111,8 @@ function aggiungi_scadenza($iddocumento, $pagamento = '', $pagato = 0)
$fattura = Fattura::find($iddocumento);
$ricalcola = true;
if ($fattura->isFE()) {
$ricalcola = $fattura->registraScadenzeFE($pagato);
$scadenze_fe = $fattura->registraScadenzeFE($pagato);
}
// Lettura data di emissione fattura
@ -122,7 +121,7 @@ function aggiungi_scadenza($iddocumento, $pagamento = '', $pagato = 0)
$data = $rs[0]['data'];
$ritenutaacconto = $rs[0]['ritenutaacconto'];
if ($ricalcola) {
if (empty($scadenze_fe)) {
$totale_da_pagare = 0.00;
$totale_fattura = get_totale_fattura($iddocumento);
@ -198,9 +197,9 @@ function aggiungi_scadenza($iddocumento, $pagamento = '', $pagato = 0)
if ($pagato) {
$id_scadenza = $dbo->lastInsertedID();
$dbo->update('co_scadenziario', [
'pagato' => $da_pagare,
'data_pagamento' => $data,
], ['id' => $id_scadenza]);
'pagato' => $da_pagare,
'data_pagamento' => $data,
], ['id' => $id_scadenza]);
}
}
}

View File

@ -251,25 +251,27 @@ class Fattura extends Document
$xml = \Util\XML::read($this->getXML());
$scadenze = $xml['FatturaElettronicaBody']['DatiPagamento']['DettaglioPagamento'];
$scadenze = isset($scadenze[0]) ? $scadenze : [$scadenze];
$pagamenti = $xml['FatturaElettronicaBody']['DatiPagamento']['DettaglioPagamento'];
if (!empty($pagamenti)) {
$scadenze = isset($pagamenti[0]) ? $pagamenti : [$pagamenti];
foreach ($scadenze as $scadenza) {
$data = $scadenza['DataScadenzaPagamento'];
$importo = $scadenza['ImportoPagamento'];
foreach ($scadenze as $scadenza) {
$data = $scadenza['DataScadenzaPagamento'];
$importo = $scadenza['ImportoPagamento'];
$dbo->insert('co_scadenziario', [
'iddocumento' => $this->id,
'data_emissione' => $this->data,
'scadenza' => $data,
'da_pagare' => $importo,
'tipo' => 'fattura',
'pagato' => $is_pagato ? $importo : 0,
'data_pagamento' => $is_pagato ? $data : '',
], ['id' => $id_scadenza]);
$dbo->insert('co_scadenziario', [
'iddocumento' => $this->id,
'data_emissione' => $this->data,
'scadenza' => $data,
'da_pagare' => -$importo,
'tipo' => 'fattura',
'pagato' => $is_pagato ? $importo : 0,
'data_pagamento' => $is_pagato ? $data : '',
], ['id' => $id_scadenza]);
}
}
return !empty($scadenze);
return !empty($pagamenti);
}
// Metodi statici

View File

@ -71,7 +71,7 @@ switch (filter('op')) {
ricalcola_costiagg_fattura($id_record, $idrivalsainps, $idritenutaacconto, $bollo);
elimina_scadenza($id_record);
elimina_movimento($id_record, 0);
aggiungi_scadenza($id_record, post('pagamento'));
aggiungi_scadenza($id_record);
aggiungi_movimento($id_record, 'uscita');
$fattura_pa->delete();