示例#1
0
        public HttpResponseMessage UpdateSensor([FromBody] SensorPessoal sensor, int id)
        {
            try
            {
                if (sensor == null)
                {
                    var form = new Dictionary <string, string>
                    {
                        { "Valido", "(optional - DEFAULT false) Type:Bool" },
                        { "Data", "(optional - DEFAULT Current DateTime) Type:Datetime" },
                    };

                    return(Request.CreateResponse(HttpStatusCode.BadRequest, form));
                }

                var identity     = (ClaimsPrincipal)Thread.CurrentPrincipal;
                int current_user = int.Parse(identity.Claims.Where(c => c.Type == ClaimTypes.Sid).Select(c => c.Value).SingleOrDefault());

                SensorPessoal updatedSensor = SensorPessoalValidatedBy.UpdateValido(sensor, id, current_user);

                if (updatedSensor == null)
                {
                    return(Request.CreateResponse(HttpStatusCode.InternalServerError));
                }

                return(Request.CreateResponse(HttpStatusCode.OK, updatedSensor));
            }
            catch (Exception exception)
            {
                return(Request.CreateResponse(HttpStatusCode.InternalServerError, exception));
            }
        }
示例#2
0
        public HttpResponseMessage GetPessoaisSensoresByUsername(string username)
        {
            List <SensorPessoal> sensores = null;

            try
            {
                sensores = SensorPessoal.GetSensoresByUsername(username);

                if (sensores == null)
                {
                    return(Request.CreateResponse(HttpStatusCode.InternalServerError));
                }

                return(Request.CreateResponse(HttpStatusCode.OK, sensores));
            }
            catch (Exception exception)
            {
                return(Request.CreateResponse(HttpStatusCode.InternalServerError, exception));
            }
        }
示例#3
0
        public HttpResponseMessage GetPessoaisSensoresById(int id)
        {
            SensorPessoal sensor = null;

            try
            {
                sensor = SensorPessoal.GetSensorById(id);

                if (sensor == null)
                {
                    return(Request.CreateResponse(HttpStatusCode.InternalServerError));
                }

                return(Request.CreateResponse(HttpStatusCode.OK, sensor));
            }
            catch (Exception exception)
            {
                return(Request.CreateResponse(HttpStatusCode.InternalServerError, exception));
            }
        }
示例#4
0
        public HttpResponseMessage GetMyPessoaisSensores()
        {
            List <SensorPessoal> sensores = null;

            try
            {
                var identity = (ClaimsPrincipal)Thread.CurrentPrincipal;
                int id       = int.Parse(identity.Claims.Where(c => c.Type == ClaimTypes.Sid).Select(c => c.Value).SingleOrDefault());

                sensores = SensorPessoal.GetMySensores(id);

                if (sensores == null)
                {
                    Request.CreateResponse(HttpStatusCode.InternalServerError);
                }

                return(Request.CreateResponse(HttpStatusCode.OK, sensores));
            }
            catch (Exception exception)
            {
                return(Request.CreateResponse(HttpStatusCode.InternalServerError, exception));
            }
        }
示例#5
0
        public HttpResponseMessage CreateNewSensorPessoal([FromBody] SensorPessoal sensor)
        {
            try
            {
                if (sensor == null || sensor.Temperatura == 0 || sensor.Humidade == 0 || sensor.Local == null)
                {
                    var form = new Dictionary <string, string>
                    {
                        { "Id", "(automatic) Type:Int" },
                        { "Temperatura", "(required) Type:Decimal" },
                        { "Humidade", "(required) Type:Decimal" },
                        { "Local", "(required) Type:String" },
                        { "Data", "(optional - DEFAULT Current DateTime) Type:Datetime" },
                        { "Valido", "(automatic - DEFAULT true) Type:Bool" },
                        { "Utilizador", "(automatic - DEFAULT Authenticated User), Type:Int" }
                    };

                    return(Request.CreateResponse(HttpStatusCode.BadRequest, form));
                }

                var identity = (ClaimsPrincipal)Thread.CurrentPrincipal;
                int id       = int.Parse(identity.Claims.Where(c => c.Type == ClaimTypes.Sid).Select(c => c.Value).SingleOrDefault());

                SensorPessoal newSensor = SensorPessoal.CreateNewSensor(sensor, id);

                if (newSensor == null)
                {
                    return(Request.CreateResponse(HttpStatusCode.InternalServerError));
                }

                return(Request.CreateResponse(HttpStatusCode.OK, newSensor));
            }
            catch (Exception exception)
            {
                return(Request.CreateResponse(HttpStatusCode.InternalServerError, exception));
            }
        }