예제 #1
0
 public HttpResponseMessage Eliminar(string id)
 {
     try
     {
         long _id    = Int64.Parse(id);
         var  idioma = contexto.idioma.Find(_id);
         if (idioma == null)
         {
             resp.Codigo  = (int)Codigos.REGISTRO_NO_ENCONTRADO;
             resp.Mensaje = Enum.GetName(typeof(Codigos), (int)Codigos.REGISTRO_NO_ENCONTRADO);
             return(resp.ObjectoRespuesta());
         }
         contexto.idioma_exact.Where(x => x.idioma_id == _id).ToList().ForEach(x => contexto.idioma_exact.Remove(x));
         contexto.idioma.Remove(idioma);
         contexto.SaveChanges();
         resp.Codigo  = (int)Codigos.OK;
         resp.Mensaje = Enum.GetName(typeof(Codigos), (int)Codigos.OK);
         return(resp.ObjectoRespuesta());
     }
     catch (Exception ex)
     {
         resp.Codigo    = (int)Codigos.ERROR_DE_SERVIDOR;
         resp.Mensaje   = Enum.GetName(typeof(Codigos), (int)Codigos.ERROR_DE_SERVIDOR);
         resp.Excepcion = Excepcion.Create(ex);
         return(resp.ObjectoRespuesta());
     }
 }
예제 #2
0
        public HttpResponseMessage Subir(HttpRequestMessage request)
        {
            try
            {
                string filename = String.Empty;
                string fullpath = String.Empty;

                if (request.Content.IsMimeMultipartContent())
                {
                    request.Content.LoadIntoBufferAsync().Wait();
                    MultipartMemoryStreamProvider provider = request.Content.ReadAsMultipartAsync <MultipartMemoryStreamProvider>(new MultipartMemoryStreamProvider()).Result;
                    foreach (HttpContent content in provider.Contents)
                    {
                        Stream stream   = content.ReadAsStreamAsync().Result;
                        Image  image    = Image.FromStream(stream);
                        string filePath = HostingEnvironment.MapPath("~/" + ConfigurationManager.AppSettings["directoriofotos"] + "/");
                        var    guid     = Guid.NewGuid();
                        filename = guid + ".jpg";
                        fullpath = Path.Combine(filePath, filename);
                        image.Save(fullpath);
                    }
                    resp.Codigo    = (int)Codigos.OK;
                    resp.Mensaje   = Enum.GetName(typeof(Codigos), (int)Codigos.OK);
                    resp.Contenido = new FotoInfo()
                    {
                        Nombre = filename,
                        Url    = HttpContext.Current.Request.Url.Scheme + "://" + HttpContext.Current.Request.Url.Host + ":" + HttpContext.Current.Request.Url.Port + "/" + ConfigurationManager.AppSettings["directoriofotos"] + "/" + filename
                    };
                    return(resp.ObjectoRespuesta());
                }
                else
                {
                    resp.Codigo  = (int)Codigos.CONTENT_TYPE_NO_CORRECTO;
                    resp.Mensaje = Enum.GetName(typeof(Codigos), (int)Codigos.CONTENT_TYPE_NO_CORRECTO);
                    return(resp.ObjectoRespuesta());
                }
            }
            catch (Exception ex)
            {
                resp.Codigo    = (int)Codigos.ERROR_DE_SERVIDOR;
                resp.Mensaje   = Enum.GetName(typeof(Codigos), (int)Codigos.ERROR_DE_SERVIDOR);
                resp.Excepcion = Excepcion.Create(ex);
                return(resp.ObjectoRespuesta());
            }
        }
        public HttpResponseMessage Actualizar(proveedor Entidad, ModelStateDictionary modelo)
        {
            DbContextTransaction tran = null;

            try
            {
                if (modelo.IsValid)
                {
                    usuario aux = mgr.FindById(Entidad.usuario.Id);
                    if (aux != null)
                    {
                        contexto.Entry(aux).State             = EntityState.Detached;
                        Entidad.usuario_id                    = Entidad.usuario.Id;
                        contexto.Entry(Entidad).State         = EntityState.Modified;
                        contexto.Entry(Entidad.usuario).State = EntityState.Modified;
                        tran = contexto.Database.BeginTransaction();
                        Entidad.usuario.PasswordHash         = aux.PasswordHash;
                        Entidad.usuario.EmailConfirmed       = aux.EmailConfirmed;
                        Entidad.usuario.SecurityStamp        = aux.SecurityStamp;
                        Entidad.usuario.PhoneNumberConfirmed = aux.PhoneNumberConfirmed;
                        Entidad.usuario.TwoFactorEnabled     = aux.TwoFactorEnabled;
                        Entidad.usuario.LockoutEnabled       = aux.LockoutEnabled;
                        Entidad.usuario.LockoutEndDateUtc    = aux.LockoutEndDateUtc;
                        Entidad.usuario.AccessFailedCount    = aux.AccessFailedCount;
                        IdentityResult result = mgr.Update(Entidad.usuario);
                        if (!result.Succeeded)
                        {
                            if (contexto.Database.CurrentTransaction != null)
                            {
                                tran.Rollback();
                            }

                            resp.Codigo      = (int)Codigos.ERROR_DE_VALIDACION;
                            resp.Mensaje     = Enum.GetName(typeof(Codigos), (int)Codigos.ERROR_DE_VALIDACION);
                            resp.Objetoerror = result.Errors;
                            return(resp.ObjectoRespuesta());
                        }
                        contexto.Entry(Entidad.usuario).State = EntityState.Detached;
                        contexto.SaveChanges();
                        tran.Commit();
                        resp.Codigo  = (int)Codigos.OK;
                        resp.Mensaje = Enum.GetName(typeof(Codigos), (int)Codigos.OK);
                        return(resp.ObjectoRespuesta());
                    }
                    else
                    {
                        resp.Codigo        = (int)Codigos.REGISTRO_NO_ENCONTRADO;
                        resp.Mensaje       = Enum.GetName(typeof(Codigos), (int)Codigos.OK);
                        resp.Mensaje_error = String.Format(Errores.error1, Entidad.usuario.Id);
                        return(resp.ObjectoRespuesta());
                    }
                }
                else
                {
                    resp.Codigo      = (int)Codigos.ERROR_DE_VALIDACION;
                    resp.Mensaje     = Enum.GetName(typeof(Codigos), (int)Codigos.ERROR_DE_VALIDACION);
                    resp.Objetoerror = modelo;
                    return(resp.ObjectoRespuesta());
                }
            }
            catch (Exception ex)
            {
                if (contexto.Database.CurrentTransaction != null)
                {
                    tran.Rollback();
                }

                resp.Codigo    = (int)Codigos.ERROR_DE_SERVIDOR;
                resp.Mensaje   = Enum.GetName(typeof(Codigos), (int)Codigos.ERROR_DE_SERVIDOR);
                resp.Excepcion = Excepcion.Create(ex);
                return(resp.ObjectoRespuesta());
            }
        }
예제 #4
0
 public HttpResponseMessage Login(LoginModel login, ModelStateDictionary modelo)
 {
     try
     {
         if (modelo.IsValid)
         {
             usuario usuario = mgr.FindAsync(login.Username, login.Password).Result;
             if (usuario == null)
             {
                 resp.Codigo        = (int)Codigos.REGISTRO_NO_ENCONTRADO;
                 resp.Mensaje       = Enum.GetName(typeof(Codigos), (int)Codigos.REGISTRO_NO_ENCONTRADO);
                 resp.Mensaje_error = Errores.error2;
                 return(resp.ObjectoRespuesta());
             }
             else
             {
                 ClaimsIdentity ident = mgr.CreateIdentityAsync(usuario, DefaultAuthenticationTypes.ApplicationCookie).Result;
                 auth.SignOut();
                 auth.SignIn(new AuthenticationProperties {
                     IsPersistent = true
                 }, ident);
                 resp.Codigo  = (int)Codigos.OK;
                 resp.Mensaje = Enum.GetName(typeof(Codigos), (int)Codigos.OK);
                 return(resp.ObjectoRespuesta());
             }
         }
         else
         {
             resp.Codigo      = (int)Codigos.ERROR_DE_VALIDACION;
             resp.Mensaje     = Enum.GetName(typeof(Codigos), (int)Codigos.ERROR_DE_VALIDACION);
             resp.Objetoerror = modelo;
             return(resp.ObjectoRespuesta());
         }
     }
     catch (Exception ex)
     {
         resp.Codigo    = (int)Codigos.ERROR_DE_SERVIDOR;
         resp.Mensaje   = Enum.GetName(typeof(Codigos), (int)Codigos.ERROR_DE_SERVIDOR);
         resp.Excepcion = Excepcion.Create(ex);
         return(resp.ObjectoRespuesta());
     }
 }
        public HttpResponseMessage Actualizar(excursionactividad Entidad, ModelStateDictionary modelo)
        {
            try
            {
                if (modelo.IsValid)
                {
                    var proveedor_id = HttpContext.Current.User.Identity.GetUserId();

                    if ((Entidad.tipoactividad_id == 0 || Entidad.tipoactividad_id == null) && (Entidad.tipoexcursion_id == 0 || Entidad.tipoexcursion_id == null))
                    {
                        resp.Codigo            = (int)Codigos.ERROR_DE_VALIDACION;
                        resp.Mensaje           = Enum.GetName(typeof(Codigos), (int)Codigos.ERROR_DE_VALIDACION);
                        resp.Erroresvalidacion = new string[] { ErroresValidacion.error18 }.ToList();
                        return(resp.ObjectoRespuesta());
                    }
                    if ((Entidad.tipoactividad_id != 0 && Entidad.tipoactividad_id != null && Entidad.tipoexcursion_id != 0 && Entidad.tipoexcursion_id != null))
                    {
                        resp.Codigo            = (int)Codigos.ERROR_DE_VALIDACION;
                        resp.Mensaje           = Enum.GetName(typeof(Codigos), (int)Codigos.ERROR_DE_VALIDACION);
                        resp.Erroresvalidacion = new string[] { ErroresValidacion.error19 }.ToList();
                        return(resp.ObjectoRespuesta());
                    }
                    if ((Entidad.esexcursion) && (Entidad.tipoexcursion_id == 0 || Entidad.tipoexcursion_id == null))
                    {
                        resp.Codigo            = (int)Codigos.ERROR_DE_VALIDACION;
                        resp.Mensaje           = Enum.GetName(typeof(Codigos), (int)Codigos.ERROR_DE_VALIDACION);
                        resp.Erroresvalidacion = new string[] { ErroresValidacion.error20 }.ToList();
                        return(resp.ObjectoRespuesta());
                    }
                    if ((!Entidad.esexcursion) && (Entidad.tipoactividad_id == 0 || Entidad.tipoactividad_id == null))
                    {
                        resp.Codigo            = (int)Codigos.ERROR_DE_VALIDACION;
                        resp.Mensaje           = Enum.GetName(typeof(Codigos), (int)Codigos.ERROR_DE_VALIDACION);
                        resp.Erroresvalidacion = new string[] { ErroresValidacion.error21 }.ToList();
                        return(resp.ObjectoRespuesta());
                    }
                    if (Entidad.esexcursion)
                    {
                        Entidad.tipoactividad_id = null;
                    }
                    else
                    {
                        Entidad.tipoexcursion_id = null;
                    }
                    var exact = contexto.excursionactividad.Include("configuracion").Where(x => x.exact_id == Entidad.configuracion.id && x.configuracion.proveedor_id == proveedor_id).FirstOrDefault();
                    if (exact == null)
                    {
                        resp.Codigo  = (int)Codigos.REGISTRO_NO_ENCONTRADO;
                        resp.Mensaje = Enum.GetName(typeof(Codigos), (int)Codigos.REGISTRO_NO_ENCONTRADO);
                        return(resp.ObjectoRespuesta());
                    }
                    if (contexto.configuracion.Where(x => x.nombre.ToLower() == Entidad.configuracion.nombre.ToLower() && x.id != Entidad.configuracion.id).FirstOrDefault() != null)
                    {
                        resp.Codigo        = (int)Codigos.REGISTRO_REPETIDO;
                        resp.Mensaje       = Enum.GetName(typeof(Codigos), (int)Codigos.REGISTRO_REPETIDO);
                        resp.Mensaje_error = Errores.error10;
                        return(resp.ObjectoRespuesta());
                    }
                    if (Entidad.configuracion.fotos != null && Entidad.configuracion.fotos.Count > 0)
                    {
                        Entidad.configuracion.fotos = null;
                    }
                    var duraciones = Enum.GetNames(typeof(DuracionExAct));
                    if (duraciones.Where(x => x == Entidad.tipoduracion.ToLower()).FirstOrDefault() == null)
                    {
                        resp.Codigo      = (int)Codigos.ERROR_DE_VALIDACION;
                        resp.Mensaje     = Enum.GetName(typeof(Codigos), (int)Codigos.ERROR_DE_VALIDACION);
                        resp.Objetoerror = new string[] { Errores.error28 };
                        return(resp.ObjectoRespuesta());
                    }
                    Entidad.tipoduracion = Entidad.tipoduracion.ToLower();
                    if (Entidad.tipoduracion.Equals("flexible"))
                    {
                        Entidad.duracion = 0;
                    }
                    else if (Entidad.duracion <= 0)
                    {
                        resp.Codigo      = (int)Codigos.ERROR_DE_VALIDACION;
                        resp.Mensaje     = Enum.GetName(typeof(Codigos), (int)Codigos.ERROR_DE_VALIDACION);
                        resp.Objetoerror = new string[] { Errores.error29 };
                        return(resp.ObjectoRespuesta());
                    }
                    Entidad.exact_id = Entidad.configuracion.id;
                    Entidad.configuracion.proveedor_id          = exact.configuracion.proveedor_id;
                    Entidad.tipoactividad_id                    = Entidad.tipoactividad_id == null || Entidad.tipoactividad_id == 0 ? exact.tipoactividad_id : Entidad.tipoactividad_id;
                    Entidad.tipoexcursion_id                    = Entidad.tipoexcursion_id == null || Entidad.tipoexcursion_id == 0 ? Entidad.tipoexcursion_id : Entidad.tipoexcursion_id;
                    contexto.Entry(exact.configuracion).State   = EntityState.Detached;
                    contexto.Entry(exact).State                 = EntityState.Detached;
                    contexto.Entry(Entidad).State               = EntityState.Modified;
                    contexto.Entry(Entidad.configuracion).State = EntityState.Modified;
                    contexto.SaveChanges();
                    resp.Codigo  = (int)Codigos.OK;
                    resp.Mensaje = Enum.GetName(typeof(Codigos), (int)Codigos.OK);
                    return(resp.ObjectoRespuesta());
                }
                else
                {
                    resp.Codigo      = (int)Codigos.ERROR_DE_VALIDACION;
                    resp.Mensaje     = Enum.GetName(typeof(Codigos), (int)Codigos.ERROR_DE_VALIDACION);
                    resp.Objetoerror = modelo;
                    return(resp.ObjectoRespuesta());
                }
            }
            catch (Exception ex)
            {
                resp.Codigo    = (int)Codigos.ERROR_DE_SERVIDOR;
                resp.Mensaje   = Enum.GetName(typeof(Codigos), (int)Codigos.ERROR_DE_SERVIDOR);
                resp.Excepcion = Excepcion.Create(ex);
                return(resp.ObjectoRespuesta());
            }
        }
예제 #6
0
 public HttpResponseMessage Actualizar(categoriactividad Entidad, ModelStateDictionary modelo)
 {
     try
     {
         if (modelo.IsValid)
         {
             var categoriactividad = contexto.categoriactividad.Where(x => x.nombre.ToLower() == Entidad.nombre.ToLower() && x.id != Entidad.id).FirstOrDefault();
             if (categoriactividad != null)
             {
                 resp.Codigo  = (int)Codigos.REGISTRO_REPETIDO;
                 resp.Mensaje = Enum.GetName(typeof(Codigos), (int)Codigos.REGISTRO_REPETIDO);
                 return(resp.ObjectoRespuesta());
             }
             categoriactividad = contexto.categoriactividad.Find(Entidad.id);
             if (categoriactividad == null)
             {
                 resp.Codigo  = (int)Codigos.REGISTRO_NO_ENCONTRADO;
                 resp.Mensaje = Enum.GetName(typeof(Codigos), (int)Codigos.REGISTRO_NO_ENCONTRADO);
                 return(resp.ObjectoRespuesta());
             }
             categoriactividad.nombre = Entidad.nombre;
             contexto.SaveChanges();
             resp.Codigo  = (int)Codigos.OK;
             resp.Mensaje = Enum.GetName(typeof(Codigos), (int)Codigos.OK);
             return(resp.ObjectoRespuesta());
         }
         else
         {
             resp.Codigo      = (int)Codigos.ERROR_DE_VALIDACION;
             resp.Mensaje     = Enum.GetName(typeof(Codigos), (int)Codigos.ERROR_DE_VALIDACION);
             resp.Objetoerror = modelo;
             return(resp.ObjectoRespuesta());
         }
     }
     catch (Exception ex)
     {
         resp.Codigo    = (int)Codigos.ERROR_DE_SERVIDOR;
         resp.Mensaje   = Enum.GetName(typeof(Codigos), (int)Codigos.ERROR_DE_SERVIDOR);
         resp.Excepcion = Excepcion.Create(ex);
         return(resp.ObjectoRespuesta());
     }
 }
예제 #7
0
 public HttpResponseMessage BusquedaPorId(string id)
 {
     try
     {
         var proveedor_id = HttpContext.Current.User.Identity.GetUserId();
         var _id          = Int64.Parse(id);
         var result       =
             (
                 from r in contexto.reservaexcursionactividad
                 join f in contexto.calendarioexcursion on r.calendario_id equals f.id
                 where (r.reserva.id == _id || r.reserva.codigoqr == id) && r.reserva.proveedor_id == proveedor_id
                 select new
         {
             id = r.reserva.id,
             fechatransaccion = r.reserva.fechatransaccion,
             precio = r.reserva.precio,
             factura = r.reserva.factura,
             codigoqr = r.reserva.codigoqr,
             numadultos = r.numadultos,
             numjuniors = r.numjuniors,
             numseniors = r.numseniors,
             numninos = r.numninos,
             numinfantes = r.numinfantes,
             fechaexcursion = f.fecha,
             puntorecogida = (r.punto.nombre == null) ? null : new
             {
                 nombre = r.punto.nombre,
                 lat = r.punto.lat,
                 lng = r.punto.lng,
                 direccion = r.punto.direccion,
                 descripcion = r.punto.descripcion,
                 localidad = r.punto.localidad.nombre,
                 codigo_postal = r.punto.localidad.cp,
                 provincia = r.punto.localidad.provincia.nombre,
                 pais = r.punto.localidad.provincia.pais.nombre
             },
             cliente = new
             {
                 nombre = r.reserva.cliente.usuario.nombre,
                 primerapellido = r.reserva.cliente.usuario.primerapellido,
                 segundoapellido = r.reserva.cliente.usuario.segundoapellido,
                 email = r.reserva.cliente.usuario.Email,
                 telefono = r.reserva.cliente.usuario.PhoneNumber,
                 hotel = r.nombrehotel,
                 direccionhotel = r.direccion,
                 observaciones = r.observaciones,
                 localidad = r.localidad.nombre,
                 codigo_postal = r.localidad.cp,
                 provincia = r.localidad.provincia.nombre,
                 pais = r.localidad.provincia.pais.nombre
             }
         }
             ).FirstOrDefault();
         resp.Codigo    = (int)Codigos.OK;
         resp.Mensaje   = Enum.GetName(typeof(Codigos), (int)Codigos.OK);
         resp.Contenido = result;
         return(resp.ObjectoRespuesta());
     }
     catch (Exception ex)
     {
         resp.Codigo    = (int)Codigos.ERROR_DE_SERVIDOR;
         resp.Mensaje   = Enum.GetName(typeof(Codigos), (int)Codigos.ERROR_DE_SERVIDOR);
         resp.Excepcion = Excepcion.Create(ex);
         return(resp.ObjectoRespuesta());
     }
 }
 public HttpResponseMessage Reservas(ClientesReserva fechas, ModelStateDictionary modelo, int pag_actual, int regxpag)
 {
     try
     {
         if (modelo.IsValid)
         {
             var proveedor_id = HttpContext.Current.User.Identity.GetUserId();
             var reservas     =
                 (
                     from r in contexto.reservaexcursionactividad
                     join f in contexto.calendarioexcursion on r.calendario_id equals f.id
                     where (fechas.Desde <= f.fecha && f.fecha <= fechas.Hasta) && f.estadoexcursion_id == 1 && r.reserva.proveedor_id == proveedor_id
                     select new
             {
                 id = r.reserva.id,
                 fechatransaccion = r.reserva.fechatransaccion,
                 precio = r.reserva.precio,
                 factura = r.reserva.factura,
                 codigoqr = r.reserva.codigoqr,
                 numadultos = r.numadultos,
                 numjuniors = r.numjuniors,
                 numseniors = r.numseniors,
                 numninos = r.numninos,
                 numinfantes = r.numinfantes,
                 fechaexcursion = f.fecha,
                 puntorecogida = (r.punto.nombre == null) ? null : new
                 {
                     nombre = r.punto.nombre,
                     lat = r.punto.lat,
                     lng = r.punto.lng,
                     direccion = r.punto.direccion,
                     descripcion = r.punto.descripcion,
                     localidad = r.punto.localidad.nombre,
                     codigo_postal = r.punto.localidad.cp,
                     provincia = r.punto.localidad.provincia.nombre,
                     pais = r.punto.localidad.provincia.pais.nombre
                 },
                 cliente = new
                 {
                     nombre = r.reserva.cliente.usuario.nombre,
                     primerapellido = r.reserva.cliente.usuario.primerapellido,
                     segundoapellido = r.reserva.cliente.usuario.segundoapellido,
                     email = r.reserva.cliente.usuario.Email,
                     telefono = r.reserva.cliente.usuario.PhoneNumber,
                     hotel = r.nombrehotel,
                     direccionhotel = r.direccion,
                     observaciones = r.observaciones,
                     localidad = r.localidad.nombre,
                     codigo_postal = r.localidad.cp,
                     provincia = r.localidad.provincia.nombre,
                     pais = r.localidad.provincia.pais.nombre
                 }
             }
                 ).OrderBy(x => x.fechatransaccion).Skip((pag_actual - 1) * regxpag).Take(regxpag).ToList();
             var paginacion = this.Paginacion(contexto.reservaexcursionactividad.Where(x => (fechas.Desde <= x.calendarioexcursion.fecha && x.calendarioexcursion.fecha <= fechas.Hasta) && x.calendarioexcursion.estadoexcursion_id == 1 && x.reserva.proveedor_id == proveedor_id).Count(), pag_actual, regxpag);
             var result     = new
             {
                 reservas   = reservas,
                 paginacion = paginacion
             };
             resp.Codigo    = (int)Codigos.OK;
             resp.Mensaje   = Enum.GetName(typeof(Codigos), (int)Codigos.OK);
             resp.Contenido = result;
             return(resp.ObjectoRespuesta());
         }
         else
         {
             resp.Codigo      = (int)Codigos.ERROR_DE_VALIDACION;
             resp.Mensaje     = Enum.GetName(typeof(Codigos), (int)Codigos.ERROR_DE_VALIDACION);
             resp.Objetoerror = modelo;
             return(resp.ObjectoRespuesta());
         }
     }
     catch (Exception ex)
     {
         resp.Codigo    = (int)Codigos.ERROR_DE_SERVIDOR;
         resp.Mensaje   = Enum.GetName(typeof(Codigos), (int)Codigos.ERROR_DE_SERVIDOR);
         resp.Excepcion = Excepcion.Create(ex);
         return(resp.ObjectoRespuesta());
     }
 }
예제 #9
0
        public HttpResponseMessage Actualizar(grupoedad Entidad, ModelStateDictionary modelo)
        {
            try
            {
                if (modelo.IsValid)
                {
                    var proveedor_id = HttpContext.Current.User.Identity.GetUserId();

                    string[] listageneros = Enum.GetNames(typeof(NombreRangoEdad));
                    var      enviado      = Entidad.genero.ToLower();
                    var      existe       = listageneros.Where(x => x == enviado).FirstOrDefault();
                    if (String.IsNullOrEmpty(existe))
                    {
                        resp.Codigo      = (int)Codigos.ERROR_DE_VALIDACION;
                        resp.Mensaje     = Enum.GetName(typeof(Codigos), (int)Codigos.ERROR_DE_VALIDACION);
                        resp.Objetoerror = new string[] { Errores.error27 };
                        return(resp.ObjectoRespuesta());
                    }
                    var id = Entidad.exact_id;
                    var db = contexto.grupoedad.Where(x => x.exact_id == id && x.genero == enviado && x.id != Entidad.id).FirstOrDefault();
                    if (db != null)
                    {
                        resp.Codigo        = (int)Codigos.REGISTRO_REPETIDO;
                        resp.Mensaje       = Enum.GetName(typeof(Codigos), (int)Codigos.REGISTRO_REPETIDO);
                        resp.Mensaje_error = String.Format(Errores.error26, db.genero);
                        return(resp.ObjectoRespuesta());
                    }
                    if (contexto.grupoedad.Where(x => x.exact.configuracion.proveedor_id == proveedor_id && x.id == Entidad.id).FirstOrDefault() == null)
                    {
                        resp.Codigo  = (int)Codigos.ERROR_OPERACION_NO_PERMITIDA;
                        resp.Mensaje = Enum.GetName(typeof(Codigos), (int)Codigos.ERROR_OPERACION_NO_PERMITIDA);
                        return(resp.ObjectoRespuesta());
                    }
                    contexto.grupoedad.Attach(Entidad);
                    contexto.Entry(Entidad).State = EntityState.Modified;
                    contexto.SaveChanges();
                    resp.Codigo  = (int)Codigos.OK;
                    resp.Mensaje = Enum.GetName(typeof(Codigos), (int)Codigos.OK);
                    return(resp.ObjectoRespuesta());
                }
                else
                {
                    resp.Codigo      = (int)Codigos.ERROR_DE_VALIDACION;
                    resp.Mensaje     = Enum.GetName(typeof(Codigos), (int)Codigos.ERROR_DE_VALIDACION);
                    resp.Objetoerror = modelo;
                    return(resp.ObjectoRespuesta());
                }
            }
            catch (Exception ex)
            {
                resp.Codigo    = (int)Codigos.ERROR_DE_SERVIDOR;
                resp.Mensaje   = Enum.GetName(typeof(Codigos), (int)Codigos.ERROR_DE_SERVIDOR);
                resp.Excepcion = Excepcion.Create(ex);
                return(resp.ObjectoRespuesta());
            }
        }
예제 #10
0
        public HttpResponseMessage Crear(cliente Entidad, ModelStateDictionary modelo)
        {
            DbContextTransaction tran = null;

            try
            {
                if (modelo.IsValid)
                {
                    Entidad.usuario_id = Entidad.usuario.Id;
                    tran = contexto.Database.BeginTransaction();
                    var            password = Entidad.usuario.PasswordHash;
                    IdentityResult result   = mgr.CreateAsync(Entidad.usuario, Entidad.usuario.PasswordHash).Result;
                    if (!result.Succeeded)
                    {
                        if (contexto.Database.CurrentTransaction != null)
                        {
                            tran.Rollback();
                        }

                        resp.Codigo      = (int)Codigos.ERROR_DE_VALIDACION;
                        resp.Mensaje     = Enum.GetName(typeof(Codigos), (int)Codigos.ERROR_DE_VALIDACION);
                        resp.Objetoerror = result.Errors;
                        return(resp.ObjectoRespuesta());
                    }
                    else
                    {
                        Entidad.usuario = null;
                        contexto.cliente.Add(Entidad);
                        contexto.SaveChanges();
                        tran.Commit();
                        Task.Run(() => avisosemail.CreacionCuentaCliente(Entidad.usuario_id, password));
                        resp.Codigo  = (int)Codigos.OK;
                        resp.Mensaje = Enum.GetName(typeof(Codigos), (int)Codigos.OK);
                        return(resp.ObjectoRespuesta());
                    }
                }
                else
                {
                    resp.Codigo      = (int)Codigos.ERROR_DE_VALIDACION;
                    resp.Mensaje     = Enum.GetName(typeof(Codigos), (int)Codigos.ERROR_DE_VALIDACION);
                    resp.Objetoerror = modelo;
                    return(resp.ObjectoRespuesta());
                }
            }
            catch (Exception ex)
            {
                if (contexto.Database.CurrentTransaction != null)
                {
                    tran.Rollback();
                }

                resp.Codigo    = (int)Codigos.ERROR_DE_SERVIDOR;
                resp.Mensaje   = Enum.GetName(typeof(Codigos), (int)Codigos.ERROR_DE_SERVIDOR);
                resp.Excepcion = Excepcion.Create(ex);
                return(resp.ObjectoRespuesta());
            }
        }
 public HttpResponseMessage Actualizar(PuntoRecogidaModel punto, ModelStateDictionary modelo)
 {
     try
     {
         if (modelo.IsValid)
         {
             if (punto.Id == 0)
             {
                 resp.Codigo      = (int)Codigos.ERROR_DE_VALIDACION;
                 resp.Mensaje     = Enum.GetName(typeof(Codigos), (int)Codigos.ERROR_DE_VALIDACION);
                 resp.Objetoerror = new string[] { ErroresValidacion.error17 };
                 return(resp.ObjectoRespuesta());
             }
             var proveedor_id  = HttpContext.Current.User.Identity.GetUserId();
             var puntorecogida = contexto.puntorecogida.Where(x => x.nombre.ToLower() == punto.Nombre.ToLower() && x.id != punto.Id && x.proveedor_id == proveedor_id).FirstOrDefault();
             if (puntorecogida != null)
             {
                 resp.Codigo        = (int)Codigos.REGISTRO_REPETIDO;
                 resp.Mensaje       = Enum.GetName(typeof(Codigos), (int)Codigos.REGISTRO_REPETIDO);
                 resp.Mensaje_error = Errores.error20;
                 return(resp.ObjectoRespuesta());
             }
             puntorecogida = contexto.puntorecogida.Where(x => x.id == punto.Id && x.proveedor_id == proveedor_id).FirstOrDefault();
             if (puntorecogida == null)
             {
                 resp.Codigo  = (int)Codigos.REGISTRO_NO_ENCONTRADO;
                 resp.Mensaje = Enum.GetName(typeof(Codigos), (int)Codigos.REGISTRO_NO_ENCONTRADO);
                 return(resp.ObjectoRespuesta());
             }
             puntorecogida.nombre       = punto.Nombre;
             puntorecogida.lat          = punto.Lat;
             puntorecogida.lng          = punto.Lng;
             puntorecogida.localidad_id = punto.Localidad_id;
             puntorecogida.descripcion  = punto.Descripcion;
             puntorecogida.direccion    = punto.Direccion;
             contexto.SaveChanges();
             Task.Run(() => avisos.PuntoRecogidaModificado(punto.Id));
             resp.Codigo  = (int)Codigos.OK;
             resp.Mensaje = Enum.GetName(typeof(Codigos), (int)Codigos.OK);
             return(resp.ObjectoRespuesta());
         }
         else
         {
             resp.Codigo      = (int)Codigos.ERROR_DE_VALIDACION;
             resp.Mensaje     = Enum.GetName(typeof(Codigos), (int)Codigos.ERROR_DE_VALIDACION);
             resp.Objetoerror = modelo;
             return(resp.ObjectoRespuesta());
         }
     }
     catch (Exception ex)
     {
         resp.Codigo    = (int)Codigos.ERROR_DE_SERVIDOR;
         resp.Mensaje   = Enum.GetName(typeof(Codigos), (int)Codigos.ERROR_DE_SERVIDOR);
         resp.Excepcion = Excepcion.Create(ex);
         return(resp.ObjectoRespuesta());
     }
 }
예제 #12
0
        public HttpResponseMessage Actualizar(preciotemporada Entidad, ModelStateDictionary modelo)
        {
            try
            {
                if (modelo.IsValid)
                {
                    var proveedor_id    = HttpContext.Current.User.Identity.GetUserId();
                    var preciotemporada = contexto.preciotemporada.Where(x => x.excursionactividad.configuracion.proveedor_id == proveedor_id && x.id == Entidad.id).FirstOrDefault();
                    if (preciotemporada == null)
                    {
                        resp.Codigo        = (int)Codigos.REGISTRO_NO_ENCONTRADO;
                        resp.Mensaje       = Enum.GetName(typeof(Codigos), (int)Codigos.REGISTRO_NO_ENCONTRADO);
                        resp.Mensaje_error = Errores.error6;
                        return(resp.ObjectoRespuesta());
                    }
                    if (Entidad.desde >= Entidad.hasta)
                    {
                        resp.Codigo            = (int)Codigos.ERROR_DE_VALIDACION;
                        resp.Mensaje           = Enum.GetName(typeof(Codigos), (int)Codigos.ERROR_DE_VALIDACION);
                        resp.Erroresvalidacion = new string[] { Errores.error13 }.ToList();
                        return(resp.ObjectoRespuesta());
                    }
                    var maxima = contexto.preciotemporada.Where
                                 (
                        x => x.exact_id == Entidad.exact_id && x.id != Entidad.id
                        &&
                        (
                            (Entidad.hasta >= x.desde && Entidad.desde < x.desde) ||
                            (Entidad.desde >= x.desde && Entidad.hasta <= x.hasta) ||
                            (Entidad.desde <= x.hasta && Entidad.hasta > x.hasta)
                        )
                                 ).FirstOrDefault();
                    if (maxima != null)
                    {
                        resp.Codigo            = (int)Codigos.ERROR_DE_VALIDACION;
                        resp.Mensaje           = Enum.GetName(typeof(Codigos), (int)Codigos.ERROR_DE_VALIDACION);
                        resp.Erroresvalidacion = new string[] { Errores.error12 }.ToList();
                        return(resp.ObjectoRespuesta());
                    }
                    var datos = contexto.configuracion.Where(x => x.id == Entidad.exact_id).Select(x => new
                    {
                        porcentaje             = x.porcentaje,
                        esporgrupo             = x.excursionactividad.precioporgrupo,
                        secontabilizaninfantes = x.excursionactividad.secontabilizaninfantes
                    }).First();
                    if (datos.esporgrupo)
                    {
                        if (Entidad.costegrupo == 0)
                        {
                            resp.Codigo            = (int)Codigos.ERROR_DE_VALIDACION;
                            resp.Mensaje           = Enum.GetName(typeof(Codigos), (int)Codigos.ERROR_DE_VALIDACION);
                            resp.Erroresvalidacion = new string[] { Errores.error31 }.ToList();
                            return(resp.ObjectoRespuesta());
                        }
                        Entidad.pvpgrupo  = Entidad.costegrupo + (Entidad.costegrupo * (datos.porcentaje / 100));
                        Entidad.netogrupo = Entidad.pvpgrupo - Entidad.costegrupo;
                    }
                    else
                    {
                        if (datos.secontabilizaninfantes)
                        {
                            if (Entidad.costeinfante == 0)
                            {
                                resp.Codigo            = (int)Codigos.ERROR_DE_VALIDACION;
                                resp.Mensaje           = Enum.GetName(typeof(Codigos), (int)Codigos.ERROR_DE_VALIDACION);
                                resp.Erroresvalidacion = new string[] { Errores.error32 }.ToList();
                                return(resp.ObjectoRespuesta());
                            }
                        }
                        Entidad.pvpadulto  = Entidad.costeadulto + (Entidad.costeadulto * (datos.porcentaje / 100));
                        Entidad.pvpinfante = Entidad.costeinfante + (Entidad.costeinfante * (datos.porcentaje / 100));
                        Entidad.pvpjunior  = Entidad.costejunior + (Entidad.costejunior * (datos.porcentaje / 100));
                        Entidad.pvpnino    = Entidad.costenino + (Entidad.costenino * (datos.porcentaje / 100));
                        Entidad.pvpsenior  = Entidad.costesenior + (Entidad.costesenior * (datos.porcentaje / 100));

                        Entidad.netoadulto  = Entidad.pvpadulto - Entidad.costeadulto;
                        Entidad.netoinfante = Entidad.pvpinfante - Entidad.costeinfante;
                        Entidad.netojunior  = Entidad.pvpjunior - Entidad.costejunior;
                        Entidad.netonino    = Entidad.pvpnino - Entidad.costenino;
                        Entidad.netosenior  = Entidad.pvpsenior - Entidad.costesenior;
                    }
                    contexto.Entry(preciotemporada).State = EntityState.Detached;
                    contexto.Entry(Entidad).State         = EntityState.Modified;
                    contexto.SaveChanges();
                    resp.Codigo  = (int)Codigos.OK;
                    resp.Mensaje = Enum.GetName(typeof(Codigos), (int)Codigos.OK);
                    return(resp.ObjectoRespuesta());
                }
                else
                {
                    resp.Codigo      = (int)Codigos.ERROR_DE_VALIDACION;
                    resp.Mensaje     = Enum.GetName(typeof(Codigos), (int)Codigos.ERROR_DE_VALIDACION);
                    resp.Objetoerror = modelo;
                    return(resp.ObjectoRespuesta());
                }
            }
            catch (Exception ex)
            {
                resp.Codigo    = (int)Codigos.ERROR_DE_SERVIDOR;
                resp.Mensaje   = Enum.GetName(typeof(Codigos), (int)Codigos.ERROR_DE_SERVIDOR);
                resp.Excepcion = Excepcion.Create(ex);
                return(resp.ObjectoRespuesta());
            }
        }
 public HttpResponseMessage Actualizar(facturaitem Entidad, ModelStateDictionary modelo)
 {
     try
     {
         if (modelo.IsValid)
         {
             var proveedor_id = HttpContext.Current.User.Identity.GetUserId();
             var facturaitem  = contexto.facturaitem.Where(x => x.proveedor_id == proveedor_id && x.id == Entidad.id).FirstOrDefault();
             if (facturaitem == null)
             {
                 resp.Codigo  = (int)Codigos.REGISTRO_NO_ENCONTRADO;
                 resp.Mensaje = Enum.GetName(typeof(Codigos), (int)Codigos.REGISTRO_NO_ENCONTRADO);
                 return(resp.ObjectoRespuesta());
             }
             facturaitem.nombre      = Entidad.nombre;
             facturaitem.descripcion = Entidad.descripcion;
             contexto.SaveChanges();
             resp.Codigo  = (int)Codigos.OK;
             resp.Mensaje = Enum.GetName(typeof(Codigos), (int)Codigos.OK);
             return(resp.ObjectoRespuesta());
         }
         else
         {
             resp.Codigo      = (int)Codigos.ERROR_DE_VALIDACION;
             resp.Mensaje     = Enum.GetName(typeof(Codigos), (int)Codigos.ERROR_DE_VALIDACION);
             resp.Objetoerror = modelo;
             return(resp.ObjectoRespuesta());
         }
     }
     catch (Exception ex)
     {
         resp.Codigo    = (int)Codigos.ERROR_DE_SERVIDOR;
         resp.Mensaje   = Enum.GetName(typeof(Codigos), (int)Codigos.ERROR_DE_SERVIDOR);
         resp.Excepcion = Excepcion.Create(ex);
         return(resp.ObjectoRespuesta());
     }
 }
예제 #14
0
 public HttpResponseMessage BusquedaPorId(string id)
 {
     try
     {
         var proveedor_id = HttpContext.Current.User.Identity.GetUserId();
         var _id          = Int64.Parse(id);
         var foto         = contexto.fotoconfiguracion.Where(x => x.id == _id && x.configuracion.proveedor_id == proveedor_id).Select(x => new { id = x.id, nombre = x.nombre, url = x.url, configuracion_id = x.configuracion_id }).FirstOrDefault();
         if (foto == null)
         {
             resp.Codigo  = (int)Codigos.REGISTRO_NO_ENCONTRADO;
             resp.Mensaje = Enum.GetName(typeof(Codigos), (int)Codigos.REGISTRO_NO_ENCONTRADO);
             return(resp.ObjectoRespuesta());
         }
         resp.Codigo    = (int)Codigos.OK;
         resp.Mensaje   = Enum.GetName(typeof(Codigos), (int)Codigos.OK);
         resp.Contenido = foto;
         return(resp.ObjectoRespuesta());
     }
     catch (Exception ex)
     {
         resp.Codigo    = (int)Codigos.ERROR_DE_SERVIDOR;
         resp.Mensaje   = Enum.GetName(typeof(Codigos), (int)Codigos.ERROR_DE_SERVIDOR);
         resp.Excepcion = Excepcion.Create(ex);
         return(resp.ObjectoRespuesta());
     }
 }
예제 #15
0
 public HttpResponseMessage Crear(CalendarioExcursionModel datos, ModelStateDictionary modelo)
 {
     try
     {
         if (modelo.IsValid)
         {
             if (contexto.excursionactividad.FirstOrDefault(p => p.exact_id == datos.Exact_id) == null)
             {
                 resp.Codigo        = (int)Codigos.REGISTRO_NO_ENCONTRADO;
                 resp.Mensaje       = Enum.GetName(typeof(Codigos), (int)Codigos.REGISTRO_NO_ENCONTRADO);
                 resp.Mensaje_error = Errores.error6;
                 return(resp.ObjectoRespuesta());
             }
             if (datos.Hasta <= datos.Desde)
             {
                 resp.Codigo            = (int)Codigos.ERROR_DE_VALIDACION;
                 resp.Mensaje           = Enum.GetName(typeof(Codigos), (int)Codigos.ERROR_DE_VALIDACION);
                 resp.Erroresvalidacion = new List <string>();
                 resp.Erroresvalidacion.Add(Errores.error7);
                 return(resp.ObjectoRespuesta());
             }
             if (datos.Desde <= DateTime.Now)
             {
                 resp.Codigo            = (int)Codigos.ERROR_DE_VALIDACION;
                 resp.Mensaje           = Enum.GetName(typeof(Codigos), (int)Codigos.ERROR_DE_VALIDACION);
                 resp.Erroresvalidacion = new List <string>();
                 resp.Erroresvalidacion.Add(Errores.error22);
                 return(resp.ObjectoRespuesta());
             }
             List <calendarioexcursion> inputs = new List <calendarioexcursion>();
             DateTime aux;
             List <calendarioexcursion> registradas = contexto.calendarioexcursion.Where(p => p.exact_id == datos.Exact_id && p.fecha >= datos.Desde).ToList <calendarioexcursion>();
             while (datos.Desde <= datos.Hasta)
             {
                 aux = datos.Desde;
                 foreach (string hora in datos.Horarios)
                 {
                     aux = aux.AddTicks(TimeSpan.Parse(hora).Ticks);
                     if (datos.Dias.Where(p => p == Enum.GetName(typeof(DiasSemana), (int)aux.DayOfWeek)).FirstOrDefault() != null)
                     {
                         inputs.Add(new calendarioexcursion()
                         {
                             exact_id = datos.Exact_id, estadoexcursion_id = 1, fecha = aux
                         });
                     }
                     aux = aux.AddTicks(-TimeSpan.Parse(hora).Ticks);
                 }
                 datos.Desde = datos.Desde.AddDays(1);
             }
             var query = (from item1 in inputs join item2 in registradas on item1.fecha equals item2.fecha into g from o in g where o.exact_id == datos.Exact_id select new { fecha = o.fecha.ToString("dd/MM/yyyy HH:mm:ss") }).ToList();
             if (query.Count() == 0)
             {
                 inputs.ForEach(p => contexto.calendarioexcursion.Add(p));
                 contexto.SaveChanges();
                 resp.Codigo  = (int)Codigos.OK;
                 resp.Mensaje = Enum.GetName(typeof(Codigos), (int)Codigos.OK);
                 return(resp.ObjectoRespuesta());
             }
             List <string> salida = new List <string>(query.Count());
             query.ForEach(p => salida.Add(p.fecha));
             resp.Codigo    = (int)Codigos.ERROR_EXISTEN_FECHAS_REPETIDAS;
             resp.Mensaje   = Enum.GetName(typeof(Codigos), (int)Codigos.ERROR_EXISTEN_FECHAS_REPETIDAS);
             resp.Contenido = salida;
             return(resp.ObjectoRespuesta());
         }
         else
         {
             resp.Codigo      = (int)Codigos.ERROR_DE_VALIDACION;
             resp.Mensaje     = Enum.GetName(typeof(Codigos), (int)Codigos.ERROR_DE_VALIDACION);
             resp.Objetoerror = modelo;
             return(resp.ObjectoRespuesta());
         }
     }
     catch (Exception ex)
     {
         resp.Codigo    = (int)Codigos.ERROR_DE_SERVIDOR;
         resp.Mensaje   = Enum.GetName(typeof(Codigos), (int)Codigos.ERROR_DE_SERVIDOR);
         resp.Excepcion = Excepcion.Create(ex);
         return(resp.ObjectoRespuesta());
     }
 }