Skip to content

Commit 02ab1e2

Browse files
committed
Fix embedded-backend API route
1 parent 5f83989 commit 02ab1e2

File tree

4 files changed

+13
-34
lines changed

4 files changed

+13
-34
lines changed

backend/controller/moisture_controller.py

Lines changed: 2 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
add_moisture_data = APIRouter()
1414

1515

16-
@add_moisture_data.post("/api/send-data", response_model=dict)
16+
@add_moisture_data.post("/api/sensor/data", response_model=dict)
1717
def add_moisture_entry(
1818
sensors: MoistureDataListSchema,
1919
service: SensorService = Depends(get_service)
@@ -34,29 +34,7 @@ def add_moisture_entry(
3434
except Exception as e:
3535
return JSONResponse(status_code=500, content={"status": "error", "message": f"Unexpected error: {str(e)}"})
3636

37-
@add_moisture_data.post("/api/send-current", response_model=dict)
38-
async def send_current_data(
39-
sensors: MoistureDataSchema,
40-
service: SensorService = Depends(get_service)
41-
):
42-
try:
43-
sensors = [sensors]
44-
# Call the service layer to add sensor moisture data
45-
response = service.receive_moisture_data(sensors)
46-
47-
# Check if the response contains an error
48-
if "error" in response:
49-
status_code = 400 if "Invalid Request" in response["error"] else 500
50-
return JSONResponse(status_code=status_code, content={"status": "error", "error": response["error"]})
51-
52-
return JSONResponse(status_code=200, content=response)
53-
54-
except HTTPException as he:
55-
raise he
56-
except Exception as e:
57-
return JSONResponse(status_code=500, content={"status": "error", "message": f"Unexpected error: {str(e)}"})
58-
59-
@add_moisture_data.get("/api/send-current", response_model=dict)
37+
@add_moisture_data.get("/api/sensor/data", response_model=dict)
6038
async def get_current_data(
6139
service: SensorService = Depends(get_service)
6240
):

backend/dal/sensor_dal.py

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -14,17 +14,17 @@ def receive_moisture_data(self, sensors: List[MoistureDataSchema]):
1414
try:
1515
# Bulk insert query
1616
insert_query = """
17-
INSERT INTO sensorsdata (
18-
readingid, timestamp, deviceid, sensorid, adcvalue, moisturelevel, digitalstatus,
19-
weathertemp, weatherhumidity, weathersunlight, weatherwindspeed, location, weatherfetched
20-
) VALUES %s RETURNING readingid;
17+
INSERT INTO sensors (
18+
id, timestamp, sensor_id, adc_value, moisture_level, digital_status,
19+
weather_temp, weather_humidity, weather_sunlight, weather_wind_speed, location, weather_fetched, device_id
20+
) VALUES %s RETURNING id;
2121
"""
2222
# Convert list of objects to list of tuples
2323
values = [
2424
(
25-
sensor.id, sensor.timestamp, sensor.device_id, sensor.sensor_id, sensor.adc_value,
25+
sensor.id, sensor.timestamp, sensor.sensor_id, sensor.adc_value,
2626
sensor.moisture_level, sensor.digital_status, sensor.weather_temp, sensor.weather_humidity,
27-
sensor.weather_sunlight, sensor.weather_wind_speed, sensor.location, sensor.weather_fetched
27+
sensor.weather_sunlight, sensor.weather_wind_speed, sensor.location, sensor.weather_fetched, sensor.device_id
2828
)
2929
for sensor in sensors
3030
]

backend/models/models.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@ class Sensor(Base):
1414

1515
id = Column(Integer, primary_key=True, index=True)
1616
timestamp = Column(DateTime, nullable=False)
17-
device_id = Column(String, nullable=False)
1817
sensor_id = Column(Integer, nullable=False)
1918
adc_value = Column(Integer, nullable=False)
2019
moisture_level = Column(Float, nullable=False)
@@ -24,4 +23,5 @@ class Sensor(Base):
2423
weather_sunlight = Column(Float, nullable=False)
2524
weather_wind_speed = Column(Float, nullable=False)
2625
location = Column(String, nullable=False)
27-
weather_fetched = Column(DateTime, nullable=False)
26+
weather_fetched = Column(DateTime, nullable=False)
27+
device_id = Column(String, nullable=False)

backend/schemas/sensor_schema.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,17 +5,18 @@
55
class MoistureDataSchema(BaseModel):
66
id: int
77
timestamp: datetime
8-
device_id: str
98
sensor_id: int
109
adc_value: int
1110
moisture_level: float
1211
digital_status: str
1312
weather_temp: float
13+
weather_humidity: float
1414
weather_sunlight: float
1515
weather_wind_speed: float
16-
weather_humidity: float
1716
location: str # city, state, country
1817
weather_fetched: datetime
18+
device_id: str
19+
1920

2021

2122
class MoistureDataListSchema(BaseModel):

0 commit comments

Comments
 (0)