예제 #1
0
        public ActionResult Save(Comidas comida) // recebemos um cliente
        {
            if (!ModelState.IsValid)
            {
                return(View("ComidaForm", comida));
            }

            if (comida.Id == 0)
            {
                // armazena o cliente em memória
                _context.Comidas.Add(comida);
            }
            else
            {
                var comidaNoBD = _context.Comidas.Single(c => c.Id == comida.Id);

                comidaNoBD.Tipo  = comida.Tipo;
                comidaNoBD.Preco = comida.Preco;
            }

            // faz a persistência
            _context.SaveChanges();
            // Voltamos para a lista de clientes
            return(RedirectToAction("Index"));
        }
예제 #2
0
        private void comidasToolStripMenuItem_Click(object sender, EventArgs e)
        {
            Comidas ventanaComidas = new Comidas();

            ventanaComidas.MdiParent = this;
            ventanaComidas.Show();
        }
        public ActionResult DeleteConfirmed(int id)
        {
            Comidas comidas = db.Comidas.Find(id);

            db.Comidas.Remove(comidas);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
        public async Task <ActionResult> DeleteConfirmed(int id)
        {
            Comidas comidas = await db.Comidas.FindAsync(id);

            db.Comidas.Remove(comidas);
            await db.SaveChangesAsync();

            return(RedirectToAction("Index"));
        }
 public ActionResult Edit([Bind(Include = "IdComida,Nome,Preco")] Comidas comidas)
 {
     if (ModelState.IsValid)
     {
         db.Entry(comidas).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     return(View(comidas));
 }
        public ActionResult Create([Bind(Include = "IdComida,Nome,Preco")] Comidas comidas)
        {
            if (ModelState.IsValid)
            {
                db.Comidas.Add(comidas);

                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(comidas));
        }
        // GET: Comidas/Delete/5
        public ActionResult Delete(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Comidas comidas = db.Comidas.Find(id);

            if (comidas == null)
            {
                return(HttpNotFound());
            }
            return(View(comidas));
        }
        // GET: Comidas/Details/5
        public async Task <ActionResult> Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Comidas comidas = await db.Comidas.FindAsync(id);

            if (comidas == null)
            {
                return(HttpNotFound());
            }
            return(View(comidas));
        }
        public async Task <ActionResult> Edit([Bind(Include = "id_comida,nombre,descripcion,id_categoria,Idprecio,id_foto")] Comidas comidas)
        {
            if (ModelState.IsValid)
            {
                db.Entry(comidas).State = EntityState.Modified;
                await db.SaveChangesAsync();

                return(RedirectToAction("Index"));
            }
            ViewBag.id_categoria = new SelectList(db.Categorias, "id_categoria", "nombre", comidas.id_categoria);
            ViewBag.id_foto      = new SelectList(db.Foto, "id_foto", "img_foto", comidas.id_foto);
            ViewBag.Idprecio     = new SelectList(db.Precios, "id_precio", "id_precio", comidas.Idprecio);
            return(View(comidas));
        }
예제 #10
0
        public IActionResult Eliminar(Comidas comidas)
        {
            ComidasRepository comidasRepository = new ComidasRepository();
            var comidaResult = comidasRepository.GetById(comidas.Id);

            if (comidaResult == null)
            {
                ModelState.AddModelError("", "Esta comida no existe o ya fue eliminada");
                return(View(comidaResult));
            }
            else
            {
                comidasRepository.Delete(comidaResult);
                return(RedirectToAction("Comidas", "Administrador"));
            }
        }
예제 #11
0
        public ActionResult Comidas(Comidas comidaModel)
        {
            using (DbModels dbModel = new DbModels())
            {
                if (dbModel.Comidas.Any(x => x.fecha == comidaModel.fecha))
                {
                    ViewBag.DuplicateMessage = "Ya existe una comida con esta fecha.";
                    return(View("Comidas", comidaModel));
                }

                dbModel.Comidas.Add(comidaModel);
                dbModel.SaveChanges();
            }
            ModelState.Clear();
            ViewBag.SuccessMessage = "Registro exitoso.";
            return(View("Comidas", new Comidas()));
        }
        // GET: Comidas/Edit/5
        public async Task <ActionResult> Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Comidas comidas = await db.Comidas.FindAsync(id);

            if (comidas == null)
            {
                return(HttpNotFound());
            }
            ViewBag.id_categoria = new SelectList(db.Categorias, "id_categoria", "nombre", comidas.id_categoria);
            ViewBag.id_foto      = new SelectList(db.Foto, "id_foto", "img_foto", comidas.id_foto);
            ViewBag.Idprecio     = new SelectList(db.Precios, "id_precio", "id_precio", comidas.Idprecio);
            return(View(comidas));
        }
예제 #13
0
        public ActionResult Comidas(ComidasCommon model)
        {
            if (Session["UserName"] != null)
            {
                if (ModelState.IsValid)
                {
                    Comida comida = new Comida();
                    comida.Descripcion = model.Comidas.Descripcion;
                    dbContext.comidas.Add(comida);

                    dbContext.SaveChanges();
                    return(RedirectToAction("Comidas", "Comidas"));
                }
                else
                {
                    model.ComidasResult = new ComidasResult();

                    var query = (from c in dbContext.comidas
                                 select c).ToList();

                    List <Comidas> comidas = new List <Comidas>();

                    foreach (var c in query)
                    {
                        Comidas comida = new Comidas();

                        comida.ID          = c.ID;
                        comida.Descripcion = c.Descripcion;

                        comidas.Add(comida);
                    }

                    model.ComidasResult.comidas = comidas;


                    return(RedirectToAction("Comidas", "Comidas"));
                }
            }

            else
            {
                //Si no se inicio sesion no se puede acceder a esta pagina
                return(RedirectToAction("Login", "Login"));
            }
        }
예제 #14
0
        public static void Main()
        {
            Creator[] listaProdutos = new Creator[2];
            listaProdutos[0] = new Comidas();
            listaProdutos[1] = new Bebidas();

            Console.WriteLine("\nMenu---------");
            foreach (Creator lista in listaProdutos)
            {
                Console.WriteLine("\n" + lista.GetType().Name + "--");

                foreach (Produto produto in lista.Produtos)
                {
                    Console.WriteLine(" " + produto.ObterInformacoes());
                }
            }
            Console.WriteLine("\nPressione qualquer tecla para voltar ao menu inicial...");
            Console.ReadKey();
        }
예제 #15
0
        public ActionResult Comidas()
        {
            Comidas comidaModel = new Comidas();

            return(View(comidaModel));
        }
예제 #16
0
        public void ImportarCSV(int Tipo, FileStream file, string ruta)
        {
            file.Position = 0;

            var reader = new StreamReader(file);

            WebClient webClient = new WebClient();

            /*
             * Tipos
             * 1 - Ciudad
             * 2 - Comida
             * 3 - Tipo de Atraccion
             * 4 - Atraccion
             * */
            string                  headers;
            CiudadesRepository      ciudadesRepository;
            ComidasRepository       comidasRepository;
            TipoAtraccionRepository tipoAtraccionRepository;
            AtraccionesRepository   atraccionesRepository;

            switch (Tipo)
            {
            case 1:
                headers = reader.ReadLine();
                if (headers != "Nombre,Portada,Contenido")
                {
                    throw new Exception("El orden de las columnas no es el correcto [ Nombre,Portada,Contenido ] (La portada debe ser un link de una imagen JPG)");
                }

                ciudadesRepository = new CiudadesRepository();

                Context.Database.BeginTransaction();

                while (!reader.EndOfStream)
                {
                    var line   = reader.ReadLine();
                    var values = line.Split(',');

                    if (ciudadesRepository.GetCiudadesByNombre(values[0]) == null)
                    {
                        Ciudades ciudades = new Ciudades()
                        {
                            Nombre    = values[0],
                            Contenido = values[2]
                        };

                        Context.Add(ciudades);
                        Context.SaveChanges();

                        webClient.DownloadFile(values[1], $"{ruta}/images/ciudades/{ciudades.Id}.jpg");
                    }
                    else
                    {
                        throw new Exception($"Ya existe una ciudad con el nombre de [ {values[0]} ]");
                    }
                }

                Context.Database.CommitTransaction();
                break;

            case 2:
                headers = reader.ReadLine();
                if (headers != "Nombre,Portada,Descripcion,Ciudad")
                {
                    throw new Exception("El orden de las columnas no es el correcto [ Nombre,Portada,Descripcion,Ciudad ] (La portada debe ser un link de una imagen JPG)");
                }

                ciudadesRepository = new CiudadesRepository();
                comidasRepository  = new ComidasRepository();

                Context.Database.BeginTransaction();

                while (!reader.EndOfStream)
                {
                    var line   = reader.ReadLine();
                    var values = line.Split(',');
                    var ciudad = ciudadesRepository.GetCiudadesByNombre(values[3]);

                    if (comidasRepository.GetComidaByNombre(values[0]) == null)
                    {
                        if (ciudad == null)
                        {
                            throw new Exception($"No existe una ciudad con el nombre de [ {values[3]} ]");
                        }

                        Comidas comidas = new Comidas()
                        {
                            Nombre      = values[0],
                            Descripcion = values[2],
                            IdCiudad    = ciudad.Id
                        };

                        Context.Add(comidas);
                        Context.SaveChanges();

                        webClient.DownloadFile(values[1], $"{ruta}/images/comidas/{comidas.Id}.jpg");
                    }
                    else
                    {
                        throw new Exception($"Ya existe una comida con el nombre de [ {values[0]} ]");
                    }
                }

                Context.Database.CommitTransaction();
                break;

            case 3:
                headers = reader.ReadLine();
                if (headers != "Tipo,Icono")
                {
                    throw new Exception("El orden de las columnas no es el correcto [ Tipo,Icono ] (El icono debe ser un link de una imagen JPG)");
                }

                tipoAtraccionRepository = new TipoAtraccionRepository();

                Context.Database.BeginTransaction();

                while (!reader.EndOfStream)
                {
                    var line   = reader.ReadLine();
                    var values = line.Split(',');

                    if (tipoAtraccionRepository.GetTipoAtraccionByTipo(values[0]) == null)
                    {
                        Tipoatraccion tipoatraccion = new Tipoatraccion()
                        {
                            Tipo = values[0]
                        };

                        Context.Add(tipoatraccion);
                        Context.SaveChanges();

                        webClient.DownloadFile(values[1], $"{ruta}/images/tipoatraccion/{tipoatraccion.Id}.jpg");
                    }
                    else
                    {
                        throw new Exception($"Ya existe este tipo de atraccion con el nombre de [ {values[0]} ]");
                    }
                }

                Context.Database.CommitTransaction();
                break;

            case 4:
                headers = reader.ReadLine();
                if (headers != "Titulo,Portada,Contenido,Ciudad,Tipo")
                {
                    throw new Exception("El orden de las columnas no es el correcto [ Titulo,Portada,Contenido,Ciudad,Tipo ] (La portada debe ser un link de una imagen JPG)");
                }

                atraccionesRepository   = new AtraccionesRepository();
                ciudadesRepository      = new CiudadesRepository();
                tipoAtraccionRepository = new TipoAtraccionRepository();

                Context.Database.BeginTransaction();

                while (!reader.EndOfStream)
                {
                    var line          = reader.ReadLine();
                    var values        = line.Split(',');
                    var ciudad        = ciudadesRepository.GetCiudadesByNombre(values[3]);
                    var tipoatraccion = tipoAtraccionRepository.GetTipoAtraccionByTipo(values[4]);

                    if (atraccionesRepository.GetAtraccionesByTitulo(values[0]) == null)
                    {
                        if (ciudad == null)
                        {
                            throw new Exception($"No existe una ciudad con el nombre de [ {values[3]} ]");
                        }

                        if (tipoatraccion == null)
                        {
                            throw new Exception($"No existe un tipo de atraccion con el nombre de [ {values[4]} ]");
                        }

                        Atracciones atracciones = new Atracciones()
                        {
                            Titulo    = values[0],
                            Contenido = values[2],
                            IdCiudad  = ciudad.Id,
                            IdTipo    = tipoatraccion.Id
                        };

                        Context.Add(atracciones);
                        Context.SaveChanges();

                        webClient.DownloadFile(values[1], $"{ruta}/images/atracciones/{atracciones.Id}.jpg");
                    }
                    else
                    {
                        throw new Exception($"Ya existe una atraccion con el titulo de [ {values[0]} ]");
                    }
                }

                Context.Database.CommitTransaction();
                break;

            default:
                throw new Exception("Seleccione un tipo de registro valido");
            }
        }
예제 #17
0
        public void ImportarExcel(int Tipo, FileStream file, string ruta)
        {
            file.Position = 0;

            IWorkbook workbook = new XSSFWorkbook(file);
            ISheet    sheet    = workbook.GetSheetAt(0);

            var primerRow = sheet.GetRow(0);

            /*
             * Tipos
             * 1 - Ciudad
             * 2 - Comida
             * 3 - Tipo de Atraccion
             * 4 - Atraccion
             * */

            switch (Tipo)
            {
            case 1:
                if (primerRow.GetCell(0).StringCellValue == "Nombre" &&
                    primerRow.GetCell(1).StringCellValue == "Portada" &&
                    primerRow.GetCell(2).StringCellValue == "Contenido")
                {
                    int lastRow = sheet.LastRowNum;
                    CiudadesRepository ciudadesRepository = new CiudadesRepository();

                    Context.Database.BeginTransaction();

                    WebClient webClient = new WebClient();

                    for (int i = 1; i <= sheet.LastRowNum; i++)
                    {
                        if (ciudadesRepository.GetCiudadesByNombre(sheet.GetRow(i).GetCell(0).StringCellValue) == null)
                        {
                            Ciudades ciudades = new Ciudades()
                            {
                                Nombre    = sheet.GetRow(i).GetCell(0).StringCellValue,
                                Contenido = sheet.GetRow(i).GetCell(2).StringCellValue
                            };

                            Context.Add(ciudades);
                            Context.SaveChanges();

                            webClient.DownloadFile(sheet.GetRow(i).GetCell(1).StringCellValue, $"{ruta}/images/ciudades/{ciudades.Id}.jpg");
                        }
                        else
                        {
                            throw new Exception($"Ya existe una ciudad con el nombre de [ {sheet.GetRow(i).GetCell(0).StringCellValue} ]");
                        }
                    }
                    Context.Database.CommitTransaction();
                }
                else
                {
                    workbook.Close();
                    throw new Exception("El archivo de Excel no tiene los datos en el orden correcto [ Nombre,Portada,Contenido ] (La portada debe ser un link de una imagen JPG)");
                }
                break;

            case 2:
                if (primerRow.GetCell(0).StringCellValue == "Nombre" &&
                    primerRow.GetCell(1).StringCellValue == "Portada" &&
                    primerRow.GetCell(2).StringCellValue == "Descripcion" &&
                    primerRow.GetCell(3).StringCellValue == "Ciudad")
                {
                    int lastRow = sheet.LastRowNum;
                    CiudadesRepository ciudadesRepository = new CiudadesRepository();
                    ComidasRepository  comidasRepository  = new ComidasRepository();

                    Context.Database.BeginTransaction();

                    WebClient webClient = new WebClient();

                    for (int i = 1; i <= sheet.LastRowNum; i++)
                    {
                        if (comidasRepository.GetComidaByNombre(sheet.GetRow(i).GetCell(0).StringCellValue) == null)
                        {
                            Ciudades ciudad = ciudadesRepository.GetCiudadesByNombre(sheet.GetRow(i).GetCell(3).StringCellValue);

                            if (ciudad == null)
                            {
                                throw new Exception($"No existe una ciudad con el nombre de [ {sheet.GetRow(i).GetCell(3).StringCellValue} ]");
                            }

                            Comidas comidas = new Comidas()
                            {
                                Nombre      = sheet.GetRow(i).GetCell(0).StringCellValue,
                                Descripcion = sheet.GetRow(i).GetCell(2).StringCellValue,
                                IdCiudad    = ciudad.Id
                            };

                            Context.Add(comidas);
                            Context.SaveChanges();

                            webClient.DownloadFile(sheet.GetRow(i).GetCell(1).StringCellValue, $"{ruta}/images/comidas/{comidas.Id}.jpg");
                        }
                        else
                        {
                            throw new Exception($"Ya existe una comida con el nombre de [ {sheet.GetRow(i).GetCell(0).StringCellValue} ]");
                        }
                    }
                    Context.Database.CommitTransaction();
                }
                else
                {
                    workbook.Close();
                    throw new Exception("El archivo de Excel no tiene los datos en el orden correcto [ Nombre,Portada,Descripcion,Ciudad ] (La portada debe ser un link de una imagen JPG)");
                }
                break;

            case 3:
                if (primerRow.GetCell(0).StringCellValue == "Tipo" &&
                    primerRow.GetCell(1).StringCellValue == "Icono")
                {
                    int lastRow = sheet.LastRowNum;
                    TipoAtraccionRepository tipoAtraccionRepository = new TipoAtraccionRepository();

                    Context.Database.BeginTransaction();

                    WebClient webClient = new WebClient();

                    for (int i = 1; i <= sheet.LastRowNum; i++)
                    {
                        if (tipoAtraccionRepository.GetTipoAtraccionByTipo(sheet.GetRow(i).GetCell(0).StringCellValue) == null)
                        {
                            Tipoatraccion tipoatraccion = new Tipoatraccion()
                            {
                                Tipo = sheet.GetRow(i).GetCell(0).StringCellValue
                            };

                            Context.Add(tipoatraccion);
                            Context.SaveChanges();

                            webClient.DownloadFile(sheet.GetRow(i).GetCell(1).StringCellValue, $"{ruta}/images/tipoatraccion/{tipoatraccion.Id}.jpg");
                        }
                        else
                        {
                            throw new Exception($"Ya existe este tipo de atraccion con el nombre de [ {sheet.GetRow(i).GetCell(0).StringCellValue} ]");
                        }
                    }
                    Context.Database.CommitTransaction();
                }
                else
                {
                    workbook.Close();
                    throw new Exception("El archivo de Excel no tiene los datos en el orden correcto [ Tipo,Icono ] (El icono debe ser un link de una imagen JPG)");
                }
                break;

            case 4:
                if (primerRow.GetCell(0).StringCellValue == "Titulo" &&
                    primerRow.GetCell(1).StringCellValue == "Portada" &&
                    primerRow.GetCell(2).StringCellValue == "Contenido" &&
                    primerRow.GetCell(3).StringCellValue == "Ciudad" &&
                    primerRow.GetCell(4).StringCellValue == "Tipo")
                {
                    int lastRow = sheet.LastRowNum;
                    AtraccionesRepository   atraccionesRepository   = new AtraccionesRepository();
                    CiudadesRepository      ciudadesRepository      = new CiudadesRepository();
                    TipoAtraccionRepository tipoAtraccionRepository = new TipoAtraccionRepository();

                    Context.Database.BeginTransaction();

                    WebClient webClient = new WebClient();

                    for (int i = 1; i <= sheet.LastRowNum; i++)
                    {
                        if (atraccionesRepository.GetAtraccionesByTitulo(sheet.GetRow(i).GetCell(0).StringCellValue) == null)
                        {
                            Ciudades ciudad = ciudadesRepository.GetCiudadesByNombre(sheet.GetRow(i).GetCell(3).StringCellValue);

                            if (ciudad == null)
                            {
                                throw new Exception($"No existe una ciudad con el nombre de [ {sheet.GetRow(i).GetCell(3).StringCellValue} ]");
                            }

                            Tipoatraccion tipoatraccion = tipoAtraccionRepository.GetTipoAtraccionByTipo(sheet.GetRow(i).GetCell(4).StringCellValue);

                            if (tipoatraccion == null)
                            {
                                throw new Exception($"No existe un tipo de atraccion con el nombre de [ {sheet.GetRow(i).GetCell(4).StringCellValue} ]");
                            }

                            Atracciones atracciones = new Atracciones()
                            {
                                Titulo    = sheet.GetRow(i).GetCell(0).StringCellValue,
                                Contenido = sheet.GetRow(i).GetCell(2).StringCellValue,
                                IdCiudad  = ciudad.Id,
                                IdTipo    = tipoatraccion.Id
                            };

                            Context.Add(atracciones);
                            Context.SaveChanges();

                            webClient.DownloadFile(sheet.GetRow(i).GetCell(1).StringCellValue, $"{ruta}/images/atracciones/{atracciones.Id}.jpg");
                        }
                        else
                        {
                            throw new Exception($"Ya existe una atraccion con el titulo de [ {sheet.GetRow(i).GetCell(0).StringCellValue} ]");
                        }
                    }
                    Context.Database.CommitTransaction();
                }
                else
                {
                    workbook.Close();
                    throw new Exception("El archivo de Excel no tiene los datos en el orden correcto [ Titulo,Portada,Contenido,Ciudad,Tipo ] (La portada debe ser un link de una imagen JPG)");
                }
                break;

            default:
                throw new Exception("Seleccione un tipo de registro valido");
            }
        }
예제 #18
0
        public ActionResult New()
        {
            var comida = new Comidas();

            return(View("ComidaForm", comida));
        }