Initial import
This commit is contained in:
357
one-api/application/controllers/app_doctor/Receiveruploadlog.php
Normal file
357
one-api/application/controllers/app_doctor/Receiveruploadlog.php
Normal file
@@ -0,0 +1,357 @@
|
||||
<?php
|
||||
class Receiveruploadlog extends MY_Controller
|
||||
{
|
||||
var $max_limit = 20;
|
||||
public function __construct()
|
||||
{
|
||||
parent::__construct();
|
||||
// db wilayah contoh surabaya
|
||||
$this->db_regional = $this->load->database("regional", true);
|
||||
|
||||
// string database
|
||||
$this->db_str_doctor = 'one_doctor';
|
||||
}
|
||||
|
||||
|
||||
public function index()
|
||||
{
|
||||
echo "RECEIVER UPLOAD LOG API";
|
||||
}
|
||||
|
||||
function get_param_z()
|
||||
{
|
||||
$body_z = file_get_contents("php://input");
|
||||
$body = gzuncompress($body_z);
|
||||
return json_decode($body, true);
|
||||
}
|
||||
|
||||
function reply($resp)
|
||||
{
|
||||
echo json_encode($resp);
|
||||
}
|
||||
|
||||
function reply_gz($resp)
|
||||
{
|
||||
//echo json_encode($resp);
|
||||
echo gzcompress(json_encode($resp));
|
||||
}
|
||||
|
||||
public function r_upload_log()
|
||||
{
|
||||
$this->db->trans_begin();
|
||||
$param = $this->get_param_z();
|
||||
// print_r($param);
|
||||
// print_r;
|
||||
|
||||
// echo json_decode($param);
|
||||
|
||||
// print_r($prm);
|
||||
|
||||
$order_patient_id_array = [];
|
||||
$data_json_result = [];
|
||||
$data_json = [];
|
||||
|
||||
$str_order_patient_id = "";
|
||||
|
||||
foreach($param['data'] as $key)
|
||||
{
|
||||
$order_patient_id_array[] = intval($key['order_patient_id']);
|
||||
}
|
||||
|
||||
// $implode_order_patient_id = implode(",",$order_patient_id_array);
|
||||
$str_order_patient_id = implode(",",$order_patient_id_array);
|
||||
if($str_order_patient_id == ""){
|
||||
$str_order_patient_id = "0";
|
||||
}
|
||||
|
||||
$sql_cek_one_result = "select oneResultOrderPatientID,
|
||||
oneResultOrderM_BranchID,
|
||||
oneResultOrderM_BranchCode,
|
||||
oneResultJson
|
||||
from $this->db_str_doctor.one_result
|
||||
WHERE oneResultOrderPatientID IN ($str_order_patient_id)";
|
||||
|
||||
// echo $sql_cek_one_result;
|
||||
$query_cek = $this->db_regional->query($sql_cek_one_result);
|
||||
|
||||
if(!$query_cek){
|
||||
$this->db->trans_rollback();
|
||||
$this->sys_error_db(["status" => "ERR", "message" => "select cek one_result | " .
|
||||
$this->db->error()["message"], "debug" => $this->db_regional->last_query()]);
|
||||
exit;
|
||||
}
|
||||
|
||||
$rows_cek = $query_cek->result_array();
|
||||
$index = 0;
|
||||
// if(count($rows_cek) == 0)
|
||||
// {
|
||||
// insert one_result
|
||||
|
||||
$data_order_patient_id_one_result = [];
|
||||
foreach($rows_cek as $key => $val)
|
||||
{
|
||||
$data_order_patient_id_one_result[] = $val['oneResultOrderPatientID'];
|
||||
}
|
||||
|
||||
// foreach($result['data'] as $key)
|
||||
|
||||
$order_patient_result = [];
|
||||
// $index = 0;
|
||||
|
||||
// print_r($param['data']);
|
||||
// print_r($data_order_patient_id_one_result);
|
||||
foreach($param['data'] as $key)
|
||||
{
|
||||
if(in_array($key['order_patient_id'], $data_order_patient_id_one_result)){
|
||||
// $order_patient_result[] = $key['order_patient_id'];
|
||||
// continue;
|
||||
|
||||
// jk sudah ada data di one_result maka update
|
||||
|
||||
$data_json_update =
|
||||
[
|
||||
"order_patient_id" => $key['order_patient_id'],
|
||||
"T_OrderHeaderLabNumberExt" => $key['T_OrderHeaderLabNumberExt'],
|
||||
"T_OrderHeaderDate" => $key['T_OrderHeaderDate'],
|
||||
"T_OrderHeaderID" => $key['T_OrderHeaderID'],
|
||||
"T_OrderHeaderSenderM_DoctorID" => $key['T_OrderHeaderSenderM_DoctorID'],
|
||||
"M_BranchID" => $key['M_BranchID'],
|
||||
"M_BranchCode" => $key['M_BranchCode'],
|
||||
"patient" => $key['patient'],
|
||||
"result" => $key['result'],
|
||||
"result_nonlab" => $key['result_nonlab'],
|
||||
"sample" => $key['sample']
|
||||
];
|
||||
|
||||
$this->update_one_result_by_order_patient_id(
|
||||
$key['order_patient_id'],
|
||||
$key['M_BranchID'],
|
||||
$key['M_BranchCode'],
|
||||
$data_json_update,
|
||||
$key['patient'][0]
|
||||
);
|
||||
|
||||
$order_patient_result[] = $key['order_patient_id'];
|
||||
|
||||
}
|
||||
|
||||
// jk tidak ada mk insert baru
|
||||
else
|
||||
{
|
||||
$data_json =
|
||||
[
|
||||
"order_patient_id" => $key['order_patient_id'],
|
||||
"T_OrderHeaderLabNumberExt" => $key['T_OrderHeaderLabNumberExt'],
|
||||
"T_OrderHeaderDate" => $key['T_OrderHeaderDate'],
|
||||
"T_OrderHeaderID" => $key['T_OrderHeaderID'],
|
||||
"T_OrderHeaderSenderM_DoctorID" => $key['T_OrderHeaderSenderM_DoctorID'],
|
||||
"M_BranchID" => $key['M_BranchID'],
|
||||
"M_BranchCode" => $key['M_BranchCode'],
|
||||
"patient" => $key['patient'],
|
||||
"result" => $key['result'],
|
||||
"result_nonlab" => $key['result_nonlab'],
|
||||
"sample" => $key['sample']
|
||||
];
|
||||
|
||||
$this->insert_one_result(
|
||||
$key['order_patient_id'],
|
||||
$key['M_BranchID'],
|
||||
$key['M_BranchCode'],
|
||||
$data_json,
|
||||
$key['patient'][0]
|
||||
);
|
||||
|
||||
$order_patient_result[] = $key['order_patient_id'];
|
||||
}
|
||||
|
||||
|
||||
// $index++;
|
||||
}
|
||||
|
||||
$this->db->trans_commit();
|
||||
// $this->db->trans_rollback();
|
||||
$this->reply(
|
||||
[
|
||||
"status" => "OK",
|
||||
"message" => "Data berhasil ditambahkan ke one_result",
|
||||
"order_patient_id" => $order_patient_result,
|
||||
]);
|
||||
|
||||
// return json_encode(
|
||||
// array(
|
||||
// "status" => "OK",
|
||||
// "message" => "Data berhasil ditambahkan ke one_result",
|
||||
// "order_patient_id" => $str_order_patient_id
|
||||
// )
|
||||
// );
|
||||
// }
|
||||
|
||||
// else
|
||||
// {
|
||||
// // sudah ditambahkan
|
||||
// // return json_encode(
|
||||
// // array(
|
||||
// // 'status' => 'ERR',
|
||||
// // 'message' => 'Data Sudah Ditambahkan'
|
||||
// // )
|
||||
// // );
|
||||
|
||||
// $this->db->trans_rollback();
|
||||
// $this->reply(
|
||||
// [
|
||||
// "status" => "ERR",
|
||||
// "message" => "Data sudah ditambahkan ke one_result",
|
||||
// "order_patient_id" => $str_order_patient_id
|
||||
// ]);
|
||||
// }
|
||||
|
||||
}
|
||||
|
||||
function insert_one_result($order_patient_id, $m_branch_id, $m_branch_code, $result, $patient)
|
||||
{
|
||||
// insert
|
||||
$sql_insert_one_result = "INSERT INTO $this->db_str_doctor.one_result(
|
||||
oneResultOrderPatientID,
|
||||
oneResultOrderM_BranchID,
|
||||
oneResultOrderM_BranchCode,
|
||||
oneResultJson
|
||||
) VALUES (?, ?, ?, ?)";
|
||||
|
||||
$query_insert = $this->db_regional->query($sql_insert_one_result, [
|
||||
intval($order_patient_id),
|
||||
intval($m_branch_id),
|
||||
$m_branch_code,
|
||||
json_encode($result)
|
||||
]);
|
||||
|
||||
// echo $this->db->last_query();
|
||||
if (!$query_insert) {
|
||||
// print_r($this->db->last_query());
|
||||
$this->db->trans_rollback();
|
||||
$this->sys_error_db(["status" => "ERR", "message" => "insert one result log | " .
|
||||
$this->db->error()["message"], "debug" => $this->db->last_query()]);
|
||||
exit;
|
||||
}
|
||||
|
||||
// print_r($patient['patient'][0]['PatientFullName']);
|
||||
// update order patient
|
||||
$sql_update = "Update
|
||||
$this->db_str_doctor.order_patient
|
||||
set OrderPatientFullName = ?,
|
||||
OrderPatientDOB = ?,
|
||||
OrderPatientNIK = ?,
|
||||
OrderPatientHp = ?,
|
||||
OrderPatientAddress = ?,
|
||||
OrderPatientIsConfirmed = 'Y'
|
||||
where OrderPatientID = ?
|
||||
";
|
||||
|
||||
$query_update = $this->db_regional->query($sql_update,[
|
||||
$patient['PatientFullName'],
|
||||
$patient['M_PatientDOB'],
|
||||
$patient['M_PatientIDNumber'],
|
||||
$patient['M_PatientHP'],
|
||||
$patient['M_PatientAddressDescription'],
|
||||
$order_patient_id
|
||||
]);
|
||||
|
||||
if (!$query_update) {
|
||||
// print_r($this->db->last_query());
|
||||
$this->db->trans_rollback();
|
||||
$this->sys_error_db(["status" => "ERR", "message" => "update order patient | " .
|
||||
$this->db->error()["message"], "debug" => $this->db->last_query()]);
|
||||
exit;
|
||||
}
|
||||
|
||||
// return json_encode(
|
||||
// array(
|
||||
// 'status' => 'OK',
|
||||
// )
|
||||
// );
|
||||
|
||||
// $this->reply(["status" => "OK", "message" => "Data berhasil ditambahkan ke one_result"]);
|
||||
}
|
||||
|
||||
function update_one_result_by_order_patient_id($order_patient_id, $m_branch_id, $m_branch_code, $result, $patient)
|
||||
{
|
||||
// update
|
||||
$sql_update_one_result = "UPDATE $this->db_str_doctor.one_result
|
||||
SET
|
||||
oneResultOrderM_BranchID = ?,
|
||||
oneResultOrderM_BranchCode = ?,
|
||||
oneResultJson = ?
|
||||
WHERE oneResultOrderPatientID = ?";
|
||||
|
||||
// echo $sql_update_one_result;
|
||||
|
||||
$query_update = $this->db_regional->query($sql_update_one_result, [
|
||||
intval($m_branch_id),
|
||||
$m_branch_code,
|
||||
json_encode($result),
|
||||
intval($order_patient_id)
|
||||
]);
|
||||
|
||||
// echo $this->db->last_query();
|
||||
if (!$query_update) {
|
||||
// print_r($this->db->last_query());
|
||||
$this->db->trans_rollback();
|
||||
$this->sys_error_db(["status" => "ERR", "message" => "update one result log | " .
|
||||
$this->db->error()["message"], "debug" => $this->db_regional->last_query()]);
|
||||
exit;
|
||||
}
|
||||
|
||||
// print_r($patient['patient'][0]['PatientFullName']);
|
||||
// update order patient
|
||||
|
||||
// old
|
||||
// $sql_update = "Update
|
||||
// $this->db_str_doctor.order_patient
|
||||
// set OrderPatientFullName = ?,
|
||||
// OrderPatientDOB = ?,
|
||||
// OrderPatientNIK = ?,
|
||||
// OrderPatientHp = ?,
|
||||
// OrderPatientAddress = ?,
|
||||
// OrderPatientIsConfirmed = 'Y'
|
||||
// where OrderPatientID = ?
|
||||
// ";
|
||||
|
||||
// new
|
||||
$sql_update = "Update
|
||||
$this->db_str_doctor.order_patient
|
||||
set OrderPatientFullName = ?,
|
||||
OrderPatientDOB = ?,
|
||||
OrderPatientNIK = ?,
|
||||
OrderPatientHp = ?,
|
||||
OrderPatientAddress = ?,
|
||||
OrderPatientIsConfirmed = 'Y'
|
||||
where OrderPatientID = ?
|
||||
";
|
||||
|
||||
$query_update = $this->db_regional->query($sql_update,[
|
||||
$patient['PatientFullName'],
|
||||
$patient['M_PatientDOB'],
|
||||
$patient['M_PatientIDNumber'],
|
||||
$patient['M_PatientHP'],
|
||||
$patient['M_PatientAddressDescription'],
|
||||
$order_patient_id
|
||||
]);
|
||||
|
||||
if (!$query_update) {
|
||||
// print_r($this->db->last_query());
|
||||
$this->db->trans_rollback();
|
||||
$this->sys_error_db(["status" => "ERR", "message" => "update order patient | " .
|
||||
$this->db->error()["message"], "debug" => $this->db_regional->last_query()]);
|
||||
exit;
|
||||
}
|
||||
|
||||
// return json_encode(
|
||||
// array(
|
||||
// 'status' => 'OK',
|
||||
// )
|
||||
// );
|
||||
|
||||
// $this->reply(["status" => "OK", "message" => "Data berhasil ditambahkan ke one_result"]);
|
||||
}
|
||||
|
||||
}
|
||||
?>
|
||||
Reference in New Issue
Block a user