增加是否可处方
This commit is contained in:
@@ -20,7 +20,7 @@ class DoctorInquiryService extends BaseService
|
||||
* 获取医生问诊配置
|
||||
* @return array
|
||||
*/
|
||||
public function getInquiryConfig(): array
|
||||
public function getDoctorInquiryConfig(): array
|
||||
{
|
||||
$user_info = $this->request->getAttribute("userInfo") ?? [];
|
||||
|
||||
@@ -138,7 +138,7 @@ class DoctorInquiryService extends BaseService
|
||||
* 医生问诊开关
|
||||
* @return array
|
||||
*/
|
||||
public function putInquiryOpen(): array
|
||||
public function putDoctorInquiryOpen(): array
|
||||
{
|
||||
$user_info = $this->request->getAttribute("userInfo") ?? [];
|
||||
|
||||
@@ -226,7 +226,7 @@ class DoctorInquiryService extends BaseService
|
||||
* 修改医生问诊配置
|
||||
* @return array
|
||||
*/
|
||||
public function putInquiryConfig(): array
|
||||
public function putDoctorInquiryConfig(): array
|
||||
{
|
||||
$user_info = $this->request->getAttribute("userInfo") ?? [];
|
||||
|
||||
|
||||
@@ -1051,6 +1051,8 @@ class InquiryService extends BaseService
|
||||
/**
|
||||
* 结束问诊
|
||||
* @return array
|
||||
* @throws ContainerExceptionInterface
|
||||
* @throws NotFoundExceptionInterface
|
||||
*/
|
||||
public function putFinishInquiry(): array
|
||||
{
|
||||
@@ -1664,7 +1666,7 @@ class InquiryService extends BaseService
|
||||
* @throws ContainerExceptionInterface
|
||||
* @throws NotFoundExceptionInterface
|
||||
*/
|
||||
public function inquiryRefund(string $order_inquiry_id, string $refund_reason)
|
||||
public function inquiryRefund(string $order_inquiry_id, string $refund_reason): void
|
||||
{
|
||||
// 获取订单数据
|
||||
$params = array();
|
||||
|
||||
@@ -110,17 +110,8 @@ class PatientDoctorService extends BaseService
|
||||
}
|
||||
|
||||
// 处理可处方字段
|
||||
$user_doctor['multi_point_enable'] = 0;
|
||||
|
||||
$params = array();
|
||||
$params['doctor_id'] = $user_doctor["doctor_id"];
|
||||
$params['inquiry_type'] = 4;
|
||||
$params['inquiry_mode'] = 1;
|
||||
$params['is_enable'] = 1;
|
||||
$result = DoctorInquiryConfig::getOne($params);
|
||||
if (!empty($result)){
|
||||
$user_doctor['multi_point_enable'] = 1;
|
||||
}
|
||||
$userDoctorService = new UserDoctorService();
|
||||
$user_doctor['multi_point_enable'] = $userDoctorService->getDoctorMultiPointEnable($user_doctor["doctor_id"]);
|
||||
|
||||
// 好评率-超过5个已结束的订单后展示
|
||||
$user_doctor['praise_rate'] = floor($user_doctor['praise_rate'] * 0.05 * 100) / 100;
|
||||
@@ -453,6 +444,7 @@ class PatientDoctorService extends BaseService
|
||||
return success();
|
||||
}
|
||||
|
||||
$userDoctorService = new UserDoctorService();
|
||||
foreach ($recommend_doctors as $recommend_doctor) {
|
||||
$data = array();
|
||||
$data['doctor_id'] = $recommend_doctor['doctor_id'];
|
||||
@@ -472,12 +464,9 @@ class PatientDoctorService extends BaseService
|
||||
$data['is_online'] = $recommend_doctor['user']['is_online'];
|
||||
}
|
||||
|
||||
// 是否开启问诊购药
|
||||
foreach ($recommend_doctor['DoctorInquiryConfig'] as $doctor_inquiry_config) {
|
||||
if ($doctor_inquiry_config['inquiry_mode'] == 1){
|
||||
if ($doctor_inquiry_config['inquiry_type'] == 4 && $doctor_inquiry_config['is_enable'] == 1) {
|
||||
$data['multi_point_enable'] = 1; // 是否开启问诊购药
|
||||
}
|
||||
}
|
||||
$data['multi_point_enable'] = $userDoctorService->getDoctorMultiPointEnable("",$doctor_inquiry_config);
|
||||
}
|
||||
|
||||
$data['doctor_inquiry_config'] = $recommend_doctor['DoctorInquiryConfig'];
|
||||
|
||||
@@ -2216,6 +2216,10 @@ class UserDoctorService extends BaseService
|
||||
$result['is_online'] = $user['is_online'];
|
||||
}
|
||||
|
||||
// 处理可处方字段
|
||||
$userDoctorService = new UserDoctorService();
|
||||
$result['multi_point_enable'] = $userDoctorService->getDoctorMultiPointEnable($doctor_id);
|
||||
|
||||
return success($result);
|
||||
}
|
||||
|
||||
@@ -2295,8 +2299,8 @@ class UserDoctorService extends BaseService
|
||||
return fail();
|
||||
}
|
||||
|
||||
$value['times_number'] = $doctor_inquiry_config_service['service_period']; // 服务回合数(0表示不限次)
|
||||
$value['duration'] = $doctor_inquiry_config_service['duration']; // 服务周期(天,不存在0的情况)
|
||||
$value['times_number'] = $doctor_inquiry_config_service['service_rounds']; // 服务回合数(0表示不限次)
|
||||
$value['duration'] = $doctor_inquiry_config_service['service_period']; // 服务周期(天,不存在0的情况)
|
||||
$value['service_content'] = $doctor_inquiry_config_service['service_content'];// 服务内容
|
||||
$value['service_process'] = $doctor_inquiry_config_service['service_process'];// 服务流程
|
||||
|
||||
@@ -2711,4 +2715,35 @@ class UserDoctorService extends BaseService
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 获取医生是否可处方图标展示状态
|
||||
* @param string $doctor_id 医生id
|
||||
* @param array|object|null $doctor_inquiry_config 医生问诊配置
|
||||
* @return int
|
||||
*/
|
||||
public function getDoctorMultiPointEnable(string $doctor_id = "",array|object $doctor_inquiry_config = null): int
|
||||
{
|
||||
$multi_point_enable = 0; // 是否开启问诊购药
|
||||
if (!empty($doctor_inquiry_config)){
|
||||
if ($doctor_inquiry_config['inquiry_type'] == 4 && $doctor_inquiry_config['inquiry_mode'] == 1 && $doctor_inquiry_config['is_enable'] == 1){
|
||||
$multi_point_enable = 1;
|
||||
}
|
||||
} else {
|
||||
if (empty($doctor_id)){
|
||||
return $multi_point_enable;
|
||||
}
|
||||
|
||||
$params = array();
|
||||
$params['doctor_id'] = $doctor_id;
|
||||
$params['inquiry_type'] = 4;
|
||||
$params['inquiry_mode'] = 1;
|
||||
$params['is_enable'] = 1;
|
||||
$result = DoctorInquiryConfig::getOne($params);
|
||||
if (!empty($result)){
|
||||
$multi_point_enable = 1; // 是否开启问诊购药
|
||||
}
|
||||
}
|
||||
|
||||
return $multi_point_enable;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user