public void CantidadPuntosUsuario15_test() { //Arrenge using (var db = new DBContext()) { var cliente = new Cliente("Luciano", "Panizza", "Medrano951", "CantidadPuntosUsuario15_test", "asdqwe123", "12345678", "dni", "12345678"); cliente.TransformadorID = 1; //necesita un id si o si db.Usuarios.Add(cliente); db.SaveChanges(); var lamparaHalogena40W = new DispositivoInteligente("lampara halogena de 40 W", "0011", 0.04, 360, 90); lamparaHalogena40W.UsuarioID = cliente.UsuarioID; var lamparaHalogena40W2 = new DispositivoInteligente("lampara halogena de 40 W", "0011", 0.04, 360, 90); lamparaHalogena40W2.UsuarioID = cliente.UsuarioID; //Act cliente.AgregarDispInteligente(lamparaHalogena40W); cliente.AgregarDispInteligente(lamparaHalogena40W2); var clDB = new Cliente("CantidadPuntosUsuario15_test"); //Assert Assert.AreEqual(30, clDB.PuntosAcum); Assert.AreEqual(30, cliente.PuntosAcum); } }
public void ConvertirDEaDIyCambioState_test() { using (var db = new DBContext()) { //Arrenge var cliente = new Cliente("Luciano", "Panizza", "Medrano951", "ConvertirDEaDIyCambioState", "asdqwe123", "12345678", "dni", "12345678"); cliente.TransformadorID = 1; //necesita un id si o si db.Usuarios.Add(cliente); db.SaveChanges(); var cliente1 = new Cliente(cliente.Username); var tvsamsung = new DispositivoEstandar("televisor LCD de 40 pulgadas", "0014", 0.18, 0, 360, 90); tvsamsung.UsuarioID = cliente1.UsuarioID; db.Dispositivos.Add(tvsamsung); db.SaveChanges(); var dispEst1 = new DispositivoEstandar(tvsamsung.DispositivoID); cliente1.AdaptarDispositivo(dispEst1, "Samsung"); var DBdispInt1 = db.Dispositivos.First(x => x.UsuarioID == cliente1.UsuarioID && x.Codigo == "0014" && x.EsInteligente == true); var dispInt1 = new DispositivoInteligente(DBdispInt1.DispositivoID); //Act dispInt1.Encender(); var ultimoEstado = db.Estados.Find(dispInt1.IDUltimoEstado); //Assert Assert.AreEqual(true, DBdispInt1.EsInteligente); Assert.AreEqual("Encendido", ultimoEstado.Desc); } }
public void AgregarRestriccion(double valorAComparar, DispositivoInteligente dispositivoAComparar, string operador) { List <double> valoresDispositivos = new List <double>(); //Puedo comparar horas que esta prendido un dispositivo, o consumo de los mismos //Si quiero comparar consumos, se pasa null a ese parametro //Si quiero un dispositivo en particular, se pasa por parametro el dispositivo //seteando todos los valores del list double a 0 menos el de la posicion del dispositivo a comparar if (dispositivoAComparar == null) { foreach (DispositivoInteligente dispo in Dispositivos) { valoresDispositivos.Add(dispo.KwPorHora); } } else { for (int i = 0; i < Dispositivos.Count(); i++) { if (Dispositivos[i] == dispositivoAComparar) { valoresDispositivos.Add(1); } else { valoresDispositivos.Add(0); } } } //Creo la restriccion Restriccion unaRestriccion = new Restriccion(valorAComparar, valoresDispositivos, operador); Restricciones.Add(unaRestriccion); }
public void DeAhorroAEncendido_test() { using (var db = new DBContext()) { //Arrenge Cliente cliente = new Cliente("Luciano", "Panizza", "Medrano951", "DeAhorroAEncendido_test", "asdqwe123", "12345678", "dni", "12345678"); //cliente.TransformadorID = 1; //necesita un id si o si db.Usuarios.Add(cliente); db.SaveChanges(); var lamparaHalogena40W = new DispositivoInteligente("lampara halogena de 40 W", "0011", 0.04, 360, 90); lamparaHalogena40W.UsuarioID = cliente.UsuarioID; cliente.AgregarDispInteligente(lamparaHalogena40W); var DI = new DispositivoInteligente(lamparaHalogena40W.DispositivoID); //Act DI.AhorrarEnergia(); DI.Encender(); //var ultEst = db.Estados.Find(DI.IDUltimoEstado); //Assert //Assert.AreEqual("Encendido", ultEst.Desc); Assert.IsInstanceOfType(DI.Estado, typeof(Encendido)); } }
//Metodos para cambiar el estado del dispositivo //Los primeros son para cambiar desde disp propios, los segundos son para cambiar desde la pagina del dispositivo public ActionResult Encender(int id, string estadoActual) { if (estadoActual != "Encendido") { DispositivoInteligente DI = new DispositivoInteligente(id); DI.Encender(); } return(RedirectToAction("DispositivosPropios", "Home")); }
public ActionResult Apagar3(int id, string estadoActual, int Uid) { if (estadoActual != "Apagado") { DispositivoInteligente DI = new DispositivoInteligente(id); DI.Apagar(); } return(RedirectToAction("DetallesCliente", "Home", new { id = Uid })); }
public ActionResult Ahorro2(int id, string estadoActual) { if (estadoActual != "Ahorro") { DispositivoInteligente DI = new DispositivoInteligente(id); DI.AhorrarEnergia(); } return(RedirectToAction("DetallesInteligente", "Home", new { id })); }
public ActionResult Encender2(int id, string estadoActual) { if (estadoActual != "Encendido") { DispositivoInteligente DI = new DispositivoInteligente(id); DI.Encender(); } return(RedirectToAction("DetallesInteligente", "Home", new { id })); }
public ActionResult Ahorro(int id, string estadoActual) { if (estadoActual != "Ahorro") { DispositivoInteligente DI = new DispositivoInteligente(id); DI.AhorrarEnergia(); } return(RedirectToAction("DispositivosPropios", "Home")); }
public void CargarBase() { using (var db = new DBContext()) { var cliente = new Cliente("*****@*****.**"); var Aire3500fg = new DispositivoInteligente("aire acondicionado de 3500 frigorias", "0011", 1.613, 360, 90); Aire3500fg.UsuarioID = cliente.UsuarioID; db.Dispositivos.Add(Aire3500fg); db.SaveChanges(); var est1 = new Apagado(Aire3500fg) { FechaInicial = DateTime.Now.AddHours(-20), FechaFinal = DateTime.Now.AddHours(-15) }; var est2 = new Encendido(Aire3500fg) { FechaInicial = DateTime.Now.AddHours(-15), FechaFinal = DateTime.Now.AddHours(-7) }; var est3 = new Apagado(Aire3500fg) { FechaInicial = DateTime.Now.AddHours(-7), FechaFinal = DateTime.Now.AddHours(-2) }; var est4 = new Encendido(Aire3500fg) { FechaInicial = DateTime.Now.AddHours(-2) }; Aire3500fg.AgregarEstado(est1); Aire3500fg.AgregarEstado(est2); Aire3500fg.AgregarEstado(est3); Aire3500fg.AgregarEstado(est4); var tvAire24LEd = new DispositivoInteligente("televisor LED de 24 pulgadas", "0015", 0.04, 365, 90); tvAire24LEd.UsuarioID = cliente.UsuarioID; db.Dispositivos.Add(tvAire24LEd); db.SaveChanges(); tvAire24LEd.AgregarEstado(new Apagado(tvAire24LEd) { FechaInicial = DateTime.Now.AddHours(-720), FechaFinal = DateTime.Now.AddHours(-680) }); tvAire24LEd.AgregarEstado(new Encendido(tvAire24LEd) { FechaInicial = DateTime.Now.AddHours(-680), FechaFinal = DateTime.Now.AddHours(-500) }); tvAire24LEd.AgregarEstado(new Apagado(tvAire24LEd) { FechaInicial = DateTime.Now.AddHours(-500), FechaFinal = DateTime.Now.AddHours(-370) }); tvAire24LEd.AgregarEstado(new Encendido(tvAire24LEd) { FechaInicial = DateTime.Now.AddHours(-370) }); } }
public void ConectarTrafoProx_Test() { using (var db = new DBContext()) { //Arrenge var cliente = new Cliente("Luciano", "Panizza", "Medrano 951", "ConectarTrafoPro", "asdqwe123", "12345678", "dni", "12345678"); cliente.AgregarALaBase(); var lamparaHalogena40W = new DispositivoInteligente("lampara halogena de 40 W", "0011", 0.04, 360, 90); lamparaHalogena40W.UsuarioID = cliente.UsuarioID; cliente.AgregarDispInteligente(lamparaHalogena40W); lamparaHalogena40W.Encender(); var cliente2 = new Cliente("Luciano", "Panizza", "Lafinur 3400", "ConectarTrafoPro2", "asdqwe123", "12345678", "dni", "12345678"); cliente2.AgregarALaBase(); var lamparaHalogena40W2 = new DispositivoInteligente("lampara halogena de 40 W", "0011", 0.04, 360, 90); lamparaHalogena40W2.UsuarioID = cliente2.UsuarioID; cliente2.AgregarDispInteligente(lamparaHalogena40W2); lamparaHalogena40W2.Encender(); var cliente3 = new Cliente("Luciano", "Panizza", "Av de mayo 130", "ConectarTrafoPro3", "asdqwe123", "12345678", "dni", "12345678"); cliente3.AgregarALaBase(); var lamparaHalogena40W3 = new DispositivoInteligente("lampara halogena de 40 W", "0011", 0.04, 360, 90); lamparaHalogena40W3.UsuarioID = cliente3.UsuarioID; cliente3.AgregarDispInteligente(lamparaHalogena40W3); lamparaHalogena40W3.Encender(); var cliente4 = new Cliente("Luciano", "Panizza", "Av rivadavia 8000", "ConectarTrafoPro4", "asdqwe123", "12345678", "dni", "12345678"); cliente4.AgregarALaBase(); var lamparaHalogena40W4 = new DispositivoInteligente("lampara halogena de 40 W", "0011", 0.04, 360, 90); lamparaHalogena40W4.UsuarioID = cliente4.UsuarioID; cliente4.AgregarDispInteligente(lamparaHalogena40W4); lamparaHalogena40W4.Encender(); //Act /* * var trafoProx = db.Transformadores.Find(cliente.TransformadorID); * var trafoProx2 = db.Transformadores.Find(cliente2.TransformadorID); * * //Assert * Assert.AreEqual(cliente.TransformadorID, trafoProx.TransformadorID); * Assert.AreEqual(cliente2.TransformadorID, trafoProx2.TransformadorID); */ } }
public double ConsumoDispositivosInteligentes(int periodo) { double consumo = 0; foreach (var disp in dispositivos) { if (disp.GetType() == typeof(DispositivoInteligente)) { DispositivoInteligente d = (DispositivoInteligente)disp; consumo += d.EnergiaConsumidaEnPeriodo(periodo); } } return(consumo); }
public ActionResult CrearRegla([Bind(Include = "ValorMax,ValorMin,Tipo,Descripcion")] Regla reglaNueva, int id) { try { if (ModelState.IsValid) { DispositivoInteligente di = new DispositivoInteligente(id); di.CargarActuador(); di.AgregarRegla(reglaNueva); } } catch (RetryLimitExceededException) { ModelState.AddModelError("", "No se pudo Crear"); } return(RedirectToAction("DetallesInteligente/" + id, "Home")); }
public void ConsumoEnergiaEnUltimas10Hs_test() { using (var db = new DBContext()) { //Arrenge Cliente cliente = new Cliente("Luciano", "Panizza", "Medrano951", "ConsumoEnergiaEnUltimas10Hs_test", "asdqwe123", "12345678", "dni", "12345678"); //cliente.TransformadorID = 1; //necesita un id si o si db.Usuarios.Add(cliente); db.SaveChanges(); var Aire3500fg = new DispositivoInteligente("aire acondicionado de 3500 frigorias", "0011", 1.613, 360, 90); Aire3500fg.UsuarioID = cliente.UsuarioID; db.Dispositivos.Add(Aire3500fg); db.SaveChanges(); var est1 = new Apagado(Aire3500fg) { FechaInicial = DateTime.Now.AddHours(-20), FechaFinal = DateTime.Now.AddHours(-15) }; var est2 = new Encendido(Aire3500fg) { FechaInicial = DateTime.Now.AddHours(-15), FechaFinal = DateTime.Now.AddHours(-7) }; var est3 = new Apagado(Aire3500fg) { FechaInicial = DateTime.Now.AddHours(-7), FechaFinal = DateTime.Now.AddHours(-2) }; var est4 = new Encendido(Aire3500fg) { FechaInicial = DateTime.Now.AddHours(-2) }; Aire3500fg.AgregarEstado(est1); Aire3500fg.AgregarEstado(est2); Aire3500fg.AgregarEstado(est3); Aire3500fg.AgregarEstado(est4); //Act var result = Aire3500fg.ConsumoEnHoras(10); var comp = Aire3500fg.KWxHora * 5; //5 horas //Assert Assert.AreEqual(comp, result); } }
public ActionResult AgregarDispositivoClie(SubmitViewModel model) { //Agrega el nuevo dispositivo al usuario string codigo = model.DispositivoSeleccionado; Cliente c = new Cliente(User.Identity.GetUserName()); if (DispositivosTotales.EsInteligente(codigo)) { DispositivoInteligente disp = DispositivosTotales.EncontrarDispositivoInteligente(codigo); c.AgregarDispInteligente(disp); } else { DispositivoEstandar disp = DispositivosTotales.EncontrarDispositivoEstandard(codigo); c.AgregarDispEstandar(disp); } return(RedirectToAction("DispositivosPropios", "Home")); }
public void Simplex_Test() { using (var db = new DBContext()) { //Arrenge var recomendacion = Recomendacion.Instancia(); var simplex = SimplexHelper.Instancia(); var cliente = new Cliente("Luciano", "Panizza", "Medrano951", "WebService_test", "asdqwe123", "12345678", "dni", "12345678"); //cliente.TransformadorID = 1; //necesita un id si o si db.Usuarios.Add(cliente); db.SaveChanges(); var Lampara60W = new DispositivoInteligente("lampara halogena de 60 W", "0011", 0.06, 360, 90); Lampara60W.UsuarioID = cliente.UsuarioID; db.Dispositivos.Add(Lampara60W); db.SaveChanges(); var microondas = new DispositivoEstandar("microondas convencional", "0011", 0.64, 0, 15, 3); microondas.UsuarioID = cliente.UsuarioID; db.Dispositivos.Add(microondas); db.SaveChanges(); var televisor40 = new DispositivoEstandar("televisor LCD de 40 pulgadas", "0014", 0.18, 0, 360, 90); televisor40.UsuarioID = cliente.UsuarioID; db.Dispositivos.Add(televisor40); db.SaveChanges(); var lavarropa = new DispositivoEstandar("lavarropas automatico de 5kg con calentamiento", "0021", 0.875, 0, 30, 6); lavarropa.UsuarioID = cliente.UsuarioID; db.Dispositivos.Add(lavarropa); db.SaveChanges(); //Act var resultado = recomendacion.GenerarRecomendacion(cliente); //Assert Assert.AreEqual("[765.0, 15.0, 360.0, 30.0, 360.0]", resultado); } }
public void RecomendacionesDelCliente() { using (var db = new DBContext()) { //Arrenge var cliente = new Cliente("Luciano", "Panizza", "Medrano951", "RecomendacionesDelCliente_test", "asdqwe123", "12345678", "dni", "12345678"); //cliente.TransformadorID = 1; //necesita un id si o si db.Usuarios.Add(cliente); db.SaveChanges(); var Lampara60W = new DispositivoInteligente("lampara halogena de 60 W", "0011", 0.06, 360, 90); cliente.AgregarDispInteligente(Lampara60W); var microondas = new DispositivoEstandar("microondas convencional", "0011", 0.64, 0, 15, 3); cliente.AgregarDispEstandar(microondas); var televisor40 = new DispositivoEstandar("televisor LCD de 40 pulgadas", "0014", 0.18, 0, 360, 90); cliente.AgregarDispEstandar(televisor40); var lavarropa = new DispositivoEstandar("lavarropas automatico de 5kg con calentamiento", "0021", 0.875, 0, 30, 6); cliente.AgregarDispEstandar(lavarropa); //Act var RecomendacionXDispositivos = cliente.SolicitarRecomendacion(); //Assert //Assert.AreEqual("Valor independiente", RecomendacionXDispositivos[0].NombreDispositivo); Assert.AreEqual("lampara halogena de 60 W", RecomendacionXDispositivos[1].NombreDispositivo); Assert.AreEqual("microondas convencional", RecomendacionXDispositivos[2].NombreDispositivo); Assert.AreEqual("televisor LCD de 40 pulgadas", RecomendacionXDispositivos[3].NombreDispositivo); Assert.AreEqual("lavarropas automatico de 5kg con calentamiento", RecomendacionXDispositivos[4].NombreDispositivo); //Assert.AreEqual(765, RecomendacionXDispositivos[0].KWxHoraPuedeConsumir); Assert.AreEqual(15, RecomendacionXDispositivos[1].KWxHoraPuedeConsumir); Assert.AreEqual(360, RecomendacionXDispositivos[2].KWxHoraPuedeConsumir); Assert.AreEqual(30, RecomendacionXDispositivos[3].KWxHoraPuedeConsumir); Assert.AreEqual(360, RecomendacionXDispositivos[4].KWxHoraPuedeConsumir); } }
public void CambioEstadoNoHaceNada_test() { //Arrenge using (var db = new DBContext()) { var cliente = new Cliente("Luciano", "Panizza", "Medrano951", "CantidadPuntosUsuario15_test", "asdqwe123", "12345678", "dni", "12345678"); //cliente.TransformadorID = 1; //necesita un id si o si db.Usuarios.Add(cliente); db.SaveChanges(); var lamparaHalogena40W = new DispositivoInteligente("lampara halogena de 40 W", "0011", 0.04, 360, 90); lamparaHalogena40W.UsuarioID = cliente.UsuarioID; cliente.AgregarDispInteligente(lamparaHalogena40W); var idEstAnt = lamparaHalogena40W.IDUltimoEstado; //Act lamparaHalogena40W.Apagar(); //Assert Assert.AreEqual(idEstAnt, lamparaHalogena40W.IDUltimoEstado); } }
public double ConsumoPorTransformador(int periodo, Transformador transformador) { double consumo = 0; List <Dispositivo> dispos = new List <Dispositivo>(); foreach (Cliente cliente in transformador.Clientes) { dispos = DispositivoHandler.GetDispositivosByUsuarioID(cliente.UsuarioID); foreach (var disp in dispositivos) { if (disp.GetType() == typeof(DispositivoEstandar)) { DispositivoEstandar d = (DispositivoEstandar)disp; consumo += d.CalcularConsumoMensual(periodo); } else if (disp.GetType() == typeof(DispositivoInteligente)) { DispositivoInteligente d = (DispositivoInteligente)disp; consumo += d.EnergiaConsumidaEnPeriodo(periodo); } } } return(consumo); }
public void EstaApagado_test() { using (var db = new DBContext()) { Cliente cliente = new Cliente("Luciano", "Panizza", "Medrano951", "EstaApagado_test", "asdqwe123", "12345678", "dni", "12345678"); //cliente.TransformadorID = 1; //necesita un id si o si db.Usuarios.Add(cliente); db.SaveChanges(); //Arrenge var lamparaHalogena40W = new DispositivoInteligente("lampara halogena de 40 W", "0011", 0.04, 360, 90); lamparaHalogena40W.UsuarioID = cliente.UsuarioID; //Act cliente.AgregarDispInteligente(lamparaHalogena40W); var DI = new DispositivoInteligente(lamparaHalogena40W.DispositivoID); //var ultEst = db.Estados.Find(DI.IDUltimoEstado); //Assert //Assert.AreEqual("Apagado", ultEst.Desc); Assert.IsTrue(DI.EstaApagado()); } }
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()); }
public void AccionesAutomatica_Test() { using (var db = new DBContext()) { //Arrenge var InstanciaRec = Recomendacion.Instancia(); var cliente = new Cliente("Luciano", "Panizza", "Medrano951", "AccionesAutomaticaON_Test", "asdqwe123", "12345678", "dni", "12345678"); cliente.TransformadorID = 1; //necesita un id si o si db.Usuarios.Add(cliente); db.SaveChanges(); cliente.AccionAutomaticaON(); var cliente2 = new Cliente("Luciano", "Panizza", "Medrano951", "AccionesAutomaticaOFF_Test", "asdqwe123", "12345678", "dni", "12345678"); cliente2.TransformadorID = 1; //necesita un id si o si db.Usuarios.Add(cliente2); db.SaveChanges(); var tvAire24LEd = new DispositivoInteligente("televisor LED de 24 pulgadas", "0015", 0.04, 365, 90); tvAire24LEd.UsuarioID = cliente.UsuarioID; db.Dispositivos.Add(tvAire24LEd); db.SaveChanges(); var microondas = new DispositivoEstandar("microondas convencional", "0011", 0.64, 0, 15, 3); microondas.UsuarioID = cliente.UsuarioID; db.Dispositivos.Add(microondas); db.SaveChanges(); var televisor40 = new DispositivoEstandar("televisor LCD de 40 pulgadas", "0014", 0.18, 0, 360, 90); televisor40.UsuarioID = cliente.UsuarioID; db.Dispositivos.Add(televisor40); db.SaveChanges(); var lavarropa = new DispositivoEstandar("lavarropas automatico de 5kg con calentamiento", "0021", 0.875, 0, 30, 6); lavarropa.UsuarioID = cliente.UsuarioID; db.Dispositivos.Add(lavarropa); db.SaveChanges(); tvAire24LEd.AgregarEstado(new Apagado(tvAire24LEd) { FechaInicial = DateTime.Now.AddHours(-500), FechaFinal = DateTime.Now.AddHours(-370) }); tvAire24LEd.AgregarEstado(new Encendido(tvAire24LEd) { FechaInicial = DateTime.Now.AddHours(-370) }); var tvAire24LEd2 = new DispositivoInteligente("televisor LED de 24 pulgadas", "0015", 0.04, 365, 90); tvAire24LEd2.UsuarioID = cliente2.UsuarioID; db.Dispositivos.Add(tvAire24LEd2); db.SaveChanges(); var microondas2 = new DispositivoEstandar("microondas convencional", "0011", 0.64, 0, 15, 3); microondas2.UsuarioID = cliente2.UsuarioID; db.Dispositivos.Add(microondas2); db.SaveChanges(); var televisor402 = new DispositivoEstandar("televisor LCD de 40 pulgadas", "0014", 0.18, 0, 360, 90); televisor402.UsuarioID = cliente2.UsuarioID; db.Dispositivos.Add(televisor402); db.SaveChanges(); var lavarropa2 = new DispositivoEstandar("lavarropas automatico de 5kg con calentamiento", "0021", 0.875, 0, 30, 6); lavarropa2.UsuarioID = cliente2.UsuarioID; db.Dispositivos.Add(lavarropa2); db.SaveChanges(); tvAire24LEd2.AgregarEstado(new Apagado(tvAire24LEd2) { FechaInicial = DateTime.Now.AddHours(-500), FechaFinal = DateTime.Now.AddHours(-370) }); tvAire24LEd2.AgregarEstado(new Encendido(tvAire24LEd2) { FechaInicial = DateTime.Now.AddHours(-370) }); //Act InstanciaRec.EjecutarRecomendacion(); var DI = new DispositivoInteligente(tvAire24LEd.DispositivoID); var ultEst = db.Estados.Find(DI.IDUltimoEstado); var DI2 = new DispositivoInteligente(tvAire24LEd2.DispositivoID); var ultEst2 = db.Estados.Find(DI2.IDUltimoEstado); //Assert //Assert.AreEqual("[770.0, 15.0, 360.0, 30.0, 365.0]", resultado); Assert.AreEqual("Apagado", ultEst.Desc); Assert.IsTrue(DI.EstaApagado()); Assert.AreEqual("Encendido", ultEst2.Desc); Assert.IsTrue(DI2.EstaEncendido()); } }
protected override void Seed(TP_Integrador.Data.ContextoDB context) { // This method will be called after migrating to the latest version. // You can use the DbSet<T>.AddOrUpdate() helper extension method // to avoid creating duplicate seed data. Cliente ClienteDePrueba = new Cliente(1, "NomUs", "LaPass", "Prueba", "Prueba", "Prueba", "DNI", "40000000", "4000000"); using (var db = new ContextoDB()) { DispositivoInteligente aire3500 = new DispositivoInteligente("Aire Acondicionado 3500", 1.613, ClienteDePrueba, new FabricanteDePrueba()); DispositivoInteligente aire2200 = new DispositivoInteligente("Aire Acondicionado 2200", 1.013, ClienteDePrueba, new FabricanteDePrueba()); DispositivoEstandar tvTubo21 = new DispositivoEstandar("TV Tubo Fluorescente 21'", 0.075, ClienteDePrueba); DispositivoEstandar tvTubo29a34 = new DispositivoEstandar("TV Tubo Fluorescente 29' a 34'", 0.175, ClienteDePrueba); DispositivoEstandar tvLCD = new DispositivoEstandar("TV LCD 40'", 0.18, ClienteDePrueba); DispositivoInteligente tvLED24 = new DispositivoInteligente("TV LED 24'", 0.04, ClienteDePrueba, new FabricanteDePrueba()); DispositivoInteligente tvLED32 = new DispositivoInteligente("TV LED 32'", 0.055, ClienteDePrueba, new FabricanteDePrueba()); DispositivoInteligente tvLED40 = new DispositivoInteligente("TV LED 40'", 0.08, ClienteDePrueba, new FabricanteDePrueba()); DispositivoInteligente heladeraConFreezer = new DispositivoInteligente("Heladera Con Freezer", 0.09, ClienteDePrueba, new FabricanteDePrueba()); DispositivoInteligente heladeraSinFreezer = new DispositivoInteligente("Heladera Sin Freezer", 0.075, ClienteDePrueba, new FabricanteDePrueba()); DispositivoEstandar lavarropasAutoCCalentamiento = new DispositivoEstandar("Lavarropas automático de 5kg con calentamiento de agua", 0.875, ClienteDePrueba); DispositivoInteligente lavarropasAutomatico = new DispositivoInteligente("Lavarropas automático de 5kg", 0.175, ClienteDePrueba, new FabricanteDePrueba()); DispositivoEstandar lavaropasSemiAuto = new DispositivoEstandar("Lavarropas semiautomático de 5kg", 0.1275, ClienteDePrueba); DispositivoEstandar ventiladorPie = new DispositivoEstandar("Ventilador de pie", 0.09, ClienteDePrueba); DispositivoInteligente ventiladorTecho = new DispositivoInteligente("Ventilador de techo", 0.06, ClienteDePrueba, new FabricanteDePrueba()); DispositivoInteligente lamparaHalo40W = new DispositivoInteligente("Lampara Halogena de 40W", 0.04, ClienteDePrueba, new FabricanteDePrueba()); DispositivoInteligente lamparaHalo60W = new DispositivoInteligente("Lampara Halogena de 60W", 0.06, ClienteDePrueba, new FabricanteDePrueba()); DispositivoInteligente lamparaHalo100W = new DispositivoInteligente("Lampara Halogena de 100W", 0.015, ClienteDePrueba, new FabricanteDePrueba()); DispositivoInteligente lampara11W = new DispositivoInteligente("Lampara de 11W", 0.011, ClienteDePrueba, new FabricanteDePrueba()); DispositivoInteligente lampara15W = new DispositivoInteligente("Lampara de 15W", 0.015, ClienteDePrueba, new FabricanteDePrueba()); DispositivoInteligente lampara20W = new DispositivoInteligente("Lampara de 20W", 0.02, ClienteDePrueba, new FabricanteDePrueba()); DispositivoInteligente pcEscritorio = new DispositivoInteligente("PC de escritorio", 0.4, ClienteDePrueba, new FabricanteDePrueba()); DispositivoEstandar microondas = new DispositivoEstandar("Microondas convencional", 0.64, ClienteDePrueba); db.Dispositivos.Add(aire2200); db.Dispositivos.Add(aire3500); db.Dispositivos.Add(tvTubo21); db.Dispositivos.Add(tvTubo29a34); db.Dispositivos.Add(tvLCD); db.Dispositivos.Add(tvLED24); db.Dispositivos.Add(tvLED32); db.Dispositivos.Add(tvLED40); db.Dispositivos.Add(heladeraConFreezer); db.Dispositivos.Add(heladeraSinFreezer); db.Dispositivos.Add(lavarropasAutoCCalentamiento); db.Dispositivos.Add(lavarropasAutomatico); db.Dispositivos.Add(lavaropasSemiAuto); db.Dispositivos.Add(ventiladorPie); db.Dispositivos.Add(ventiladorTecho); db.Dispositivos.Add(lamparaHalo40W); db.Dispositivos.Add(lamparaHalo60W); db.Dispositivos.Add(lamparaHalo100W); db.Dispositivos.Add(lampara11W); db.Dispositivos.Add(lampara15W); db.Dispositivos.Add(lampara20W); db.Dispositivos.Add(pcEscritorio); db.Dispositivos.Add(microondas); db.SaveChanges(); } }
public ActionResult DetallesInteligente(int id) { DispositivoInteligente d = new DispositivoInteligente(id); return(View(d)); }
public void ConsumoZona_Test() { using (var db = new DBContext()) { Cliente cliente = new Cliente("Luciano", "Panizza", "Medrano951", "ConsumoZona_test", "asdqwe123", "12345678", "dni", "12345678"); db.Usuarios.Add(cliente); db.SaveChanges(); var Aire3500fg = new DispositivoInteligente("aire acondicionado de 3500 frigorias", "0011", 1.613, 360, 90); Aire3500fg.UsuarioID = cliente.UsuarioID; db.Dispositivos.Add(Aire3500fg); db.SaveChanges(); var est1 = new Apagado(Aire3500fg) { FechaInicial = DateTime.Now.AddHours(-20), FechaFinal = DateTime.Now.AddHours(-15) }; var est2 = new Encendido(Aire3500fg) { FechaInicial = DateTime.Now.AddHours(-15), FechaFinal = DateTime.Now.AddHours(-7) }; var est3 = new Apagado(Aire3500fg) { FechaInicial = DateTime.Now.AddHours(-7), FechaFinal = DateTime.Now.AddHours(-2) }; var est4 = new Encendido(Aire3500fg) { FechaInicial = DateTime.Now.AddHours(-2) }; Aire3500fg.AgregarEstado(est1); Aire3500fg.AgregarEstado(est2); Aire3500fg.AgregarEstado(est3); Aire3500fg.AgregarEstado(est4); Cliente cliente2 = new Cliente("Luciano", "Panizza", "Pringles 853", "ConsumoZona2_test", "asdqwe123", "12345678", "dni", "12345678"); db.Usuarios.Add(cliente2); db.SaveChanges(); var Aire3500fg2 = new DispositivoInteligente("aire acondicionado de 3500 frigorias", "0011", 1.613, 360, 90); Aire3500fg2.UsuarioID = cliente2.UsuarioID; db.Dispositivos.Add(Aire3500fg2); db.SaveChanges(); var est12 = new Apagado(Aire3500fg2) { FechaInicial = DateTime.Now.AddHours(-20), FechaFinal = DateTime.Now.AddHours(-15) }; var est22 = new Encendido(Aire3500fg2) { FechaInicial = DateTime.Now.AddHours(-15), FechaFinal = DateTime.Now.AddHours(-7) }; var est32 = new Apagado(Aire3500fg2) { FechaInicial = DateTime.Now.AddHours(-7), FechaFinal = DateTime.Now.AddHours(-2) }; var est42 = new Encendido(Aire3500fg2) { FechaInicial = DateTime.Now.AddHours(-2) }; Aire3500fg2.AgregarEstado(est12); Aire3500fg2.AgregarEstado(est22); Aire3500fg2.AgregarEstado(est32); Aire3500fg2.AgregarEstado(est42); //Act var zona = db.Zonas.Find(1); var zonadb = new Zona(zona.ZonaID, zona.Latitud, zona.Longitud, zona.Radio); //Assert Assert.AreEqual(Aire3500fg.KWxHora * 5 * 2, zonadb.ConsumoTotal(DateTime.Now.AddHours(-10), DateTime.Now)); } }