Ejemplo n.º 1
0
 public LetturaContatoreDTO GetByDomainEntity(LetturaContatore item)
 {
     try
     {
         return setDto(item);
     }
     catch (Exception ex)
     {
         
         if (item != null)
             _log.Error("Errore nel caricamento delle letture dei contatori: " + Library.Utility.GetMethodDescription() + " - id:" + item.ID, ex);
         else
             _log.Error("Errore nel caricamento delle letture dei contatori: " + Library.Utility.GetMethodDescription() + " - Lettura Contatore --> null", ex);
         throw;
     }
 }
Ejemplo n.º 2
0
        private bool update(LetturaContatoreDTO dto, out LetturaContatore item)
        {
            bool result;
            item = null;
            var daoFactory = _windsorRepository.GetDaoFactory(_info.Azienda);

            try
            {
                item = daoFactory.GetLetturaContatoreDao().GetById(dto.ID, false);

                // Condizione necessare per il controllo del fatto che sul DB ho una versione uguale o più vecchia
                if (dto.Version == item.Version)
                {
                    if (dto.Valore != null)
                    {
                        item.Data = dto.Data;
                        item.Valore = dto.Valore.Value;
                        item.Contatore = daoFactory.GetContatoreDao().GetById(dto.IdContatore, false);
                        item.UnitaImmobiliare = daoFactory.GetUnitaImmobiliareDao().GetById(dto.IdUnitaImmobiliare, false);
                    }
                    else
                        daoFactory.GetLetturaContatoreDao().Delete(item);

                    result = true;
                }
                else
                {
                    // Eccezione: Sul db c'è qualche cosa di più nuovo.
                    
                    _log.Error("Errore nel salvataggio della lettura del contatore: id:" + dto.ID + " - il dato sul db è più recente di quello che si vuole salvare");
                    result = false;
                }
            }
            catch (Exception ex)
            {
                
                _log.Error("Errore nel salvataggio della lettura del contatore: " + Library.Utility.GetMethodDescription() + " - id:" + dto.ID, ex);
                throw;
            }

            return result;
        }
Ejemplo n.º 3
0
 private bool insert(LetturaContatoreDTO dto, out LetturaContatore item)
 {
     var daoFactory = _windsorRepository.GetDaoFactory(_info.Azienda);
     item = null;
     try
     {
         if (dto.Valore != null)
         {
             item = new LetturaContatore(daoFactory.GetContatoreDao().GetById(dto.IdContatore, false), daoFactory.GetUnitaImmobiliareDao().GetById(dto.IdUnitaImmobiliare, false), dto.Data, dto.Valore.Value) {Version = dto.Version};
             daoFactory.GetLetturaContatoreDao().SaveOrUpdate(item);
         }
     }
     catch (Exception ex)
     {
         
         _log.Error("Errore nel salvataggio della lettura del contatore: " + Library.Utility.GetMethodDescription() + " - id:" + dto.ID, ex);
         throw;
     }
     return true;
 }
Ejemplo n.º 4
0
        private LetturaContatoreDTO setDto(LetturaContatore item)
        {
            try
            {
                var dto = new LetturaContatoreDTO
                {
                    ID = item.ID,
                    Data = item.Data,
                    Valore = item.Valore,
                    IdContatore = item.Contatore.ID,
                    DescrizioneContatore = item.Contatore.Descrizione,
                    TipoUnitaImmobiliare = item.UnitaImmobiliare.TipoUnitaImmobiliare.Descrizione,
                    DisplayName = item.Valore + " - " + item.Data.ToShortDateString(),
                    Lotto = string.Empty,
                    Version = item.Version
                };

                if(item.UnitaImmobiliare != null)
                {
                    dto.InternoUnitaImmobiliare = item.UnitaImmobiliare.InternoCompleto;
                    dto.IdUnitaImmobiliare = item.UnitaImmobiliare.ID;
                    dto.DescrizioneUnitaImmobiliare = item.UnitaImmobiliare.Descrizione;
                    dto.OrdineUnitaImmobiliare = item.UnitaImmobiliare.Ordine.GetValueOrDefault();
                    dto.Stabile = item.UnitaImmobiliare.GruppoStabileRiferimento.PalazzinaRiferimento.Descrizione;
                    dto.Scala = item.UnitaImmobiliare.GruppoStabileRiferimento.Descrizione;

                    if (item.UnitaImmobiliare.GruppoStabileRiferimento.PalazzinaRiferimento.LottoRiferimento != null)
                        dto.Lotto = item.UnitaImmobiliare.GruppoStabileRiferimento.PalazzinaRiferimento.LottoRiferimento.Descrizione;
                }

                return dto;
            }

            catch (Exception ex)
            {
                
                _log.Fatal("Errore nel salvataggio delle letture dei contatori: " + Library.Utility.GetMethodDescription() + " - id: " + item.ID, ex);
                throw;
            }
        }