修改患者填写缺少字段至医生,同步修改问诊病例
This commit is contained in:
parent
e609e05ca6
commit
11bf031bd4
@ -16,6 +16,7 @@ use App\Model\PatientFamilyHealth;
|
|||||||
use App\Model\PatientFamilyPersonal;
|
use App\Model\PatientFamilyPersonal;
|
||||||
use App\Model\User;
|
use App\Model\User;
|
||||||
use App\Model\UserDoctor;
|
use App\Model\UserDoctor;
|
||||||
|
use Hyperf\DbConnection\Db;
|
||||||
use Hyperf\Redis\Redis;
|
use Hyperf\Redis\Redis;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -473,6 +474,16 @@ class PatientCaseService extends BaseService
|
|||||||
return fail();
|
return fail();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 获取病例信息
|
||||||
|
$params = array();
|
||||||
|
$params['order_inquiry_id'] = $order_inquiry_id;
|
||||||
|
$order_inquiry_case = OrderInquiryCase::getOne($params);
|
||||||
|
if (empty($order_inquiry_case)) {
|
||||||
|
return fail();
|
||||||
|
}
|
||||||
|
|
||||||
|
$order_inquiry_case = $order_inquiry_case->toArray();
|
||||||
|
|
||||||
// 初始字段定义
|
// 初始字段定义
|
||||||
$fields = [
|
$fields = [
|
||||||
"relation", // 与患者关系(1:本人 2:父母 3:爱人 4:子女 5:亲戚 6:其他 )
|
"relation", // 与患者关系(1:本人 2:父母 3:爱人 4:子女 5:亲戚 6:其他 )
|
||||||
@ -505,6 +516,8 @@ class PatientCaseService extends BaseService
|
|||||||
"chemical_compound_describe", // 化合物描述
|
"chemical_compound_describe", // 化合物描述
|
||||||
];
|
];
|
||||||
|
|
||||||
|
Db::beginTransaction();
|
||||||
|
|
||||||
try {
|
try {
|
||||||
$redis = $this->container->get(Redis::class);
|
$redis = $this->container->get(Redis::class);
|
||||||
$redis_key = "patient_family_inquiry_case_unfilled_fields_" . $order_inquiry_id;
|
$redis_key = "patient_family_inquiry_case_unfilled_fields_" . $order_inquiry_id;
|
||||||
@ -515,19 +528,46 @@ class PatientCaseService extends BaseService
|
|||||||
|
|
||||||
// 患者病例字段
|
// 患者病例字段
|
||||||
$case_fields = [];
|
$case_fields = [];
|
||||||
|
|
||||||
|
// 修改字段
|
||||||
|
$order_inquiry_case_data = [];
|
||||||
|
|
||||||
foreach ($request_params['fields'] as $key => $value){
|
foreach ($request_params['fields'] as $key => $value){
|
||||||
if (!in_array($key,$fields)){
|
if (!in_array($key,$fields)){
|
||||||
if ($key != "order_inquiry_id"){
|
if ($key != "order_inquiry_id"){
|
||||||
|
Db::rollBack();
|
||||||
return fail(HttpEnumCode::HTTP_ERROR,"存在非法数据");
|
return fail(HttpEnumCode::HTTP_ERROR,"存在非法数据");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ($value === ""){
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 判断修改数据
|
||||||
|
if (array_key_exists($key,$order_inquiry_case)){
|
||||||
|
if ($order_inquiry_case[$key] == null){
|
||||||
|
$order_inquiry_case_data[$key] = $value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
$case_fields[$key] = $value;
|
$case_fields[$key] = $value;
|
||||||
}
|
}
|
||||||
|
|
||||||
$case_fields = json_encode($case_fields,JSON_UNESCAPED_UNICODE);
|
// 存储至问诊病例中
|
||||||
|
if (!empty($order_inquiry_case_data)){
|
||||||
|
$params = array();
|
||||||
|
$params['inquiry_case_id'] = $order_inquiry_case['inquiry_case_id'];
|
||||||
|
$res = OrderInquiryCase::edit($params,$order_inquiry_case_data);
|
||||||
|
if (!$res){
|
||||||
|
Db::rollBack();
|
||||||
|
return fail();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// 发送im消息
|
// 发送im消息
|
||||||
|
$case_fields = json_encode($case_fields,JSON_UNESCAPED_UNICODE);
|
||||||
|
|
||||||
$imService = new ImService();
|
$imService = new ImService();
|
||||||
$imService->CaseUnfilledFieldsToDoctor($order_inquiry,$doctor['user_id'],$user_info['user_id'],$case_fields);
|
$imService->CaseUnfilledFieldsToDoctor($order_inquiry,$doctor['user_id'],$user_info['user_id'],$case_fields);
|
||||||
|
|
||||||
@ -545,7 +585,10 @@ class PatientCaseService extends BaseService
|
|||||||
}else{
|
}else{
|
||||||
$redis->del($redis_key);
|
$redis->del($redis_key);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Db::commit();
|
||||||
}catch (\Throwable $e){
|
}catch (\Throwable $e){
|
||||||
|
Db::rollBack();
|
||||||
return fail();
|
return fail();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user