first commit
This commit is contained in:
@@ -0,0 +1,146 @@
|
||||
# Debugging Guide: Warning Billing Sign Not Updating
|
||||
|
||||
## Langkah-Langkah Debug:
|
||||
|
||||
### 1. Buka Console Browser (F12)
|
||||
- Tekan `F12` → Tab **Console**
|
||||
- Pastikan console kosong (tidak ada error merah)
|
||||
|
||||
### 2. Test Flow:
|
||||
1. Buka halaman **Billing Pasien**
|
||||
2. **Cari pasien** yang sudah punya billing history
|
||||
3. **Buka Edit Modal** (klik tombol edit)
|
||||
4. **Ubah tindakan** (tambah atau hapus)
|
||||
5. **Klik Simpan Perubahan**
|
||||
6. **Tunggu** dan lihat console logs
|
||||
|
||||
### 3. Baca Console Logs Dalam Order:
|
||||
|
||||
#### A. Pada saat klik Simpan:
|
||||
Cari logs dengan pattern:
|
||||
```
|
||||
🚀 Mengirim request ke backend:
|
||||
```
|
||||
**Verify:**
|
||||
- URL benar: `/billing/{id}`
|
||||
- Method: PUT
|
||||
- `total_tarif_rs_value` ada dan tidak undefined
|
||||
- Value-nya angka (bukan 0 jika ada tindakan)
|
||||
|
||||
#### B. Setelah Simpan Berhasil:
|
||||
Cari logs dengan pattern:
|
||||
```
|
||||
📢 Billing data updated event received:
|
||||
```
|
||||
**Ini menandakan:** Event berhasil di-dispatch dari modal
|
||||
|
||||
Kemudian cari:
|
||||
```
|
||||
🔄 Triggering loadBillingAktifHistory for:
|
||||
```
|
||||
**Ini menandakan:** Event listener di-trigger
|
||||
|
||||
#### C. API Response Check:
|
||||
Cari logs dengan pattern:
|
||||
```
|
||||
📡 Full API Response:
|
||||
```
|
||||
**Ini menunjukkan:** Response dari GET /billing/aktif
|
||||
|
||||
**Buka detail:** Expand object dan cari:
|
||||
- `data.billing.total_tarif_rs` - harus nilai baru (bukan 0)
|
||||
- `data.billing.total_klaim` - total BPJS
|
||||
|
||||
#### D. Tarif Extraction:
|
||||
Cari logs dengan pattern:
|
||||
```
|
||||
🔍 Tarif Extraction Debug:
|
||||
```
|
||||
**Verify:**
|
||||
- `storedTotalTarif` - apakah value dari API terambil?
|
||||
- `calculatedTotalTarif` - berapa nilai calculated-nya?
|
||||
- `finalTotalTarif` - mana yang dipakai (stored atau calculated)?
|
||||
|
||||
#### E. State Update:
|
||||
Cari logs dengan pattern:
|
||||
```
|
||||
💾 Setting TotalTarifRS:
|
||||
💾 Setting BillingHistory with:
|
||||
```
|
||||
**Verify:**
|
||||
- Value yang di-set berapa?
|
||||
- Apakah nilai yang di-set berbeda dari nilai sebelumnya?
|
||||
|
||||
#### F. Live Values:
|
||||
Cari logs dengan pattern:
|
||||
```
|
||||
📈 Live Values Changed:
|
||||
```
|
||||
**Verify:**
|
||||
- `totalTarifRS` - apakah berubah dari sebelumnya?
|
||||
- `totalKlaimBPJSLive` - berapa nilainya?
|
||||
- `liveBillingSign` - berapa hasilnya (Hijau/Kuning/Merah)?
|
||||
|
||||
### 4. Jika Ada Error:
|
||||
Cari logs merah (error) atau orange (warning). Catat isi-nya persis.
|
||||
|
||||
### 5. Screenshot/Copy Console Output:
|
||||
Setelah test selesai:
|
||||
1. Right-click di console → "Save as..."
|
||||
2. Atau screenshot dari Browser DevTools
|
||||
3. Share dengan informasi:
|
||||
- Nama pasien yang di-test
|
||||
- Tindakan apa yang di-ubah
|
||||
- Console log output lengkap
|
||||
|
||||
## Possible Issues & Solutions:
|
||||
|
||||
### Issue 1: Event tidak ter-trigger
|
||||
**Log yang terlihat:** Tidak ada `📢 Billing data updated event received:`
|
||||
**Penyebab:**
|
||||
- Modal tidak dispatch event
|
||||
- Event listener tidak register
|
||||
**Fix:** Check di modal if `window.dispatchEvent` di-execute
|
||||
|
||||
### Issue 2: API Response tidak punya total_tarif_rs baru
|
||||
**Log yang terlihat:** `📡 Full API Response` menunjukkan `total_tarif_rs` = 0 atau nilai lama
|
||||
**Penyebab:**
|
||||
- Backend tidak menerima `total_tarif_rs` di request
|
||||
- Backend tidak update ke database
|
||||
**Fix:** Check apakah request PUT ke backend include `total_tarif_rs`
|
||||
|
||||
### Issue 3: State tidak update walaupun API response benar
|
||||
**Log yang terlihat:** `finalTotalTarif` benar tapi `💾 Setting TotalTarifRS` tidak ada
|
||||
**Penyebab:**
|
||||
- Exception di loadBillingAktifHistory
|
||||
- setState tidak execute
|
||||
**Fix:** Check console untuk error messages
|
||||
|
||||
### Issue 4: State update tapi UI tidak berubah
|
||||
**Log yang terlihat:** `📈 Live Values Changed` menunjukkan nilai baru tapi card masih lama
|
||||
**Penyebab:**
|
||||
- Component tidak re-render
|
||||
- UI logic salah
|
||||
**Fix:** Check React DevTools untuk component state
|
||||
|
||||
---
|
||||
|
||||
## Copy-Paste Template untuk Report:
|
||||
|
||||
```
|
||||
## Test Result:
|
||||
- Pasien: [nama pasien yang di-test]
|
||||
- Tindakan yang di-ubah: [apa yang di-ubah]
|
||||
|
||||
### Console Logs:
|
||||
[Paste semua console log output di sini]
|
||||
|
||||
### Observations:
|
||||
1. Event triggered? [Ya/Tidak]
|
||||
2. API response punya total_tarif_rs baru? [Ya/Tidak, value: ...]
|
||||
3. State terupdate? [Ya/Tidak, value: ...]
|
||||
4. UI berubah? [Ya/Tidak]
|
||||
|
||||
### Error Messages (jika ada):
|
||||
[Paste error message di sini]
|
||||
```
|
||||
Reference in New Issue
Block a user