香洲二院小程序
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
mini_xzey/app/Utils/Transfer/HisHttpClient/ClientMockHttpTransfer.php

301 lines
26 KiB

<?php
declare(strict_types=1);
namespace App\Utils\Transfer\HisHttpClient;
use App\Exceptions\GeneralException;
use App\Utils\Transfer\HttpTransferAbstract;
use App\Utils\Transfer\SoapTransferAbstract;
use Exception;
use Random\RandomException;
class ClientMockHttpTransfer extends HttpTransferAbstract
{
/**
* ClientMockTransfer Construct
* @param string $his_name
*/
public function __construct(string $his_name = "")
{
parent::__construct($his_name);
}
/**
* 设置客户端选项
* @return array
*/
public function clientHeaders(): array
{
return [];
}
/**
* @param string $class_name
* @return $this
*/
public function transferClass(string $class_name): static
{
return $this;
}
/**
* @throws GeneralException
*/
public function transferMethod(string $method, string $request_name, array $request_data = []): self
{
// 使用 match 替代 switch
return match ($request_name) {
'CreateCardPatInfo' => $this->mockRegisterCard($request_data),
'GetCardInfo' => $this->mockGetPatientInfo($request_data),
'GetDepType' => $this->mockGetDepLists($request_data),
'GetDoctList' => $this->mockGetDoctorLists($request_data),
'PayRegTrade' => $this->mockConfirmRegister($request_data),
'GetGHMXList' => $this->mockGetRegisterRecordLists($request_data),
'GHCancelCheck' => $this->mockCheckRefundRegisterStatus($request_data),
'GHCancelConfirm' => $this->mockRefundRegister($request_data),
'ListVisitRec' => $this->mockGetPendingLists($request_data),
'ListRecipe' => $this->mockGetPendingDetails($request_data),
'PayBillTrade' => $this->mockConfirmPayment($request_data),
'OutpatientExpenseRecord' => $this->mockGetPaidLists($request_data),
'OutpatientDetailRecord' => $this->mockGetPaidDetails($request_data),
'CreateOutpatientinvoiceEBill' => $this->mockCreateElectronInvoice($request_data),
'SendOutpatientinvoiceEBill' => $this->mockSendElectronInvoiceToHis($request_data),
'GetDictionary' => $this->mockGetDictionaryLists($request_data),
'GetChargeList' => $this->mockGetChargeList($request_data),
default => throw new GeneralException("Method '{$request_name}' not found"),
};
}
/**
* 响应格式化
* @return mixed
* @throws Exception
*/
public function responseFormat(): mixed
{
try {
// 此处为json格式
return json_decode((string)$this->transfer_response, true);
} catch (Exception $e) {
throw new Exception($e->getMessage());
}
}
/**
* 获取返回值
* @param bool $is_format
* @return mixed
* @throws Exception
*/
public function getResult(bool $is_format = true): mixed
{
return $this->responseFormat($this->transfer_response);
}
/**
* mockRegisterCard
* @param array $params
* @return self
* @throws RandomException
*/
private function mockRegisterCard(array $params): self
{
$patient_id = random_int(1000000, 9999999);
$this->transfer_response = '{"status":200,"success":true,"msg":"成功","msgDev":null,"response":{"patientId":"'. $patient_id.'"}}';
return $this;
}
/**
* mockGetPatientInfo
* @param array $params
* @return self
* @throws RandomException
*/
private function mockGetPatientInfo(array $params): self
{
// $patient_id = random_int(1000000, 9999999);
// $patient_number = random_int(100000, 999999). random_int(100000, 999999);
// $card_no = &$params['json']['cardNo'];
// $name = &$params['json']['name'];
// $this->transfer_response = '{"status":200,"success":true,"msg":"成功","msgDev":null,"response":{"patientId":"'. $patient_id.' ","cardNo":"'. $card_no. '","name":"'. ($name ?: '谭玉山').'","sex":"1","birthday":"1999-03-24","cardStatus":"0","naturePatients":"123","patientNumber":"'. $patient_number. '"}}';
$this->transfer_response = '{"status":200,"success":true,"msg":"成功","msgDev":null,"response":{"patientId":"2247368","cardNo":"440402197605115715","name":"黄华峰","sex":"0","birthday":"1976-05-11","cardStatus":"0","naturePatients":"123","patientNumber":"288712347368"}}';
return $this;
}
/**
* mockGetDepLists
* @param array $params
* @return self
*/
private function mockGetDepLists(array $params): self
{
$this->transfer_response = '{"status":200,"success":true,"msg":"成功","msgDev":null,"response":[{"typeId":"17","typeName":"泌尿外科"},{"typeId":"20","typeName":"体检办证"},{"typeId":"31","typeName":"内分泌科"},{"typeId":"01","typeName":"内科"},{"typeId":"05","typeName":"口腔科"},{"typeId":"19","typeName":"消化内科"},{"typeId":"29","typeName":"呼吸内科门诊"},{"typeId":"33","typeName":"中医减重门诊"},{"typeId":"03","typeName":"中医康复"},{"typeId":"18","typeName":"产前门诊"},{"typeId":"04","typeName":"五官科"},{"typeId":"10","typeName":"妇产科"},{"typeId":"16","typeName":"全科医生门诊"},{"typeId":"28","typeName":"儿童青少年心理门诊"},{"typeId":"02","typeName":"普外科"},{"typeId":"25","typeName":"儿科"},{"typeId":"27","typeName":"精神心理科"},{"typeId":"07","typeName":"急诊内科"},{"typeId":"09","typeName":"皮肤科"},{"typeId":"14","typeName":"急诊外科"},{"typeId":"15","typeName":"骨科"},{"typeId":"26","typeName":"治未病科"},{"typeId":"06","typeName":"专家门诊"},{"typeId":"11","typeName":"妇保门诊"},{"typeId":"12","typeName":"儿保门诊"},{"typeId":"32","typeName":"血液透析门诊"},{"typeId":"08","typeName":"天灸门诊"},{"typeId":"24","typeName":"神经内科"},{"typeId":"30","typeName":"助产士门诊"}]}';
return $this;
}
/**
* mockGetDoctorLists
* @param array $params
* @return self
*/
private function mockGetDoctorLists(array $params): self
{
$date = &$params['json']['date'];
$this->transfer_response = '{"status":200,"success":true,"msg":"成功","msgDev":null,"response":[{"doctId":"10488","doctName":"梁燕华","docTitle":"副主任医师","depLocation":"","isksDoc":"1","doctotVisitInfoList":[{"doctId":"10488","regId":"916601","rankId":"1","rankName":"上午","startTime":"08:00","endTime":"08:30","fee":"0","feeCode":"","regCount":"4","noVisits":"0","visitDate":"'. $date.'","timeSlot":null},{"doctId":"10488","regId":"916602","rankId":"1","rankName":"上午","startTime":"08:30","endTime":"09:00","fee":"0","feeCode":"","regCount":"3","noVisits":"0","visitDate":"'. $date.'","timeSlot":null},{"doctId":"10488","regId":"916603","rankId":"1","rankName":"上午","startTime":"09:00","endTime":"09:30","fee":"0","feeCode":"","regCount":"3","noVisits":"0","visitDate":"'. $date.'","timeSlot":null},{"doctId":"10488","regId":"916604","rankId":"1","rankName":"上午","startTime":"09:30","endTime":"10:00","fee":"0","feeCode":"","regCount":"3","noVisits":"0","visitDate":"'. $date.'","timeSlot":null},{"doctId":"10488","regId":"916605","rankId":"1","rankName":"上午","startTime":"10:00","endTime":"10:30","fee":"0","feeCode":"","regCount":"1","noVisits":"0","visitDate":"'. $date.'","timeSlot":null},{"doctId":"10488","regId":"916606","rankId":"1","rankName":"上午","startTime":"10:30","endTime":"11:00","fee":"0","feeCode":"","regCount":"3","noVisits":"0","visitDate":"'. $date.'","timeSlot":null},{"doctId":"10488","regId":"916607","rankId":"1","rankName":"上午","startTime":"11:00","endTime":"11:30","fee":"0","feeCode":"","regCount":"4","noVisits":"0","visitDate":"'. $date.'","timeSlot":null},{"doctId":"10488","regId":"916608","rankId":"1","rankName":"上午","startTime":"11:30","endTime":"12:00","fee":"0","feeCode":"","regCount":"5","noVisits":"0","visitDate":"'. $date.'","timeSlot":null},{"doctId":"10488","regId":"916609","rankId":"2","rankName":"下午","startTime":"14:00","endTime":"14:30","fee":"0","feeCode":"","regCount":"4","noVisits":"0","visitDate":"'. $date.'","timeSlot":null},{"doctId":"10488","regId":"916610","rankId":"2","rankName":"下午","startTime":"14:30","endTime":"15:00","fee":"0","feeCode":"","regCount":"4","noVisits":"0","visitDate":"'. $date.'","timeSlot":null},{"doctId":"10488","regId":"916611","rankId":"2","rankName":"下午","startTime":"15:00","endTime":"15:30","fee":"0","feeCode":"","regCount":"4","noVisits":"0","visitDate":"'. $date.'","timeSlot":null},{"doctId":"10488","regId":"916612","rankId":"2","rankName":"下午","startTime":"15:30","endTime":"16:00","fee":"0","feeCode":"","regCount":"4","noVisits":"0","visitDate":"'. $date.'","timeSlot":null},{"doctId":"10488","regId":"916613","rankId":"2","rankName":"下午","startTime":"16:00","endTime":"16:30","fee":"0","feeCode":"","regCount":"4","noVisits":"0","visitDate":"'. $date.'","timeSlot":null},{"doctId":"10488","regId":"916017","rankId":"2","rankName":"下午","startTime":"16:30","endTime":"17:00","fee":"0","feeCode":"","regCount":"5","noVisits":"0","visitDate":"'. $date.'","timeSlot":null}]},{"doctId":"10446","doctName":"陈秀纯","docTitle":"主治医师","depLocation":"","isksDoc":"1","doctotVisitInfoList":[{"doctId":"10446","regId":"916156","rankId":"1","rankName":"上午","startTime":"08:00","endTime":"08:30","fee":"0","feeCode":"","regCount":"2","noVisits":"1","visitDate":"'. $date.'","timeSlot":null},{"doctId":"10446","regId":"916157","rankId":"1","rankName":"上午","startTime":"08:30","endTime":"09:00","fee":"0","feeCode":"","regCount":"2","noVisits":"1","visitDate":"'. $date.'","timeSlot":null},{"doctId":"10446","regId":"916158","rankId":"1","rankName":"上午","startTime":"09:00","endTime":"09:30","fee":"0","feeCode":"","regCount":"3","noVisits":"2","visitDate":"'. $date.'","timeSlot":null},{"doctId":"10446","regId":"916160","rankId":"1","rankName":"上午","startTime":"10:00","endTime":"10:30","fee":"0","feeCode":"","regCount":"2","noVisits":"3","visitDate":"'. $date.'","timeSlot":null},{"doctId":"10446","regId":"916161","rankId":"1","rankName":"上午","startTime":"10:30","endTime":"11:00","fee":"0","feeCode
return $this;
}
private function mockConfirmRegister(array $params): self
{
$date = &$params['json']['date'];
$this->transfer_response = '{"status":200,"success":true,"msg":"成功","msgDev":null,"response":{"visitNo":"5358197","waitNum":"","treaID":"1-4","date":"'. $date. '","startTime":"16:30","endTime":"17:00","oppatNo":"288712335574","depLocation":"请到一楼儿童保健门诊","transNo":"","hzrs":"1"}}';
return $this;
}
/**
* mockGetRegisterRecordLists
* @param array $params
* @return self
*/
private function mockGetRegisterRecordLists(array $params): self
{
$this->transfer_response = '{"status":200,"success":true,"msg":"成功","msgDev":null,"response":[{"visitNo":"5348615","registrationType":"当天挂号","status":"0","waitNum":null,"treaId":"1-3","registrationDate":"2025-01-17","patientId":"2235574","patientName":"谭玉山","rankId":"2","rankName":"下午","startTime":"16:30","endTime":"17:00","oppatNo":"288712335574","depLocation":"请到一楼儿童保健门诊","transNum":null,"orderType":"","payFee":"0","payId":null,"depId":"12","depName":"儿保门诊","doctorId":"10977","doctorName":"杜丽丽","regSource":"自助机","timeSpam":"下午:16:30-17:00","serialNumber":null}]}';
return $this;
}
/**
* mockCheckRefundRegisterStatus
* @param array $params
* @return self
*/
private function mockCheckRefundRegisterStatus(array $params): self
{
$this->transfer_response = '{"status":200,"success":false,"msg":"退号取消检查不通过:当前挂号已过了挂号效期,不能重复退号","msgDev":null,"response":null}';
return $this;
}
/**
* mockRefundRegister
* @param array $params
* @return self
*/
private function mockRefundRegister(array $params): self
{
$this->transfer_response = '{"status":200,"success":true,"msg":"退号成功","msgDev":null,"response":null}';
return $this;
}
/**
* mockGetPendingLists
* @param array $params
* @return $this
*/
private function mockGetPendingLists(array $params)
{
$date_1 = date('Ymd');
$date_2 = date('Y-m-d');
$this->transfer_response = '{"status":200,"success":true,"msg":"成功","msgDev":null,"response":[{"idCardNo":"360825199901303214","visitType":"门诊","visitDate":"'.$date_1.'","strVisitDate":"2025年3月13日","outpatientDiagnosis":"健康查体,健康查体,健康查体,健康查体,健康查体,健康查体,健康查体","treatmentDepartment":"127","departmentName":"五官科","regId":"0","prescriptionId":"4-10259173","prescriptionAmount":"22.38","singleAmount":"12.96","doctorId":"10365","doctorName":"管理员","remarks":"","isexpense":"1","strExpense":"自费","nrescriptionNumber":"4-10259173","takeMedicine":null,"visitNumber":"3936931"},{"idCardNo":"360825199901303214","visitType":"门诊","visitDate":"'.$date_1.'","strVisitDate":"2025年3月13日","outpatientDiagnosis":"健康查体,健康查体,健康查体,健康查体,健康查体,健康查体,健康查体","treatmentDepartment":"127","departmentName":"五官科","regId":"0","prescriptionId":"1-17643828","prescriptionAmount":"22.38","singleAmount":".75","doctorId":"10365","doctorName":"管理员","remarks":"","isexpense":"1","strExpense":"自费","nrescriptionNumber":"1-17643828","takeMedicine":null,"visitNumber":"3936931"},{"idCardNo":"360825199901303214","visitType":"门诊","visitDate":"'.$date_1.'","strVisitDate":"2025年3月13日","outpatientDiagnosis":"健康查体,健康查体,健康查体,健康查体,健康查体,健康查体,健康查体","treatmentDepartment":"127","departmentName":"五官科","regId":"0","prescriptionId":"5-10259166","prescriptionAmount":"22.38","singleAmount":"8.1","doctorId":"10365","doctorName":"管理员","remarks":"","isexpense":"1","strExpense":"自费","nrescriptionNumber":"5-10259166","takeMedicine":null,"visitNumber":"3936931"},{"idCardNo":"360825199901303214","visitType":"门诊","visitDate":"'.$date_1.'","strVisitDate":"2025年3月13日","outpatientDiagnosis":"健康查体,健康查体,健康查体,健康查体,健康查体,健康查体,健康查体","treatmentDepartment":"127","departmentName":"五官科","regId":"0","prescriptionId":"2-10259174","prescriptionAmount":"22.38","singleAmount":".57","doctorId":"10365","doctorName":"管理员","remarks":"","isexpense":"1","strExpense":"自费","nrescriptionNumber":"2-10259174","takeMedicine":null,"visitNumber":"3936931"},{"idCardNo":"360825199901303214","visitType":"门诊","visitDate":"'.$date_1.'","strVisitDate":"2025年3月13日","outpatientDiagnosis":"健康查体,健康查体,健康查体,健康查体,健康查体,健康查体,健康查体","treatmentDepartment":"127","departmentName":"五官科","regId":"0","prescriptionId":"2-10259175","prescriptionAmount":"21.54","singleAmount":".54","doctorId":"10365","doctorName":"管理员","remarks":"","isexpense":"1","strExpense":"自费","nrescriptionNumber":"2-10259175","takeMedicine":null,"visitNumber":"3936932"},{"idCardNo":"360825199901303214","visitType":"门诊","visitDate":"'.$date_1.'","strVisitDate":"2025年3月13日","outpatientDiagnosis":"健康查体,健康查体,健康查体,健康查体,健康查体,健康查体,健康查体","treatmentDepartment":"127","departmentName":"五官科","regId":"0","prescriptionId":"2-10259176","prescriptionAmount":"21.54","singleAmount":"21","doctorId":"10365","doctorName":"管理员","remarks":"","isexpense":"1","strExpense":"自费","nrescriptionNumber":"2-10259176","takeMedicine":null,"visitNumber":"3936932"}]}';
return $this;
}
/**
* mockGetPendingDetails
* @param array $params
* @return $this
*/
private function mockGetPendingDetails(array $params)
{
$date = date('Y-m-d');
$this->transfer_response = '{"status":200,"success":true,"msg":"成功","msgDev":null,"response":[{"feeDate":"'.$date.'","itemNo":"11382601","projectNumber":"1388","entryName":"阿苯达唑片G","unitPrice":".75","quantity":"1","money":".75","remarks":null,"projectSpecifications":"0.2GX10片/盒","prescriptionNumber":"1-17643828","company":"片","prescriptionType":"西药","treatmentDepartment":"127","departmentName":"五官科","doctorNumber":"10365","doctorName":"管理员","ysybdm":"D440402003702","gjmlbm":"XP02CAA010A001020101884"},{"feeDate":"'.$date.'","itemNo":"25078374","projectNumber":"1674","entryName":"*RH血型鉴定","unitPrice":"4.86","quantity":"1","money":"4.86","remarks":null,"projectSpecifications":null,"prescriptionNumber":"4-10259173","company":"次","prescriptionType":"检验单","treatmentDepartment":"127","departmentName":"五官科","doctorNumber":"10365","doctorName":"管理员","ysybdm":"D440402003702","gjmlbm":"002600000040000-260000004"},{"feeDate":"'.$date.'","itemNo":"25078375","projectNumber":"1687","entryName":"*ABO血型鉴定","unitPrice":"8.1","quantity":"1","money":"8.1","remarks":null,"projectSpecifications":null,"prescriptionNumber":"4-10259173","company":"次","prescriptionType":"检验单","treatmentDepartment":"127","departmentName":"五官科","doctorNumber":"10365","doctorName":"管理员","ysybdm":"D440402003702","gjmlbm":"002600000020000-260000002"},{"feeDate":"'.$date.'","itemNo":"25078357","projectNumber":"6629","entryName":"普通透视(使用影像增强器或电视屏)","unitPrice":"8.1","quantity":"1","money":"8.1","remarks":null,"projectSpecifications":null,"prescriptionNumber":"5-10259166","company":"每部位","prescriptionType":"处置单","treatmentDepartment":"127","departmentName":"五官科","doctorNumber":"10365","doctorName":"管理员","ysybdm":"D440402003702","gjmlbm":"002101010010000-210101001-1"},{"feeDate":"'.$date.'","itemNo":"25078377","projectNumber":"7938","entryName":"EDTAK2(紫色)2ML,13*75MM一次性使用人体静脉血样采集容器","unitPrice":".28","quantity":"1","money":".28","remarks":null,"projectSpecifications":null,"prescriptionNumber":"2-10259174","company":"支","prescriptionType":"治疗单","treatmentDepartment":"127","departmentName":"五官科","doctorNumber":"10365","doctorName":"管理员","ysybdm":"D440402003702","gjmlbm":"C1423022030001008207"},{"feeDate":"'.$date.'","itemNo":"25078376","projectNumber":"7924","entryName":"一次性使用采血针XYII蝶翼型0.7","unitPrice":".29","quantity":"1","money":".29","remarks":null,"projectSpecifications":null,"prescriptionNumber":"2-10259174","company":"包","prescriptionType":"治疗单","treatmentDepartment":"127","departmentName":"五官科","doctorNumber":"10365","doctorName":"管理员","ysybdm":"D440402003702","gjmlbm":"C1603062150000200629"}]}';
return $this;
}
/**
* mockConfirmPayment
* @param array $params
* @return $this
*/
private function mockConfirmPayment(array $params)
{
$this->transfer_response = '{"status":200,"success":true,"msg":"自助缴费确认成功","msgDev":null,"response":{"remarks":"","treaId":"6497702","hosTranNo":"ZZ00000049","phyAddress":"门诊西药房","listRecipeRecResults":[{"itemNo":"1547","projectNumber":"1547","entryName":"0.9%氯化钠注射液G","unitPrice":"1","quantity":"1","money":"1","remarks":"","projectSpecifications":"100ML:0.9G/瓶","prescriptionNumber":"1-17488657"}]}}';
return $this;
}
/**
* mockGetPaidLists
* @param array $params
* @return self
*/
private function mockGetPaidLists(array $params): self
{
$this->transfer_response = '{"status":200,"success":true,"msg":"成功","msgDev":null,"response":[{"patientId":"2235574","patientName":"谭玉山","sex":"男","changeType":"自费","visitDate":"2025-02-07","payId":"6497702","rcpiNo":"ZZ00000049","costs":"1","expensePay":"1","isPrinted":"0"}]}';
return $this;
}
/**
* mockGetPaidDetails
* @param array $params
* @return self
*/
private function mockGetPaidDetails(array $params): self
{
$this->transfer_response = '{"status":200,"success":true,"msg":"成功","msgDev":null,"response":{"settlementDate":"2025-03-13","treaId":"6558450","hostranno":"ZZJ00000052","costs":"22.38","expensePay":"22.38","medicalPayment":"","phyAddress":"门诊西药房","depName":"五官科","doctName":"管理员","outpatientDiagnosis":"1.健康查体","chargeStaff":"20","outpatientDetail":[{"outpatientItemreList":[{"visitdate":"2025-03-13","classname":"西药费","itemname":"阿苯达唑片G","itemspec":"0.2GX10片/盒","units":"片","amount":"1","price":".75","costs":".75","ztmc":"","ycjl":".2","jldw":"G","yyts":"1","mrcs":"1","pcmc":"QD","ypbm":"XP02CAA010A001020101884","yjbm":"86901884000028","ybfl":"甲类","ygxm":"管理员"}]},{"outpatientItemreList":[{"visitdate":"2025-03-13","classname":"X光费","itemname":"普通透视(使用影像增强器或电视屏)","itemspec":null,"units":"每部位","amount":"1","price":"8.1","costs":"8.1","ztmc":"腹部透视","ycjl":null,"jldw":null,"yyts":null,"mrcs":null,"pcmc":null,"ypbm":"002101010010000-210101001-1","yjbm":null,"ybfl":"甲类","ygxm":"管理员"}]},{"outpatientItemreList":[{"visitdate":"2025-03-13","classname":"检验费","itemname":"*ABO血型鉴定","itemspec":null,"units":"次","amount":"1","price":"8.1","costs":"8.1","ztmc":"ABO+RH血型","ycjl":null,"jldw":null,"yyts":null,"mrcs":null,"pcmc":null,"ypbm":"002600000020000-260000002","yjbm":null,"ybfl":"甲类","ygxm":"管理员"}]},{"outpatientItemreList":[{"visitdate":"2025-03-13","classname":"检验费","itemname":"*RH血型鉴定","itemspec":null,"units":"次","amount":"1","price":"4.86","costs":"4.86","ztmc":"ABO+RH血型","ycjl":null,"jldw":null,"yyts":null,"mrcs":null,"pcmc":null,"ypbm":"002600000040000-260000004","yjbm":null,"ybfl":"甲类","ygxm":"管理员"}]},{"outpatientItemreList":[{"visitdate":"2025-03-13","classname":"医材费","itemname":"一次性使用采血针XYII蝶翼型0.7","itemspec":null,"units":"包","amount":"1","price":".29","costs":".29","ztmc":"","ycjl":null,"jldw":null,"yyts":null,"mrcs":null,"pcmc":null,"ypbm":"C1603062150000200629","yjbm":null,"ybfl":"甲类","ygxm":"管理员"}]},{"outpatientItemreList":[{"visitdate":"2025-03-13","classname":"医材费","itemname":"EDTAK2(紫色)2ML,13*75MM一次性使用人体静脉血样采集容器","itemspec":null,"units":"支","amount":"1","price":".28","costs":".28","ztmc":"","ycjl":null,"jldw":null,"yyts":null,"mrcs":null,"pcmc":null,"ypbm":"C1423022030001008207","yjbm":null,"ybfl":"甲类","ygxm":"管理员"}]}]}}';
return $this;
}
private function mockCreateElectronInvoice(array $params)
{
return [
'status' => 'success',
'message' => 'Electron invoice created successfully.',
'data' => $params
];
}
private function mockSendElectronInvoiceToHis(array $params)
{
return [
'status' => 'success',
'message' => 'Electron invoice sent successfully.',
'data' => $params
];
}
/**
* mockGetDictionaryLists
* @param array $params
* @return self
*/
private function mockGetDictionaryLists(array $params): self
{
$this->transfer_response = '{"status":200,"success":true,"msg":"成功","msgDev":null,"response":[{"typeId":"4","typeName":"草药费"},{"typeId":"20","typeName":"防疫药品"},{"typeId":"2","typeName":"西药费"},{"typeId":"3","typeName":"中成药"},{"typeId":"22","typeName":"B超"},{"typeId":"25","typeName":"CT检查"},{"typeId":"19","typeName":"X光费"},{"typeId":"1","typeName":"床位费"},{"typeId":"27","typeName":"高值耗材"},{"typeId":"12","typeName":"挂号费"},{"typeId":"11","typeName":"护理费"},{"typeId":"17","typeName":"急诊留观床位费"},{"typeId":"5","typeName":"检查费"},{"typeId":"9","typeName":"检验费"},{"typeId":"15","typeName":"救护车"},{"typeId":"26","typeName":"内镜检查"},{"typeId":"10","typeName":"其它"},{"typeId":"8","typeName":"手术费"},{"typeId":"13","typeName":"输血费"},{"typeId":"14","typeName":"输氧费"},{"typeId":"23","typeName":"碎石"},{"typeId":"21","typeName":"心电图"},{"typeId":"24","typeName":"一般诊疗费"},{"typeId":"16","typeName":"医材费"},{"typeId":"7","typeName":"诊查费"},{"typeId":"6","typeName":"治疗费"},{"typeId":"18","typeName":"自负床位费"}]}';
return $this;
}
/**
* mockGetChargeList
* @param array $params
* @return self
*/
private function mockGetChargeList(array $params): self
{
$this->transfer_response = '{"status":200,"success":true,"msg":"成功","msgDev":null,"response":[{"typeName":"草药费","costName":"莲子","unit":"G","costSpec":"10GX100小包/袋","manufacturer":"岭南中药饮片有","price":".08875","remark":""},{"typeName":"草药费","costName":"茯苓","unit":"G","costSpec":"10GX100小包/袋","manufacturer":"广州至信中药饮","price":".0925","remark":""}]}';
return $this;
}
}