public IActionResult UpdateInfos([FromBody] SensorV sensorV, long idSensor) { try { Sensor sensor = Sensor.FindById(idSensor); if (sensor == null || sensor.Id == 0) { return(StatusCode(404, new ErrorClass(404, "Sensor não encontrado", DateTime.Now))); } bool needUpdate = false; if (sensorV.Nome != sensor.Nome & !string.IsNullOrEmpty(sensorV.Nome)) { sensor.ChangeName(sensorV.Nome); needUpdate = true; } DirecaoConverter direcaoConverter = new DirecaoConverter(); if (!sensor.Direcao.Equals(direcaoConverter.Parser(sensorV.Direcao))) { sensor.ChangeDirecao(direcaoConverter.Parser(sensorV.Direcao)); needUpdate = true; } if (needUpdate) { sensor.UpdateSensor(); } else { return(StatusCode(400, new ErrorClass(400, "Nenhuma mudança encontrada", DateTime.Now))); } return(StatusCode(200, _converter.Parser(sensor))); } catch (MercurioCoreException ex) { return(StatusCode(400, new ErrorClass(400, ex.Message, DateTime.Now))); } catch (DBConnectionException ex) { return(StatusCode(500, new ErrorClass(500, ex.Message, DateTime.Now))); } }
public IActionResult CreateSensor([FromBody] SensorV sensorV) { try { Sensor sensor = _converter.Parser(sensorV); if (sensor == null) { return(StatusCode(404, new ErrorClass(404, "Sensor não encontrado", DateTime.Now))); } sensor.CreateSensor(); return(StatusCode(200, _converter.Parser(sensor))); } catch (MercurioCoreException ex) { return(StatusCode(400, new ErrorClass(400, ex.Message, DateTime.Now))); } catch (DBConnectionException ex) { return(StatusCode(500, new ErrorClass(500, ex.Message, DateTime.Now))); } }