Exemple #1
0
 public IActionResult Editar(EspecieViewModel evm)
 {
     try
     {
         EspeciesRepository especierepos = new EspeciesRepository(context);
         ClasesRepository   clasesrepos  = new ClasesRepository(context);
         var original = especierepos.GetById(evm.Especies.Id);
         evm.Clases = clasesrepos.GetAll();
         if (evm.Especies != null)
         {
             original.Especie       = evm.Especies.Especie;
             original.Habitat       = evm.Especies.Habitat;
             original.Peso          = evm.Especies.Peso;
             original.Tamaño        = evm.Especies.Tamaño;
             original.Observaciones = evm.Especies.Observaciones;
             especierepos.Update(original);
             return(RedirectToAction("Index", "Home"));
         }
         else
         {
             return(RedirectToAction("Index", "Home"));
         }
     }
     catch (Exception ex)
     {
         ModelState.AddModelError("", ex.Message);
         ClasesRepository clasesrepos = new ClasesRepository(context);
         evm.Clases = clasesrepos.GetAll();
         return(View(evm));
     }
 }
Exemple #2
0
        public IActionResult Imagen(EspecieViewModel evm)
        {
            try
            {
                if (evm.Archivo == null)
                {
                    ModelState.AddModelError("", "Debe seleccionar la imagen del producto.");
                    return(View(evm));
                }
                else
                {
                    if (evm.Archivo.ContentType != "image/jpeg" || evm.Archivo.Length > 1024 * 1024 * 2)
                    {
                        ModelState.AddModelError("", "Debe seleccionar un archivo jpg de menos de 2MB.");
                        return(View(evm));
                    }
                }
                if (evm.Archivo != null)
                {
                    FileStream fs = new FileStream(Enviroment.WebRootPath + "/especies/" + evm.Especies.Id + ".jpg", FileMode.Create);
                    evm.Archivo.CopyTo(fs);
                    fs.Close();
                }

                return(RedirectToAction("Index", "Home"));
            }
            catch (Exception ex)
            {
                ModelState.AddModelError("", ex.Message);
                return(View(evm));
            }
        }
Exemple #3
0
        public IActionResult Agregar()
        {
            EspecieViewModel vm    = new EspecieViewModel();
            ClasesRepository repos = new ClasesRepository(context);

            vm.Clases = repos.GetAll();
            return(View(vm));
        }
 public async Task <IActionResult> Save([FromBody] EspecieViewModel model)
 {
     try
     {
         return(Ok(await _EspecieService.Insert(_mapper.Map <Especie>(model))));
     }
     catch (Exception e) {
         return(BadRequest(e.Message));
     }
 }
        // GET: Especies/Details/5
        public ActionResult Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Especie especie = db.Especies.Where(e => e.ID == id).Include("Fotos").
                              Include("Genero.Familia.Ordem.Classe.Reino").FirstOrDefault();


            EspecieViewModel especieVM = new EspecieViewModel();

            especieVM.ID             = especie.ID;
            especieVM.Nome           = especie.Nome;
            especieVM.NomeCientifico = especie.NomeCientifico;
            especieVM.Genero         = especie.Genero;
            especieVM.Descricao      = especie.Descricao;
            especieVM.Calendario     = especie.Calendario;
            especieVM.Abundancia     = especie.Abundancia;


            especieVM.Familia = especie.Genero.Familia.Nome;
            especieVM.Ordem   = especie.Genero.Familia.Ordem.Nome;
            especieVM.Classe  = especie.Genero.Familia.Ordem.Classe.Nome;
            especieVM.Reino   = especie.Genero.Familia.Ordem.Classe.Reino.Nome;

            especieVM.listaFotosVM = new List <FotoAtlasViewModel>();
            string str = "~/";

            foreach (var item in especie.Fotos)
            {
                FotoAtlasViewModel fotoVM = new FotoAtlasViewModel();
                fotoVM.ID       = item.ID;
                fotoVM.Aprovado = item.Aprovado;

                fotoVM.Caminho = str + item.Caminho;
                especieVM.listaFotosVM.Add(fotoVM);
            }
            var nextID = db.Especies.OrderBy(i => i.ID)
                         .SkipWhile(i => i.ID != id)
                         .Skip(1)
                         .Select(i => i.ID);

            ViewBag.NextID = nextID;
            if (especie == null)
            {
                return(HttpNotFound());
            }

            return(View(especieVM));
        }
Exemple #6
0
        public async Task <ActionResult> Edit([Bind(Include = "ID,Nombre,Nombre_Esp")] EspecieViewModel especie)
        {
            if (ModelState.IsValid)
            {
                var esp = db.Especie.First(x => x.ID == especie.ID);
                esp.Nombre     = especie.Nombre;
                esp.Nombre_Esp = especie.Nombre_Esp;

                db.Entry(esp).State = EntityState.Modified;
                await db.SaveChangesAsync();

                return(RedirectToAction("Index"));
            }
            return(PartialView(especie));
        }
Exemple #7
0
        public ActionResult Editar(EspecieViewModel viewModel)
        {
            if (ModelState.IsValid)
            {
                var entidade = Mapper.Map <FiltroEspecie>(viewModel);
                _especieNegocio.Atualizar(entidade);

                return(RedirectToAction("Index"));
            }
            else
            {
                ViewBag.Mensagem = "Não foi possível atualizar dados da Especie.";
                return(RedirectToAction("Erro"));
            }
        }
Exemple #8
0
        public async Task <ActionResult> Delete(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Especie especie = await db.Especie.FindAsync(id);

            if (especie == null)
            {
                return(HttpNotFound());
            }
            var esp = new EspecieViewModel(especie);

            return(PartialView(esp));
        }
Exemple #9
0
        public IActionResult Imagen(int id)
        {
            EspeciesRepository especierepos = new EspeciesRepository(context);
            EspecieViewModel   evm          = new EspecieViewModel();

            evm.Especies = especierepos.GetById(id);
            if (System.IO.File.Exists(Enviroment.WebRootPath + $"/especies/{evm.Especies.Id}.jpg"))
            {
                evm.Imagen = evm.Especies.Id + ".jpg";
            }
            else
            {
                evm.Imagen = "nophoto.jpg";
            }
            return(View(evm));
        }
Exemple #10
0
        public IActionResult Editar(int id)
        {
            EspeciesRepository especierepos = new EspeciesRepository(context);
            ClasesRepository   clasesrepos  = new ClasesRepository(context);
            EspecieViewModel   evm          = new EspecieViewModel();

            evm.Especies = especierepos.GetById(id);
            evm.Clases   = clasesrepos.GetAll();
            if (evm.Especies == null)
            {
                return(RedirectToAction("Index", "Home"));
            }
            else
            {
                return(View(evm));
            }
        }
        public async Task <IActionResult> Delete([FromBody] EspecieViewModel model)
        {
            try
            {
                var especie = await _EspecieService.GetSingle(x => x.Id == model.Id, true);

                if (especie == null)
                {
                    return(NotFound());
                }

                return(Ok(await _EspecieService.Delete((long)model.Id)));
            }
            catch (Exception e) {
                return(BadRequest(e.Message));
            }
        }
Exemple #12
0
        public async Task <ActionResult> Create([Bind(Include = "ID,Nombre,Nombre_Esp")] EspecieViewModel especie)
        {
            if (ModelState.IsValid)
            {
                var esp = new Especie()
                {
                    Nombre     = especie.Nombre,
                    Nombre_Esp = especie.Nombre_Esp
                };
                db.Especie.Add(esp);
                await db.SaveChangesAsync();

                return(RedirectToAction("Index"));
            }

            return(View(especie));
        }
Exemple #13
0
        public IHttpActionResult PostNewEspecie(EspecieViewModel especie)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest("Datos invalidos"));
            }

            using (MySqlConnection conexion = ConexionBase.GetDBConnection())
            {
                conexion.Open();
                string          insert = "insert into especies(idEspecie, idFamilia, nombre) values (" + especie.idEspecie + ", " + especie.idFamilia + ", '" + especie.nombre + "' );";
                MySqlCommand    query  = new MySqlCommand(insert, conexion);
                MySqlDataReader myReader;
                myReader = query.ExecuteReader();
                conexion.Close();
                return(Ok());
            }
        }
Exemple #14
0
        public IActionResult Agregar(EspecieViewModel evm)
        {
            try
            {
                EspeciesRepository especierepos = new EspeciesRepository(context);

                especierepos.Insert(evm.Especies);

                return(RedirectToAction("Index", "Home"));
            }
            catch (Exception ex)
            {
                ModelState.AddModelError("", ex.Message);
                ClasesRepository clasesrepos = new ClasesRepository(context);
                evm.Clases = clasesrepos.GetAll();
                return(View(evm));
            }
        }
Exemple #15
0
        // GET: Especies/Details/5
        public async Task <ActionResult> Details(int?id)
        {
            if (Request.IsAjaxRequest())
            {
                if (id == null)
                {
                    return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
                }
                Especie especie = await db.Especie.FindAsync(id);

                if (especie == null)
                {
                    return(HttpNotFound());
                }
                var esp = new EspecieViewModel(especie);
                return(PartialView(esp));
            }
            Response.StatusCode = 500;
            return(PartialView("Error"));
        }
Exemple #16
0
        public ActionResult Adicionar()
        {
            var viewModel = new EspecieViewModel();

            return(View(viewModel));
        }
Exemple #17
0
        // GET: Percursos/Details/5
        //[Authorize(Roles = "Supervisor,Admin")]
        public ActionResult Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }

            Percurso percurso = db.Percursos.Where(p => p.ID == id).
                                Include("POIs").Include("FotoPercursos").Include("PercursoComentarios").Include("Especies").FirstOrDefault();

            PercursosCriados percCriado = db.PercursosCriados.Where(pc => pc.PercursoID == id).FirstOrDefault();

            //PercursosPercorridos percursosPercorridos = db.PercursosPercorridos.Include(p => p.Percurso).Where(ppc => ppc.PercursoID == id).FirstOrDefault();

            PercursoVM percursoVM = new PercursoVM();

            percursoVM.ListaPOIVM          = new List <PoiVM>();
            percursoVM.ListaFotoPercursoVM = new List <FotoPercursoVM>();
            percursoVM.ListaFotoPoiVM      = new List <FotoPoiVM>();
            percursoVM.ListaComentarios    = new List <PercursoComentarioVM>();
            percursoVM.ListaEspeciesVM     = new List <EspecieViewModel>();

            percursoVM.ID          = percurso.ID;
            percursoVM.Nome        = percurso.Nome;
            percursoVM.Descricao   = percurso.Descricao;
            percursoVM.Distancia   = percurso.Distancia;
            percursoVM.Duracao     = percurso.DuracaoAproximada;
            percursoVM.Dificuldade = percurso.Dificuldade;
            percursoVM.Tipologia   = percurso.Tipologia;
            percursoVM.ClientID    = percCriado.IDCliente;
            percursoVM.NomeCliente = percCriado.NomeCliente;
            percursoVM.Latitude    = percurso.GPS_Lat_Inicio;
            percursoVM.Longitude   = percurso.GPS_Long_Inicio;
            percursoVM.Kml         = percurso.KmlPath;

            foreach (var poi in percurso.POIs)
            {
                PoiVM poiVM = new PoiVM();

                poiVM.Nome      = poi.Nome;
                poiVM.Descricao = poi.Descricao;
                poiVM.Latitude  = poi.GPS_Lat;
                poiVM.Longitude = poi.GPS_Long;
                percursoVM.ListaPOIVM.Add(poiVM);

                //FotoPoiVM fotoPoiVM = new FotoPoiVM();
                //fotoPoiVM.Caminho = poi.FotoPoi.Caminho;
                //percursoVM.ListaFotoPoiVM.Add(fotoPoiVM);
            }

            foreach (var foto in percurso.FotoPercursos)
            {
                FotoPercursoVM fotoVM = new FotoPercursoVM();
                fotoVM.ID      = foto.ID;
                fotoVM.GPS_Lat = foto.GPS_Lat;
                fotoVM.GPS_Lng = foto.GPS_Long;
                fotoVM.Caminho = foto.Caminho;
                percursoVM.ListaFotoPercursoVM.Add(fotoVM);
            }

            foreach (var comentario in percurso.PercursoComentarios)
            {
                PercursoComentarioVM percComent = new PercursoComentarioVM();

                percComent.ID            = comentario.ID;
                percComent.Classificacao = comentario.Classificacao;
                percComent.UserName      = comentario.UserName;
                percComent.SomaRating   += comentario.Classificacao;
                //ViewBag.SomaRating = percComent.SomaRating;
                percComent.ContRating++;
                //ViewBag.ContRating = percComent.ContRating;
                percComent.Comentario = comentario.Comentario;
                percComent.DataHora   = comentario.DataHora;
                percursoVM.ListaComentarios.Add(percComent);
            }

            foreach (var espec in percurso.Especies)
            {
                EspecieViewModel especVM = new EspecieViewModel();

                especVM.ID   = espec.ID;
                especVM.Nome = espec.Nome;
                percursoVM.ListaEspeciesVM.Add(especVM);
            }


            var ratings = percursoVM.ListaComentarios;

            if (ratings.Count() > 0)
            {
                var ratingSum = ratings.Sum(d => d.Classificacao);
                ViewBag.SomaRating = ratingSum;
                var ratingCount = ratings.Count();
                ViewBag.ContRating = ratingCount;
                var classTotal = ratingSum / ratingCount;
                percursoVM.Classificacao = classTotal;
            }
            else
            {
                ViewBag.SomaRating = 0;
                ViewBag.ContRating = 0;
            }
            if (percurso == null)
            {
                return(HttpNotFound());
            }

            return(View(percursoVM));
        }