/** * 找医院 * @return type */ public function actionHospital() { $this->setLayout('disease_without_bottom'); $data = []; $obj_disease = new Disease(); $temp = $this->params; $disease = $obj_disease->getDiseasesByPinyin($temp['dname']); $data['disease'] = $disease; return $this->render('hospital', $data); }
/** * 根据疾病的拼音简写,得到疾病的信息 * @author gaoqing * @date 2016-09-08 * @param String $pyInitial 疾病的拼音简写 * @param boolean $isRelDis 是否获取其 相关疾病 * @param boolean $isRelSym 是否获取其 典型症状 * @param boolean $isRelPart 是否获取其相关 部位 * @param boolean $isRelDep 是否获取其 就诊科室 * @return array 疾病的信息集 */ public static function getDiseasesByPinyin($pyInitial, $isRelDis = false, $isRelSym = false, $isRelPart = false, $isRelDep = false) { $disease = []; //1、得到疾病的疾病信息 $odisease = new Disease(); $disease = $odisease->getDiseasesByPinyin($pyInitial); if (self::isNotNull($disease)) { $disease['treat_method'] = self::explodeStr($disease['treatment']); $disease = self::replace($disease, '<br/>'); $disease['chuanranxing'] = '无'; if ($disease['chuanranflag'] == 1) { $disease['chuanranxing'] = '有'; } //2、获取科室信息 if ($isRelDep) { $treatDepNames = self::explodeStr($disease['treat_department']); $odepartment = new Department(); $disease['department'] = $odepartment->getDepsByName($treatDepNames); $disease['medicine'] = self::explodeStr($disease['medicine']); } //3、获取典型症状信息 if ($isRelSym) { $typicalSymptomNames = self::explodeStr($disease['typical_symptom']); $osymptom = new Symptom(); $disease['tsymptom'] = $osymptom->getSymptomsByName($typicalSymptomNames); } //4、得到疾病对应的所有部位 if ($isRelPart) { $disease['part'] = Relate::getPartsByDisid($disease['id']); } //5、得到相关疾病 if ($isRelDis) { $relDiseaseNames = self::explodeStr($disease['rel_disease']); $values = Disease::search(['name' => $relDiseaseNames]); if (self::isNotNull($values)) { $disease['reldis'] = $values['list']; } } } return $disease; }