# Ketentuan dalam membuat screen

Contoh screen dapat di lihat pada `ScreenMassa`. Maka selesaikan screen-screen berikut:
- `ScreenSuhu`
- `ScreenPuasa`
- `ScreenTensi`
- `ScreenGula`

Setiap screen terdapat 3 komponen utama:
- Quick Result (Optional)
- Form *
- Data List *

Ketentuan:
- Yang di wajibkan ada pada screen adalah `Form` dan `Data List`. Jika kedua komponen itu ada, maka akan di hitung sebagai poin.
- Fungsi yang diwajibkan ada pada setiap screen adalah `add`, dan `list`. Jika kedua fungsi itu ada, maka akan di hitung sebagai poin.
- Untuk form, terdapat input yang berbentuk seperti opsi, contoh pada `Suhu Badan`. Jika waktu tidak memungkinkan untuk membuat input opsi, `picker`, atau `dropdown`, `maka boleh di ganti dengan input text manual`.

# Dokumentasi API

Untuk dokumentasi API lebih lengkap dapat dibuka dengan Bruno di directory `bruno`.

End-Point: `https://uas.ditaajipratama.net/api/checkcare/<screen>/<crud>` <br>
Method: POST <br>
Body Content-Type: `application/json` <br>
Headers:
```json
{
	Authorization: "Bearer <auth_token>"
}
```

Daftar `<screen>` yang bisa dipakai:
- `bmi` untuk Berat Badan Ideal
- `temp` untuk Suhu Badan
- `fasting` untuk Riwayat Puasa
- `tension` untuk Tensi
- `glucose` untuk Gula Darah

Daftar `<crud>` yang bisa dipakai:
- `add` untuk menambahkan data
- `list` untuk menampilkan daftar data
- `remove` untuk menghapus data (Optional)

Contoh penggunaan:
```
https://uas.ditaajipratama.net/api/checkcare/bmi/list
```

Untuk `list` cukup dengan memanggil End-Point tanpa Body Content. <br>
Untuk `remove` cukup memberikan `id` pada Body (JSON) dari data yang ingin dihapus. Contoh: <br>
```json
{"id":1}
```
(Contoh jika `id` dari data adalah `1`)

Berikut adalah parameter pada Body untuk `add`:

### `bmi`

```json
{
  "weight":88,
  "height":175
}
```

### `temp`

```json
{
  "temperature":75,
  "unit":"C"
}
```
Note:
- `C` untuk Celsius dan `F` untuk Fahrenheit

### `fasting`

```json
{
  "when_last_eat":"2025-04-28 14:48:00",
  "when_last_drink":"2025-04-28 14:48:00"
}
```

### `tension`

```json
{
  "sys":88,
  "dia":88,
  "pulse":88,
  "note":"175"
}
```
Note:
- `sys` adalah Systolic (mmHg)
- `dia` adalah Diastolic (mmHg)
- `pulse` adalah detak jantung per menit

### `glucose`

```json
{
  "result":"88",
  "unit":"mg/dL",
  "method":"CBG",
  "location":"Right Hand",
  "tool":"Alat Doraemon"
}
```
Note:
- Pilihan `unit`: `mg/dL` atau `mmol/L`
- Pilihan `method`: Capillary Blood Glucose (`CBG`), Venous Plasma Glucose (`VPG`), `Arterial Blood Glucose`, atau `Interstitial Glucose`
