private string insertFi(FascicoloImmobiliareDTO dto) { var message = string.Empty; var daoFactory = _windsorRepository.GetDaoFactory(_info.Azienda); try { if (!string.IsNullOrEmpty(dto.Descrizione)) { var azienda = daoFactory.GetAziendaDao().GetById(_info.Azienda, false); var item = new FascicoloImmobiliare(dto.Descrizione, dto.DescrizioneBreve, dto.Codice) { Azienda = azienda, IsRequiredFornitore = dto.IsRequiredData, IsRequiredData = dto.IsRequiredData, Ordine = dto.Ordine }; // Impostazioni personalizzate var fascicoloAzienda = new FascicoloImmobiliareAzienda(item, dto.VisibileCondomino, true, azienda) { RaggruppamentoPubblico = dto.RaggruppamentoPubblico, DescrizionePubblica = dto.DescrizionePubblica }; daoFactory.GetFascicoloImmobiliareDao().SaveOrUpdate(item); } } catch (Exception ex) { _log.Error("Errore nell'inserimento del fascicolo immobiliare: " + Library.Utility.GetMethodDescription() + " - id:" + dto.ID, ex); throw; } return message; }
private string updateFi(FascicoloImmobiliareDTO dto) { string message = string.Empty; var daoFactory = _windsorRepository.GetDaoFactory(_info.Azienda); try { if (!string.IsNullOrEmpty(dto.Descrizione)) { var item = daoFactory.GetFascicoloImmobiliareDao().GetById(dto.ID, false); item.Descrizione = dto.Descrizione; item.Codice = dto.Codice; item.DescrizioneBreve = dto.DescrizioneBreve; item.IsRequiredData = dto.IsRequiredData; item.IsRequiredFornitore = dto.IsRequiredFornitore; item.Ordine = dto.Ordine; if (!string.IsNullOrEmpty(item.Codice) && item.Codice.Length > 5) item.Codice = item.Codice.Substring(0, 5); if (!string.IsNullOrEmpty(item.DescrizioneBreve) && item.DescrizioneBreve.Length > 50) item.Codice = item.DescrizioneBreve.Substring(0, 50); if (!string.IsNullOrEmpty(item.Descrizione) && item.Descrizione.Length > 1000) item.Codice = item.Descrizione.Substring(0, 1000); // Carico le impostazioni personalizzate var azienda = daoFactory.GetAziendaDao().GetById(_info.Azienda, false); var fascicoloImmobiliareAzienda = item.FascicoliAzienda.FirstOrDefault(fasc => fasc.Azienda.ID == _info.Azienda); if (fascicoloImmobiliareAzienda == null) { fascicoloImmobiliareAzienda = new FascicoloImmobiliareAzienda(item, dto.VisibileCondomino, true, azienda); daoFactory.GetFascicoloImmobiliareAziendaDao().SaveOrUpdate(fascicoloImmobiliareAzienda); } fascicoloImmobiliareAzienda.VisibileCondomino = dto.VisibileCondomino; fascicoloImmobiliareAzienda.DescrizionePubblica = dto.DescrizionePubblica; fascicoloImmobiliareAzienda.RaggruppamentoPubblico = dto.RaggruppamentoPubblico; // La cancellazione avviene impostando un flag nelle impostazioni personalizzate fascicoloImmobiliareAzienda.Abilitato = dto.Stato != "D"; daoFactory.GetFascicoloImmobiliareDao().SaveOrUpdate(item); } } catch (Exception ex) { _log.Error("Errore nel salvataggio del Fascicolo Immobiliare: " + Library.Utility.GetMethodDescription() + " - id:" + dto.ID, ex); throw; } return message; }