Ejemplo n.º 1
0
        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;
        }
Ejemplo n.º 2
0
        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;
        }