first commit
This commit is contained in:
@@ -0,0 +1,669 @@
|
||||
<?php
|
||||
require_once '../core/main.php';
|
||||
require _DOCROOT_ . 'vendor/autoload.php';
|
||||
|
||||
use \Verot\Upload\Upload;
|
||||
|
||||
ini_set('upload_max_filesize', '8M');
|
||||
ini_set('memory_limit', '1024M');
|
||||
|
||||
$sql_date = "select * from global_var where var_name = 'start_tarif_baru'";
|
||||
$tmp_date_start = $db->query($sql_date);
|
||||
$date_start = $tmp_date_start->fetchAll()[0];
|
||||
|
||||
$is_tarif_baru = false;
|
||||
if ($tmp_date_start->numRows() >0){
|
||||
$date_tarif_baru = $date_start['var_value'];
|
||||
if ($date_tarif_baru >= '2024-02-01'){
|
||||
$is_tarif_baru = true;
|
||||
}
|
||||
}
|
||||
|
||||
function file_save($file, $nomr, $noktp, $jenis)
|
||||
{
|
||||
|
||||
// handle upload
|
||||
$handle = new upload($file);
|
||||
$handle->file_max_size = '8M';
|
||||
$handle->file_new_name_body = $nomr . '_' . $jenis . '_' . $noktp;
|
||||
$handle->allowed = array('application/pdf', 'image/jpeg', 'image/png');
|
||||
if ($handle->uploaded) {
|
||||
$base_upload_dir = '../dokumen/';
|
||||
$nomr_dir = makeDir($base_upload_dir . $nomr . '/', 0777);
|
||||
$date_dir = makeDir($base_upload_dir . $nomr . '/' . date('Ymd'), 0777);
|
||||
|
||||
$handle->process($base_upload_dir . $nomr . '/' . date('Ymd') . '/');
|
||||
if ($handle->processed) {
|
||||
$handle->clean();
|
||||
// dd("Name : ".$handle->file_dst_name);
|
||||
return $handle->file_dst_pathname;
|
||||
} else {
|
||||
return $handle->error;
|
||||
}
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
$_error_msg = "";
|
||||
$pasienbaru = $_POST['PASIENBARU'];
|
||||
$status = $_POST['STATUS'];
|
||||
$carabayar = $_POST['KDCARABAYAR'];
|
||||
$ketemu = "0";
|
||||
$arr_namevar = array('PASIENBARU', 'STATUSPASIEN', 'NOMR', 'SHIFT', 'POLIKLINIK', 'DOKTERJAGA', 'TGLREG', 'KDCARABAYAR', 'jns_peserta', 'nokartu', 'NK', 'strujukan', 'KETRUJUK', 'KDRUJUK', 'norujukan', 'tglrujuk', 'diagnosa', 'diagnosa_utama', 'kelas', 'NAMA', 'CALLER', 'TEMPAT', 'TGLLAHIR', 'umur', 'ALAMAT', 'ALAMAT_KTP', 'bahasa', 'kebangsaan', 'KDPROVINSI', 'KOTA', 'KDKECAMATAN', 'KELURAHAN', 'NOTELP', 'notelprumah1', 'notelprumah2', 'notelpkantor', 'no_hp', 'NOKTP', 'sim', 'paspor', 'SUAMI_ORTU', 'PEKERJAAN', 'nama_penanggungjawab', 'hubungan_penanggungjawab', 'alamat_penanggungjawab', 'phone_penanggungjawab', 'asal_masuk', 'JENISKELAMIN', 'STATUS', 'AGAMA', 'PENDIDIKAN', 'disabilitas', 'hambatan_komunikasi', 'kepercayaan');
|
||||
$arr_url = array();
|
||||
foreach ($arr_namevar as $l) {
|
||||
$name = ($l == 'NOMR') ? 'xNOMR' : $l;
|
||||
$value = (array_key_exists($l, $_POST)) ? $_POST[$l] : '';
|
||||
$arr_url[] = $name . '=' . $value;
|
||||
}
|
||||
if ($pasienbaru == 1) {
|
||||
foreach ($_POST as $key => $val) {
|
||||
$$key = $val;
|
||||
}
|
||||
|
||||
#if(strlen($_POST['NOMR'])!=6) $_error_msg = $_error_msg."No MR Belum Lengkap, ";
|
||||
// if($_POST['KDRUJUK']=="") $_error_msg = $_error_msg."Asal Pasien Belum Dipilih, ";
|
||||
if ($_POST['NOKTP'] == "") $_error_msg = $_error_msg . "No KTP Belum Diisi ";
|
||||
if ($_POST['SHIFT'] == "") $_error_msg = $_error_msg . "Shift Belum Dipilih, ";
|
||||
if ($_POST['NAMA'] == "") $_error_msg = $_error_msg . "Nama Pasien Belum Diisi, ";
|
||||
if ($_POST['TEMPAT'] == "") $_error_msg = $_error_msg . "Tempat Lahir Belum Lengkap, ";
|
||||
if ($_POST['TGLLAHIR'] == "") $_error_msg = $_error_msg . "Tanggal Lahir Belum Lengkap, ";
|
||||
if ($_POST['JENISKELAMIN'] == "") $_error_msg = $_error_msg . "Jenis Kelamin Belum Dipilih, ";
|
||||
if ($_POST['ALAMAT'] == "") $_error_msg = $_error_msg . "Alamat Belum Lengkap, ";
|
||||
if ($_POST['kebangsaan'] == 'WNI') {
|
||||
if ($_POST['KELURAHAN'] == "") $_error_msg = $_error_msg . "Kelurahan Belum Dipilih, ";
|
||||
if ($_POST['KDKECAMATAN'] == "") $_error_msg = $_error_msg . "Kecamatan Belum Dipilih, ";
|
||||
if ($_POST['KOTA'] == "") $_error_msg = $_error_msg . "Kota Belum Lengkap, ";
|
||||
if ($_POST['KDPROVINSI'] == "") $_error_msg = $_error_msg . "Provinsi Belum Lengkap, ";
|
||||
} else {
|
||||
if ($_POST['paspor'] == "") $_error_msg = $_error_msg . "Paspor Belum Diisi, ";
|
||||
}
|
||||
if ($_POST['POLIKLINIK'] == "") $_error_msg = $_error_msg . "Poli Belum Dipilih, ";
|
||||
|
||||
// cek noktp
|
||||
$tmp_cek = $db->query("SELECT nama from m_pasien where noktp = '" . $_POST['NOKTP'] . "'");
|
||||
if ($tmp_cek->numRows() > 0) {
|
||||
$data_pasien = $tmp_cek->fetchFirst();
|
||||
|
||||
$_error_msg .= 'No KTP tersebut sudah terdaftar dengan nama ' . $data_pasien['nama'];
|
||||
}
|
||||
}
|
||||
|
||||
if (!isset($_REQUEST['DOKTERJAGA'])) $_error_msg = $_error_msg . "Dokter Jaga Belum Ada, ";
|
||||
if (strlen($_error_msg) > 0) {
|
||||
$_error_msg = substr($_error_msg, 0, strlen($_error_msg) - 2) . ".";
|
||||
echo json_encode(['message' => $_error_msg, 'type' => 'error']);
|
||||
exit;
|
||||
} else {
|
||||
$str_url = implode("&", $arr_url);
|
||||
if ((empty($_SESSION['register_nomr'])) && (empty($_SESSION['register_nama']))) {
|
||||
|
||||
$sqlrak = $db->query("SELECT * from m_maxnomr where status='1'");
|
||||
$rsqlrak = $sqlrak->fetchAll();
|
||||
$rowsqlrak = $rsqlrak[0];
|
||||
$nomr_berikutnya = no_rm_billing($rowsqlrak['last2']);
|
||||
|
||||
$nomr_cari = trim($_POST['NOMR']);
|
||||
if (array_key_exists('NOMR', $_POST) && trim($_POST['NOMR']) != '') {
|
||||
|
||||
$sqlsearchpasien = $db->query("SELECT NAMA from m_pasien WHERE NOMR = '" . trim($_POST['NOMR']) . "'");
|
||||
if ($_POST['PASIENBARU'] == "1") {
|
||||
if ($sqlsearchpasien->numRows() > 0) {
|
||||
// jika nomr sudah ada pada m_pasien maka gunakan nomr tersebut
|
||||
$ketemu = "1";
|
||||
$nomr = trim($_POST['NOMR']);
|
||||
|
||||
$tglreg = $_POST['TGLREG'];
|
||||
// cek kunjungan hari ini, apakah ada kunjungan dengan NOMR yang sama pada hari yang sama
|
||||
$qu_kunjungan = $db->query("SELECT * from t_pendaftaran where NOMR = '{$nomr}' and TGLREG = '$tglreg' and status in (0,5,10,13,99,1) and st_asal_masuk = '{$_POST['asal_masuk']}'");
|
||||
|
||||
if ($qu_kunjungan->numRows() > 0) {
|
||||
$data_kunjungan = $qu_kunjungan->fetchAll()[0];
|
||||
$sel_poly = $db->query("SELECT no as kode,nama from m_ruang where subsistem like 'RAWAT JALAN%'");
|
||||
$arr_poly = [];
|
||||
foreach ($sel_poly->fetchAll() as $rowpoly) {
|
||||
$arr_poly[$rowpoly['kode']] = $rowpoly['nama'];
|
||||
}
|
||||
if ($data_kunjungan['status'] == 5) {
|
||||
$msg = 'Pasien dirujuk ke Poliklinik ' . $arr_poly[$data_kunjungan['keterangan_status']];
|
||||
} else {
|
||||
$msg = 'Pasien telah menerima pelayanan pada poliklinik ' . $arr_poly[$data_kunjungan['kdpoly']];
|
||||
}
|
||||
$type = 'warning';
|
||||
// warning
|
||||
// echo '<script>window.location.href="'._BASE_.'index.php?link=2&err=1";</script>';
|
||||
echo json_encode(['message' => $msg, 'type' => $type]);
|
||||
exit;
|
||||
}
|
||||
} else {
|
||||
$ketemu = 0;
|
||||
$nomr = $nomr_berikutnya;
|
||||
execute("UPDATE m_maxnomr set last2='$nomr' where status='1'");
|
||||
}
|
||||
} else {
|
||||
if ($sqlsearchpasien->numRows() > 0) {
|
||||
$ketemu = "1";
|
||||
$nomr = trim($_POST['NOMR']);
|
||||
$tglreg = $_POST['TGLREG'];
|
||||
// cek kunjungan hari ini, apakah ada kunjungan dengan NOMR yang sama pada hari yang sama
|
||||
$qu_kunjungan = $db->query("SELECT * from t_pendaftaran where NOMR = '{$nomr}' and TGLREG = '$tglreg' and status in (0,5,10,13,99,1) and st_asal_masuk = '{$_POST['asal_masuk']}'");
|
||||
|
||||
if ($qu_kunjungan->numRows() > 0) {
|
||||
$data_kunjungan = $qu_kunjungan->fetchAll()[0];
|
||||
$sel_poly = $db->query("SELECT no as kode,nama from m_ruang where subsistem like 'RAWAT JALAN%'");
|
||||
$arr_poly = [];
|
||||
foreach ($sel_poly->fetchAll() as $rowpoly) {
|
||||
$arr_poly[$rowpoly['kode']] = $rowpoly['nama'];
|
||||
}
|
||||
if ($data_kunjungan['status'] == 5) {
|
||||
$msg = 'Pasien dirujuk ke Poliklinik ' . $arr_poly[$data_kunjungan['keterangan_status']];
|
||||
} else {
|
||||
$msg = 'Pasien telah menerima pelayanan pada poliklinik ' . $arr_poly[$data_kunjungan['kdpoly']];
|
||||
}
|
||||
$type = 'warning';
|
||||
// warning
|
||||
// echo '<script>window.location.href="'._BASE_.'index.php?link=2&err=1";</script>';
|
||||
echo json_encode(['message' => $msg, 'type' => $type]);
|
||||
exit;
|
||||
} else {
|
||||
// lanjut
|
||||
}
|
||||
} else {
|
||||
//$nomr = $rowsqlrak['no_rak'].getLastNoM("1");
|
||||
$nomr = $nomr_berikutnya;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
$ketemu = 0;
|
||||
$nomr = $nomr_berikutnya;
|
||||
}
|
||||
|
||||
if (!empty($_POST['DOKTERJAGA'])) {
|
||||
$dokter = trim($_POST['DOKTERJAGA']);
|
||||
} else {
|
||||
$dokter = "NULL";
|
||||
}
|
||||
#print_r($_REQUEST);
|
||||
if (!empty($_POST['KDCARABAYAR'])) {
|
||||
$KDCARABAYAR = trim($_POST['KDCARABAYAR']);
|
||||
} else {
|
||||
$KDCARABAYAR = 1;
|
||||
}
|
||||
|
||||
if (empty($_POST['PENDIDIKAN'])) {
|
||||
$pendidikan = "NULL";
|
||||
} else {
|
||||
$pendidikan = $_POST['PENDIDIKAN'];
|
||||
}
|
||||
if (empty($_POST['AGAMA'])) {
|
||||
$agama = "NULL";
|
||||
} else {
|
||||
$agama = $_POST['AGAMA'];
|
||||
}
|
||||
if (empty($_POST['STATUS'])) {
|
||||
$status = "0";
|
||||
} else {
|
||||
$status = $_POST['STATUS'];
|
||||
}
|
||||
|
||||
// if(!empty($_POST['CALLER'])) {
|
||||
// $NAMADATA=str_replace(',',' ',$_POST['NAMA']).', '.$_REQUEST['CALLER'];
|
||||
// }else {
|
||||
// $NAMADATA=str_replace(',',' ',$_POST['NAMA']);
|
||||
// }
|
||||
$NAMADATA = preg_replace("/\'/", '`', $_POST['NAMA']);
|
||||
|
||||
if (empty($_POST['minta_rujukan'])) {
|
||||
$minta_rujukan = "0";
|
||||
} else {
|
||||
$minta_rujukan = "1";
|
||||
}
|
||||
|
||||
$NOKTP = $_POST['NOKTP'];
|
||||
$STTS = '';
|
||||
if ($NOKTP == '0000000000000000') {
|
||||
$STTS = '';
|
||||
} elseif ($NOKTP == '1111111111111111') {
|
||||
$STTS = '1111';
|
||||
} elseif ($NOKTP == '2222222222222222') {
|
||||
$STTS = '2222';
|
||||
}
|
||||
|
||||
$tmpTGLLAHIR = date('Y-m-d', strtotime(str_replace('/', '-', $_POST['TGLLAHIR'])));
|
||||
if ($ketemu == "1") {
|
||||
$arr_pasien = [
|
||||
'ALAMAT' => preg_replace("/\'/", '`', trim($_POST['ALAMAT'])),
|
||||
'KELURAHAN' => ((trim($_POST['KELURAHAN']) != '') ? $_POST['KELURAHAN'] : 0),
|
||||
'KDKECAMATAN' => ((trim($_POST['KDKECAMATAN']) != '') ? $_POST['KDKECAMATAN'] : 0),
|
||||
'KOTA' => ((trim($_POST['KOTA']) != '') ? $_POST['KOTA'] : 0),
|
||||
'KDPROVINSI' => ((trim($_POST['KDPROVINSI']) != '') ? $_POST['KDPROVINSI'] : 0),
|
||||
'NOTELP' => trim($_POST['NOTELP']),
|
||||
'NOKTP' => trim($NOKTP),
|
||||
'ALAMAT_KTP' => preg_replace("/\'/", '`', trim($_POST['ALAMAT_KTP'])),
|
||||
'JNS_PASIEN' => trim($_POST['jns_peserta']),
|
||||
'st_disabilitas' => ['value' => (($_POST['st_disabilitas'] != '') ? $_POST['st_disabilitas'] : 0), 'type' => 'number'],
|
||||
'disabilitas' => $_POST['disabilitas'],
|
||||
'hambatan_komunikasi' => $_POST['hambatan_komunikasi'],
|
||||
'NIP' => $_SESSION['NIP'],
|
||||
'no_kartu' => $_POST['nokartu'],
|
||||
'ktp_file' => (($_FILES['ktp_file']) ? file_save($_FILES['ktp_file'], $nomr_cari, trim($NOKTP), 'KTP') : ''),
|
||||
'kk_file' => (($_FILES['kk_file']) ? file_save($_FILES['kk_file'], $nomr_cari, trim($NOKTP), 'KK') : '')
|
||||
];
|
||||
|
||||
$sqlupdate_pasien = "UPDATE m_pasien " . bind_sql($arr_pasien, 1) . " WHERE NOMR = '$nomr'";
|
||||
|
||||
$save_pasien = execute($sqlupdate_pasien);
|
||||
} else {
|
||||
$m_provinsi = $db->query("SELECT * from m_provinsi where idprovinsi = {$_POST['KDPROVINSI']} ");
|
||||
$dt_provinsi = $m_provinsi->fetchFirst()['namaprovinsi'];
|
||||
|
||||
$m_kota = $db->query("SELECT * from m_kota where idkota = {$_POST['KOTA']}");
|
||||
$dt_kota = $m_kota->fetchFirst()['namakota'];
|
||||
|
||||
$m_kecamatan = $db->query('SELECT * from m_kecamatan where idkecamatan = ' . $_POST['KDKECAMATAN']);
|
||||
$dt_kecamatan = $m_kecamatan->fetchFirst()['namakecamatan'];
|
||||
|
||||
$m_kelurahan = $db->query('SELECT * from m_kelurahan where idkelurahan = ' . $_POST['KELURAHAN']);
|
||||
$dt_kelurahan = $m_kelurahan->fetchFirst()['namakelurahan'];
|
||||
|
||||
$m_status_pasien = $db->query('SELECT * from m_status_pasien where id_status = ' . $status);
|
||||
$dt_status = $m_status_pasien->fetchFirst()['nama_status'];
|
||||
|
||||
$m_agama_pasien = $db->query('SELECT * from m_agama_pasien where id_agama = ' . $agama);
|
||||
$dt_agama = $m_agama_pasien->fetchFirst()['nama_agama'];
|
||||
|
||||
$m_pendidikan_pasien = $db->query('SELECT * from m_pendidikan_pasien where id_pendidikan = ' . $pendidikan);
|
||||
$dt_pendidikan = $m_pendidikan_pasien->fetchFirst()['nama_pendidikan'];
|
||||
|
||||
$arr_data_pasien = [
|
||||
'nomr' => $_POST['NOMR'],
|
||||
'nomr_baru' => $nomr,
|
||||
'nama' => $NAMADATA,
|
||||
'tempat' => preg_replace("/\'/", '`', $_POST['TEMPAT']),
|
||||
'tgllahir' => $tmpTGLLAHIR,
|
||||
'jeniskelamin' => $_POST['JENISKELAMIN'],
|
||||
'alamat' => preg_replace("/\'/", '`', trim($_POST['ALAMAT'])),
|
||||
'kelurahan' => ['value' => (($_POST['KELURAHAN'] == '') ? 0 : $_POST['KELURAHAN']), 'type' => 'number'],
|
||||
'kdkecamatan' => ['value' => $_POST['KDKECAMATAN'], 'type' => 'number'],
|
||||
'kota' => ['value' => $_POST['KOTA'], 'type' => 'number'],
|
||||
'kdprovinsi' => ['value' => $_POST['KDPROVINSI'], 'type' => 'number'],
|
||||
'notelp' => str_replace("_", '', $_POST['NOTELP']),
|
||||
'noktp' => str_replace("_", '', $NOKTP),
|
||||
'suami_ortu' => preg_replace("/\'/", '`', $_POST['SUAMI_ORTU']),
|
||||
'pekerjaan' => $_POST['PEKERJAAN'],
|
||||
'status' => ['value' => $status, 'type' => 'number'],
|
||||
'agama' => ['value' => $agama, 'type' => 'number'],
|
||||
'pendidikan' => ['value' => $pendidikan, 'type' => 'number'],
|
||||
'kdcarabayar' => ['value' => $_POST['KDCARABAYAR'], 'type' => 'number'],
|
||||
'nip' => $_SESSION['NIP'],
|
||||
'tgldaftar' => $_POST['TGLREG'],
|
||||
'alamat_ktp' => preg_replace("/\'/", '`', $_POST['ALAMAT_KTP']),
|
||||
'title' => $_POST['CALLER'],
|
||||
'penanggungjawab_nama' => preg_replace("/\'/", '`', $_POST['nama_penanggungjawab']),
|
||||
'penanggungjawab_hubungan' => $_POST['hubungan_penanggungjawab'],
|
||||
'penanggungjawab_alamat' => preg_replace("/\'/", '`', $_POST['alamat_penanggungjawab']),
|
||||
'penanggungjawab_phone' => $_POST['phone_penanggungjawab'],
|
||||
'no_kartu' => $_POST['nokartu'],
|
||||
'jns_pasien' => $_POST['jns_peserta'],
|
||||
'sim' => str_replace("_", '', $_POST['sim']),
|
||||
'paspor' => str_replace("_", '', $_POST['paspor']),
|
||||
'st_disabilitas' => ['value' => (array_key_exists('st_disabilitas', $_POST) ? $_POST['st_disabilitas'] : 0), 'type' => 'number'],
|
||||
'disabilitas' => $_POST['disabilitas'],
|
||||
'bahasa' => $_POST['bahasa'],
|
||||
'hambatan_komunikasi' => $_POST['hambatan_komunikasi'],
|
||||
'kebangsaan' => $_POST['kebangsaan'],
|
||||
'notelprumah1' => str_replace("_", '', $_POST['notelprumah1']),
|
||||
'notelprumah2' => str_replace("_", '', $_POST['notelprumah2']),
|
||||
'notelpkantor' => str_replace("_", '', $_POST['notelpkantor']),
|
||||
'no_hp' => str_replace("_", '', $_POST['no_hp']),
|
||||
'kepercayaan' => $_POST['kepercayaan'],
|
||||
'suku' => $_POST['suku'],
|
||||
'agama_lain' => $_POST['agama_lain'],
|
||||
'txt_kelurahan' => $dt_kelurahan,
|
||||
'txt_kecamatan' => $dt_kecamatan,
|
||||
'txt_kota' => $dt_kota,
|
||||
'txt_provinsi' => $dt_provinsi,
|
||||
'txt_status' => $dt_status,
|
||||
'txt_agama' => $dt_agama,
|
||||
'txt_pendidikan' => $dt_pendidikan,
|
||||
'nama_ayah' => preg_replace("/\'/", '`', $_POST['nama_ayah_kandung']),
|
||||
'nama_ibu' => preg_replace("/\'/", '`', $_POST['nama_ibu_kandung']),
|
||||
'pendidikan_ayah' => $_POST['pendidikan_ayah'],
|
||||
'pendidikan_ibu' => $_POST['pendidikan_ibu'],
|
||||
'st_identitas_ortu' => ['value' => (array_key_exists('st_identitas_ortu', $_POST) ? $_POST['st_identitas_ortu'] : 0), 'type' => 'number'],
|
||||
'ktp_file' => (($_FILES['ktp_file']) ? file_save($_FILES['ktp_file'], $nomr_cari, str_replace("_", '', $NOKTP), 'KTP') : ''),
|
||||
'kk_file' => (($_FILES['kk_file']) ? file_save($_FILES['kk_file'], $nomr_cari, str_replace("_", '', $NOKTP), 'KK') : ''),
|
||||
'created_at' => date('Y-m-d H:i:s')
|
||||
];
|
||||
$sqlinsert_pasien = "INSERT INTO m_pasien " . bind_sql($arr_data_pasien);
|
||||
|
||||
$save_pasien = execute($sqlinsert_pasien);
|
||||
}
|
||||
|
||||
$html = '';
|
||||
$type = 'error';
|
||||
if (!$save_pasien) {
|
||||
$msg = 'Gagal tambah/update pasien';
|
||||
} else {
|
||||
$NOJAMINAN = (array_key_exists('NOJAMINAN', $_POST)) ? $_POST['NOJAMINAN'] : NULL;
|
||||
$KETBAYAR = (array_key_exists('KETBAYAR', $_REQUEST)) ? $_REQUEST['KETBAYAR'] : NULL;
|
||||
$no_antri = get_antrian_poli($_POST['POLIKLINIK']);
|
||||
$no_kunjung = get_no_kunjungan();
|
||||
$kdrujuk = ($_POST['strujukan'] != 0) ? $_POST['KDRUJUK'] : 0;
|
||||
$ketrujuk = ($_POST['strujukan'] != 0) ? $_POST['KETRUJUK'][$kdrujuk] : 'TR';
|
||||
$tglrujuk = ($_POST['strujukan'] != 0) ? $_POST['tglrujuk'] : '0001-01-01';
|
||||
$norujukan = ($_POST['strujukan'] != 0) ? $_POST['norujukan'] : '';
|
||||
$arr_data_pendaftaran = [
|
||||
'nomr' => $_POST['NOMR'],
|
||||
'tglreg' => $_POST['TGLREG'],
|
||||
'kddokter' => ['value' => $dokter, 'type' => 'number'],
|
||||
'kdpoly' => ['value' => $_POST['POLIKLINIK'], 'type' => 'number'],
|
||||
'strujukan' => ['value' => $_POST['strujukan'], 'type' => 'number'],
|
||||
'kdrujuk' => ['value' => $kdrujuk, 'type' => 'number'],
|
||||
'kdcarabayar' => ['value' => $_POST['KDCARABAYAR'], 'type' => 'number'],
|
||||
'nojaminan' => $_POST['NOJAMINAN'],
|
||||
'jamreg' => date('Y-m-d H:i:s'),
|
||||
'masukpoly' => date('Y-m-d H:i:s'),
|
||||
'minta_rujukan' => $minta_rujukan,
|
||||
'shift' => ['value' => $_POST['SHIFT'], 'type' => 'number'],
|
||||
'pasienbaru' => ['value' => $pasienbaru, 'type' => 'number'],
|
||||
'nip' => $_SESSION['NIP'],
|
||||
'ketrujuk' => preg_replace("/\'/", '`', $ketrujuk),
|
||||
'tglrujukan' => $tglrujuk,
|
||||
'penanggungjawab_nama' => preg_replace("/\'/", '`', $_POST['nama_penanggungjawab']),
|
||||
'penanggungjawab_hubungan' => $_POST['hubungan_penanggungjawab'],
|
||||
'penanggungjawab_alamat' => preg_replace("/\'/", '`', $_POST['alamat_penanggungjawab']),
|
||||
'penanggungjawab_phone' => $_POST['phone_penanggungjawab'],
|
||||
'status' => ['value' => 0, 'type' => 'number'],
|
||||
'ketbayar' => $_REQUEST['KETBAYAR'],
|
||||
'nokartu' => $_REQUEST['nokartu'],
|
||||
'diagnosa_awal' => $_POST['diagnosa'],
|
||||
'diagnosa_utama' => $_POST['diagnosa_utama'],
|
||||
'kelas_daftar' => ['value' => $_POST['kelas'], 'type' => 'number'],
|
||||
'nosep' => $_POST['NK'],
|
||||
'nosipp' => $_POST['NSIIP'],
|
||||
'st_asal_masuk' => $_POST['asal_masuk'],
|
||||
'status_kecelakaan' => $_POST['status_kecelakaan'],
|
||||
'catatan' => $_POST['catatan'],
|
||||
'no_antrian' => $no_antri,
|
||||
'stts_ktp' => $STTS,
|
||||
'no_kunjung' => $no_kunjung,
|
||||
'norujukan' => $norujukan,
|
||||
'sep_file' => (($_FILES['sep_file']) ? file_save($_FILES['sep_file'], $nomr_cari, str_replace("_", '', $_POST['NK']), 'SEP') : ''),
|
||||
'sipp_file' => (($_FILES['sipp_file']) ? file_save($_FILES['sipp_file'], $nomr_cari, str_replace("_", '', date('Ymd')), 'SIPP') : '')
|
||||
];
|
||||
if (array_key_exists('dialisis', $_POST) && $_POST['dialisis'] == 1) {
|
||||
$arr_data_pendaftaran['subspesialis'] = $_POST['subspesialis'];
|
||||
}
|
||||
if ($_POST['POLIKLINIK'] == $_SESSION['poli_igd']) {
|
||||
$sqlinsert_pendaftaran = "INSERT INTO t_pendaftaran " . bind_sql($arr_data_pendaftaran);
|
||||
} else {
|
||||
unset($arr_data_pendaftaran['masukpoly']);
|
||||
$sqlinsert_pendaftaran = "INSERT INTO t_pendaftaran " . bind_sql($arr_data_pendaftaran);
|
||||
}
|
||||
if (_DBTYPE_ == 'mysqli') {
|
||||
$save_daftar = execute($sqlinsert_pendaftaran);
|
||||
$idx_daftar = $save_daftar->insertid;
|
||||
} else {
|
||||
$sqlinsert_pendaftaran .= " RETURNING idxdaftar";
|
||||
$save_daftar = execute($sqlinsert_pendaftaran);
|
||||
$result_daftar = $save_daftar->fetchFirst();
|
||||
$idx_daftar = $result_daftar['idxdaftar'];
|
||||
}
|
||||
|
||||
if (!$save_daftar) {
|
||||
$msg = 'Gagal tambah kunjungan';
|
||||
} else {
|
||||
// if($_POST['POLIKLINIK']=="51") {
|
||||
// $ins_operasi="INSERT INTO t_operasi(nomr, kdunit, idxdaftar, rajal, nip, tglorder) VALUES('".$nomr."', ".$_SESSION['KDUNIT'].", ".$idx_daftar.", 2, '".$_SESSION['NIP']."','".date('Y-m-d')."')";
|
||||
|
||||
// execute($ins_operasi);
|
||||
// }
|
||||
|
||||
// kirim berkas rm
|
||||
$rm['tgl_kirim'] = date('Y-m-d');
|
||||
$rm['jam_kirim_rm'] = date('H:i:s');
|
||||
$rm['idxdaftar'] = $idx_daftar;
|
||||
$rm['kdpoly'] = $_POST['POLIKLINIK'];
|
||||
$rm['pengirim'] = $_SESSION['NAMA_PEGAWAI'];
|
||||
$sql_rm = "INSERT into t_rekammedik " . bind_sql($rm);
|
||||
execute($sql_rm);
|
||||
|
||||
// GCU
|
||||
if ($_POST['POLIKLINIK'] == $_SESSION['kd_klinik_gcu']) {
|
||||
$tgllahir = date('Y-m-d', strtotime(str_replace('/', '-', $_POST['TGLLAHIR'])));
|
||||
$a = datediff($tgllahir, date("Y-m-d"));
|
||||
$umur = $a['years'] . " tahun " . $a['months'] . " bulan " . $a['days'] . " hari";
|
||||
$arr_gcu = $_POST['gcu'];
|
||||
if (is_array($arr_gcu['pemeriksaan']) && count($arr_gcu['pemeriksaan']) > 0) {
|
||||
$gcu_data['pemeriksaan'] = implode(',', $arr_gcu['pemeriksaan']);
|
||||
} else {
|
||||
$gcu_data['pemeriksaan'] = $arr_gcu['pemeriksaan'];
|
||||
}
|
||||
$gcu_data['idxdaftar'] = $idx_daftar;
|
||||
$gcu_data['nomr'] = $_POST['NOMR'];
|
||||
$gcu_data['nama_pasien'] = $NAMADATA;
|
||||
$gcu_data['alamat_pasien'] = preg_replace("/\'/", '`', $_POST['ALAMAT']);
|
||||
$gcu_data['no_telp_pasien'] = $_POST['NOTELP'];
|
||||
$gcu_data['umur_pasien'] = $umur;
|
||||
$gcu_data['jenis_kelamin'] = $_POST['JENISKELAMIN'];
|
||||
$gcu_data['pekerjaan'] = $_POST['PEKERJAAN'];
|
||||
$gcu_data['tanggal'] = $_POST['TGLREG'];
|
||||
$gcu_data['jam'] = date('H:i:s');
|
||||
unset($arr_gcu['pemeriksaan']);
|
||||
$insert_data = array_merge($arr_gcu, $gcu_data);
|
||||
|
||||
$insert_gcu = "INSERT INTO t_gcu " . bind_sql($insert_data);
|
||||
execute($insert_gcu);
|
||||
}
|
||||
if (!empty($_POST['start_daftar']) && !empty($_POST['stop_daftar'])) {
|
||||
$nomr_last = $_POST['NOMR'];
|
||||
$start_daftar = $_POST['start_daftar'];
|
||||
$stop_daftar = $_POST['stop_daftar'];
|
||||
|
||||
$sql_insert_time_daftar = "INSERT INTO t_pendaftaran_iso (idxdaftar, NOMR, start_daftar, stop_daftar) VALUES ($idx_daftar, '$nomr_last', '$start_daftar', '$stop_daftar')";
|
||||
execute($sql_insert_time_daftar);
|
||||
}
|
||||
|
||||
$db_igd = $db->query("SELECT no,nama FROM m_ruang where kelompok = 'IGD' and st_aktif = 1");
|
||||
$arr_igd = $arr_nama_igd = [];
|
||||
foreach ($db_igd->fetchAll() as $igd) {
|
||||
$arr_igd[] = $igd['no'];
|
||||
$arr_nama_igd[$igd['no']] = $igd['nama'];
|
||||
}
|
||||
|
||||
$kode_tarif_konsul = '';
|
||||
if (in_array($_POST['POLIKLINIK'], $arr_igd)) {
|
||||
// tarif daftar IGD
|
||||
$kode_tarif_daftar = ($is_tarif_baru) ? $_SESSION['tarif_daftar_igd_baru'] : $_SESSION['tarif_daftar_igd'];
|
||||
if ($is_tarif_baru){
|
||||
$kode_tarif_konsul = $_SESSION['tarif_konsul_igd_baru'];
|
||||
}
|
||||
|
||||
} else {
|
||||
// get tarif sesuai aturan
|
||||
if ($_POST['strujukan'] == 0) {
|
||||
// tarif daftar tanpa rujukan
|
||||
$kode_tarif_daftar = ($is_tarif_baru) ? $_SESSION['tarif_daftar_tanpa_rujukan_baru'] : $_SESSION['tarif_daftar_tanpa_rujukan'];
|
||||
} elseif ($_POST['strujukan'] == 1) {
|
||||
// tarif daftar dengan rujukan
|
||||
if ($_POST['KDRUJUK'] == 2) { // jika rujukan dari faskes swasta
|
||||
$kode_tarif_daftar = ($is_tarif_baru) ? $_SESSION['tarif_daftar_dg_rujukan_baru'] : $_SESSION['tarif_daftar_dg_rujukan'];
|
||||
} else {
|
||||
$kode_tarif_daftar = ($is_tarif_baru) ? $_SESSION['tarif_daftar_dg_rujukan_baru'] : $_SESSION['tarif_daftar_dg_rujukan'];
|
||||
}
|
||||
}
|
||||
if ($is_tarif_baru){
|
||||
$kode_tarif_konsul = $_SESSION['tarif_konsul_klinik_baru'];
|
||||
}
|
||||
if (preg_match("/UTAMA|EKSEKUTIF/i", $_POST['asal_masuk'])) {
|
||||
$kode_tarif_daftar = ($is_tarif_baru) ? $_SESSION['tarif_daftar_poli_utama_baru'] : $_SESSION['tarif_daftar_poli_utama'];
|
||||
$kode_tarif_konsul = '';
|
||||
}
|
||||
}
|
||||
|
||||
$tarif_daftar = getTarifPendaftaran($kode_tarif_daftar, NULL, NULL);
|
||||
$last_bill = getLastNoBILL(1);
|
||||
$qty = 1;
|
||||
|
||||
$_SESSION['poly'] = $_POST['POLIKLINIK'];
|
||||
$_SESSION['idx'] = $idx_daftar;
|
||||
$_SESSION['status'] = $status;
|
||||
|
||||
$ip = getRealIpAddr();
|
||||
|
||||
$cek_kdunit = $db->query("SELECT kdunit FROM m_ruang where no = {$_REQUEST['POLIKLINIK']} ");
|
||||
$data_kdunit = ($cek_kdunit->numRows() > 0) ? $cek_kdunit->fetchFirst()['kdunit'] : null;
|
||||
|
||||
$tmp_cartbayar = 'INSERT into tmp_cartbayar ' . bind_sql(['kodetarif' => $kode_tarif_daftar, 'qty' => 1, 'ip' => $ip, 'id' => $kode_tarif_daftar, 'poly' => $_REQUEST['POLIKLINIK'], 'kddokter' => $_REQUEST['DOKTERJAGA'], 'tarif' => $tarif_daftar['jumlah'], 'tottarif' => $tarif_daftar['jumlah'], 'jasa_pelayanan' => $tarif_daftar['jasa_pelayanan'], 'jasa_sarana' => $tarif_daftar['jasa_sarana'], 'unit' => $_REQUEST['POLIKLINIK']]);
|
||||
if (_DBTYPE_ == 'mysqli') {
|
||||
$tmp_query = execute($tmp_cartbayar);
|
||||
$idx_tmp = $tmp_query->insertid;
|
||||
} else {
|
||||
$tmp_cartbayar .= ' RETURNING idxbayar';
|
||||
$tmp_query = execute($tmp_cartbayar);
|
||||
$idx_tmp = $tmp_query->fetchFirst()['idxbayar'];
|
||||
}
|
||||
|
||||
$tmp_cartdetil = 'INSERT into tmp_cartbayar_detil ' . bind_sql([
|
||||
'idxbayar' => $idx_tmp,
|
||||
'kddokter' => $_REQUEST['DOKTERJAGA'],
|
||||
'kode_tarif' => $kode_tarif_daftar,
|
||||
'komponen' => 'JASA PELAYANAN',
|
||||
'nilai' => $tarif_daftar['jasa_pelayanan']
|
||||
]);
|
||||
execute($tmp_cartdetil);
|
||||
|
||||
//TARIF KONSUL
|
||||
if (!empty($kode_tarif_konsul)){
|
||||
$tarif_konsul = getTarifPendaftaran($kode_tarif_konsul, NULL, NULL);
|
||||
|
||||
$_SESSION['poly'] = $_POST['POLIKLINIK'];
|
||||
$_SESSION['idx'] = $idx_daftar;
|
||||
$_SESSION['status'] = $status;
|
||||
|
||||
$tmp_cartbayar_konsul = 'INSERT into tmp_cartbayar ' . bind_sql(['kodetarif' => $kode_tarif_konsul, 'qty' => 1, 'ip' => $ip, 'id' => $kode_tarif_konsul, 'poly' => $_REQUEST['POLIKLINIK'], 'kddokter' => $_REQUEST['DOKTERJAGA'], 'tarif' => $tarif_konsul['jumlah'], 'tottarif' => $tarif_konsul['jumlah'], 'jasa_pelayanan' => $tarif_konsul['jasa_pelayanan'], 'jasa_sarana' => $tarif_konsul['jasa_sarana'], 'unit' => $_REQUEST['POLIKLINIK']]);
|
||||
if (_DBTYPE_ == 'mysqli') {
|
||||
$tmp_query_konsul = execute($tmp_cartbayar_konsul);
|
||||
$idx_tmp_konsul = $tmp_query_konsul->insertid;
|
||||
} else {
|
||||
$tmp_cartbayar_konsul .= ' RETURNING idxbayar';
|
||||
$tmp_query_konsul = execute($tmp_cartbayar_konsul);
|
||||
$idx_tmp_konsul = $tmp_query_konsul->fetchFirst()['idxbayar'];
|
||||
}
|
||||
|
||||
$tmp_cartdetil_konsul = 'INSERT into tmp_cartbayar_detil ' . bind_sql([
|
||||
'idxbayar' => $idx_tmp_konsul,
|
||||
'kddokter' => $_REQUEST['DOKTERJAGA'],
|
||||
'kode_tarif' => $kode_tarif_konsul,
|
||||
'komponen' => 'JASA PELAYANAN',
|
||||
'nilai' => $tarif_konsul['jasa_pelayanan']
|
||||
]);
|
||||
execute($tmp_cartdetil_konsul);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
// cek nobill sebelum tambah bill baru, apakah sudah ada di billing rajal?
|
||||
$cek_nobill = duplikasi_bill($last_bill);
|
||||
|
||||
if ($cek_nobill == false) {
|
||||
$save_nobill_temp = execute("INSERT INTO temp_nobill " . bind_sql(['nobill' => $last_bill, 'created_at' => date('Y-m-d H:i:s')]));
|
||||
if ($save_nobill_temp) {
|
||||
$bill_daftar = new Billing('irja', $_POST['NOMR'], $idx_daftar, date('Y-m-d'), 0, 0, $_POST['KDCARABAYAR'], $_POST['POLIKLINIK'], 0, $data_kdunit);
|
||||
$nonota = $bill_daftar->simpanBill();
|
||||
} else {
|
||||
$m_maxnobill = 'UPDATE m_maxnobill set nomor = ' . ($last_bill + 1) . ' where type=\'bill_pasien\' and 1 = 1';
|
||||
execute($m_maxnobill);
|
||||
$bill_daftar = new Billing('irja', $_POST['NOMR'], $idx_daftar, date('Y-m-d'), 0, 0, $_POST['KDCARABAYAR'], $_POST['POLIKLINIK'], 0, $data_kdunit);
|
||||
$nonota = $bill_daftar->simpanBill();
|
||||
$last_bill = substr($nonota, 0, 8);
|
||||
$save_nobill_temp = execute("INSERT INTO temp_nobill " . bind_sql(['nobill' => $last_bill, 'created_at' => date('Y-m-d H:i:s')]));
|
||||
}
|
||||
} else {
|
||||
// $nobill_top = $db->query("SELECT distinct nobill from t_billranap
|
||||
// union
|
||||
// SELECT distinct nobill from t_billrajal
|
||||
// order by nobill desc limit 1");
|
||||
// if($nobill_top->numRows() > 0) {
|
||||
// $data_nobill = $nobill_top->fetchFirst();
|
||||
$data_nobill['nobill'] = getLastNoBILL(1);
|
||||
// $m_maxnobill = 'UPDATE m_maxnobill set nomor = '.($data_nobill['nobill']).' where type=\'bill_pasien\' and 2 = 2';
|
||||
// execute($m_maxnobill);
|
||||
$new_nobill = ($data_nobill['nobill']);
|
||||
// }
|
||||
$save_nobill_temp = execute("INSERT INTO temp_nobill " . bind_sql(['nobill' => $new_nobill, 'created_at' => date('Y-m-d H:i:s')]));
|
||||
if ($save_nobill_temp) {
|
||||
$bill_daftar = new Billing('irja', $_POST['NOMR'], $idx_daftar, date('Y-m-d'), 0, 0, $_POST['KDCARABAYAR'], $_POST['POLIKLINIK'], 0, $data_kdunit);
|
||||
$nonota = $bill_daftar->simpanBill();
|
||||
} else {
|
||||
// $m_maxnobill = 'UPDATE m_maxnobill set nomor = '.($new_nobill+1).' where type=\'bill_pasien\' and 3 = 3';
|
||||
// execute($m_maxnobill);
|
||||
$bill_daftar = new Billing('irja', $_POST['NOMR'], $idx_daftar, date('Y-m-d'), 0, 0, $_POST['KDCARABAYAR'], $_POST['POLIKLINIK'], 0, $data_kdunit);
|
||||
$nonota = $bill_daftar->simpanBill();
|
||||
$last_bill = substr($nonota, 0, 8);
|
||||
$save_nobill_temp = execute("INSERT INTO temp_nobill " . bind_sql(['nobill' => $last_bill, 'created_at' => date('Y-m-d H:i:s')]));
|
||||
}
|
||||
}
|
||||
# update maxnobill
|
||||
// ganti update max nobill berdasarkan nobill di t_billrajal
|
||||
// $nobill_top = $db->query("SELECT nobill from t_billrajal order by nobill desc limit 1");
|
||||
// if($nobill_top->numRows() > 0) {
|
||||
// $data_nobill = $nobill_top->fetchFirst();
|
||||
// $m_maxnobill = 'UPDATE m_maxnobill set nomor = '.$data_nobill['nobill'];
|
||||
// execute($m_maxnobill);
|
||||
// }
|
||||
// else {
|
||||
// $m_maxnobill = 'UPDATE m_maxnobill set nomor = '.$last_bill;
|
||||
// execute($m_maxnobill);
|
||||
// }
|
||||
|
||||
if (!array_key_exists('NOMR', $_POST) || trim($_POST['NOMR']) == '') {
|
||||
$m_maxnomr = "UPDATE m_maxnomr set last2='" . $nomr_berikutnya . "',nomor='" . $nomr_berikutnya . "' where status='1' ";
|
||||
execute($m_maxnomr);
|
||||
}
|
||||
|
||||
$_SESSION['register_nomr'] = $_POST['NOMR'];
|
||||
$_SESSION['register_nama'] = $NAMADATA;
|
||||
|
||||
|
||||
$msg = 'Pendaftaran Berhasil';
|
||||
$type = 'success';
|
||||
|
||||
$html = '
|
||||
<div style="margin-left:auto; margin-right:auto; text-align:center; margin-top:50px;">
|
||||
<input type="hidden" id="idx" value="' . $_SESSION['idx'] . '">
|
||||
<input type="hidden" id="poly" value="' . $_SESSION['poly'] . '">
|
||||
<input type="hidden" id="status" value="' . $_SESSION['status'] . '">
|
||||
<input type="hidden" id="nama_pasien" value="' . $NAMADATA . '">
|
||||
<input type="hidden" id="nomr_pasien" value="' . $nomr . '">
|
||||
<input type="hidden" id="alamat_pasien" value="' . $_POST['ALAMAT'] . '">
|
||||
<input type="hidden" id="tgl_lahir" value="' . $_POST['TGLLAHIR'] . '">
|
||||
<input type="hidden" id="jeniskelamin" value="' . $_POST['JENISKELAMIN'] . '">
|
||||
<input type="hidden" id="nonota" value="' . $nonota . '">
|
||||
<div style="font-size:14px;">Data Telah di Simpan.</div>
|
||||
<div style="font-size:26px;">NOMR</div>
|
||||
<div style="font-size:74px;">' . $_SESSION['register_nomr'] . '</div>
|
||||
<div style="font-size:26px;">NAMA PASIEN</div>
|
||||
<div style="font-size:74px;">' . $_SESSION['register_nama'] . '</div>
|
||||
<div class="btn-group">
|
||||
<input type="button" name="back" class="btn btn-secondary" onclick="daftarBaru()" value="Daftar Baru"/>
|
||||
<input type="button" name="back" class="btn btn-info" onclick="cetakkartu()" value="Cetak Kartu" />
|
||||
<input type="button" name="back" class="btn btn-primary" onclick="printtracer()" value="Print Tracer" />
|
||||
<input type="button" name="back" class="btn btn-primary" data-idx="' . $_SESSION['idx'] . '" data-nonota="' . $nonota . '" data-nomr="' . $_POST['NOMR'] . '" onclick="printetiket(this)" value="Print Etiket" />
|
||||
<!--<input type="button" name="back" class="btn btn-orange" onclick="" value="Simpan Ke Billing Lama" />
|
||||
<input type="button" name="back" class="btn btn-success" onclick="printnota()" value="Print Nota" /> -->
|
||||
</div>
|
||||
</div>';
|
||||
}
|
||||
}
|
||||
|
||||
echo json_encode(['message' => $msg, 'type' => $type, 'html' => $html]);
|
||||
exit;
|
||||
} else {
|
||||
echo json_encode(['message' => 'Session sebelumnya belum diberishkan', 'type' => 'error']);
|
||||
exit;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user