public BENEFICIO obtenerBeneficioPrestacion(PRESTACION prestacion, List <BENEFICIO> beneficios) { BENEFICIO beneficio = null; using (var entities = new SeguroEntities()) { beneficio = entities.BENEFICIO.Where(d => d.ID_PRESTACION == prestacion.ID_PRESTACION).FirstOrDefault(); } return(beneficio); }
public int calcularDescuentoPrestacion(int precioPrestacion, BENEFICIO beneficio) { int fraccion = (int)(precioPrestacion * beneficio.PORCENTAJE / 100); if (fraccion > beneficio.LIMITE_DINERO) { return(beneficio.LIMITE_DINERO.Value); } else { return(fraccion); } }
public static int crearBeneficio(decimal porcentaje, int limite, int idPlan, int idPrestacion) { using (var entities = new SeguroEntities()) { BENEFICIO beneficio = new BENEFICIO(); beneficio.ID_PLAN = idPlan; beneficio.ID_PRESTACION = idPrestacion; beneficio.PORCENTAJE = porcentaje; beneficio.LIMITE_DINERO = limite; entities.BENEFICIO.Add(beneficio); entities.SaveChangesAsync(); return(beneficio.ID_BENEFICIO); } }
public void obtenerBeneficioPrestacion() { PRESTACION prestacion = new PRESTACION(); prestacion.ID_PRESTACION = 1; prestacion.NOMBRE = "Prestacion ex"; prestacion.CODIGO = "CodigoEx" + System.DateTime.Today.ToString(); BENEFICIO beneficio = new BENEFICIO(); beneficio.ID_BENEFICIO = 1; beneficio.ID_PRESTACION = 1; List <BENEFICIO> beneficios = new List <BENEFICIO>(); beneficios.Add(beneficio); AccionesSeguro accionesSeguro = new AccionesSeguro(); BENEFICIO resultado = accionesSeguro.obtenerBeneficioPrestacion(prestacion, beneficios); Assert.IsTrue(resultado.ID_BENEFICIO == beneficio.ID_BENEFICIO); }
public void calcularDescuentoTest() { AccionesSeguro accionesSeguro = new AccionesSeguro(); //caso 1 int precioPrestacion = 100; BENEFICIO beneficio = new BENEFICIO(); beneficio.PORCENTAJE = 25; beneficio.LIMITE_DINERO = 90; int resultadoEsperado1 = 25; int resultado1 = accionesSeguro.calcularDescuentoPrestacion(precioPrestacion, beneficio); Assert.IsTrue(resultado1 == resultadoEsperado1, "Resultado: " + resultado1 + " Resultado esperado: " + resultadoEsperado1); //caso 2 precioPrestacion = 1000; int resultadoEsperado2 = 90; int resultado2 = accionesSeguro.calcularDescuentoPrestacion(precioPrestacion, beneficio); Assert.IsTrue(resultado2 == resultadoEsperado2, "Res:" + resultado2 + " Esperado: " + resultadoEsperado2); }
public ActionResult ConfirmarEdit(BENEFICIO beneficio) { #region Validações if (beneficio.FORNECEDOR <= 0) { return(Json(new { status = 100, ex = "Informe um fornecedor!" })); } if (string.IsNullOrEmpty(beneficio.DESCRICAO)) { return(Json(new { status = 100, ex = "Informe uma descrição!" })); } if (string.IsNullOrEmpty(beneficio.CUMULATIVO)) { return(Json(new { status = 100, ex = "Informe se é cumulativo ou não!" })); } if (string.IsNullOrEmpty(beneficio.SITUACAO)) { return(Json(new { status = 100, ex = "Informe uma situação!" })); } #endregion #region Alterar Beneficio if (!string.IsNullOrEmpty(beneficio.DESCRICAO)) { beneficio.DESCRICAO = beneficio.DESCRICAO.ToUpper(); } _db.Entry(beneficio).State = EntityState.Modified; _db.SaveChanges(); #endregion return(Json(new { status = 200, msg = "Alterado com sucesso!" })); }
public int obtenerDescuentoPrestacion(int rutAfiliado, string codigoPrestacion, int precioPrestacion) { //obtenerner afiliado AFILIADO afiliado = obtenerAfiliado(rutAfiliado); if (afiliado == null) { return(0); } //obtener plan afiliado PLAN plan = obtenerPlanAfiliado(afiliado); //obtener beneficios del afiliado List <BENEFICIO> beneficios = obtenerBeneficiosPlan(plan.ID_PLAN); //obtener prestacion PRESTACION prestacion = obtenerPrestacion(codigoPrestacion); //obtener beneficio aplicable a la prestación BENEFICIO beneficio = obtenerBeneficioPrestacion(prestacion, beneficios); //obtener descuento int descuento = calcularDescuentoPrestacion(precioPrestacion, beneficio); return(descuento); }