Save TANGGAL_MCU to preregister date
This commit is contained in:
@@ -59,8 +59,8 @@ class Preregister extends MY_Controller
|
||||
}
|
||||
}
|
||||
|
||||
function cekKTP($nik, $tanggal, $bulan, $tahun)
|
||||
{
|
||||
function cekKTP($nik, $tanggal, $bulan, $tahun)
|
||||
{
|
||||
if (strlen($nik) != 16) {
|
||||
return false;
|
||||
}
|
||||
@@ -88,8 +88,30 @@ class Preregister extends MY_Controller
|
||||
return false;
|
||||
}
|
||||
//setelah berhasil melewati rintangan, berarti nomornya valid (tidak 100% valid)
|
||||
return true;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
function normalize_schedule_date($rawDate)
|
||||
{
|
||||
$rawDate = trim((string) $rawDate);
|
||||
if ($rawDate === '') {
|
||||
return '';
|
||||
}
|
||||
|
||||
$formats = array('d-m-Y', 'Y-m-d', 'd/m/Y', 'Y/m/d');
|
||||
foreach ($formats as $format) {
|
||||
$dt = DateTime::createFromFormat($format, $rawDate);
|
||||
if ($dt && $dt->format($format) === $rawDate) {
|
||||
return $dt->format('Y-m-d');
|
||||
}
|
||||
}
|
||||
|
||||
$timestamp = strtotime($rawDate);
|
||||
if ($timestamp === false) {
|
||||
return '';
|
||||
}
|
||||
return date('Y-m-d', $timestamp);
|
||||
}
|
||||
|
||||
function savecsv()
|
||||
{
|
||||
@@ -127,7 +149,7 @@ class Preregister extends MY_Controller
|
||||
|
||||
$exist_patients_arr = [];
|
||||
$exist_pat = [];
|
||||
foreach ($datas as $k => $v) {
|
||||
foreach ($datas as $k => $v) {
|
||||
$timestamp = strtotime($v['TANGGAL_LAHIR']);
|
||||
$pdob = date('Y-m-d', $timestamp);
|
||||
$v['NAMA'] = trim(str_replace("'", "\\'", $v['NAMA']));
|
||||
@@ -280,10 +302,11 @@ class Preregister extends MY_Controller
|
||||
$this->sys_error("select mcu_preregister_patients : " . $last_qry);
|
||||
exit;
|
||||
}
|
||||
$exist_r = $qry_pre->result_array();
|
||||
|
||||
if (count($exist_r) == 0) {
|
||||
$query = " INSERT INTO mcu_preregister_patients (
|
||||
$exist_r = $qry_pre->result_array();
|
||||
$preregister_patient_id = 0;
|
||||
|
||||
if (count($exist_r) == 0) {
|
||||
$query = " INSERT INTO mcu_preregister_patients (
|
||||
Mcu_PreregisterPatientsMgm_McuID,
|
||||
Mcu_PreregisterPatientsCompanyNumber,
|
||||
Mcu_PreregisterPatientsNIP,
|
||||
@@ -337,10 +360,11 @@ class Preregister extends MY_Controller
|
||||
$this->sys_error("insert mcu_preregister_patients : " . $last_qry);
|
||||
exit;
|
||||
}
|
||||
if ($rows) {
|
||||
$last_id_x = $this->db->insert_id();
|
||||
|
||||
if ($patient_id == 0) {
|
||||
if ($rows) {
|
||||
$last_id_x = $this->db->insert_id();
|
||||
$preregister_patient_id = intval($last_id_x);
|
||||
|
||||
if ($patient_id == 0) {
|
||||
$sql = "SELECT *
|
||||
FROM m_patient
|
||||
WHERE
|
||||
@@ -519,16 +543,50 @@ class Preregister extends MY_Controller
|
||||
|
||||
$sql = "UPDATE mcu_preregister_patients SET Mcu_PreregisterPatientsM_PatientID = {$patient_id}
|
||||
WHERE Mcu_PreregisterPatientsID = {$last_id_x}";
|
||||
$query = $this->db->query($sql);
|
||||
if (!$query) {
|
||||
$last_qry = $this->db->last_query();
|
||||
$this->db->trans_rollback();
|
||||
$this->sys_error("update mcu_preregister_patients : " . $last_qry);
|
||||
exit;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
$query = $this->db->query($sql);
|
||||
if (!$query) {
|
||||
$last_qry = $this->db->last_query();
|
||||
$this->db->trans_rollback();
|
||||
$this->sys_error("update mcu_preregister_patients : " . $last_qry);
|
||||
exit;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
$preregister_patient_id = intval($exist_r[0]['Mcu_PreregisterPatientsID']);
|
||||
}
|
||||
|
||||
// Simpan jadwal MCU per preregister patient jika parameter TANGGAL_MCU dikirim
|
||||
$scheduleDate = isset($v['TANGGAL_MCU']) ? $this->normalize_schedule_date($v['TANGGAL_MCU']) : '';
|
||||
if ($preregister_patient_id > 0 && $scheduleDate !== '') {
|
||||
$sqlSchedule = "INSERT INTO mcu_preregister_date (
|
||||
Mcu_PreregisterDateMcu_PreregisterPatientsID,
|
||||
Mcu_PreregisterDateCheckinSchedule,
|
||||
Mcu_PreregisterDateIsActive,
|
||||
Mcu_PreregisterDateCreated,
|
||||
Mcu_PreregisterDateCreatedUserID,
|
||||
Mcu_PreregisterDateLastUpdated,
|
||||
Mcu_PreregisterDateLastUpdatedUserID
|
||||
) VALUES (
|
||||
?, ?, 'Y', NOW(), ?, NOW(), ?
|
||||
)
|
||||
ON DUPLICATE KEY UPDATE
|
||||
Mcu_PreregisterDateIsActive = 'Y',
|
||||
Mcu_PreregisterDateLastUpdated = NOW(),
|
||||
Mcu_PreregisterDateLastUpdatedUserID = VALUES(Mcu_PreregisterDateLastUpdatedUserID)";
|
||||
$qrySchedule = $this->db->query($sqlSchedule, array(
|
||||
$preregister_patient_id,
|
||||
$scheduleDate,
|
||||
$userid,
|
||||
$userid
|
||||
));
|
||||
if (!$qrySchedule) {
|
||||
$last_qry = $this->db->last_query();
|
||||
$this->db->trans_rollback();
|
||||
$this->sys_error("insert mcu_preregister_date : " . $last_qry);
|
||||
exit;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if ($this->db->trans_status() === FALSE) {
|
||||
$this->db->trans_rollback();
|
||||
|
||||
Reference in New Issue
Block a user