prepare( "SELECT id, tanggal, jenis, nominal, sumber_dana AS sumber, keterangan FROM histori_bantuan WHERE warga_id = ? ORDER BY tanggal DESC" ); $stmt->execute([$wargaId]); jsonOk($stmt->fetchAll()); } // ── POST: Tambah bantuan baru ──────────────────────────────── if ($method === 'POST') { requireEdit(); $d = body(); if (empty($d['warga_id'])) jsonError('ID warga wajib diisi.'); if (empty($d['tanggal'])) jsonError('Tanggal wajib diisi.'); if (empty($d['jenis'])) jsonError('Program bantuan wajib dipilih.'); $stmt = $db->prepare( "INSERT INTO histori_bantuan (warga_id, tanggal, jenis, nominal, sumber_dana, keterangan, created_by) VALUES (?, ?, ?, ?, ?, ?, ?)" ); $stmt->execute([ $d['warga_id'], $d['tanggal'], $d['jenis'], $d['nominal'] ?? 0, $d['sumber_dana'] ?? '', $d['keterangan'] ?? '', $user['id'] ]); jsonOk(['id' => $db->lastInsertId()], 'Data bantuan berhasil ditambahkan'); } // ── DELETE: Hapus bantuan ──────────────────────────────────── if ($method === 'DELETE') { requireEdit(); $id = getParam('id'); if (!$id) jsonError('ID bantuan wajib disertakan.'); $db->prepare("DELETE FROM histori_bantuan WHERE id = ?")->execute([$id]); jsonOk(null, 'Data bantuan berhasil dihapus'); } jsonError('Method tidak valid', 405);