db_regional = $this->load->database("onedev", true); } public function search() { $prm = $this->sys_input; if (! $this->isLogin) { $this->sys_error("Invalid Token"); exit; } $nama = $prm["name"]; $status = $prm["status"]; $staff = $prm['staff']; // echo $norm; //echo 'dasdsa'; $sql_where = "WHERE M_DoctorIsActive = 'Y' AND M_DoctorIsMarketingConfirm = '{$status}'"; $sql_param = array(); if ($nama != "") { if ($sql_where != "") { $sql_where .=" and "; } $sql_where .= " M_DoctorName like ? "; $sql_param[] = "%$nama%"; //$prm['current_page'] = 1; } //if ($sql_where != "") $sql_where .= " and "; // Order masih dalam status registrasi //$sql_where .= " M_DoctorIsMarketingConfirm = '{$status}' AND M_DoctorIsActive = 'Y' "; if ($sql_where != "") { $sql_where = "$sql_where"; //$prm['current_page'] = 1; } if(intval($staff) > 0){ $sql_where = "$sql_where AND M_DoctorM_StaffNIK = '{$staff}'"; } $number_limit = 10; $number_offset = ($prm['current_page'] - 1) * $number_limit ; $sql = " SELECT count(*) as total FROM ( SELECT * FROM m_doctor JOIN m_sex ON M_DoctorM_SexID = M_SexID LEFT JOIN m_religion ON M_DoctorM_ReligionID = M_ReligionID LEFT JOIN nat_staff ON M_DoctorM_StaffNIK = Nat_StaffNIK $sql_where GROUP BY M_DoctorID ) x "; //echo $sql; $query = $this->db_regional->query($sql, $sql_param); $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_doctor count", $this->db_regional); exit; } $doctor_field = " M_DoctorID, M_DoctorOldCode, M_DoctorCode , M_DoctorPrefix , M_DoctorPrefix2 , M_DoctorName , M_DoctorSufix , M_DoctorSufix2 , M_DoctorSufix3 , M_DoctorM_SexID , M_DoctorM_ReligionID, M_DoctorM_StaffID, IFNULL(M_DoctorEmail,'') as M_DoctorEmail, M_DoctorHP , M_DoctorNote, M_DoctorPhone , M_DoctorIsMarketingConfirm, ifnull(M_DoctorPjIsPJ,'N') M_DoctorIsPJ, ifnull(M_DoctorPjIsDefaultPJ,'N') M_DoctorIsDefaultPJ , M_DoctorM_SpecialID , ifnull(M_DoctorPjIsClinic,'N') M_DoctorIsClinic , ifnull(M_DoctorPjIsDefault,'N') M_DoctorIsDefault , M_DoctorEmailIsDefault, M_DoctorIsDefaultMcu, M_DoctorCreated , M_DoctorLastUpdated, M_DoctorIsActive, M_DoctorReportCode , M_DoctorPrivateRequest, M_DoctorM_UserID , M_DoctorM_StaffNIK, M_DoctorM_SpecialistID, DATE_FORMAT(M_DoctorDOB,'%d%m%Y') M_DoctorDOB, "; $sql = "SELECT $doctor_field CONCAT(IFNULL(M_DoctorPrefix,''),IFNULL(M_DoctorPrefix2,''),' ',M_DoctorName,' ',IFNULL(M_DoctorSufix,''),IFNULL(M_DoctorSufix2,''),IFNULL(M_DoctorSufix3,'')) as doctor_fullname, M_SexName, M_ReligionName, Nat_StaffID, Nat_StaffNIK, IF(Nat_StaffNIK = '' OR Nat_StaffNIK IS NULL, '', Nat_StaffName) as Nat_StaffName, IF(M_DoctorM_SpecialistID = 0 OR M_DoctorM_SpecialistID IS NULL, '', M_SpecialistName) as M_SpecialistName, IF(M_DoctorIsMarketingConfirm = 'N', 'Belum dikonfirmasi marketing','Sudah dikonfirmasi marketing') as status FROM m_doctor JOIN m_sex ON M_DoctorM_SexID = M_SexID left join m_doctorpj on M_DoctorID = M_DoctorPjM_DoctorID AND M_DoctorPjIsActive = 'Y' left JOIN m_religion ON M_DoctorM_ReligionID = M_ReligionID left JOIN nat_staff ON M_DoctorM_StaffNIK = Nat_StaffNIK LEFT JOIN m_specialist ON M_DoctorM_SpecialistID = M_SpecialistID $sql_where GROUP BY M_DoctorID ORDER BY M_DoctorName ASC limit $number_limit offset $number_offset"; $query = $this->db_regional->query($sql, $sql_param); //echo $this->db_regional->last_query(); $rows = $query->result_array(); if($rows){ foreach($rows as $k => $v){ //$rows[$k]['verification_px'] = $this->add_verification_test($v['M_PatientID']); } } //$this->_add_address($rows); $result = array("total" => $tot_page, "records" => $rows, "sql"=> $this->db_regional->last_query()); $this->sys_ok($result); exit; } function getsexreg(){ if (! $this->isLogin) { $this->sys_error("Invalid Token"); exit; } $rows = []; $query =" SELECT * FROM m_sex WHERE M_SexIsActive = 'Y' "; //echo $query; $rows['sexes'] = $this->db_regional->query($query)->result_array(); $query =" SELECT * FROM m_religion WHERE M_ReligionIsActive = 'Y' "; //echo $query; $rows['religions'] = $this->db_regional->query($query)->result_array(); $query =" SELECT 0 as Nat_StaffID, 'Semua' as Nat_StaffName, '' as Nat_StaffNIK UNION SELECT Nat_StaffID, Nat_StaffName, Nat_StaffNIK FROM nat_staff left join m_position ON Nat_StaffM_PositionID = M_PositionID WHERE Nat_StaffIsActive = 'Y' and M_PositionIsMarketing = 'Y' "; //echo $query; $rows['staffs'] = $this->db_regional->query($query)->result_array(); $query =" SELECT * FROM nat_jpa WHERE Nat_JpaIsActive = 'Y' "; //echo $query; $rows['jpas'] = $this->db_regional->query($query)->result_array(); $query =" SELECT M_SpecialistID as id, M_SpecialistName as name FROM m_specialist WHERE M_SpecialistIsActive = 'Y' "; // echo $query; $rows['specialistes'] = $this->db_regional->query($query)->result_array(); //print_r($rows['specialistes']); $result = array( "total" => count($rows) , "records" => $rows, ); $this->sys_ok($result); exit; } function searchstaff(){ if (! $this->isLogin) { $this->sys_error("Invalid Token"); exit; } $prm = $this->sys_input; $max_rst = 12; $tot_count =0; $name = $prm['name']; $hirarkiid = intval($prm['id']) - 1; // QUERY TOTAL $sql = "SELECT count(*) as total FROM nat_staff left join m_position ON Nat_StaffM_PositionID = M_PositionID WHERE Nat_StaffIsActive = 'Y' and M_PositionIsMarketing = 'Y' AND (Nat_StaffName like '%{$name}%' OR Nat_StaffNIK like '%{$name}%')"; $query = $this->db_regional->query($sql); //echo $query; if ($query) { $tot_count = $query->result_array()[0]["total"]; } else { $this->sys_error_db("nat_staff count",$this->db_regional); exit; } $sql = " SELECT * FROM(SELECT *, CONCAT(Nat_StaffName, ' [',Nat_StaffNIK,']') as Nat_StaffNames FROM nat_staff left join m_position ON Nat_StaffM_PositionID = M_PositionID WHERE Nat_StaffIsActive = 'Y' and M_PositionIsMarketing = 'Y') a WHERE (Nat_StaffName like '%{$name}%' OR Nat_StaffNIK like '%{$name}%') AND Nat_StaffIsActive = 'Y' ORDER BY Nat_StaffName ASC "; $query = $this->db_regional->query($sql); if ($query) { $rows = $query->result_array(); //echo $this->db_regional->last_query(); $result = array("total" => $tot_count, "records" => $rows, "total_display" => sizeof($rows)); $this->sys_ok($result); } else { $this->sys_error_db("nat_staff rows",$this->db_regional); 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_regional->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_regional); exit; } $sql = " SELECT * FROM m_city WHERE M_CityName like ? AND M_CityIsActive = 'Y' ORDER BY M_CityName DESC "; $query = $this->db_regional->query($sql, array($q['search'])); if ($query) { $rows = $query->result_array(); //echo $this->db_regional->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_regional); exit; } } function getdistrict(){ if (! $this->isLogin) { $this->sys_error("Invalid Token"); exit; } $prm = $this->sys_input; $query =" SELECT * FROM m_district WHERE M_DistrictIsActive = 'Y' AND M_DistrictM_CityID = ? "; //echo $query; $rows = $this->db_regional->query($query,array($prm['id']))->result_array(); $result = array( "total" => count($rows) , "records" => $rows, ); $this->sys_ok($result); exit; } function getkelurahan(){ if (! $this->isLogin) { $this->sys_error("Invalid Token"); exit; } $prm = $this->sys_input; $query =" SELECT * FROM m_kelurahan WHERE M_KelurahanIsActive = 'Y' AND M_KelurahanM_DistrictID = ? "; //echo $query; $rows = $this->db_regional->query($query,array($prm['id']))->result_array(); $result = array( "total" => count($rows) , "records" => $rows, ); $this->sys_ok($result); exit; } function getjpa(){ if (! $this->isLogin) { $this->sys_error("Invalid Token"); exit; } $prm = $this->sys_input; $query =" SELECT * FROM nat_jpa WHERE Nat_JpaIsActive = 'Y' "; //echo $query; $rows = $this->db_regional->query($query)->result_array(); // $rows['jpas'] = $this->db_regional->query($query)->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; } $prm = $this->sys_input; $userid = $this->sys_user["M_UserID"]; // ambil data lama $sql = "select * from m_doctor where M_DoctorID = ?"; $qry = $this->db_regional->query($sql,array($prm["M_DoctorID"])); $rows = $qry->result_array(); $old_doctor = array(); if (count($rows) > 0 ) $old_doctor = $rows[0]; if($prm['M_DoctorEmail'] == ''){ $prm['M_DoctorEmailIsDefault'] = 'N'; } $x_dob = $prm['M_DoctorDOB']; $updated_dob = substr($x_dob, 0,2).'-'.substr($x_dob, 2,2).'-'.substr($x_dob, 4,4); $xxdob = date("Y-m-d", strtotime($updated_dob)); $query ="UPDATE m_doctor SET M_DoctorPrefix = '{$prm['M_DoctorPrefix']}', M_DoctorPrefix2 = '{$prm['M_DoctorPrefix2']}', M_DoctorName = '{$prm['M_DoctorName']}', M_DoctorSufix = '{$prm['M_DoctorSufix']}', M_DoctorSufix2 = '{$prm['M_DoctorSufix2']}', M_DoctorSufix3 = '{$prm['M_DoctorSufix3']}', M_DoctorM_SexID = '{$prm['M_DoctorM_SexID']}', M_DoctorM_ReligionID = '{$prm['M_DoctorM_ReligionID']}', M_DoctorM_StaffID = '{$prm['M_DoctorM_StaffID']}', M_DoctorM_StaffNIK = '{$prm['M_DoctorM_StaffNIK']}', M_DoctorEmail = '{$prm['M_DoctorEmail']}', M_DoctorHP = '{$prm['M_DoctorHP']}', M_DoctorNote = '{$prm['M_DoctorNote']}', M_DoctorPhone = '{$prm['M_DoctorPhone']}', M_DoctorIsMarketingConfirm = '{$prm['M_DoctorIsMarketingConfirm']}', M_DoctorEmailIsDefault = '{$prm['M_DoctorEmailIsDefault']}', M_DoctorDOB = '{$xxdob}', M_DoctorM_SpecialistID = {$prm['M_DoctorM_SpecialistID']} WHERE M_DoctorID = '{$prm['M_DoctorID']}' "; //echo $query; $rows = $this->db_regional->query($query); if($rows){ $data = json_encode($prm); //print_r($prm); $md5 = md5($data); $param = array("data" => $data, "md5" => $md5); $jparam = json_encode($param); $sql = "SELECT * FROM m_branch WHERE M_BranchIsActive = 'Y'"; $branches = $this->db_regional->query($sql)->result_array(); foreach($branches as $k => $v){ try { $sql = "INSERT INTO doctortobranch ( DoctorToBranchM_DoctorID, DoctorToBranchM_BranchIPAddress, DoctorToBranchCreated, DoctorToBranchUserID ) VALUES( {$prm['M_DoctorID']}, '{$v['M_BranchIPAddress']}', NOW(), {$userid} )"; //echo $sql; $this->db_regional->query($sql); $last_xid = $this->db_regional->insert_id(); $url = "http://".$v['M_BranchIPAddress']."/one-api/tools/marketing/updatedoctor/"; //echo "Uploading : ".$prm['M_DoctorName']; $j_result = $this->post($url,$jparam); $result = json_decode($j_result,true); //print_r($result); //echo $result["qry"]; if ($result["status"] == "OK") { //echo $result["qry"]; $sql = "UPDATE doctortobranch set DoctorToBranchStatus = 'Y' WHERE DoctorToBranchID = {$last_xid}"; $this->db_regional->query($sql); } else{ //echo $result["qry"]; $sql = "UPDATE doctortobranch set DoctorToBranchRetry = DoctorToBranchRetry + 1 WHERE DoctorToBranchID = {$last_xid}"; $this->db_regional->query($sql); throw new Exception("ERRR : " . $result["qry"] . "\n"); } } catch(Exception $exc) { $message = $exc->getMessage(); echo $message; } } } $result = array( "total" => 1 , "records" => array('status'=>'OK') ); // ambil data baru $sql = "select * from m_doctor where M_DoctorID = ?"; $qry = $this->db_regional->query($sql,array($prm["M_DoctorID"])); $rows = $qry->result_array(); $new_doctor = array(); if (count($rows) > 0 ) $new_doctor = $rows[0]; $d_doctor = json_encode(array("old" => $old_doctor , "new" => $new_doctor)); $this->db_regional->query("call one_log.log_me('DOCTOR','DOCTOR_EDIT','{$d_doctor}',$userid)"); $this->sys_ok($result); exit; } function newdoctor(){ if (! $this->isLogin) { $this->sys_error("Invalid Token"); exit; } //echo 'Yihaa'; $userid = $this->sys_user["M_UserID"]; $prm = $this->sys_input; ///print_r($prm); $prm['userid'] = $userid; if(!$prm['M_DoctorM_StaffID']) $prm['M_DoctorM_StaffID'] = 0; $x_dob = $prm['M_DoctorDOB']; $updated_dob = substr($x_dob, 0,2).'-'.substr($x_dob, 2,2).'-'.substr($x_dob, 4,4); $xxdob = date("Y-m-d", strtotime($updated_dob)); $query ="INSERT INTO m_doctor ( M_DoctorPrefix, M_DoctorPrefix2, M_DoctorName, M_DoctorSufix, M_DoctorSufix2, M_DoctorSufix3, M_DoctorM_SexID, M_DoctorM_ReligionID, M_DoctorM_StaffID, M_DoctorM_StaffNIK, M_DoctorEmail, M_DoctorHP, M_DoctorNote, M_DoctorPhone, M_DoctorIsMarketingConfirm, M_DoctorEmailIsDefault, M_DoctorDOB, M_DoctorM_SpecialistID, M_DoctorM_UserID ) VALUES( '{$prm['M_DoctorPrefix']}', '{$prm['M_DoctorPrefix2']}', '{$prm['M_DoctorName']}', '{$prm['M_DoctorSufix']}', '{$prm['M_DoctorSufix2']}', '{$prm['M_DoctorSufix3']}', '{$prm['M_DoctorM_SexID']}', '{$prm['M_DoctorM_ReligionID']}', '{$prm['M_DoctorM_StaffID']}', '{$prm['M_DoctorM_StaffNIK']}', '{$prm['M_DoctorEmail']}', '{$prm['M_DoctorHP']}', '{$prm['M_DoctorNote']}', '{$prm['M_DoctorPhone']}', '{$prm['M_DoctorIsMarketingConfirm']}', '{$prm['M_DoctorEmailIsDefault']}', '{$xxdob}', '{$prm['M_DoctorM_SpecialistID']}', $userid ) "; //echo $query; $rows = $this->db_regional->query($query); $last_id = $this->db_regional->insert_id(); if($rows){ $data = json_encode($prm); //print_r($prm); $md5 = md5($data); $param = array("data" => $data, "md5" => $md5); $jparam = json_encode($param); $sql = "SELECT * FROM m_branch WHERE M_BranchIsActive = 'Y'"; $branches = $this->db_regional->query($sql)->result_array(); foreach($branches as $k => $v){ try { $sql = "INSERT INTO doctortobranch ( DoctorToBranchM_DoctorID, DoctorToBranchM_BranchIPAddress, DoctorToBranchCreated, DoctorToBranchUserID ) VALUES( {$last_id}, '{$v['M_BranchIPAddress']}', NOW(), {$userid} )"; //echo $sql; $this->db_regional->query($sql); $last_xid = $this->db_regional->insert_id(); $url = "http://".$v['M_BranchIPAddress']."/one-api/tools/marketing/downloaddoctor/"; //echo "Uploading : ".$prm['M_DoctorName']; $j_result = $this->post($url,$jparam); $result = json_decode($j_result,true); //echo $result["qry"]; if ($result["status"] == "OK") { //echo $result["qry"]; $sql = "UPDATE doctortobranch set DoctorToBranchStatus = 'Y' WHERE DoctorToBranchID = {$last_xid}"; $this->db_regional->query($sql); } else{ $sql = "UPDATE doctortobranch set DoctorToBranchRetry = DoctorToBranchRetry + 1 WHERE DoctorToBranchID = {$last_xid}"; $this->db_regional->query($sql); throw new Exception("ERR : " . $result["message"] . "\n"); } } catch(Exception $exc) { $message = $exc->getMessage(); echo $message; } } } $result = array( "total" => 1 , "records" => array('status'=>'OK'), "id" => $last_id ); //sipe tambah log doctor $prm["M_DoctorID"] = $last_id; $prm["M_DoctorM_UserID"] = $userid; $d_doctor = json_encode($prm); $this->db_regional->query("call one_log.log_me('DOCTOR','DOCTOR_ADD','{$d_doctor}',$userid)"); $this->sys_ok($result); exit; } function post($url,$data) { $ch = curl_init($url); curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST"); curl_setopt($ch, CURLOPT_POSTFIELDS, $data); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HTTPHEADER, array( 'Content-Type: application/json', 'Content-Length: ' . strlen($data)) ); $result = curl_exec($ch); return $result; } function deletedoctor(){ if (! $this->isLogin) { $this->sys_error("Invalid Token"); exit; } $prm = $this->sys_input; // sipe nambah ambil userid $userid = $this->sys_user["M_UserID"]; $query ="UPDATE m_doctor SET M_DoctorIsActive = 'N' WHERE M_DoctorID = '{$prm['M_DoctorID']}' "; //echo $query; $rows = $this->db_regional->query($query); $result = array( "total" => 1 , "records" => array('status'=>'OK') ); //adi tambah log doctor $prm["M_DoctorM_UserID"] = $userid; $d_doctor = json_encode($prm); $this->db_regional->query("call one_log.log_me('DOCTOR','DOCTOR_DELETE','{$d_doctor}',$userid)"); $this->sys_ok($result); exit; } function getaddress(){ if (! $this->isLogin) { $this->sys_error("Invalid Token"); exit; } $prm = $this->sys_input; $query =" SELECT m_doctoraddress.*, M_KelurahanName, M_DistrictID, M_DistrictName, M_CityID, M_CityName,Nat_JpaName, '' as action FROM m_doctoraddress JOIN m_kelurahan ON M_DoctorAddressM_KelurahanID = M_KelurahanID JOIN m_district ON M_KelurahanM_DistrictID = M_DistrictID JOIN m_city ON M_DistrictM_CityID = M_CityID left join nat_jpa on M_DoctorAddressNat_JpaID = Nat_JpaID WHERE M_DoctorAddressIsActive = 'Y' AND M_DoctorAddressM_DoctorID = ? "; //echo $query; $rows = $this->db_regional->query($query,array($prm['id']))->result_array(); if($rows){ foreach($rows as $k => $v){ $rows[$k]['action'] = 'delete'; $rows[$k]['action'] .= 'edit'; } } $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_regional->query("SELECT COUNT(*) as countx FROM m_doctoraddress WHERE M_DoctorAddressM_DoctorOldCode = '{$prm['M_DoctorAddressM_DoctorOldCode']}' AND M_DoctorAddressIsActive = 'Y'")->row()->countx; //echo $this->db_regional->last_query(); if($count_addrs == 0){ $prm['M_DoctorAddressNote'] = 'Utama'; } else{ $count_addrs_utama = $this->db_regional->query("SELECT COUNT(*) as countx FROM m_doctoraddress WHERE M_DoctorAddressM_DoctorOldCode = '{$prm['M_DoctorAddressM_DoctorOldCode']}' AND M_DoctorAddressNote = 'Utama' AND M_DoctorAddressIsActive = 'Y'")->row()->countx; if($count_addrs_utama > 0 && strtolower($prm['M_DoctorAddressNote']) == 'utama'){ $rx = date('YmdHis'); $prm['M_DoctorAddressNote'] = 'Utama_'.$rx; } } $query ="INSERT INTO m_doctoraddress ( M_DoctorAddressM_DoctorOldCode, M_DoctorAddressNote, M_DoctorAddressDescription, M_DoctorAddressM_KelurahanID, M_DoctorAddressNat_JpaID, M_DoctorAddressLastUpdated, M_DoctorAddressCreated ) VALUES( '{$prm['M_DoctorAddressM_DoctorOldCode']}', '{$prm['M_DoctorAddressNote']}', '{$prm['M_DoctorAddressDescription']}', '{$prm['M_DoctorAddressM_KelurahanID']}', '{$prm['M_DoctorAddressNat_JpaID']}', NOW(), NOW() ) "; //echo $query; $rows = $this->db_regional->query($query); $last_id = $this->db_regional->insert_id(); if($rows){ $data = json_encode($prm); //print_r($prm); $md5 = md5($data); $param = array("data" => $data, "md5" => $md5); $jparam = json_encode($param); $sql = "SELECT * FROM m_branch WHERE M_BranchIsActive = 'Y'"; $branches = $this->db_regional->query($sql)->result_array(); foreach($branches as $k => $v){ try { $sql = "INSERT INTO doctortobranch ( DoctorToBranchM_DoctorID, DoctorToBranchM_BranchIPAddress, DoctorToBranchType, DoctorToBranchCreated, DoctorToBranchUserID ) VALUES( {$last_id}, '{$v['M_BranchIPAddress']}', 'A', NOW(), {$userid} )"; //echo $sql; $this->db_regional->query($sql); $last_xid = $this->db_regional->insert_id(); //echo $last_xid; $url = "http://".$v['M_BranchIPAddress']."/one-api/tools/marketing/newaddressdoctor/"; //echo $url; //echo "Uploading : ".$prm['M_DoctorName']; $j_result = $this->post($url,$jparam); $result = json_decode($j_result,true); //echo $result["qry"]; if ($result["status"] == "OK") { //echo $result["qry"]; $sql = "UPDATE doctortobranch set DoctorToBranchStatus = 'Y' WHERE DoctorToBranchID = {$last_xid}"; $this->db_regional->query($sql); } else{ $sql = "UPDATE doctortobranch set DoctorToBranchRetry = DoctorToBranchRetry + 1 WHERE DoctorToBranchID = {$last_xid}"; $this->db_regional->query($sql); throw new Exception("ERRZ : " . $result["message"] . "\n"); } } catch(Exception $exc) { $message = $exc->getMessage(); echo $message; } } } $result = array( "total" => 1 , "records" => array('status'=>'OK') ); //adi tambah log doctor $prm["M_DoctorM_UserID"] = $userid; $d_doctor = json_encode($prm); $this->db_regional->query("call one_log.log_me('DOCTOR','DOCTOR_ADDR','{$d_doctor}',$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_doctoraddress SET M_DoctorAddressM_DoctorOldCode = '{$prm['M_DoctorAddressM_DoctorOldCode']}', M_DoctorAddressNote = '{$prm['M_DoctorAddressNote']}', M_DoctorAddressDescription = '{$prm['M_DoctorAddressDescription']}', M_DoctorAddressM_KelurahanID = '{$prm['M_DoctorAddressM_KelurahanID']}', M_DoctorAddressNat_JpaID = '{$prm['M_DoctorAddressNat_JpaID']}', M_DoctorAddressLastUpdated = now() WHERE M_DoctorAddressID = '{$prm['M_DoctorAddressID']}' "; // echo $query; $rows = $this->db_regional->query($query); $last_id = $prm['M_DoctorAddressID']; if($rows){ $data = json_encode($prm); //print_r($prm); $md5 = md5($data); $param = array("data" => $data, "md5" => $md5); $jparam = json_encode($param); $sql = "SELECT * FROM m_branch WHERE M_BranchIsActive = 'Y'"; $branches = $this->db_regional->query($sql)->result_array(); foreach($branches as $k => $v){ try { $sql = "INSERT INTO doctortobranch ( DoctorToBranchM_DoctorID, DoctorToBranchM_BranchIPAddress, DoctorToBranchType, DoctorToBranchCreated, DoctorToBranchUserID ) VALUES( {$last_id}, '{$v['M_BranchIPAddress']}', 'A', NOW(), {$userid} )"; //echo $sql; $this->db_regional->query($sql); $last_xid = $this->db_regional->insert_id(); //echo $last_xid; $url = "http://".$v['M_BranchIPAddress']."/one-api/tools/marketing/updateaddressdoctor/"; //echo $url; //echo "Uploading : ".$prm['M_DoctorName']; $j_result = $this->post($url,$jparam); $result = json_decode($j_result,true); //echo $result["qry"]; if ($result["status"] == "OK") { //echo $result["qry"]; $sql = "UPDATE doctortobranch set DoctorToBranchStatus = 'Y' WHERE DoctorToBranchID = {$last_xid}"; $this->db_regional->query($sql); } else{ $sql = "UPDATE doctortobranch set DoctorToBranchRetry = DoctorToBranchRetry + 1 WHERE DoctorToBranchID = {$last_xid}"; $this->db_regional->query($sql); throw new Exception("ERRZ : " . $result["message"] . "\n"); } } catch(Exception $exc) { $message = $exc->getMessage(); echo $message; } } } $result = array( "total" => 1 , "records" => array('status'=>'OK') ); //adi tambah log doctor $prm["M_DoctorM_UserID"] = $userid; $d_doctor = json_encode($prm); $this->db_regional->query("call one_log.log_me('DOCTOR','DOCTOR_ADDR_EDIT','{$d_doctor}',$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_doctoraddress SET M_DoctorAddressIsActive = 'N', M_DoctorAddressLastUpdated = now() WHERE M_DoctorAddressID = '{$prm['M_DoctorAddressID']}' "; //echo $query; $rows = $this->db_regional->query($query); $result = array( "total" => 1 , "records" => array('status'=>'OK') ); //adi tambah log doctor $prm["M_DoctorM_UserID"] = $userid; $d_doctor = json_encode($prm); $this->db_regional->query("call one_log.log_me('DOCTOR','DOCTOR_ADDR_DELETE','{$d_doctor}',$userid)"); $this->sys_ok($result); exit; } }