Ejemplo n.º 1
0
    private function getZhuanTiListByHospital($hospitalId)
    {/*{{{*/
		$oldZhuanTiList = ZhuantiClient::getInstance()->getListByHospitalId($hospitalId, 10);
        $newZhuanTiList = PaperClient::getInstance()->queryPaperListByTag($hospitalId,'Hospital');
        return CombineZhuanTi::combineZhuanTiList($oldZhuanTiList,$newZhuanTiList);
    }/*}}}*/
Ejemplo n.º 2
0
	private function getThreadInfo4Orignal($zhuanTi, $response)
	{/*{{{*/
		$doctorList = array();
		$doctorIds = array();
		$zixunList = array();
		$topicList = array();
		$typeidList = array();
		$typeidList = ZhuantiClient::getInstance()->getZhuanTiOrderedTypeid($zhuanTi->id);
		foreach ($typeidList as $typeid)
		{
			if ($typeid->topicids && $typeid->flag == 0)
			{
				$topicIds = explode(',', $typeid->topicids);
				if (empty($topicIds[0]))
				continue;
				$topicList[$typeid->id] = DAL::get()->find('topic', $topicIds);
				foreach ($topicList[$typeid->id] as $key => $topic)
				{
					if ($topic->flag)
					{
						unset($topicList[$typeid->id][$key]);
					}
					if($topic->doctorId)
					{
						$doctorIds[] = $topic->doctorId;
					}
				}
				//取相关case,tag
				$queryContent = $typeid->getKey();
                $hasDiseaseWord = RelationSearchClient::getInstance()->hasDiseaseWord($queryContent);
                if($hasDiseaseWord)
                {
                    $infos = RelationSearchClient::getInstance()->search($queryContent, array('flow' => 10));
                    if(false == empty($infos))
                    {
                        $zixunList[$typeid->id] = array('case' => $infos['flow']);
                    }
                }
            }
		}
		if (empty($doctorIds) == false)
		{
			$doctorIds = array_unique($doctorIds);
			$doctorIds = array_filter($doctorIds);
			$doctorList = DAL::get()->find('doctor', $doctorIds);
		}
		$response->typeidList = $typeidList;
		$response->topicList = $topicList;
		$response->doctorList = $doctorList;
		$response->zixunList = $zixunList;
		return $doctorList;
	}/*}}}*/
Ejemplo n.º 3
0
		private function addModel($request, $response, $type)
		{
			$style = '';
			$relation = '';
			$diseaseIds = '';
			$doctorId = 0;
			$source = '';
			$zhuanTi = DAL::get()->find_by_zhuantiKey('zhuanti', $request->key);
            if($zhuanTi->isNull() == false)
            {
            	die('专题key不能重复,请重新填写');
            	exit;
            }
			ZhuantiClient::getInstance()->add($request->key, $request->getRequest('title', ''), $request->getRequest('desc', ""), $request->getUnSafeData('leadin', ''), 
			     $request->getRequest('imgId', '') ,$style, $relation, $diseaseIds, $doctorId, $source, array('type'=>$type, 'doctorIds'=>$request->doctorids));
		}
    public function zhuantiIndex($request, $response)
    {
    	$topicList = array();
    	$doctorList = array();
    	$relationList = array();
    	$doctorIds = array();
    	 
    	$zhuanTiKey = $request->key;
    	$zhuanTi = DAL::get()->find_by_condition('zhuanti', 'zhuantikey=?', array($zhuanTiKey));
    	//var_dump($zhuanTi);exit;
    	$response->zhuanTi = $zhuanTi;
    	//排序,对专题排序,通过typeid
        $typeidList = array();
        if (false == $zhuanTi->isNull())
    	    $typeidList = ZhuantiClient::getInstance()->getZhuanTiOrderedTypeid($zhuanTi->id);
    	
    	foreach($typeidList as $typeid){
    		if($typeid->topicids){
    			$tmpids = explode(',', $typeid->topicids);
    			if(empty($tmpids[0])){
    				continue;
    			}
    			$topicList[$typeid->id] = DAL::get()->find('topic', $tmpids);
    			foreach($topicList[$typeid->id] as $key=>$topic){
    				if($topic->flag){
    					unset($topicList[$typeid->id][key]);
    				}
    				$doctorIds[] = $topic->doctorId;
    			}
    			
    			if(empty($doctorIds)){
    				continue;
    			}
    			
    			//去掉重复值
    			$doctorIds = array_unique($doctorIds);
    			//删除 $doctorIds 中所有等值为 FALSE 的条目
    			$doctorIds = array_filter($doctorIds);
    			$doctorList = DAL::get()->find('doctor', $doctorIds);
    		}
    	}

        $relationList = array();
    	if (is_string($zhuanTi->relation))
    	{
    		$relationIds = explode(',', $zhuanTi->relation);
    		$relationList = DAL::get()->find('zhuanti', (array)$relationIds);	
    	}
    	
    	$response->relationList = $relationList;
    	$response->typeidList = $typeidList;
    	$response->topicList = $topicList;
    	$response->doctorList = $doctorList;
    }