Files
Webgis_final/01/php/simpan_bpjs.php
T
2026-06-10 23:17:11 +07:00

65 lines
2.4 KiB
PHP

<?php
// ========================================
// FILE: php/simpan_bpjs.php
// Menyimpan data BPJS
// ========================================
include 'koneksi.php';
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
$id_masyarakat = intval($_POST['id_masyarakat'] ?? 0);
$no_peserta = sanitize($_POST['no_peserta'] ?? '', $conn);
$jenis_bpjs = sanitize($_POST['jenis_bpjs'] ?? 'Kesehatan', $conn);
$tingkat = sanitize($_POST['tingkat'] ?? 'Penerima Bantuan Iuran (PBI)', $conn);
$tanggal_daftar = sanitize($_POST['tanggal_daftar'] ?? '', $conn);
$status_aktif = sanitize($_POST['status_aktif'] ?? 'Aktif', $conn);
$faskes = sanitize($_POST['faskes_tingkat_1'] ?? '', $conn);
// VALIDASI
if ($id_masyarakat == 0 || empty($no_peserta) || empty($tanggal_daftar)) {
sendJSON('error', 'Data wajib lengkap: ID, No Peserta, Tanggal');
}
// CEK MASYARAKAT EXIST
$check = $conn->query("SELECT id FROM masyarakat_miskin WHERE id = $id_masyarakat");
if ($check->num_rows == 0) {
sendJSON('error', 'ID Masyarakat tidak ditemukan');
}
// CEK DUPLIKAT NO PESERTA
$cek_dup = $conn->query("SELECT id FROM bpjs_record WHERE no_peserta = '$no_peserta' AND id_masyarakat != $id_masyarakat");
if ($cek_dup->num_rows > 0) {
sendJSON('error', 'Nomor peserta sudah terdaftar untuk masyarakat lain');
}
// QUERY INSERT atau UPDATE
$existing = $conn->query("SELECT id FROM bpjs_record WHERE id_masyarakat = $id_masyarakat");
if ($existing->num_rows > 0) {
// UPDATE
$query = "UPDATE bpjs_record SET
no_peserta = '$no_peserta',
jenis_bpjs = '$jenis_bpjs',
tingkat = '$tingkat',
tanggal_daftar = '$tanggal_daftar',
status_aktif = '$status_aktif',
faskes_tingkat_1 = '$faskes'
WHERE id_masyarakat = $id_masyarakat";
} else {
// INSERT
$query = "INSERT INTO bpjs_record
(id_masyarakat, no_peserta, jenis_bpjs, tingkat, tanggal_daftar, status_aktif, faskes_tingkat_1)
VALUES
($id_masyarakat, '$no_peserta', '$jenis_bpjs', '$tingkat', '$tanggal_daftar', '$status_aktif', '$faskes')";
}
if ($conn->query($query) === TRUE) {
sendJSON('success', 'Data BPJS berhasil disimpan');
} else {
sendJSON('error', 'Gagal menyimpan: ' . $conn->error);
}
}
?>