public static function getsymptom($params) { $symptomObj = new ModelSymptom(); $symptomContentObj = new ModelSymptomContent(); $pinyin_initial = $params['pinyin_initial']; $condition = ["{{%symptom}}.pinyin_initial" => $pinyin_initial]; $info = $symptomObj->getSymptomByCondition($condition, [], 1, 0); $res = $info[0]; if (empty($info)) { //如果不存在抛出404 return self::result(404, '找不到数据'); } //处理缩略图 $thumb = empty($res['thumbnail']) ? '/patients/styles/images/dise_02.jpg' : \librarys\helpers\utils\Url::getuploadfileUrl(2, $res['thumbnail']); $res['thumbnail'] = $thumb; //处理基本信息 if (isset($params['fileds'])) { if (strpos($params['fileds'], ',') === false) { $column = $params['fileds']; } else { $column = explode(',', $params['fileds']); } $tmpCont = $symptomContentObj->getSymptomContentById($column, $res['id']); if (is_array($column)) { //如果是多个字段 foreach ($column as $v) { $res[$v] = str_replace("\n", "<br>", $tmpCont[$v]); } } else { $res['content'] = str_replace("\n", "<br>", $tmpCont[$column]); } } //处理相关文章 if (isset($params['relarticles']) && $params['relarticles'] == 1) { $symptomid = $res['id']; $self = new self(); $arts = $self->getRightInfo($symptomid, ['disease', 'articles']); foreach ($arts as $k => $v) { $res[$k] = $v; } } return self::result(200, '获取数据成功', $res); }
/** * 症状图集 * lc 2016-4-1 * @return string 视图 */ public function actionSymimages() { $view = "symptom_images"; $dname = $this->helpGparam('dname', ""); $dname = trim($dname, '/'); $domudle = $this->helpGparam('dmodule', 'tuji'); $domudle = trim($domudle, '/'); $pageStr = trim(trim($domudle, 'tuji'), '_'); $page = 1; if (!empty($pageStr)) { $page = intval($pageStr); } $condition = ["{{%symptom}}.pinyin_initial" => $dname]; $disease = $this->symptom->getSymptomByCondition($condition, [], 1, 0); if (!isset($disease) || empty($disease)) { throw new NotFoundHttpException("当前访问的页面不存在!"); } $disease = $disease[0]; if (!empty($disease)) { $symptomContent = SymptomContent::find()->select('examine')->where(['id' => $disease['id']])->asArray(true)->one(); if (isset($symptomContent) && !empty($symptomContent)) { $disease = array_merge($disease, $symptomContent); } } //图集信息 $icondition = ['flag' => 2, 'relid' => $disease['id']]; $size = 1; $paging = $this->helpPaging('pager')->setSize($size)->setPageSetSize(9)->setUrlFormat('/' . $dname . '/tuji_%d' . '/')->setCurrentClass('cupat'); $offset = $paging->getOffset(); $images = Image::search($icondition, $offset, $size, 'id DESC', true); $imagesList = $images['list']; $paging->setTotal($images['total']); //获取相关疾病文章 $relArtsAndAsks = CacheHelper::getCache('frontend_symptom_detail_xgwz', ['title' => $disease['name'], 'id' => $disease['id'], 'diseaseid' => $disease['id'], 'pinyin' => $disease['pinyin']]); $relArticles = $relArtsAndAsks['relArticles']; //相关问答 $asks = $relArtsAndAsks['relAsks']; //大家还在找部分 $stillFind = $this->getStillFindDatas($disease['name']); //右侧:最新文章 $lastestArticles = $this->getLatestArticles(); $return_img_list = []; foreach ($imagesList as $k => $v) { $v['url'] = \librarys\helpers\utils\Url::getuploadfileUrl(2, $v['name']); $return_img_list[] = $v; } $params = ['disease' => $disease, 'imagesList' => $return_img_list, 'relArticles' => $relArticles, 'paging' => $paging, 'asks' => $asks, 'lastestArticles' => $lastestArticles, 'stillFind' => $stillFind]; return $this->render($view, $params); }
/** * 删除症状 * @param type $id * @return type */ public function actionDelete($id) { $flag[] = Symptom::deleteAll('id = :id', ['id' => $id]); $flag[] = SymptomContent::deleteAll('id = :id', ['id' => $id]); $flag[] = $this->relate->deleteRelateDisease($id); $flag[] = $this->relate->deleteRelateSymptom($id); $flag[] = $this->relate->deleteRelatePart($id); $flag[] = $this->relate->delImage($id); $num = count($flag); //当前删除记录操作的总个数 $n = 0; foreach ($flag as $v) { //循环出所有的值,值分为0 1 ,成功是1,失败是0 $n = $v + $n; } if ($n < $num) { //如果结果小于总个数,说明有失败 if (!$flag) { Yii::$app->getSession()->setFlash('error', 'ID:' . $id . ' 删除失败!'); return $this->redirect(Url::toRoute('symptom/index')); } } Yii::$app->getSession()->setFlash('success', 'ID:' . $id . ' 成功删除!'); return $this->redirect(Url::toRoute('symptom/index')); }