Beispiel #1
0
 //METODO LISTAR RESERVAS
 public IEnumerable <ReservaModel> GetReservas()
 {
     try
     {
         using (var context = new BDReservasEntities())
         {
             List <ReservaModel> listReservas = (from i in context.reservas
                                                 select new ReservaModel
             {
                 Fecha = i.fecha.Trim(),
                 H_ini = i.h_ini.Trim(),
                 H_fin = i.h_fin.Trim(),
                 Id_Reserva = i.id_reserva,
                 Id_Pista = i.id_pista,
                 Id_Usuario = i.id_usuario,
                 Id_Estado = i.id_estado,
                 Precio = (decimal)i.precio,
                 Horas = (decimal)i.horas,
             }).ToList <ReservaModel>();
             return(listReservas);
         }
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
        //METODO CAMBIO PASSWORD

/*
 *      //MÉTODO DE LISTADO DE TODOS LOS USUARIOS
 *      public IEnumerable<User> GetUsers()
 *      {
 *          try
 *          {
 *              using (var context = new BDReservasEntities())
 *              {
 *                  List<User> listUsuarios = (from i in context.usuarios
 *                                             select new User
 *                                             {
 *                                                 Nombre = i.nombre.Trim(),
 *                                                 Apellido1 = i.apellido1.Trim(),
 *                                                 Apellido2 = i.apellido2.Trim(),
 *                                                 Id_Usuario = i.id_usuario,
 *                                                 Id_Perfil = (int)i.id_perfil,
 *                                                 Email = i.email.Trim(),
 *                                                 Dni = i.dni.Trim()
 *
 *
 *                                             }).ToList<User>();
 *                  return listUsuarios;
 *              }
 *          }
 *          catch (Exception ex)
 *          {
 *              throw ex;
 *          }
 *
 *      }
 */

        //MÉTODO DE LISTADO DE TODOS LOS USUARIOS
        public IEnumerable <User> GetUsers()
        {
            List <User> listUsuarios = new List <User>();

            try
            {
                using (var context = new BDReservasEntities())
                {
                    listUsuarios = (from V_USUARIOS_PERFILES in context.V_USUARIOS_PERFILES
                                    select new User
                    {
                        Nombre = V_USUARIOS_PERFILES.nombre.Trim(),
                        Apellido1 = V_USUARIOS_PERFILES.apellido1.Trim(),
                        Apellido2 = V_USUARIOS_PERFILES.apellido2.Trim(),
                        Perfil = V_USUARIOS_PERFILES.perfil.Trim(),
                        Id_Usuario = V_USUARIOS_PERFILES.id_usuario,
                        Id_Perfil = (int)V_USUARIOS_PERFILES.id_perfil,
                        Email = V_USUARIOS_PERFILES.email.Trim(),
                        Dni = V_USUARIOS_PERFILES.dni.Trim(),
                        Activo = (bool)V_USUARIOS_PERFILES.activo
                    }).ToList <User>();
                    return(listUsuarios);
                }
            }
            catch (Exception ex)
            {
                listUsuarios.Add(new User()
                {
                    Mensaje = "No se pudo realizar la consulta. Error: " + ex
                });

                return(listUsuarios);
            }
        }
Beispiel #3
0
        //METODO LISTAR TARIFAS
        public IEnumerable <TarifaModel> GetTarifas()
        {
            try
            {
                using (var context = new BDReservasEntities())
                {
                    List <TarifaModel> listaTarifas = (from TARIFAS in context.tarifas
                                                       select new TarifaModel
                    {
                        Tarifa = TARIFAS.tarifa.Trim(),
                        Valor = TARIFAS.valor,
                        Id_tarifa = TARIFAS.id_tarifa
                    }).ToList <TarifaModel>();

                    if (listaTarifas.Count < 1)
                    {
                        listaTarifas.Add(new TarifaModel
                        {
                            Mensaje = "No existen tarifas"
                        });
                    }

                    return(listaTarifas);
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Beispiel #4
0
        //METODO CREAR RESERVA
        public CreateReservaResponse CreateReserva(CreateReservaRequest nuevaReserva)
        {
            try
            {
                using (var context = new BDReservasEntities())
                {
                    ObjectParameter ID_RESERVA = new ObjectParameter("ID_RESERVA", typeof(int));
                    ObjectParameter RETCODE    = new ObjectParameter("RETCODE", typeof(int));
                    ObjectParameter MENSAJE    = new ObjectParameter("MENSAJE", typeof(string));

                    //var cultureInfo = new CultureInfo("es-ES");

                    //CAMBIO DE STRING A FORMATO FECHA

                    /*
                     * var fecha = DateTime.Parse(nuevaReserva.Fecha, cultureInfo);
                     * var h_ini = TimeSpan.ParseExact(nuevaReserva.H_ini, "HH:mm:ss", cultureInfo);
                     * var h_fin = TimeSpan.ParseExact(nuevaReserva.H_fin, "HH:mm:ss", cultureInfo);
                     * var createdAt = DateTime.ParseExact(nuevaReserva.Created_at, "MM/dd/yyyy HH:mm:ss", cultureInfo);
                     * var updatedAt = DateTime.Parse(nuevaReserva.Updated_at, cultureInfo);
                     */

                    context.PA_INSERT_RESERVA(
                        nuevaReserva.Fecha,
                        nuevaReserva.H_ini,
                        nuevaReserva.H_fin,
                        nuevaReserva.Id_Pista,
                        nuevaReserva.Id_Usuario,
                        nuevaReserva.Id_Estado,
                        nuevaReserva.Precio,
                        nuevaReserva.Horas,
                        ID_RESERVA, RETCODE, MENSAJE);

                    if ((int)RETCODE.Value < 0)
                    {
                        throw new Exception("Error no controlado");
                    }

                    if ((int)RETCODE.Value > 0)
                    {
                        throw new Exception(MENSAJE.Value.ToString());
                    }

                    return(new CreateReservaResponse()
                    {
                        Id_Reserva = (int)ID_RESERVA.Value,
                        Mensaje = MENSAJE.Value.ToString(),
                        Retcode = (int)RETCODE.Value
                    });
                }
            }
            catch (Exception ex)
            {
                return(new CreateReservaResponse()
                {
                    Mensaje = ex.Message.Trim(),
                    Retcode = -1
                });
            }
        }
        //METODO CREAR INSTALACION
        public CreateInstResponse CreateInst(CreateInstRequest nuevaInstalacion)
        {
            try
            {
                using (var context = new BDReservasEntities())
                {
                    ObjectParameter ID      = new ObjectParameter("ID", typeof(int));
                    ObjectParameter RETCODE = new ObjectParameter("RETCODE", typeof(int));
                    ObjectParameter MENSAJE = new ObjectParameter("MENSAJE", typeof(string));

                    byte[] imagen = null;

                    if (nuevaInstalacion.Imagen != null)
                    {
                        imagen = new ImageConverter().base64ToByte(nuevaInstalacion.Imagen);
                    }
                    else
                    {
                        nuevaInstalacion.Imagen = null;
                    }

                    context.PA_INSERT_INSTALACION(
                        nuevaInstalacion.Instalacion,
                        nuevaInstalacion.Direccion,
                        nuevaInstalacion.Operativa,
                        nuevaInstalacion.Id_Horario,
                        imagen,
                        ID, RETCODE, MENSAJE);

                    if ((int)RETCODE.Value < 0)
                    {
                        throw new Exception("Error no controlado");
                    }

                    if ((int)RETCODE.Value > 0)
                    {
                        throw new Exception(MENSAJE.Value.ToString());
                    }

                    return(new CreateInstResponse()
                    {
                        Id_Instalacion = (int)ID.Value,
                        Mensaje = MENSAJE.Value.ToString(),
                        Retcode = (int)RETCODE.Value
                    });
                }
            }
            catch (Exception ex)
            {
                return(new CreateInstResponse()
                {
                    Mensaje = ex.Message.Trim(),
                    Retcode = -1
                });
            }
        }
Beispiel #6
0
        //HISTORICO RESERVAS
        //dependiendo del valor de datos.Email se muestran todos las reservas(admin) o
        //solo las del usuario
        public IEnumerable <ReservaPistaModel> HistoricoReservas(HistoricoReservasRequest datos)
        {
            using (var context = new BDReservasEntities())
            {
                List <ReservaPistaModel> listaReservas = null;

                try
                {
                    //PETICION USUARIO
                    if (datos.Email != "todos")
                    {
                        listaReservas = (from i in context.V_RESERVAS_PISTAS
                                         where i.email == datos.Email
                                         where i.estado == datos.Estado
                                         select new ReservaPistaModel
                        {
                            Id_Reserva = i.id_reserva,
                            Instalacion = i.instalacion.Trim(),
                            Pista = i.pista.Trim(),
                            Fecha = i.fecha.Trim(),
                            H_ini = i.h_ini.Trim(),
                            H_fin = i.h_fin.Trim(),
                            Estado = i.estado.Trim()
                        }).ToList <ReservaPistaModel>();

                        return(listaReservas);
                    }
                    else//PETICION ADMIN
                    {
                        listaReservas = (from i in context.V_RESERVAS_PISTAS
                                         select new ReservaPistaModel
                        {
                            Fecha = i.fecha,
                            H_ini = i.h_ini,
                            H_fin = i.h_fin,
                            Id_Reserva = i.id_reserva,
                            Pista = i.pista,
                            Instalacion = i.instalacion,
                            Email = i.email.Trim(),
                            Precio = (decimal)i.precio
                        }).ToList <ReservaPistaModel>();
                        return(listaReservas);
                    }
                }
                catch (Exception)
                {
                    listaReservas.Add(new ReservaPistaModel()
                    {
                        Mensaje = "No se pudo realizar la consulta."
                    });

                    return(listaReservas);
                }
            }
        }
        //MÉTODO REGISTRO USUARIO
        public RegistroResponse Registro(RegistroRequest registro)
        {
            try
            {
                using (var context = new BDReservasEntities())
                {
                    //la imagen del usuario se añadirá desde su perfil, no al registrarse
                    byte[] imagen = (registro.Imagen != "") ? new ImageConverter().base64ToByte(registro.Imagen) : null;
                    //byte[] imagen = null;

                    ObjectParameter RETCODE = new ObjectParameter("RETCODE", typeof(int));
                    ObjectParameter MENSAJE = new ObjectParameter("MENSAJE", typeof(string));

                    context.PA_INSERT_USUARIO(
                        registro.Nombre,
                        registro.Apellido1,
                        registro.Apellido2,
                        registro.Dni,
                        registro.Email,
                        registro.Password,
                        registro.Id_perfil,
                        imagen,
                        RETCODE, MENSAJE);

                    if ((int)RETCODE.Value < 0)
                    {
                        throw new Exception("Error no controlado");
                    }

                    if ((int)RETCODE.Value > 0)
                    {
                        throw new Exception(MENSAJE.Value.ToString());
                    }

                    var consulta = context.usuarios.Where(dni => dni.dni == registro.Dni).FirstOrDefault();

                    return(new RegistroResponse()
                    {
                        Nombre = consulta.nombre.Trim(),
                        Apellido1 = consulta.apellido1.Trim(),
                        Email = consulta.email.Trim(),
                        Retcode = (int)RETCODE.Value,
                        Mensaje = MENSAJE.Value.ToString().Trim()
                    });
                }
            }
            catch (Exception ex)
            {
                return(new RegistroResponse()
                {
                    Mensaje = ex.Message.Trim(),
                    Retcode = -1
                });
            }
        }
        //MÉTODO DE LOGIN
        public LoginResponse Login(LoginRequest login)
        {
            try
            {
                using (var context = new BDReservasEntities())
                {
                    ObjectParameter RETCODE = new ObjectParameter("RETCODE", typeof(int));
                    ObjectParameter ID      = new ObjectParameter("ID", typeof(int));
                    ObjectParameter MENSAJE = new ObjectParameter("MENSAJE", typeof(string));

                    context.PA_LOGIN(login.Email, login.Password, ID, RETCODE, MENSAJE);

                    if ((int)RETCODE.Value < 0)
                    {
                        throw new Exception("Error no controlado");
                    }

                    if ((int)RETCODE.Value > 0)
                    {
                        throw new Exception(MENSAJE.Value.ToString());
                    }

                    var consulta = context.usuarios.Where(user => user.id_usuario == (int)ID.Value).FirstOrDefault();

                    var imagen = "";

                    if (consulta.imagen != null)
                    {
                        imagen = new ImageConverter().byteTobase64(consulta.imagen);
                    }

                    return(new LoginResponse()
                    {
                        Id_Usuario = consulta.id_usuario,
                        Nombre = consulta.nombre.Trim(),
                        Apellido1 = consulta.apellido1.Trim(),
                        Apellido2 = consulta.apellido2.Trim(),
                        Dni = consulta.dni.Trim(),
                        Email = consulta.email.Trim(),
                        Id_Perfil = consulta.id_perfil,
                        Imagen = imagen,
                        Mensaje = MENSAJE.Value.ToString().Trim()
                    });
                }
            }
            catch (Exception ex)
            {
                return(new LoginResponse()
                {
                    Mensaje = ex.Message.Trim(), //mensaje de error
                    Id_Perfil = -1               //no añadirá token
                });
            }
        }
        //MÉTODO DE ACTUALIZAR USUARIO
        public UpdateUserResponse UpdateUser(UpdateUserRequest upUser)
        {
            try
            {
                using (var context = new BDReservasEntities())
                {
                    ObjectParameter RETCODE = new ObjectParameter("RETCODE", typeof(int));
                    ObjectParameter MENSAJE = new ObjectParameter("MENSAJE", typeof(string));

                    byte[] imagen = null;

                    if (upUser.Imagen != null)
                    {
                        imagen = new ImageConverter().base64ToByte(upUser.Imagen);
                    }
                    else
                    {
                        upUser.Imagen = null;
                    }

                    context.PA_MODIFICAR_USUARIO(upUser.Id_Usuario, upUser.Nombre, upUser.Apellido1, upUser.Apellido2, upUser.Id_Perfil, imagen, RETCODE, MENSAJE);

                    if ((int)RETCODE.Value < 0)
                    {
                        throw new Exception("Error no controlado");
                    }

                    if ((int)RETCODE.Value > 0)
                    {
                        throw new Exception(MENSAJE.Value.ToString());
                    }

                    var consulta = context.usuarios.Where(user => user.id_usuario == upUser.Id_Usuario).FirstOrDefault();

                    return(new UpdateUserResponse()
                    {
                        Email = consulta.email.Trim(),
                        Mensaje = MENSAJE.Value.ToString(),
                        Retcode = (int)RETCODE.Value
                    });
                }
            }
            catch (Exception ex)
            {
                return(new UpdateUserResponse()
                {
                    Mensaje = ex.Message,
                    Retcode = -1
                });
            }
        }
        //METODO ACTUALIZAR INSTALACION
        public UpdateInstResponse UpdateInst(UpdateInstRequest upInst)
        {
            try
            {
                using (var context = new BDReservasEntities())
                {
                    ObjectParameter RETCODE = new ObjectParameter("RETCODE", typeof(int));
                    ObjectParameter MENSAJE = new ObjectParameter("MENSAJE", typeof(string));

                    byte[] imagen = null;

                    if (upInst.Imagen != null)
                    {
                        imagen = new ImageConverter().base64ToByte(upInst.Imagen);
                    }
                    else
                    {
                        upInst.Imagen = null;
                    }


                    context.PA_MODIFICAR_INSTALACION(upInst.Id_instalacion, upInst.Instalacion, upInst.Direccion, upInst.Operativa, upInst.Id_horario, imagen, RETCODE, MENSAJE);

                    if ((int)RETCODE.Value < 0)
                    {
                        throw new Exception("Error no controlado");
                    }

                    if ((int)RETCODE.Value > 0)
                    {
                        throw new Exception(MENSAJE.Value.ToString());
                    }

                    var consulta = context.instalaciones.Where(instalacion => instalacion.id_instalacion == upInst.Id_instalacion).FirstOrDefault();

                    return(new UpdateInstResponse()
                    {
                        Nombre = consulta.nombre,
                        Retcode = (int)RETCODE.Value,
                        Mensaje = MENSAJE.Value.ToString()
                    });
                }
            }
            catch (Exception ex)
            {
                return(new UpdateInstResponse()
                {
                    Mensaje = ex.Message
                });
            }
        }
Beispiel #11
0
        //METODO UPDATE RESERVA
        public UpdateReservaResponse UpdateReserva(UpdateReservaRequest upReserva)
        {
            try
            {
                using (var context = new BDReservasEntities())
                {
                    ObjectParameter RETCODE = new ObjectParameter("RETCODE", typeof(int));
                    ObjectParameter MENSAJE = new ObjectParameter("MENSAJE", typeof(string));


                    context.PA_MODIFICAR_RESERVA(
                        upReserva.Id_reserva,
                        upReserva.Fecha,
                        upReserva.H_ini,
                        upReserva.H_fin,
                        upReserva.Id_estado,
                        upReserva.Precio,
                        upReserva.Horas,
                        RETCODE, MENSAJE);

                    if ((int)RETCODE.Value < 0)
                    {
                        throw new Exception("Error no controlado");
                    }

                    if ((int)RETCODE.Value > 0)
                    {
                        throw new Exception(MENSAJE.Value.ToString());
                    }


                    return(new UpdateReservaResponse()
                    {
                        Retcode = (int)RETCODE.Value,
                        Mensaje = MENSAJE.Value.ToString()
                    });
                }
            }
            catch (Exception ex)
            {
                return(new UpdateReservaResponse()
                {
                    Mensaje = ex.Message,
                    Retcode = -1
                });
            }
        }
        //METODO LISTAR PISTAS
        public IEnumerable <PistaModel> GetPistas()
        {
            List <PistaModel> listaPistas = null;

            try
            {
                using (var context = new BDReservasEntities())
                {
                    listaPistas = (from i in context.V_INSTALACIONES_HORARIOS
                                   where i.id_actividad != 23
                                   select new PistaModel
                    {
                        Instalacion = i.instalacion.Trim(),
                        Horario = i.horario,
                        Nombre = i.pista.Trim(),
                        Actividad = i.actividad.Trim(),
                        Tipo_pista = i.tipo_pista.Trim(),
                        Precio_hora = i.precio_hora,
                        Id_actividad = i.id_actividad,
                        Id_instalacion = i.id_instalacion,
                        Id_pista = i.id_pista,
                        Id_tarifa = i.id_tarifa,
                        Tarifa = i.tarifa,
                        Operativa = (bool)i.pista_operativa
                    }).Distinct().ToList();

                    if (listaPistas.Count < 1)
                    {
                        listaPistas.Add(new PistaModel
                        {
                            Mensaje = "No existen instalaciones"
                        });
                    }

                    return(listaPistas);
                }
            }
            catch (Exception ex)
            {
                listaPistas.Add(new PistaModel
                {
                    Mensaje = "No se pudo realizar la consulta -- " + ex.Message
                });

                return(listaPistas);
            }
        }
        //METODO LISTAR INSTALACIONES
        public IEnumerable <InstModel> GetInsts()
        {
            try
            {
                using (var context = new BDReservasEntities())
                {
                    List <InstModel> listaInstalaciones = (from i in context.instalaciones
                                                           select new InstModel
                    {
                        Nombre = i.nombre.Trim(),
                        Id_instalacion = i.id_instalacion,
                        Id_horario = i.id_horario,
                        Direccion = i.direccion.Trim(),
                        Imgtmp = i.imagen,
                        Operativa = i.operativa
                    }).ToList <InstModel>();

                    if (listaInstalaciones.Count < 1)
                    {
                        listaInstalaciones.Add(new InstModel
                        {
                            Mensaje = "No existen instalaciones"
                        });
                    }
                    else
                    {   //parche para convertir cada imagen del array de instalaciones
                        foreach (InstModel instalacion in listaInstalaciones)
                        {
                            instalacion.Imagen = (instalacion.Imgtmp != null) ? new ImageConverter().byteTobase64(instalacion.Imgtmp) : null;
                            instalacion.Imgtmp = null;
                        }
                    }

                    return(listaInstalaciones);
                }
            }
            catch (Exception ex)
            {
                List <InstModel> listaInstalaciones = new List <InstModel>();
                listaInstalaciones.Add(new InstModel {
                    Mensaje = "No existen instalaciones"
                });

                return(listaInstalaciones);
            }
        }
        //METODO CREAR PISTA
        public CreatePistaResponse CreatePista(CreatePistaRequest nuevaPista)
        {
            try
            {
                using (var context = new BDReservasEntities())
                {
                    ObjectParameter RETCODE = new ObjectParameter("RETCODE", typeof(int));
                    ObjectParameter MENSAJE = new ObjectParameter("MENSAJE", typeof(string));



                    context.PA_INSERT_PISTA(
                        nuevaPista.Nombre,
                        nuevaPista.Id_instalacion,
                        nuevaPista.Operativa,
                        nuevaPista.Id_tarifa,
                        nuevaPista.Id_actividad,
                        RETCODE, MENSAJE);

                    if ((int)RETCODE.Value < 0)
                    {
                        throw new Exception("Error no controlado");
                    }

                    if ((int)RETCODE.Value > 0)
                    {
                        throw new Exception(MENSAJE.Value.ToString());
                    }

                    return(new CreatePistaResponse()
                    {
                        Retcode = (int)RETCODE.Value,
                        Mensaje = MENSAJE.Value.ToString()
                    });
                }
            }
            catch (Exception ex)
            {
                return(new CreatePistaResponse()
                {
                    Mensaje = ex.Message.Trim()
                });
            }
        }
Beispiel #15
0
        //METODO CREAR ACTIVIDAD
        public CreateActividadResponse CreateActividad(CreateActividadRequest nuevaActividad)
        {
            try
            {
                using (var context = new BDReservasEntities())
                {
                    ObjectParameter RETCODE = new ObjectParameter("RETCODE", typeof(int));
                    ObjectParameter MENSAJE = new ObjectParameter("MENSAJE", typeof(string));



                    context.PA_INSERT_ACTIVIDAD(
                        nuevaActividad.Actividad,
                        nuevaActividad.Tipo_pista,
                        RETCODE, MENSAJE);

                    if ((int)RETCODE.Value < 0)
                    {
                        throw new Exception("Error no controlado");
                    }

                    if ((int)RETCODE.Value > 0)
                    {
                        throw new Exception(MENSAJE.Value.ToString());
                    }

                    return(new CreateActividadResponse()
                    {
                        Retcode = (int)RETCODE.Value,
                        Mensaje = MENSAJE.Value.ToString()
                    });
                }
            }
            catch (Exception ex)
            {
                return(new CreateActividadResponse()
                {
                    Mensaje = ex.Message.Trim(),
                    Retcode = -1
                });
            }
        }
        //METODO CREAR HORARIO
        public CreateHorarioResponse CreateHorario(CreateHorarioRequest nuevoHorario)
        {
            try
            {
                using (var context = new BDReservasEntities())
                {
                    ObjectParameter RETCODE = new ObjectParameter("RETCODE", typeof(int));
                    ObjectParameter MENSAJE = new ObjectParameter("MENSAJE", typeof(string));



                    context.PA_INSERT_HORARIO(
                        nuevoHorario.Nombre,
                        nuevoHorario.Horario,
                        RETCODE, MENSAJE);

                    if ((int)RETCODE.Value < 0)
                    {
                        throw new Exception("Error no controlado");
                    }

                    if ((int)RETCODE.Value > 0)
                    {
                        throw new Exception(MENSAJE.Value.ToString());
                    }

                    return(new CreateHorarioResponse()
                    {
                        Retcode = (int)RETCODE.Value,
                        Mensaje = MENSAJE.Value.ToString()
                    });
                }
            }
            catch (Exception ex)
            {
                return(new CreateHorarioResponse()
                {
                    Mensaje = ex.Message.Trim(),
                    Retcode = -1
                });
            }
        }
        //METODO CAMBIO CONTRASEÑA
        public ChangePassResponse ChangePass(ChangePassRequest datos)
        {
            try
            {
                using (var context = new BDReservasEntities())
                {
                    ObjectParameter RETCODE = new ObjectParameter("RETCODE", typeof(int));
                    ObjectParameter MENSAJE = new ObjectParameter("MENSAJE", typeof(string));

                    context.PA_CAMBIO_PASSWORD(
                        datos.Id_usuario,
                        datos.Oldpass,
                        datos.Newpass,
                        RETCODE, MENSAJE
                        );

                    if ((int)RETCODE.Value < 0)
                    {
                        throw new Exception("Error no controlado");
                    }

                    if ((int)RETCODE.Value > 0)
                    {
                        throw new Exception(MENSAJE.Value.ToString());
                    }

                    return(new ChangePassResponse()
                    {
                        Retcode = (int)RETCODE.Value,
                        Mensaje = MENSAJE.Value.ToString().Trim()
                    });
                }
            }
            catch (Exception ex)
            {
                return(new ChangePassResponse()
                {
                    Mensaje = ex.Message.Trim(),
                    Retcode = -1
                });
            }
        }
        public IEnumerable <InstModel> GetInstsVista()
        {
            try
            {
                using (var context = new BDReservasEntities())
                {
                    List <InstModel> listaInstalaciones = (from i in context.V_INSTALACIONES_HORARIOS
                                                           select new InstModel
                    {
                        Instalacion = i.instalacion.Trim(),
                        Direccion = i.direccion.Trim(),
                        Horario = i.horario.Trim(),
                        Id_instalacion = i.id_instalacion,
                        Operativa = i.instalación_operativa,
                        Tipo_horario = i.tipo_horario.Trim()
                    }).Distinct().ToList <InstModel>();

                    if (listaInstalaciones.Count < 1)
                    {
                        listaInstalaciones.Add(new InstModel
                        {
                            Mensaje = "No existen instalaciones"
                        });
                    }
                    else
                    {   //parche para convertir cada imagen del array de instalaciones
                        foreach (InstModel instalacion in listaInstalaciones)
                        {
                            instalacion.Imagen = (instalacion.Imgtmp != null) ? new ImageConverter().byteTobase64(instalacion.Imgtmp) : null;
                            instalacion.Imgtmp = null;
                        }
                    }

                    return(listaInstalaciones);
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
        /*
         *     //METODO LISTAR PISTAS
         *     public IEnumerable<PistaModel> GetPistas()
         *     {
         *         List<PistaModel> listaPistas = null;
         *
         *         try
         *         {
         *             using (var context = new BDReservasEntities())
         *             {
         *
         *                 listaPistas = (from i in context.pistas
         *                                select new PistaModel
         *                                {
         *                                    Nombre = i.nombre.Trim(),
         *                                    Id_actividad = (int)i.id_actividad,
         *                                    Id_instalacion = i.id_instalacion,
         *                                    Id_pista = i.id_pista,
         *                                    Id_tarifa = (int)i.id_tarifa,
         *                                    Operativa = (bool)i.operativa
         *
         *                                }).ToList();
         *
         *                 if (listaPistas.Count < 1)
         *                 {
         *                     listaPistas.Add(new PistaModel
         *                     {
         *                         Mensaje = "No existen instalaciones"
         *                     });
         *
         *                 }
         *
         *                 return listaPistas;
         *
         *             }
         *
         *
         *         }
         *         catch (Exception ex)
         *         {
         *             listaPistas.Add(new PistaModel
         *             {
         *                 Mensaje = "No se pudo realizar la consulta -- " + ex.Message
         *             });
         *
         *             return listaPistas;
         *
         *         }
         *     }*/

        //METODO ACTUALIZAR PISTA
        public UpdatePistaResponse UpdatePista(UpdatePistaRequest upPista)
        {
            try
            {
                using (var context = new BDReservasEntities())
                {
                    ObjectParameter RETCODE = new ObjectParameter("RETCODE", typeof(int));
                    ObjectParameter MENSAJE = new ObjectParameter("MENSAJE", typeof(string));


                    context.PA_MODIFICAR_PISTA(upPista.Id_pista, upPista.Nombre, upPista.Id_instalacion, upPista.Operativa, upPista.Id_tarifa, upPista.Id_actividad, RETCODE, MENSAJE);

                    if ((int)RETCODE.Value < 0)
                    {
                        throw new Exception("Error no controlado");
                    }

                    if ((int)RETCODE.Value > 0)
                    {
                        throw new Exception(MENSAJE.Value.ToString());
                    }

                    var consulta = context.pistas.Where(pista => pista.nombre == upPista.Nombre).FirstOrDefault();

                    return(new UpdatePistaResponse()
                    {
                        Nombre = consulta.nombre.Trim(),
                        Retcode = (int)RETCODE.Value,
                        Mensaje = MENSAJE.Value.ToString()
                    });
                }
            }
            catch (Exception ex)
            {
                return(new UpdatePistaResponse()
                {
                    Mensaje = ex.Message
                });
            }
        }
        //MÉTODO DE BORRAR USUARIO
        public DeleteUserResponse DeleteUser(DeleteUserRequest delUser)
        {
            try
            {
                using (var context = new BDReservasEntities())
                {
                    ObjectParameter RETCODE = new ObjectParameter("RETCODE", typeof(int));
                    ObjectParameter MENSAJE = new ObjectParameter("MENSAJE", typeof(string));

                    var consulta = context.usuarios.Where(user => user.id_usuario == delUser.Id_Usuario).FirstOrDefault();

                    context.PA_DELETE_USUARIO(delUser.Id_Usuario, RETCODE, MENSAJE);

                    if ((int)RETCODE.Value < 0)
                    {
                        throw new Exception("Error no controlado");
                    }

                    if ((int)RETCODE.Value > 0)
                    {
                        throw new Exception(MENSAJE.Value.ToString().Trim());
                    }

                    return(new DeleteUserResponse()
                    {
                        Retcode = (int)RETCODE.Value,
                        Mensaje = MENSAJE.Value.ToString().Trim()
                    });
                }
            }
            catch (Exception ex)
            {
                return(new DeleteUserResponse()
                {
                    Retcode = -1,
                    Mensaje = ex.Message
                });
            }
        }
Beispiel #21
0
        //METODO ACTUALIZAR TARIFA
        public UpdateTarifaResponse UpdateTarifa(UpdateTarifaRequest upTarifa)
        {
            try
            {
                using (var context = new BDReservasEntities())
                {
                    ObjectParameter RETCODE = new ObjectParameter("RETCODE", typeof(int));
                    ObjectParameter MENSAJE = new ObjectParameter("MENSAJE", typeof(string));


                    context.PA_MODIFICAR_TARIFA(upTarifa.Id_Tarifa, upTarifa.Tarifa, upTarifa.Valor, RETCODE, MENSAJE);

                    if ((int)RETCODE.Value < 0)
                    {
                        throw new Exception("Error no controlado");
                    }

                    if ((int)RETCODE.Value > 0)
                    {
                        throw new Exception(MENSAJE.Value.ToString());
                    }


                    return(new UpdateTarifaResponse()
                    {
                        Retcode = (int)RETCODE.Value,
                        Mensaje = MENSAJE.Value.ToString()
                    });
                }
            }
            catch (Exception ex)
            {
                return(new UpdateTarifaResponse()
                {
                    Mensaje = ex.Message
                });
            }
        }
        //MÉTODO DE BORRAR INSTALACION
        public DeleteInstResponse DeleteInst(DeleteInstRequest delInstalacion)
        {
            try
            {
                using (var context = new BDReservasEntities())
                {
                    ObjectParameter RETCODE = new ObjectParameter("RETCODE", typeof(int));
                    ObjectParameter MENSAJE = new ObjectParameter("MENSAJE", typeof(string));

                    context.PA_DELETE_INSTALACION(delInstalacion.Id_Instalacion, RETCODE, MENSAJE);

                    if ((int)RETCODE.Value < 0)
                    {
                        throw new Exception("Error no controlado");
                    }

                    if ((int)RETCODE.Value > 0)
                    {
                        throw new Exception(MENSAJE.Value.ToString().Trim());
                    }

                    return(new DeleteInstResponse()
                    {
                        Retcode = (int)RETCODE.Value,
                        Mensaje = MENSAJE.Value.ToString().Trim()
                    });
                }
            }
            catch (Exception ex)
            {
                return(new DeleteInstResponse()
                {
                    Retcode = -1,
                    Mensaje = ex.Message
                });
            }
        }
Beispiel #23
0
        //METODO ACTUALIZAR ACTIVIDAD
        public UpdateActividadResponse UpdateActividad(UpdateActividadRequest upActividad)
        {
            try
            {
                using (var context = new BDReservasEntities())
                {
                    ObjectParameter RETCODE = new ObjectParameter("RETCODE", typeof(int));
                    ObjectParameter MENSAJE = new ObjectParameter("MENSAJE", typeof(string));


                    context.PA_MODIFICAR_ACTIVIDAD(upActividad.Id_actividad, upActividad.Actividad, upActividad.Tipo_pista, RETCODE, MENSAJE);

                    if ((int)RETCODE.Value < 0)
                    {
                        throw new Exception("Error no controlado");
                    }

                    if ((int)RETCODE.Value > 0)
                    {
                        throw new Exception(MENSAJE.Value.ToString());
                    }

                    return(new UpdateActividadResponse()
                    {
                        Retcode = (int)RETCODE.Value,
                        Mensaje = MENSAJE.Value.ToString()
                    });
                }
            }
            catch (Exception ex)
            {
                return(new UpdateActividadResponse()
                {
                    Mensaje = ex.Message
                });
            }
        }
Beispiel #24
0
        //METODO LISTAR ACTIVIDADES
        public IEnumerable <ActividadModel> GetActividades()
        {
            List <ActividadModel> listaActividades = null;

            try
            {
                using (var context = new BDReservasEntities())
                {
                    listaActividades = (from i in context.actividades
                                        select new ActividadModel
                    {
                        Id_actividad = i.id_actividad,
                        Actividad = i.actividad.Trim(),
                        Tipo_pista = i.tipo_pista.Trim(),
                    }).ToList <ActividadModel>();

                    if (listaActividades.Count < 1)
                    {
                        listaActividades.Add(new ActividadModel
                        {
                            Mensaje = "No existen actividades"
                        });
                    }

                    return(listaActividades);
                }
            }
            catch (Exception ex)
            {
                listaActividades.Add(new ActividadModel
                {
                    Mensaje = "No se pudo realizar la consulta -- " + ex.Message
                });

                return(listaActividades);
            }
        }
        //METODO LISTAR HORARIOS
        public IEnumerable <HorarioModel> GetHorarios()
        {
            List <HorarioModel> listaHorarios = null;

            try
            {
                using (var context = new BDReservasEntities())
                {
                    listaHorarios = (from i in context.horarios
                                     select new HorarioModel
                    {
                        Id_horario = i.id_horario,
                        Horario = i.horario.Trim(),
                        Nombre = i.nombre.Trim(),
                    }).ToList();

                    if (listaHorarios.Count < 1)
                    {
                        listaHorarios.Add(new HorarioModel
                        {
                            Mensaje = "No existen actividades"
                        });
                    }

                    return(listaHorarios);
                }
            }
            catch (Exception ex)
            {
                listaHorarios.Add(new HorarioModel
                {
                    Mensaje = "No se pudo realizar la consulta -- " + ex.Message
                });

                return(listaHorarios);
            }
        }
Beispiel #26
0
        //MÉTODO DE BORRAR TARIFA
        public DeleteTarifaResponse DeleteTarifa(DeleteTarifaRequest delTarifa)
        {
            try
            {
                using (var context = new BDReservasEntities())
                {
                    ObjectParameter RETCODE = new ObjectParameter("RETCODE", typeof(int));
                    ObjectParameter MENSAJE = new ObjectParameter("MENSAJE", typeof(string));

                    context.PA_DELETE_TARIFA(delTarifa.Id_tarifa, RETCODE, MENSAJE);

                    if ((int)RETCODE.Value < 0)
                    {
                        throw new Exception("Error no controlado");
                    }

                    if ((int)RETCODE.Value > 0)
                    {
                        throw new Exception(MENSAJE.Value.ToString().Trim());
                    }

                    return(new DeleteTarifaResponse()
                    {
                        Retcode = (int)RETCODE.Value,
                        Mensaje = MENSAJE.Value.ToString().Trim()
                    });
                }
            }
            catch (Exception ex)
            {
                return(new DeleteTarifaResponse()
                {
                    Mensaje = ex.Message,
                    Retcode = -1
                });
            }
        }
        //MÉTODO DE CREAR USUARIO
        public CreateUserResponse CreateUser(CreateUserRequest newUser)
        {
            try
            {
                using (var context = new BDReservasEntities())
                {
                    ObjectParameter RETCODE = new ObjectParameter("RETCODE", typeof(int));
                    ObjectParameter MENSAJE = new ObjectParameter("MENSAJE", typeof(string));

                    byte[] imagen = null;

/*
 *                  if(newUser.Imagen != "")
 *                  {
 *                      imagen = new ImageConverter().base64ToByte(newUser.Imagen);
 *                  }
 */
                    context.PA_INSERT_USUARIO(
                        newUser.Nombre,
                        newUser.Apellido1,
                        newUser.Apellido2,
                        newUser.Dni,
                        newUser.Email,
                        newUser.Password,
                        newUser.Id_Perfil,
                        imagen,
                        RETCODE, MENSAJE);

                    if ((int)RETCODE.Value < 0)
                    {
                        throw new Exception("Error no controlado");
                    }

                    if ((int)RETCODE.Value > 0)
                    {
                        throw new Exception(MENSAJE.Value.ToString());
                    }

                    var consulta = context.V_USUARIOS_PERFILES.Where(dni => dni.dni == newUser.Dni).FirstOrDefault();

                    return(new CreateUserResponse()
                    {
                        Id_Usuario = consulta.id_usuario,
                        Nombre = consulta.nombre.Trim(),
                        Apellido1 = consulta.apellido1.Trim(),
                        Apellido2 = consulta.apellido2.Trim(),
                        Dni = consulta.dni.Trim(),
                        Email = consulta.email.Trim(),
                        Perfil = consulta.perfil.Trim(),
                        Id_Perfil = consulta.id_perfil,
                        Mensaje = MENSAJE.Value.ToString(),
                        Retcode = (int)RETCODE.Value
                    });
                }
            }
            catch (Exception ex)
            {
                return(new CreateUserResponse()
                {
                    Mensaje = ex.Message,
                    Retcode = -1
                });
            }
        }
        //RECUPERAR PISTAS DISPONIBLES PARA RESERVA
        //recibimos deporte y fecha en datos
        //devolvemos array de pistas con las horas libres y reservadas para fecha y deporte recibidos
        public IEnumerable <PistasReservaResponse> pistasParaReserva(PistasReservaRequest datos)
        {
            List <PistasReservaResponse> pistasConReserva = new List <PistasReservaResponse>();
            List <PistasReservaResponse> listaPistas      = null;//lista de pistas disponibles para el deporte
            List <PistasReservaResponse> response         = new List <PistasReservaResponse>();

            try
            {
                //recuperamos listado pistas
                using (var context = new BDReservasEntities())
                {
                    listaPistas = (from i in context.V_INSTALACIONES_HORARIOS
                                   where i.actividad == datos.Actividad
                                   where i.pista_operativa == true
                                   where i.instalación_operativa == true
                                   select new PistasReservaResponse
                    {
                        Pista = i.pista.Trim(),
                        Id_pista = i.id_pista,
                        Horario = i.horario.Trim(),
                        Instalacion = i.instalacion.Trim(),
                        Precio_hora = i.precio_hora,
                        Fecha = datos.Fecha.Trim()
                    }).ToList();

                    //si no se encuentran pistas se devuelve msje informativo
                    if (listaPistas.Count < 1)
                    {
                        pistasConReserva.Add(new PistasReservaResponse()
                        {
                            Mensaje = "No existen pistas disponibles "
                        });
                    }
                    else
                    {
                        //recuperamos horas reservadas/libres para cada pista el dia indicado
                        foreach (var p in listaPistas)
                        {
                            List <PistasReservaResponse> tmp = (from i in context.V_RESERVAS_PISTAS
                                                                where i.pista == p.Pista
                                                                where i.fecha == datos.Fecha
                                                                where i.estado != "cancelada"
                                                                select new PistasReservaResponse
                            {
                                Pista = i.pista.Trim(),
                                Id_pista = i.id_pista,
                                H_ini = i.h_ini.Trim(),
                                H_fin = i.h_fin.Trim(),
                                Horas = (decimal)i.horas,
                                Horario = p.Horario.Trim(),
                                Instalacion = p.Instalacion.Trim(),
                                Precio_hora = p.Precio_hora,
                                Fecha = datos.Fecha,
                            }).ToList();

                            //si no hay reservas para la pista
                            if (tmp.Count < 1)
                            {
                                List <PistasReservaResponse> vacia = new List <PistasReservaResponse> {
                                    p
                                };
                                pistasConReserva.AddRange(vacia);
                            }
                            else
                            {
                                pistasConReserva.AddRange(tmp);
                            }
                        }
                        string[] ph                  = new string[13];
                        string   nomPista            = "";
                        PistasReservaResponse pisres = null;
                        //recorremos las pistas con reserva encontradas
                        for (var x = 0; x <= pistasConReserva.Count(); x++)
                        {
                            if (x != pistasConReserva.Count())
                            {
                                if (pistasConReserva[x].Pista != nomPista)//es pista distinta
                                {
                                    if (pisres != null)
                                    {
                                        pisres.H_ini = null;
                                        pisres.H_fin = null;
                                        pisres.Horas = 0;
                                        response.Add(pisres);//guardamos pista con sus reservas
                                    }
                                    ph       = new string[13];
                                    pisres   = null;
                                    nomPista = pistasConReserva[x].Pista;
                                    pisres   = pistasConReserva[x];

                                    ph = this.checkHorasReserva(pistasConReserva[x], ph);
                                    pisres.LibresReservadas = ph;
                                }
                                else
                                {
                                    ph = this.checkHorasReserva(pistasConReserva[x], ph);
                                    pisres.LibresReservadas = ph;
                                }
                            }
                            else
                            {
                                pisres.H_ini = null;
                                pisres.H_fin = null;
                                pisres.Horas = 0;
                                response.Add(pisres);//guardamos pista con sus reservas
                            }
                        }
                    }

                    return(response);
                }
            }
            catch (Exception ex)
            {
                response.Add(new PistasReservaResponse()
                {
                    Mensaje = "No se pudo realizar la consulta. -- " + ex.Message
                });

                return(pistasConReserva);
            }
        }