|
51 | 51 | // Fix conto per registrazione contabile associate ai conti riepilogativi |
52 | 52 | $riepilogativo_fornitori = $dbo->fetchOne('SELECT id FROM co_pianodeiconti3 WHERE descrizione = "Riepilogativo fornitori"')['id']; |
53 | 53 | $riepilogativo_clienti = $dbo->fetchOne('SELECT id FROM co_pianodeiconti3 WHERE descrizione = "Riepilogativo clienti"')['id']; |
54 | | -$fatture = $dbo->fetchArray('SELECT iddocumento FROM `co_movimenti` WHERE `idconto` IN('.$riepilogativo_clienti.', '.$riepilogativo_fornitori.')'); |
| 54 | +if ($riepilogativo_fornitori && $riepilogativo_clienti) { |
| 55 | + $fatture = $dbo->fetchArray('SELECT iddocumento FROM `co_movimenti` WHERE `idconto` IN ('.$riepilogativo_clienti.', '.$riepilogativo_fornitori.')'); |
| 56 | +} elseif ($riepilogativo_fornitori) { |
| 57 | + $fatture = $dbo->fetchArray('SELECT iddocumento FROM `co_movimenti` WHERE `idconto` = '.$riepilogativo_fornitori); |
| 58 | +} elseif ($riepilogativo_clienti) { |
| 59 | + $fatture = $dbo->fetchArray('SELECT iddocumento FROM `co_movimenti` WHERE `idconto` = '.$riepilogativo_clienti); |
| 60 | +} |
| 61 | + |
55 | 62 | foreach ($fatture as $fattura) { |
56 | 63 | $fattura = Fattura::find($fattura['iddocumento']); |
57 | 64 | $conto_cliente = $fattura->anagrafica->idconto_cliente; |
|
71 | 78 | foreach ($fatture_senzanome as $fattura) { |
72 | 79 | $documento = Fattura::find($fattura['iddocumento']); |
73 | 80 | if ($documento) { |
74 | | - $conto = ($documento->tipo->dir == 'uscita' ? $documento->anagrafica->idconto_fornitore : $documento->anagrafica->idconto_cliente); |
75 | | - $dbo->query('UPDATE co_movimenti SET idconto = '.$conto.' WHERE iddocumento = '.$documento->id.' AND idconto = '.$fattura['idconto']); |
| 81 | + $anagrafica = $documento->anagrafica()->withTrashed()->first(); |
| 82 | + if ($anagrafica) { |
| 83 | + $conto = ($documento->tipo->dir == 'uscita' ? $anagrafica->idconto_fornitore : $anagrafica->idconto_cliente); |
| 84 | + $dbo->query('UPDATE co_movimenti SET idconto = '.$conto.' WHERE iddocumento = '.$documento->id.' AND idconto = '.$fattura['idconto']); |
| 85 | + } |
76 | 86 | } else { |
77 | 87 | $dbo->query('DELETE FROM co_movimenti WHERE iddocumento = '.$fattura['iddocumento']); |
78 | 88 | } |
|
0 commit comments