feat: Remove test scenario functionality and update related components for real MQTT data usage

This commit is contained in:
Siwat Sirichai 2025-06-21 15:35:24 +07:00
parent fd8cacd62b
commit 738ae59c69
5 changed files with 36 additions and 290 deletions

View file

@ -11,7 +11,7 @@ export interface SensorData {
currentValue: number; // Changed from currentPressure to currentValue (0-4095)
data: Array<{ time: string; timestamp: number; value: number }>; // Changed from pressure to value
status: string;
source?: 'hardware' | 'mock';
source?: 'hardware';
pin?: number;
digitalState?: number;
warningThreshold?: number;
@ -132,8 +132,7 @@ export const useBedPressureStore = create<BedPressureStore>((set, get) => ({
console.error('Failed to fetch sensor config:', error);
}
},
fetchSensorData: async () => {
fetchSensorData: async () => {
try {
const response = await fetch('/api/sensors');
const data = await response.json();
@ -143,12 +142,13 @@ export const useBedPressureStore = create<BedPressureStore>((set, get) => ({
const updated = { ...sensorData };
const newAlerts: Alert[] = [];
// Only process hardware sensors, no mock data
data.sensors.forEach((sensor: {
id: string;
label: string;
zone: string;
value: number; // Changed from pressure to value
source: 'hardware' | 'mock';
value: number;
source: 'hardware';
pin?: number;
digitalState?: number;
warningThreshold?: number;
@ -156,6 +156,10 @@ export const useBedPressureStore = create<BedPressureStore>((set, get) => ({
warningDelayMs?: number;
status?: string;
}) => {
// Only process hardware data
if (sensor.source !== 'hardware') {
return;
}
const currentSensor = updated[sensor.id];
const newValue = sensor.value;
const config = sensorConfig.find(s => s.id === sensor.id);
@ -224,9 +228,7 @@ export const useBedPressureStore = create<BedPressureStore>((set, get) => ({
} else {
warningStartTime = undefined; // Clear warning timer
alarmManager.clearAlarm(sensor.id); // Clear any existing alarms
}
// Update sensor data
} // Update sensor data
updated[sensor.id] = {
...sensorConfig.find(s => s.id === sensor.id),
id: sensor.id,
@ -236,7 +238,7 @@ export const useBedPressureStore = create<BedPressureStore>((set, get) => ({
label: sensor.label,
currentValue: newValue,
data: currentSensor ? [
...currentSensor.data.slice(1),
...currentSensor.data.slice(-100), // Keep only last 100 points
{
time: new Date().toLocaleTimeString("en-US", { hour12: false }),
timestamp: Date.now(),