Exemplo n.º 1
0
        public ActionResult Index()
        {
            //Scheduler.Schedule();
            HttpContext.Cache.Add("Prueba", "Prueba2", null, DateTime.MaxValue, TimeSpan.FromSeconds(5), CacheItemPriority.Normal, new CacheItemRemovedCallback(CacheItemRemovedCallback));

            List <Cliente> clientes = new List <Cliente>();

            //Prueba Entity Framework
            using (var db = new ContextoDB())
            {
                /*Categoria R1 = new Categoria("R1", 18.76, 0.644);
                 * db.Categorias.Add(R1);
                 *
                 * DispositivoInteligente aire3500 = new DispositivoInteligente("Aire 3500", 1.613, new FabricanteDePrueba());
                 * DispositivoInteligente aire2200 = new DispositivoInteligente("Aire 2200", 1.013, new FabricanteDePrueba());
                 * DispositivoInteligente tvLed40 = new DispositivoInteligente("TV Led 40", 0.08, new FabricanteDePrueba());
                 *
                 * db.Dispositivos.Add(aire2200);
                 * db.Dispositivos.Add(aire3500);
                 * db.Dispositivos.Add(tvLed40);
                 *
                 * db.SaveChanges();*/

                var clientesquery = from u in db.Clientes
                                    orderby u.UsuarioID
                                    select u;

                foreach (var item in clientesquery)
                {
                    clientes.Add((Cliente)item);
                }

                DispositivoInteligente aire2200 = null;
                DispositivoInteligente tvLed40  = null;
                var dispositivoQuery            = from d in db.Dispositivos
                                                  orderby d.NombreDispositivo
                                                  select d;
                foreach (var item in dispositivoQuery)
                {
                    //if (item.NombreDispositivo == "Aire Acondicionado 3500")
                    if (item.NombreDispositivo == "Ventilador de pie")
                    {
                        ViewData["objeto"] = item.GetType();
                        //aire2200 = (DispositivoInteligente)item;
                    }
                    else if (item.NombreDispositivo == "TV LED 32")
                    {
                        tvLed40 = (DispositivoInteligente)item;
                    }
                }

                //DispositivoInteligente aire2200 = (DispositivoInteligente)db.Dispositivos.First(d => d.NombreDispositivo == "Aire Acondicionado 3500");
                //DispositivoInteligente tvLed40 = (DispositivoInteligente)db.Dispositivos.First(d => d.NombreDispositivo == "TV LED 40");

                //Creo un nuevo cliente
                Cliente unCliente = new Cliente();
                unCliente.UsuarioID     = 1;
                unCliente.NombreUsuario = "sebikap";
                unCliente.Password      = "******";
                unCliente.Nombre        = "Sebastian";
                unCliente.Apellido      = "Kaplanski";
                unCliente.Domicilio     = "Av Medrano 851";
                unCliente.FechaDeAlta   = DateTime.Now;
                unCliente.TipoDoc       = "DNI";
                unCliente.TipoDoc       = "12345678";
                unCliente.Telefono      = "4888-8888";
                unCliente.Categoria     = CategoriaHandler.GetCategoriaDB("R1");
                unCliente.Puntos        = 0;
                //unCliente.Dispositivos.Add(aire2200);
                unCliente.Dispositivos.Add(tvLed40);

                System.Diagnostics.Debug.WriteLine("LCDTMAB AGREGO");
                db.Clientes.Add(unCliente);

                System.Diagnostics.Debug.WriteLine("LCDTMAB GUARDO");
                db.SaveChanges();

                var query = from b in db.Clientes
                            where b.Apellido == "Kaplanski"
                            orderby b.Apellido
                            select b;

                foreach (var item in query)
                {
                    ViewData["ClienteDePrueba"] = item.Apellido + " " + item.Nombre /*+ " " + item.Dispositivos[0].NombreDispositivo*/;
                }
            }

            //Importacion de usuarios - VER COMO PASAR A VISTA!!!!
            //List<Cliente> clientes = ClienteImporter.ImportarUsuarios();
            ViewData["Clientes"] = clientes[0].UsuarioID + clientes[0].Apellido + clientes[0].Nombre + clientes[0].NombreUsuario + clientes[0].Password + clientes[0].TipoDoc + clientes[0].NumeroDoc + clientes[0].Telefono;

            //Importacion de administradores
            List <Administrador> administradores = AdministradorImporter.ImportarUsuarios();

            ViewData["Administradores"] = administradores[0].Apellido;

            //Importacion de dispositivos
            List <DispositivoInteligente> dispositivos = DispositivoImporter.ImportarDispositivosInteligentes();

            ViewData["Dispositivos"] = dispositivos[0].NombreDispositivo + dispositivos[0].KwPorHora;

            //PRUEBA SIMPLEX
            List <DispositivoInteligente> dispositivosInteligentes = DispositivoHandler.GetDispositivosInteligentes(clientes[0].UsuarioID);

            unaConsultaSimplex = new Simplex(dispositivosInteligentes);
            unaConsultaSimplex.AgregarRestriccion(440640, null, "<=");
            unaConsultaSimplex.AgregarRestriccion(90, dispositivosInteligentes[0], ">=");
            ViewData["ResultadoSimplex"] = unaConsultaSimplex.Ejecutar();



            return(View());
        }