@php header('Content-Type:application/json'); $arr = array(); try { // $json = jsonEncode($arr); // $hn = "12548001"; // $pre_reqno = "64021555"; // $date = date('YmdHi'); $case = DB::table('tb_case')->where('case_id',$cid)->first(); $data = jsonDecode($case->case_json); $pre_reqno = date('Y')."000001"; $keyinuser = DB::table('users')->where('id',$data->useropencase)->first(); $doctor = DB::table('users')->where('id',$case->case_physicians01)->first(); $dateapp = str_replace(" ","T",$case->case_dateappointment).".000"; $dateregis = str_replace(" ","T",$case->case_dateregister).".000"; // dd($case,$data); $arr = array(); $arr['OPERATION']['hn'] = $case->case_hn; $arr['OPERATION']['visit'] = ""; $arr['OPERATION']['pre_reqno'] = $pre_reqno; $arr['OPERATION']['keyin_datetime'] = $dateregis; $arr['OPERATION']['REQ_datetime'] = $dateapp; $arr['OPERATION']['ORSTATUS'] = "NW"; $arr['OPERATION']['MAINDOCC'] = $doctor->user_code; $arr['OPERATION']['keyin_user'] = $keyinuser->user_code; $arr['OPERATION']['START_DATE'] = $dateapp; $arr['OPERATION']['END_DATE'] = $dateapp; if(isset($data->billingicd9)){ $i=0; $tb_procedureicd9 = DB::table('tb_procedureicd9')->wherein('proicd9_id',$data->billingicd9)->get(); $count = count($tb_procedureicd9); if($count==0){ $temp = billicd9($case); $arr['OPERATION']['ORCODE'] = $temp['ORCODE']; $arr['OPERATION']['ORPRICE'] = $temp['ORPRICE']; }else{ foreach($tb_procedureicd9 as $minor){ if($i==0){ $temp = billicd9($case); $arr['OPERATION']['ORCODE'] = $temp['ORCODE']; $arr['OPERATION']['ORPRICE'] = $temp['ORPRICE']; }else{ $arr['MINOR'][$i]['ORCODE'] = $minor->icd9; // "ORCODE": "45161GI", --รหัส OPERATION $arr['MINOR'][$i]['ORPRICE'] = $minor->icd9_billprice; // "ORPRICE":3500 , --ราคา $arr['MINOR'][$i]['REQSIDE'] = 0; // "REQSIDE":'0' , --0 ไม่ระบุข้าง , 1 ข้างซ้าย ม2 ข้างขวา , 3 ทั้งสองข้าง } $i++; } } }else{ $temp = billicd9($case); $arr['OPERATION']['ORCODE'] = $temp['ORCODE']; $arr['OPERATION']['ORPRICE'] = $temp['ORPRICE']; } if(isset($data->billing_accessory)){ $i=0; foreach($data->billing_accessory as $bill){ $arr['BILL'][$i]['pre_reqno'] = $pre_reqno; // "pre_reqno" :"6400001", -- YY+running 5 หลัก, ปี2หลัก+XXXXX $arr['BILL'][$i]['keyin_datetime'] = $dateregis; // "keyin_datetime":"2021-07-01T08:00:00.000", -- วันที่คีย์ข้อมูล $arr['BILL'][$i]['keyin_user'] = $keyinuser->user_code; // "keyin_user" :"45760" , -- userที่ทำรายการ $accessory = DB::table('accessory')->where('accessory_id',$bill[0])->first(); if($accessory!=null){ $arr['BILL'][$i]['PRDCODE'] = $accessory->accessory_code; // "PRDCODE" :"A001" , -- รหัสกิจกรรม $arr['BILL'][$i]['PRDPRICE'] = $bill[2]; // "PRDPRICE" :200 , -- ราคารวม $arr['BILL'][$i]['PRDQTY'] = $bill[1]; // "PRDQTY" :"1" , -- จำนวน }else{ $arr['BILL'][$i]['PRDCODE'] = 0; // "PRDCODE" :"A001" , -- รหัสกิจกรรม $arr['BILL'][$i]['PRDPRICE'] = 0; // "PRDPRICE" :200 , -- ราคารวม $arr['BILL'][$i]['PRDQTY'] = 0; // "PRDQTY" :"1" , -- จำนวน } $i++; } } if(isset($data->diagnostic)){ $i=0; $tb_diagnostic = DB::table('tb_diagnostic')->wherein('diagnostic_name',jsonDecode($data->diagnostic))->get(); foreach($tb_diagnostic as $di){ $arr['DIAGNOSIS'][$i]['DIAG_DATE'] = $dateapp; // "DIAG_DATE" :"2021-07-03T09:00:00.000" , -- วันที่ลง DIAGNOSIS $arr['DIAGNOSIS'][$i]['pre_reqno'] = $pre_reqno; // "pre_reqno" :"6400001", -- YY+running 5 หลัก, ปี2หลัก+XXXXX $arr['DIAGNOSIS'][$i]['doctor'] = $doctor->user_code; // "doctor" :"45760" , -- รหัสแพทย์ $arr['DIAGNOSIS'][$i]['ICDCODE'] = $di->icd10; // "ICDCODE" :"D805" , -- $arr['DIAGNOSIS'][$i]['DIAGTYPE'] = "I"; // "DIAGTYPE" :"I" , -- I ICD10,P ICD9 $arr['DIAGNOSIS'][$i]['ICDEXTN'] = ""; // "ICDEXTN" :"" , -- รหัส icd EXTENION $arr['DIAGNOSIS'][$i]['DIAGNOTE'] = ""; // "DIAGNOTE" :"" , -- note ของ DIAG $arr['DIAGNOSIS'][$i]['keyin_user'] = $keyinuser->user_code; // "keyin_user" :" 45760" , -- userที่ทำการ DIAGNOSIS $arr['DIAGNOSIS'][$i]['OPSTATUS'] = "A"; // "OPSTATUS" :"B", -- Bก่อน ผ่าตัด ม A หลังผ่าตัด $i++; } } $json = jsonEncode($arr); $date = date('YmdHi'); $dir = "D:\INBOX\\"; // $file = [hn]_[pre_reqno]_[yyyymmddmmnn].json $filename = $case->case_hn."_".$pre_reqno."_".$date.".JSON"; $fp = fopen($dir.$filename, 'w'); fwrite($fp, $json); fclose($fp); $str['status'] = "success"; $j = jsonEncode($str); } catch (Exception $e) { print_r($e); $str['status'] = "unsuccess"; $j = jsonEncode($str); } echo $j; function billicd9($case){ $w[0] = array('procedure_code',$case->case_procedure); $w[1] = array('icd9_status',"main"); $tb_procedureicd9 = DB::table('tb_procedureicd9')->where($w)->first(); $arr['ORCODE'] = $tb_procedureicd9->icd9; $arr['ORPRICE'] = $tb_procedureicd9->icd9_billprice; return $arr; } @endphp