public Guardarropa crearGuardarropa(String nombreGuardarropa) { Guardarropa value = tipoUsuario.crearGuardarropa(nombreGuardarropa, this); guardarropas.Add(value); Console.WriteLine("Guardarropas creado"); return(value); }
public void compartirGuardarropa(Usuario usuario, Guardarropa guardarropaACompartir) { if (Object.ReferenceEquals(this.tipoUsuario.GetType(), usuario.tipoUsuario.GetType())) { usuario.agregarGaurdarropaCompartido(guardarropaACompartir); } else { throw new ArgumentException("los usuarios son de distinto tipo"); } }
public Guardarropa crearGuardarropa(String nombreGuardarropa) { DB context = new DB(); GuardarropaRepository gr = new GuardarropaRepository(); if (gr.existeGuardarropa(nombreGuardarropa, context, id_usuario)) { Console.WriteLine("El guardarropas ya existe"); return(null); } else { Guardarropa value = tipoUsuario.crearGuardarropa(nombreGuardarropa, this); guardarropas.Add(value); gr.Insert(value, context, id_usuario); Console.WriteLine("Guardarropas creado"); return(value); } }
public int compartirGuardarropa(Guardarropa guardarropaOriginal, Usuario usuarioParaCompartir){ guardarropaXusuarioRepository gxuDAO = new guardarropaXusuarioRepository(); guardarropaXusuarioRepository gxuDAOParaConsulta = new guardarropaXusuarioRepository(); if(usuarioParaCompartir != null){//Compruebo que exista el usuario al que se quiere compartir gxuDAOParaConsulta = gxuDAO.BuscarGuardarropaPorIdYIdDeUsuario(guardarropaOriginal.id_guardarropa, usuarioParaCompartir.id_usuario); if(gxuDAOParaConsulta == null){//Si fuese != null significa que ya le compartio el guardarropa a ese usuario if(this.puedeCompartirElGuardarropa(usuarioParaCompartir.tipoDeUsuario)){ // usuarioDuenio.compartirGuardarropa(guardarropaOriginal, usuarioParaCompartir.id_usuario); DB db = new DB(); gxuDAO.id_guardarropa = guardarropaOriginal.id_guardarropa; gxuDAO.id_usuario = usuarioParaCompartir.id_usuario; gxuDAO.nombreGuardarropa = guardarropaOriginal.nombreGuardarropas; db.guardarropaXusuarioRepositories.Add(gxuDAO); db.SaveChanges(); return 0; } else { return 1; } } else {//En caso de que ya le compartió el guardarropas return 2; } } else { //Mensaje de error por si no existe el usuario return 3; } }
public void agregarGaurdarropaCompartido(Guardarropa guardarropaCompartido) { guardarropaCompartido.usuariosCompartidos.Add(this); guardarropas.Add(guardarropaCompartido); }
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 override Guardarropa crearGuardarropa(String nombreGuardarropa, Usuario user) { Guardarropa value = new Guardarropa(user, nombreGuardarropa); return(value); }
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); } }