From f2220bb5db247956e3a59fd67af2dcdee1b4ac0c Mon Sep 17 00:00:00 2001 From: Muhammad Izza Alfiansyah Date: Tue, 9 Jul 2024 21:52:31 +0700 Subject: [PATCH] add development of composition to history --- website/src/App.tsx | 43 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) diff --git a/website/src/App.tsx b/website/src/App.tsx index d3cf3c2..08126ff 100644 --- a/website/src/App.tsx +++ b/website/src/App.tsx @@ -89,11 +89,54 @@ export default function (props: JSX.HTMLAttributes) { const rentang_suhu = auto ? suhu_min + " - " + suhu_max : "-"; + const { data } = await supabase + .from("kondisi_tapai") + .select("kadar_gas, created_time") + .order("created_time"); + + let perubahan_komposisi: any[] = []; + + if (data) { + const waktuAwal: number = data![0].created_time; + const dataAkhir = data[data.length - 1]; + + data.forEach((item) => { + const jam_ke = Math.round((item.created_time - waktuAwal) / 3600); + const lastIndex = perubahan_komposisi.length - 1; + const lastKomposisi = perubahan_komposisi[lastIndex]; + if (jam_ke % 6 == 0) { + if (lastKomposisi?.jam_ke == jam_ke) { + perubahan_komposisi[lastIndex].kadar_gas = item.kadar_gas; + } else { + perubahan_komposisi.push({ + kadar_gas: item.kadar_gas, + jam_ke, + }); + } + } + }); + + const jam_akhir = Math.round((dataAkhir.created_time - waktuAwal) / 3600); + + if ( + perubahan_komposisi[perubahan_komposisi.length - 1]?.jam_ke == jam_akhir + ) { + perubahan_komposisi[perubahan_komposisi.length - 1].kadar_gas = + dataAkhir.kadar_gas; + } else { + perubahan_komposisi.push({ + kadar_gas: dataAkhir.kadar_gas, + jam_ke: jam_akhir, + }); + } + } + await supabase .from("histori_fermentasi") .update({ selesai: true, rentang_suhu, + perubahan_komposisi, }) .eq("id", lastHistori()?.id);