public List <List <Prenda> > filtrarPrenda(List <Prenda> p, Evento even) { FiltroPrendas f = new FiltroPrendas(); return(f.filtrarPrendasPorCategoria(p, even)); }
public List <Atuendo> ejecutarGenerar(int temp, List <Prenda> p, Evento even) { return(filtrarCombinaciones(combinar(filtrarPrenda(p, even)), temp)); }
public List <List <Prenda> > filtrarPrendasPorCategoria(List <Prenda> prendas, Evento even) { List <Prenda> TorsoCapa0 = new List <Prenda>(); List <Prenda> TorsoCapa1 = new List <Prenda>(); List <Prenda> TorsoCapa2 = new List <Prenda>(); List <Prenda> PiernasCapa0 = new List <Prenda>(); List <Prenda> PiernasCapa1 = new List <Prenda>(); List <Prenda> PiernasCapa2 = new List <Prenda>(); List <Prenda> calzado = new List <Prenda>(); List <Prenda> Accesorios = new List <Prenda>(); foreach (Prenda p in prendas) { if (string.Equals(p.tipo.categoria, "torso") && p.tipo.capa == 0 && p.validarFechas(even)) { TorsoCapa0.Add(p); } if (string.Equals(p.tipo.categoria, "torso") && p.tipo.capa == 1 && p.validarFechas(even)) { TorsoCapa1.Add(p); } if (string.Equals(p.tipo.categoria, "torso") && p.tipo.capa == 2 && p.validarFechas(even)) { TorsoCapa2.Add(p); } if (string.Equals(p.tipo.categoria, "piernas") && p.tipo.capa == 0 && p.validarFechas(even)) { PiernasCapa0.Add(p); } if (string.Equals(p.tipo.categoria, "piernas") && p.tipo.capa == 1 && p.validarFechas(even)) { PiernasCapa1.Add(p); } if (string.Equals(p.tipo.categoria, "piernas") && p.tipo.capa == 2 && p.validarFechas(even)) { PiernasCapa2.Add(p); } if (string.Equals(p.tipo.categoria, "calzado") && p.validarFechas(even)) { calzado.Add(p); } if (string.Equals(p.tipo.categoria, "accesorio") && p.validarFechas(even)) { Accesorios.Add(p); } } List <List <Prenda> > prendasFiltradas = new List <List <Prenda> >(); prendasFiltradas.Add(TorsoCapa0); prendasFiltradas.Add(TorsoCapa1); prendasFiltradas.Add(TorsoCapa2); prendasFiltradas.Add(PiernasCapa0); prendasFiltradas.Add(PiernasCapa1); prendasFiltradas.Add(PiernasCapa2); prendasFiltradas.Add(calzado); prendasFiltradas.Add(Accesorios); return(prendasFiltradas); }
static void Main(string[] args) { using (var context = new DB()) { var UsuarioRepo = new UsuarioRepository(); var GuardarropaRepo = new GuardarropaRepository(); var TelaRepo = new TelaRepository(); var TipoPrendaRepo = new TipoPrendaRepository(); var AtuendoRepo = new AtuendoRepository(); var EventoRepo = new EventoRepository(); var PrendasRepo = new PrendaRepository(); context.limpiarDB(); var telaDePrueba = new Tela(); telaDePrueba.descripcion = "Seda"; TelaRepo.Insert(telaDePrueba, context); TipoPrenda tp1 = new TipoPrenda(); tp1.descripcion = "jean"; tp1.categoria = "torso"; tp1.tiposDeTelaPosibles.Add("algodon"); tp1.tiposDeTelaPosibles.Add("lana"); tp1.nivelDeAbrigo = 8; tp1.capa = 1; TipoPrenda tp2 = new TipoPrenda(); tp2.descripcion = "joguin"; tp2.categoria = "torso"; tp2.tiposDeTelaPosibles.Add("algodon"); tp2.tiposDeTelaPosibles.Add("lana"); tp2.nivelDeAbrigo = 10; tp2.capa = 0; TipoPrendaRepo.Insert(tp1, context); TipoPrendaRepo.Insert(tp2, context); var tela = context.telas.Single(u => u.id_tela == 17); var usuario1 = new Usuario("usuario1", new Gratuito(), "pass"); UsuarioRepo.Insert(usuario1, context); var user = context.usuarios.Single(u => u.usuario == "usuario1"); Guardarropa guardarropa = new Guardarropa(usuario1, "Guardarropa1"); GuardarropaRepo.Insert(guardarropa, context, user.id_usuario); var guard = context.guardarropas.Single(u => u.nombreGuardarropas == "Guardarropa1"); Prenda p = new Prenda(tp1, tela, "rojo", "amarillo"); PrendasRepo.Insert(p, context, guard.id_guardarropa); var evento = new Evento("UTN", "EntregaTP", usuario1, new DateTime(2018, 10, 5, 7, 45, 0), new DateTime(2018, 10, 5, 7, 45, 0), new DateTime(2018, 10, 5, 7, 45, 0), "evento1", 1); //Falta crear un atuendo y asignarle el id al atributo id_atuendo de evento // no hace falta crear un atuendo para el evento sino no tendria sentido hacer lo de sugerencias por evento porque la elige cuando crea el evento EventoRepo.Insert(evento, context); Helper sist = new Helper(); Usuario user2 = new Usuario(); user2 = sist.loguing("usuario1", "pass"); Console.WriteLine(user2.id_usuario); Console.WriteLine(user2.usuario); Console.WriteLine(user2.guardarropas[0].nombreGuardarropas); Console.WriteLine(user2.guardarropas[0].prendas[0].id_prenda); Console.WriteLine(user2.eventos[0].lugar); UsuarioRepo.Delete(user2, context); var usuarios = context.consultarUsuarios(); var guardarropas = context.consultarGuardarropas(); var eventos = context.consultarEventos(); var prendas = context.consultarPrendas(); var atuendos = context.consultarAtuendos(); var tipoprendas = context.consultarTipoPrendas(); var telas = context.consultarTelas(); Console.WriteLine($"Existen {usuarios.Length} usuario(s)."); Console.WriteLine($"Existen {guardarropas.Length} guardarropa(s)."); Console.WriteLine($"Existen {eventos.Length} evento(s)."); Console.WriteLine($"Existen {prendas.Length} prenda(s)."); Console.WriteLine($"Existen {atuendos.Length} atuendo(s)."); Console.WriteLine($"Existen {tipoprendas.Length} tipo(s) de prenda(s)."); Console.WriteLine($"Existen {telas.Length} telas(s)."); } }
public void crearSchedulerEvento(String nombre, int tipoEvento, DateTime fechaIni, Evento even) { JobDataMap jobData = new JobDataMap(); jobData.Add(nombre, even); IJobDetail jobComp = JobBuilder.Create <JobComp>().WithIdentity(nombre, "grupoEjemplo").UsingJobData(jobData).Build(); //ITrigger triggerComp = TriggerBuilder.Create().WithIdentity(nombre, "grupoEjemplo").StartNow() // .WithSimpleSchedule(x => x.WithIntervalInSeconds(5).RepeatForever()).Build(); ITrigger triggerComp = crearTrigger(tipoEvento, fechaIni, nombre); this.agregarTask(jobComp, triggerComp); }
static void Main(string[] args) { using (var context = new DB()) { var UsuarioRepo = new UsuarioRepository(); var GuardarropaRepo = new GuardarropaRepository(); var TelaRepo = new TelaRepository(); var TipoPrendaRepo = new TipoPrendaRepository(); var AtuendoRepo = new AtuendoRepository(); var EventoRepo = new EventoRepository(); var usuarios = context.consultarUsuarios(); var guardarropas = context.consultarGuardarropas(); var eventos = context.consultarEventos(); var prendas = context.consultarPrendas(); var atuendos = context.consultarAtuendos(); //var tipoprendas = context.consultarTipoPrendas(); var telas = context.consultarTelas(); /*Console.WriteLine($"Existen {usuarios.Length} usuario(s)."); * Console.WriteLine($"Existen {guardarropas.Length} guardarropa(s)."); * Console.WriteLine($"Existen {eventos.Length} evento(s)."); * Console.WriteLine($"Existen {prendas.Length} prenda(s)."); * Console.WriteLine($"Existen {atuendos.Length} atuendo(s)."); * Console.WriteLine($"Existen {tipoprendas.Length} tipo(s) de prenda(s)."); * Console.WriteLine($"Existen {telas.Length} telas(s).");*/ //Creo un usuario var usuario1 = new Usuario("usuario1", new Gratuito(), "pass"); UsuarioRepo.Insert(usuario1, context); //Agrego un usuario con guardarropa var usuario2ConGuardarropa = new Usuario("usuario2", new Gratuito(), "pass"); Guardarropa guardarropa = new Guardarropa(usuario2ConGuardarropa, "Guardarropa1"); usuario2ConGuardarropa.guardarropas = (List <Guardarropa>) new List <Guardarropa> { guardarropa }; UsuarioRepo.Insert(usuario2ConGuardarropa, context); //Agrego el guardarropa al usuario2 (Aca nose si esta andando bien o mal, cuando liste los guardarropas de este usuario, me deberían aparecer 1 o 2 guardarropas? var nuevoGuardarropa = new Guardarropa(usuario2ConGuardarropa, "Guardarropa2"); GuardarropaRepo.Insert(nuevoGuardarropa, context); //Consulto los guardarropas de ese usuario var usuarioConsultaGuardarropa = context.usuarios.Single(x => x.usuario == "usuario2"); Console.WriteLine($"\nGuardarropas del usuario {usuarioConsultaGuardarropa.usuario}:"); foreach (Guardarropa g in usuarioConsultaGuardarropa.guardarropas) { Console.WriteLine($"{g.id_guardarropa} - {g.nombreGuardarropas}"); } var tela = new Tela("Algodon"); TelaRepo.Insert(tela, context); var tipoPrenda = new TipoPrenda(); TipoPrendaRepo.Insert(tipoPrenda, context); //Creo una prenda TODO: No anda (ERROR: insert or update on table "prendas" violates foreign key constraint "prenda_tipoprenda_prenda_id") /*var prenda = new Prenda(new TipoPrenda(), "Algodon", "Blanco", "Negro"); * prenda.tipoPrenda = tipoPrenda.id_tipoPrenda; * //prenda.tipoPrenda = 1; * prenda.id_tela = tela.id_tela; * context.prendas.Add(prenda); * context.SaveChanges(); * Console.WriteLine($"\nPrenda {prenda.id_prenda} creada!");*/ //Creo un atuendo var atuendo = new Atuendo(); AtuendoRepo.Insert(atuendo, context); //Creo un evento var evento = new Evento("UTN", "EntregaTP", usuario1, new DateTime(2018, 10, 5, 7, 45, 0), new DateTime(2018, 10, 5, 7, 45, 0), new DateTime(2018, 10, 5, 7, 45, 0), "evento1", 1); evento.id_atuendo = atuendo.id_atuendo; EventoRepo.Insert(evento, context); UsuarioRepo.Delete(usuario1.id_usuario, context); } }