setDescription('修改医生问诊配置'); } public function handle() { $this->line('开始'); // 获取医生信息 $params = array(); $user_doctors = UserDoctor::getList($params); if (empty($user_doctors)) { $this->line('结束,无医生需处理'); return; } // 获取系统问诊配置 $params = array(); $params['inquiry_type'] = 4; $params['inquiry_mode'] = 1; $system_inquiry_config = SystemInquiryConfig::getOne($params); if (empty($system_inquiry_config)) { $this->line('结束,系统问诊配置获取失败'); return; } foreach ($user_doctors as $user_doctor){ Db::beginTransaction(); try { // 是否参加专家图文接诊 if ($user_doctor['is_img_expert_reception'] == 1){ $params = array(); $params['doctor_id'] = $user_doctor['doctor_id']; $params['inquiry_type'] = 1; $params['inquiry_mode'] = 1; $data = array(); $data['is_enable'] = 1; DoctorInquiryConfig::editInquiryConfig($params,$data); } // 是否参加快速图文接诊 if ($user_doctor['is_img_quick_reception'] == 1){ $params = array(); $params['doctor_id'] = $user_doctor['doctor_id']; $params['inquiry_type'] = 2; $params['inquiry_mode'] = 1; $data = array(); $data['is_enable'] = 1; DoctorInquiryConfig::editInquiryConfig($params,$data); } // 是否参加公益图文问诊 if ($user_doctor['is_img_welfare_reception'] == 1){ $params = array(); $params['doctor_id'] = $user_doctor['doctor_id']; $params['inquiry_type'] = 3; $params['inquiry_mode'] = 1; $data = array(); $data['is_enable'] = 1; DoctorInquiryConfig::editInquiryConfig($params,$data); } // 医生多点执业认证状态 if ($user_doctor['multi_point_status'] == 1){ // 查询是否已设置多点执业认证状态 $params = array(); $params['doctor_id'] = $user_doctor['doctor_id']; $params['inquiry_type'] = 4; $params['inquiry_mode'] = 1; $doctor_inquiry_config = DoctorInquiryConfig::getOne($params); if (empty($doctor_inquiry_config)) { $data = array(); $data['doctor_id'] = $user_doctor['doctor_id']; $data['inquiry_type'] = 4; $data['inquiry_mode'] = 1; $data['is_enable'] = 1; $data['work_num_day'] = $system_inquiry_config["max_work_num_day"]; $data['inquiry_price'] = $system_inquiry_config["inquiry_price"]; $doctorInquiryConfig = DoctorInquiryConfig::addInquiryConfig($data); if (empty($doctorInquiryConfig)){ Db::rollBack(); $this->line('失败:问诊购药处理失败'); return; } } } Db::commit(); }catch (\Throwable $e){ Db::rollBack(); // 记录失败次数 $this->line("失败:" . $e->getMessage()); } } $this->line('结束'); } }