From 0f704da056d6338345e9986e36f28a3986e36bb7 Mon Sep 17 00:00:00 2001 From: yanzai Date: Thu, 27 Jun 2024 22:08:01 +0800 Subject: [PATCH] 1 --- .../API/Third/EntrustController.php | 1 + Laravel/app/Http/Middleware/XmlLog.php | 1 + .../app/Services/Xml/ShenQingDanService.php | 83 ++++++++++--------- 3 files changed, 45 insertions(+), 40 deletions(-) diff --git a/Laravel/app/Http/Controllers/API/Third/EntrustController.php b/Laravel/app/Http/Controllers/API/Third/EntrustController.php index a3234d4..5a78e88 100644 --- a/Laravel/app/Http/Controllers/API/Third/EntrustController.php +++ b/Laravel/app/Http/Controllers/API/Third/EntrustController.php @@ -77,6 +77,7 @@ class EntrustController extends Controller public function CreateRecordXml(Request $request) { $xmlString = $request->getContent(); // 获取请求的原始内容(XML) + $res = explode('', $xmlString)[1]; $res = explode('', $res)[0]; $xmlData = simplexml_load_string($res); diff --git a/Laravel/app/Http/Middleware/XmlLog.php b/Laravel/app/Http/Middleware/XmlLog.php index 3a5c58e..e4d9160 100644 --- a/Laravel/app/Http/Middleware/XmlLog.php +++ b/Laravel/app/Http/Middleware/XmlLog.php @@ -40,6 +40,7 @@ class XmlLog } public function RequestLog($arr,$id) { //记录请求日志 + date_default_timezone_set('PRC'); LogService::CheckTableName(); $table_name = 'zz_request_log_' . date('ym'); $response_data = isset($arr['response_data']) ? self::JsonEncode($arr['response_data']) : ''; diff --git a/Laravel/app/Services/Xml/ShenQingDanService.php b/Laravel/app/Services/Xml/ShenQingDanService.php index 27b0ff5..6b1c23e 100644 --- a/Laravel/app/Services/Xml/ShenQingDanService.php +++ b/Laravel/app/Services/Xml/ShenQingDanService.php @@ -1,52 +1,53 @@ $order){ - $patient_type=null; - if(isset($Body["PATAdmInfo"]["PAADMTypeCode"])){ - $p=$Body["PATAdmInfo"]["PAADMTypeCode"]; - if($p=='O') $patient_type=1; - if($p=='H') $patient_type=3; - if($p=='E') $patient_type=2; - if($p=='I') $patient_type=0; + foreach ($orderList as $key => $order) { + $patient_type = null; + if (isset($Body["PATAdmInfo"]["PAADMTypeCode"])) { + $p = $Body["PATAdmInfo"]["PAADMTypeCode"]; + if ($p == 'O') $patient_type = 1; + if ($p == 'H') $patient_type = 3; + if ($p == 'E') $patient_type = 2; + if ($p == 'I') $patient_type = 0; } $params = [ 'list_status' => 0, - 'reg_num' => $Body["PATPatientInfo"]["PATPatientID"] ?$Body["PATPatientInfo"]["PATPatientID"]: null, - 'user_name' => $Body["PATPatientInfo"]["PATName"] ?$Body["PATPatientInfo"]["PATName"]: null, - 'user_sex' => $Body["PATPatientInfo"]["PATName"]=='男'?1: 2, - 'entrust_code' => $order["RISRCode"] ?$order["RISRCode"]: null, - 'entrust' => $order["RISRDesc"] ?$order["RISRDesc"]: null, - 'is_pay' => $order["OrdBillStatus"]=='已收费' ? 1: 0, - 'reservation_department' => $order["AppDeptDesc"] ?$order["AppDeptDesc"]: null, - 'entrust_date' =>$order["RISRSubmitTime"] ?substr($order["RISRSubmitTime"], 0, 10): null, - 'entrust_time' => $order["RISRSubmitTime"] ?substr($order["RISRSubmitTime"], 11, 8): null, - 'user_brithday' =>$Body["PATPatientInfo"]["PATDob"] ?$Body["PATPatientInfo"]["PATDob"]: null, - 'docotr' => $Body["PATAdmInfo"]["PAADMDocDesc"] ?$Body["PATAdmInfo"]["PAADMDocDesc"]: null, - 'patient_type' =>$patient_type, - 'user_phone' => $Body["PATPatientInfo"]["PATTelephone"] ? $Body["PATPatientInfo"]["PATTelephone"]: null, - 'implement_department' => $order["RISRAcceptDeptDesc"] ?$order["RISRAcceptDeptDesc"]: null, - 'entrust_id' => $order["OEORIOrderItemID"] ?$order["OEORIOrderItemID"]: null,//his传过来的本地医嘱id - 'episodeid' => $Body["PATAdmInfo"]["PAADMVisitNumber"] ?$Body["PATAdmInfo"]["PAADMVisitNumber"]: null, //就诊号 - 'RISRExamID' =>$order["RISRExamID"] ?$order["RISRExamID"]: null, //检查号 - 'RISRAcceptDeptCode' => $order["RISRAcceptDeptCode"] ?$order["RISRAcceptDeptCode"]: null, //接收科室代码 - 'warddesc' => $Body["PATAdmInfo"]["PAADMAdmWardDesc"]? $Body["PATAdmInfo"]["PAADMAdmWardDesc"] :null, //病区 - 'beddesc' => $Body["PATAdmInfo"]["PAADMCurBedNo"]? $Body["PATAdmInfo"]["PAADMCurBedNo"] :null, //病床号 + 'reg_num' => $Body["PATPatientInfo"]["PATPatientID"] ? $Body["PATPatientInfo"]["PATPatientID"] : null, + 'user_name' => $Body["PATPatientInfo"]["PATName"] ? $Body["PATPatientInfo"]["PATName"] : null, + 'user_sex' => $Body["PATPatientInfo"]["PATName"] == '男' ? 1 : 2, + 'entrust_code' => $order["RISRCode"] ? $order["RISRCode"] : null, + 'entrust' => $order["RISRDesc"] ? $order["RISRDesc"] : null, + 'is_pay' => $order["OrdBillStatus"] == '已收费' ? 1 : 0, + 'reservation_department' => $order["AppDeptDesc"] ? $order["AppDeptDesc"] : null, + 'entrust_date' => $order["RISRSubmitTime"] ? substr($order["RISRSubmitTime"], 0, 10) : null, + 'entrust_time' => $order["RISRSubmitTime"] ? substr($order["RISRSubmitTime"], 11, 8) : null, + 'user_brithday' => $Body["PATPatientInfo"]["PATDob"] ? $Body["PATPatientInfo"]["PATDob"] : null, + 'docotr' => $Body["PATAdmInfo"]["PAADMDocDesc"] ? $Body["PATAdmInfo"]["PAADMDocDesc"] : null, + 'patient_type' => $patient_type, + 'user_phone' => $Body["PATPatientInfo"]["PATTelephone"] ? $Body["PATPatientInfo"]["PATTelephone"] : null, + 'implement_department' => $order["RISRAcceptDeptDesc"] ? $order["RISRAcceptDeptDesc"] : null, + 'entrust_id' => $order["OEORIOrderItemID"] ? $order["OEORIOrderItemID"] : null,//his传过来的本地医嘱id + 'episodeid' => $Body["PATAdmInfo"]["PAADMVisitNumber"] ? $Body["PATAdmInfo"]["PAADMVisitNumber"] : null, //就诊号 + 'RISRExamID' => $order["RISRExamID"] ? $order["RISRExamID"] : null, //检查号 + 'RISRAcceptDeptCode' => $order["RISRAcceptDeptCode"] ? $order["RISRAcceptDeptCode"] : null, //接收科室代码 + 'warddesc' => $Body["PATAdmInfo"]["PAADMAdmWardDesc"] ? $Body["PATAdmInfo"]["PAADMAdmWardDesc"] : null, //病区 + 'beddesc' => $Body["PATAdmInfo"]["PAADMCurBedNo"] ? $Body["PATAdmInfo"]["PAADMCurBedNo"] : null, //病床号 ]; $requiredFields = [ 'reg_num', 'user_name', 'user_sex', 'entrust', 'is_pay', @@ -79,21 +80,23 @@ class ShenQingDanService } else { DB::rollBack(); - return \Yz::XMLReturn($Header['SourceSystem'],$Header['MessageID'],-1,'失败'); + return \Yz::XMLReturn($Header['SourceSystem'], $Header['MessageID'], -1, '失败'); } - }else { + } else { DB::rollBack(); - return \Yz::XMLReturn($Header['SourceSystem'],$Header['MessageID'],-1,'失败'); + return \Yz::XMLReturn($Header['SourceSystem'], $Header['MessageID'], -1, '失败'); } } - if(count($orderList)==$insert_count){ + if (count($orderList) == $insert_count) { DB::commit(); - return \Yz::XMLReturn($Header['SourceSystem'],$Header['MessageID'],0,'成功'); - }else{ + return \Yz::XMLReturn($Header['SourceSystem'], $Header['MessageID'], 0, '成功'); + } else { DB::rollBack(); - return \Yz::XMLReturn($Header['SourceSystem'],$Header['MessageID'],-1,'失败'); + return \Yz::XMLReturn($Header['SourceSystem'], $Header['MessageID'], -1, '失败'); } } + + }