예제 #1
0
        public ActionResult PagarPuja(int pujaid)
        {
            int usuid = (int)Session["idusuario"];

            PujaCAD pujaCAD = new PujaCAD();
            PujaCEN pujaCEN = new PujaCEN();
            PujaEN  pujaEN  = pujaCEN.get_IPujaCAD().ReadOIDDefault(pujaid);

            LineaPedidoCAD lineaCAD = new LineaPedidoCAD();
            LineaPedidoCEN lineaCEN = new LineaPedidoCEN();
            int            lineaID  = lineaCEN.New_(1, pujaEN.Articulo.Id);

            List <int> lineasList = new List <int>
            {
                lineaID
            };

            PedidoCAD pedidoCAD = new PedidoCAD();
            PedidoCEN pedidoCEN = new PedidoCEN();
            int       pedidoID  = pedidoCEN.New_("Pedido de puja", DateTime.Now, usuid);

            pedidoCEN.Anyadir_linea(pedidoID, lineasList);

            //pujaEN.Pagada = true;

            pujaCEN.Modify(pujaEN.Id, pujaEN.Fecha, pujaEN.Puja_inicial, pujaEN.Puja_max, pujaEN.Id_usuario, pujaEN.Cerrada, true);


            return(RedirectToAction("Details/" + pujaid));
        }
예제 #2
0
        public List <SelectListItem> getAllNombres()
        {
            ISession session;

            session = NHibernateHelper.OpenSession();

            PujaCAD pujaCAD = new PujaCAD(session);
            PujaCEN pujaCEN = new PujaCEN(pujaCAD);

            IEnumerable <PujaEN> listaEN = pujaCEN.get_IPujaCAD().ReadAll(0, -1);

            List <SelectListItem> miLista = new List <SelectListItem>();


            foreach (PujaEN cat in listaEN)
            {
                SelectListItem item = new SelectListItem {
                    Value = cat.Id.ToString(), Text = cat.Articulo.Nombre
                };
                if (!cat.Cerrada)
                {
                    miLista.Add(item);
                }
            }

            session.Close();
            session.Dispose();
            session = null;

            return(miLista);
        }
예제 #3
0
        public ActionResult Cierra(int id)
        {
            try
            {
                PujaCEN pujaCEN = new PujaCEN();
                PujaEN  pujaEN  = pujaCEN.get_IPujaCAD().ReadOIDDefault(id);

                PujaCP pujaCP = new PujaCP();

                pujaCP.Terminar_puja(id, DateTime.Now, pujaEN.Puja_inicial, pujaEN.Puja_max, pujaEN.Id_usuario, true, false);

                return(RedirectToAction("Index"));
            }
            catch (Exception e)
            {
                System.Web.HttpContext.Current.Session["PujaError"] = e.Message;
                return(RedirectToAction("../Registrado/Admin"));
            }
        }
예제 #4
0
        public static void InitializeData()
        {
            /*PROTECTED REGION ID(initializeDataMethod) ENABLED START*/
            try
            {
                // Insert the initilizations of entities using the CEN classes



                RegistradoCEN registradoCEN = new RegistradoCEN();
                RegistradoCP  registradoCP  = new RegistradoCP();
                CarritoCEN    carritoCEN    = new CarritoCEN();
                CarritoCP     carritoCP     = new CarritoCP();
                PedidoCEN     pedidoCEN     = new PedidoCEN();

                Console.WriteLine(" ===============================================");
                Console.WriteLine(" =                                             =");
                Console.WriteLine(" =      ########    ########     ########      =");
                Console.WriteLine(" =         ##            ##         ##         =");
                Console.WriteLine(" =         ##          ##           ##         =");
                Console.WriteLine(" =         ##        ##             ##         =");
                Console.WriteLine(" =      ########    ########     ########      =");
                Console.WriteLine(" =                                             =");
                Console.WriteLine(" =             ONLINE SHOP - BETA              =");
                Console.WriteLine(" ===============================================");


                //CREAMOS USUARIOS REGISTRADOS Y SU CARRITOS
                int tester      = registradoCP.Nuevo_usuarioYcarrito("Beta", "Tester", 20, new DateTime(1997, 8, 6), "28595475X", "Test", "Beater", false).Id;
                int registrado0 = registradoCP.Nuevo_usuarioYcarrito("Pablo", "Manez", 20, new DateTime(1997, 8, 6), "6984984X", "Test", "Pablomanez", true).Id;
                int registrado1 = registradoCP.Nuevo_usuarioYcarrito("Kirito", "Kun", 21, new DateTime(1997, 5, 4), "25698568X", "asuna", "Kirito", false).Id;
                int registrado2 = registradoCP.Nuevo_usuarioYcarrito("Dan", "Senpai", 20, new DateTime(1997, 8, 21), "23906238S", "easy", "Dan", false).Id;

                Console.WriteLine("Inicializando datos...\n\n");

                //CREO TRES CATEGORIAS
                CategoriaCEN categoriaCEN = new CategoriaCEN();

                Console.Write("Creo tres categorías:");
                Console.WriteLine("  -espada");
                Console.WriteLine("  -pistola");
                Console.WriteLine("  -arma");


                int[] categorias = new int [10];
                categorias [0] = categoriaCEN.New_("Espada", 0, "espada.jpg");
                categorias [1] = categoriaCEN.New_("Pistola", 0, "pistola.jpg");
                categorias [2] = categoriaCEN.New_("Escopeta", 0, "escopeta.jpg");
                categorias [3] = categoriaCEN.New_("Rifle", 0, "rifle.jpg");
                categorias [4] = categoriaCEN.New_("Zonas", 0, "zonas.jpg");
                categorias [5] = categoriaCEN.New_("Gemas", 0, "gemas.jpg");
                categorias [6] = categoriaCEN.New_("Miscelánea", 0, "miscelanea.jpg");
                categorias [7] = categoriaCEN.New_("Cuchillo", 0, "cuchillo.jpg");
                categorias [9] = categoriaCEN.New_("Arma", 0, "arma.jpg");

                categoriaCEN.Anyadir_supercat(categorias [0], categorias [9]);
                categoriaCEN.Anyadir_supercat(categorias [1], categorias [9]);
                categoriaCEN.Anyadir_supercat(categorias [2], categorias [9]);
                categoriaCEN.Anyadir_supercat(categorias [3], categorias [9]);
                categoriaCEN.Anyadir_supercat(categorias [4], categorias [6]);
                categoriaCEN.Anyadir_supercat(categorias [5], categorias [6]);

                //VIDEOJUEGOS
                VideojuegoCEN videojuegoCEN = new VideojuegoCEN();
                int []        videojuegos   = new int [20];
                videojuegos [0]  = videojuegoCEN.New_("Left 4 Dead 2", "l4d2.jpg");
                videojuegos [1]  = videojuegoCEN.New_("Blade & Soul", "byb.jpg");
                videojuegos [2]  = videojuegoCEN.New_("World of Warcraft", "wow.jpg");
                videojuegos [3]  = videojuegoCEN.New_("NieR: Automata", "nier.jpg");
                videojuegos [4]  = videojuegoCEN.New_("Call of Duty", "cod.jpg");
                videojuegos [5]  = videojuegoCEN.New_("El Rey Arturo: La leyenda de la espada", "arturo.jpg");
                videojuegos [6]  = videojuegoCEN.New_("The legend of Zelda", "zelda.jpg");
                videojuegos [8]  = videojuegoCEN.New_("Minecraft", "maincra.jpg");
                videojuegos [9]  = videojuegoCEN.New_("Diablo III", "d3.jpg");
                videojuegos [10] = videojuegoCEN.New_("Counter Strike: Global Offensive", "csgo.jpg");
                videojuegos [11] = videojuegoCEN.New_("Dota", "dot.jpg");
                videojuegos [12] = videojuegoCEN.New_("Entropia Universe", "entropia.jpg");
                videojuegos [13] = videojuegoCEN.New_("Outlast", "outlast.jpg");
                videojuegos [14] = videojuegoCEN.New_("EVE Online", "eve.jpg");
                videojuegos [15] = videojuegoCEN.New_("Portal II", "portal2.jpg");
                videojuegos [16] = videojuegoCEN.New_("Deus Ex: Mankid Divided", "deus.jpg");
                videojuegos [17] = videojuegoCEN.New_("Half Life 3", "hl3.jpg");
                videojuegos [18] = videojuegoCEN.New_("Evolve Stage 2", "evolve.jpg");
                videojuegos [19] = videojuegoCEN.New_("Dead Space", "deadspace.jpg");


                //ARTICULOS
                ArticuloCEN articuloCEN = new ArticuloCEN();
                int[]       articulos   = new int[40];
                articulos[0]  = articuloCEN.New_("FrostMourne", 10.01, categorias [0], "Un arma muy especial", 5, "frostmourne.jpg", "", videojuegos [5]);
                articulos[1]  = articuloCEN.New_("Escopeta Frost L4D", 1, categorias [2], "Piun, piun", 5, "frostshotgun.jpg", "", videojuegos [2]);
                articulos[2]  = articuloCEN.New_("Contrato Virtuoso", 800, categorias [0], "Espada YohRa", 5, "nier.jpg", "94c9f72ffe6746fd8470177e07f96a35", videojuegos [3]);
                articulos[3]  = articuloCEN.New_("Raygun", 50, categorias [4], "Arma de rayos molona", 5, "raygun.jpg", "", videojuegos [4]);
                articulos[4]  = articuloCEN.New_("Excalibur", 90, categorias [5], "Espada del buen Rey Arturo", 5, "excalibur.jpg", "3b4ffcc403c2404d84a1a07cfc25e3c4", videojuegos [5]);
                articulos[5]  = articuloCEN.New_("Daga del tiempo", 550, categorias [1], "Daga de Prince of Persia, puede controlar el tiempo", 5, "time.jpg", "", videojuegos [6]);
                articulos[6]  = articuloCEN.New_("Braum Papá Noel", 10, categorias[1], "Skin navideña del señor Braum", 5, "braum.jpg", "", videojuegos[6]);
                articulos[7]  = articuloCEN.New_("Shotgun", 320, categorias[2], "Escopeta Fallout, con animaciones incluidas", 5, "shotgun.jpg", "766c4bcf7f4047538ec032ba132c6750", videojuegos[6]);
                articulos[8]  = articuloCEN.New_("Reinhardt", 550, categorias[1], "Martillo moón", 5, "hammer.jpg", "c68e42799e404507833685845e82d489", videojuegos[6]);
                articulos[9]  = articuloCEN.New_("AWP Fenix", 550, categorias[1], "Daga de Prince of Persia, puede controlar el tiempo", 5, "phoenix.jpg", "", videojuegos[6]);
                articulos[10] = articuloCEN.New_("Elucidator", 390, categorias[1], "Espada del buen Kirito", 80, "elucidator.jpg", "aac6b699d9be46d99586d4e761310139", videojuegos[6]);
                articulos[11] = articuloCEN.New_("Ice Famas", 550, categorias[4], "Skin de hielo para esta molona arma", 5, "icefamas.jpg", "8b11a1145baf4665858c6abdaade764f", videojuegos[6]);
                articulos[12] = articuloCEN.New_("Anillo único", 999, categorias[1], "El anillo único", 5, "anillo.jpg", "314bdc71309d4c09949f9ab30ba92ac1", videojuegos[6]);
                articulos[13] = articuloCEN.New_("Skin Black Pearl", 52, categorias[1], "Cuchillo molón CS:GO", 5, "csgo.png", "", videojuegos[6]);
                articulos[14] = articuloCEN.New_("Raygun Mark II", 37, categorias[3], "Doble de potencia que su hermano pequeño", 5, "mark2.jpg", "", videojuegos[6]);
                articulos[15] = articuloCEN.New_("Kayn cazador de almas", 10, categorias[2], "Skin Kayn cazador de almas League of Legends", 5, "kayn.jpg", "", videojuegos[6]);
                articulos[16] = articuloCEN.New_("AK-47 Phoenix", 550, categorias[1], "Skin Phoenix para AK47", 5, "phoenixak.jpg", "1b35a7d44c0c4cdd885b4e2638d10b3b", videojuegos[6]);



                //ANYADO ARTICULOS A FAVORITO

                List <int> favoritos1 = new List <int>();
                favoritos1.Add(articulos[0]);
                List <int> favoritos2 = new List <int>();
                favoritos2.Add(articulos[2]);
                registradoCEN.Añadir_fav(registrado0, favoritos1);
                registradoCEN.Añadir_fav(registrado0, favoritos2);

                //CREO DOS PUJAS
                PujaCEN    pujaCEN = new PujaCEN();
                List <int> pujas   = new List <int>();

                int pujaid  = pujaCEN.New_(DateTime.Now, 10, articulos[0], 10, -1, false, false);
                int pujaid2 = pujaCEN.New_(DateTime.Now, 20, articulos[6], 20, -1, false, false);
                int pujaid3 = pujaCEN.New_(DateTime.Now, 15, articulos[2], 15, -1, false, false);
                int pujaid4 = pujaCEN.New_(DateTime.Now, 25, articulos[10], 25, -1, false, false);
                int pujaid5 = pujaCEN.New_(DateTime.Now, 30, articulos[15], 30, -1, false, false);
                int pujaid6 = pujaCEN.New_(DateTime.Now, 40, articulos[13], 40, -1, false, false);
                int pujaid7 = pujaCEN.New_(DateTime.Now, 32, articulos[2], 32, -1, false, false);

                pujas.Add(pujaid);
                pujas.Add(pujaid2);

                RegistradoEN max          = null;
                PujaEN       puja         = pujaCEN.get_IPujaCAD().ReadOIDDefault(pujaid);
                OfertaPujaCP ofertaPujaCP = null;


                List <int>     carrito        = new List <int>();
                LineaPedidoCEN lineaPedidoCEN = new LineaPedidoCEN();
                LineaPedidoCP  lineaPedidoCP  = new LineaPedidoCP();

                Console.ForegroundColor = ConsoleColor.Yellow;
                Console.WriteLine("LOS USUARIOS CREADOS PREVIAMENTE REALIZAN DIVERSAS ACCIONES");
                //LLAMO AL CP NEW DE LINEA DE PEDIDO

                CarritoEN carritoEN = carritoCEN.get_ICarritoCAD().ReadOIDDefault(registrado0);

                /*
                 * System.Console.WriteLine("Anyado 2 "+articuloCEN.get_IArticuloCAD().ReadOIDDefault(articulo1).Nombre+" al carrito de "+registradoCEN.get_IRegistradoCAD().ReadOIDDefault(registrado0).N_usuario);
                 * lineaPedidoCP.Anyado_lineaYprecio(20, articulo1, registrado0);
                 * System.Console.WriteLine("El precio del carrito es: "+carritoCEN.get_ICarritoCAD().ReadOIDDefault(registrado0).Precio + "\n");
                 */
                System.Console.WriteLine("Anyado 2 " + articuloCEN.get_IArticuloCAD().ReadOIDDefault(articulos[2]).Nombre + " al carrito de " + registradoCEN.get_IRegistradoCAD().ReadOIDDefault(registrado0).N_usuario);
                lineaPedidoCP.Anyado_lineaYprecio(2, articulos[2], registrado0);
                System.Console.WriteLine("El precio del carrito es: " + carritoCEN.get_ICarritoCAD().ReadOIDDefault(registrado0).Precio + "\n");


                //CALCULO EL PRECIO DE UN CARRITO
                carritoCP = new CarritoCP();
                Console.WriteLine("Precio del carrito: " + carritoCEN.get_ICarritoCAD().ReadOIDDefault(registrado0).Precio);
                carritoCP.Calcular_precio(registrado0);
                Console.WriteLine("Precio del carrito al calcularlo: " + carritoCEN.get_ICarritoCAD().ReadOIDDefault(registrado0).Precio);


                //CONSEGUIR TODAS LAS LINEAS DE UN CARRITO
                IList <LineaPedidoEN> lineas = lineaPedidoCEN.Obtener_lineas(0, 50);

                IList <int> lineasid = new List <int>();

                foreach (LineaPedidoEN linea in lineas)
                {
                    if (linea.Carrito.Id == registrado0)
                    {
                        lineasid.Add(linea.Id);
                    }
                }

                //FINALIZO LA COMPRA
                carritoCP = new CarritoCP();

                Console.WriteLine("Finalizo la compra de pablomanez:");
                carritoCP.Finalizar_compra(registrado0, carritoCEN.get_ICarritoCAD().ReadOIDDefault(registrado0).Precio);
                System.Console.WriteLine("El precio del carrito es: " + carritoCEN.get_ICarritoCAD().ReadOIDDefault(registrado0).Precio + "\n");

                Console.WriteLine("Ahora " + articuloCEN.get_IArticuloCAD().ReadOIDDefault(articulos[1]).Nombre + " tiene " + articuloCEN.get_IArticuloCAD().ReadOIDDefault(articulos[1]).Stock + " unidades en stock \n");

                //CONSIGO TODOS LOS PEDIDOS DE UN USUARIO
                pedidoCEN = new PedidoCEN();
                IList <PedidoEN> pedidos     = pedidoCEN.Obtener_pedidos(0, 50);
                IList <int>      histPedidos = new List <int>();

                foreach (PedidoEN pedido in pedidos)
                {
                    if (pedido.Registrado.Id == registrado0)
                    {
                        histPedidos.Add(pedido.Id);
                    }
                }

                //PEDIDOS DE UN USUARIO
                Console.WriteLine("Accedo al historial del usuario pablomanez:");
                foreach (int pedId in histPedidos)
                {
                    int      i   = 1;
                    PedidoEN ped = pedidoCEN.get_IPedidoCAD().ReadOIDDefault(pedId);

                    Console.WriteLine("///////////////////////// Pedido numero: " + i + " /////////////////////////");
                    Console.WriteLine("Fecha: " + ped.Fecha);
                    Console.WriteLine("Contenido: ");

                    IList <LineaPedidoEN> lineas2 = lineaPedidoCEN.Obtener_lineas(0, 50);
                    foreach (LineaPedidoEN linea2 in lineas2)
                    {
                        if (linea2.Pedido.Id == pedId)
                        {
                            Console.WriteLine("ID LINEA DE PEDIDO: " + linea2.Id);
                            Console.WriteLine("ARTICULO: " + articuloCEN.get_IArticuloCAD().ReadOIDDefault(linea2.Articulo.Id).Nombre);
                            Console.WriteLine("CANTIDAD: " + linea2.Cantidad + "\n");
                        }
                    }
                }



                /*
                 *  //BUSCO ARTICULOS POR NOMBRE
                 *  System.Console.WriteLine ("USO: Busqueda_por_nombre()");
                 *  String ans = Console.ReadLine ();
                 *  IList<ArticuloEN> busq_nombre = articuloCEN.Busqueda_por_nombre (ans);
                 *  foreach (ArticuloEN art in busq_nombre) {
                 *          System.Console.WriteLine ("NOMBRE: " + art.Nombre);
                 *          System.Console.WriteLine ("PRECIO: " + art.Precio);
                 *  }
                 */

                //INICIAMOS LAS PUJAS
                try
                {
                    System.Console.WriteLine("Puja#" + puja.Id + " | MAX: " + puja.Id_usuario + " " + puja.Puja_max + "$\n");
                    ofertaPujaCP = new OfertaPujaCP();

                    System.Console.WriteLine("Kirito-kun puja " + 15 + "$");
                    ofertaPujaCP.Nueva_oferta(DateTime.Now, DateTime.Now, registrado1, pujaid, 15);     //Nueva oferta de Kirito-kun
                    puja = pujaCEN.get_IPujaCAD().ReadOIDDefault(pujaid);                               //Actualizo puja
                    max  = registradoCEN.get_IRegistradoCAD().ReadOIDDefault(puja.Id_usuario);          //Actualizo nombre del usuario con la puja mas alta
                    System.Console.WriteLine("Puja#" + puja.Id + " | MAX: " + max.N_usuario + " " + puja.Puja_max + "$\n");

                    System.Console.WriteLine("DatrixZ puja " + 20 + "$");
                    ofertaPujaCP.Nueva_oferta(DateTime.Now, DateTime.Now, registrado2, pujaid, 20);      //Nueva oferta de DatrixZ mayor que la anterior
                    puja = pujaCEN.get_IPujaCAD().ReadOIDDefault(pujaid);
                    max  = registradoCEN.get_IRegistradoCAD().ReadOIDDefault(puja.Id_usuario);
                    System.Console.WriteLine("Puja#" + puja.Id + " | MAX: " + max.N_usuario + " " + puja.Puja_max + "$\n");

                    System.Console.WriteLine("Pablo-sensei puja " + 10 + "$");
                    ofertaPujaCP.Nueva_oferta(DateTime.Now, DateTime.Now, registrado0, pujaid, 10);      //Nueva oferta de Pablo-sensei menor que la anterior
                    puja = pujaCEN.get_IPujaCAD().ReadOIDDefault(pujaid);
                    max  = registradoCEN.get_IRegistradoCAD().ReadOIDDefault(puja.Id_usuario);
                    System.Console.WriteLine("Puja#" + puja.Id + " | MAX: " + max.N_usuario + " " + puja.Puja_max + "$\n");
                }
                catch (Exception e) { System.Console.WriteLine(e.Message + "\n"); }

                try
                {
                    System.Console.WriteLine("DatrixZ puja " + 50 + "$");
                    ofertaPujaCP.Nueva_oferta(DateTime.Now, DateTime.Now, registrado2, pujaid, 50);      //Nueva oferta de DatrixZ contra s� mismo
                    puja = pujaCEN.get_IPujaCAD().ReadOIDDefault(pujaid);
                    max  = registradoCEN.get_IRegistradoCAD().ReadOIDDefault(puja.Id_usuario);
                    System.Console.WriteLine("Puja#" + puja.Id + " | MAX: " + max.N_usuario + " " + puja.Puja_max + "$\n");
                }
                catch (Exception e) { System.Console.WriteLine(e.Message + "\n"); }


                System.Console.WriteLine("Puja#" + puja.Id + " | MAX: " + max.N_usuario + " " + puja.Puja_max + " " + puja.Cerrada + "$\n");

                PujaCP pujaCP = new PujaCP();
                System.Console.WriteLine("Cierro puja 1");

                /*
                 * pujaCP.Terminar_puja (pujaid, puja.Fecha, puja.Puja_inicial, puja.Puja_max, puja.Id_usuario, true);
                 * try
                 * {
                 *      System.Console.WriteLine ("Cierro puja 1 otra vez");
                 *      pujaCP.Terminar_puja (pujaid, puja.Fecha, puja.Puja_inicial, puja.Puja_max, puja.Id_usuario, true);
                 * }
                 * catch (Exception e) { System.Console.WriteLine (e.Message + "\n"); }
                 * try
                 * {
                 *      System.Console.WriteLine ("Cierro puja 2");
                 *      pujaCP.Terminar_puja (pujaid2, puja.Fecha, puja.Puja_inicial, puja.Puja_max, puja.Id_usuario, true);
                 * }
                 * catch (Exception e) { System.Console.WriteLine (e.Message + "\n"); }
                 *
                 * try
                 * {
                 *      System.Console.WriteLine ("Pablo-sensei puja " + 100 + "$");
                 *      ofertaPujaCP.Nueva_oferta (DateTime.Now, DateTime.Now, registrado1, pujaid, 100); //Nueva oferta de Pablo-sensei en una puja cerrada
                 *      puja = pujaCEN.get_IPujaCAD ().ReadOIDDefault (pujaid);
                 *      max = registradoCEN.get_IRegistradoCAD ().ReadOIDDefault (puja.Id_usuario);
                 *      System.Console.WriteLine ("Puja#" + puja.Id + " | MAX: " + max.N_usuario + " " + puja.Puja_max + "$\n");
                 * }
                 * catch (Exception e) { System.Console.WriteLine (e.Message + "\n"); }
                 */


                //CREO UNA VALORACION Y MODIFICO SU TEXTO
                ValoracionCEN valoracionCEN = new ValoracionCEN();
                System.Console.WriteLine("CREO UNA VALORACION Y LE CAMBIO EL TEXTO");
                int valoracionCEN_id1 = valoracionCEN.New_(10, "La verdad es que es la hostia, pero quiero que Lujan me apruebe", registrado0, articulos[1]);

                System.Console.WriteLine(valoracionCEN.get_IValoracionCAD().ReadOIDDefault(valoracionCEN_id1).Texto);
                int pMod = valoracionCEN.get_IValoracionCAD().ReadOIDDefault(valoracionCEN_id1).Puntuacion;
                valoracionCEN.Modify(valoracionCEN_id1, pMod, "He cambiado el texto y si, quiero que Lujan me apruebe");
                System.Console.WriteLine(valoracionCEN.get_IValoracionCAD().ReadOIDDefault(valoracionCEN_id1).Texto);


                lineaPedidoCP.Anyado_lineaYprecio(2, articulos[2], registrado0);
                lineaPedidoCP.Anyado_lineaYprecio(2, articulos[2], registrado1);

                // p.e. CustomerCEN customer = new CustomerCEN();
                // customer.New_ (p_user:"******", p_password:"******");

                /*PROTECTED REGION END*/
            }
            catch (Exception ex)
            {
                System.Console.WriteLine(ex.InnerException);
                throw ex;
            }
        }
        public void Terminar_puja(int p_Puja_OID, Nullable <DateTime> p_fecha, float p_puja_inicial, float p_puja_max, int p_id_usuario, bool p_cerrada, bool p_pagada)
        {
            /*PROTECTED REGION ID(DSM1GenNHibernate.CP.DSM1_Puja_terminar_puja) ENABLED START*/

            IPujaCAD pujaCAD = null;
            PujaCEN  pujaCEN = null;



            try
            {
                SessionInitializeTransaction();
                pujaCAD = new PujaCAD(session);
                pujaCEN = new PujaCEN(pujaCAD);

                IList <OfertaPujaEN> pujas         = pujaCEN.get_IPujaCAD().ReadOIDDefault(p_Puja_OID).OfertaPuja; //Lista de pujas hechas en esta subasta
                OfertaPujaEN         puja_ganadora = null;

                if (pujaCEN.get_IPujaCAD().ReadOIDDefault(p_Puja_OID).Cerrada)
                {
                    Exception ex = new Exception("YA ESTABA CERRADA");
                    throw ex;
                }

                foreach (OfertaPujaEN p in pujas)
                {
                    if (p.Cantidad_puja == p_puja_max)
                    {
                        puja_ganadora = p;
                        break;
                    }
                }
                if (puja_ganadora != null)
                {
                    pujaCEN.Declarar_ganador(p_Puja_OID, puja_ganadora.Registrado.Id);
                    RegistradoCEN registradoCEN = new RegistradoCEN();
                    Console.ForegroundColor = ConsoleColor.Red;
                    System.Console.WriteLine("    PUJA FINALIZADA -- GANADOR: " + registradoCEN.get_IRegistradoCAD().ReadOIDDefault(puja_ganadora.Registrado.Id).N_usuario + "\n");
                }

                PujaEN pujaEN = null;
                //Initialized PujaEN
                pujaEN              = new PujaEN();
                pujaEN.Id           = p_Puja_OID;
                pujaEN.Fecha        = p_fecha;
                pujaEN.Puja_inicial = p_puja_inicial;
                pujaEN.Puja_max     = p_puja_max;
                pujaEN.Id_usuario   = p_id_usuario;
                pujaEN.Cerrada      = p_cerrada;
                //Call to PujaCAD

                pujaCAD.Terminar_puja(pujaEN);


                SessionCommit();
            }
            catch (Exception ex)
            {
                SessionRollBack();
                throw ex;
            }
            finally
            {
                SessionClose();
            }


            /*PROTECTED REGION END*/
        }
예제 #6
0
        public DSM1GenNHibernate.EN.DSM1.OfertaPujaEN Nueva_oferta(Nullable <DateTime> p_fecha, Nullable <DateTime> p_tiempo, int p_registrado, int p_puja, float p_cantidad_puja)
        {
            /*PROTECTED REGION ID(DSM1GenNHibernate.CP.DSM1_OfertaPuja_nueva_oferta) ENABLED START*/

            IOfertaPujaCAD ofertaPujaCAD = null;
            OfertaPujaCEN  ofertaPujaCEN = null;

            IPujaCAD pujaCAD = null;
            PujaCEN  pujaCEN = null;

            DSM1GenNHibernate.EN.DSM1.OfertaPujaEN result = null;


            try
            {
                SessionInitializeTransaction();
                ofertaPujaCAD = new OfertaPujaCAD(session);
                ofertaPujaCEN = new  OfertaPujaCEN(ofertaPujaCAD);

                pujaCAD = new PujaCAD(session);
                pujaCEN = new PujaCEN(pujaCAD);

                PujaEN pujaEN = pujaCEN.get_IPujaCAD().ReadOIDDefault(p_puja);    //Consigo la puja a la cual va dirigida esta oferta

                if (pujaEN.Cerrada == true)
                {
                    Exception cerrada = new Exception("Está cerrada, largo de aquí!");
                    throw cerrada;
                }

                if (pujaEN.Id_usuario == p_registrado)
                {
                    Exception PP = new Exception("Ya eres el máximo pujador, vuelve más tarde");
                    throw PP;
                }

                if (pujaEN.Puja_max < p_cantidad_puja && pujaEN.Puja_inicial < p_cantidad_puja)
                {
                    //System.Console.WriteLine("NUEVA PUJA! "+p_registrado + " "+p_puja+ " "+p_cantidad_puja+"�");
                    PujaEN nueva = new PujaEN();
                    nueva.Id           = pujaEN.Id;
                    nueva.Fecha        = pujaEN.Fecha;
                    nueva.Puja_inicial = pujaEN.Puja_inicial;

                    nueva.Puja_max   = p_cantidad_puja;  //Cambiamos la puja max
                    nueva.Id_usuario = p_registrado;     //Y el usuario

                    nueva.Cerrada = pujaEN.Cerrada;

                    pujaCEN.get_IPujaCAD().Actualizar(nueva);       //Actualizamos
                }
                else
                {
                    Exception pasta = new Exception("Debes introducir un importe mayor!");
                    throw pasta;
                }
                int oid;
                //Initialized OfertaPujaEN
                OfertaPujaEN ofertaPujaEN;
                ofertaPujaEN       = new OfertaPujaEN();
                ofertaPujaEN.Fecha = p_fecha;

                ofertaPujaEN.Tiempo = p_tiempo;


                if (p_registrado != -1)
                {
                    ofertaPujaEN.Registrado    = new DSM1GenNHibernate.EN.DSM1.RegistradoEN();
                    ofertaPujaEN.Registrado.Id = p_registrado;
                }


                if (p_puja != -1)
                {
                    ofertaPujaEN.Puja    = new DSM1GenNHibernate.EN.DSM1.PujaEN();
                    ofertaPujaEN.Puja.Id = p_puja;
                }

                ofertaPujaEN.Cantidad_puja = p_cantidad_puja;

                //Call to OfertaPujaCAD

                oid    = ofertaPujaCAD.Nueva_oferta(ofertaPujaEN);
                result = ofertaPujaCAD.ReadOIDDefault(oid);



                SessionCommit();
            }
            catch (Exception ex)
            {
                SessionRollBack();
                throw ex;
            }
            finally
            {
                SessionClose();
            }
            return(result);


            /*PROTECTED REGION END*/
        }