public static AssicurazioneContratto GetIstance(TipoPolizza tipo, DateTime dataScadenza, DateTime dataScadenzaPremio, int durata, TipoContratto tipoContratto)
        {
            AssicurazioneContratto contratto;

            switch (tipo)
            { 
                case TipoPolizza.Furto:
                    contratto = new FurtoAssicurazione(dataScadenza, dataScadenzaPremio, tipoContratto);
                    break;

                case TipoPolizza.GlobaleFabbricati:
                    contratto = new GlobaleAssicurazione(dataScadenza, dataScadenzaPremio, tipoContratto);
                    break;

                case TipoPolizza.Incendio:
                    contratto = new IncendioAssicurazione(dataScadenza, dataScadenzaPremio, tipoContratto);
                    break;

                case TipoPolizza.Infortuni:
                    contratto = new InfortuniAssicurazione(dataScadenza, dataScadenzaPremio, tipoContratto);
                    break;

                case TipoPolizza.ResponsabilitaCivile:
                    contratto = new ResponsabilitaCivileAssicurazione(dataScadenza, dataScadenzaPremio, tipoContratto);
                    break;

                default:
                    contratto = new AssicurazioneContratto(dataScadenza, dataScadenzaPremio, tipoContratto);
                    break;
            }

            contratto.MesiDurata = durata;

            return contratto;
        }
 public AssicurazioneContrattoDTO GetNew(CondominioDTO condominio, TipoPolizza tipoPolizza, int idTipoContratto)
 {
     var result = GetServiceClient().GetNewContrattoAssicurativo(condominio.ID, tipoPolizza, idTipoContratto, GetUserInfo());
     CloseService();
     return result; 
 }
Пример #3
0
        public AssicurazioneContrattoDTO GetNewContrattoAssicurativo(int idCondominio, TipoPolizza tipoPolizza, int idTipoContratto, int idAzienda)
        {
            try
            {
                var daoFactory = _windsorRepository.GetDaoFactory(_info.Azienda);
                AssicurazioneContratto contratto;

                var tipo = daoFactory.GetTipoContrattoDao().Find(idTipoContratto, false);
                if(tipo == null)
                    _log.WarnFormat("Tipo contratto non trovato - {0} - tipo:{1} - azienda:{2}", Utility.GetMethodDescription(), idTipoContratto, idAzienda);

                switch (tipoPolizza)
                { 
                    case TipoPolizza.Furto:
                        contratto = new FurtoAssicurazione(null, null, tipo);
                        break;
                    case TipoPolizza.GlobaleFabbricati:
                        contratto = new GlobaleAssicurazione(null, null, tipo);
                        break;
                    case TipoPolizza.Incendio:
                        contratto = new IncendioAssicurazione(null, null, tipo);
                        break;
                    case TipoPolizza.Infortuni:
                        contratto = new InfortuniAssicurazione(null, null, tipo);
                        break;
                    case TipoPolizza.ResponsabilitaCivile:
                        contratto = new ResponsabilitaCivileAssicurazione(null, null, tipo);
                        break;
                    default:
                        contratto = new AssicurazioneContratto(null, null, tipo);
                        break;
                }

                contratto.CondominioRiferimento = daoFactory.GetCondominioDao().GetById(idCondominio, false);

                Common.AssicurazioneContrattoHelper.SetDefault(contratto);
                return setAssicurazioniContrattiDto(contratto);
            }
            catch (Exception ex)
            {
                _log.ErrorFormat("Errore nella creazione di un nuovo contratto assicurativo - {0} - condominio:{1} - tipo:{2} - azienda:{3}", ex, Utility.GetMethodDescription(), idCondominio, tipoPolizza, idAzienda);
                throw;
            }

        }
Пример #4
0
        public AssicurazioneContrattoDTO GetNewContrattoAssicurativo(int idCondominio, TipoPolizza tipoPolizza, int idTipoContratto, UserInfo userinfo)
		{
			var windsorRep = new WindsorConfigRepository();
			try
			{
				windsorRep.BeginTransaction(userinfo);
				var repo = new ContrattoRepository(userinfo, windsorRep);
				var item = repo.GetNewContrattoAssicurativo(idCondominio, tipoPolizza, idTipoContratto, userinfo.Azienda);
				windsorRep.Commit();
				return item;
			}
			catch (Exception ex)
			{
				_log.ErrorFormat("Errore nella creazione di un nuovo contratto assicurativo - {0} - condominio:{1} - tipo polizza:{2} - tipo contratto:{3} - azienda:{4}" , ex, Utility.GetMethodDescription(), idCondominio, tipoPolizza, idTipoContratto, userinfo.Azienda);
				windsorRep.Rollback();
				throw;
			}
		}