log.debug("["+funzioneContabile+"] Valorizzo la lista delle voci di contabilizzazione...");
for(MutuoOperazione mo : listaOperazioni ){
log.debug("["+funzioneContabile+"] MutuoOperazione CodiceOperazione: "+mo.getCodiceOperazione());
log.debug("["+funzioneContabile+"] MutuoOperazione CodiceFamiglia : "+mo.getCodiceFamiglia());
log.debug("["+funzioneContabile+"] MutuoOperazione CodiceFunzione : "+mo.getCodiceFunzione());
VoceContabilizzazione v = new VoceContabilizzazione();
v.setCodiceOperazione(mo.getCodiceOperazione());
if( "BOLLOC_F".equals(mo.getOperazione().getCodiceTipoImporto())
|| "BOLLOC".equals(mo.getOperazione().getCodiceTipoImporto()) ){
v.setImportoVoce( RoundUtils.round2Cifre(
RoundUtils.round2Cifre(trancheMutuoSal.getImportoMovimento() * trancheMutuoSal.getPercentualeImpostaSostitutiva()) / 100));
}else if( "PROVV".equals(mo.getOperazione().getCodiceTipoImporto())
|| "PROVV".equals(mo.getOperazione().getCodiceTipoImporto()) ){
v.setImportoVoce(NumberUtils.checkNull(trancheMutuoSal.getImportoProvvigioni()) );
}else if( "SPIST".equals(mo.getOperazione().getCodiceTipoImporto()) ){
v.setImportoVoce(NumberUtils.checkNull(trancheMutuoSal.getImportoSpese()));
}else if( "CAP".equals(mo.getOperazione().getCodiceTipoImporto()) ){
v.setImportoVoce(trancheMutuoSal.getImportoMovimento());
}else if( "INDO".equals(mo.getOperazione().getCodiceTipoImporto()) ){
GruppoDatiFinanziari oldGdf = gestionePraticaFacade.getDatiFinanziariAllaData(mutuoAggiornato.getNumeroMutuo(),
DateUtils.addDays(trancheMutuoSal.getDataMovimento(), -1) );
double totImpRate = GestionePraticaUtils.calcolaSommaImportiInteressiRata(trancheMutuoSal.getDataRataAddebitoDietimi(),
oldGdf.getPianoAmmortamento());
v.setImportoVoce( totImpRate );
}else if( "INDN".equals(mo.getOperazione().getCodiceTipoImporto()) ){
double totImpRate = GestionePraticaUtils.calcolaSommaImportiInteressiRata(trancheMutuoSal.getDataRataAddebitoDietimi(),
mutuoAggiornato.getDatiFinanziariAttuali().getPianoAmmortamento());
v.setImportoVoce( totImpRate );
}else if( "ASSINC_R".equals(mo.getOperazione().getCodiceTipoImporto()) ){
v.setImportoVoce(trancheMutuoSal.getImportoAssicurazioneCasa());
}
v.setCodiceFamiglia(mo.getCodiceFamiglia());
v.setDataScadenza(trancheMutuoSal.getDataMovimento());
v.setDataValuta(trancheMutuoSal.getDataMovimento());
v.setDataCompetenza(trancheMutuoSal.getDataRegistrazione());
v.setDescrizioneMovimentoDare(desc);
v.setDescrizioneMovimentoAvere(desc);
if( "M".equals(mo.getOperazione().getTipoConto()) ){
v.setConto(mutuoAggiornato.getNumeroMutuo());
}else{
v.setConto(null);//TODO:non so cosa metterci
}
PianoDeiConti pdc = new PianoDeiConti();
pdc.setCodiceGruppo(mo.getOperazione().getCodiceGruppoNew());
pdc.setCodiceMastro(mo.getOperazione().getCodiceMastroNew());
pdc.setCodiceConto(v.getConto());
List<Conto> conto = contabilitaFacade.cercaContoByPianoDeiConti(pdc);
if(conto==null || conto.size()==0) v.setDescrizioneConto(null);
else v.setDescrizioneConto(conto.get(0).getDescrizioneConto());
v.setNumeroPiano(mutuoAggiornato.getDatiFinanziariAttuali().getNumeroPam());
v.setNumeroRata(0);
v.setTipoPiano("PA");
if( "B".equals(mo.getOperazione().getTipoConto()) ){
v.setCodiceFinanziamento(1);
}else{
v.setCodiceFinanziamento(null);
}
v.setSequenza( NumberUtils.checkNull( mo.getFamiglia().getSequenza()) );
v.setNumeroMutuo(mutuoAggiornato.getNumeroMutuo());
// if( FUNZIONE_CONTABILE_SAL.equals(funzioneContabile) ){
Segnalatore segn = gestionePraticaFacade.getSegnalatore(mutuoAggiornato.getNumeroMutuo());
if( segn != null )
v.setNumeroSoggetto(segn.getNumeroSoggetto());
else
v.setNumeroSoggetto(null);
if( segn != null ){
Soggetto sogg = anagraficaFacade.leggiSoggetto(segn.getNumeroSoggetto());
if( sogg != null )
v.setDescrizioneSoggetto(sogg.getDescrizione());
else
v.setDescrizioneSoggetto(null);
}else
v.setDescrizioneSoggetto(null);
v.setCodiceMutuoAntiMafia(0l);
// }else if( FUNZIONE_CONTABILE_INDICIZZAZIONE.equals(funzioneContabile) ){
// v.setNumeroSoggetto(null);
// v.setDescrizioneSoggetto(null);
//
// v.setCodiceMutuoAntiMafia(mutuoAggiornato.getCodiceRapportoAntimafia());
// }
v.setImportoIva(0.0);
if(mo.getOperazione().getVoceFattura()==null)
v.setCodiceIva(null);
else
v.setCodiceIva(mo.getOperazione().getVoceFattura().getCodiceIva());
v.setCodiceTipoProtocollo(null);
v.setTipoIntestatario(null);
v.setPratica(null);
v.setDebitoResiduoLegale(0d);
v.setGruppoPartitario(mo.getOperazione().getCodiceGruppoNew());
v.setMastroPartitario(mo.getOperazione().getCodiceMastroNew());
v.setContoPartitario(v.getConto());
v.setNumeroPartita(null);
v.setDescrizionePartita(desc);
v.setNumeroAzione(0l);
v.setMezzoRicevimentoAntiMafia(null);
v.setLuogoRegistazione(null);
v.setTipoIncassoAntiMafia(null);
if(mo.getOperazione().getVoceFattura()!= null)
v.setDescrizioneVoceFattura(mo.getOperazione().getVoceFattura().getDescrizioneVoceFattura());
else
v.setDescrizioneVoceFattura(null);
v.setCodiceIntermediarioAntiMafia(null);
v.setCodiceBeneficiario(null);
v.setTipoBeneficiario(null);
v.setDescrizioneMutuo(mutuoAggiornato.getDescrizioneMutuo());
v.setDescrizioneBanca(null);
v.setIban(null);
voci.add(v);
}
lvc.setVoci(voci);