コード例 #1
0
        public Reply Add([FromBody] Animalito model)
        {
            Reply oR = new Reply();

            oR.Result = 0;

            try
            {
                Animalito ani = new Animalito();
                ani.Nombre   = model.Nombre;
                ani.Patas    = model.Patas;
                ani.IdEstado = model.IdEstado;

                using (AnimalesContext db = new AnimalesContext())
                {
                    db.Animalito.Add(ani);
                    db.SaveChanges();
                }

                oR.Data    = ani;
                oR.Message = "Se ha guardado correctamente";
                oR.Result  = 1;
                oR.Count   = 1;
            }
            catch (Exception ex)
            {
                oR.Message = "Se ha producido un error al guardar" + ex;
            }

            return(oR);
        }
コード例 #2
0
        // PARA LIMPIAR LOS TOKENS DE LOS USUARIOS QUE YA LES EXPIRO LA FECHA //
        private void LimpiarTokens()
        {
            try
            {
                using (AnimalesContext db = new AnimalesContext())
                {
                    var list = (from u in db.Usuario
                                where u.FechaExpiracion < DateTime.Now
                                select u).ToList();

                    if (list.Count > 0)
                    {
                        foreach (var usu in list)
                        {
                            var usuario = db.Usuario.Find(usu.Id);
                            usuario.Token           = null;
                            db.Entry(usuario).State = EntityState.Modified;
                            db.SaveChanges();
                        }
                    }
                }
            }
            catch (Exception)
            {
                throw;
            }
        }
コード例 #3
0
        public Reply Add([FromBody] Usuario model)
        {
            Reply oR = new Reply();

            oR.Result = 0;

            try
            {
                Usuario usu = new Usuario();
                usu.Usuario1 = model.Usuario1;
                usu.Email    = model.Email;
                usu.Pass     = model.Pass;
                usu.IdEstado = model.IdEstado;

                using (AnimalesContext db = new AnimalesContext())
                {
                    db.Usuario.Add(usu);
                    db.SaveChanges();
                }

                oR.Data    = usu;
                oR.Message = "Se ha guardado correctamente";
                oR.Result  = 1;
                oR.Count   = 1;
            }
            catch (Exception ex)
            {
                oR.Message = "Se ha producido un error al guardar. " + ex.Message;
            }

            return(oR);
        }
コード例 #4
0
        private bool Verify(string token)
        {
            using (AnimalesContext db = new AnimalesContext())
            {
                if (db.Usuario.Where(u => u.Token == token && u.FechaExpiracion > DateTime.Now && u.IdEstado == 1).Count() > 0)
                {
                    return(true);
                }

                return(false);
            }
        }
コード例 #5
0
        public Reply Get(SecurityViewModel model)
        {
            Reply oR = new Reply();

            oR.Result = 0;

            if (!Verify(model.Token))
            {
                oR.Message = "No tienes permiso, logueate nuevamente";
                return(oR);
            }

            try
            {
                using (AnimalesContext db = new AnimalesContext())
                {
                    var list = (from anim in db.Animalito
                                where anim.IdEstado.Equals(1)
                                select new
                    {
                        id = anim.Id,
                        nombre = anim.Nombre,
                        patas = anim.Patas
                    }).ToList();

                    if (list.Count > 0)
                    {
                        oR.Data    = list;
                        oR.Count   = list.Count();
                        oR.Message = "Se encontraron datos";
                        oR.Result  = 1;
                    }
                    else
                    {
                        oR.Message = "No se encontraron datos";
                    }
                }
            }
            catch (Exception ex)
            {
                oR.Message = "Ha ocurrido un error al traer el listado. " + ex;
            }

            return(oR);
        }
コード例 #6
0
        public Reply Delete(int id)
        {
            Reply oR = new Reply();

            oR.Result = 0;

            try
            {
                using (AnimalesContext db = new AnimalesContext())
                {
                    Animalito ani = db.Animalito.Find(id);

                    if (ani != null)
                    {
                        if (ani.IdEstado == 2)
                        {
                            oR.Message = "Ese animalito ya fue eliminado ¬¬";
                        }

                        if (ani.IdEstado == 1)
                        {
                            ani.IdEstado        = 2;
                            db.Entry(ani).State = EntityState.Modified;
                            db.SaveChanges();

                            oR.Data    = ani;
                            oR.Message = "Se ha eliminado correctamente :)";
                            oR.Result  = 1;
                            oR.Count   = 1;
                        }
                    }
                    else
                    {
                        oR.Message = "No existe ese animalito, animalito! >:(";
                    }
                }
            }
            catch (Exception ex)
            {
                oR.Message = "Se ha producido un error al eliminar" + ex;
            }

            return(oR);
        }
コード例 #7
0
        public Reply Login([FromBody] AccessViewModel model)
        {
            Reply oR = new Reply();

            oR.Result = 0;

            try
            {
                using (AnimalesContext db = new AnimalesContext())
                {
                    oR.Result = 1;
                    var list = db.Usuario.Where(u => u.Email == model.Email && u.Pass == model.Pass && u.IdEstado == 1);

                    if (list.Count() > 0)
                    {
                        oR.Data = Guid.NewGuid().ToString();

                        Usuario oUsuario = list.First();
                        oUsuario.Token           = (string)oR.Data;
                        oUsuario.FechaExpiracion = DateTime.Now.AddSeconds(240);

                        db.Entry(oUsuario).State = EntityState.Modified;
                        db.SaveChanges();

                        oR.Count   = 1;
                        oR.Message = "Se ha generado el token correctamente";
                    }

                    else
                    {
                        oR.Message = "Usuario no valido";
                    }
                }
            }
            catch (Exception ex)
            {
                oR.Message = "Login fallo. " + ex.Message;
            }

            return(oR);
        }
コード例 #8
0
        public Reply Get()
        {
            Reply oR = new Reply();

            oR.Result = 0;
            try
            {
                using (AnimalesContext db = new AnimalesContext())
                {
                    var list = (from usu in db.Usuario
                                where usu.IdEstado.Equals(1)
                                select new
                    {
                        id = usu.Id,
                        usuario = usu.Usuario1,
                        email = usu.Email,
                        pass = usu.Pass,
                        token = usu.Token,
                        idEstado = usu.IdEstado
                    }).ToList();

                    if (list.Count > 0)
                    {
                        oR.Data    = list;
                        oR.Count   = list.Count();
                        oR.Message = "Se encontraron datos";
                        oR.Result  = 1;
                    }
                    else
                    {
                        oR.Message = "No se encontraron datos";
                    }
                }
            }
            catch (Exception ex)
            {
                oR.Message = "Ha ocurrido un error al traer el listado " + ex.Message;
            }

            return(oR);
        }
コード例 #9
0
        public Reply Edit([FromBody] AnimalitoViewModel model)
        {
            Reply oR = new Reply();

            oR.Result = 0;

            if (!Verify(model.Token))
            {
                oR.Message = "No tienes permiso, logueate nuevamente";
                return(oR);
            }

            try
            {
                using (AnimalesContext db = new AnimalesContext())
                {
                    Animalito ani = db.Animalito.Find(model.Id);
                    ani.Nombre   = model.Nombre;
                    ani.Patas    = model.Patas;
                    ani.IdEstado = model.IdEstado;

                    db.Entry(ani).State = EntityState.Modified;
                    db.SaveChanges();
                }

                oR.Data    = model;
                oR.Message = "Se ha editado correctamente";
                oR.Result  = 1;
                oR.Count   = 1;
            }
            catch (Exception ex)
            {
                oR.Message = "Se ha producido un error al editar" + ex;
            }

            return(oR);
        }