示例#1
0
        public static void InsertarActualizarValoracionComplejo(int puntaje, string titulo, string comentario, int codigoComplejo, int codigoUsuarioApp)
        {
            ISession nhSesion = ManejoNHibernate.IniciarSesion();

            try
            {
                Complejo complejo = CatalogoGenerico <Complejo> .RecuperarPorCodigo(codigoComplejo, nhSesion);

                ValoracionComplejo valCom = complejo.ValoracionesComplejo.Where(x => x.UsuarioApp.Codigo == codigoUsuarioApp).SingleOrDefault();

                if (valCom == null)
                {
                    valCom = new ValoracionComplejo();
                    complejo.ValoracionesComplejo.Add(valCom);
                }

                valCom.Comentario = comentario;
                valCom.Puntaje    = puntaje;
                valCom.Titulo     = titulo;
                valCom.FechaHoraValoracionComplejo = DateTime.Now;
                valCom.UsuarioApp = CatalogoGenerico <UsuarioApp> .RecuperarPorCodigo(codigoUsuarioApp, nhSesion);

                CatalogoGenerico <Complejo> .InsertarActualizar(complejo, nhSesion);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                nhSesion.Close();
                nhSesion.Dispose();
            }
        }
示例#2
0
        public static void InsertarActualizarValoracionUsuarioApp(int codigoUsuarioEvaluado, int codigoUsuarioEvaluador, int puntaje, string comentario)
        {
            ISession nhSesion = ManejoNHibernate.IniciarSesion();

            try
            {
                UsuarioApp usuarioEvaluado = CatalogoGenerico <UsuarioApp> .RecuperarPorCodigo(codigoUsuarioEvaluado, nhSesion);

                ValoracionUsuarioApp valoracion = usuarioEvaluado.Valoraciones.Where(x => x.UsuarioAppEvaluador.Codigo == codigoUsuarioEvaluador).SingleOrDefault();

                if (valoracion == null)
                {
                    valoracion = new ValoracionUsuarioApp();
                    valoracion.UsuarioAppEvaluador = CatalogoGenerico <UsuarioApp> .RecuperarPorCodigo(codigoUsuarioEvaluador, nhSesion);
                }

                valoracion.Comentario = comentario;
                valoracion.Puntaje    = puntaje;

                usuarioEvaluado.Valoraciones.Add(valoracion);

                CatalogoGenerico <UsuarioApp> .InsertarActualizar(usuarioEvaluado, nhSesion);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                nhSesion.Close();
                nhSesion.Dispose();
            }
        }
示例#3
0
        public static DataTable RecuperarContraseñaWeb(string mail)
        {
            ISession nhSesion = ManejoNHibernate.IniciarSesion();

            try
            {
                DataTable tablaUsuario = new DataTable();
                tablaUsuario.Columns.Add("codigoUsuario");
                tablaUsuario.Columns.Add("nombre");
                tablaUsuario.Columns.Add("apellido");
                tablaUsuario.Columns.Add("mail");
                tablaUsuario.Columns.Add("contraseña");
                tablaUsuario.Columns.Add("codigoComplejo");
                tablaUsuario.Columns.Add("descripcionComplejo");
                tablaUsuario.Columns.Add("direccionComplejo");
                tablaUsuario.Columns.Add("horaApertura");
                tablaUsuario.Columns.Add("horaCierre");
                tablaUsuario.Columns.Add("mailComplejo");
                tablaUsuario.Columns.Add("telefonoComplejo");
                tablaUsuario.Columns.Add("logoComplejo");

                UsuarioWeb usuario = CatalogoGenerico <UsuarioWeb> .RecuperarPor(x => x.Mail == mail, nhSesion);

                if (usuario != null)
                {
                    Random rnd             = new Random();
                    int    nuevaContraseña = rnd.Next(111111, 999999);
                    usuario.Contraseña = nuevaContraseña.ToString();
                    CatalogoGenerico <UsuarioWeb> .InsertarActualizar(usuario, nhSesion);

                    tablaUsuario.Rows.Add(new object[] { usuario.Codigo, usuario.Nombre, usuario.Apellido, usuario.Mail, usuario.Contraseña, usuario.Complejo.Codigo,
                                                         usuario.Complejo.Descripcion, usuario.Complejo.Direccion, usuario.Complejo.HoraApertura, usuario.Complejo.HoraCierre,
                                                         usuario.Complejo.Mail, usuario.Complejo.Telefono, usuario.Complejo.Logo });
                }

                return(tablaUsuario);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                nhSesion.Close();
                nhSesion.Dispose();
            }
        }
示例#4
0
        public static DataTable RecuperarContraseñaApp(string mail)
        {
            ISession nhSesion = ManejoNHibernate.IniciarSesion();

            try
            {
                DataTable tablaUsuario = new DataTable();
                tablaUsuario.Columns.Add("codigoUsuario", typeof(int));
                tablaUsuario.Columns.Add("nombre", typeof(string));
                tablaUsuario.Columns.Add("apellido", typeof(string));
                tablaUsuario.Columns.Add("mail", typeof(string));
                tablaUsuario.Columns.Add("contraseña", typeof(string));
                tablaUsuario.Columns.Add("telefono", typeof(string));
                tablaUsuario.Columns.Add("codigoPosicion", typeof(int));
                tablaUsuario.Columns.Add("descripcionPosicion", typeof(string));
                tablaUsuario.Columns.Add("codigoTelefono", typeof(string));
                tablaUsuario.Columns.Add("imagen", typeof(string));
                tablaUsuario.Columns.Add("isActivo", typeof(bool));

                UsuarioApp usuario = CatalogoGenerico <UsuarioApp> .RecuperarPor(x => x.Mail == mail, nhSesion);

                if (usuario != null)
                {
                    Random rnd             = new Random();
                    int    nuevaContraseña = rnd.Next(111111, 999999);
                    usuario.Contraseña = nuevaContraseña.ToString();
                    CatalogoGenerico <UsuarioApp> .InsertarActualizar(usuario, nhSesion);

                    tablaUsuario.Rows.Add(new object[] { usuario.Codigo, usuario.Nombre, usuario.Apellido, usuario.Mail, usuario.Contraseña, usuario.Telefono,
                                                         usuario.Posicion.Codigo, usuario.Posicion.Descripcion, usuario.CodigoTelefono, "http://haycancha.sempait.com.ar/Imagenes/" + usuario.Imagen, usuario.IsActivo });
                }

                return(tablaUsuario);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                nhSesion.Close();
                nhSesion.Dispose();
            }
        }
示例#5
0
        public static bool CambiarEstadoDelTurno(int codigoTurno, int estado)
        {
            ISession nhSesion = ManejoNHibernate.IniciarSesion();

            TurnoVariable tv = CatalogoGenerico <TurnoVariable> .RecuperarPor(x => x.Codigo == codigoTurno, nhSesion);

            if (tv != null)
            {
                tv.EstadoTurno = CatalogoGenerico <EstadoTurno> .RecuperarPorCodigo(estado, nhSesion);

                //tv.EstadoTurno.Codigo = Constantes.EstadosTurno.RESERVADO;

                CatalogoGenerico <TurnoVariable> .InsertarActualizar(tv, nhSesion);

                return(true);
            }

            return(false);
        }
示例#6
0
        public static void InsertarActualizarSolicitud(int codigoSolicitud, int codigoTurno, bool isVariable, int codigoUsuarioAppInvitado, int codigoEstadoSolicitud)
        {
            ISession nhSesion = ManejoNHibernate.IniciarSesion();

            try
            {
                Solicitud solicitud;

                if (codigoSolicitud == 0)
                {
                    solicitud = new Solicitud();
                }
                else
                {
                    solicitud = CatalogoGenerico <Solicitud> .RecuperarPorCodigo(codigoSolicitud, nhSesion);
                }

                if (isVariable)
                {
                    solicitud.TurnoVariable = CatalogoGenerico <TurnoVariable> .RecuperarPorCodigo(codigoTurno, nhSesion);
                }
                else
                {
                    solicitud.TurnoFijo = CatalogoGenerico <TurnoFijo> .RecuperarPorCodigo(codigoTurno, nhSesion);
                }

                solicitud.UsuarioAppInvitado = CatalogoGenerico <UsuarioApp> .RecuperarPorCodigo(codigoUsuarioAppInvitado, nhSesion);

                solicitud.EstadoSolicitud = CatalogoGenerico <EstadoSolicitud> .RecuperarPorCodigo(codigoEstadoSolicitud, nhSesion);

                CatalogoGenerico <Solicitud> .InsertarActualizar(solicitud, nhSesion);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                nhSesion.Close();
                nhSesion.Dispose();
            }
        }
示例#7
0
        public static string InsertarActualizarImagenUsuarioApp(int codigoUsuarioApp, string imagenBase64)
        {
            ISession nhSesion = ManejoNHibernate.IniciarSesion();

            try
            {
                System.Drawing.Image imagen = Base64ToImage(imagenBase64);

                Bitmap original      = (Bitmap)imagen;
                int    reducedWidth  = 250;
                int    reducedHeight = 250;

                Bitmap imagenReducida = new Bitmap(reducedWidth, reducedHeight);

                using (var dc = Graphics.FromImage(imagenReducida))
                {
                    // you might want to change properties like
                    dc.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.HighQualityBicubic;
                    dc.DrawImage(original, new Rectangle(0, 0, reducedWidth, reducedHeight), new Rectangle(0, 0, original.Width, original.Height), GraphicsUnit.Pixel);
                }

                string rutaGuardar = AppDomain.CurrentDomain.BaseDirectory + "\\Imagenes\\" + codigoUsuarioApp + ".jpg";

                imagenReducida.Save(rutaGuardar, ImageFormat.Jpeg);

                UsuarioApp usu = CatalogoGenerico <UsuarioApp> .RecuperarPorCodigo(codigoUsuarioApp, nhSesion);

                CatalogoGenerico <UsuarioApp> .InsertarActualizar(usu, nhSesion);

                return("http://haycancha.sempait.com.ar/Imagenes/" + codigoUsuarioApp + ".jpg");
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                nhSesion.Close();
                nhSesion.Dispose();
            }
        }
示例#8
0
        public static void InsertarActualizarUsuarioApp(int codigoUsuario, string nombre, string apellido, string mail, string contraseña, string telefono, int codigoPosicion, string codigoTelefono, bool isActivo)
        {
            ISession nhSesion = ManejoNHibernate.IniciarSesion();

            try
            {
                UsuarioApp usuario;

                if (codigoUsuario == 0)
                {
                    usuario = new UsuarioApp();
                }
                else
                {
                    usuario = CatalogoGenerico <UsuarioApp> .RecuperarPorCodigo(codigoUsuario, nhSesion);
                }

                usuario.Nombre     = nombre;
                usuario.Apellido   = apellido;
                usuario.Mail       = mail;
                usuario.Contraseña = contraseña;
                usuario.Telefono   = telefono;
                usuario.Posicion   = CatalogoGenerico <Posicion> .RecuperarPorCodigo(codigoPosicion, nhSesion);

                usuario.CodigoTelefono = codigoTelefono;
                usuario.IsActivo       = isActivo;

                CatalogoGenerico <UsuarioApp> .InsertarActualizar(usuario, nhSesion);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                nhSesion.Close();
                nhSesion.Dispose();
            }
        }
示例#9
0
        public static void InsertarActualizarComplejo(int codigoComplejo, string descripcion, string direccion, int horaApertura, int horaCierre, string mail, string telefono, double latitud, double longitud)
        {
            ISession nhSesion = ManejoNHibernate.IniciarSesion();

            try
            {
                Complejo complejo;

                if (codigoComplejo == 0)
                {
                    complejo = new Complejo();
                }
                else
                {
                    complejo = CatalogoGenerico <Complejo> .RecuperarPorCodigo(codigoComplejo, nhSesion);
                }

                complejo.Descripcion  = descripcion;
                complejo.Direccion    = direccion;
                complejo.HoraApertura = horaApertura;
                complejo.HoraCierre   = horaCierre;
                complejo.Latitud      = latitud;
                complejo.Longitud     = longitud;
                complejo.Mail         = mail;
                complejo.Telefono     = telefono;

                CatalogoGenerico <Complejo> .InsertarActualizar(complejo, nhSesion);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                nhSesion.Close();
                nhSesion.Dispose();
            }
        }
示例#10
0
        public static void InsertarActualizarCancha(int codigoCancha, int codigoComplejo, string descripcion, double precioMañana, double precioTarde, double precioNoche, int codigoTipoCancha)
        {
            ISession nhSesion = ManejoNHibernate.IniciarSesion();

            try
            {
                Cancha cancha;

                if (codigoCancha == 0)
                {
                    cancha = new Cancha();
                }
                else
                {
                    cancha = CatalogoGenerico <Cancha> .RecuperarPorCodigo(codigoCancha, nhSesion);
                }

                cancha.Complejo = CatalogoGenerico <Complejo> .RecuperarPorCodigo(codigoComplejo, nhSesion);

                cancha.Descripcion = descripcion;
                cancha.TipoCancha  = CatalogoGenerico <TipoCancha> .RecuperarPorCodigo(codigoTipoCancha, nhSesion);

                cancha.PrecioMañana = precioMañana;
                cancha.PrecioTarde  = precioTarde;
                cancha.PrecioNoche  = precioNoche;

                CatalogoGenerico <Cancha> .InsertarActualizar(cancha, nhSesion);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                nhSesion.Close();
                nhSesion.Dispose();
            }
        }
示例#11
0
        public static string InsertarActualizarTurnoVariable(int codigoTurnoVariable, int codigoCancha, DateTime fechaHoraDesde, DateTime fechaHoraHasta, int codigoUsuarioApp, string observaciones, string responsable, double seña)
        {
            ISession nhSesion = ManejoNHibernate.IniciarSesion();

            try
            {
                TurnoVariable turnoAnterior = CatalogoTurnoVariable.RecuperarPorFechaYHoraYCancha(fechaHoraDesde.Date, fechaHoraDesde.Hour, fechaHoraHasta.Hour, codigoCancha, nhSesion);

                if (turnoAnterior == null)
                {
                    TurnoVariable turno;

                    if (codigoTurnoVariable == 0)
                    {
                        turno = new TurnoVariable();
                    }
                    else
                    {
                        turno = CatalogoGenerico <TurnoVariable> .RecuperarPorCodigo(codigoTurnoVariable, nhSesion);
                    }

                    turno.Cancha = CatalogoGenerico <Cancha> .RecuperarPorCodigo(codigoCancha, nhSesion);

                    bool horaValida = ValidarHorario(turno.Cancha.Complejo, fechaHoraDesde.Hour, fechaHoraHasta.Hour);

                    if (horaValida)
                    {
                        turno.FechaHoraDesde = fechaHoraDesde;
                        turno.FechaHoraHasta = fechaHoraHasta;
                        turno.Observaciones  = observaciones;
                        turno.Responsable    = responsable;
                        turno.Seña           = seña;
                        turno.UsuarioApp     = CatalogoGenerico <UsuarioApp> .RecuperarPorCodigo(codigoUsuarioApp, nhSesion);

                        turno.EstadoTurno = CatalogoGenerico <EstadoTurno> .RecuperarPorCodigo(Constantes.EstadosTurno.PENDIENTE, nhSesion);

                        turno.UsuarioWeb = null;

                        CatalogoGenerico <TurnoVariable> .InsertarActualizar(turno, nhSesion);

                        return("ok");
                    }
                    else
                    {
                        return("HorarioInvalido");
                    }
                }
                else
                {
                    return("HorarioOcupado");
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                nhSesion.Close();
                nhSesion.Dispose();
            }
        }
示例#12
0
        public static string InsertarActualizarUsuarioWeb(int codigoUsuario, string nombre, string apellido, string mail, string contraseña)
        {
            ISession nhSesion = ManejoNHibernate.IniciarSesion();

            try
            {
                UsuarioWeb usuarioMailRepetido = CatalogoGenerico <UsuarioWeb> .RecuperarPor(x => x.Mail == mail && x.Codigo != codigoUsuario, nhSesion);

                if (usuarioMailRepetido == null)
                {
                    UsuarioWeb usuario;

                    if (codigoUsuario == 0)
                    {
                        usuario = new UsuarioWeb();

                        Complejo complejo = new Complejo();

                        complejo.Descripcion  = "";
                        complejo.Direccion    = "";
                        complejo.HoraApertura = 0;
                        complejo.HoraCierre   = 0;
                        complejo.Mail         = "";
                        complejo.Telefono     = "";
                        complejo.Latitud      = 0.0;
                        complejo.Longitud     = 0.0;

                        usuario.Complejo = complejo;
                    }
                    else
                    {
                        usuario = CatalogoGenerico <UsuarioWeb> .RecuperarPorCodigo(codigoUsuario, nhSesion);
                    }

                    usuario.Nombre     = nombre;
                    usuario.Apellido   = apellido;
                    usuario.Mail       = mail;
                    usuario.Contraseña = contraseña;

                    CatalogoGenerico <UsuarioWeb> .InsertarActualizar(usuario, nhSesion);

                    if (codigoUsuario == 0)
                    {
                        //inserto la foto del complejo
                        DataTable dtUsuarioWebActual = RecuperarUsuarioWeb(mail, contraseña);
                        Complejo  complejoActual     = CatalogoGenerico <Complejo> .RecuperarPorCodigo(Convert.ToInt32(dtUsuarioWebActual.Rows[0]["codigoComplejo"]), nhSesion);

                        CatalogoGenerico <Complejo> .InsertarActualizar(complejoActual, nhSesion);
                    }
                    return("ok");
                }
                else
                {
                    return("mailRepetido");
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                nhSesion.Close();
                nhSesion.Dispose();
            }
        }