Ejemplo n.º 1
0
        private async Task <IEnumerable <Lectura> > LecturasDelDispositivoAsync(string id, DateTime inicio, DateTime fin)
        {
            ConsultaAPIModel model = new ConsultaAPIModel()
            {
                NombreMetodo = "LecturasDelDispositivo",
                Parametros   = new List <string> {
                    id, inicio.ToString(), fin.ToString()
                }
            };

            return(await TraerDatos(model).ConfigureAwait(false));
        }
        private async Task <IEnumerable <Dispositivo> > DispositivosDeUsuarioPorIdAsync(string id)
        {
            ConsultaAPIModel model = new ConsultaAPIModel()
            {
                NombreMetodo = "DispositivosDeUsuarioPorId",
                Parametros   = new List <string> {
                    id
                }
            };

            return(await TraerDatos(model).ConfigureAwait(false));
        }
        private async Task <IEnumerable <Accion> > AccionesDelDispositivoAsync(string id)
        {
            ConsultaAPIModel model = new ConsultaAPIModel()
            {
                NombreMetodo = "AccionesDelDispositivo",
                Parametros   = new List <string>()
                {
                    id
                }
            };

            return(await TraerDatos(model).ConfigureAwait(false));
        }
        public override ActionResult <IEnumerable <Accion> > Consulta([FromBody] ConsultaAPIModel model, string id)
        {
            try
            {
                List <Accion> datos;
                switch (model.NombreMetodo)
                {
                case "AccionesDelDispositivo":
                    switch (model.Parametros.Count)
                    {
                    case 1:
                        datos = manager.AccionesDelDispositivo(model.Parametros[0]).ToList();
                        break;

                    case 3:
                        datos = manager.AccionesDelDispositivo(model.Parametros[0].ToString(), DateTime.Parse(model.Parametros[1]), DateTime.Parse(model.Parametros[2])).ToList();
                        break;

                    case 4:
                        datos = manager.AccionesDelDispositivo(model.Parametros[0], model.Parametros[1], DateTime.Parse(model.Parametros[2]),
                                                               DateTime.Parse(model.Parametros[3])).ToList();
                        break;

                    default:
                        datos = null;
                        break;
                    }
                    break;

                default:

                    datos = null;
                    break;
                }
                if (datos == null)
                {
                    return(BadRequest("Nombre del metodo no encotrado"));
                }
                else
                {
                    return(Ok(datos));
                }
            }
            catch (Exception)
            {
                return(BadRequest("Error"));

                throw;
            }
        }
        private async Task <Dispositivo> DispositivoPerteneceAUsuarioAsync(string idDispositivo, string idUsuario)
        {
            ConsultaAPIModel model = new ConsultaAPIModel()
            {
                NombreMetodo = "DispositivoPerteneceAUsuario",
                Parametros   = new List <string> {
                    idDispositivo, idUsuario
                }
            };
            var r = await TraerDatos(model).ConfigureAwait(false);

            var result = r.ToList();

            return(result[0]);
        }
        private async Task <Usuario> LoginAsync(string email, string password)
        {
            ConsultaAPIModel model = new ConsultaAPIModel()
            {
                NombreMetodo = "Login",
                Parametros   = new List <string> {
                    email, password
                }
            };
            var r = await TraerDatos(model).ConfigureAwait(false);

            var result = r.ToList();

            return(result[0]);
        }
        private async Task <IEnumerable <Accion> > TraerDatos(ConsultaAPIModel model)
        {
            HttpContent         content  = new StringContent(JsonConvert.SerializeObject(model), Encoding.UTF8, "application/json");
            HttpResponseMessage response = await client.PostAsync(uriApi + "/consulta", content).ConfigureAwait(false);

            if (response.IsSuccessStatusCode)
            {
                var r = await response.Content.ReadAsStringAsync().ConfigureAwait(false);

                var item = JsonConvert.DeserializeObject <IEnumerable <Accion> >(r);
                return(item);
            }
            else
            {
                error = "No se pudo actualizar el dato";
                return(null);
            }
        }
        public override ActionResult <IEnumerable <Lectura> > Consulta([FromBody] ConsultaAPIModel model, string id)
        {
            List <Lectura> datos = null;

            try
            {
                if (model.NombreMetodo == "LecturasDelDispositivo")
                {
                    switch (model.Parametros.Count)
                    {
                    case 1:

                        datos = manager.LecturasDelDispositivo(model.Parametros[0]).ToList();
                        break;

                    case 3:

                        datos = manager.LecturasDelDispositivo(model.Parametros[0], DateTime.Parse(model.Parametros[1]), DateTime.Parse(model.Parametros[2])).ToList();
                        break;

                    default:
                        datos = null;
                        break;
                    }
                    if (datos == null)
                    {
                        return(BadRequest("NUmero de parametros incorrectos"));
                    }
                    else
                    {
                        return(Ok(datos));
                    }
                }
                else
                {
                    return(BadRequest("Nombre no encontrado"));
                }
            }
            catch (Exception)
            {
                throw;
            }
        }
Ejemplo n.º 9
0
 public override ActionResult <IEnumerable <Usuario> > Consulta([FromBody] ConsultaAPIModel model, string id)
 {
     try
     {
         List <Usuario> datos = null;
         if (model.NombreMetodo == "Login")
         {
             datos = new List <Usuario>();
             datos.Add(manager.Login(model.Parametros[0], model.Parametros[1]));
             return(Ok(datos));
         }
         else
         {
             return(BadRequest("Nombre del metodo no encontrado"));
         }
     }
     catch (Exception)
     {
         return(BadRequest("Error al procesar los datos"));
     }
 }
        public override ActionResult <IEnumerable <Dispositivo> > Consulta([FromBody] ConsultaAPIModel model, string id)
        {
            List <Dispositivo> datos = null;

            try
            {
                switch (model.NombreMetodo)
                {
                case "DispositivoPerteneceAUsuario":
                    datos = new List <Dispositivo>();
                    datos.Add(manager.DispositivoPerteneceAUsuario(model.Parametros[0], model.Parametros[1]));
                    break;

                case "DispositivosDeUsuarioPorEmail":
                    datos = manager.DispositivosDeUsuarioPorEmail(model.Parametros[0]).ToList();
                    break;

                case "DispositivosDeUsuarioPorId":
                    datos = manager.DispositivosDeUsuarioPorId(model.Parametros[0]).ToList();
                    break;

                default:
                    datos = null;
                    break;
                }
                if (datos == null)
                {
                    return(BadRequest("Nombre no encontrado"));
                }
                else
                {
                    return(Ok(datos));
                }
            }
            catch (Exception)
            {
                return(BadRequest("Error en los datos"));
            }
        }
 public abstract ActionResult <IEnumerable <T> > Consulta([FromBody] ConsultaAPIModel model, string id);