public PremioAssicurativoDTO Save(PremioAssicurativoDTO premio) { var premioAssicurativo = GetServiceClient().SetPremioAssicurativo(premio, GetUserInfo()); if (premioAssicurativo != null) { var idPremio = (int)premioAssicurativo; CloseService(); return GetById(idPremio); } return new PremioAssicurativoDTO(); }
public PremioAssicurativoDTO[] GetAllpaByAzienda(int idAzienda) { try { var daoFactory = _windsorRepository.GetDaoFactory(_info.Azienda); var lista = daoFactory.GetPremioAssicurativoDao().GetByAzienda(idAzienda); var premiAssicurativi = new PremioAssicurativoDTO[lista.Count]; var index = 0; foreach (var premioAssicurativo in lista) { premiAssicurativi[index] = setDto(premioAssicurativo); index++; } return premiAssicurativi; } catch (Exception ex) { _log.Error("Errore nel caricamento dei Premi Assicurativi - " + Utility.GetMethodDescription() + " - azienda:" + idAzienda, ex); throw; } }
private PremioAssicurativo manage(PremioAssicurativoDTO dto) { PremioAssicurativo entity = null; bool result; // Controllo sullo stato U, D, I switch (dto.Stato.ToUpper()) { case "U": result = update(dto, out entity); if (!result) throw new Exception("Il dato sul database è più recente di quello utilizzato"); break; case "I": result = insert(dto, out entity); if (!result) throw new Exception("Impossibile scrivere sul database"); break; } return entity; }
private bool insert(PremioAssicurativoDTO dto, out PremioAssicurativo entity) { var daoFactory = _windsorRepository.GetDaoFactory(_info.Azienda); entity = null; try { if (dto.IdContratto != null) { entity = new PremioAssicurativo(daoFactory.GetAssicurazioneContrattoDao().GetById((int) dto.IdContratto, false), dto.DataPagamento, dto.ImportoPagamento); daoFactory.GetPremioAssicurativoDao().SaveOrUpdate(entity); } } catch (Exception ex) { _log.Error("Errore nell'inserimento del Premio Assicurativo - " + Utility.GetMethodDescription() + " - id:" + dto.ID, ex); throw; } return true; }
private bool update(PremioAssicurativoDTO dto, out PremioAssicurativo entity) { bool result; entity = null; var daoFactory = _windsorRepository.GetDaoFactory(_info.Azienda); try { entity = daoFactory.GetPremioAssicurativoDao().GetById(dto.ID, false); // Condizione necessare per il controllo del fatto che sul DB ho una versione uguale o più vecchia if (dto.Version == entity.Version) { entity.DataPagamento = dto.DataPagamento; entity.Importo = dto.ImportoPagamento; entity.ContrattoRiferimento = daoFactory.GetAssicurazioneContrattoDao().GetById(dto.IdContratto.GetValueOrDefault(), false); entity.ContrattoRiferimento.ImportoPremio = entity.Importo; result = true; } else { // Eccezione: Sul db c'è qualche cosa di più nuovo. _log.Error("Errore nel salvataggio del Premio Assicurativo: 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 del Premio Assicurativo - " + Utility.GetMethodDescription() + " - id:" + dto.ID, ex); throw; } return result; }
private static PremioAssicurativoDTO setDto(PremioAssicurativo entity) { var dto = new PremioAssicurativoDTO { DataPagamento = entity.DataPagamento, ID = entity.ID, IdContratto = entity.ContrattoRiferimento.ID, ImportoPagamento = entity.Importo, VersionContratto = entity.ContrattoRiferimento.Version, Version = entity.Version }; return dto; }
public int? ManageDomainEntity(PremioAssicurativoDTO dto) { try { return manage(dto).ID; } catch (Exception ex) { _log.Error("Errore nel caricamento dei Premi Assicurativi - " + Utility.GetMethodDescription() + " - id:" + dto.ID.ToString(), ex); throw; } }
public void Delete(PremioAssicurativoDTO premio) { GetServiceClient().DeletePremioAssicurativo(premio.ID, GetUserInfo()); CloseService(); }
public int? SetPremioAssicurativo(PremioAssicurativoDTO premioAssicurativo, UserInfo userinfo) { var windsorRep = new WindsorConfigRepository(); try { windsorRep.BeginTransaction(userinfo); var repo = new PremioAssicurativoRepository(userinfo, windsorRep); var item = repo.ManageDomainEntity(premioAssicurativo); windsorRep.Commit(); return item; } catch (Exception ex) { _log.Error("Errore il salvataggio del premio assicurativo - " + Utility.GetMethodDescription() + " - id:" + premioAssicurativo, ex); windsorRep.Rollback(); throw; } }