예제 #1
0
        public void ReporteSitio(string motivo, string sitio_nombre)
        {
            SitioCEN sitioCEN = null;
            ReporteCEN reporteCEN = null;

            try
            {
                SessionInitializeTransaction();
                bool marcado = false;
                SitioCAD sitioCAD = new SitioCAD(session);
                ReporteCAD reporteCAD = new ReporteCAD(session);

                sitioCEN = new SitioCEN(sitioCAD);
                reporteCEN = new ReporteCEN(reporteCAD);

                int reporte_id= reporteCEN.CrearReporte(motivo, marcado);
                //arignar sitio ( reporte, sitio)
                ReporteEN reporte = reporteCAD.DevuelveReportePorId(reporte_id);
                reporteCEN.AsignarSitio(reporte_id, sitio_nombre);

                SessionCommit();

            }
            catch (Exception ex)
            {
                SessionRollBack();
                throw ex;
            }
            finally
            {
                SessionClose();
            }
        }
        public System.Collections.Generic.IList<TravelnookGenNHibernate.EN.Travelnook.SitioEN> BuscarSitio(string p_nombre, string p_provincia, int p_puntuacion, TravelnookGenNHibernate.Enumerated.Travelnook.TipoSitioEnum p_tipo, System.Collections.Generic.IList<TravelnookGenNHibernate.Enumerated.Travelnook.TipoActividadesEnum> p_actividades)
        {
            /*PROTECTED REGION ID(TravelnookGenNHibernate.CEN.Travelnook_Sitio_buscarSitio) ENABLED START*/

            SitioCAD sitioCAD = new SitioCAD();
            IList<SitioEN> lista = new List<SitioEN>();
            IList<SitioEN> lista_final = new List<SitioEN>();
            Boolean prim = true;
            String sql = @"FROM SitioEN as sitio where";

            if (p_nombre != null && p_nombre != "")
            {
                if (prim == false) { sql += " AND"; }
                sql += " sitio.Nombre like '%' + :p_nombre + '%'";
                prim = false;
            }

            if (p_provincia != null && p_provincia != "")
            {
                if (prim == false) { sql += " AND"; }
                sql += " sitio.Provincia like '%' + :p_provincia + '%'";
                prim = false;
            }

            if (p_puntuacion > -1)
            {
                if (prim == false) { sql += " AND"; }
                sql += " sitio.PuntuacionMedia = :p_puntuacion";
                prim = false;
            }
            //System.Console.WriteLine("????????????????????" + sql);
            lista = sitioCAD.Filtro_Dinamico(sql, p_nombre, p_provincia, p_puntuacion);

            foreach (SitioEN sit in lista)
            {
                if (sit.TipoSitio == p_tipo)
                {
                    lista_final.Add(sit);
                }
            }
            foreach (SitioEN sit in lista)
            {
                foreach (ActividadEN acti in sit.Actividades)
                {
                    foreach (TravelnookGenNHibernate.Enumerated.Travelnook.TipoActividadesEnum p_acti in p_actividades)
                    {
                        if (acti.Tipo == p_acti)
                        {
                            if (!lista_final.Contains(sit))
                            {
                                lista_final.Add(sit);
                            }
                        }
                    }
                }

            }

            return lista_final;

            /*PROTECTED REGION END*/
        }
예제 #3
0
        public ActionResult SitioPorNombre(Sitio sitio)
        {
            try
            {
                string nameSitio = Request.Form["nombre"];
                SessionInitialize();
                SitioCAD sitCAD = new SitioCAD(session);
                SitioCEN cen = new SitioCEN(sitCAD);

                if (nameSitio != "")
                {
                    SitioEN sitEN = cen.DevuelveSitioPorNombre(nameSitio);
                    Sitio sit = new AssemblerSitio().ConvertENToModelUI(sitEN);
                    return View(sit);
                }
                else
                {
                    IList<SitioEN> lista = cen.DevuelveSitios(0, -1);
                    IList<Sitio> sit = new AssemblerSitio().ConvertListENToModel(lista);
                    return View(lista);
                }
            }
            catch
            {
                return View();
            }
        }
예제 #4
0
        public ActionResult Edit(Sitio sit, IList<HttpPostedFileBase> imagenes, IList<HttpPostedFileBase> videos, string Tipo_formulario)
        {
            try
            {
                 string fileName = "", path = "";
                IList<string> fotografias = new List<string>();
                IList<string> videosSitio = new List<string>();
                SessionInitialize();
                SitioEN sitEN = new SitioCAD(session).DevuelveSitioPorNombre(sit.Nombre);

                //System.IO.Directory.CreateDirectory(Server.MapPath("~/Images/Uploads/" + sit.Nombre)); si se puede cambiar el nombre descomentar
               // System.IO.Directory.CreateDirectory(Server.MapPath("~/Videos/Uploads/" + sit.Nombre));
                SitioCEN cen = new SitioCEN();
                foreach (HttpPostedFileBase aux in imagenes)    //para cada imagen
                {
                    if (aux != null && aux.ContentLength > 0)
                    {
                        // extract only the fielname
                        fileName = Path.GetFileName(aux.FileName);
                        //Directory.CreateDirectory("~/Images/Uploads/" + sit.Nombre);
                        // store the file inside ~/App_Data/uploads folder
                        path = Path.Combine(Server.MapPath("~/Images/Uploads/" + sit.Nombre), fileName);
                        //string pathDef = path.Replace(@"\\", @"\");
                        aux.SaveAs(path);
                        sitEN.Fotos.Add("/Images/Uploads/" + sit.Nombre + "/" + fileName);
                    }
                }
                foreach (HttpPostedFileBase aux2 in videos)    //para cada imagen
                {
                    if (aux2 != null && aux2.ContentLength > 0)
                    {
                        // extract only the fielname
                        fileName = Path.GetFileName(aux2.FileName);
                        //Directory.CreateDirectory("~/Images/Uploads/" + sit.Nombre);
                        // store the file inside ~/App_Data/uploads folder
                        path = Path.Combine(Server.MapPath("~/Videos/Uploads/" + sit.Nombre), fileName);
                        //string pathDef = path.Replace(@"\\", @"\");
                        aux2.SaveAs(path);
                        sitEN.Videos.Add("/Videos/Uploads/" + sit.Nombre + "/" + fileName);
                    }
                }
                SessionClose();
                 TravelnookGenNHibernate.Enumerated.Travelnook.TipoSitioEnum tipoaux= new TravelnookGenNHibernate.Enumerated.Travelnook.TipoSitioEnum();
                tipoaux = (TravelnookGenNHibernate.Enumerated.Travelnook.TipoSitioEnum)Enum.Parse(typeof(TravelnookGenNHibernate.Enumerated.Travelnook.TipoSitioEnum),Tipo_formulario);

                IList<TravelnookGenNHibernate.Enumerated.Travelnook.TipoActividadesEnum> actividadesaux = new List<TravelnookGenNHibernate.Enumerated.Travelnook.TipoActividadesEnum>();

                if (sit.camping == true)
                    actividadesaux.Add((TravelnookGenNHibernate.Enumerated.Travelnook.TipoActividadesEnum)Enum.Parse(typeof(TravelnookGenNHibernate.Enumerated.Travelnook.TipoActividadesEnum), "camping"));
                if (sit.deportes == true)
                    actividadesaux.Add((TravelnookGenNHibernate.Enumerated.Travelnook.TipoActividadesEnum)Enum.Parse(typeof(TravelnookGenNHibernate.Enumerated.Travelnook.TipoActividadesEnum), "deportes"));
                if (sit.deportes_acuaticos == true)
                    actividadesaux.Add((TravelnookGenNHibernate.Enumerated.Travelnook.TipoActividadesEnum)Enum.Parse(typeof(TravelnookGenNHibernate.Enumerated.Travelnook.TipoActividadesEnum), "deportes_acuaticos"));
                if (sit.gastronomia == true)
                    actividadesaux.Add((TravelnookGenNHibernate.Enumerated.Travelnook.TipoActividadesEnum)Enum.Parse(typeof(TravelnookGenNHibernate.Enumerated.Travelnook.TipoActividadesEnum), "gastronomia"));
                if (sit.ludicas == true)
                    actividadesaux.Add((TravelnookGenNHibernate.Enumerated.Travelnook.TipoActividadesEnum)Enum.Parse(typeof(TravelnookGenNHibernate.Enumerated.Travelnook.TipoActividadesEnum), "ludicas"));
                if (sit.ocio_nocturno == true)
                    actividadesaux.Add((TravelnookGenNHibernate.Enumerated.Travelnook.TipoActividadesEnum)Enum.Parse(typeof(TravelnookGenNHibernate.Enumerated.Travelnook.TipoActividadesEnum), "ocio_nocturno"));
                if (sit.senderismo == true)
                    actividadesaux.Add((TravelnookGenNHibernate.Enumerated.Travelnook.TipoActividadesEnum)Enum.Parse(typeof(TravelnookGenNHibernate.Enumerated.Travelnook.TipoActividadesEnum), "senderismo"));
                if (sit.culturales == true)
                    actividadesaux.Add((TravelnookGenNHibernate.Enumerated.Travelnook.TipoActividadesEnum)Enum.Parse(typeof(TravelnookGenNHibernate.Enumerated.Travelnook.TipoActividadesEnum), "culturales"));
               //falta el unrelationer(arriba antes de sesionclose) y volver a relacionar
                cen.ModificarSitio(sit.Nombre, sit.Provincia, sit.Descripcion, sitEN.Puntuacion, sitEN.Fotos, sitEN.Videos, sit.Localizacion, sitEN.FechaCreacion, sitEN.NumPuntuados, sitEN.PuntuacionMedia, tipoaux);

                return RedirectToAction("Details", new { id = sit.Nombre });
            }
            catch
            {
                return View();
            }
        }
예제 #5
0
 //
 // GET: /Sitio/Edit/5
 public ActionResult Edit(string id)
 {
     Sitio sit = null;
     SessionInitialize();
     SitioEN sitEN = new SitioCAD(session).DevuelveSitioPorNombre(id);
     sit = new AssemblerSitio().ConvertENToModelUI(sitEN);
     SessionClose();
     foreach (TravelnookGenNHibernate.Enumerated.Travelnook.TipoActividadesEnum aux in sit.Actividades)
     {
         string nombre = Convert.ToString(aux);
         if (nombre == "camping") sit.camping = true;
         else if (nombre == "deportes") sit.deportes = true;
         else if (nombre == "ocio_nocturno") sit.ocio_nocturno = true;
         else if (nombre == "deportes_acuaticos") sit.deportes_acuaticos = true;
         else if (nombre == "senderismo") sit.senderismo = true;
         else if (nombre == "ludicas") sit.ludicas = true;
         else if (nombre == "culturales") sit.culturales = true;
         else if (nombre == "gastronomia") sit.gastronomia = true;
     }
     string aux3 = sit.Localizacion;
     if (aux3 != "")
     {    //si tiene coordenadas saco las dos
         sit.tieneLocalizacion = 1;
         string sinpar = aux3.Trim(new Char[] { '(', ')' });  //borro los paréntesis
         string[] aux2 = sinpar.Split(',');
         sit.latitud = aux2[0];
         sit.longitud = aux2[1];
     }
     else //si no lo indico
     {
         sit.tieneLocalizacion = 0;
         sit.latitud = "40.268846";
         sit.longitud = "-3.934834";
     }
     return View(sit);
 }
예제 #6
0
        //
        // GET: /Sitio/Details/Guadalest   == Sitio.details(guadalest)
        public ActionResult Details(string id)
        {
            Sitio sit = null;

            IList<SitioEN> favEN = new List<SitioEN>();
            SessionInitialize();
            SitioEN sitEN = new SitioCAD(session).DevuelveSitioPorNombre(id);
            sit = new AssemblerSitio().ConvertENToModelUI(sitEN);
            sit.esfav = 0;
            favEN = new FavoritoCAD(session).DevuelveSitiosFavoritos(User.Identity.Name);
            foreach (SitioEN sitio in favEN)
            {
                if (sitio.Nombre == id)
                    sit.esfav = 1;
            }
            SessionClose();
            string aux = sit.Localizacion;
            if (aux != "") {    //si tiene coordenadas saco las dos
                sit.tieneLocalizacion = 1;
                string sinpar= aux.Trim(new Char[] { '(', ')' });  //borro los paréntesis
                string[] aux2 = sinpar.Split(',');
                sit.latitud = aux2[0];
                sit.longitud = aux2[1];
            }
            else //si no lo indico
            {
                sit.tieneLocalizacion = 0;
                sit.latitud = "40.268846";
                sit.longitud = "-3.934834";
            }

            return View(sit);
        }
예제 #7
0
        //
        // GET: /Sitio/Delete/5
        public ActionResult Delete(string id)
        {
            try
            {
                // TODO: Add delete logic here
                int idCategoria = -1;
                SessionInitialize();
                SitioCAD sitCAD = new SitioCAD(session);
                SitioCEN cen = new SitioCEN(sitCAD);
                SitioEN sitEN = cen.DevuelveSitioPorNombre(id);
                Sitio sit = new AssemblerSitio().ConvertENToModelUI(sitEN);

                SessionClose();

                new SitioCEN().BorrarSitio(id);

                return RedirectToAction("PorCategoria", new { id = idCategoria });
            }
            catch
            {
                return View();
            }
        }