From b8b8ce95ce122111e326277f1cacf6df71a8f8d3 Mon Sep 17 00:00:00 2001 From: Mochamad ongki ramadani Date: Thu, 21 May 2026 16:53:31 +0700 Subject: [PATCH] . --- TODO.md | 2 +- .../lib/src/models/evaporasi.dart | 40 +++++++++++-------- 2 files changed, 24 insertions(+), 18 deletions(-) diff --git a/TODO.md b/TODO.md index a1b67bd..d111c6d 100644 --- a/TODO.md +++ b/TODO.md @@ -1,5 +1,5 @@ - [x] Pindahkan komponen pemilihan tanggal (📅 + EvaporasiPeriodSelector) di Evaporasi agar tampil di bawah grafik. - [x] Pastikan tidak ada perubahan logika state (hanya urutan widget/placement). -- [ ] Jalankan hot reload/build untuk verifikasi UI. +- [x] Jalankan hot reload/build untuk verifikasi UI. diff --git a/packages/monitoring_repository/lib/src/models/evaporasi.dart b/packages/monitoring_repository/lib/src/models/evaporasi.dart index 70ce899..ad5335d 100644 --- a/packages/monitoring_repository/lib/src/models/evaporasi.dart +++ b/packages/monitoring_repository/lib/src/models/evaporasi.dart @@ -42,15 +42,19 @@ class Evaporasi { } // ── Evaporasi (mm) ─────────────────────────────────── - final evaporasiVal = toDoubleSafe( - json['evaporasi_mm'] ?? - json['evaporasi'] ?? - json['evaporasiMm'] ?? - json['evaporation_mm'] ?? - json['evap_mm'] ?? - json['evaporasi_value'] ?? - json['evaporasi_k'], + // Dibalik: Mengambil dari field tinggi_air karena ditukar + final evaporasiRaw = toDoubleSafe( + json['tinggi_air_cm'] ?? + json['tinggi_air'] ?? + json['tinggiAir'] ?? + json['tinggiAir_cm'] ?? + json['water_level'] ?? + json['waterLevel'] ?? + json['tinggi_air_m'] ?? + json['tinggiAir_m'], ); + // Konversi cm ke mm dengan mengalikan 10 + final evaporasiVal = evaporasiRaw * 10.0; // ── Suhu (°C) ──────────────────────────────────────── // FIX: tambah 'suhu_air_c' sesuai field yang dikirim ESP32 @@ -65,16 +69,18 @@ class Evaporasi { final suhuVal = (suhuRaw < -50 || suhuRaw > 100) ? -1.0 : suhuRaw; // ── Tinggi Air (cm) ────────────────────────────────── - final tinggiVal = toDoubleSafe( - json['tinggi_air_cm'] ?? - json['tinggi_air'] ?? - json['tinggiAir'] ?? - json['tinggiAir_cm'] ?? - json['water_level'] ?? - json['waterLevel'] ?? - json['tinggi_air_m'] ?? - json['tinggiAir_m'], + // Dibalik: Mengambil dari field evaporasi karena ditukar + final tinggiRaw = toDoubleSafe( + json['evaporasi_mm'] ?? + json['evaporasi'] ?? + json['evaporasiMm'] ?? + json['evaporation_mm'] ?? + json['evap_mm'] ?? + json['evaporasi_value'] ?? + json['evaporasi_k'], ); + // Konversi mm ke cm dengan membagi 10 (misal 241.78 mm -> 24.18 cm) + final tinggiVal = tinggiRaw / 10.0; // ── Sanity check ───────────────────────────────────── final evaporasiFiltered =