예제 #1
0
        public ActionResult Delete(int id, EventoEN evento)
        {
            if (Session["usuario"] == null)
            {
                return(RedirectToAction("Login", "Sesion"));
            }
            if (Session["esAdmin"].ToString() == "false")
            {
                return(View("../NoAdministrador"));
            }
            if (Session["modoAdmin"].ToString() == "false")
            {
                Session["modoAdmin"] = "true";
            }

            try{
                EventoCP eventoCP = new EventoCP();
                eventoCP.Destroy(id);

                if (TempData.ContainsKey("eventoeditado"))
                {
                    TempData.Remove("eventoeditado");
                }

                TempData["bien"] = "Se a borrado correctamente el evento " + evento.Nombre;
                return(RedirectToAction("Index"));
            }
            catch
            {
                TempData["mal"] = "Ocurrio un problema al intentar borrar la el evento";
                return(RedirectToAction("Index"));
            }
        }
예제 #2
0
        public ActionResult Delete(Evento ev)
        {
            try
            {
                EventoCP cp = new EventoCP();
                cp.BorrarEvento(ev.id);


                return(RedirectToAction("List"));
            }
            catch
            {
                return(View());
            }
        }
예제 #3
0
        //cambio
        //public ActionResult Create(EventoEN evento)
        public ActionResult Create(Evento evento)

        {
            try
            {
                // TODO: Add insert logic here
                EventoCP        cen = new EventoCP();
                EventoGratisCEN gra = new EventoGratisCEN();
                EventoPagoCEN   pag = new EventoPagoCEN();

                cen.CrearEvento(evento.Lugar, evento.Fecha, evento.Tipo, evento.Descripcion, evento.Nombre, evento.Genero);


                return(RedirectToAction("Index"));
            }
            catch
            {
                return(View());
            }
        }
예제 #4
0
        public ActionResult Create(Evento ev)
        {
            try
            {
                UsuarioCAD cad  = new UsuarioCAD();
                EventoCP   cp   = new EventoCP();
                EventoEN   even = new EventoEN();
                even.Descripcion = ev.Descripcion;
                even.Fecha       = ev.Fecha;
                even.Precio      = ev.Precio;
                even.Titulo      = ev.Titulo;
                even.Usuario     = cad.FiltrarUsuarioPorNombre(User.Identity.Name);
                cp.CrearEvento(even, ev.Latitud, ev.Longitud, ev.Zoom);

                return(RedirectToAction("List"));
            }
            catch
            {
                return(View());
            }
        }
예제 #5
0
        public static void InitializeData()
        {
            /*PROTECTED REGION ID(initializeDataMethod) ENABLED START*/
            try
            {
                // Insert the initilizations of entities using the CEN classes
                UsuarioCAD usu    = new UsuarioCAD();
                UsuarioCEN usucen = new UsuarioCEN(usu);
                UsuarioEN  usuen  = new UsuarioEN();
                UsuarioCP  usucp  = new UsuarioCP();

                UsuarioCAD usu2    = new UsuarioCAD();
                UsuarioCEN usucen2 = new UsuarioCEN(usu2);
                UsuarioEN  usuen2  = new UsuarioEN();
                UsuarioCP  usucp2  = new UsuarioCP();

                AdminCAD adm    = new AdminCAD();
                AdminCEN admcen = new AdminCEN(adm);
                AdminEN  admen  = new AdminEN();
                AdminCP  admcp  = new AdminCP();

                EventoCAD eve    = new EventoCAD();
                EventoCEN evecen = new EventoCEN(eve);
                EventoEN  even   = new EventoEN();
                EventoCP  evecp  = new EventoCP();

                RetoCAD ret    = new RetoCAD();
                RetoCEN retcen = new RetoCEN(ret);
                RetoEN  reten  = new RetoEN();
                RetoCP  retcp  = new RetoCP();

                ReporteCAD rep    = new ReporteCAD();
                ReporteCEN repcen = new ReporteCEN(rep);
                ReporteEN  repen  = new ReporteEN();
                ReporteCP  repcp  = new ReporteCP();

                MapaCAD map    = new MapaCAD();
                MapaCEN mapcen = new MapaCEN(map);
                MapaEN  mapen  = new MapaEN();
                MapaCP  mapcp  = new MapaCP();

                MapaCAD map2    = new MapaCAD();
                MapaCEN mapcen2 = new MapaCEN(map);
                MapaEN  mapen2  = new MapaEN();
                MapaCP  mapcp2  = new MapaCP();

                MapaCAD map3    = new MapaCAD();
                MapaCEN mapcen3 = new MapaCEN(map);
                MapaEN  mapen3  = new MapaEN();
                MapaCP  mapcp3  = new MapaCP();

                PuntuacionCAD punt    = new PuntuacionCAD();
                PuntuacionCEN puntcen = new PuntuacionCEN(punt);
                PuntuacionEN  punten  = new PuntuacionEN();
                PuntuacionCP  puntcp  = new PuntuacionCP();

                PuntuacionCAD punt2    = new PuntuacionCAD();
                PuntuacionCEN puntcen2 = new PuntuacionCEN(punt);
                PuntuacionEN  punten2  = new PuntuacionEN();
                PuntuacionCP  puntcp2  = new PuntuacionCP();

                PasoCAD pas    = new PasoCAD();
                PasoCEN pascen = new PasoCEN(pas);
                PasoEN  pasen  = new PasoEN();
                PasoCP  pascp  = new PasoCP();

                ComentarioCAD com    = new ComentarioCAD();
                ComentarioCEN comcen = new ComentarioCEN(com);
                ComentarioEN  comen  = new ComentarioEN();
                ComentarioCP  comcp  = new ComentarioCP();

                ComentarioCAD com2    = new ComentarioCAD();
                ComentarioCEN comcen2 = new ComentarioCEN(com);
                ComentarioEN  comen2  = new ComentarioEN();
                ComentarioCP  comcp2  = new ComentarioCP();

                ComentarioCAD com3    = new ComentarioCAD();
                ComentarioCEN comcen3 = new ComentarioCEN(com);
                ComentarioEN  comen3  = new ComentarioEN();
                ComentarioCP  comcp3  = new ComentarioCP();


                GymkanaCAD gym    = new GymkanaCAD();
                GymkanaCEN gymcen = new GymkanaCEN(gym);
                GymkanaEN  gymen  = new GymkanaEN();
                GymkanaCP  gymcp  = new GymkanaCP();



                //insertamos valores en el usuarioEN
                usuen.Nombre     = "Admin";
                usuen.Edad       = 20;
                usuen.Sexo       = "Hombre";
                usuen.Facebook   = "face";
                usuen.Instagram  = "insta";
                usuen.Twitter    = "twitter";
                usuen.Contrasena = "123456";
                usuen.Email      = "*****@*****.**";
                usuen.Foto       = "si";

                usucen.Registro(usuen);


                //creamos admin
                var aux = usucp.HacerAdmin(usuen.ID, usuen.Nombre);

                /*
                 *
                 *
                 *
                 *
                 *
                 *  //insertamos valores en el usuarioEN
                 *  usuen2.Nombre = "Javier";
                 *  usuen2.Edad = 10;
                 *  usuen2.Sexo = "Hombre";
                 *  usuen2.Facebook = "face";
                 *  usuen2.Instagram = "insta";
                 *  usuen2.Twitter = "twitter";
                 *  usuen2.Contrasena = "123";
                 *  usuen2.Email = "*****@*****.**";
                 *  usuen2.Foto = "si";
                 *
                 *  usucen2.Registro (usuen2);
                 *
                 *
                 *
                 *
                 *  //creamos el evento
                 *  even.Titulo = "quedada para ruta de la tapa";
                 *  even.Descripcion = "la idea es ir un grupo grande de gente de bar en bar";
                 *  even.Usuario = usuen;
                 *  even.Precio = 0;
                 *  even.Fecha = new DateTime (2008, 5, 1, 8, 30, 52);
                 *
                 *  evecp.CrearEvento (even, 27, 28, 8);
                 *
                 *
                 *  //creamos un reto
                 *  reten.Titulo = "no hay huevos a venir a clase desnudo";
                 *  reten.Descripcion = "pues eso, venir a clase y demostrarme tu valentia";
                 *  reten.Precio = 0;
                 *  reten.Imagen = "";
                 *  reten.Tipo = "";
                 *  reten.Usuario = usuen;
                 *
                 *  retcen.CrearReto (reten);
                 *
                 *
                 *  //creamos gymkana
                 *  gymen.Titulo = "quedada para ruta de la tapa";
                 *  gymen.Descripcion = "la idea es ir un grupo grande de gente de bar en bar";
                 *  gymen.Usuario = usuen;
                 *  gymen.Precio = 0;
                 *  gymen.Fecha = new DateTime (2008, 5, 1, 8, 30, 52);
                 *  gymen.NumPasos = 5;
                 *
                 *  gymcp.CrearGymkana (gymen, 27, 29, 8);
                 *
                 *
                 *  //creamos los comentarios
                 *
                 *  var id_comen = comcp.CrearComentarioParaReto (reten.ID, "pos ta wapo el reto", usuen.ID);
                 *  //   var aux = com.GetAll(0, -1);
                 *  var id_comen2 = comcp2.CrearComentarioParaEvento (even.ID, "pos ta wapo el evento", usuen2.ID);
                 *
                 *
                 *  //creamos una puntuacion
                 *  var id_punt = puntcp.CrearPuntuacionParaEvento (even.ID, 5, usuen.ID);
                 *  var id_punt2 = puntcp2.CrearPuntuacionParaReto (reten.ID, 10, usuen.ID);
                 *
                 *
                 *  //creamos un reporte
                 *  var id_repor = repcp.ReportarEvento (usuen.ID, even.ID, "porque si");
                 *  var id_repor2 = repcp.ReportarReto (usuen.ID, reten.ID, "porque no");
                 *
                 *
                 *  //creamos el mapa de un paso
                 *  mapen3.Latitud = 39.5;
                 *  mapen3.Longitud = -1.5;
                 *  mapen3.Zoom = 16;
                 *
                 *  //creamos paso
                 *  pasen.Descripcion = "paso hola";
                 *  pasen.Gymkana = gymen;
                 *  pasen.Mapa = mapen3;
                 *  gymcp.AnadirPaso (pasen, mapen3, gymen);
                 *
                 *
                 *
                 *
                 *  var debugPoint = usucen.GetAll (0, 0);
                 *  var debugPoint2 = comcen.GetAll (0, 0);
                 *  var debugPoint3 = comcen2.GetAll (0, 0);
                 *  var debugPoint4 = evecen.GetAll (0, 0);
                 *  var debugPoint5 = gymcen.GetAll (0, 0);
                 *  var debugPoint6 = mapcen.GetAll (0, 0);
                 *  var debugPoint7 = pascen.GetAll (0, 0);
                 *  var debugPoint8 = puntcen.GetID (punten.Id);
                 *  var debugPoint9 = puntcen2.GetID (punten2.Id);
                 *  var debugPoint10 = retcen.GetAll (0, 0);
                 *  var debugPoint11 = admcen.GetAll (0, 0);
                 *
                 *  ///////////////////////CUSTOM//////////////////////
                 *
                 *  //USUARIO
                 *  var debugPoint15 = usucen.RecuperarContasena (usuen.Email, usuen.Nombre);
                 *
                 *  //EVENTO
                 *  evecen.VerEvento (even.ID);
                 *  var debugPoint16 = evecen.GetID (even.ID);
                 *
                 *  //PASO
                 *  var debugPoint12 = pascen.GetAll (0, 0);
                 *  for (int i = 0; i < debugPoint12.Count; i++) {
                 *          pascen.VerPaso (i);
                 *  }
                 *  pascen.VerPasos (gymen.ID);
                 *
                 *
                 *  //GYMKANA.
                 *  var debugPoint13 = gymcen.VerPasos (gymen.ID);
                 *
                 *  //PUNTUACIONES
                 *  var aux = puntcen.VerMediaEvento (even.ID);
                 *  var aux2 = puntcen.VerMediaReto (reten.ID);
                 *  //var aux3 = puntcen.FiltrarPuntuacionPorEventoYUsuario (usuen.ID, even.ID);
                 *  //var aux4 = puntcen.FiltrarPuntuacionPorUsuarioYReto (usuen.ID, reten.ID);
                 *
                 *  //REPORTE
                 *  repcen.ConsultarReporte (usuen.ID, reten.ID, -1);
                 *
                 *  repcen.ConsultarReporte (usuen.ID, -1, even.ID);
                 *
                 *
                 *  //////////////////////MODIFY//////////////////////
                 *  //Usuario
                 *  usucen.CambiarContrasena (usuen.ID, "456");
                 *  debugPoint = usucen.GetAll (0, 0);
                 *  usucen.CambiarCorreo (usuen.ID, "*****@*****.**");
                 *  debugPoint = usucen.GetAll (0, 0);
                 *  usucen.CambiarFoto (usuen.ID, "Foto2");
                 *  debugPoint = usucen.GetAll (0, 0);
                 *  usucen.ModificarRedesSociales ("insta2", "face2", "twitter2", usuen.ID);
                 *  debugPoint = usucen.GetAll (0, 0);
                 *
                 *  //COMENTARIO
                 *  comcen.ModificarComentario ("MOTIVO NUEVO", id_comen);
                 *  debugPoint2 = comcen.GetAll (0, 0);
                 *  comcen2.ModificarComentario ("MOTIVO NUEVO 2", id_comen2);
                 *  debugPoint3 = comcen2.GetAll (0, 0);
                 *
                 *
                 *  //EVENTO
                 *  even.Descripcion = "Nueva descripcion evento";
                 *  evecp.ModificarEvento (mapen, even);
                 *  debugPoint4 = evecen.GetAll (0, 0);
                 *
                 *
                 *  //GYMKANA
                 *  gymen.Descripcion = "Nueva descripcion gymkana";
                 *  gymcp.ModificarGymkana (gymen, mapen);
                 *  debugPoint5 = gymcen.GetAll (0, 0);
                 *
                 *
                 *  //MAPA
                 *  //var mapa = mapcen.FiltrarMapa (40, -1, 10);
                 *  debugPoint6 = mapcen.GetAll (0, 0);
                 *
                 *
                 *  //PASO
                 *  pasen.Descripcion = "Nueva Descripcion Paso";
                 *  pascp.ModificarPaso (pasen, mapen3);
                 *  debugPoint7 = pascen.GetAll (0, 0);
                 *
                 *
                 *  //PUNTUACION
                 *  puntcen.ModificarPuntuacion (521552, id_punt);
                 *  debugPoint8 = puntcen.GetID (id_punt);
                 *
                 *  puntcen2.ModificarPuntuacion (21, id_punt2);
                 *  debugPoint9 = puntcen2.GetID (id_punt2);
                 *
                 *  //RETO
                 *  reten.Descripcion = "NUEVA DESCRIPCION RETO";
                 *  retcen.ModificarReto (reten);
                 *  debugPoint10 = retcen.GetAll (0, 0);
                 *
                 *  ///////////////////////CUSTOM//////////////////////
                 *
                 *  //USUARIO
                 *  //debugPoint15 = usucen.RecuperarContasena (usuen.Email, usuen.Nombre);
                 *
                 *  //EVENTO
                 *  evecen.VerEvento (even.ID);
                 *  debugPoint16 = evecen.GetID (even.ID);
                 *
                 *  //PASO
                 *  debugPoint12 = pascen.GetAll (0, 0);
                 *  for (int i = 0; i < debugPoint12.Count; i++) {
                 *          pascen.VerPaso (i);
                 *  }
                 *  var aux7 = pascen.VerPasos (gymen.ID);
                 *
                 *
                 *  //GYMKANA.
                 *  debugPoint13 = gymcen.VerPasos (gymen.ID);
                 *
                 *  //PUNTUACIONES
                 *  puntcen.VerMediaEvento (even.ID);
                 *  puntcen.VerMediaReto (reten.ID);
                 *  //puntcen.VerVoto (usuen.ID, gymen.ID, -1);
                 *  //puntcen.VerVoto (usuen.ID, -1, reten.ID);
                 *
                 *  //REPORTE
                 *  var ver = repcen.ConsultarReporte (usuen.ID, reten.ID, -1);
                 *  var ver2 = repcen.ConsultarReporte (usuen.ID, -1, even.ID);
                 *
                 *  /////////////////////DESTROY/////////////////////
                 *
                 *  //usucp.BorrarUsuario (usuen.ID);
                 *  var a = usucen.GetAll (0, 0);
                 *  //admcp.BorrarEvento (admen.ID);
                 *  var b = evecen.GetAll (0, 0);
                 *  //   evecp.CrearEvento (even, 50, 30, 10);
                 *  b = evecen.GetAll (0, 0);
                 *  // admcp.BorrarRetos (admen.ID);
                 *  var c = retcen.GetAll (0, 0);
                 *  //retcen.CrearReto (reten);
                 *  c = retcen.GetAll (0, 0);
                 *  var d = retcen.GetAll (0, 0);
                 *  var co = comcen.GetAll (0, 0);
                 *  //admcp.DeshacerAdmin (admen.ID);
                 *  //var u= admcen.GetAll (0, 0);
                 *
                 *
                 *  //    comcen.BorrarComentario (comen.ID);
                 *  var e = comcen.GetAll (0, 0);
                 *
                 *  evecp.BorrarEvento (even.ID);;
                 *  b = evecen.GetAll (0, 0);
                 *
                 *  //pascp.BorrarPaso (pasen.ID);
                 *  var g = pascen.GetAll (0, 0);
                 *
                 *  gymcp.BorrarGymkana (gymen.ID);
                 *  var f = gymcen.GetAll (0, 0);
                 *
                 *  var h = repcen.GetAll (0, 0);
                 *  repcp.BorrarReportesEvento (even.ID);
                 *  h = repcen.GetAll (0, 0);
                 *
                 *  repcp.BorrarReportesReto (reten.ID);
                 *  var y = repcen.GetAll (0, 0);
                 *
                 *  retcp.BorrarReto (repen.ID);
                 *  var k = retcen.GetAll (0, 0);
                 *
                 */

                /*PROTECTED REGION END*/
            }
            catch (Exception ex)
            {
                System.Console.WriteLine(ex.InnerException);
                throw ex;
            }
        }
예제 #6
0
        public ActionResult Edit(int id, EventoEN evento, HttpPostedFileBase file)
        {
            if (Session["usuario"] == null)
            {
                return(RedirectToAction("Login", "Sesion"));
            }
            if (Session["esAdmin"].ToString() == "false")
            {
                return(View("../NoAdministrador"));
            }
            if (Session["modoAdmin"].ToString() == "false")
            {
                Session["modoAdmin"] = "true";
            }

            string fileName = "", path = "";

            if (file != null && file.ContentLength > 0)
            {
                fileName = Path.GetFileName(file.FileName);
                path     = Path.Combine(Server.MapPath("~/Imagenes"), fileName);

                if (!System.IO.File.Exists(path))
                {
                    file.SaveAs(path);
                }
                fileName = "/Imagenes/" + fileName;
            }

            try
            {
                EventoCP  eve       = new EventoCP();
                EventoCEN eventoCEN = new EventoCEN();

                if (evento.Nombre == null || evento.Descripcion == null || evento.FechaInicio == null || evento.FechaFin == null || evento.FechaInicioInscripcion == null || evento.FechaTopeInscripcion == null)
                {
                    ViewData["eventovacio"] = "vacio";
                    return(View());
                }

                //VALIDANDO NOMBRE
                Regex pattern = new Regex("^[A-Za-z0-9 áéíóúñç]{4,30}$");
                if (!pattern.IsMatch(evento.Nombre))
                {
                    ViewData["formatonombreevento"] = "mal";
                    return(View());
                }

                if (evento.Nombre != eventoCEN.ReadOID(id).Nombre&& eventoCEN.ReadNombre(evento.Nombre) != null)
                {
                    ViewData["nombreevento"] = "existe";
                    return(View());
                }

                //VALIDANDO DESCRIPCRION
                pattern = new Regex("^.{5,200}$");
                if (!pattern.IsMatch(evento.Descripcion))
                {
                    ViewData["formatodescripvento"] = "mal";
                    return(View());
                }

                //VALIDANDO FECHAS
                if (evento.FechaInicio > evento.FechaFin)
                {
                    ViewData["FIMayorFF"] = "mal";
                    return(View());
                }
                if (evento.FechaInicioInscripcion > evento.FechaTopeInscripcion)
                {
                    ViewData["FIIMayorFTI"] = "mal";
                    return(View());
                }
                if (evento.FechaInicioInscripcion > evento.FechaFin)
                {
                    ViewData["FIIMayorFF"] = "mal";
                    return(View());
                }
                if (evento.FechaTopeInscripcion > evento.FechaFin)
                {
                    ViewData["FTIMayorFF"] = "mal";
                    return(View());
                }

                if (fileName == "")
                {
                    IList <string> fotos = new List <string>();
                    fotos.Add("/Imagenes/NoFoto.png");
                    eve.Modify(id, evento.Nombre, evento.Descripcion, evento.FechaInicio, evento.FechaFin, evento.FechaInicioInscripcion, evento.FechaTopeInscripcion, fotos);
                }
                else
                {
                    IList <string> fotos = new List <string>();
                    fotos.Add(fileName);
                    eve.Modify(id, evento.Nombre, evento.Descripcion, evento.FechaInicio, evento.FechaFin, evento.FechaInicioInscripcion, evento.FechaTopeInscripcion, fotos);
                }

                ViewData["NombreEvento"]  = evento.Nombre;
                TempData["eventoeditado"] = "si";

                return(RedirectToAction("Details/" + id));
            }
            catch
            {
                return(View());
            }
        }
예제 #7
0
        public static void InitializeData()
        {
            /*PROTECTED REGION ID(initializeDataMethod) ENABLED START*/
            try
            {
                // Insert the initilizations of entities using the CEN classes

                /*USUARIOS*/
                UsuarioCEN usuarioCEN = new UsuarioCEN();
                int        OIDUsuario = usuarioCEN.New_("Judith", "12345", null, "*****@*****.**", "BenhMM");
                usuarioCEN.Modify(OIDUsuario, "Victor", "54321", "*****@*****.**", "Nedyar94", null);
                Console.WriteLine("Login key: " + usuarioCEN.Login(OIDUsuario, "dsfsdfgdsf"));
                //int OIDUsuarioABorrar = usuarioCEN.New_ ("Judith", "12345", null, "*****@*****.**", "BenhasdfasdfMM");
                // en lugar de destroy tiene cambiar rol usuarioCEN.Destroy (OIDUsuarioABorrar);
                usuarioCEN.CambiarRol(OIDUsuario, MultitecUAGenNHibernate.Enumerated.MultitecUA.RolUsuarioEnum.Administrador);
                Console.WriteLine("Administradores: " + usuarioCEN.DameUsuariosPorRol(MultitecUAGenNHibernate.Enumerated.MultitecUA.RolUsuarioEnum.Administrador).Count);
                Console.WriteLine("Usuarios por nick: " + usuarioCEN.ReadNick("Nedyar94"));

                /*CATEGORIAS DE USUARIOS*/
                CategoriaUsuarioCEN categoriaUsuarioCEN = new CategoriaUsuarioCEN();

                List <int> OIDsCategorias = new List <int>();
                int        OIDCategoria   = categoriaUsuarioCEN.New_("Programado");
                categoriaUsuarioCEN.Modify(OIDCategoria, "Programador");
                OIDsCategorias.Add(OIDCategoria);
                OIDCategoria = categoriaUsuarioCEN.New_("Dise�ador");
                OIDsCategorias.Add(OIDCategoria);
                OIDCategoria = categoriaUsuarioCEN.New_("Puto Amo");
                OIDsCategorias.Add(OIDCategoria);

                categoriaUsuarioCEN.Modify(OIDCategoria, "Putisimo Amo");

                //categoriaUsuarioCEN.Destroy (OIDCategoria);

                Console.WriteLine("Categoria Usuario con OID " + OIDCategoria + ": " + categoriaUsuarioCEN.ReadOID(OIDCategoria).Id);
                usuarioCEN.AgregaCategorias(OIDUsuario, OIDsCategorias);

                OIDsCategorias.RemoveAt(2);
                usuarioCEN.EliminaCategorias(OIDUsuario, OIDsCategorias);

                Console.WriteLine("Usuarios por categoria: " + usuarioCEN.DameUsuariosPorCategoria(OIDCategoria).Count);

                Console.WriteLine("Usuarios totales: " + usuarioCEN.ReadAll(0, -1).Count);
                Console.WriteLine("Usuario con OID " + OIDUsuario + ": " + usuarioCEN.ReadOID(OIDUsuario).Id);
                Console.WriteLine("Categorias Usuarios totales: " + categoriaUsuarioCEN.ReadAll(0, -1).Count);
                Console.WriteLine("Categoria Usuario con OID " + OIDCategoria + ": " + categoriaUsuarioCEN.ReadOID(OIDCategoria).Id);

                CategoriaUsuarioCP categoriaUsuarioCP = new CategoriaUsuarioCP();
                categoriaUsuarioCP.Destroy(OIDCategoria);
                Console.WriteLine("Usuario con OID " + OIDUsuario + ": " + usuarioCEN.ReadOID(OIDUsuario).Id);
                Console.WriteLine("Categorias Usuarios totales: " + categoriaUsuarioCEN.ReadAll(0, -1).Count);

                /*PROYECTO*/
                ProyectoCEN proyectoCEN        = new ProyectoCEN();
                int         OIDProyecto        = proyectoCEN.New_("APPANIC", "App que te ayuda en la vida", OIDUsuario, null);
                ProyectoCP  proyectoCP         = new ProyectoCP();
                int         OIDProyectoABorrar = proyectoCEN.New_("APPANICasdasd", "App que te ayuda en la vida", OIDUsuario, null);

                int aux = usuarioCEN.New_("Sergio", "12345", null, "*****@*****.**", "Yupipi93");
                usuarioCEN.CambiarRol(aux, MultitecUAGenNHibernate.Enumerated.MultitecUA.RolUsuarioEnum.MiembroHonor);
                List <int> aaux = new List <int>();
                aaux.Add(aux);
                proyectoCP.AgregaParticipantes(OIDProyecto, aaux);
                proyectoCP.AgregaModeradores(OIDProyecto, aaux);
                proyectoCP.EliminaModeradores(OIDProyecto, aaux);
                aaux [0] = usuarioCEN.New_("Judith", "12345", null, "*****@*****.**", "BenhMM");
                proyectoCP.AgregaParticipantes(OIDProyecto, aaux);
                proyectoCP.EliminaParticipantes(OIDProyecto, aaux);
                proyectoCP.Modify(OIDProyecto, "APPPanic", "App que te ayuda en la vida", null);

                proyectoCEN.CambiarEstado(OIDProyecto, MultitecUAGenNHibernate.Enumerated.MultitecUA.EstadoProyectoEnum.EnDesarrollo);
                Console.WriteLine("Proyectos por estado: " + proyectoCEN.DameProyectosPorEstado(MultitecUAGenNHibernate.Enumerated.MultitecUA.EstadoProyectoEnum.EnDesarrollo).Count);

                Console.WriteLine("Proyectos usuario pertenece: " + proyectoCEN.DameProyectosUsuarioPertenece(OIDUsuario).Count);

                Console.WriteLine("Participantes proyecto: " + usuarioCEN.DameParticipantesProyecto(OIDProyecto).Count);
                Console.WriteLine("Moderadores proyecto: " + usuarioCEN.DameModeradoresProyecto(OIDProyecto).Count);

                Console.WriteLine("Usuarios: " + usuarioCEN.DameUsuariosPorRol(MultitecUAGenNHibernate.Enumerated.MultitecUA.RolUsuarioEnum.Miembro).Count);
                Console.WriteLine("Miembros de honor: " + usuarioCEN.DameUsuariosPorRol(MultitecUAGenNHibernate.Enumerated.MultitecUA.RolUsuarioEnum.MiembroHonor).Count);


                Console.WriteLine("Proyecto con OID " + OIDProyecto + ": " + proyectoCEN.ReadOID(OIDProyecto).Id);



                /*CATEGORIA PROYECTO*/
                CategoriaProyectoCEN categoriaProyectoCEN = new CategoriaProyectoCEN();

                List <int> listaCategoriasProyecto = new List <int>();

                int OIDCategoriaProyecto = categoriaProyectoCEN.New_("Salu");
                categoriaProyectoCEN.Modify(OIDCategoriaProyecto, "Salud");
                listaCategoriasProyecto.Add(OIDCategoriaProyecto);
                OIDCategoriaProyecto = categoriaProyectoCEN.New_("Tecnologico");
                listaCategoriasProyecto.Add(OIDCategoriaProyecto);
                OIDCategoriaProyecto = categoriaProyectoCEN.New_("Puto Amo2");
                listaCategoriasProyecto.Add(OIDCategoriaProyecto);
                proyectoCEN.AgregaCategoriasProyecto(OIDProyecto, listaCategoriasProyecto);

                listaCategoriasProyecto.RemoveAt(2);
                proyectoCEN.EliminaCategoriasProyecto(OIDProyecto, listaCategoriasProyecto);
                Console.WriteLine("Proyectos por categoria: " + proyectoCEN.DameProyectosPorCategoria(OIDCategoriaProyecto).Count);

                proyectoCEN.AgregaCategoriasUsuario(OIDProyecto, OIDsCategorias);
                OIDsCategorias.RemoveAt(0);
                proyectoCEN.EliminaCategoriasUsuario(OIDProyecto, OIDsCategorias);

                Console.WriteLine("Categorias Proyecto totales: " + categoriaProyectoCEN.ReadAll(0, -1).Count);
                Console.WriteLine("Categoria Proyecto con OID " + OIDCategoriaProyecto + ": " + categoriaProyectoCEN.ReadOID(OIDCategoriaProyecto).Id);

                CategoriaProyectoCP categoriaProyectoCP = new CategoriaProyectoCP();
                categoriaProyectoCP.Destroy(OIDCategoriaProyecto);



                /*EVENTOS*/
                EventoCEN eventoCEN = new EventoCEN();
                int       OIDEvento = eventoCEN.New_("Evento1", "El Mas guay", DateTime.Now, DateTime.Now, DateTime.Now, DateTime.Now, null);
                eventoCEN.PublicaEvento(OIDEvento);
                int OIDEventoABorrar = eventoCEN.New_("EventoABorrar", "El Mas guay", DateTime.Now, DateTime.Now, DateTime.Now, DateTime.Now, null);
                eventoCEN.PublicaEvento(OIDEventoABorrar);
                EventoCP eventoCP = new EventoCP();
                eventoCEN.AgregaCategorias(OIDEvento, listaCategoriasProyecto);
                listaCategoriasProyecto.RemoveAt(0);
                eventoCEN.EliminaCategorias(OIDEvento, listaCategoriasProyecto);

                List <int> listaEventos = new List <int>();
                listaEventos.Add(OIDEvento);
                listaEventos.Add(OIDEventoABorrar);

                proyectoCP.AgregaEventos(OIDProyecto, listaEventos);
                Console.WriteLine("Eventos por proyecto: " + eventoCEN.DameEventosPorProyecto(OIDProyecto).Count);

                Console.WriteLine("Proyectos por evento: " + proyectoCEN.DameProyectosPorEvento(OIDEvento).Count);
                eventoCP.Modify(OIDEvento, "Evento", "El Mas guay", DateTime.Now, DateTime.Now, DateTime.Now, DateTime.Now, null);
                //eventoCP.Destroy (OIDEventoABorrar);

                listaEventos.Remove(OIDEventoABorrar);

                proyectoCP.EliminaEventos(OIDProyecto, listaEventos);

                Console.WriteLine("Eventos filtrados: " + eventoCEN.DameEventosFiltrados(-1, DateTime.Parse("01/01/2030"), null).Count);

                Console.WriteLine("Eventos totales: " + eventoCEN.ReadAll(0, -1).Count);
                Console.WriteLine("Evento con OID " + OIDEvento + ": " + eventoCEN.ReadOID(OIDEvento).Id);


                /*SOLICITUD*/

                SolicitudCEN solicitudCEN = new SolicitudCEN();
                int          OIDSolicitud = solicitudCEN.New_(OIDUsuario, OIDProyecto);
                solicitudCEN.Aceptar(OIDSolicitud);
                solicitudCEN.Rechazar(OIDSolicitud);


                int OIDSolicitud2 = solicitudCEN.New_(OIDUsuario, OIDProyecto);
                solicitudCEN.Aceptar(OIDSolicitud2);

                solicitudCEN.New_(OIDUsuario, OIDProyecto);

                //Filtros de SOLICITUD
                Console.WriteLine("DameSolicitudesPorProyectoYEstado: " + solicitudCEN.DameSolicitudesPorProyectoYEstado(OIDProyecto, MultitecUAGenNHibernate.Enumerated.MultitecUA.EstadoSolicitudEnum.Aceptada).Count);
                Console.WriteLine("DameSolicitudesPorUsuarioYEstado: " + solicitudCEN.DameSolicitudesPorUsuarioYEstado(OIDUsuario, MultitecUAGenNHibernate.Enumerated.MultitecUA.EstadoSolicitudEnum.Aceptada).Count);
                Console.WriteLine("DameSolicidudesPorUsuarioYProyecto: " + solicitudCEN.DameSolicidudesPorUsuarioYProyecto(OIDProyecto, OIDUsuario).Count);
                Console.WriteLine("DameSolicitudesPendientesPorProyectoDe: " + solicitudCEN.DameSolicitudesPendientesPorProyectoDeUsuario(OIDProyecto, OIDUsuario).Count);

                solicitudCEN.EnviarSolicitud(OIDSolicitud2);

                solicitudCEN.Destroy(OIDSolicitud);

                Console.WriteLine("Solicitud con OID " + OIDSolicitud2 + ": " + solicitudCEN.ReadOID(OIDSolicitud2).Id);
                Console.WriteLine("Solicitudes totales: " + solicitudCEN.ReadAll(0, -1).Count);


                Console.WriteLine("Proyecto con OID " + OIDProyecto + ": " + proyectoCEN.ReadOID(OIDProyecto).Id);
                proyectoCP.Destroy(OIDProyecto);
                Console.WriteLine("Proyectos totales: " + proyectoCEN.ReadAll(0, -1).Count);



                /*MENSAJES*/
                MensajeCEN mensajeCEN = new MensajeCEN();
                int        OIDMensaje = mensajeCEN.New_("Esto es un mensaje", "Mi primerito mensaje", OIDUsuario, OIDUsuario, null);

                Console.WriteLine("Mensajes por receptor: " + mensajeCEN.DameMensajesPorReceptor(OIDUsuario).Count);

                Console.WriteLine("Mensajes por autor: " + mensajeCEN.DameMensajesPorAutor(OIDUsuario).Count);

                mensajeCEN.CambiarEstado(OIDMensaje, MultitecUAGenNHibernate.Enumerated.MultitecUA.EstadoLecturaEnum.Leido);

                Console.WriteLine("Mensajes por autor filtrados (Archivados) : " + mensajeCEN.DameMensajesPorAutorFiltrados(OIDUsuario, DateTime.Parse("01/01/2030"), DateTime.Parse("01/01/1800"), MultitecUAGenNHibernate.Enumerated.MultitecUA.BandejaMensajeEnum.Archivado).Count);
                Console.WriteLine("Mensajes por receptor filtrados (Archivados) : " + mensajeCEN.DameMensajesPorReceptorFiltrados(OIDUsuario, DateTime.Parse("01/01/2030"), DateTime.Parse("01/01/1800"), MultitecUAGenNHibernate.Enumerated.MultitecUA.BandejaMensajeEnum.Archivado).Count);

                mensajeCEN.CambiarBandejaAutor(OIDMensaje, MultitecUAGenNHibernate.Enumerated.MultitecUA.BandejaMensajeEnum.Archivado);
                mensajeCEN.CambiarBandejaReceptor(OIDMensaje, MultitecUAGenNHibernate.Enumerated.MultitecUA.BandejaMensajeEnum.Archivado);

                Console.WriteLine("Mensajes por autor filtrados (Archivados) : " + mensajeCEN.DameMensajesPorAutorFiltrados(OIDUsuario, DateTime.Parse("01/01/2030"), DateTime.Parse("01/01/1800"), MultitecUAGenNHibernate.Enumerated.MultitecUA.BandejaMensajeEnum.Archivado).Count);
                Console.WriteLine("Mensajes por receptor filtrados (Archivados) : " + mensajeCEN.DameMensajesPorReceptorFiltrados(OIDUsuario, DateTime.Parse("01/01/2030"), DateTime.Parse("01/01/1800"), MultitecUAGenNHibernate.Enumerated.MultitecUA.BandejaMensajeEnum.Archivado).Count);

                mensajeCEN.EnviarMensaje(OIDMensaje);

                Console.WriteLine("Mensajes totales: " + mensajeCEN.ReadAll(0, -1).Count);
                Console.WriteLine("Mensajes con OID " + OIDMensaje + ": " + mensajeCEN.ReadOID(OIDMensaje).Id);

                mensajeCEN.Destroy(OIDMensaje);


                /*SERVICIOS*/
                ServicioCEN servicioCEN = new ServicioCEN();
                int         OIDServicio = servicioCEN.New_("Hosting", "Servicio de alojamiento web", MultitecUAGenNHibernate.Enumerated.MultitecUA.EstadoServicioEnum.Disponible, null);
                servicioCEN.Modify(OIDServicio, "Hosting Ilimitado", "Servicio de alojamiento web sin limites", MultitecUAGenNHibernate.Enumerated.MultitecUA.EstadoServicioEnum.Disponible, null);
                OIDServicio = servicioCEN.New_("Prueba", "Probando el insertar mas servicios para ver si funciona la fecha", MultitecUAGenNHibernate.Enumerated.MultitecUA.EstadoServicioEnum.NoDisponible, null);
                OIDServicio = servicioCEN.New_("Borrar", "Pues... Aqui voy a probar que funcione el destroy", MultitecUAGenNHibernate.Enumerated.MultitecUA.EstadoServicioEnum.Disponible, null);
                servicioCEN.Destroy(OIDServicio);
                OIDServicio = servicioCEN.New_("Borrar2", "Este realmente se va a quedar", MultitecUAGenNHibernate.Enumerated.MultitecUA.EstadoServicioEnum.Disponible, null);
                IList <ServicioEN> listaServicios = servicioCEN.ReadAll(0, -1);
                Console.WriteLine("**** LISTANDO LOS SERVICIOS");
                foreach (ServicioEN elemento in listaServicios)
                {
                    Console.WriteLine(elemento.Nombre + " " + elemento.Estado);
                }
                servicioCEN.CambiarDisponibilidad(OIDServicio, MultitecUAGenNHibernate.Enumerated.MultitecUA.EstadoServicioEnum.NoDisponible);
                listaServicios = servicioCEN.ReadAll(0, -1);
                Console.WriteLine("**** LISTANDO LOS SERVICIOS");
                foreach (ServicioEN elemento in listaServicios)
                {
                    Console.WriteLine(elemento.Nombre + " " + elemento.Estado);
                }
                IList <ServicioEN> listaServiciosNoDispo = servicioCEN.DameServiciosPorEstado(MultitecUAGenNHibernate.Enumerated.MultitecUA.EstadoServicioEnum.NoDisponible);
                Console.WriteLine("********* SERVICIOS NO DISPONIBLES");
                foreach (ServicioEN elemento in listaServiciosNoDispo)
                {
                    Console.WriteLine(elemento.Nombre + " " + elemento.Estado);
                }


                /*RECUERDO*/
                RecuerdoCEN recuerdoCEN = new RecuerdoCEN();
                int         OIDRecuerdo = recuerdoCEN.New_("Recuerdo1", "esto es un recuerdo", OIDEvento, null);
                recuerdoCEN.Modify(OIDRecuerdo, "Recuerdo", "Esto es un recuerdo modificado", null);
                OIDRecuerdo = recuerdoCEN.New_("Recuerdo2", "Este es un segundo recuerdo", OIDEvento, null);
                OIDRecuerdo = recuerdoCEN.New_("Recuerdo3", "Haciendo mas recuerdos", OIDEvento, null);
                OIDRecuerdo = recuerdoCEN.New_("Recuerdo4", "Otro recuerdo", OIDEvento, null);


                IList <RecuerdoEN> listaRecuerdosFiltro = recuerdoCEN.DameRecuerdosPorProyecto(OIDEvento);
                Console.WriteLine("**** FILTRO DE RECUERDOS ******");
                foreach (RecuerdoEN elemento in listaRecuerdosFiltro)
                {
                    Console.WriteLine(elemento.Titulo + ": " + elemento.Cuerpo);
                }

                eventoCP.Destroy(OIDEvento);

                /*NOTICIA*/
                NoticiaCEN noticiaCEN = new NoticiaCEN();
                int        OIDNoticia = noticiaCEN.New_("Noticia 1", "cuerpo", null);
                noticiaCEN.Modify(OIDNoticia, "Noticia 1 Modificada", "Noticion informativo", null);
                OIDNoticia = noticiaCEN.New_("Noticia 2", "cuerpo", null);
                OIDNoticia = noticiaCEN.New_("Noticia 3", "cuerpo", null);
                OIDNoticia = noticiaCEN.New_("Noticia 4", "cuerpo", null);
                OIDNoticia = noticiaCEN.New_("Noticia 5", "cuerpo", null);
                OIDNoticia = noticiaCEN.New_("Noticia 6", "cuerpo", null);
                OIDNoticia = noticiaCEN.New_("Noticia 7", "cuerpo", null);


                foreach (NoticiaEN noticia in noticiaCEN.DameNUltimasNoticias(4))
                {
                    Console.WriteLine(noticia.Titulo + ": " + noticia.Cuerpo);
                }

                Console.WriteLine(noticiaCEN.ReadAll(0, -1).Count);
                noticiaCEN.ReadOID(OIDNoticia);

                noticiaCEN.Destroy(OIDNoticia);



                /*NOTIFICACION USUARIO*/
                NotificacionUsuarioCEN notificacionUsuarioCEN = new NotificacionUsuarioCEN();
                Console.WriteLine("Notificaciones por usuario: " + notificacionUsuarioCEN.DameNotificacionesPorUsuario(OIDUsuario).Count);
                Console.WriteLine("Notificaciones no leidas por usuario: " + notificacionUsuarioCEN.DameNotificacionesNoLeidasPorUsuario(OIDUsuario).Count);
                notificacionUsuarioCEN.LeerNotificacion(notificacionUsuarioCEN.DameNotificacionesPorUsuario(OIDUsuario) [0].Id);
                Console.WriteLine("Notificaciones no leidas por usuario: " + notificacionUsuarioCEN.DameNotificacionesNoLeidasPorUsuario(OIDUsuario).Count);



                Console.WriteLine("Todo ha ido bien");
                /*PROTECTED REGION END*/
            }
            catch (Exception ex)
            {
                System.Console.WriteLine(ex.InnerException);
                throw ex;
            }
        }