Exemplo n.º 1
0
        public ActionResult Buy(int?id)
        {
            BOClaves oBOClaves = new BOClaves();

            if (id is null)
            {
                return(RedirectToAction("../Home"));
            }
            //Comprueba si hay stock del juego al que accede para comprar
            if (oBOClaves.checkStockClaveByid_juego(id.Value) is false)
            {
                return(RedirectToAction("../Games/Game/" + id));
            }

            BOJuegos    oBOJuegos    = new BOJuegos();
            JuegosModel ojuegosModel = oBOJuegos.getJuegoById(id.Value);

            return(View(ojuegosModel));
        }
Exemplo n.º 2
0
        public ActionResult Game(int?id, String comment)
        {
            //Control de errores
            if (Session["Log"] == null)
            {
                return(RedirectToAction("/Login/Login"));
            }
            if (id == null)
            {
                return(RedirectToAction("../Games/Game/" + id));
            }
            juegos juego = new juegos();

            using (var bd = new Games_MarketEntities())
            {
                juego = bd.juegos.Find(id);
            }
            if (juego == null || comment == "")
            {
                return(RedirectToAction("/Game"));
            }
            //Encuentra los datos del juego
            BOJuegos    oBOjuego    = new BOJuegos();
            JuegosModel juegosModel = oBOjuego.getJuegoById(id.Value);

            //Encuentra los generos del juego
            List <GenerosModel> oGenerosModel = oBOjuego.getGenerosById_juegosList(id.Value);
            string generos = "";

            foreach (var item in oGenerosModel)
            {
                generos += " " + @item.nombre;
            }
            ViewBag.generos = generos;

            //Encuentra las capturas del juego
            List <CapturasModel> listaCapturas = oBOjuego.getCapturasList(id.Value);

            ViewData["capturas"] = listaCapturas;

            //Añade el comentario
            BOComentarios oBOComentarios = new BOComentarios();

            if (comment != "")
            {
                oBOComentarios.post(id.Value, (int)Session["Log"], comment);
            }
            //Encuentra los comentarios
            List <ComentariosModel> listaComentarios = oBOComentarios.getComments(id.Value);

            ViewData["comentarios"] = listaComentarios;

            if (listaComentarios.Count != 0)
            {
                ViewBag.checkComments = true;
            }

            //Comprueba si hay stock
            BOClaves oBOClaves = new BOClaves();

            ViewBag.stock = oBOClaves.checkStockClaveByid_juego(id.Value);

            //Comprueba si el usuario lo tiene en lista de deseados
            if (Session["Log"] != null)
            {
                BOLogin   oBOLogin   = new BOLogin();
                usuarios  usuario    = oBOLogin.getUsuarioById((int)Session["Log"]);
                BOLibrary oBOLibrary = new BOLibrary();
                ViewBag.wish = oBOLibrary.checkWishList(usuario.id_usuario, id.Value);
            }

            return(View(juegosModel));
        }
Exemplo n.º 3
0
        public ActionResult Buy(VentasModel oventasModel)
        {
            //Comprobaciones
            BOClaves    oBOClaves    = new BOClaves();
            BOJuegos    oBOJuegos    = new BOJuegos();
            JuegosModel ojuegosModel = oBOJuegos.getJuegoById(oventasModel.id_juego);

            if (oBOClaves.checkStockClaveByid_juego(oventasModel.id_juego) == false)
            {
                return(RedirectToAction("../Games/Game/" + oventasModel.id_juego));
            }
            if (oventasModel.tarj is null || oventasModel.tarj.Length != 16)
            {
                ViewBag.Error = "Número de la tarjeta erróneo.";
                return(View(ojuegosModel));
            }
            if (oventasModel.tarj_mes is null || oventasModel.tarj_mes.Length != 2)
            {
                ViewBag.Error = "Número del mes de la tarjeta erróneo.";
                return(View(ojuegosModel));
            }
            if (oventasModel.tarj_ano is null || oventasModel.tarj_ano.Length != 2)
            {
                ViewBag.Error = "Número del año de la tarjeta erróneo.";
                return(View(ojuegosModel));
            }
            if (oventasModel.cod_seg is null || oventasModel.cod_seg.Length != 3)
            {
                ViewBag.Error = "Número del código de seguridad de la tarjeta erróneo.";
                return(View(ojuegosModel));
            }
            if (Session["Log"] is null)
            {
                return(RedirectToAction("../Login/Login"));
            }

            //Iniciamos el proceso de compra.
            BOLogin  oBOLogin = new BOLogin();
            usuarios ousuario = oBOLogin.getUsuarioById((int)Session["Log"]);

            oventasModel.id_usuario = ousuario.id_usuario;
            //Iniciamos el proceso de compra.
            BOVentas oBOVentas = new BOVentas();
            ventas   oventa    = oBOVentas.addVenta(oventasModel);

            if (oventa.id_clave == 0)
            {
                ViewBag.Error = "Hemos tenido un problema durante el proceso de compra.";
                return(View(ojuegosModel));
            }

            //Envia un email con el código comprado
            claves      oclaves      = oBOClaves.getClaveByid_clave(oventa.id_clave);
            MailMessage oMailMessage = new MailMessage("*****@*****.**", ousuario.email, "¡Gracias por comprar en GamesMarket!",
                                                       "<p>Hola " + ousuario.nombre + " " + ousuario.apellidos + "</p>" + "<p>La Key del juego " + ojuegosModel.nombre + " comprado el " + oventa.fecha_venta + " es: </p>" +
                                                       "<h2>" + oclaves.codigo + "</h2>" +
                                                       "<p>¡Gracias y esperamos que sigas comprando en GamesMarket!<p>" +
                                                       "<p>No olvides que puedes consultar la clave también iniciando sesión en nuestra web: www.GamesMarket.com </p>");

            BOMail oBOMail = new BOMail();

            oBOMail.sendEmail(oMailMessage);

            return(RedirectToAction("../Buys/BuyCompleted"));
        }