Files
BE_IBL/application/controllers/cpone/inject/Preregisterv2.php
2026-04-15 15:23:57 +07:00

2908 lines
103 KiB
PHP

<?php
class Preregisterv2 extends MY_Controller
{
var $db;
public function __construct()
{
parent::__construct();
// $this->db = $this->load->database("cpone", true);
}
public function index()
{
// $cek = $this->db->query("select database() as current_db")->result();
// print_r($cek);
echo "PATIENT API";
}
function getmgmmcu()
{
try {
if (!$this->isLogin) {
$this->sys_error("Invalid Token");
exit;
}
$prm = $this->sys_input;
$sql = "SELECT header.stage as Mgm_McuID, header.stage as mcuName, DATE_FORMAT(created_dttm,'%Y-%m-%d %H:%i') as created
FROM x_adm_rekap_header header
JOIN x_adm_rekap_patient pat ON pat.STAGE = header.stage
GROUP BY header.stage";
$qry = $this->db->query($sql);
if ($qry) {
$rows = $qry->result_array();
} else {
$this->sys_error_db("mcu select error", $this->db);
exit;
}
$result = array(
"records" => $rows,
"sql" => $this->db->last_query()
);
$this->sys_ok($result);
} catch (Exception $exc) {
$message = $exc->getMessage();
$this->sys_error($message);
}
}
function cekKTP($nik, $tanggal, $bulan, $tahun)
{
if (strlen($nik) != 16) {
return false;
}
$d = substr($nik, 6, 2);
$m = substr($nik, 8, 2);
$y = substr($nik, 10, 2);
//jika tahun full, ambil 2 digit terakhir
if (strlen($tahun == 4)) {
$tahun = substr($tahun, 2, 2);
}
if (intval($d) > 40) {
//Wanita
$d = intval($d) - 40;
}
if ($tanggal / $d != 1) {
return false;
}
if ($bulan / $m != 1) {
return false;
}
if ($tahun / $y != 1) {
return false;
}
//setelah berhasil melewati rintangan, berarti nomornya valid (tidak 100% valid)
return true;
}
function savecsv(){
if (!$this->isLogin) {
$this->sys_error("Invalid Token");
exit;
}
$userid = $this->sys_user["M_UserID"];
$prm = $this->sys_input;
$sql = "SELECT MAX(Stage) as stage
FROM x_adm_rekap_patient";
$query = $this->db->query($sql);
$stage = $query->row()->stage;
$stage = $stage + 1;
//$stage = 19;
$datas = $prm['data'];
if($datas && count($datas) > 1){
$sql = "INSERT INTO `x_adm_rekap_header` (
`stage`,
`created_user_id`,
`created_dttm`
)VALUES(?,?,NOW())";
$query = $this->db->query($sql,
array($stage,$userid)
);
foreach ($datas as $key => $value) {
if($key > 0){
$regDate = date('Y-m-d', strtotime($value['REG_DATE']));
$DOB = date('Y-m-d', strtotime($value['DOB']));
$sql = "DELETE FROM `x_adm_rekap_patient` WHERE `REG_NO` = ?";
$query = $this->db->query($sql,array($value['REG_NO']));
$sql = "INSERT INTO `x_adm_rekap_patient`(
`REG_DATE`,
`REG_NO`,
`PATIENT_ID`,
`PATIENT_NAME`,
`SEX_ID`,
`DOB`,
`AGE`,
`NPK`,
`OTHER_ID`,
`JOB_TITLE`,
`DEPT`,
`DIVISION`,
`LOCATION`,
`AGREEMENT_NAME`,
`STAGE`
)
VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)";
$query = $this->db->query($sql,array(
$regDate,
$value['REG_NO'],
$value['PATIENT_ID'],
$value['PATIENT_NAME'],
$value['SEX_ID'],
$DOB,
$value['AGE'],
isset($value['NPK'])?$value['NPK']:'',
isset($value['OTHER_ID'])?$value['OTHER_ID']:'',
isset($value['JOB_TITLE'])?$value['JOB_TITLE']:'',
isset($value['DEPT'])?$value['DEPT']:'',
isset($value['DIVISION'])?$value['DIVISION']:'',
isset($value['LOCATION'])?$value['LOCATION']:'',
isset($value['AGREEMENT_NAME'])?$value['AGREEMENT_NAME']:'',
$stage
));
$sql = "DELETE FROM `x_adm_rekap_riwayat` WHERE `REG_NO` = ?";
$query = $this->db->query($sql,array($value['REG_NO']));
$sql = "INSERT INTO `x_adm_rekap_riwayat` (
`REG_NO`,
`Keluhan`,
`Riwayat Penyakit Dahulu`,
`Ayah`,
`Ibu`,
`Alergi`,
`Kebiasaan Merokok`,
`Kebiasaan Alkohol`,
`Kebiasaan Olahraga`,
`Stage`)
VALUE(
?,?,?,?,?,?,?,?,?,?
)
";
$query = $this->db->query($sql,array(
$value['REG_NO'],
isset($value['Keluhan'])?$value['Keluhan']:'',
isset($value['Riwayat Penyakit Dahulu'])?$value['Riwayat Penyakit Dahulu']:'',
isset($value['Ayah'])?$value['Ayah']:'',
isset($value['Ibu'])?$value['Ibu']:'',
isset($value['Alergi'])?$value['Alergi']:'',
isset($value['Kebiasaan Merokok'])?$value['Kebiasaan Merokok']:'',
isset($value['Kebiasaan Alkohol'])?$value['Kebiasaan Alkohol']:'',
isset($value['Kebiasaan Olahraga'])?$value['Kebiasaan Olahraga']:'',
$stage
));
if (!$query) {
echo $this->db->last_query();
$this->sys_error_db('insert x_adm_rekap_riwayat error', $this->db);
exit;
}
$sql = "DELETE FROM `x_adm_rekap_fisik_vital` WHERE `REG_NO` = ?";
$query = $this->db->query($sql,array($value['REG_NO']));
$sql = "INSERT INTO `x_adm_rekap_fisik_vital`
(
`REG_NO`,
`TB`,
`BB`,
`BMI`,
`Sistolik`,
`Diastolik`,
`Nadi`,
`Frekuensi`,
`Visus_Kanan`,
`Visus_Kiri`,
`Kenal_Warna`,
`Lapang_Pandang`,
`Konjuktiva_Sklera`,
`Suhu`,
`Stage`) VALUES
(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)
";
$query = $this->db->query($sql,array(
$value['REG_NO'],
isset($value['Tinggi Badan'])?$value['Tinggi Badan']:'',
isset($value['Berat Badan'])?$value['Berat Badan']:'',
isset($value['BMI'])?$value['BMI']:'',
isset($value['Sistolik'])?$value['Sistolik']:'',
isset($value['Diastolik'])?$value['Diastolik']:'',
isset($value['Nadi'])?$value['Nadi']:'',
isset($value['Frekuensi'])?$value['Frekuensi']:'',
isset($value['Visus Kanan'])?$value['Visus Kanan']:'',
isset($value['Visus Kiri'])?$value['Visus Kiri']:'',
isset($value['Kenal Warna'])?$value['Kenal Warna']:'',
isset($value['Lapang Pandang'])?$value['Lapang Pandang']:'Normal',
isset($value['Konjuktiva - Sklera'])?$value['Konjuktiva - Sklera']:'',
isset($value['Suhu Badan'])?$value['Suhu Badan']:'',
$stage
));
if (!$query) {
//$this->db->trans_rollback();
echo $this->db->last_query();
$this->sys_error_db('insert x_adm_rekap_fisik_vital error', $this->db);
exit;
}
$sql = "DELETE FROM `x_adm_rekap_fisik_organ` WHERE `REG_NO` = ?";
$query = $this->db->query($sql,array($value['REG_NO']));
$sql = "INSERT INTO `x_adm_rekap_fisik_organ` (
`REG_NO`,
`Telinga`,
`Hidung`,
`Tenggorokan`,
`Rongga_Mulut_Gigi`,
`Jantung`,
`Paru`,
`Abdomen`,
`Ginjal`,
`Hernia`,
`Kulit`,
`Anogenital`,
`Extremitas`,
`Tulang_belakang`,
`Refleks_Fisiologis`,
`Refleks_Patologis`,
`Suhu`,
`Stage`)
VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)";
$query = $this->db->query($sql,array(
$value['REG_NO'],
isset($value['Telinga'])?$value['Telinga']:'',
isset($value['Hidung'])?$value['Hidung']:'',
isset($value['Tenggorokan'])?$value['Tenggorokan']:'',
isset($value['Rongga Mulut dan Gigi'])?$value['Rongga Mulut dan Gigi']:'',
isset($value['Jantung'])?$value['Jantung']:'',
isset($value['Paru'])?$value['Paru']:'',
isset($value['Abdomen'])?$value['Abdomen']:'',
isset($value['Ginjal'])?$value['Ginjal']:'',
isset($value['Hernia'])?$value['Hernia']:'',
isset($value['Kulit'])?$value['Kulit']:'',
isset($value['Anogenital'])?$value['Anogenital']:'',
isset($value['Extremitas'])?$value['Extremitas']:'',
isset($value['Tulang belakang'])?$value['Tulang belakang']:'',
isset($value['Refleks Fisiologis'])?$value['Refleks Fisiologis']:'',
isset($value['Refleks Patologis'])?$value['Refleks Patologis']:'',
isset($value['Suhu Badan'])?$value['Suhu Badan']:'',
$stage
));
if (!$query) {
//$this->db->trans_rollback();
echo $this->db->last_query();
$this->sys_error_db('insert x_adm_rekap_fisik_organ error', $this->db);
exit;
}
if(isset($value['Dokter Pemeriksa'])){
$sql = "DELETE FROM `x_adm_rekap_fisik_doctor` WHERE `REG_NO` = ?";
$query = $this->db->query($sql,array($value['REG_NO']));
$sql = "INSERT INTO `x_adm_rekap_fisik_doctor` (`REG_NO`, `PATIENT_ID`, `DOCTOR`, `Stage`) VALUES
(?, ?, ?, ?)";
$query = $this->db->query($sql,array(
$value['REG_NO'],
$value['PATIENT_ID'],
isset($value['Dokter Pemeriksa'])?$value['Dokter Pemeriksa']:'',
$stage
));
if (!$query) {
//$this->db->trans_rollback();
echo $this->db->last_query();
$this->sys_error_db('insert x_adm_rekap_fisik_doctor error', $this->db);
exit;
}
}
if(isset($value['KESIMPULAN'])){
$sql = "DELETE FROM `x_adm_rekap_fisik_conclusion` WHERE `REG_NO` = ?";
$query = $this->db->query($sql,array($value['REG_NO']));
$sql = "INSERT INTO `x_adm_rekap_fisik_conclusion` (`REG_NO`, `KESIMPULAN`, `Fitness_Category`, `Stage`) VALUES
(?,?,?,?)";
$query = $this->db->query($sql,array(
$value['REG_NO'],
isset($value['KESIMPULAN'])?$value['KESIMPULAN']:'',
isset($value['Fitness Category'])?$value['Fitness Category']:'',
$stage
));
if (!$query) {
//$this->db->trans_rollback();
echo $this->db->last_query();
$this->sys_error_db('insert x_adm_rekap_fisik_conclusion error', $this->db);
exit;
}
}
if(isset($value['SARAN'])){
$sql = "DELETE FROM `x_adm_rekap_fisik_saran` WHERE `REG_NO` = ?";
$query = $this->db->query($sql,array($value['REG_NO']));
$sql = "INSERT INTO `x_adm_rekap_fisik_saran` (`REG_NO`, `Saran`, `Stage`) VALUES
(?,?,?)";
$query = $this->db->query($sql,array(
$value['REG_NO'],
isset($value['SARAN'])?$value['SARAN']:'',
$stage
));
if (!$query) {
//$this->db->trans_rollback();
echo $this->db->last_query();
$this->sys_error_db('insert x_adm_rekap_fisik_saran error', $this->db);
exit;
}
}
if(isset($value['No. Rontgen'])){
$sql = "DELETE FROM `x_adm_rekap_thorax` WHERE `REG_NO` = ?";
$query = $this->db->query($sql,array($value['REG_NO']));
$sql = "INSERT INTO `x_adm_rekap_thorax`(
`REG_NO`,
`Kesan`,
`Saran`,
`Tulang_dan_jaringan_lunak`,
`Paru`,
`Jantung`,
`Diafragma`,
`Sinus`,
`No_Rontgen`,
`Radiologist`,
`Stage`)
VALUES(?,?,?,?,?,?,?,?,?,?,?)";
$query = $this->db->query($sql,array(
$value['REG_NO'],
isset($value['KESAN ( Thorax )'])?$value['KESAN ( Thorax )']:'',
isset($value['SARAN ( Thorax )'])?$value['SARAN ( Thorax )']:'',
isset($value['Tulang dan jaringan lunak ( Thorax )'])?$value['Tulang dan jaringan lunak ( Thorax )']:'',
isset($value['Paru ( Thorax )'])?$value['Paru ( Thorax )']:'',
isset($value['Jantung ( Thorax )'])?$value['Jantung ( Thorax )']:'',
isset($value['Diafragma'])?$value['Diafragma']:'',
isset($value['Sinus ( Thorax )'])?$value['Sinus ( Thorax )']:'',
isset($value['No. Rontgen'])?$value['No. Rontgen']:'',
isset($value['Radiologist'])?$value['Radiologist']:'',
$stage
));
if (!$query) {
//$this->db->trans_rollback();
echo $this->db->last_query();
$this->sys_error_db('insert x_adm_rekap_thorax error', $this->db);
exit;
}
}
if(isset($value['KESAN ( EKG )'])){
$sql = "DELETE FROM `x_adm_rekap_ecg` WHERE `REG_NO` = ?";
$query = $this->db->query($sql,array($value['REG_NO']));
$sql = "INSERT INTO `x_adm_rekap_ecg`(
`REG_NO`,
`Kesan`,
`Saran`,
`Aritmia`,
`T_Wave`,
`ST`,
`QRS`,
`QRS_Durasi`,
`Axis`,
`PR_Internal`,
`HR`,
`P_Wave`,
`Irama`,
`Cardiologist`,
`Stage`)
VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)";
$query = $this->db->query($sql,array(
$value['REG_NO'],
isset($value['KESAN ( EKG )'])?$value['KESAN ( EKG )']:'',
isset($value['SARAN ( EKG )'])?$value['SARAN ( EKG )']:'',
isset($value['Aritmia ( EKG )'])?$value['Aritmia ( EKG )']:'',
isset($value['Paru ( Thorax )'])?$value['T wave ( EKG )']:'',
isset($value['ST ( EKG )'])?$value['ST ( EKG )']:'',
isset($value['QRS ( EKG )'])?$value['QRS ( EKG )']:'',
isset($value['QRS durasi ( EKG )'])?$value['QRS durasi ( EKG )']:'',
isset($value['Axis ( EKG )'])?$value['Axis ( EKG )']:'',
isset($value['PR internal ( EKG )'])?$value['PR internal ( EKG )']:'',
isset($value['HR ( EKG )'])?$value['HR ( EKG )']:'',
isset($value['P wave ( EKG )'])?$value['P wave ( EKG )']:'',
isset($value['Irama ( EKG )'])?$value['Irama ( EKG )']:'',
isset($value['Cardiologist (EKG)'])?$value['Cardiologist (EKG)']:'',
$stage
));
if (!$query) {
//$this->db->trans_rollback();
echo $this->db->last_query();
$this->sys_error_db('insert x_adm_rekap_ecg error', $this->db);
exit;
}
}
if(isset($value['SARAN ( Audiometri )']) || isset($value['Kesimpulan ( Audiometri )'])){
$sql = "DELETE FROM `x_adm_rekap_audiometri` WHERE `REG_NO` = ?";
$query = $this->db->query($sql,array($value['REG_NO']));
$sql = "INSERT INTO `x_adm_rekap_audiometri` (
`REG_NO`,
`Kesimpulan`,
`Saran`,
`Kesimpulan_right_ear`,
`Kesimpulan_left_ear`,
`AC_Right`,
`AC_Right_250`,
`AC_Right_500`,
`AC_Right_1000`,
`AC_Right_2000`,
`AC_Right_3000`,
`AC_Right_4000`,
`AC_Right_6000`,
`AC_Right_8000`,
`AC_Left`,
`AC_Left_250`,
`AC_Left_500`,
`AC_Left_1000`,
`AC_Left_2000`,
`AC_Left_3000`,
`AC_Left_4000`,
`AC_Left_6000`,
`AC_Left_8000`,
`BC_Right`,
`BC_Right_250`,
`BC_Right_500`,
`BC_Right_1000`,
`BC_Right_2000`,
`BC_Right_3000`,
`BC_Right_4000`,
`BC_Right_6000`,
`BC_Right_8000`,
`BC_Left`,
`BC_Left_250`,
`BC_Left_500`,
`BC_Left_1000`,
`BC_Left_2000`,
`BC_Left_3000`,
`BC_Left_4000`,
`BC_Left_6000`,
`BC_Left_8000`,
`Dokter_THT`,
`Stage`)
VALUES
(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)";
$query = $this->db->query($sql,array(
$value['REG_NO'],
isset($value['Kesimpulan ( Audiometri )'])?$value['Kesimpulan ( Audiometri )']:'',
isset($value['SARAN ( Audiometri )'])?$value['SARAN ( Audiometri )']:'',
isset($value['Kesimpulan Right Ear ( Audiometri)'])?$value['Kesimpulan Right Ear ( Audiometri)']:'',
isset($value['Kesimpulan Left Ear ( Audiometri )'])?$value['Kesimpulan Left Ear ( Audiometri )']:'',
isset($value['Right Ear ( Audiometri )'])?$value['Right Ear ( Audiometri )']:'',
isset($value['Right Ear ( Audiometri ) 250'])?$value['Right Ear ( Audiometri ) 250']:'',
isset($value['Right Ear ( Audiometri ) 500'])?$value['Right Ear ( Audiometri ) 500']:'',
isset($value['Right Ear ( Audiometri ) 1000'])?$value['Right Ear ( Audiometri ) 1000']:'',
isset($value['Right Ear ( Audiometri ) 2000'])?$value['Right Ear ( Audiometri ) 2000']:'',
isset($value['Right Ear ( Audiometri ) 3000'])?$value['Right Ear ( Audiometri ) 3000']:'',
isset($value['Right Ear ( Audiometri ) 4000'])?$value['Right Ear ( Audiometri ) 4000']:'',
isset($value['Right Ear ( Audiometri ) 6000'])?$value['Right Ear ( Audiometri ) 6000']:'',
isset($value['Right Ear ( Audiometri ) 8000'])?$value['Right Ear ( Audiometri ) 8000']:'',
isset($value['Left Ear ( Audiometri )'])?$value['Left Ear ( Audiometri )']:'',
isset($value['Left Ear ( Audiometri ) 250'])?$value['Left Ear ( Audiometri ) 250']:'',
isset($value['Left Ear ( Audiometri ) 500'])?$value['Left Ear ( Audiometri ) 500']:'',
isset($value['Left Ear ( Audiometri ) 1000'])?$value['Left Ear ( Audiometri ) 1000']:'',
isset($value['Left Ear ( Audiometri ) 2000'])?$value['Left Ear ( Audiometri ) 2000']:'',
isset($value['Left Ear ( Audiometri ) 3000'])?$value['Left Ear ( Audiometri ) 3000']:'',
isset($value['Left Ear ( Audiometri ) 4000'])?$value['Left Ear ( Audiometri ) 4000']:'',
isset($value['Left Ear ( Audiometri ) 6000'])?$value['Left Ear ( Audiometri ) 6000']:'',
isset($value['Left Ear ( Audiometri ) 8000'])?$value['Left Ear ( Audiometri ) 8000']:'',
isset($value['BC Right ( Audiometri )'])?$value['BC Right ( Audiometri )']:'',
isset($value['BC Right ( Audiometri ) 250'])?$value['BC Right ( Audiometri ) 250']:'',
isset($value['BC Right ( Audiometri ) 500'])?$value['BC Right ( Audiometri ) 500']:'',
isset($value['BC Right ( Audiometri ) 1000'])?$value['BC Right ( Audiometri ) 1000']:'',
isset($value['BC Right ( Audiometri ) 2000'])?$value['BC Right ( Audiometri ) 2000']:'',
isset($value['BC Right ( Audiometri ) 3000'])?$value['BC Right ( Audiometri ) 3000']:'',
isset($value['BC Right ( Audiometri ) 4000'])?$value['BC Right ( Audiometri ) 4000']:'',
isset($value['BC Right ( Audiometri ) 6000'])?$value['BC Right ( Audiometri ) 6000']:'',
isset($value['BC Right ( Audiometri ) 8000'])?$value['BC Right ( Audiometri ) 8000']:'',
isset($value['BC Left ( Audiometri )'])?$value['BC Left ( Audiometri )']:'',
isset($value['BC Left ( Audiometri ) 250'])?$value['BC Left ( Audiometri ) 250']:'',
isset($value['BC Left ( Audiometri ) 500'])?$value['BC Left ( Audiometri ) 500']:'',
isset($value['BC Left ( Audiometri ) 1000'])?$value['BC Left ( Audiometri ) 1000']:'',
isset($value['BC Left ( Audiometri ) 2000'])?$value['BC Left ( Audiometri ) 2000']:'',
isset($value['BC Left ( Audiometri ) 3000'])?$value['BC Left ( Audiometri ) 3000']:'',
isset($value['BC Left ( Audiometri ) 4000'])?$value['BC Left ( Audiometri ) 4000']:'',
isset($value['BC Left ( Audiometri ) 6000'])?$value['BC Left ( Audiometri ) 6000']:'',
isset($value['BC Left ( Audiometri ) 8000'])?$value['BC Left ( Audiometri ) 8000']:'',
isset($value['Dokter THT'])?$value['Dokter THT']:'',
$stage
));
if (!$query) {
//$this->db->trans_rollback();
echo $this->db->last_query();
$this->sys_error_db('insert audiometri error', $this->db);
exit;
}
}
if(isset($value['Kesan (USG ABDOMEN)'])){
$sql = "DELETE FROM `x_adm_rekap_fisik_usg` WHERE `REG_NO` = ?";
$query = $this->db->query($sql,array($value['REG_NO']));
$sql = "INSERT INTO `x_adm_rekap_fisik_usg` (
`REG_NO`,
`Hepar (USG ABDOMEN)`,
`V. Fellea ( USG ABDOMEN)`,
`Pancreas (USG ABDOMEN)`,
`Lien (USG ABDOMEN)`,
`Right Kidney (USG ABDOMEN)`,
`Left Kidney (USG ABDOMEN)`,
`Buli-Buli (USG ABDOMEN)`,
`Prostat (USG ABDOMEN)`,
`Uterus dan Adnexa (USG ABDOMEN)`,
`Kesan (USG ABDOMEN)`,
`SARAN (USG ABDOMEN)`,
`Radiologist (USG ABDOMEN)`,
`Appendix (USG ABDOMEN)`,
`Stage`)
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?,?)";
$query = $this->db->query($sql,array(
$value['REG_NO'],
isset($value['Hepar (USG ABDOMEN)'])?$value['Hepar (USG ABDOMEN)']:'',
isset($value['V. Fellea ( USG ABDOMEN)'])?$value['V. Fellea ( USG ABDOMEN)']:'',
isset($value['Pancreas (USG ABDOMEN)'])?$value['Pancreas (USG ABDOMEN)']:'',
isset($value['Lien (USG ABDOMEN)'])?$value['Lien (USG ABDOMEN)']:'',
isset($value['Right Kidney (USG ABDOMEN)'])?$value['Right Kidney (USG ABDOMEN)']:'',
isset($value['Left Kidney (USG ABDOMEN)'])?$value['Left Kidney (USG ABDOMEN)']:'',
isset($value['Buli-Buli (USG ABDOMEN)'])?$value['Buli-Buli (USG ABDOMEN)']:'',
isset($value['Prostat (USG ABDOMEN)'])?$value['Prostat (USG ABDOMEN)']:'',
isset($value['Uterus dan Adnexa (USG ABDOMEN)'])?$value['Uterus dan Adnexa (USG ABDOMEN)']:'',
isset($value['Kesan (USG ABDOMEN)'])?$value['Kesan (USG ABDOMEN)']:'',
isset($value['SARAN (USG ABDOMEN)'])?$value['SARAN (USG ABDOMEN)']:'',
isset($value['Radiologist (USG ABDOMEN)'])?$value['Radiologist (USG ABDOMEN)']:'',
isset($value['Appendix (USG ABDOMEN)'])?$value['Appendix (USG ABDOMEN)']:'',
$stage
));
if (!$query) {
//$this->db->trans_rollback();
echo $this->db->last_query();
$this->sys_error_db('insert usg error', $this->db);
exit;
}
}
if(isset($value['KETERANGAN LAB'])){
$sql = "DELETE FROM `x_adm_keterangan_lab` WHERE `REG_NO` = ?";
$query = $this->db->query($sql,array($value['REG_NO']));
$sql = "INSERT INTO `x_adm_keterangan_lab` (`REG_NO`, `Keterangan`,`Stage`) VALUES (?,?,?)";
$query = $this->db->query($sql,array(
$value['REG_NO'],
isset($value['KETERANGAN LAB'])?$value['KETERANGAN LAB']:'',
$stage
));
}
if(isset($value['Kesan ( TREADMILL )'])){
$sql = "DELETE FROM `x_adm_rekap_treadmill` WHERE `REG_NO` = ?";
$query = $this->db->query($sql,array($value['REG_NO']));
$sql = "INSERT INTO `x_adm_rekap_treadmill`(
`REG_NO`,
`Kesan`,
`Saran`,
`Hasil`,
`Stage`)
VALUES(?,?,?,?,?)";
$query = $this->db->query($sql,array(
$value['REG_NO'],
isset($value['Kesan ( TREADMILL )'])?$value['Kesan ( TREADMILL )']:'',
isset($value['Saran ( TREADMILL )'])?$value['Saran ( TREADMILL )']:'',
isset($value['Hasil ( TREADMILL )'])?$value['Hasil ( TREADMILL )']:'',
$stage
));
//echo $this->db->last_query();
if (!$query) {
//$this->db->trans_rollback();
echo $this->db->last_query();
$this->sys_error_db('insert x_adm_rekap_treadmill error', $this->db);
exit;
}
}
if(isset($value['KESAN ( Spirometri )'])){
$sql = "DELETE FROM `x_adm_rekap_spirometri` WHERE `REG_NO` = ?";
$query = $this->db->query($sql,array($value['REG_NO']));
$sql = "INSERT INTO `x_adm_rekap_spirometri` (
`REG_NO`,
`F V C ( L )`,
`F V C ( Measured )`,
`F E V1 ( Measured )`,
`FEV1 / FVC (%) ( Measured )`,
`F E V1 ( L )`,
`F V C ( Predicted )`,
`F E V1 ( Predicted )`,
`FEV1 / FVC (%) ( Predicted )`,
`FEV1 / FVC ( % )`,
`F V C ( Percentage )`,
`F E V1 ( Percentage )`,
`FEV1 / FVC (%) ( Percentage )`,
`KESAN ( Spirometri )`,
`SARAN ( Spirometri )`,
`Pulmonologist`,
`Stage`
)
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)";
$query = $this->db->query($sql,array(
$value['REG_NO'],
isset($value['F V C ( L )'])?$value['F V C ( L )']:'',
isset($value['F V C ( Measured )'])?$value['F V C ( Measured )']:'',
isset($value['F E V1 ( Measured )'])?$value['F E V1 ( Measured )']:'',
isset($value['FEV1 / FVC (%) ( Measured )'])?$value['FEV1 / FVC (%) ( Measured )']:'',
isset($value['F E V1 ( L )'])?$value['F E V1 ( L )']:'',
isset($value['F V C ( Predicted )'])?$value['F V C ( Predicted )']:'',
isset($value['F E V1 ( Predicted )'])?$value['F E V1 ( Predicted )']:'',
isset($value['FEV1 / FVC (%) ( Predicted )'])?$value['FEV1 / FVC (%) ( Predicted )']:'',
isset($value['FEV1 / FVC ( % )'])?$value['FEV1 / FVC ( % )']:'',
isset($value['F V C ( Percentage )'])?$value['F V C ( Percentage )']:'',
isset($value['F E V1 ( Percentage )'])?$value['F E V1 ( Percentage )']:'',
isset($value['FEV1 / FVC (%) ( Percentage )'])?$value['FEV1 / FVC (%) ( Percentage )']:'',
isset($value['KESAN ( Spirometri )'])?$value['KESAN ( Spirometri )']:'',
isset($value['SARAN ( Spirometri )'])?$value['SARAN ( Spirometri )']:'',
isset($value['Pulmonologist'])?$value['Pulmonologist']:'',
$stage
));
//echo $this->db->last_query();
if (!$query) {
//$this->db->trans_rollback();
echo $this->db->last_query();
$this->sys_error_db('insert x_adm_rekap_spirometri error', $this->db);
exit;
}
}
$this->insert_lab_result($stage,$value,$value['REG_NO']);
}
}
$lastuser = $stage."99";
$sql = "UPDATE `m_patient`
JOIN `x_adm_rekap_patient`
ON
(
(DOB = M_PatientDOB AND trim(PATIENT_NAME) = trim(M_PatientName)) OR
(NPK <> '' AND DOB = M_PatientDOB AND trim(NPK) = trim(M_PatientNIP)) OR
(OTHER_ID <> '' AND DOB = M_PatientDOB AND trim(OTHER_ID) = trim(M_PatientIdentifierValue))
) AND
`Stage` = '{$stage}'
SET M_PatientOldPID = PATIENT_ID,
M_PatientLastUpdatedUserID = {$lastuser},
M_PatientLastUpdated = NOW();";
$this->db->query($sql);
//$this->generate_adm_patient($stage);
$result = array(
"stage" => $stage
);
$this->sys_ok($result);
}
}
function savecsvnewlab(){
if (!$this->isLogin) {
$this->sys_error("Invalid Token");
exit;
}
$userid = $this->sys_user["M_UserID"];
$prm = $this->sys_input;
$datas = $prm['data'];
if($datas && count($datas) > 1){
foreach ($datas as $key => $value) {
if($key > 0){
$this->insert_lab_result('15',$value,$value['REG_NO']);
}
}
}
}
function insert_lab_result($stage,$results,$regno){
if(count($results) > 0){
$batch_datas = [];
$sql = "DELETE FROM `x_adm_rekap_laboratorium` WHERE `REG_NO` = ? ";
$query = $this->db->query($sql,array($regno));
foreach ($results as $key => $value) {
//echo "halo2 bandung";
$sql = "SELECT count(*) as xcount FROM t_test WHERE T_TestCode = '{$key}' AND T_TestIsActive = 'Y'";
$xcount = $this->db->query($sql)->row()->xcount;
if($xcount > 0){
$dt_insert = array("REG_NO" => $regno,"TestCode" => $key,"TestResult" => $value, "Stage" => $stage );
//$batch_datas[] = $dt_insert;
$sql = "INSERT INTO x_adm_rekap_laboratorium (REG_NO,TestCode,TestResult,Stage) VALUES('$regno','$key','$value','$stage')";
$query = $this->db->query($sql);
if (!$query) {
//$this->db->trans_rollback();
echo $this->db->last_query();
$this->sys_error_db('select t_test xxx error', $this->db);
exit;
}
}
}
//print_r($data[0]);
/*$qry = $this->db->insert_batch('x_adm_rekap_laboratorium', $data);
if (!$qry) {
//$this->db->trans_rollback();
echo $this->db->last_query();
$this->sys_error_db('select t_test xxx error', $this->db);
exit;
}*/
}
}
function generate_adm_patient($stage)
{
//$date = $prm['date'];
$sql = "SELECT
REG_DATE,
REG_NO,
PATIENT_ID,
PATIENT_NAME,
SEX_ID,
DOB,
AGE,
NPK,
JOB_TITLE,
DEPT,
DIVISION,
LOCATION,
AGREEMENT_NAME,
OTHER_ID
FROM x_adm_rekap_patient
WHERE STAGE = '{$stage}'";
$qry = $this->db->query($sql);
if ($qry) {
$rows = $qry->result_array();
} else {
$this->sys_error_db("select adm rekap patient error", $this->db);
}
// print_r($rows);
// exit;
$count_m_patient = 1;
$insert_query = [];
foreach ($rows as $key => $value) {
// print_r($value['PATIENT_ID']);
// exit;
$timestamp = strtotime($value['DOB']);
$pdob = date('Y-m-d', $timestamp);
$p_name = addslashes($value['PATIENT_NAME']);
$sql_check = "SELECT
M_PatientID,
M_PatientOldPID,
M_PatientName
FROM m_patient
WHERE M_PatientIsActive = 'Y'
AND
(
( M_PatientName = '{$p_name}' AND M_PatientDOB = '{$pdob}' AND '{$value['OTHER_ID']}' = '') OR
('{$value['NPK']}' <> '' AND M_PatientNIP = '{$value['NPK']}' AND M_PatientDOB = M_PatientDOB = '{$pdob}' ) OR
('{$value['OTHER_ID']}' <> '' AND M_PatientDOB = '{$pdob}' AND trim(M_PatientIdentifierValue) = '{$value['OTHER_ID']}')
) ";
$qry_check = $this->db->query($sql_check);
if ($qry_check) {
$rows_check = $qry_check->result_array();
} else {
/* $this->db->trans_rollback();
$this->sys_error_db("select check patient error", $this->db);
exit;*/
}
// print_r(count($rows_check));
// exit;
$title_id = 0;
$gender = "";
if (TRIM($value['SEX_ID']) == 'M') {
$title_id = 1;
$gender = "male";
} else {
$title_id = 3;
$gender = "female";
}
if (count($rows_check) == 0) {
// print_r("insert");
// exit;
$p_name = addslashes($value['PATIENT_NAME']);
$sql_insert = "INSERT INTO m_patient(
M_PatientRegisteredByCorporateID,
M_PatientOldPID,
M_PatientNoReg,
M_PatientM_TitleID,
M_PatientName,
M_PatientGender,
M_PatientDOB,
M_PatientNIP,
M_PatientJob,
M_PatientDivisi,
M_PatientLocation,
M_PatientDepartement,
M_PatientCreated,
M_PatientLastUpdated
) VALUES(
50,
'{$value['PATIENT_ID']}',
`fn_numbering_cpone`('P'),
{$title_id},
'{$p_name}',
'{$gender}',
'{$pdob}',
'{$value['NPK']}',
'{$value['JOB_TITLE']}',
'{$value['DIVISION']}',
'{$value['LOCATION']}',
'{$value['DEPT']}',
NOW(),
NOW()
)";
//$qry_insert = $this->db->query($sql_insert);
//$insert_query [] = $this->db->last_query();
/*if (!$qry_insert) {
$this->db->trans_rollback();
$this->sys_error_db("insert m_patient error", $this->db);
exit;
}*/
$count_m_patient = $count_m_patient +1;
} else {
$sql_select = "SELECT X_PatientM_PatientID,
X_PatientM_PatientOldPID
FROM x_patient
WHERE X_PatientM_PatientID = {$rows_check[0]['M_PatientID']}";
$qry_select = $this->db->query($sql_select);
if ($qry_select) {
$rows = $qry_select->result_array();
} else {
$this->sys_error_db("select x_patient", $this->db);
}
if (count($rows) == 0) {
$sql = "UPDATE m_patient SET M_PatientOldPID = '{$value['PATIENT_ID']}'
WHERE M_PatientID = {$rows_check[0]['M_PatientID']} ";
$this->db->query($sql);
if ($rows_check[0]['M_PatientOldPID'] == "") {
$sql = "INSERT INTO x_patient(
X_PatientM_PatientID,
X_PatientM_PatientOldPID,
X_PatientStage,
X_PatientCreated) VALUES(
'{$rows_check[0]['M_PatientID']}',
'{$value['PATIENT_ID']}',
'{$stage}',
NOW()
)";
$qry = $this->db->query($sql);
/*if (!$qry) {
$this->db->trans_rollback();
$this->sys_error_db("insert m_patient error", $this->db);
exit;
}*/
}
}
}
}
//$this->db->trans_commit();
$result = array(
"message" => "Pasien berhasil ditambahkan sebanyak ".$count_m_patient,
"affected_rows" => $this->db->affected_rows(),
"sql_insert"=> JOIN(";",$insert_query)
);
return $result;
}
function savecsvold(){
try {
if (!$this->isLogin) {
$this->sys_error("Invalid Token");
exit;
}
$prm = $this->sys_input;
$sql = "SELECT MAX(Stage) as stage
FROM x_adm_rekap_patient";
$query = $this->db->query($sql);
$stage = $query->row()->stage;
$stage = $stage + 1;
$stage = 20;
$stage = 19;
//$this->db->trans_begin();
$datas = $prm['data'];
if($datas && count($datas)){
foreach ($datas as $key => $value) {
$regDate = date('Y-m-d', strtotime($value['REG_DATE']));
$DOB = date('Y-m-d', strtotime($value['DOB']));
$sql = "DELETE FROM `x_adm_rekap_patient` WHERE `REG_NO` = ?";
$query = $this->db->query($sql,array($value['REG_NO']));
$sql = "INSERT INTO `x_adm_rekap_patient`(
`REG_DATE`,
`REG_NO`,
`PATIENT_ID`,
`PATIENT_NAME`,
`SEX_ID`,
`DOB`,
`AGE`,
`NPK`,
`OTHER_ID`,
`JOB_TITLE`,
`DEPT`,
`DIVISION`,
`LOCATION`,
`AGREEMENT_NAME`,
`STAGE`
)
VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)";
$query = $this->db->query($sql,array(
$regDate,
$value['REG_NO'],
$value['PATIENT_ID'],
$value['PATIENT_NAME'],
$value['SEX_ID'],
$DOB,
$value['AGE'],
isset($value['NPK'])?$value['NPK']:'',
isset($value['OTHER_ID'])?$value['OTHER_ID']:'',
isset($value['JOB_TITLE'])?$value['JOB_TITLE']:'',
isset($value['DEPT'])?$value['DEPT']:'',
isset($value['DIVISION'])?$value['DIVISION']:'',
isset($value['LOCATION'])?$value['LOCATION']:'',
isset($value['AGREEMENT_NAME'])?$value['AGREEMENT_NAME']:'',
$stage
));
//echo $this->db->last_query();
if (!$query) {
//$this->db->trans_rollback();
echo $this->db->last_query();
$this->sys_error_db('insert x_adm_rekap_patient error', $this->db);
exit;
}
$sql = "DELETE FROM `x_adm_rekap_riwayat` WHERE `REG_NO` = ?";
$query = $this->db->query($sql,array($value['REG_NO']));
$sql = "INSERT INTO `x_adm_rekap_riwayat` (
`REG_NO`,
`Keluhan`,
`Riwayat Penyakit Dahulu`,
`Ayah`,
`Ibu`,
`Alergi`,
`Kebiasaan Merokok`,
`Kebiasaan Alkohol`,
`Kebiasaan Olahraga`,
`Stage`)
VALUE(
?,?,?,?,?,?,?,?,?,?
)
";
$query = $this->db->query($sql,array(
$value['REG_NO'],
isset($value['Keluhan'])?$value['Keluhan']:'',
isset($value['Riwayat Penyakit Dahulu'])?$value['Riwayat Penyakit Dahulu']:'',
isset($value['Ayah'])?$value['Ayah']:'',
isset($value['Ibu'])?$value['Ibu']:'',
isset($value['Alergi'])?$value['Alergi']:'',
isset($value['Kebiasaan Merokok'])?$value['Kebiasaan Merokok']:'',
isset($value['Kebiasaan Alkohol'])?$value['Kebiasaan Alkohol']:'',
isset($value['Kebiasaan Olahraga'])?$value['Kebiasaan Olahraga']:'',
$stage
));
if (!$query) {
//$this->db->trans_rollback();
echo $this->db->last_query();
$this->sys_error_db('insert x_adm_rekap_riwayat error', $this->db);
exit;
}
$sql = "DELETE FROM `x_adm_rekap_fisik_vital` WHERE `REG_NO` = ?";
$query = $this->db->query($sql,array($value['REG_NO']));
$sql = "INSERT INTO `x_adm_rekap_fisik_vital`
(
`REG_NO`,
`TB`,
`BB`,
`BMI`,
`Sistolik`,
`Diastolik`,
`Nadi`,
`Frekuensi`,
`Visus_Kanan`,
`Visus_Kiri`,
`Kenal_Warna`,
`Lapang_Pandang`,
`Konjuktiva_Sklera`,
`Suhu`,
`Stage`) VALUES
(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)
";
$query = $this->db->query($sql,array(
$value['REG_NO'],
isset($value['Tinggi Badan'])?$value['Tinggi Badan']:'',
isset($value['Berat Badan'])?$value['Berat Badan']:'',
isset($value['BMI'])?$value['BMI']:'',
isset($value['Sistolik'])?$value['Sistolik']:'',
isset($value['Diastolik'])?$value['Diastolik']:'',
isset($value['Nadi'])?$value['Nadi']:'',
isset($value['Frekuensi'])?$value['Frekuensi']:'',
isset($value['Visus Kanan'])?$value['Visus Kanan']:'',
isset($value['Visus Kiri'])?$value['Visus Kiri']:'',
isset($value['Kenal Warna'])?$value['Kenal Warna']:'',
isset($value['Lapang Pandang'])?$value['Lapang Pandang']:'Normal',
isset($value['Konjuktiva - Sklera'])?$value['Konjuktiva - Sklera']:'',
isset($value['Suhu Badan'])?$value['Suhu Badan']:'',
$stage
));
if (!$query) {
//$this->db->trans_rollback();
echo $this->db->last_query();
$this->sys_error_db('insert x_adm_rekap_fisik_vital error', $this->db);
exit;
}
$sql = "DELETE FROM `x_adm_rekap_fisik_organ` WHERE `REG_NO` = ?";
$query = $this->db->query($sql,array($value['REG_NO']));
$sql = "INSERT INTO `x_adm_rekap_fisik_organ` (
`REG_NO`,
`Telinga`,
`Hidung`,
`Tenggorokan`,
`Rongga_Mulut_Gigi`,
`Jantung`,
`Paru`,
`Abdomen`,
`Ginjal`,
`Hernia`,
`Kulit`,
`Anogenital`,
`Extremitas`,
`Tulang_belakang`,
`Refleks_Fisiologis`,
`Refleks_Patologis`,
`Suhu`,
`Stage`)
VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)";
$query = $this->db->query($sql,array(
$value['REG_NO'],
isset($value['Telinga'])?$value['Telinga']:'',
isset($value['Hidung'])?$value['Hidung']:'',
isset($value['Tenggorokan'])?$value['Tenggorokan']:'',
isset($value['Rongga Mulut dan Gigi'])?$value['Rongga Mulut dan Gigi']:'',
isset($value['Jantung'])?$value['Jantung']:'',
isset($value['Paru'])?$value['Paru']:'',
isset($value['Abdomen'])?$value['Abdomen']:'',
isset($value['Ginjal'])?$value['Ginjal']:'',
isset($value['Hernia'])?$value['Hernia']:'',
isset($value['Kulit'])?$value['Kulit']:'',
isset($value['Anogenital'])?$value['Anogenital']:'',
isset($value['Extremitas'])?$value['Extremitas']:'',
isset($value['Tulang belakang'])?$value['Tulang belakang']:'',
isset($value['Refleks Fisiologis'])?$value['Refleks Fisiologis']:'',
isset($value['Refleks Patologis'])?$value['Refleks Patologis']:'',
isset($value['Suhu Badan'])?$value['Suhu Badan']:'',
$stage
));
if (!$query) {
//$this->db->trans_rollback();
echo $this->db->last_query();
$this->sys_error_db('insert x_adm_rekap_fisik_organ error', $this->db);
exit;
}
if(isset($value['Dokter Pemeriksa'])){
$sql = "DELETE FROM `x_adm_rekap_fisik_doctor` WHERE `REG_NO` = ?";
$query = $this->db->query($sql,array($value['REG_NO']));
$sql = "INSERT INTO `x_adm_rekap_fisik_doctor` (`REG_NO`, `PATIENT_ID`, `DOCTOR`, `Stage`) VALUES
(?, ?, ?, ?)";
$query = $this->db->query($sql,array(
$value['REG_NO'],
$value['PATIENT_ID'],
isset($value['Dokter Pemeriksa'])?$value['Dokter Pemeriksa']:'',
$stage
));
if (!$query) {
//$this->db->trans_rollback();
echo $this->db->last_query();
$this->sys_error_db('insert x_adm_rekap_fisik_doctor error', $this->db);
exit;
}
}
if(isset($value['KESIMPULAN'])){
$sql = "DELETE FROM `x_adm_rekap_fisik_conclusion` WHERE `REG_NO` = ?";
$query = $this->db->query($sql,array($value['REG_NO']));
$sql = "INSERT INTO `x_adm_rekap_fisik_conclusion` (`REG_NO`, `KESIMPULAN`, `Fitness_Category`, `Stage`) VALUES
(?,?,?,?)";
$query = $this->db->query($sql,array(
$value['REG_NO'],
isset($value['KESIMPULAN'])?$value['KESIMPULAN']:'',
isset($value['Fitness Category'])?$value['Fitness Category']:'',
$stage
));
if (!$query) {
//$this->db->trans_rollback();
echo $this->db->last_query();
$this->sys_error_db('insert x_adm_rekap_fisik_conclusion error', $this->db);
exit;
}
}
if(isset($value['SARAN'])){
$sql = "DELETE FROM `x_adm_rekap_fisik_saran` WHERE `REG_NO` = ?";
$query = $this->db->query($sql,array($value['REG_NO']));
$sql = "INSERT INTO `x_adm_rekap_fisik_saran` (`REG_NO`, `Saran`, `Stage`) VALUES
(?,?,?)";
$query = $this->db->query($sql,array(
$value['REG_NO'],
isset($value['SARAN'])?$value['SARAN']:'',
$stage
));
if (!$query) {
//$this->db->trans_rollback();
echo $this->db->last_query();
$this->sys_error_db('insert x_adm_rekap_fisik_saran error', $this->db);
exit;
}
}
if(isset($value['No. Rontgen'])){
$sql = "DELETE FROM `x_adm_rekap_thorax` WHERE `REG_NO` = ?";
$query = $this->db->query($sql,array($value['REG_NO']));
$sql = "INSERT INTO `x_adm_rekap_thorax`(
`REG_NO`,
`Kesan`,
`Saran`,
`Tulang_dan_jaringan_lunak`,
`Paru`,
`Jantung`,
`Diafragma`,
`Sinus`,
`No_Rontgen`,
`Radiologist`,
`Stage`)
VALUES(?,?,?,?,?,?,?,?,?,?,?)";
$query = $this->db->query($sql,array(
$value['REG_NO'],
isset($value['KESAN ( Thorax )'])?$value['KESAN ( Thorax )']:'',
isset($value['SARAN ( Thorax )'])?$value['SARAN ( Thorax )']:'',
isset($value['Tulang dan jaringan lunak ( Thorax )'])?$value['Tulang dan jaringan lunak ( Thorax )']:'',
isset($value['Paru ( Thorax )'])?$value['Paru ( Thorax )']:'',
isset($value['Jantung ( Thorax )'])?$value['Jantung ( Thorax )']:'',
isset($value['Diafragma'])?$value['Diafragma']:'',
isset($value['Sinus ( Thorax )'])?$value['Sinus ( Thorax )']:'',
isset($value['No. Rontgen'])?$value['No. Rontgen']:'',
isset($value['Radiologist'])?$value['Radiologist']:'',
$stage
));
if (!$query) {
//$this->db->trans_rollback();
echo $this->db->last_query();
$this->sys_error_db('insert x_adm_rekap_thorax error', $this->db);
exit;
}
}
if(isset($value['KESAN ( EKG )'])){
$sql = "DELETE FROM `x_adm_rekap_ecg` WHERE `REG_NO` = ?";
$query = $this->db->query($sql,array($value['REG_NO']));
$sql = "INSERT INTO `x_adm_rekap_ecg`(
`REG_NO`,
`Kesan`,
`Saran`,
`Aritmia`,
`T_Wave`,
`ST`,
`QRS`,
`QRS_Durasi`,
`Axis`,
`PR_Internal`,
`HR`,
`P_Wave`,
`Irama`,
`Cardiologist`,
`Stage`)
VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)";
$query = $this->db->query($sql,array(
$value['REG_NO'],
isset($value['KESAN ( EKG )'])?$value['KESAN ( EKG )']:'',
isset($value['SARAN ( EKG )'])?$value['SARAN ( EKG )']:'',
isset($value['Aritmia ( EKG )'])?$value['Aritmia ( EKG )']:'',
isset($value['Paru ( Thorax )'])?$value['T wave ( EKG )']:'',
isset($value['ST ( EKG )'])?$value['ST ( EKG )']:'',
isset($value['QRS ( EKG )'])?$value['QRS ( EKG )']:'',
isset($value['QRS durasi ( EKG )'])?$value['QRS durasi ( EKG )']:'',
isset($value['Axis ( EKG )'])?$value['Axis ( EKG )']:'',
isset($value['PR internal ( EKG )'])?$value['PR internal ( EKG )']:'',
isset($value['HR ( EKG )'])?$value['HR ( EKG )']:'',
isset($value['P wave ( EKG )'])?$value['P wave ( EKG )']:'',
isset($value['Irama ( EKG )'])?$value['Irama ( EKG )']:'',
isset($value['Cardiologist (EKG)'])?$value['Cardiologist (EKG)']:'',
$stage
));
if (!$query) {
//$this->db->trans_rollback();
echo $this->db->last_query();
$this->sys_error_db('insert x_adm_rekap_ecg error', $this->db);
exit;
}
}
if(isset($value['SARAN ( Audiometri )'])){
$sql = "DELETE FROM `x_adm_rekap_audiometri` WHERE `REG_NO` = ?";
$query = $this->db->query($sql,array($value['REG_NO']));
$sql = "INSERT INTO `x_adm_rekap_audiometri` (
`REG_NO`,
`Kesimpulan`,
`Saran`,
`Kesimpulan_right_ear`,
`Kesimpulan_left_ear`,
`AC_Right`,
`AC_Right_250`,
`AC_Right_500`,
`AC_Right_1000`,
`AC_Right_2000`,
`AC_Right_3000`,
`AC_Right_4000`,
`AC_Right_6000`,
`AC_Right_8000`,
`AC_Left`,
`AC_Left_250`,
`AC_Left_500`,
`AC_Left_1000`,
`AC_Left_2000`,
`AC_Left_3000`,
`AC_Left_4000`,
`AC_Left_6000`,
`AC_Left_8000`,
`BC_Right`,
`BC_Right_250`,
`BC_Right_500`,
`BC_Right_1000`,
`BC_Right_2000`,
`BC_Right_3000`,
`BC_Right_4000`,
`BC_Right_6000`,
`BC_Right_8000`,
`BC_Left`,
`BC_Left_250`,
`BC_Left_500`,
`BC_Left_1000`,
`BC_Left_2000`,
`BC_Left_3000`,
`BC_Left_4000`,
`BC_Left_6000`,
`BC_Left_8000`,
`Dokter_THT`,
`Stage`)
VALUES
(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)";
$query = $this->db->query($sql,array(
$value['REG_NO'],
isset($value['Kesimpulan ( Audiometri )'])?$value['Kesimpulan ( Audiometri )']:'',
isset($value['SARAN ( Audiometri )'])?$value['SARAN ( Audiometri )']:'',
isset($value['Kesimpulan Right Ear ( Audiometri)'])?$value['Kesimpulan Right Ear ( Audiometri)']:'',
isset($value['Kesimpulan Left Ear ( Audiometri )'])?$value['Kesimpulan Left Ear ( Audiometri )']:'',
isset($value['Right Ear ( Audiometri )'])?$value['Right Ear ( Audiometri )']:'',
isset($value['Right Ear ( Audiometri ) 250'])?$value['Right Ear ( Audiometri ) 250']:'',
isset($value['Right Ear ( Audiometri ) 500'])?$value['Right Ear ( Audiometri ) 500']:'',
isset($value['Right Ear ( Audiometri ) 1000'])?$value['Right Ear ( Audiometri ) 1000']:'',
isset($value['Right Ear ( Audiometri ) 2000'])?$value['Right Ear ( Audiometri ) 2000']:'',
isset($value['Right Ear ( Audiometri ) 3000'])?$value['Right Ear ( Audiometri ) 3000']:'',
isset($value['Right Ear ( Audiometri ) 4000'])?$value['Right Ear ( Audiometri ) 4000']:'',
isset($value['Right Ear ( Audiometri ) 6000'])?$value['Right Ear ( Audiometri ) 6000']:'',
isset($value['Right Ear ( Audiometri ) 8000'])?$value['Right Ear ( Audiometri ) 8000']:'',
isset($value['Left Ear ( Audiometri )'])?$value['Left Ear ( Audiometri )']:'',
isset($value['Left Ear ( Audiometri ) 250'])?$value['Left Ear ( Audiometri ) 250']:'',
isset($value['Left Ear ( Audiometri ) 500'])?$value['Left Ear ( Audiometri ) 500']:'',
isset($value['Left Ear ( Audiometri ) 1000'])?$value['Left Ear ( Audiometri ) 1000']:'',
isset($value['Left Ear ( Audiometri ) 2000'])?$value['Left Ear ( Audiometri ) 2000']:'',
isset($value['Left Ear ( Audiometri ) 3000'])?$value['Left Ear ( Audiometri ) 3000']:'',
isset($value['Left Ear ( Audiometri ) 4000'])?$value['Left Ear ( Audiometri ) 4000']:'',
isset($value['Left Ear ( Audiometri ) 6000'])?$value['Left Ear ( Audiometri ) 6000']:'',
isset($value['Left Ear ( Audiometri ) 8000'])?$value['Left Ear ( Audiometri ) 8000']:'',
isset($value['BC Right ( Audiometri )'])?$value['BC Right ( Audiometri )']:'',
isset($value['BC Right ( Audiometri ) 250'])?$value['BC Right ( Audiometri ) 250']:'',
isset($value['BC Right ( Audiometri ) 500'])?$value['BC Right ( Audiometri ) 500']:'',
isset($value['BC Right ( Audiometri ) 1000'])?$value['BC Right ( Audiometri ) 1000']:'',
isset($value['BC Right ( Audiometri ) 2000'])?$value['BC Right ( Audiometri ) 2000']:'',
isset($value['BC Right ( Audiometri ) 3000'])?$value['BC Right ( Audiometri ) 3000']:'',
isset($value['BC Right ( Audiometri ) 4000'])?$value['BC Right ( Audiometri ) 4000']:'',
isset($value['BC Right ( Audiometri ) 6000'])?$value['BC Right ( Audiometri ) 6000']:'',
isset($value['BC Right ( Audiometri ) 8000'])?$value['BC Right ( Audiometri ) 8000']:'',
isset($value['BC Left ( Audiometri )'])?$value['BC Left ( Audiometri )']:'',
isset($value['BC Left ( Audiometri ) 250'])?$value['BC Left ( Audiometri ) 250']:'',
isset($value['BC Left ( Audiometri ) 500'])?$value['BC Left ( Audiometri ) 500']:'',
isset($value['BC Left ( Audiometri ) 1000'])?$value['BC Left ( Audiometri ) 1000']:'',
isset($value['BC Left ( Audiometri ) 2000'])?$value['BC Left ( Audiometri ) 2000']:'',
isset($value['BC Left ( Audiometri ) 3000'])?$value['BC Left ( Audiometri ) 3000']:'',
isset($value['BC Left ( Audiometri ) 4000'])?$value['BC Left ( Audiometri ) 4000']:'',
isset($value['BC Left ( Audiometri ) 6000'])?$value['BC Left ( Audiometri ) 6000']:'',
isset($value['BC Left ( Audiometri ) 8000'])?$value['BC Left ( Audiometri ) 8000']:'',
isset($value['Dokter THT'])?$value['Dokter THT']:'',
$stage
));
if (!$query) {
//$this->db->trans_rollback();
echo $this->db->last_query();
$this->sys_error_db('insert audiometri error', $this->db);
exit;
}
}
if(isset($value['Kesan (USG ABDOMEN)'])){
$sql = "DELETE FROM `x_adm_rekap_fisik_usg` WHERE `REG_NO` = ?";
$query = $this->db->query($sql,array($value['REG_NO']));
$sql = "INSERT INTO `x_adm_rekap_fisik_usg` (
`REG_NO`,
`Hepar (USG ABDOMEN)`,
`V. Fellea ( USG ABDOMEN)`,
`Pancreas (USG ABDOMEN)`,
`Lien (USG ABDOMEN)`,
`Right Kidney (USG ABDOMEN)`,
`Left Kidney (USG ABDOMEN)`,
`Buli-Buli (USG ABDOMEN)`,
`Prostat (USG ABDOMEN)`,
`Uterus dan Adnexa (USG ABDOMEN)`,
`Kesan (USG ABDOMEN)`,
`SARAN (USG ABDOMEN)`,
`Radiologist (USG ABDOMEN)`,
`Appendix (USG ABDOMEN)`,
`Stage`)
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?,?)";
$query = $this->db->query($sql,array(
isset($value['REG_NO'])?$value['REG_NO']:'',
isset($value['Hepar (USG ABDOMEN)'])?$value['Hepar (USG ABDOMEN)']:'',
isset($value['V. Fellea ( USG ABDOMEN)'])?$value['V. Fellea ( USG ABDOMEN)']:'',
isset($value['Pancreas (USG ABDOMEN)'])?$value['Pancreas (USG ABDOMEN)']:'',
isset($value['Lien (USG ABDOMEN)'])?$value['Lien (USG ABDOMEN)']:'',
isset($value['Right Kidney (USG ABDOMEN)'])?$value['Right Kidney (USG ABDOMEN)']:'',
isset($value['Left Kidney (USG ABDOMEN)'])?$value['Left Kidney (USG ABDOMEN)']:'',
isset($value['Buli-Buli (USG ABDOMEN)'])?$value['Buli-Buli (USG ABDOMEN)']:'',
isset($value['Prostat (USG ABDOMEN)'])?$value['Prostat (USG ABDOMEN)']:'',
isset($value['Uterus dan Adnexa (USG ABDOMEN)'])?$value['Uterus dan Adnexa (USG ABDOMEN)']:'',
isset($value['Kesan (USG ABDOMEN)'])?$value['Kesan (USG ABDOMEN)']:'',
isset($value['SARAN (USG ABDOMEN)'])?$value['SARAN (USG ABDOMEN)']:'',
isset($value['Radiologist (USG ABDOMEN)'])?$value['Radiologist (USG ABDOMEN)']:'',
isset($value['Appendix (USG ABDOMEN)'])?$value['Appendix (USG ABDOMEN)']:'',
$stage
));
if (!$query) {
//$this->db->trans_rollback();
echo $this->db->last_query();
$this->sys_error_db('insert usg error', $this->db);
exit;
}
}
if(isset($value['KETERANGAN LAB'])){
$sql = "DELETE FROM `x_adm_keterangan_lab` WHERE `REG_NO` = ?";
$query = $this->db->query($sql,array($value['REG_NO']));
$sql = "INSERT INTO `x_adm_keterangan_lab` (`REG_NO`, `Keterangan`,`Stage`) VALUES (?,?,?)";
$query = $this->db->query($sql,array(
$value['REG_NO'],
isset($value['KETERANGAN LAB'])?$value['KETERANGAN LAB']:'',
$stage
));
}
$sql = "DELETE FROM `x_adm_rekap_fisik_lab` WHERE `REG_NO` = ?";
$query = $this->db->query($sql,array($value['REG_NO']));
$sql = "INSERT INTO `x_adm_rekap_fisik_lab` (
`REG_NO`,
`Hemoglobin_Hema`,
`Laju_Endap_Darah_LED_BBS`,
`Lekosit_Hema`,
`Eosinofil_Diff`,
`Trombosit_Hema`,
`AST_SGOT`,
`ALT_SGPT`,
`Kolesterol_Total`,
`Kolesterol_LDL`,
`Kolesterol_HDL`,
`Trigliserida`,
`Ureum`,
`Kreatinin`,
`Asam_Urat`,
`eGFR`,
`Glukosa_Darah_Puasa`,
`Glukosa_Darah_2_jam_PP`,
`HBsAg_Kualitatif`,
`Protein_Urine_Rutin`,
`Glukosa_Urine_Rutin`,
`Keton_Urine_Rutin`,
`Bilirubin_Urine_Rutin`,
`Darah_Urine_Rutin`,
`Nitrit_Urine_Rutin`,
`Urobilinogen_Urine_Rutin`,
`Esterase_Lekosit_Urine_Rutin`,
`Leukosit_Sedimen_Urine_Rutin`,
`Eritrosit_sedimen_Urine_Rutin`,
`Epitel_Urine_Rutin`,
`Silinder_Urine_Rutin`,
`Kristal_Urine_Rutin`,
`Jamur_Urine_Rutin`,
`Bakteri_Urine_Rutin`,
`Basofil_Diff`,
`Limfosit_Diff`,
`Monosit_Diff`,
`Neutrofil_Diff`,
`Eritrosit_Hema`,
`MCH_Nilai_Eritrosit_rata_rata`,
`MCHC_Nilai_Eritrosit_rata_rata`,
`MCV_Nilai_Eritrosit_rata_rata`,
`Hematokrit_Hema`,
`RDW_Sebaran_Ukuran_Eritrosit`,
`Limfosit_Absolut_Diff`,
`Ratio_Neutrofil_Limfosit`,
`Ras`,
`pH_Urine_Rutin`,
`Berat_Jenis_Urine_Rutin`,
`Kejernihan_Urine_Rutin`,
`Warna_Urine_Rutin`,
`Amphetamin`,
`Metamphetamine`,
`Kokain`,
`Benzodiazepin`,
`Plumbum`,
`HbA1C`,
`Hba1C_IFCC`,
`Anti HBs`,
`HBsAg`,
`eAg`,
`CRP`,
`Stage`)
VALUES(
?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?
)";
$query = $this->db->query($sql,array(
$value['REG_NO'],
isset($value['Hemoglobin (Hema)'])?$value['Hemoglobin (Hema)']:'',
isset($value['Laju Endap Darah (LED/BBS)'])?$value['Laju Endap Darah (LED/BBS)']:'',
isset($value['Lekosit (Hema)'])?$value['Lekosit (Hema)']:'',
isset($value['Eosinofil (Diff)'])?$value['Eosinofil (Diff)']:'',
isset($value['Trombosit (Hema)'])?$value['Trombosit (Hema)']:'',
isset($value['AST/SGOT'])?$value['AST/SGOT']:'',
isset($value['ALT/SGPT'])?$value['ALT/SGPT']:'',
isset($value['Kolesterol Total'])?$value['Kolesterol Total']:'',
isset($value['Kolesterol LDL'])?$value['Kolesterol LDL']:'',
isset($value['Kolesterol HDL'])?$value['Kolesterol HDL']:'',
isset($value['Trigliserida'])?$value['Trigliserida']:'',
isset($value['Ureum'])?$value['Ureum']:'',
isset($value['Kreatinin'])?$value['Kreatinin']:'',
isset($value['Asam Urat'])?$value['Asam Urat']:'',
isset($value['eGFR'])?$value['eGFR']:'',
isset($value['Glukosa Darah (Puasa)'])?$value['Glukosa Darah (Puasa)']:'',
isset($value['Glukosa Darah (2 jam PP)'])?$value['Glukosa Darah (2 jam PP)']:'',
isset($value['HBsAg ( Kualitatif )'])?$value['HBsAg ( Kualitatif )']:'',
isset($value['Protein (Urine Rutin)'])?$value['Protein (Urine Rutin)']:'',
isset($value['Glukosa (Urine Rutin)'])?$value['Glukosa (Urine Rutin)']:'',
isset($value['Keton (Urine Rutin)'])?$value['Keton (Urine Rutin)']:'',
isset($value['Bilirubin (Urine Rutin)'])?$value['Bilirubin (Urine Rutin)']:'',
isset($value['Darah (Urine Rutin)'])?$value['Darah (Urine Rutin)']:'',
isset($value['Nitrit (Urine Rutin)'])?$value['Nitrit (Urine Rutin)']:'',
isset($value['Urobilinogen (Urine Rutin)'])?$value['Urobilinogen (Urine Rutin)']:'',
isset($value['Esterase Lekosit (Urine Rutin)'])?$value['Esterase Lekosit (Urine Rutin)']:'',
isset($value['Leukosit Sedimen (Urine Rutin)'])?$value['Leukosit Sedimen (Urine Rutin)']:'',
isset($value['Eritrosit sedimen (Urine Rutin)'])?$value['Eritrosit sedimen (Urine Rutin)']:'',
isset($value['Epitel (Urine Rutin)'])?$value['Epitel (Urine Rutin)']:'',
isset($value['Silinder (Urine Rutin)'])?$value['Silinder (Urine Rutin)']:'',
isset($value['Kristal (Urine Rutin)'])?$value['Kristal (Urine Rutin)']:'',
isset($value['Jamur (Urine Rutin)'])?$value['Jamur (Urine Rutin)']:'',
isset($value['Bakteri (Urine Rutin)'])?$value['Bakteri (Urine Rutin)']:'',
isset($value['Basofil (Diff)'])?$value['Basofil (Diff)']:'',
isset($value['Limfosit (Diff)'])?$value['Limfosit (Diff)']:'',
isset($value['Monosit (Diff)'])?$value['Monosit (Diff)']:'',
isset($value['Neutrofil (Diff)'])?$value['Neutrofil (Diff)']:'',
isset($value['Eritrosit (Hema)'])?$value['Eritrosit (Hema)']:'',
isset($value['MCH (Nilai Eritrosit rata-rata)'])?$value['MCH (Nilai Eritrosit rata-rata)']:'',
isset($value['MCHC (Nilai Eritrosit rata-rata)'])?$value['MCHC (Nilai Eritrosit rata-rata)']:'',
isset($value['MCV (Nilai Eritrosit rata-rata)'])?$value['MCV (Nilai Eritrosit rata-rata)']:'',
isset($value['Hematokrit (Hema)'])?$value['Hematokrit (Hema)']:'',
isset($value['RDW (Sebaran Ukuran Eritrosit )'])?$value['RDW (Sebaran Ukuran Eritrosit )']:'',
isset($value['Limfosit Absolut (Diff)'])?$value['Limfosit Absolut (Diff)']:'',
isset($value['Ratio Neutrofil/Limfosit'])?$value['Ratio Neutrofil/Limfosit']:'',
isset($value['Ras'])?$value['Ras']:'',
isset($value['pH (Urine Rutin)'])?$value['pH (Urine Rutin)']:'',
isset($value['Berat Jenis (Urine Rutin)'])?$value['Berat Jenis (Urine Rutin)']:'',
isset($value['Kejernihan (Urine Rutin)'])?$value['Kejernihan (Urine Rutin)']:'',
isset($value['Warna (Urine Rutin)'])?$value['Warna (Urine Rutin)']:'',
isset($value['Amphetamin'])?$value['Amphetamin']:'',
isset($value['Metamphetamine'])?$value['Metamphetamine']:'',
isset($value['Kokain (Cocaine)'])?$value['Kokain (Cocaine)']:'',
isset($value['Benzodiazepin'])?$value['Benzodiazepin']:'',
isset($value['Plumbum ( Pb)'])?$value['Plumbum ( Pb)']:'',
isset($value['HBA1C'])?$value['HBA1C']:'',
isset($value['HBA1C ( IFCC )'])?$value['HBA1C ( IFCC )']:'',
isset($value['Anti HBs'])?$value['Anti HBs']:'',
isset($value['HBsAg ( Kualitatif )'])?$value['HBsAg ( Kualitatif )']:'',
isset($value['eAg ( HBA1C )'])?$value['eAg ( HBA1C )']:'',
isset($value['CRP Kuantitatif'])?$value['CRP Kuantitatif']:'',
$stage
));
//echo $this->db->last_query();
if (!$query) {
//$this->db->trans_rollback();
echo $this->db->last_query();
$this->sys_error_db('insert lab error', $this->db);
exit;
}
if(isset($value['Kesan ( TREADMILL )'])){
$sql = "DELETE FROM `x_adm_rekap_treadmill` WHERE `REG_NO` = ?";
$query = $this->db->query($sql,array($value['REG_NO']));
$sql = "INSERT INTO `x_adm_rekap_treadmill`(
`REG_NO`,
`Kesan`,
`Saran`,
`Hasil`,
`Stage`)
VALUES(?,?,?,?,?)";
$query = $this->db->query($sql,array(
$value['REG_NO'],
isset($value['Kesan ( TREADMILL )'])?$value['Kesan ( TREADMILL )']:'',
isset($value['Saran ( TREADMILL )'])?$value['Saran ( TREADMILL )']:'',
isset($value['Hasil ( TREADMILL )'])?$value['Hasil ( TREADMILL )']:'',
$stage
));
//echo $this->db->last_query();
if (!$query) {
//$this->db->trans_rollback();
echo $this->db->last_query();
$this->sys_error_db('insert x_adm_rekap_treadmill error', $this->db);
exit;
}
}
if(isset($value['KESAN ( Spirometri )'])){
$sql = "DELETE FROM `x_adm_rekap_spirometri` WHERE `REG_NO` = ?";
$query = $this->db->query($sql,array($value['REG_NO']));
$sql = "INSERT INTO `x_adm_rekap_spirometri` (
`REG_NO`,
`F V C ( L )`,
`F V C ( Measured )`,
`F E V1 ( Measured )`,
`FEV1 / FVC (%) ( Measured )`,
`F E V1 ( L )`,
`F V C ( Predicted )`,
`F E V1 ( Predicted )`,
`FEV1 / FVC (%) ( Predicted )`,
`FEV1 / FVC ( % )`,
`F V C ( Percentage )`,
`F E V1 ( Percentage )`,
`FEV1 / FVC (%) ( Percentage )`,
`KESAN ( Spirometri )`,
`SARAN ( Spirometri )`,
`Pulmonologist`,
`Stage`
)
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)";
$query = $this->db->query($sql,array(
$value['REG_NO'],
isset($value['F V C ( L )'])?$value['F V C ( L )']:'',
isset($value['F V C ( Measured )'])?$value['F V C ( Measured )']:'',
isset($value['F E V1 ( Measured )'])?$value['F E V1 ( Measured )']:'',
isset($value['FEV1 / FVC (%) ( Measured )'])?$value['FEV1 / FVC (%) ( Measured )']:'',
isset($value['F E V1 ( L )'])?$value['F E V1 ( L )']:'',
isset($value['F V C ( Predicted )'])?$value['F V C ( Predicted )']:'',
isset($value['F E V1 ( Predicted )'])?$value['F E V1 ( Predicted )']:'',
isset($value['FEV1 / FVC (%) ( Predicted )'])?$value['FEV1 / FVC (%) ( Predicted )']:'',
isset($value['FEV1 / FVC ( % )'])?$value['FEV1 / FVC ( % )']:'',
isset($value['F V C ( Percentage )'])?$value['F V C ( Percentage )']:'',
isset($value['F E V1 ( Percentage )'])?$value['F E V1 ( Percentage )']:'',
isset($value['FEV1 / FVC (%) ( Percentage )'])?$value['FEV1 / FVC (%) ( Percentage )']:'',
isset($value['KESAN ( Spirometri )'])?$value['KESAN ( Spirometri )']:'',
isset($value['SARAN ( Spirometri )'])?$value['SARAN ( Spirometri )']:'',
isset($value['Pulmonologist'])?$value['Pulmonologist']:'',
$stage
));
//echo $this->db->last_query();
if (!$query) {
//$this->db->trans_rollback();
echo $this->db->last_query();
$this->sys_error_db('insert x_adm_rekap_spirometri error', $this->db);
exit;
}
}
///akhir
}
}
//$this->db->trans_commit();
$result = array(
"records" => $rows,
"sql" => $this->db->last_query()
);
$this->sys_ok($result);
} catch (Exception $exc) {
$message = $exc->getMessage();
$this->sys_error($message);
}
}
function xsxssavecsvxx()
{
try {
if (!$this->isLogin) {
$this->sys_error("Invalid Token");
exit;
}
$userid = $this->sys_user["M_UserID"];
$prm = $this->sys_input;
$datas = $prm['data'];
// print_r($prm);
// exit;
// bisa upload file excel beberapa kali
// $sql = "UPDATE mcu_preregister_patients SET Mcu_PreregisterPatientsIsActive = 'N' WHERE Mcu_PreregisterPatientsMgm_McuID = '{$prm['xid']}'";
// $this->db->query($sql);
//echo $sql;
foreach ($datas as $k => $v) {
$timestamp = strtotime($v['TANGGAL_LAHIR']);
$pdob = date('Y-m-d', $timestamp);
$v['NAMA'] = str_replace("'", "\\'", $v['NAMA']);
$patient_id = 0;
if ($v['PID'] != '') {
$sql = "SELECT *
FROM m_patient
WHERE M_PatientNoReg = '{$v['PID']}' LIMIT 1";
$exist_r = $this->db->query($sql)->row_array();
if ($exist_r) {
$patient_id = $exist_r["M_PatientID"];
$v['NAMA'] = $exist_r["M_PatientName"];
$pdob = date('Y-m-d', strtotime($exist_r['M_PatientDOB']));
$title_id = $exist_r["M_PatientM_TitleID"];
$sex_id = $exist_r["M_PatientGender"];
$religion_id = $exist_r["M_PatientReligionCode"];
$v['NIK'] = $v['NIK'] ? $v['NIK'] : $exist_r["M_PatientNIK"];
$v['EMAIL'] = $v['EMAIL'] ? $v['EMAIL'] : $exist_r["M_PatientEmail"];
$v['HP'] = $v['HP'] ? $v['HP'] : $exist_r["M_PatientHP"];
$v['JOB'] = $v['JOB'] ? $v['JOB'] : $exist_r["M_PatientJob"];
$v['POSISI'] = $v['POSISI'] ? $v['POSISI'] : $exist_r["M_PatientPosisi"];
$v['DIVISI'] = $v['DIVISI'] ? $v['DIVISI'] : $exist_r["M_PatientDivisi"];
$v['DEPARTEMENT'] = $v['DEPARTEMENT'] ? $v['DEPARTEMENT'] : $exist_r["M_PatientDepartement"];
$v['LOKASI'] = $v['LOKASI'] ? $v['LOKASI'] : $exist_r["M_PatientLocation"];
$v['JENIS_KELAMIN'] = $exist_r["M_PatientGender"] == 'male' ? 'L' : 'P';
}
// echo $sql;
}
if ($v['KTP'] != '') {
$sql = "SELECT *
FROM m_patient
WHERE
M_PatientIdentifierCode = 'NNIDN' AND
M_PatientIdentifierValue = '{$v['KTP']}' AND
M_PatientIsActive = 'Y' LIMIT 1";
$exist_r = $this->db->query($sql)->row_array();
if ($exist_r) {
$patient_id = $exist_r["M_PatientID"];
$v['NAMA'] = $exist_r["M_PatientName"];
//$pdob = date('Y-m-d',strtotime($exist_r['M_PatientDOB']));
$title_id = $exist_r["M_PatientM_TitleID"];
$v['EMAIL'] = $v['EMAIL'] ? $v['EMAIL'] : $exist_r["M_PatientEmail"];
$v['JENIS_KELAMIN'] = $v['JENIS_KELAMIN'] ? $v['JENIS_KELAMIN'] : 'L';
$v['HP'] = $v['HP'] ? $v['HP'] : $exist_r["M_PatientHP"];
$v['JOB'] = $v['JOB'] ? $v['JOB'] : $exist_r["M_PatientJob"];
$v['POSISI'] = $v['POSISI'] ? $v['POSISI'] : $exist_r["M_PatientPosisi"];
$v['DIVISI'] = $v['DIVISI'] ? $v['DIVISI'] : $exist_r["M_PatientDivisi"];
$v['LOKASI'] = $v['LOKASI'] ? $v['LOKASI'] : $exist_r["M_PatientLocation"];
$v['DEPARTEMENT'] = $v['DEPARTEMENT'] ? $v['DEPARTEMENT'] : $exist_r["M_PatientDepartement"];
}
//echo $sql;
}
$title_id = 0;
$gender = "";
//$sql = "SELECT * FROM m_title WHERE M_TitleM_SexID = '{$sex_id}' AND M_TitleIsActive = 'Y' ORDER BY M_TitleID ASC LIMIT 1";
//$title_id = $this->db->query($sql)->row()->M_TitleID;
if (TRIM($v['JENIS_KELAMIN']) == 'L') {
$title_id = 1;
$gender = "male";
} else {
$title_id = 3;
$gender = "female";
}
$sql_corporate = "SELECT CorporateID, CorporateCode
FROM corporate
WHERE CorporateIsActive = 'Y' AND CorporateID = '{$prm['corporateID']}' LIMIT 1";
$qry_corporate = $this->db->query($sql_corporate);
if ($qry_corporate) {
$rowcor = $qry_corporate->row_array();
} else {
$this->db->sys_error_db("select corporate", $this->db);
exit;
}
$sql_pre = "SELECT * FROM mcu_preregister_patients WHERE ((Mcu_PreregisterPatientsPatientName = '{$v['NAMA']}' AND
Mcu_PreregisterPatientsDOB = '{$pdob}' AND
Mcu_PreregisterPatientsNIP = '{$v['NIP']}') OR Mcu_PreregisterPatientsKTP = '{$v['KTP']}' AND '{$v['KTP']}' != '')
AND Mcu_PreregisterPatientsMgm_McuID = '{$prm['xid']}' AND
Mcu_PreregisterPatientsIsActive = 'Y' LIMIT 1";
$qry_pre = $this->db->query($sql_pre)->row_array();
// echo $this->db->last_query();
if (count($qry_pre) == 0) {
$query = " INSERT INTO mcu_preregister_patients (
Mcu_PreregisterPatientsMgm_McuID,
Mcu_PreregisterPatientsCorporateCode,
Mcu_PreregisterPatientsNIP,
Mcu_PreregisterPatientsKTP,
Mcu_PreregisterPatientsM_PatientID,
Mcu_PreregisterPatientsM_TitleID,
Mcu_PreregisterPatientsPatientName,
Mcu_PreregisterPatientsGender,
Mcu_PreregisterPatientsDOB,
Mcu_PreregisterPatientsJob,
Mcu_PreregisterPatientsEmail,
Mcu_PreregisterPatientsHp,
Mcu_PreregisterPatientsPosisi,
Mcu_PreregisterPatientsDivisi,
Mcu_PreregisterPatientsLocation,
Mcu_PreregisterPatientsDepartment,
Mcu_PreregisterPatientsOrders,
Mcu_PreregisterPatientsCreated,
Mcu_PreregisterPatientsUserID
)
VALUES(
'{$prm['xid']}',
'{$rowcor["CorporateCode"]}',
'{$v['NIP']}',
'{$v['KTP']}',
'{$patient_id}',
'{$title_id}',
'{$v['NAMA']}',
'{$gender}',
'{$pdob}',
'{$v['JOB']}',
'{$v['EMAIL']}',
'{$v['HP']}',
'{$v['POSISI']}',
'{$v['DIVISI']}',
'{$v['LOKASI']}',
'{$v['DEPARTEMENT']}',
'{$v['PEMERIKSAAN']}',
NOW(),
{$userid}
)";
// echo $query;
// exit;
$rows = $this->db->query($query);
if ($rows) {
$last_id_x = $this->db->insert_id();
if ($patient_id == 0) {
$sql = "SELECT *
FROM m_patient
WHERE
M_PatientName = '{$v['NAMA']}' AND
M_PatientDOB = '{$pdob}' AND
M_PatientNIP = '{$v['NIP']}' AND
M_PatientIsActive = 'Y' LIMIT 1";
$exist_r = $this->db->query($sql)->row_array();
if ($exist_r) {
$patient_id = $exist_r["M_PatientID"];
}
//echo $sql;
}
$sql_cor = "SELECT *
FROM corporate
WHERE
CorporateID = '{$prm['corporateID']}' AND
CorporateIsActive = 'Y' LIMIT 1";
$qry_cor = $this->db->query($sql_cor)->row_array();
// print_r($patient_id);
// exit;
$corporate_id = 0;
if ($v['CORPORATE'] == '') {
$corporate_id = $prm['corporateID'];
} else {
$sql_cor = "SELECT *
FROM corporate
WHERE
CorporateCode = '{$v['CORPORATE']}' AND
CorporateIsActive = 'Y' LIMIT 1";
$rst_corporate = $this->db->query($sql_cor)->row_array();
$corporate_id = $rst_corporate['CorporateID'];
}
//echo $patient_id;
if ($patient_id == 0) {
//echo 'insert new patient';
//$pdob = date('Y-m-d',strtotime($prm['Mcu_PreregisterDetailsDOB']));
$sql = "INSERT INTO m_patient (
M_PatientRegisteredByCorporateID,
M_PatientNoReg,
M_PatientName,
M_PatientGender,
M_PatientM_TitleID,
M_PatientDOB,
M_PatientIdentifierValue,
M_PatientNIP,
M_PatientJob,
M_PatientPosisi,
M_PatientDivisi,
M_PatientLocation,
M_PatientDepartement,
M_PatientHP,
M_PatientEmail,
M_PatientAddress,
M_PatientAddressRegionalCd,
M_PatientAddressCity,
M_PatientAddressRT,
M_PatientAddressRW,
M_PatientAddressVillage,
M_PatientAddressDistrict,
M_PatientAddressState,
M_PatientAddressCountry,
M_PatientCreatedUserID
)
VALUES(
'{$corporate_id}',
`fn_numbering_cpone`('P'),
'{$v["NAMA"]}',
'{$gender}',
{$title_id},
'{$pdob}',
'{$v['KTP']}',
'{$v['NIP']}',
'{$v['JOB']}',
'{$v['POSISI']}',
'{$v['DIVISI']}',
'{$v['LOKASI']}',
'{$v['DEPARTEMENT']}',
'{$v['HP']}',
'{$v['EMAIL']}',
'{$qry_cor['CorporateAddress']}',
'{$qry_cor['CorporateAddressRegionalCd']}',
'{$qry_cor['CorporateAddressCity']}',
'{$qry_cor['CorporateAddressRT']}',
'{$qry_cor['CorporateAddressRW']}',
'{$qry_cor['CorporateAddressVillage']}',
'{$qry_cor['CorporateAddressDistrict']}',
'{$qry_cor['CorporateAddressState']}',
'{$qry_cor['CorporateAddressCountry']}',
'{$userid}'
)";
// echo $sql;
// exit;
$this->db->query($sql);
$patient_id = $this->db->insert_id();
} else {
//echo 'masuk';
$data_update_patient = array(
'M_PatientDOB' => $pdob
);
if ($v['JENIS_KELAMIN'] == 'L')
$data_update_patient['M_PatientM_TitleID'] = 1;
else
$data_update_patient['M_PatientM_TitleID'] = 3;
if ($prm['corporateID'] != '')
$data_update_patient['M_PatientRegisteredByCorporateID'] = $prm['corporateID'];
if ($v['EMAIL'] != '')
$data_update_patient['M_PatientEmail'] = $v['EMAIL'];
if ($v['HP'] != '')
$data_update_patient['M_PatientHP'] = $v['HP'];
if ($v['JOB'] != '')
$data_update_patient['M_PatientJob'] = $v['JOB'];
if ($v['POSISI'] != '')
$data_update_patient['M_PatientPosisi'] = $v['POSISI'];
if ($v['DIVISI'] != '')
$data_update_patient['M_PatientDivisi'] = $v['DIVISI'];
if ($v['LOKASI'] != '')
$data_update_patient['M_PatientLocation'] = $v['LOKASI'];
if ($v['DEPARTEMENT'] != '')
$data_update_patient['M_PatientDepartement'] = $v['DEPARTEMENT'];
if ($qry_cor['CorporateAddress'] != '')
$data_update_patient['M_PatientAddress'] = $qry_cor['CorporateAddress'];
if ($qry_cor['CorporateAddressRegionalCd'] != '')
$data_update_patient['M_PatientAddressRegionalCd'] = $qry_cor['CorporateAddressRegionalCd'];
if ($qry_cor['CorporateAddressCity'] != '')
$data_update_patient['M_PatientAddressCity'] = $qry_cor['CorporateAddressCity'];
if ($qry_cor['CorporateAddressRT'] != '')
$data_update_patient['M_PatientAddressRT'] = $qry_cor['CorporateAddressRT'];
if ($qry_cor['CorporateAddressRW'] != '')
$data_update_patient['M_PatientAddressRW'] = $qry_cor['CorporateAddressRW'];
if ($qry_cor['CorporateAddressVillage'] != '')
$data_update_patient['M_PatientAddressVillage'] = $qry_cor['CorporateAddressVillage'];
if ($qry_cor['CorporateAddressDistrict'] != '')
$data_update_patient['M_PatientAddressDistrict'] = $qry_cor['CorporateAddressDistrict'];
if ($qry_cor['CorporateAddressState'] != '')
$data_update_patient['M_PatientAddressState'] = $qry_cor['CorporateAddressState'];
if ($qry_cor['CorporateAddressCountry'] != '')
$data_update_patient['M_PatientAddressCountry'] = $qry_cor['CorporateAddressCountry'];
$this->db->where('M_PatientID', $patient_id);
$this->db->update('m_patient', $data_update_patient);
//echo $this->db->last_query();
}
$sql = "UPDATE mcu_preregister_patients SET Mcu_PreregisterPatientsM_PatientID = {$patient_id}
WHERE Mcu_PreregisterPatientsID = {$last_id_x}";
$this->db->query($sql);
}
}
}
$result = array(
"total" => 1,
"records" => array('status' => 'OK')
);
$this->sys_ok($result);
exit;
} catch (Exception $exc) {
$message = $exc->getMessage();
$this->sys_error($message);
}
}
function generatesetup()
{
$prm = $this->sys_input;
$setupcode = $prm['setupcode'];
$query = " SELECT mcu_offline_prepare.*, '' as patients,
M_CompanyName,
'' as agreements,
'' as deliveries,
'' as doctors,
M_MouName as default_mou_name,
M_DoctorName as default_doctor_name,
DATE_FORMAT(McuOfflinePrepareStartDate,'%d-%m-%Y') as start_date,
DATE_FORMAT(McuOfflinePrepareEndDate,'%d-%m-%Y') as end_date,
DATE_FORMAT(McuOfflinePreparePromiseDate,'%d-%m-%Y') as promise_date,
TIME_FORMAT(McuOfflinePreparePromiseTime,'%H:%i') as promise_time
FROM mcu_offline_prepare
JOIN m_company ON McuOfflinePrepareM_CompanyID = M_CompanyID
JOIN m_mou ON McuOfflinePrepareM_MouDefaultID = M_MouID
JOIN m_doctor ON McuOfflinePrepareM_DoctorDefaultID = M_DoctorID
WHERE
McuOfflinePrepareCode = '{$setupcode}'
LIMIT 1
";
//echo $query;
$row = $this->db->query($query)->row_array();
if ($row) {
$row['agreements'] = json_decode($row['McuOfflinePrepareMous']);
$row['deliveries'] = json_decode($row['McuOfflinePrepareDeliveries']);
$row['doctors'] = json_decode($row['McuOfflinePrepareDoctors']);
}
$result = array(
"total" => 1,
"records" => $row
);
$this->sys_ok($result);
exit;
}
public function search()
{
$prm = $this->sys_input;
if (!$this->isLogin) {
$this->sys_error("Invalid Token");
exit;
}
$search = $prm["search"];
$nama = $prm["name"];
// echo $norm;
$sql_where = " ";
$sql_param = array();
if ($search != "") {
$sql_where = " AND ( Mcu_PreregisterPatientsKTP like CONCAT('%','{$search}','%') OR Mcu_PreregisterPatientsPatientName like CONCAT('%','{$search}','%')) ";
//$sql_param[] = "%$search%";
}
$limit = '';
if ($all == 'N') {
$limit = ' LIMIT 10';
}
$number_limit = 50;
$number_offset = ($prm['current_page'] - 1) * $number_limit;
$sql = "SELECT count(*) as total
FROM x_adm_rekap_patient
LEFT JOIN m_patient ON PATIENT_ID = M_PatientOldPID
WHERE
stage = {$prm['mgm_mcuid']} AND M_PatientID IS NULL
";
//echo $sql;
$query = $this->db_onedev->query($sql, $sql_param);
//echo $this->db_onedev->last_query();
$tot_count = 0;
$tot_page = 0;
if ($query) {
$tot_count = $query->result_array()[0]["total"];
$tot_page = ceil($tot_count / $number_limit);
} else {
$this->sys_error_db("m_patient count", $this->db_onedev);
exit;
}
/* $sql = "SELECT mcu_offline_prepare.*,M_CompanyName,
DATE_FORMAT(McuOfflinePrepareStartDate, '%d.%m.%Y') as start_date,
DATE_FORMAT(McuOfflinePrepareEndDate, '%d.%m.%Y') as end_date,
'' as agreements
FROM mcu_offline_prepare
JOIN m_company ON McuOfflinePrepareM_CompanyID = M_CompanyID
WHERE
McuOfflinePrepareIsDownloaded = 'Y' AND
McuOfflinePrepareIsActive = 'Y'";
//echo $sq
$xrow = $this->db_onedev->query($sql)->row_array();*/
$sql = "SELECT *
FROM x_adm_rekap_patient
LEFT JOIN m_patient ON PATIENT_ID = M_PatientOldPID
WHERE
stage = {$prm['mgm_mcuid']} AND M_PatientID IS NULL
limit $number_limit offset $number_offset
";
//echo $sql;
$query = $this->db_onedev->query($sql);
$rows = $query->result_array();
//$this->_add_address($rows);
$result = array("total" => $tot_page, "records" => $rows);
$this->sys_ok($result);
exit;
}
function getsexreg()
{
if (!$this->isLogin) {
$this->sys_error("Invalid Token");
exit;
}
$rows = [];
$query = " SELECT *
FROM m_title
WHERE
M_TitleIsActive = 'Y'
";
//echo $query;
$rows['titles'] = $this->db_onedev->query($query)->result_array();
$query = " SELECT *
FROM m_sex
WHERE
M_SexIsActive = 'Y'
";
//echo $query;
$rows['sexes'] = $this->db_onedev->query($query)->result_array();
$query = " SELECT *
FROM m_religion
WHERE
M_ReligionIsActive = 'Y'
";
//echo $query;
$rows['religions'] = $this->db_onedev->query($query)->result_array();
$query = " SELECT *
FROM m_idtype
WHERE
M_IdTypeIsActive = 'Y'
";
//echo $query;
$rows['kartuidentitass'] = $this->db_onedev->query($query)->result_array();
$result = array(
"total" => count($rows),
"records" => $rows,
);
$this->sys_ok($result);
exit;
}
function gotoreg()
{
if (!$this->isLogin) {
$this->sys_error("Invalid Token");
exit;
}
$userid = $this->sys_user["M_UserID"];
$prm = $this->sys_input;
$new_status = "Y";
$result = array(
"total" => 1,
"records" => $prm,
);
$this->sys_ok($result);
exit;
}
function searchcity()
{
if (!$this->isLogin) {
$this->sys_error("Invalid Token");
exit;
}
$prm = $this->sys_input;
$max_rst = 12;
$tot_count = 0;
$q = [
'search' => '%'
];
if ($prm['search'] != '') {
$q['search'] = "%{$prm['search']}%";
}
// QUERY TOTAL
$sql = "SELECT count(*) as total
FROM m_city
WHERE
M_CityName like ?
AND M_CityIsActive = 'Y'";
$query = $this->db_onedev->query($sql, $q['search']);
//echo $query;
if ($query) {
$tot_count = $query->result_array()[0]["total"];
} else {
$this->sys_error_db("m_city count", $this->db_onedev);
exit;
}
$sql = "
SELECT *
FROM m_city
WHERE
M_CityName like ?
AND M_CityIsActive = 'Y'
ORDER BY M_CityName DESC
";
$query = $this->db_onedev->query($sql, array($q['search']));
if ($query) {
$rows = $query->result_array();
//echo $this->db_onedev->last_query();
$result = array("total" => $tot_count, "records" => $rows, "total_display" => sizeof($rows));
$this->sys_ok($result);
} else {
$this->sys_error_db("m_city rows", $this->db_onedev);
exit;
}
}
function getdistrict()
{
$prm = $this->sys_input;
$query = " SELECT *
FROM m_district
WHERE
M_DistrictIsActive = 'Y' AND M_DistrictM_CityID = ?
";
//echo $query;
$rows = $this->db_onedev->query($query, array($prm['id']))->result_array();
$result = array(
"total" => count($rows),
"records" => $rows,
);
$this->sys_ok($result);
exit;
}
function getkelurahan()
{
$prm = $this->sys_input;
$query = " SELECT *
FROM m_kelurahan
WHERE
M_KelurahanIsActive = 'Y' AND M_KelurahanM_DistrictID = ?
";
//echo $query;
$rows = $this->db_onedev->query($query, array($prm['id']))->result_array();
$result = array(
"total" => count($rows),
"records" => $rows,
);
$this->sys_ok($result);
exit;
}
function save()
{
if (!$this->isLogin) {
$this->sys_error("Invalid Token");
exit;
}
$userid = $this->sys_user["M_UserID"];
$prm = $this->sys_input;
$datas = $prm['data'];
//print_r($prm);
// $sql = "UPDATE mcu_preregister_patients SET Mcu_PreregisterDetailsIsActive = 'N' WHERE Mcu_PreregisterDetailsMcuOfflinePrepareID = '{$prm['xid']}'";
// $this->db_onedev->query($sql);
//echo $sql;
//unset($datas[0]);
$sql = "SELECT *
FROM mcu_offline_prepare
JOIN m_mou ON McuOfflinePrepareM_MouDefaultID = M_MouID
WHERE
McuOfflinePrepareID = {$prm['xid']}";
$data_prepare = $this->db_onedev->query($sql)->row_array();
$default_agreement_code = $data_prepare['M_MouNumber'];
$default_tests = $data_prepare['McuOfflinePrepareTests'];
foreach ($datas as $k => $v) {
$agreement = $v['AGREEMENT'];
$tests = $v['PEMERIKSAAN'];
if ($agreement == '') {
$agreement = $default_agreement_code;
}
if ($tests == '') {
$tests = $default_tests;
}
$xdate = substr($v['TANGGAL_LAHIR'], 0, 2);
$xmonth = substr($v['TANGGAL_LAHIR'], 3, 2);
$xyear = substr($v['TANGGAL_LAHIR'], 6, 4);
$tgl_lahir = $xdate . '-' . $xmonth . '-' . $xyear;
$pdob = date('Y-m-d', strtotime($tgl_lahir));
$v['NAMA'] = str_replace("'", "\\'", $v['NAMA']);
$v['NAMA'] = $this->strip_unicode($v['NAMA']);
$patient_id = 0;
if ($v['PID'] != '') {
$sql = "SELECT *
FROM m_patient
JOIN m_sex ON M_PatientM_SexID = M_SexID
WHERE M_PatientNoReg = '{$v['PID']}' LIMIT 1";
$exist_r = $this->db_onedev->query($sql)->row_array();
if ($exist_r) {
$patient_id = $exist_r["M_PatientID"];
$v['NAMA'] = $exist_r["M_PatientName"];
$pdob = date('Y-m-d', strtotime($exist_r['M_PatientDOB']));
$title_id = $exist_r["M_PatientM_TitleID"];
$sex_id = $exist_r["M_PatientM_SexID"];
$religion_id = $exist_r["M_PatientM_ReligionID"];
$v['NIK'] = $v['NIK'] ? $v['NIK'] : $exist_r["M_PatientNIK"];
$v['EMAIL'] = $v['EMAIL'] ? $v['EMAIL'] : $exist_r["M_PatientEmail"];
$v['HP'] = $v['HP'] ? $v['HP'] : $exist_r["M_PatientHP"];
$v['KEDUDUKAN'] = $v['KEDUDUKAN'] ? $v['KEDUDUKAN'] : $exist_r["M_PatientKedudukan"];
$v['JABATAN'] = $v['JABATAN'] ? $v['JABATAN'] : $exist_r["M_PatientJabatan"];
$v['JOB'] = $v['JOB'] ? $v['JOB'] : $exist_r["M_PatientJob"];
$v['LOKASI'] = $v['LOKASI'] ? $v['LOKASI'] : $exist_r["M_PatientLocation"];
$v['JENIS_KELAMIN'] = $exist_r["M_SexCode"];
}
//echo $sql;
}
if ($v['KTP'] != '') {
$sql = "SELECT *
FROM m_patient
JOIN m_sex ON M_PatientM_SexID = M_SexID
WHERE M_PatientM_IdTypeID = 1 AND
M_PatientIDNumber = '{$v['KTP']}' AND
M_PatientIsActive = 'Y'
LIMIT 1";
$exist_r = $this->db_onedev->query($sql)->row_array();
if ($exist_r) {
$patient_id = $exist_r["M_PatientID"];
$v['NAMA'] = $exist_r["M_PatientName"];
//$pdob = date('Y-m-d',strtotime($exist_r['M_PatientDOB']));
$title_id = $exist_r["M_PatientM_TitleID"];
$sex_id = $exist_r["M_PatientM_SexID"];
$religion_id = $exist_r["M_PatientM_ReligionID"];
$v['NIK'] = $v['NIK'] ? $v['NIK'] : $exist_r["M_PatientNIK"];
$v['EMAIL'] = $v['EMAIL'] ? $v['EMAIL'] : $exist_r["M_PatientEmail"];
$v['HP'] = $v['HP'] ? $v['HP'] : $exist_r["M_PatientHP"];
$v['KEDUDUKAN'] = $v['KEDUDUKAN'] ? $v['KEDUDUKAN'] : $exist_r["M_PatientKedudukan"];
$v['JABATAN'] = $v['JABATAN'] ? $v['JABATAN'] : $exist_r["M_PatientJabatan"];
$v['JOB'] = $v['JOB'] ? $v['JOB'] : $exist_r["M_PatientJob"];
$v['LOKASI'] = $v['LOKASI'] ? $v['LOKASI'] : $exist_r["M_PatientLocation"];
$v['JENIS_KELAMIN'] = $exist_r["M_SexCode"];
$v['KTP'] = $v['KTP'] ? $v['KTP'] : $exist_r["M_PatientIDNumber"];
}
//echo $sql;
}
if ($patient_id == 0) {
$sex_id = 0;
$sql = "SELECT * FROM m_sex WHERE M_SexCode = TRIM('{$v['JENIS_KELAMIN']}') AND M_SexIsActive = 'Y' LIMIT 1";
$sex_id = $this->db_onedev->query($sql)->row()->M_SexID;
$title_id = 0;
//$sql = "SELECT * FROM m_title WHERE M_TitleM_SexID = '{$sex_id}' AND M_TitleIsActive = 'Y' ORDER BY M_TitleID ASC LIMIT 1";
//$title_id = $this->db_onedev->query($sql)->row()->M_TitleID;
if (TRIM($v['JENIS_KELAMIN']) == 'L')
$title_id = 2;
else
$title_id = 4;
$religion_id = 0;
$sql = "SELECT * FROM m_religion WHERE M_ReligionName = 'OTHERS' AND M_ReligionIsActive = 'Y' LIMIT 1";
$religion_id = $this->db_onedev->query($sql)->row()->M_ReligionID;
}
$query = " INSERT INTO mcu_preregister_patients (
Mcu_PreregisterDetailsMcuOfflinePrepareID,
Mcu_PreregisterDetailsPID,
Mcu_PreregisterDetailsKTP,
Mcu_PreregisterDetailsNIK,
Mcu_PreregisterDetailsM_TitleID,
Mcu_PreregisterDetailsPatientName,
Mcu_PreregisterDetailsM_ReligionID,
Mcu_PreregisterDetailsEmail,
Mcu_PreregisterDetailsHp,
Mcu_PreregisterDetailsDOB,
Mcu_PreregisterDetailsKedudukan,
Mcu_PreregisterDetailsJabatan,
Mcu_PreregisterDetailsJob,
Mcu_PreregisterDetailsLocation,
Mcu_PreregisterDetailsM_SexCode,
Mcu_PreregisterDetailsAgreement,
Mcu_PreregisterDetailsTests,
Mcu_PreregisterDetailsCreated,
Mcu_PreregisterDetailsUserID
)
VALUES(
'{$prm['xid']}',
'{$v['PID']}',
'{$v['KTP']}',
'{$v['NIK']}',
'{$title_id}',
'{$v['NAMA']}',
'{$religion_id}',
'{$v['EMAIL']}',
'{$v['HP']}',
'{$pdob}',
'{$v['KEDUDUKAN']}',
'{$v['JABATAN']}',
'{$v['JOB']}',
'{$v['LOKASI']}',
TRIM('{$v['JENIS_KELAMIN']}'),
'{$agreement}',
'{$tests}',
NOW(),
{$userid}
)";
//echo $query;
$rows = $this->db_onedev->query($query);
if ($rows) {
$last_id_x = $this->db_onedev->insert_id();
$sql = "SELECT *
FROM mcu_offline_prepare
JOIN m_company ON McuOfflinePrepareM_CompanyID = M_CompanyID
WHERE McuOfflinePrepareID = {$prm['xid']}";
$row_header = $this->db_onedev->query($sql)->row_array();
//print_r($row_header);
if ($patient_id == 0) {
$sql = "SELECT *
FROM m_patient
WHERE
M_PatientName = '{$v['NAMA']}' AND
M_PatientDOB = '{$pdob}' AND
M_PatientNIP = '{$v['NIK']}' AND
M_PatientIsActive = 'Y' LIMIT 1";
$exist_r = $this->db_onedev->query($sql)->row_array();
if ($exist_r) {
$patient_id = $exist_r["M_PatientID"];
}
//echo $sql;
}
//echo $patient_id;
if ($patient_id == 0) {
//echo 'insert new patient';
//$pdob = date('Y-m-d',strtotime($prm['Mcu_PreregisterDetailsDOB']));
$M_PatientM_IdTypeID = 0;
$M_PatientIDNumber = NULL;
if (isset($v["KTP"]) && $v["KTP"] != '') {
$M_PatientM_IdTypeID = 1;
$M_PatientIDNumber = $v["KTP"];
}
$sql = "INSERT INTO m_patient (
M_PatientName,
M_PatientM_TitleID,
M_PatientM_SexID,
M_PatientM_ReligionID,
M_PatientPOB,
M_PatientDOB,
M_PatientNIK,
M_PatientM_IdTypeID,
M_PatientIDNumber,
M_PatientJabatan,
M_PatientLocation,
M_PatientKedudukan,
M_PatientJob,
M_PatientEmail,
M_PatientHP,
M_PatientUserID
)
VALUES(
'{$v["NAMA"]}',
{$title_id},
{$sex_id},
{$religion_id},
'-',
'{$pdob}',
'{$v["NIK"]}',
'{$M_PatientM_IdTypeID}',
'{$M_PatientIDNumber}',
'{$v['JABATAN']}',
'{$v['LOKASI']}',
'{$v['KEDUDUKAN']}',
'{$v['JOB']}',
'{$v['EMAIL']}',
'{$v['HP']}',
'{$userid}'
)";
//echo $sql;
$this->db_onedev->query($sql);
$data_insert_patient = array(
'M_PatientName' => $v["NAMA"],
'M_PatientM_TitleID' => $title_id,
'M_PatientM_SexID' => $sex_id,
'M_PatientM_ReligionID' => $religion_id,
'M_PatientPOB' => '-',
'M_PatientDOB' => $pdob,
'M_PatientNIK' => $v["NIK"],
'M_PatientJabatan' => $v['JABATAN'],
'M_PatientLocation' => $v['LOKASI'],
'M_PatientKedudukan' => $v['KEDUDUKAN'],
'M_PatientJob' => $v['JOB'],
'M_PatientEmail' => $v['EMAIL'],
'M_PatientHP' => $v['HP'],
'M_PatientUserID' => $userid
);
//$this->db->insert('m_patient', $data_insert_patient);
//echo $this->db_onedev->last_query();
$patient_id = $this->db_onedev->insert_id();
//$sql = "SELECT LAST_INSERT_ID() as xid";
//$patient_id = $this->db_onedev->query($sql)->row()->xid;
//echo $patient_id ;
$sql = "INSERT INTO m_patientaddress (
M_PatientAddressM_PatientID,
M_PatientAddressDescription,
M_PatientAddressM_KelurahanID,
M_PatientAddressCreated,
M_PatientAddressUserID
)
VALUES(
{$patient_id},
'{$row_header['M_CompanyAddress']}',
'{$row_header['M_CompanyM_KelurahanID']}',
NOW(),
'{$userid}'
)";
$this->db_onedev->query($sql);
//echo $sql;
//$patient_addr_id = $this->db_onedev->insert_id();
//$sql = "SELECT * FROM m_patientaddress WHERE M_PatientAddressID = {$patient_addr_id}";
//$ptn_addr = $this->db_onedev->query($sql)->row_array();
//$ptn_addr = json_encode($ptn_addr);
//$this->db_onedev->query("CALL one_log.log_me('PATIENT', 'PATIENT.ADDR_ADD', '{$ptn_addr}', $userid)");
} else {
//echo 'masuk';
//$pdob = date('Y-m-d',strtotime($prm['Mcu_PreregisterDetailsDOB']));
$data_update_patient = array(
'M_PatientDOB' => $pdob
);
if ($v['JENIS_KELAMIN'] == 'L')
$data_update_patient['M_PatientM_TitleID'] = 2;
else
$data_update_patient['M_PatientM_TitleID'] = 4;
if ($v['EMAIL'] != '')
$data_update_patient['M_PatientEmail'] = $v['EMAIL'];
if ($v['HP'] != '')
$data_update_patient['M_PatientHP'] = $v['HP'];
if ($v['NIK'] != '')
$data_update_patient['M_PatientNIK'] = $v['NIK'];
if ($v['JABATAN'] != '')
$data_update_patient['M_PatientJabatan'] = $v['JABATAN'];
if ($v['KEDUDUKAN'] != '')
$data_update_patient['M_PatientKedudukan'] = $v['KEDUDUKAN'];
if ($v['LOKASI'] != '')
$data_update_patient['M_PatientLocation'] = $v['LOKASI'];
if ($v['JOB'] != '')
$data_update_patient['M_PatientJob'] = $v['JOB'];
if (isset($v["KTP"]) && $v["KTP"] != '') {
$data_update_patient['M_PatientM_IdTypeID'] = 1;
$data_update_patient['M_PatientIDNumber'] = $v["KTP"];
}
$this->db_onedev->where('M_PatientID', $patient_id);
$this->db_onedev->update('m_patient', $data_update_patient);
//echo $this->db_onedev->last_query();
//$sql = "SELECT * FROM m_patient WHERE M_PatientID = {$patient_id}";
//$ptn = $this->db_onedev->query($sql)->row_array();
//$ptn = json_encode($ptn);
//$this->db_onedev->query("CALL one_log.log_me('PATIENT', 'PATIENT.EDIT', '{$ptn}', $userid)");
}
$sql = "UPDATE mcu_preregister_patients SET Mcu_PreregisterDetailsM_PatientID = {$patient_id} WHERE Mcu_PreregisterDetailsID = {$last_id_x}";
$this->db_onedev->query($sql);
}
}
$result = array(
"total" => 1,
"records" => array('status' => 'OK')
);
$this->sys_ok($result);
exit;
}
function strip_unicode($inp)
{
//echo $inp;
$result = mb_convert_encoding($inp, 'US-ASCII', 'UTF-8');
//echo $result;
$result = str_replace("?", " ", $result);
//echo $result;
return $result;
}
function newpatient()
{
if (!$this->isLogin) {
$this->sys_error("Invalid Token");
exit;
}
$prm = $this->sys_input;
$userid = $this->sys_user["M_UserID"];
$pdob = date('Y-m-d', strtotime($prm['M_PatientDOB']));
$query = "INSERT INTO m_patient (
M_PatientM_TitleID,
M_PatientPrefix,
M_PatientName,
M_PatientSuffix,
M_PatientDOB,
M_PatientM_SexID,
M_PatientM_ReligionID,
M_PatientEmail,
M_PatientPOB,
M_PatientHP,
M_PatientPhone,
M_PatientM_IdTypeID,
M_PatientIDNumber,
M_PatientNote,
M_PatientNIK,
M_PatientJabatan,
M_PatientKedudukan,
M_PatientPJ,
M_PatientLocation,
M_PatientJob,
M_PatientUserID
)
VALUES(
'{$prm['M_PatientM_TitleID']}',
'{$prm['M_PatientPrefix']}',
'{$prm['M_PatientName']}',
'{$prm['M_PatientSuffix']}',
'{$pdob}',
'{$prm['M_PatientM_SexID']}',
'{$prm['M_PatientM_ReligionID']}',
'{$prm['M_PatientEmail']}',
'{$prm['M_PatientPOB']}',
'{$prm['M_PatientHP']}',
'{$prm['M_PatientPhone']}',
'{$prm['M_PatientM_IdTypeID']}',
'{$prm['M_PatientIDNumber']}',
'{$prm['M_PatientNote']}',
'{$prm['M_PatientNIK']}',
'{$prm['M_PatientJabatan']}',
'{$prm['M_PatientKedudukan']}',
'{$prm['M_PatientPJ']}',
'{$prm['M_PatientLocation']}',
'{$prm['M_PatientJob']}',
$userid
)
";
//echo $query;
$rows = $this->db_onedev->query($query);
$last_id = $this->db_onedev->insert_id();
$result = array(
"total" => 1,
"records" => array('status' => 'OK'),
"id" => $last_id
);
$ptn = $prm;
$ptn["M_PatientID"] = $last_id;
$ptn["M_PatientDOB"] = $pdob;
$ptn = json_encode($ptn);
$this->db_onedev->query("CALL one_log.log_me('PATIENT', 'PATIENT.ADD', '{$ptn}', $userid)");
$this->sys_ok($result);
exit;
}
function deletepatient()
{
if (!$this->isLogin) {
$this->sys_error("Invalid Token");
exit;
}
$userid = $this->sys_user["M_UserID"];
$prm = $this->sys_input;
$query = "UPDATE m_patient SET
M_PatientIsActive = 'N'
WHERE
M_PatientID = '{$prm['M_PatientID']}'
";
//echo $query;
$rows = $this->db_onedev->query($query);
$result = array(
"total" => 1,
"records" => array('status' => 'OK')
);
$ptn = $prm;
$ptn["M_PatientDOB"] = $pdob;
$ptn = json_encode($ptn);
$this->db_onedev->query("CALL one_log.log_me('PATIENT', 'PATIENT.DELETE', '{$ptn}', $userid)");
$this->sys_ok($result);
exit;
}
function getaddress()
{
if (!$this->isLogin) {
$this->sys_error("Invalid Token");
exit;
}
$prm = $this->sys_input;
$query = " SELECT m_patientaddress.*,
M_KelurahanName,
M_DistrictID,
M_DistrictName,
M_CityID,
M_CityName,
'' as action
FROM m_patientaddress
JOIN m_kelurahan ON M_PatientAddressM_KelurahanID = M_KelurahanID
JOIN m_district ON M_KelurahanM_DistrictID = M_DistrictID
JOIN m_city ON M_DistrictM_CityID = M_CityID
WHERE
M_PatientAddressIsActive = 'Y' AND M_PatientAddressM_PatientID = ?
";
//echo $query;
$rows = $this->db_onedev->query($query, array($prm['id']))->result_array();
if ($rows) {
foreach ($rows as $k => $v) {
$rows[$k]['action'] = '<v-icon color="error" @click="deleteAddress(props.item)">delete</v-icon>';
$rows[$k]['action'] .= '<v-icon color="primary" @click="deleteAddress(props.item)">edit</v-icon>';
}
}
$result = array(
"total" => count($rows),
"records" => $rows,
);
$this->sys_ok($result);
exit;
}
function savenewaddress()
{
if (!$this->isLogin) {
$this->sys_error("Invalid Token");
exit;
}
$userid = $this->sys_user["M_UserID"];
$prm = $this->sys_input;
$count_addrs = $this->db_onedev->query("SELECT COUNT(*) as countx FROM m_patientaddress WHERE M_PatientAddressM_PatientID = '{$prm['M_PatientAddressM_PatientID']}' AND M_PatientAddressIsActive = 'Y'")->row()->countx;
//echo $this->db_onedev->last_query();
if ($count_addrs == 0) {
$prm['M_PatientAddressNote'] = 'Utama';
} else {
$count_addrs_utama = $this->db_onedev->query("SELECT COUNT(*) as countx FROM m_patientaddress WHERE M_PatientAddressM_PatientID = '{$prm['M_PatientAddressM_PatientID']}' AND M_PatientAddressNote = 'Utama' AND M_PatientAddressIsActive = 'Y'")->row()->countx;
if ($count_addrs_utama > 0 && strtolower($prm['M_PatientAddressNote']) == 'utama') {
$rx = date('YmdHis');
$prm['M_PatientAddressNote'] = 'Utama_' . $rx;
}
}
$query = "INSERT INTO m_patientaddress (
M_PatientAddressM_PatientID,
M_PatientAddressNote,
M_PatientAddressDescription,
M_PatientAddressM_KelurahanID,
M_PatientAddressCreated
)
VALUES(
'{$prm['M_PatientAddressM_PatientID']}',
'{$prm['M_PatientAddressNote']}',
'{$prm['M_PatientAddressDescription']}',
'{$prm['M_PatientAddressM_KelurahanID']}',
NOW()
)
";
//echo $query;
$rows = $this->db_onedev->query($query);
$result = array(
"total" => 1,
"records" => array('status' => 'OK')
);
$ptn = $prm;
$ptn["M_UserID"] = $pdob;
$ptn = json_encode($ptn);
$this->db_onedev->query("CALL one_log.log_me('PATIENT', 'PATIENT.ADDR_ADD', '{$ptn}', $userid)");
$this->sys_ok($result);
exit;
}
function saveeditaddress()
{
if (!$this->isLogin) {
$this->sys_error("Invalid Token");
exit;
}
$userid = $this->sys_user["M_UserID"];
$prm = $this->sys_input;
$query = "UPDATE m_patientaddress SET
M_PatientAddressM_PatientID = '{$prm['M_PatientAddressM_PatientID']}',
M_PatientAddressNote = '{$prm['M_PatientAddressNote']}',
M_PatientAddressDescription = '{$prm['M_PatientAddressDescription']}',
M_PatientAddressM_KelurahanID = '{$prm['M_PatientAddressM_KelurahanID']}'
WHERE
M_PatientAddressID = '{$prm['M_PatientAddressID']}'
";
//echo $query;
$rows = $this->db_onedev->query($query);
$result = array(
"total" => 1,
"records" => array('status' => 'OK')
);
$ptn = $prm;
$ptn["M_UserID"] = $pdob;
$ptn = json_encode($ptn);
$this->db_onedev->query("CALL one_log.log_me('PATIENT', 'PATIENT.ADDR_EDIT', '{$ptn}', $userid)");
$this->sys_ok($result);
exit;
}
function deleteaddress()
{
if (!$this->isLogin) {
$this->sys_error("Invalid Token");
exit;
}
$userid = $this->sys_user["M_UserID"];
$prm = $this->sys_input;
$query = "UPDATE m_patientaddress SET
M_PatientAddressIsActive = 'N'
WHERE
M_PatientAddressID = '{$prm['M_PatientAddressID']}'
";
//echo $query;
$rows = $this->db_onedev->query($query);
$result = array(
"total" => 1,
"records" => array('status' => 'OK')
);
$ptn = $prm;
$ptn["M_UserID"] = $pdob;
$ptn = json_encode($ptn);
$this->db_onedev->query("CALL one_log.log_me('PATIENT', 'PATIENT.ADDR_DELETE', '{$ptn}', $userid)");
$this->sys_ok($result);
exit;
}
}