/// <summary> /// Preenche os fundos vinculados à cobertura e ao produto /// Considera que o conjunto de fundos do produto é a interseção dos fundos das coberturas /// </summary> /// <param name="produtoApi">produto (Api)</param> /// <param name="produtoCobertura">cobertura (Api)</param> /// <param name="cobertura">cobertura (Esb)</param> private void PreencherFundos(Model.Produto produtoApi, Cobertura produtoCobertura, Contrato.CoberturaProdutoNegociado cobertura) { produtoCobertura.Fundos = new List <Model.Fundo>(); foreach (var fundo in cobertura.Fundos) { var fundoApi = new Model.Fundo(); fundoApi.Id = fundo.Id; //fundoApi.Cnpj = não existe referência ao cnpj no serviço fundoApi.NomeFantasia = fundo.NomeFantasia; fundoApi.PercentualRendaVariavel = (float?)fundo.PercentualRendaVariavel; fundoApi.Sigla = fundo.Codigo; produtoCobertura.Fundos.Add(fundoApi); } if (produtoCobertura.Fundos.Count > 0) { if (produtoApi.Fundos.Count == 0) { produtoApi.Fundos.AddRange(produtoCobertura.Fundos); } else { produtoApi.Fundos = produtoApi.Fundos.Intersect(produtoCobertura.Fundos).ToList(); } } }
public ActionResult Create(Cobertura Cobertura) { if (Cobertura.DESCRIPCION == string.Empty ) { ModelState.AddModelError(string.Empty, "Error, Se debe llenar todo los campos"); return(View(Cobertura)); } if (Cobertura.DESCRIPCION == null ) { ModelState.AddModelError(string.Empty, "Error, Se debe llenar todo los campos"); return(View(Cobertura)); } using (var API = new HttpClient()) { API.BaseAddress = new Uri(Baseurl); var postTask = API.PostAsJsonAsync <Cobertura>("Coberturas", Cobertura); postTask.Wait(); var result = postTask.Result; if (result.IsSuccessStatusCode) { return(RedirectToAction("Coberturas")); } } ModelState.AddModelError(string.Empty, "Error, Contate al administrador"); return(View(Cobertura)); }
/// <summary> /// Preenche os campos de antecipação (idade e tempo) da cobertura e do produto /// Considera que o conjunto valores de antecipação do produto é a interseção dos valores de antecipação das coberturas /// </summary> /// <param name="produtoApi">produto (Api)</param> /// <param name="produtoCobertura">cobertura (Api)</param> /// <param name="cobertura">cobertura (Esb)</param> private void PreencherAntecipacao(Model.Produto produtoApi, Cobertura produtoCobertura, Contrato.CoberturaProdutoNegociado cobertura) { produtoCobertura.IdadeAntecipacao = new List <int>(); produtoCobertura.TempoAntecipacao = new List <int>(); if (cobertura.AdiantamentoContribuicao != null && cobertura.AdiantamentoContribuicao.Count > 0) { var adiantamento = cobertura.AdiantamentoContribuicao.FirstOrDefault(); produtoCobertura.IdadeAntecipacao = adiantamento?.Idade.Select(i => (int)i).ToList(); produtoCobertura.TempoAntecipacao = adiantamento?.Prazo.Select(p => (int)p).ToList(); if (produtoCobertura.IdadeAntecipacao != null && produtoCobertura.IdadeAntecipacao.Count > 0) { if (produtoApi.IdadeAntecipacao.Count == 0) { produtoApi.IdadeAntecipacao.AddRange(produtoCobertura.IdadeAntecipacao); } else { produtoApi.IdadeAntecipacao = produtoApi.IdadeAntecipacao.Intersect(produtoCobertura.IdadeAntecipacao).ToList(); } } if (produtoCobertura.TempoAntecipacao != null && produtoCobertura.TempoAntecipacao.Count > 0) { if (produtoApi.TempoAntecipacao.Count == 0) { produtoApi.TempoAntecipacao.AddRange(produtoCobertura.TempoAntecipacao); } else { produtoApi.TempoAntecipacao = produtoApi.TempoAntecipacao.Intersect(produtoCobertura.TempoAntecipacao).ToList(); } } } }
public int EditarCobertura(Cobertura cob) { try { SqlConnection cnx = cn.conectar(); //Conexion cm = new SqlCommand("Cobertura", cnx); cm.Parameters.AddWithValue("b", 4); cm.Parameters.AddWithValue("@idcobertura", ""); //del procedimiento cm.Parameters.AddWithValue("@descripcion", cob); cm.Parameters.AddWithValue("@sumaAsegurada", cob); cm.Parameters.AddWithValue("@idseguros", ""); cm.CommandType = CommandType.StoredProcedure; cnx.Open(); cm.ExecuteNonQuery(); indicador = 1; } catch (Exception e) { e.Message.ToString(); indicador = 0; } finally { cm.Connection.Close(); } return(indicador); }
public int insertarCobertura(Cobertura cobr) { try { SqlConnection cnx = cn.conectar(); //Conexion cm = new SqlCommand("Pr_Cobertura", cnx); //Nombre del procedimiento cm.Parameters.AddWithValue("@b", 1); //Valores que toman los parametros cm.Parameters.AddWithValue("@idcobertura", ""); //del procedimiento cm.Parameters.AddWithValue("@descripcion", c.descripcion); cm.Parameters.AddWithValue("@sumaAsegurada", c.sumaAseguradora); cm.Parameters.AddWithValue("@idseguros", c.idseguros); cm.CommandType = CommandType.StoredProcedure; //Tipo de comando ejecutado cnx.Open(); //Abrir conexion de BD cm.ExecuteNonQuery(); //Ejecucion de consulta indicador = 1; //Valor del indicador } catch (Exception e) { e.Message.ToString(); //Mostrar mensaje en caso error indicador = 0; } finally { cm.Connection.Close(); //Cierre de conexion } return(indicador); }
public ActionResult DeleteConfirmed(int id) { Cobertura cobertura = db.Cobertura.Find(id); db.Cobertura.Remove(cobertura); db.SaveChanges(); return(RedirectToAction("Index")); }
public JsonResult ObterCobertura(Cobertura cobertura) { if (cobertura.Id == 0) { return(null); } cobertura = db.Cobertura.Find(cobertura.Id); return(Json(cobertura.DescricaoCobertura, JsonRequestBehavior.AllowGet)); }
/// <summary> /// Preenche as causas da cobertura /// </summary> /// <param name="produtoCobertura">cobertura (Api)</param> /// <param name="cobertura">cobertura (Esb)</param> /// <param name="limites">limites operacionais</param> private void PreencherCausas(Cobertura produtoCobertura, Contrato.CoberturaProdutoNegociado cobertura, List <Contrato.LimiteOperacionalPorFaixa> limites) { if (cobertura.CoberturaId != null) { produtoCobertura.Causas = limites.Where(l => l.CoberturasIds.Contains(cobertura.CoberturaId.Value)) .GroupBy(l => l.TipoGrupoCobertura).Select(g => new Causa { Descricao = g.Key }).ToList(); } }
public ActionResult Edit([Bind(Include = "Id,NomeCobertura,Tipo,DescricaoCobertura")] Cobertura cobertura) { if (ModelState.IsValid) { db.Entry(cobertura).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } return(View(cobertura)); }
public async Task <bool> AddAsync(Cobertura cobertura) { Cobertura = cobertura; _context.Cobertura.Add(Cobertura); await _context.SaveChangesAsync(); return(true); }
/// <summary> /// Preenche o tipo de cobertura agrupado da Api /// </summary> /// <param name="produtoCobertura">cobertura (Api)</param> /// <param name="cobertura">cobertura (Esb)</param> private void PreencherTipoCobertura(Cobertura produtoCobertura, Contrato.CoberturaProdutoNegociado cobertura) { TipoCoberturaAgrupadoEnum?tipoCobertura = ObterTipoCobertura(cobertura); if (tipoCobertura != null) { produtoCobertura.Tipo = new TipoCobertura(); produtoCobertura.Tipo.Id = (int?)tipoCobertura.Value; produtoCobertura.Tipo.Descricao = ((TipoCoberturaAgrupadoEnum)produtoCobertura.Tipo.Id).GetDescription(); } }
public ActionResult Edit([Bind(Include = "IdCobertura,Nombre,FK_IdProducto,Descripcion")] Cobertura cobertura) { if (ModelState.IsValid) { db.Entry(cobertura).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.FK_IdProducto = new SelectList(db.Producto, "IdProducto", "Nombre", cobertura.FK_IdProducto); return(View(cobertura)); }
public ActionResult Create([Bind(Include = "Id,NomeCobertura,DescricaoCobertura")] Cobertura cobertura) { if (ModelState.IsValid) { db.Cobertura.Add(cobertura); db.SaveChanges(); return(RedirectToAction("Index")); } return(View(cobertura)); }
public async Task <IActionResult> PostCobertura([FromBody] Cobertura cobertura) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } _context.Cobertura.Add(cobertura); await _context.SaveChangesAsync(); return(CreatedAtAction("GetCobertura", new { id = cobertura.Id }, cobertura)); }
// GET: Coberturas/Details/5 public ActionResult Details(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Cobertura cobertura = db.Cobertura.Find(id); if (cobertura == null) { return(HttpNotFound()); } return(View(cobertura)); }
// GET: Coberturas/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Cobertura cobertura = db.Cobertura.Find(id); if (cobertura == null) { return(HttpNotFound()); } ViewBag.FK_IdProducto = new SelectList(db.Producto, "IdProducto", "Nombre", cobertura.FK_IdProducto); return(View(cobertura)); }
/// <summary> /// Preenche as UFs recusadas da cobertura e do produto /// Considera que o conjunto de UFs recusadas do produto é a união das UFs recusadas das coberturas /// </summary> /// <param name="produtoApi">produto (Api)</param> /// <param name="produtoCobertura">cobertura (Api)</param> /// <param name="cobertura">cobertura (Esb)</param> private void PreencherUFsRecusadas(Model.Produto produtoApi, Cobertura produtoCobertura, Contrato.CoberturaProdutoNegociado cobertura) { produtoCobertura.UFsRecusadas = cobertura.UFsRecusadasIds.Select(uf => uf).ToList(); if (produtoCobertura.UFsRecusadas.Count > 0) { if (produtoApi.UFsRecusadas.Count == 0) { produtoApi.UFsRecusadas.AddRange(produtoCobertura.UFsRecusadas); } else { produtoApi.UFsRecusadas = produtoApi.UFsRecusadas.Union(produtoCobertura.UFsRecusadas).ToList(); } } }
public async Task <bool> UpdateAsync(int id, Cobertura cobertura) { Cobertura = _context.Cobertura.SingleOrDefault(x => x.Id == id); if (Cobertura == null) { return(false); } Cobertura.Descricao = cobertura.Descricao; await _context.SaveChangesAsync(); return(true); }
private void CalcularRepasse( DateTime dataNascimentoTitular, Cobertura cobertura, Model.Produto produto, ModeloPropostaCompleto modeloProposta, Dictionary <int, decimal> valoresRepasse, List <Cobertura> coberturasNaoExibidas) { if (cobertura != null && cobertura.EhServico && cobertura.ValorServicoSomadoNaCoberturaDeReferencia) { decimal valorRepasse = 0; int idItemProduto = 0; if (cobertura.ValoresRepassadoAoCliente != null) { valorRepasse = cobertura.ValoresRepassadoAoCliente.Where( c => (c.TipoRepasseCliente == ContratosEnum.TipoRepasseClienteEnum.PorIdade && dataNascimentoTitular.Idade() >= c.IdadeInicial && dataNascimentoTitular.Idade() <= c.IdadeFinal) || (c.TipoRepasseCliente == ContratosEnum.TipoRepasseClienteEnum.Fixo)) .Sum(x => x.Valor); } if (cobertura.ValorServicoSomadoNaCoberturaDeReferencia && produto.ReferenciaCoberturaId.HasValue) { idItemProduto = produto.Coberturas.Find(x => x.IdCoberturaEsim.GetValueOrDefault() == produto.ReferenciaCoberturaId.Value).IdEsim.GetValueOrDefault(); } else { idItemProduto = cobertura.IdEsim.GetValueOrDefault(); } if (idItemProduto != 0 && valorRepasse != 0) { if (valoresRepasse.ContainsKey(idItemProduto)) { valorRepasse += valoresRepasse[idItemProduto]; valoresRepasse.Remove(idItemProduto); } valoresRepasse.Add(idItemProduto, valorRepasse); } if (cobertura.EhServico && !cobertura.ExibeServicoNaListaDeCobertura) { coberturasNaoExibidas.Add(cobertura); } } }
private void ValidarCobertura(Cobertura cobertura, Model.Produto produto) { if (cobertura.CapitalSegurado == 0 || cobertura.Premio == 0) { return; } var s = string.Format("IdItemProduto: {0} | Produto: {1}", cobertura.IdEsim, produto.IdEsim); var obs = ObservacaoHelper.PreencherObservacao(id: 5, origem: typeof(ContratacaoCobertura).ToString(), itens: new[] { s }); Mensagens.Add(obs); throw new ProdutoException(obs); }
public ActionResult Delete(Cobertura Cobertura, int id) { using (var API = new HttpClient()) { API.BaseAddress = new Uri(Baseurl); var responstask = API.DeleteAsync("CoberturaS/" + id + ""); responstask.Wait(); var result = responstask.Result; if (result.IsSuccessStatusCode) { return(RedirectToAction("Coberturas")); } } return(View(Cobertura)); }
public ActionResult Edit(Cobertura Cobertura) { using (var API = new HttpClient()) { API.BaseAddress = new Uri(Baseurl); var responstask = API.PutAsJsonAsync("CoberturaS/" + Cobertura.IDCOBERTURA + "", Cobertura); responstask.Wait(); var result = responstask.Result; if (result.IsSuccessStatusCode) { return(RedirectToAction("Coberturas")); } } return(View(Cobertura)); }
public async Task <Response> Post([FromBody] Cobertura coberturaRequest) { coberturaRequest.Descripcion = Utils.Utilidades.Formato(coberturaRequest.Descripcion); bool continuar = await new Repositorio.ConsultarCoberturas().ValidarCobertura(coberturaRequest.Descripcion); if (continuar) { return(new Response() { IdError = 1, MessageError = string.Format("Ya existe la cobertura con nombre: {0}", coberturaRequest.Descripcion) }); } var response = new Response(); int resultado = 0; try { using (var contexto = new ContextDb()) { var coberturas = new Coberturas(); coberturas.Descripcion = coberturaRequest.Descripcion; coberturas.FechaModificacion = DateTime.Now; contexto.Coberturas.Add(coberturas); resultado = await contexto.SaveChangesAsync(); } if (resultado > 0) { response.IdError = 0; } else { response.IdError = 1; response.MessageError = "Ocurrio un error al crear la cobertura"; } } catch (Exception error) { response.IdError = 2; response.MessageError = error.Message; } return(response); }
public async Task <IHttpActionResult> GetCobertura(int id) { Cobertura c = await db.Coberturas.FindAsync(id); if (c == null) { return(NotFound()); } DTO_Cobertura cobertura = new DTO_Cobertura() { Id = c.Id, Descripcion = c.Descripcion, FechaCreacion = c.FechaCreacion }; return(Ok(cobertura)); }
public async Task <IActionResult> Create([Bind("Id,Descripcion,FechaModificacion,PlanId")] Cobertura cobertura) { var logRepository = LogManager.GetRepository(Assembly.GetEntryAssembly()); XmlConfigurator.Configure(logRepository, new FileInfo("log4net.config")); var logger = LogManager.GetLogger(typeof(ClientesController)); logger.Info("Se Agrego la Cobertura :" + cobertura.Descripcion.ToString()); if (ModelState.IsValid) { _context.Add(cobertura); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } ViewData["PlanId"] = new SelectList(_context.Plan, "Id", "Id", cobertura.PlanId); return(View(cobertura)); }
/// <summary> /// Preenche os prazos de cobertura da cobertura e do produto /// Considera que o conjunto de prazos de cobertura do produto é a interseção dos prazos de cobertura das coberturas /// </summary> /// <param name="produtoApi">produto (Api)</param> /// <param name="produtoCobertura">cobertura (Api)</param> /// <param name="cobertura">cobertura (Esb)</param> private void PreencherPrazoCerto(Model.Produto produtoApi, Cobertura produtoCobertura, Contrato.CoberturaProdutoNegociado cobertura) { produtoCobertura.PrazoCerto = new List <int>(); if (cobertura.PrazoDeCobertura != null && cobertura.PrazoDeCobertura.Count > 0) { produtoCobertura.PrazoCerto = cobertura.PrazoDeCobertura.Select(p => (int)p).ToList(); /*verificar*/ if (produtoCobertura.PrazoCerto.Count > 0) { if (produtoApi.PrazoCerto.Count == 0) { produtoApi.PrazoCerto.AddRange(produtoCobertura.PrazoCerto); } else { produtoApi.PrazoCerto = produtoApi.PrazoCerto.Intersect(produtoCobertura.PrazoCerto).ToList(); } } } }
/// <summary> /// Preenche os prazos de decréscimo da cobertura e do produto /// Considera que o conjunto de prazos de decréscimo do produto é a interseção dos prazos de decréscimo das coberturas /// </summary> /// <param name="produtoApi">produto (Api)</param> /// <param name="produtoCobertura">cobertura (Api)</param> /// <param name="cobertura">cobertura (Esb)</param> private void PreencherPrazoDecrescimo(Model.Produto produtoApi, Cobertura produtoCobertura, Contrato.CoberturaProdutoNegociado cobertura) { produtoCobertura.PrazoDecrescimo = new List <int>(); if (cobertura.DecrescimoContribuicao != null && cobertura.DecrescimoContribuicao.Count > 0) { produtoCobertura.PrazoDecrescimo = cobertura.DecrescimoContribuicao.GroupBy(d => d.Prazo).Select(g => (int)g.Key).ToList(); if (produtoCobertura.PrazoDecrescimo.Count > 0) { if (produtoApi.PrazoDecrescimo.Count == 0) { produtoApi.PrazoDecrescimo.AddRange(produtoCobertura.PrazoDecrescimo); } else { produtoApi.PrazoDecrescimo = produtoApi.PrazoDecrescimo.Intersect(produtoCobertura.PrazoDecrescimo).ToList(); } } } }
public async Task <IHttpActionResult> PostCobertura(DTO_Cobertura cobertura) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } Cobertura nuevaCobertura = new Cobertura() { Descripcion = cobertura.Descripcion, FechaCreacion = DateTime.Now }; db.Coberturas.Add(nuevaCobertura); await db.SaveChangesAsync(); cobertura.Id = nuevaCobertura.Id; return(CreatedAtRoute("DefaultApi", new { id = cobertura.Id }, cobertura)); }
public ActionResult Edit([Bind(Include = "Id,Descripcion")] Cobertura cobertura) { if (ModelState.IsValid) { if (db.Coberturas.FirstOrDefault(s => s.Descripcion == cobertura.Descripcion && s.Id != cobertura.Id) != null) { ModelState.AddModelError("Descripcion", "La cobertura que desea ingresar ya existe"); } else { db.Entry(cobertura).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } } return(View(cobertura)); }
public ActionResult Edit(int id) { Cobertura Cobertura = null; using (var API = new HttpClient()) { API.BaseAddress = new Uri(Baseurl); var responstask = API.GetAsync("CoberturaS/" + id.ToString()); responstask.Wait(); var result = responstask.Result; if (result.IsSuccessStatusCode) { var readTask = result.Content.ReadAsAsync <Cobertura>(); readTask.Wait(); Cobertura = readTask.Result; } } return(View(Cobertura)); }
public Vida CotizaVidaCPM(string Credito, string Plazo, string AnoCredito, string FechaInicio, string TasaInteresAnual) { Vida cotizacion = new Vida(); List<Saldo> saldos = new List<Saldo>(); double tarVida, tasaInteresAnual, tasaInteresMensual, mensualidad, totalIntereses; DateTime fechaActual, fechaPasada; int i; double tmpArriba, tmpAbajo; try { cotizacion.CreditoInicial = Convert.ToDouble(Credito).ToString("$#,##0.00"); tarVida = Convert.ToDouble(System.Configuration.ConfigurationManager.AppSettings["TarifaVida"].ToString()); tasaInteresAnual=Convert.ToDouble(TasaInteresAnual); tasaInteresAnual = (tasaInteresAnual / 100); tasaInteresMensual= (Convert.ToDouble(TasaInteresAnual)/12); tasaInteresMensual = (tasaInteresMensual / 100); tmpArriba = ((tasaInteresMensual) * Math.Pow(1 + tasaInteresMensual, Convert.ToDouble(Plazo))); tmpAbajo = ((Math.Pow(1 + tasaInteresMensual, Convert.ToDouble(Plazo))) - 1); mensualidad = (Convert.ToDouble(Credito) * (tmpArriba / tmpAbajo)); double saldoAnterior = Convert.ToDouble(Credito); fechaPasada=Convert.ToDateTime(FechaInicio); for (i = 0; i <= (Convert.ToInt32(Plazo)); i++) { double saldoInsoluto, cuotaVida, interes, capital; int dias; TimeSpan tiempo; Saldo tmp = new Saldo(); if (i == 0) { saldoInsoluto = saldoAnterior; cuotaVida = (saldoInsoluto * tarVida); tmp.FechaPago = fechaPasada.ToString("dd/MM/yyyy"); tmp.DiasTranscurridos = "0"; tmp.Periodo = i; tmp.Pago = mensualidad; tmp.Capital = 0.00; tmp.Interes = 0.00; tmp.SaldoInsoluto = saldoInsoluto; tmp.CuotaVida = cuotaVida; } else { fechaActual = fechaPasada.AddMonths(1); tiempo = fechaActual.Subtract(fechaPasada); dias = tiempo.Days; if (i == Convert.ToInt32(Plazo)) { capital = saldoAnterior; interes = ((saldoAnterior * tasaInteresAnual * dias) / 360); tmp.Periodo = i; tmp.FechaPago = fechaActual.ToString("dd/MM/yyyy"); tmp.DiasTranscurridos = Convert.ToString(dias); tmp.Pago = capital + interes; tmp.Capital = capital; tmp.Interes = interes; tmp.SaldoInsoluto = 0.00; tmp.CuotaVida = 0.00; } else { interes = ((saldoAnterior * tasaInteresAnual * dias) / 360); capital = (mensualidad - interes); saldoInsoluto = (saldoAnterior - capital); cuotaVida = (saldoInsoluto * tarVida); tmp.Periodo = i; tmp.Pago = mensualidad; tmp.FechaPago = fechaActual.ToString("dd/MM/yyyy"); tmp.DiasTranscurridos = Convert.ToString(dias); tmp.Capital = capital; tmp.Interes = interes; tmp.SaldoInsoluto = saldoInsoluto; tmp.CuotaVida = cuotaVida; saldoAnterior = saldoInsoluto; } fechaPasada = fechaActual; } saldos.Add(tmp); } cotizacion.HTMLString = GeneraCorridaHTML(saldos); int mesInicio, mesFin; int noMeses; noMeses = ((Convert.ToInt32(AnoCredito) + 1) * 12); mesFin = noMeses - 1; mesInicio = noMeses - 12; double primaTotal, pagoMensual; primaTotal = 0.00; pagoMensual = 0.00; for (i = mesInicio; i <= mesFin; i++) { Saldo saldo; saldo = saldos.ElementAt(i); primaTotal += saldo.CuotaVida; saldo.Interes = Math.Round(saldo.Interes, 2); saldo.CuotaVida = Math.Round(saldo.CuotaVida, 2); saldo.Pago = Math.Round(saldo.Pago, 2); saldo.SaldoInsoluto = Math.Round(saldo.SaldoInsoluto, 2); saldo.Capital = Math.Round(saldo.Capital, 2); cotizacion.saldos.Add(saldo); } pagoMensual = ((primaTotal / 12)); cotizacion.PrimaTotal = Convert.ToString(primaTotal); cotizacion.PagoMensual = Convert.ToString(pagoMensual); Cobertura tmp1 = new Cobertura(); Cobertura tmp2 = new Cobertura(); Cobertura tmp3 = new Cobertura(); Cobertura tmp4 = new Cobertura(); tmp1.Id = "1"; tmp1.Descripcion = "COBERTURA BASICA"; tmp1.SumaAseg = "SALDO INSOLUTO"; cotizacion.coberturas.Add(tmp1); tmp2.Id = "2"; tmp2.Descripcion = "INVALIDEZ TOTAL Y PERMANENTE"; tmp2.SumaAseg = "AMPARADA"; cotizacion.coberturas.Add(tmp2); tmp3.Id = "3"; tmp3.Descripcion = "COBERTURA POR DESEMPLEO"; tmp3.SumaAseg = "AMPARADA"; cotizacion.coberturas.Add(tmp3); tmp4.Id = "4"; tmp4.Descripcion = "FALLECIMIENTO DEL COACREDITADO"; tmp4.SumaAseg = "AMPARADA"; cotizacion.coberturas.Add(tmp4); } catch (Exception ex) { cotizacion.ErrorBool = true; cotizacion.ErrorDesc = ex.Message; } return cotizacion; }
public Vivienda CotizaViviendaPRYBE(string SumaAsegurada, string CodigoPostal) { Vivienda cotizacion = new Vivienda(); double tarZonaTerremoto, tarZonaFHM, tarCobIncendio, tarCobRC, tarifaFinal, sumaAseg, primaNeta, primaTotal, primerPago, pagoSub, iva, derPoliza; string idZonaTerremoto, idZonaFHM; Zona zona = new Zona(); try { zona = RegresaZona(CodigoPostal); idZonaTerremoto = zona.Terremoto; idZonaFHM = zona.FHM; iva = 1.16; derPoliza = 100.00; tarZonaTerremoto = 0.00; tarZonaFHM = 0.00; sumaAseg = Convert.ToDouble(SumaAsegurada); if (idZonaFHM == "" || idZonaTerremoto == "") { cotizacion.ErrorBool = true; cotizacion.ErrorDesc = "No se encontro la zona de riesgo para el Código Postal capturado"; } else { switch (idZonaTerremoto) { case "A": tarZonaTerremoto = Convert.ToDouble(System.Configuration.ConfigurationManager.AppSettings[idZonaTerremoto].ToString()); break; case "B": tarZonaTerremoto = Convert.ToDouble(System.Configuration.ConfigurationManager.AppSettings[idZonaTerremoto].ToString()); break; case "B1": tarZonaTerremoto = Convert.ToDouble(System.Configuration.ConfigurationManager.AppSettings[idZonaTerremoto].ToString()); break; case "C": tarZonaTerremoto = Convert.ToDouble(System.Configuration.ConfigurationManager.AppSettings[idZonaTerremoto].ToString()); break; case "D": tarZonaTerremoto = Convert.ToDouble(System.Configuration.ConfigurationManager.AppSettings[idZonaTerremoto].ToString()); break; case "E": tarZonaTerremoto = Convert.ToDouble(System.Configuration.ConfigurationManager.AppSettings[idZonaTerremoto].ToString()); break; case "F": tarZonaTerremoto = Convert.ToDouble(System.Configuration.ConfigurationManager.AppSettings[idZonaTerremoto].ToString()); break; case "G": tarZonaTerremoto = Convert.ToDouble(System.Configuration.ConfigurationManager.AppSettings[idZonaTerremoto].ToString()); break; case "H": tarZonaTerremoto = Convert.ToDouble(System.Configuration.ConfigurationManager.AppSettings[idZonaTerremoto].ToString()); break; case "H1": tarZonaTerremoto = Convert.ToDouble(System.Configuration.ConfigurationManager.AppSettings[idZonaTerremoto].ToString()); break; case "I": tarZonaTerremoto = Convert.ToDouble(System.Configuration.ConfigurationManager.AppSettings[idZonaTerremoto].ToString()); break; case "J": tarZonaTerremoto = Convert.ToDouble(System.Configuration.ConfigurationManager.AppSettings[idZonaTerremoto].ToString()); break; } switch (idZonaFHM) { case "A1PY": tarZonaFHM = Convert.ToDouble(System.Configuration.ConfigurationManager.AppSettings[idZonaFHM].ToString()); break; case "A1ZG": tarZonaFHM = Convert.ToDouble(System.Configuration.ConfigurationManager.AppSettings[idZonaFHM].ToString()); break; case "A1ZI": tarZonaFHM = Convert.ToDouble(System.Configuration.ConfigurationManager.AppSettings[idZonaFHM].ToString()); break; case "A1ZP": tarZonaFHM = Convert.ToDouble(System.Configuration.ConfigurationManager.AppSettings[idZonaFHM].ToString()); break; case "A2": tarZonaFHM = Convert.ToDouble(System.Configuration.ConfigurationManager.AppSettings[idZonaFHM].ToString()); break; case "A3": tarZonaFHM = Convert.ToDouble(System.Configuration.ConfigurationManager.AppSettings[idZonaFHM].ToString()); break; } tarCobIncendio = Convert.ToDouble(System.Configuration.ConfigurationManager.AppSettings["CobIncendio"].ToString()); tarCobRC = Convert.ToDouble(System.Configuration.ConfigurationManager.AppSettings["CobRC"].ToString()); tarifaFinal = tarZonaTerremoto + tarZonaFHM + tarCobIncendio + tarCobRC; primaNeta = (sumaAseg * (tarifaFinal / 1000)); pagoSub = (primaNeta / 12) * iva; primerPago = (pagoSub) + (derPoliza * iva); cotizacion.PrimaNeta = Convert.ToString(primaNeta); cotizacion.PrimerPago = Convert.ToString(primerPago); cotizacion.PagoSubsecuente = Convert.ToString(pagoSub); cotizacion.PrimaTotal = Convert.ToString(primaNeta * iva); Cobertura tmp1 = new Cobertura(); Cobertura tmp2 = new Cobertura(); Cobertura tmp3 = new Cobertura(); Cobertura tmp4 = new Cobertura(); Cobertura tmp5 = new Cobertura(); Cobertura tmp6 = new Cobertura(); tmp1.Id = "1"; tmp1.Descripcion = "TODO RIESGO INCENDIO EDIFICIO"; tmp1.SumaAseg = Convert.ToString(sumaAseg); cotizacion.coberturas.Add(tmp1); tmp2.Id = "2"; tmp2.Descripcion = "GASTOS EXTRAS"; tmp2.SumaAseg = Convert.ToString(sumaAseg * 0.10); cotizacion.coberturas.Add(tmp2); tmp3.Id = "3"; tmp3.Descripcion = "REMOCION DE ESCOMBROS"; tmp3.SumaAseg = Convert.ToString(sumaAseg * 0.10); cotizacion.coberturas.Add(tmp3); tmp4.Id = "4"; tmp4.Descripcion = "FENOMENOS HIDROMETEOROLOGICOS"; tmp4.SumaAseg = "AMPARADA"; cotizacion.coberturas.Add(tmp4); tmp5.Id = "5"; tmp5.Descripcion = "TERREMOTO Y/O ERUPCION VOLCANICA"; tmp5.SumaAseg = "AMPARADA"; cotizacion.coberturas.Add(tmp5); tmp6.Id = "6"; tmp6.Descripcion = "RESPONSABILIDAD CIVIL FAMILIAR"; tmp6.SumaAseg = "1,500,000.00"; cotizacion.coberturas.Add(tmp6); } } catch (Exception ex) { cotizacion.ErrorBool = true; cotizacion.ErrorDesc = ex.Message; } return cotizacion; }
public Vida CotizaVidaPRYBE(string Credito, string Plazo, string AnoCredito) { Vida cotizacion = new Vida(); List<Saldo> saldos = new List<Saldo>(); double tarVida, tasaInteres, mensualidad; int i; double tmpArriba, tmpAbajo; try { tarVida = Convert.ToDouble(System.Configuration.ConfigurationManager.AppSettings["TarifaVida"].ToString()); tasaInteres = Convert.ToDouble(System.Configuration.ConfigurationManager.AppSettings["InteresVida"].ToString()); tasaInteres = (tasaInteres / 100); tmpArriba = ((tasaInteres) * Math.Pow(1 + tasaInteres, Convert.ToDouble(Plazo))); tmpAbajo = ((Math.Pow(1 + tasaInteres, Convert.ToDouble(Plazo))) - 1); mensualidad = (Convert.ToDouble(Credito) * (tmpArriba / tmpAbajo)); double saldoAnterior = Convert.ToDouble(Credito); for (i = 0; i <= (Convert.ToInt32(Plazo)); i++) { double saldoInsoluto, cuotaVida, interes, capital; Saldo tmp = new Saldo(); if (i == 0) { saldoInsoluto = saldoAnterior; cuotaVida = (saldoInsoluto * tarVida); tmp.Periodo = i; tmp.Pago = mensualidad; tmp.Capital = 0.00; tmp.Interes = 0.00; tmp.SaldoInsoluto = saldoInsoluto; tmp.CuotaVida = cuotaVida; } else { interes = (saldoAnterior * tasaInteres); capital = (mensualidad - interes); saldoInsoluto = (saldoAnterior - capital); cuotaVida = (saldoInsoluto * tarVida); tmp.Periodo = i; tmp.Pago = mensualidad; tmp.Capital = capital; tmp.Interes = interes; tmp.SaldoInsoluto = saldoInsoluto; tmp.CuotaVida = cuotaVida; } saldos.Add(tmp); saldoAnterior = saldoInsoluto; } cotizacion.HTMLString = GeneraCorridaHTML(saldos); int mesInicio, mesFin; int noMeses; noMeses = ((Convert.ToInt32(AnoCredito) + 1) * 12); mesFin = noMeses - 1; mesInicio = noMeses - 12; double primaTotal, pagoMensual; primaTotal = 0.00; pagoMensual = 0.00; for (i = mesInicio; i <= mesFin; i++) { Saldo saldo; saldo = saldos.ElementAt(i); primaTotal += saldo.CuotaVida; saldo.Interes = Math.Round(saldo.Interes, 2); saldo.CuotaVida = Math.Round(saldo.CuotaVida, 2); saldo.Pago = Math.Round(saldo.Pago, 2); saldo.SaldoInsoluto = Math.Round(saldo.SaldoInsoluto, 2); saldo.Capital = Math.Round(saldo.Capital, 2); cotizacion.saldos.Add(saldo); } pagoMensual = ((primaTotal / 12)); cotizacion.PrimaTotal = Convert.ToString(primaTotal); cotizacion.PagoMensual = Convert.ToString(pagoMensual); Cobertura tmp1 = new Cobertura(); Cobertura tmp2 = new Cobertura(); Cobertura tmp3 = new Cobertura(); Cobertura tmp4 = new Cobertura(); tmp1.Id = "1"; tmp1.Descripcion = "COBERTURA BASICA"; tmp1.SumaAseg = "SALDO INSOLUTO"; cotizacion.coberturas.Add(tmp1); tmp2.Id = "2"; tmp2.Descripcion = "INVALIDEZ TOTAL Y PERMANENTE"; tmp2.SumaAseg = "AMPARADA"; cotizacion.coberturas.Add(tmp2); tmp3.Id = "3"; tmp3.Descripcion = "COBERTURA POR DESEMPLEO"; tmp3.SumaAseg = "AMPARADA"; cotizacion.coberturas.Add(tmp3); tmp4.Id = "4"; tmp4.Descripcion = "FALLECIMIENTO DEL COACREDITADO"; tmp4.SumaAseg = "AMPARADA"; cotizacion.coberturas.Add(tmp4); } catch (Exception ex) { cotizacion.ErrorBool = true; cotizacion.ErrorDesc = ex.Message; } return cotizacion; }