コード例 #1
0
        public IActionResult CrearGuardarropa(IFormCollection form)
        {
            DB          db          = new DB();
            Guardarropa guardarropa = new Guardarropa();

            int idUser = Convert.ToInt32(form["idUsuario"]);

            if (form["nombreGuardarropa"] != "")
            {
                guardarropa.nombreGuardarropas = form["nombreGuardarropa"];
                guardarropa.id_duenio          = idUser;

                GuardarropaRepository guardarropaRepo = new GuardarropaRepository();
                guardarropaRepo.Create(guardarropa, db, idUser);

                Prenda p = new Prenda();
                p.crearPrendasVacias(guardarropa.id_guardarropa, idUser);

                TempData["SuccessMessage"] = "Guardarropa " + guardarropa.nombreGuardarropas + " creado con exito!";
                return(RedirectToAction("Index", "Guardarropas", new { idUsuario = idUser }));
            }
            else
            {
                TempData["ErrorMessage"] = "Tenes que ingresar un nombre válido para crear un guardarropa";
                return(RedirectToAction("Index", "Guardarropas", new { idUsuario = idUser }));
            }
        }
コード例 #2
0
        public List <Atuendo> generarAtuendos()
        {
            DB db = new DB();
            guardarropaXusuarioRepository guardarropaDAO = new guardarropaXusuarioRepository();
            GuardarropaRepository         guardarropaREP = new GuardarropaRepository();
            GenerarSugerencias            generador      = new GenerarSugerencias();
            TipoPrendaRepository          tpr            = new TipoPrendaRepository();
            List <Atuendo> atuendos = new List <Atuendo>();
            List <guardarropaXusuarioRepository> guardarropasParciales = guardarropaDAO.listarGuardarropasDeUsuario(id_usuario);
            List <List <Prenda> > prendas = new List <List <Prenda> >();

            foreach (guardarropaXusuarioRepository g in guardarropasParciales)
            {
                prendas.Add(guardarropaREP.PrendasDelGuardarropas(g.id_guardarropa, db));
            }
            foreach (List <Prenda> p in prendas)
            {
                foreach (Prenda pr in p)
                {
                    pr.tipo = tpr.TraerTipoDePrendaPorId(pr.tipoPrenda);
                }
            }
            foreach (List <Prenda> p in prendas)
            {
                atuendos.AddRange(generador.ejecutarGenerar(20, p, this));
            }
            return(atuendos);
        }
コード例 #3
0
        public IActionResult EditarGuardarropa(IFormCollection form)
        {
            GuardarropaRepository guardarropaDAO = new GuardarropaRepository();

            String idGuardarropaString = form["idGuardarropa"];
            String idUsuarioString     = form["idUsuario"];
            int    idGuardarropa       = Convert.ToInt32(idGuardarropaString);
            int    idUsuario           = Convert.ToInt32(idUsuarioString);

            String nuevoNombreGuardarropa = form["nuevoNombreGuardarropa"];
            String nombreViejoGuardarropa = form["nombreViejoGuardarropa"];


            if (guardarropaDAO.TryUpdate(idGuardarropa, idUsuario, nuevoNombreGuardarropa))//Try update devuelve un true en caso de que pudo editar el guardarropa

            {
                TempData["SuccessMessage"] = "Modificaste el nombre del guardarropa '" + nombreViejoGuardarropa + "' a '" + nuevoNombreGuardarropa + "' con exito :D !";

                return(RedirectToAction("Index", "Guardarropas", new { idUsuario = idUsuario }));
            }
            else
            {
                TempData["ErrorMessage"] = "No podes editar el guardarropa " + nombreViejoGuardarropa + " porque no sos el dueño";

                return(RedirectToAction("Index", "Guardarropas", new { idUsuario = idUsuario }));
            }
        }
コード例 #4
0
        public IActionResult EliminarGuardarropa(int idGuardarropa, int idUsuario)
        {
            GuardarropaRepository guardarropaDAO = new GuardarropaRepository();

            var mensaje = guardarropaDAO.Delete(idGuardarropa, idUsuario);

            TempData["SuccessMessage"] = mensaje;
            return(RedirectToAction("Index", "Guardarropas", new { idUsuario = idUsuario }));
        }
コード例 #5
0
        public IActionResult CompartirGuardarropa(IFormCollection form)
        {
            //Hago estos pasamanos asquerosos porque no me deja parsear directamente
            String nombreDeUsuarioACompartir     = form["nombreUsuarioACompartir"];
            String idUsuarioDuenioString         = form["idUsuarioDuenio"];
            String idGuardarropaACompartirString = form["idGuardarropaACompartir"];
            int    idUsuarioDuenio         = Convert.ToInt32(idUsuarioDuenioString);
            int    idGuardarropaACompartir = Convert.ToInt32(idGuardarropaACompartirString);

            UsuarioRepository     userDAO        = new UsuarioRepository();
            GuardarropaRepository guardarropaDAO = new GuardarropaRepository();

            Usuario usuarioDuenio        = userDAO.BuscarUsuarioPorId(idUsuarioDuenio);
            Usuario usuarioParaCompartir = userDAO.BuscarUsuarioPorUsername(nombreDeUsuarioACompartir);

            Guardarropa guardarropaParaCompartir = guardarropaDAO.buscarGuardarropaPorIdYPorDuenio(idGuardarropaACompartir, idUsuarioDuenio);

            int respuesta = usuarioDuenio.compartirGuardarropa(guardarropaParaCompartir, usuarioParaCompartir);

            switch (respuesta)
            {
            case 0:

                TempData["SuccessMessage"] = "Guardarropa compartido con " + usuarioParaCompartir.usuario + " :D !";

                return(RedirectToAction("Index", "Guardarropas", new { idUsuario = idUsuarioDuenio }));

            case 1:

                TempData["ErrorMessage"] = "No se puede compartir el guardarropas con el usuario " + nombreDeUsuarioACompartir + " porque es de un tipo de usuario inferior al tuyo!";

                return(RedirectToAction("Index", "Guardarropas", new { idUsuario = idUsuarioDuenio }));

            case 2:

                TempData["ErrorMessage"] = "Ya compartiste el guardarropa " + guardarropaParaCompartir.nombreGuardarropas + " con el usuario " + nombreDeUsuarioACompartir + "!";

                return(RedirectToAction("Index", "Guardarropas", new { idUsuario = idUsuarioDuenio }));

            case 3:

                TempData["ErrorMessage"] = "El usuario " + nombreDeUsuarioACompartir + " no existe!";

                return(RedirectToAction("Index", "Guardarropas", new { idUsuario = idUsuarioDuenio }));

            default:

                return(RedirectToAction("Index", "Login"));
            }
        }
コード例 #6
0
 public void eliminarGuardarropa(String nombreGuardarropa)
 {
     foreach (Guardarropa a in guardarropas)
     {
         if (nombreGuardarropa == a.nombreGuardarropas)
         {
             DB context = new DB();
             GuardarropaRepository gr = new GuardarropaRepository();
             gr.Delete(a.id_guardarropa, context, id_usuario);
             guardarropas.Remove(a);
             Console.WriteLine("Guardarropas eliminado");
             break;
         }
     }
 }
コード例 #7
0
        public IActionResult VerPrendasDelGuardarropas(int idGuardarropa, int idUsuario)
        {
            DB db = new DB();
            GuardarropaRepository guardarropaDAO = new GuardarropaRepository();
            Guardarropa           guardarropa    = guardarropaDAO.buscarGuardarropaPorId(idGuardarropa);

            List <Prenda> prendas = guardarropaDAO.PrendasDelGuardarropas(idGuardarropa, db);

            ViewBag.Prendas           = prendas;
            ViewBag.IdGuardarropa     = idGuardarropa;
            ViewBag.nombreGuardarropa = guardarropa.nombreGuardarropas;
            ViewBag.Id = idUsuario;

            return(View("PrendasDelGuardarropa"));
        }
コード例 #8
0
        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);
            }
        }
コード例 #9
0
        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).");
            }
        }
コード例 #10
0
ファイル: Program.cs プロジェクト: NicolasEZD/queMePongo
        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);
            }
        }