db_onedev = $this->load->database("onedev", true); $this->load->helper(array('form', 'url')); } public function search() { $prm = $this->sys_input; if (! $this->isLogin) { $this->sys_error("Invalid Token"); exit; } $sql = "SELECT Nar_SpecimenID as id, Nar_SpecimenID, Nar_SpecimenCode, Nar_SpecimenDescription FROM nar_specimen WHERE Nar_SpecimenIsActive = 'Y' GROUP BY Nar_SpecimenID "; //echo $sql; $query = $this->db_onedev->query($sql); $rows = $query->result_array(); $result = array("total" => count($rows), "records" => $rows, "sql"=> $this->db_onedev->last_query()); $this->sys_ok($result); exit; } public function search_listing() { $prm = $this->sys_input; if (! $this->isLogin) { $this->sys_error("Invalid Token"); exit; } $sql = "SELECT IFNULL(Nar_SpecimenID,0) as id, Nar_SpecimenID, Nar_SpecimenCode, Nar_SpecimenDescription FROM nar_specimen WHERE Nar_SpecimenIsActive = 'Y' "; //echo $sql; $query = $this->db_onedev->query($sql); $rows = $query->result_array(); $result = array("total" => count($rows), "records" => $rows, "sql"=> $this->db_onedev->last_query()); $this->sys_ok($result); exit; } function selectcategory(){ try { //# cek token valid if (! $this->isLogin) { $this->sys_error("Invalid Token"); exit; } $rows = []; $query ="SELECT * FROM t_category WHERE T_CategoryIsActive = 'Y' ORDER BY T_CategoryName asc"; //echo $query; $rows['categorys'] = $this->db_onedev->query($query)->result_array(); $result = array( "total" => count($rows) , "records" => $rows, ); $this->sys_ok($result); } catch(Exception $exc) { $message = $exc->getMessage(); $this->sys_error($message); } } function save(){ try { //# cek token valid if (! $this->isLogin) { $this->sys_error("Invalid Token"); exit; } //# ambil parameter input $prm = $this->sys_input; $Nar_SpecimenName = $prm['name']; $Nar_SpecimenIsPCR = $prm['ispcr']; $Nar_SpecimenIsSchedule = $prm['isschedule']; $Nar_SpecimenIsKuota = $prm['iskuota']; $userid = $this->sys_user["M_UserID"]; if($prm['xid'] == 0){ $query = "SELECT COUNT(*) as exist FROM nar_specimen WHERE Nar_SpecimenIsActive = 'Y' AND Nar_SpecimenName = '{$Nar_SpecimenName}' AND Nar_SpecimenT_CategoryID = '{$Nar_SpecimenT_CategoryID}'"; $exist_code = $this->db_onedev->query($query)->row()->exist; if($exist_code == 0){ $sql = "insert into nar_specimen( Nar_SpecimenName, Nar_SpecimenIsPCR, Nar_SpecimenIsSchedule, Nar_SpecimenIsKuota, Nar_SpecimenUserID, Nar_SpecimenLastUpdate, Nar_SpecimenCreated) values(?,?,?,?,?,now(),now())"; $query = $this->db_onedev->query($sql, array( $Nar_SpecimenName, $Nar_SpecimenIsPCR, $Nar_SpecimenIsSchedule, $Nar_SpecimenIsKuota, $userid) ); if (!$query) { $this->sys_error_db("nar_specimen insert",$this->db_onedev); exit; } $last_id = $this->db_onedev->insert_id(); $result = array ("total" => 1, "records" => array("xid" => 0)); $this->sys_ok($result); }else{ $errors = array(); if($exist_code != 0){ array_push($errors,array('field'=>'code','msg'=>'Nama sudah ada yang pakai dong')); } $result = array ("total" => -1,"errors" => $errors, "records" => 0); $this->sys_ok($result); } }else{ $query = "SELECT COUNT(*) as exist FROM nar_specimen WHERE Nar_SpecimenIsActive = 'Y' AND Nar_SpecimenName = '{$Nar_SpecimenName}' AND Nar_SpecimenT_CategoryID = '{$Nar_SpecimenT_CategoryID}' AND Nar_SpecimenID <> {$prm['xid']}"; //echo $query; $exist_code = $this->db_onedev->query($query)->row()->exist; // echo $exist_code; if($exist_code == 0){ $sql = "UPDATE nar_specimen SET Nar_SpecimenName = '{$Nar_SpecimenName}', Nar_SpecimenIsPCR = '{$Nar_SpecimenIsPCR}', Nar_SpecimenIsSchedule = '{$Nar_SpecimenIsSchedule}', Nar_SpecimenIsKuota = '{$Nar_SpecimenIsKuota}', Nar_SpecimenUserID = '{$userid}' WHERE Nar_SpecimenID = '{$prm['xid']}'"; //echo $sql; $query = $this->db_onedev->query($sql); $result = array ("total" => 1, "records" => array("xid" => 0)); $this->sys_ok($result); }else{ $errors = array(); if($exist_code != 0){ array_push($errors,array('field'=>'code','msg'=>'Nama sudah ada yang pakai dong')); } $result = array ("total" => -1,"errors" => $errors, "records" => 0); $this->sys_ok($result); } } } catch(Exception $exc) { $message = $exc->getMessage(); $this->sys_error($message); } } public function delete() { try { //# cek token valid if (! $this->isLogin) { $this->sys_error("Invalid Token"); exit; } //# ambil parameter input $prm = $this->sys_input; $id = $prm['xid']; $userid = $this->sys_user["M_UserID"]; $sql = "update nar_specimen SET Nar_SpecimenIsActive = 'N', Nar_SpecimenUserID = $userid, Nar_SpecimenLastUpdate = now() WHERE Nar_SpecimenID = $id"; $query = $this->db_onedev->query($sql); if (!$query) { $this->sys_error_db("nar_specimen delete"); exit; } $sqltest = "update nar_specimen_test SET T_SubcategoryTestIsActive = 'N', T_SubcategoryTestUserID = $userid, T_SubcategoryTestLastUpdated = now() WHERE T_SubcategoryTestT_SubcategoryID = $id"; $querytest = $this->db_onedev->query($sqltest); // echo $query; if (!$querytest) { $this->sys_error_db("nar_specimen_test delete"); exit; } $result = array ("total" => 1, "records" => array("xid" => 0)); $this->sys_ok($result); } catch(Exception $exc) { $message = $exc->getMessage(); $this->sys_error($message); } } function savejpagroup(){ if (! $this->isLogin) { $this->sys_error("Invalid Token"); exit; } $prm = $this->sys_input; $userid = $this->sys_user["M_UserID"]; $query = "insert into nar_specimen( Nar_SpecimenName, Nar_SpecimenUserID, Nar_SpecimenCreated ) VALUES( '{$prm['value']}', {$userid}, NOW() )"; //echo $query; $action = $this->db_onedev->query($query); if($action){ $result = array( "total" => 1 , "records" => array(), ); $this->sys_ok($result); exit; } else{ $this->sys_error_db($this->db_onedev->last_query(), $this->db_onedev); exit; } } function savelistingjpagroup(){ if (! $this->isLogin) { $this->sys_error("Invalid Token"); exit; } $prm = $this->sys_input; $userid = $this->sys_user["M_UserID"]; $query = " UPDATE nar_specimen SET Nar_SpecimenName = '{$prm['name']}', Nar_SpecimenIsActive = '{$prm['status']}', Nar_SpecimenUserID = {$userid} WHERE Nar_SpecimenID = {$prm['id']} "; //echo $query; $action = $this->db_onedev->query($query); if($action){ $result = array( "total" => 1 , "records" => array(), ); $this->sys_ok($result); exit; } else{ $this->sys_error_db($this->db_onedev->last_query(), $this->db_onedev); exit; } } function savealljpadetail(){ if (! $this->isLogin) { $this->sys_error("Invalid Token"); exit; } $prm = $this->sys_input; $details = $prm['details']; $userid = $this->sys_user["M_UserID"]; foreach($details as $k => $v){ $query = "insert into nar_specimen( Nat_JPADetailNat_JPAID, Nat_JPADetailNar_SpecimenID, Nat_JPADetailDiscount, Nat_JPADetailUserID, Nat_JPADetailCreated ) VALUES( '{$v['Nat_JpaID']}', '{$v['Nar_SpecimenID']}', '{$v['Nat_JPADetailDiscount']}', {$userid}, NOW() ) ON DUPLICATE KEY UPDATE Nat_JPADetailDiscount = {$v['Nat_JPADetailDiscount']}, Nat_JPADetailUserID = {$userid}"; //echo $query; $action = $this->db_onedev->query($query); } if($action){ $result = array( "total" => 1 , "records" => array(), ); $this->sys_ok($result); exit; } else{ $this->sys_error_db($this->db_onedev->last_query(), $this->db_onedev); exit; } } }