private RitenutaAccontoDTO setDto(Ritenuta item) { try { if (item != null) { var dto = new RitenutaAccontoDTO { IdPagamento = item.PagamentoRiferimento.ID, CodiceTributo = item.PagamentoRiferimento.ScadenzaRiferimento.SpesaRiferimento.FornitoreRiferimento.CodiceTributo, Fornitore = item.PagamentoRiferimento.ScadenzaRiferimento.SpesaRiferimento.FornitoreRiferimento.DisplayName, Condominio = item.PagamentoRiferimento.ScadenzaRiferimento.SpesaRiferimento.EsercizioRiferimento.CondominioRiferimento.DisplayName, DataDocumento = item.PagamentoRiferimento.ScadenzaRiferimento.SpesaRiferimento.DataDocumento, Archiviazione = getArchiviazioneOtticaService().GetIdentificativoArchiviazione(item.PagamentoRiferimento.ScadenzaRiferimento.SpesaRiferimento, true), DataPagamento = item.PagamentoRiferimento.Data, IdCondominio = item.PagamentoRiferimento.ScadenzaRiferimento.SpesaRiferimento.EsercizioRiferimento.CondominioRiferimento.ID, ImportoInteressi = item.ImportoInteressi, ImportoPagamento = item.PagamentoRiferimento.Importo, ImportoRitenuta = item.Importo, ImportoSanzione = item.ImportoSanzione, NumeroDocumento = item.PagamentoRiferimento.ScadenzaRiferimento.SpesaRiferimento.NumeroDocumento, Stato = item.Stato, TipoDocumento = item.PagamentoRiferimento.ScadenzaRiferimento.SpesaRiferimento.TipoDocumento, PeriodoRiferimento = item.GetPeriodoRiferimento(true), DataVersamentoRitenuta = item.DataPagamentoRitenuta.GetValueOrDefault(), Tipo = item.Tipo }; var datibancari = item.PagamentoRiferimento.ScadenzaRiferimento.SpesaRiferimento.EsercizioRiferimento.CondominioRiferimento.DatiBancariPrincipale; if (datibancari != null) { var abi = datibancari.Abi; var cab = datibancari.Cab; var descrizioneAbiCab = Common.BancheHelper.GetAbiCabDescription(datibancari.Abi, datibancari.Cab, WindsorConfigRepository.GetKey(_info.Azienda)); if (!string.IsNullOrEmpty(descrizioneAbiCab[0])) abi += " - " + descrizioneAbiCab[0]; if (!string.IsNullOrEmpty(descrizioneAbiCab[1])) cab += " - " + descrizioneAbiCab[1]; dto.AbiCondominio = abi; dto.CabCondominio = cab; } else { _log.WarnFormat("Condominio senza dati bancari - {0} - idRitenuta:{1} - idCondominio:{2} - azienda:{3}", Library.Utility.GetMethodDescription(), item.PagamentoRiferimento.ID, item.PagamentoRiferimento.ScadenzaRiferimento.SpesaRiferimento.EsercizioRiferimento.CondominioRiferimento.ID, item.PagamentoRiferimento.ScadenzaRiferimento.SpesaRiferimento.EsercizioRiferimento.CondominioRiferimento.Azienda.ID); } if (item.MovimentoContabilePagamento != null) { dto.IdConto = item.MovimentoContabilePagamento.ContoRiferimento.ID; if (item.MovimentoContabilePagamento.SottoContoRiferimento != null) dto.IdSottoconto = item.MovimentoContabilePagamento.SottoContoRiferimento.ID; else if (item.MovimentoContabilePagamento.ContoCorrenteBancario != null) dto.IdSottoconto = item.MovimentoContabilePagamento.ContoCorrenteBancario.ID * -1; } if (item.TestataRiferimento != null) { dto.DataVersamentoRitenuta = item.TestataRiferimento.Data.GetValueOrDefault(); dto.Descrizione = item.TestataRiferimento.Descrizione; } return dto; } return new RitenutaAccontoDTO(); } catch (Exception ex) { _log.ErrorFormat("Errore nella creazione dell'istanza DTO - {0} - id:{1} - azienda:{2}", ex, Library.Utility.GetMethodDescription(), item != null ? item.PagamentoRiferimento.ID.ToString(CultureInfo.InvariantCulture) : "<NULL>", _info.Azienda); throw; } }