|
|
@@ -480,6 +480,94 @@ class LinkService extends ZskkDefaultService {
|
|
|
return $info;
|
|
|
}
|
|
|
|
|
|
+ /*
|
|
|
+ * 唐山获取 报告对接
|
|
|
+ * $param type code
|
|
|
+ * type 查询类型、code 参数
|
|
|
+ */
|
|
|
+ public function getNewPatientList($param)
|
|
|
+ {
|
|
|
+ $param['code'] = openssl_decrypt(base64_decode($param['code']), 'AES-128-ECB', 'ghbfdmlyhxdxlyjl');
|
|
|
+
|
|
|
+ if(empty($param['code']))
|
|
|
+ {
|
|
|
+ $this->throwError('数据解密失败','1210');
|
|
|
+ }
|
|
|
+ if(empty($param['type']) || !in_array($param['type'],[1,2,3,4,5,6,7,8,9]))
|
|
|
+ {
|
|
|
+ $this->throwError('没有相应的类型','1211');
|
|
|
+ }
|
|
|
+
|
|
|
+ $code = $param['code'];
|
|
|
+ $where = $institution = $whereTime = [];
|
|
|
+
|
|
|
+ switch ($param['type']){
|
|
|
+ case '1':
|
|
|
+ //病历号
|
|
|
+ $where['patient_num'] = $code;
|
|
|
+ break;
|
|
|
+ case '2':
|
|
|
+ //检查号
|
|
|
+ $where['accession_num'] = $code;
|
|
|
+ break;
|
|
|
+ case '3':
|
|
|
+ //住院号
|
|
|
+ $where['hopitalized_no'] = $code;
|
|
|
+ break;
|
|
|
+ case '4':
|
|
|
+ //身份证
|
|
|
+ $where['card_num'] = $code;
|
|
|
+ break;
|
|
|
+ case '5':
|
|
|
+ //手机号
|
|
|
+ $where['phone'] = $code;
|
|
|
+ break;
|
|
|
+ case '6':
|
|
|
+ //姓名
|
|
|
+ $where['name'] = $code;
|
|
|
+ break;
|
|
|
+ case '7':
|
|
|
+ //门诊号
|
|
|
+ $where['out_patient'] = $code;
|
|
|
+ break;
|
|
|
+ case '8':
|
|
|
+ //医院HIS病人ID
|
|
|
+ $where['his_patient_id'] = $code;
|
|
|
+ break;
|
|
|
+ case '9':
|
|
|
+ //检查时间
|
|
|
+ $where['exam_datetime'] = $code;
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ if(empty($where)) {return [];}
|
|
|
+
|
|
|
+ $info = $this->linkDao->getPatientReportList($where,$institution,$whereTime,[]);
|
|
|
+ foreach ($info as $k=>$v)
|
|
|
+ {
|
|
|
+ $info[$k]['insConfig'] = '';
|
|
|
+ $info[$k]['config_number'] = '';
|
|
|
+ $config = Config::get('hospital_config');
|
|
|
+ foreach ($config as $key=>$value)
|
|
|
+ {
|
|
|
+ if(isset($v[$key]) && !empty($v[$key]))
|
|
|
+ {
|
|
|
+ $info[$k]['insConfig'] = $value;
|
|
|
+ $info[$k]['config_number'] = $v[$key];
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if(!empty($v['patient_source']))
|
|
|
+ {
|
|
|
+ $sourceArr = Config::get('patient_source');
|
|
|
+ $sourceInfo = $sourceArr[$v['patient_source']] ?? [];
|
|
|
+ if(!empty($sourceInfo))
|
|
|
+ {
|
|
|
+ $info[$k]['insConfig'] = $sourceInfo['name'];
|
|
|
+ $info[$k]['config_number'] = $v[$sourceInfo['field']];
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return $info;
|
|
|
+ }
|
|
|
|
|
|
public function getAnotherPatientList($param)
|
|
|
{
|