public void setListeMutuiDaEstinguere(List<Mutuo> mutui, List<RowChiusuraRapporti> listaMutuiSaldoZero,
List<RowChiusuraRapporti> listaMutuiSaldoDivDaZero, Date dataRegistrazione, Date dataChiusura)
throws ContabilitaException, ImpossibileLeggereMastroException, ImpossibileReperireImportoRimborsoException
{
SaldoMovcont saldoMovcontPerMutuo = null;
for (Mutuo mutuo : mutui)
{
String codiceTipoRata = null;
for (GruppoDatiFinanziari gdf : mutuo.getGruppoDatiFinanziari()) {
codiceTipoRata = gdf.getCodiceTipoRata();
if (codiceTipoRata != null)
break;
}
Double importoFinanziato = null;
for (GruppoDatiFinanziari gdf : mutuo.getGruppoDatiFinanziari()) {
importoFinanziato = gdf.getImportoFinanziato();
if (importoFinanziato != null)
break;
}
saldoMovcontPerMutuo = contabilitaFacade.getSaldoMovcontPerMutuo(mutuo.getNumeroMutuo(),
codiceTipoRata, dataChiusura, importoFinanziato);
if (!saldoMovcontPerMutuo.hasRegistrazioniSuccessive(dataRegistrazione))
{
RowChiusuraRapporti row = new RowChiusuraRapporti();
row.setMutuo(mutuo);
row.setSaldoMovcont(saldoMovcontPerMutuo);
if (saldoMovcontPerMutuo.getSaldo() == 0 && saldoMovcontPerMutuo.getSaldoRimborsi() == 0)
{
listaMutuiSaldoZero.add(row);
} else
{
listaMutuiSaldoDivDaZero.add(row);