public ActionResult Eliminar(int id) { if (Session["id"] != null) { int id_usuario = Convert.ToInt32(Session["id"]); Usuario usuario = db.Usuario.Find(id_usuario); if (usuario.rol == 1) { DescuentoUsuario descuentoUsuario = db.DescuentoUsuario.Find(id); if (descuentoUsuario.Pago.Count == 0) { db.DescuentoUsuario.Remove(descuentoUsuario); } else { descuentoUsuario.estado_eliminado = 2; } db.SaveChanges(); return(RedirectToAction("Index")); } else { return(RedirectToAction("IniciarSesion", "Home")); } } else { return(RedirectToAction("IniciarSesion", "Home")); } }
public ActionResult CanjearPuntos(DescuentoUsuario descuentoUsuario) { int id_usuario = Convert.ToInt32(Session["id"]); Usuario usuario = db.Usuario.Find(id_usuario); Descuento descuento = db.Descuento.Find(descuentoUsuario.id_descuento); int valor_descuento = descuento.valor; int puntos_usuario = usuario.puntos; if (valor_descuento > puntos_usuario) { SelectList descuentos = new SelectList(db.Descuento.ToList().OrderBy(d => d.valor), "id", "nombre"); ViewBag.Descuentos = descuentos; ViewBag.Puntos = usuario.puntos; ViewBag.PuntosInsuficientes = "No tienes los puntos necesarios"; return(View()); } else { descuentoUsuario.id_usuario = usuario.id; descuentoUsuario.estado_eliminado = 1; descuentoUsuario.estado_utilizado = 1; descuentoUsuario.fecha_registro = DateTime.Now; //Session["puntos"] = valor_descuento; db.DescuentoUsuario.Add(descuentoUsuario); usuario.puntos = usuario.puntos - valor_descuento; usuario.confirmar_contrasena = usuario.contrasena; db.SaveChanges(); return(RedirectToAction("Index")); } }
public ActionResult InscribirseEnClase(string id_descuento_usuario) { int id_usuario = Convert.ToInt32(Session["id"]); Usuario usuario = db.Usuario.Find(id_usuario); Clase clase = db.Clase.Find(Convert.ToInt32(Session["ClaseInscrita"])); Session["error"] = ""; if (db.ClaseUsuario.Find(clase.id, usuario.id) == null) { if (!String.IsNullOrEmpty(id_descuento_usuario)) { Session["error"] = ""; ClaseUsuario claseusuario = db.ClaseUsuario.Create(); claseusuario.id_clase = clase.id; claseusuario.id_usuario = usuario.id; Pago pago = db.Pago.Create(); claseusuario.id_pago = pago.id; pago.monto_inicial = clase.precio; pago.id_descuento_usuario = Convert.ToInt32(id_descuento_usuario); DescuentoUsuario descuentoUsuario = db.DescuentoUsuario.Find(Convert.ToInt32(id_descuento_usuario)); pago.monto_final = clase.precio - (clase.precio * descuentoUsuario.Descuento.numero); descuentoUsuario.estado_utilizado = 2; pago.fecha_registro = DateTime.Now; db.ClaseUsuario.Add(claseusuario); db.Pago.Add(pago); db.SaveChanges(); return(RedirectToAction("Index")); } else { Session["error"] = ""; ClaseUsuario claseusuario = db.ClaseUsuario.Create(); claseusuario.id_clase = clase.id; claseusuario.id_usuario = usuario.id; Pago pago = db.Pago.Create(); claseusuario.id_pago = pago.id; pago.monto_inicial = clase.precio; pago.monto_final = clase.precio; pago.fecha_registro = DateTime.Now; db.ClaseUsuario.Add(claseusuario); db.Pago.Add(pago); db.SaveChanges(); return(RedirectToAction("Index")); } } else { Session["error"] = "Usted ya esta inscrito a esta clase"; return(RedirectToAction("Detalles", "Clase", new { id = clase.id })); } }