This commit is contained in:
wucongxing 2023-10-12 13:06:45 +08:00
parent abb2955f34
commit a646e5f464

View File

@ -21,6 +21,129 @@ use Hyperf\DbConnection\Db;
class PatientDoctorService extends BaseService class PatientDoctorService extends BaseService
{ {
// /**
// * 获取问诊医生列表
// * 专家问诊-公益问诊共用
// * @return array
// */
// public function getInquiryDoctorList(): array
// {
// $expertise_id = $this->request->input('expertise_id');
// $province_id = $this->request->input('province_id');
// $city_id = $this->request->input('city_id');
// $sort_order = $this->request->input('sort_order',1);
// $keyword = $this->request->input('keyword',"");
// $is_search_welfare_reception = $this->request->input('is_search_welfare_reception',0);
// $page = $this->request->input('page',1);
// $per_page = $this->request->input('per_page',10);
//
// // 组合条件
// $hospital_params = array();// 医院搜索
// $doctor_params = array();// 医生搜索
// $doctor_expertise_params = array();// 医生专长搜索
//
// // 省市区
// if (!empty($province_id)) {
// if (empty($city_id)) {
// // 省份存在时需和城市在一块
// return fail(HttpEnumCode::CLIENT_HTTP_ERROR);
// }
// $hospital_params[] = ['province_id', '=', $province_id];
// $hospital_params[] = ['city_id', '=', $city_id];
// }
//
// // 医生专长
// if (!empty($expertise_id)) {
// $doctor_expertise_params['expertise_id'] = $expertise_id;
// }
//
// // 固定医生查询条件
// $doctor_params['status'] = 1; // 状态0:禁用 1:正常 2:删除)
//
// $doctor_params["iden_auth_status"] = 1;// 身份认证状态0:未认证 1:认证通过 2:审核中 3:认证失败)
// $doctor_params["is_bind_bank"] = 1;// 是否已绑定结算银行卡0:否 1:是)
//
//// if (!empty($is_search_welfare_reception)){
//// $doctor_params["is_img_welfare_reception"] = $is_search_welfare_reception;// 是否参加公益图文问诊0:否 1:是)
//// }
//
// $fields = [
// "doctor_id",
// "user_id",
// "user_name",
// "multi_point_status",
// "is_bind_bank",
// "is_recommend",
// "avatar",
// "doctor_title",
// "department_custom_id",
// "department_custom_name",
// "hospital_id",
// "served_patients_num",
// "praise_rate",
// "avg_response_time",
// "number_of_fans",
// "is_online",
// "be_good_at",
// ];
//
// $user_doctors = UserDoctor::getInquiryDoctorPage($keyword,$hospital_params, $doctor_params,$doctor_expertise_params, $sort_order, $fields,$page,$per_page);
//
// if (!empty($user_doctors['data'])) {
// foreach ($user_doctors['data'] as &$user_doctor) {
// $user_doctor['doctor_title_name'] = empty($user_doctor['doctor_title']) ? "" : DoctorTitleCode::getMessage($user_doctor['doctor_title']);
//
// // 处理医生专长
// if (!empty($user_doctor['DoctorExpertise'])) {
// foreach ($user_doctor['DoctorExpertise'] as &$data) {
// if (!empty($data['DiseaseClassExpertise'])) {
// $data['expertise_name'] = $data['DiseaseClassExpertise']['expertise_name'];
// }
// unset($data['DiseaseClassExpertise']);
// }
// }
//
// // 处理问诊价格
// $user_doctor['price'] = 0;
// $user_doctor['free_clinic_price'] = 0;
// if (!empty($user_doctor['DoctorInquiryConfig'])) {
// foreach ($user_doctor['DoctorInquiryConfig'] as $doctor_inquiry_config) {
// if ($doctor_inquiry_config['inquiry_mode'] == 1) {
// if ($doctor_inquiry_config['inquiry_type'] == 1) {
// // 专家
// $user_doctor['price'] = $doctor_inquiry_config['inquiry_price'] ?? 0;
// }
// if ($doctor_inquiry_config['inquiry_type'] == 3) {
// // 公益
// $user_doctor['free_clinic_price'] = $doctor_inquiry_config['inquiry_price'];
// }
// }
// }
// }
//
// // 好评率-超过5个已结束的订单后展示
// $user_doctor['praise_rate'] = floor($user_doctor['praise_rate'] * 0.05 * 100) / 100;
// // 响应时间-超过5个已结束的订单后展示
// $user_doctor['avg_response_time'] = (float)floor($user_doctor['avg_response_time'] * 10) / 10;
//
// // 获取医生订单数
// $params = array();
// $params['doctor_id'] = $user_doctor['doctor_id'];
// $params['inquiry_status'] = 6; // 已结束
// $inquiry_order_count = OrderInquiry::getCount($params);
// if (empty($inquiry_order_count) || $inquiry_order_count == 0) {
// $user_doctor['is_display_score'] = false;
// } else {
// $user_doctor['is_display_score'] = true;
// }
//
// // 头像
// $user_doctor['avatar'] = addAliyunOssWebsite($user_doctor['avatar']);
// }
// }
// return success($user_doctors);
// }
/** /**
* 获取问诊医生列表 * 获取问诊医生列表
* 专家问诊-公益问诊共用 * 专家问诊-公益问诊共用
@ -33,7 +156,7 @@ class PatientDoctorService extends BaseService
$city_id = $this->request->input('city_id'); $city_id = $this->request->input('city_id');
$sort_order = $this->request->input('sort_order',1); $sort_order = $this->request->input('sort_order',1);
$keyword = $this->request->input('keyword',""); $keyword = $this->request->input('keyword',"");
$is_search_welfare_reception = $this->request->input('is_search_welfare_reception',0); $is_search_welfare_reception = $this->request->input('is_search_welfare_reception',0); // 是否参加公益图文问诊0:否 1:是)
$page = $this->request->input('page',1); $page = $this->request->input('page',1);
$per_page = $this->request->input('per_page',10); $per_page = $this->request->input('per_page',10);
@ -63,9 +186,9 @@ class PatientDoctorService extends BaseService
$doctor_params["iden_auth_status"] = 1;// 身份认证状态0:未认证 1:认证通过 2:审核中 3:认证失败) $doctor_params["iden_auth_status"] = 1;// 身份认证状态0:未认证 1:认证通过 2:审核中 3:认证失败)
$doctor_params["is_bind_bank"] = 1;// 是否已绑定结算银行卡0:否 1:是) $doctor_params["is_bind_bank"] = 1;// 是否已绑定结算银行卡0:否 1:是)
// if (!empty($is_search_welfare_reception)){ if (!empty($is_search_welfare_reception)){
// $doctor_params["is_img_welfare_reception"] = $is_search_welfare_reception;// 是否参加公益图文问诊0:否 1:是) $inquiry_type = 3;
// } }
$fields = [ $fields = [
"doctor_id", "doctor_id",
@ -87,7 +210,7 @@ class PatientDoctorService extends BaseService
"be_good_at", "be_good_at",
]; ];
$user_doctors = UserDoctor::getInquiryDoctorPage($keyword,$hospital_params, $doctor_params,$doctor_expertise_params, $sort_order, $fields,$page,$per_page); $user_doctors = UserDoctor::getInquiryDoctorPage($keyword,$hospital_params, $doctor_params,$doctor_expertise_params,$inquiry_type, $sort_order, $fields,$page,$per_page);
if (!empty($user_doctors['data'])) { if (!empty($user_doctors['data'])) {
foreach ($user_doctors['data'] as &$user_doctor) { foreach ($user_doctors['data'] as &$user_doctor) {
@ -227,6 +350,9 @@ class PatientDoctorService extends BaseService
$params['doctor_id'] = $doctor_id; $params['doctor_id'] = $doctor_id;
$result['follow'] = PatientFollow::getExists($params); $result['follow'] = PatientFollow::getExists($params);
// 获取医生问诊配置-问诊购药
$user_doctor['multi_point_enable'] = 0;
// 获取问诊价格 // 获取问诊价格
// 专家-公益 // 专家-公益
$params = array(); $params = array();
@ -270,6 +396,9 @@ class PatientDoctorService extends BaseService
$value['times_number'] = $system_inquiry_config['times_number']; $value['times_number'] = $system_inquiry_config['times_number'];
$value['duration'] = $system_inquiry_config['duration']; $value['duration'] = $system_inquiry_config['duration'];
if ($value['is_enable'] == 1 && $value['inquiry_type'] == 4 && $value['inquiry_mode'] == 1){
$user_doctor['multi_point_enable'] = 1;
}
unset($system_inquiry_config); unset($system_inquiry_config);
} }
$result['doctor_inquiry_config'] = $doctor_inquiry_config; $result['doctor_inquiry_config'] = $doctor_inquiry_config;