public function ajaxGetHealthDiaryList($request, $response)
 {/*{{{*/
     $response->lastDiaryList = HealthDiaryClient::getInstance()->getLastDiarys($request->userid, $request->fetchnum);
     $user = DAL::get()->find('User', $request->userid);
     $response->followupOwner = $user->getFollowupPatientSignin();
 }/*}}}*/
 private function modifyNfsSubTaskLogPostImp($nfsSubTaskLog, $params)
 {
     /*{{{*/
     if (isset($params['healthDiary']) && $params['healthDiary']) {
         $nfsSubTask = $nfsSubTaskLog->nfsSubTask;
         $typeDesc = NfsSubTask::getTypeDefines();
         $logTypeDesc = NfsSubTaskLog::getTypeDefines();
         $str = '';
         $str .= '子任务名称:' . $typeDesc[$nfsSubTask->type] . "\n";
         $str .= '子任务描述:' . $nfsSubTask->content . "\n";
         $str .= '子任务执行内容:' . $logTypeDesc[$params['type']] . "\n";
         $str .= '子任务log备注:' . $params['content'] . "\n";
         $str .= '子任务log执行时间:' . $params['theTime'] . "\n";
         HealthDiaryClient::getInstance()->updateDiary($nfsSubTaskLog->healthDiary->id, $str);
     }
     NfsSubTaskClient::getInstance()->modifyNfsSubTaskLog($nfsSubTaskLog->id, $params);
 }
 public function workSheet($request, $response)
 {
     /*{{{*/
     $auditor = $this->auditor;
     $response->auditor = $auditor;
     $followupAuditor = DAL::get()->find_by_auditorid('FollowupAuditor', $auditor->id);
     if ($followupAuditor->isNull()) {
         throw new BizException('你没有权限访问');
     }
     $workSheetId = $request->worksheetid;
     $workSheet = DAL::get()->find('WorkSheet', $workSheetId);
     $response->workSheet = $workSheet;
     if ($workSheet->isNull()) {
         echo '没有找到该工作单!';
         return parent::DIRECT_OUTPUT;
     }
     $user = DAL::get()->find('User', $workSheet->customer->userId);
     $response->user = $user;
     if (WorkSheet::SUBMIT_YES == $workSheet->submit) {
         $response->setRedirect($response->router->urlfor('followup/getworksheetcontent', array('worksheetId' => $workSheet->id)));
     }
     //找到患者基本信息
     $owner = $user->getFollowupPatientSignin();
     DBC::requireTrue(empty($patientsignin), '未找到指定signinId的患者');
     $response->owner = $owner;
     // 新的血压、心率
     $xueyaxinlvhealthRecordProblemCategory = HealthRecordClient::getInstance()->getProblemCategoryByName('血压心率组合');
     $response->xueyaxinlvhealthRecordProblems = $xueyaxinlvhealthRecordProblemCategory->problems;
     //问诊,其他部分
     $labelArr = WorkSheetClient::getInstance()->getLabels4WorkSheet($workSheet->id);
     $response->labelArr = $labelArr;
     $response->labelCategories = DAL::get()->find_all_by_isDeleted_and_type('LabelCategory', LabelCategory::DELETED_NO, LabelCategory::NFS_TEXTWENZHEN);
     $response->contactLabels = DAL::get()->find('Label', $workSheet->contactLabelIds);
     $wenzhenInquiry = WorkSheetClient::getInstance()->getInquiryByTypeAndWorkSheetId(WorkSheetInquiry::TYPE_STANDARD_TEXT, $workSheet->id);
     $qitaInquiry = WorkSheetClient::getInstance()->getInquiryByTypeAndWorkSheetId(WorkSheetInquiry::TYPE_OTHER, $workSheet->id);
     $response->wenzhenContent = $wenzhenInquiry->content;
     $response->qitaContent = $qitaInquiry->content;
     //标准化问诊
     $this->getStandardInquiryQuestionSheet($request, $response);
     //用药部分
     $medicineSchemeList = MedicineClient::getInstance()->getUserCurrentMedicineScheme($user->id);
     $response->medicineSchemeList = $medicineSchemeList;
     $medicineSchemeId = -1;
     if (false == empty($medicineSchemeList)) {
         $medicineSchemeId = key($medicineSchemeList);
     }
     $response->medicineSchemeId = $medicineSchemeId;
     //$response->followupAuditorList = FollowupOwner::getFollowupAuditors();
     $auditorsRole = DAL::get()->find_by_name('followupauditorrole', FollowupAuditorRole::NAME_ASSISTANTDOCTOROPERATION);
     $response->followupAuditorList = FollowupAuditorClient::getInstance()->getAuditorListByRoleId($auditorsRole->id);
     $response->medicineEventLabelList = MedicineClient::getInstance()->getDefaultMedicineEventLabel();
     //任务部分
     $role = $followupAuditor->role;
     $response->auditorRole = $role;
     // 抽成方法
     $params = array('auditorroleid' => $role->id, 'customerid' => $workSheet->customer->id, 'action' => 'tel', 'pending' => NfsTask::PENDING_NO, 'statusarr' => array(NfsTask::STATUS_UNFINISHED), 'deadline' => XDateTime::today());
     $taskList = TaskClient::getInstance()->getOwnerTaskList($params);
     $resultArr = array();
     foreach ($taskList['before'] as $task) {
         $resultArr[$task->taskModel->id][] = $task;
     }
     $response->taskList = $resultArr;
     $modelIds = array_keys($response->taskList);
     $response->modelList = DAL::get()->find('NfsTaskModel', $modelIds);
     $customerInfoRecordList = FollowupCustomerClient::getInstance()->getCustomerInfoRecordList4ByTaskIdArr(array_keys($taskList['before']));
     $taskId_infoRecordList = array();
     if ($customerInfoRecordList != null) {
         foreach ($customerInfoRecordList as $record) {
             $taskId_infoRecordList[$record->sourceid][] = $record;
         }
         $response->taskId_infoRecordList = $taskId_infoRecordList;
     }
     //健康日记部分
     $response->diaryList = HealthDiaryClient::getInstance()->getLatestDiaries($user->id, XDateTime::today()->addDay(-14)->toShortString(), HealthDiary::AGENTAUDITORID_PATIENT);
     //提问部分
     $response->checkupAnswerSheets = DAL::get()->find_all_by_userid_and_deleted('CheckupAnswerSheet', $owner->user->id);
     $response->questionLabelInfos = CheckupWenDaClient::getInstance()->formatCheckupAnswerSheet($response->checkupAnswerSheets);
     $response->labelList = DAL::get()->find('Label', array_keys($response->questionLabelInfos));
     //下次联系内容部分
     $lastCollectTimes = WorkSheetClient::getInstance()->getLastCollectTimes($user->id);
     foreach ($lastCollectTimes as $key => $time) {
         if (empty($time)) {
             $collectDayStr[$key] = "<span class='fb'>没有采集记录</span>";
         } else {
             $time = XDateTime::valueOf($time);
             $collectDay = (strtotime(XDateTime::today()) - strtotime(XDateTime::valueOf($time->toShortString()))) / 3600 / 24;
             if ($collectDay < 14) {
                 $collectDayStr[$key] = "<span>距离上次采集" . $collectDay . "天</span>";
             } else {
                 $collectDayStr[$key] = "<span class='fb'>距离上次采集" . $collectDay . "天</span>";
             }
         }
     }
     $response->collectDayStr = $collectDayStr;
     $response->auditorId = $auditor->id;
     //找到患者现在体重
     $nowWeightAnswerId = FollowupClient::getInstance()->getUserLastProblemByProblemId($owner->user->id, HealthRecordProblem::HEALTHDIARY_WEIGHT);
     if ($nowWeightAnswerId != '') {
         $response->nowWeightAnswer = DAL::get()->find('HealthRecordanswer', $nowWeightAnswerId);
     }
     //找到患者报到信息
     if ($owner->getNfsDisease() != null) {
         $signinProblems = $owner->getNfsDisease()->getSigninHealthProblems();
         $response->signinProblems = $signinProblems;
     }
     $heightProblem = DAL::get()->find_by_title_and_type('healthrecordproblem', HealthRecordProblem::HEIGHT, HealthRecordProblem::TYPE_SIGNIN);
     $heightAnswerList = HealthRecordClient::getInstance()->getLastHealthAnswerList($owner->user->id, array($heightProblem->id));
     if (false == empty($heightAnswerList)) {
         $heightAnswer = array_shift($heightAnswerList);
         $height = $heightAnswer->value;
     } else {
         $height = '';
     }
     $response->height = $height;
     $customerId = $workSheet->customer->id;
     $customer = DAL::get()->find('followupCustomer', $customerId);
     $response->customer = $customer;
     $customerWorkSheets = DAL::get()->find_all_by_customerid('worksheet', $customerId);
     XString::sortArray($customerWorkSheets, 'ctime');
     $response->workSheetContents = array();
     $response->workSheetContentMaxCount = 3;
     if (false == empty($customerWorkSheets)) {
         $workSheetContents = array();
         foreach ($customerWorkSheets as $lastWorkSheet) {
             $lastInfo = WorkSheetClient::getInstance()->getWorkSheetContactByWorkSheetId($lastWorkSheet->id, $owner->patient);
             if (false == empty($lastInfo)) {
                 $workSheetContents[] = $lastInfo;
             }
         }
         $response->workSheetContents = $workSheetContents;
         $response->isShow = false;
     }
     //得到患者的userid
     $userId = $owner->user->id;
     $flowList = FlowClient::getInstance()->get2WeeksFlowList($owner->patient->id, $customer->space->id);
     $response->flowList = $flowList;
     //PCI手术信息
     $category = DAL::get()->find_by_name('HealthRecordProblemCategory', '二、PCI手术信息');
     $healthProblems = $category->problems;
     $problemIds = array_keys($healthProblems);
     $answerList = HealthRecordClient::getInstance()->getHealthAnswerList4Initial($userId, $problemIds);
     $myAnswerList = array();
     foreach ($answerList as $answer) {
         if ($answer->isNull() == false) {
             $myAnswerList[$answer->ref->problem->id] = $answer;
         }
     }
     $response->healthProblems = $healthProblems;
     $response->myAnswerList = $myAnswerList;
     $response->contacthealthitemnames = $workSheet->contactHealthItemNames;
     $response->sportProblems = HealthRecordClient::getInstance()->getSportProblem4WorkSheet();
     $historyArr = HealthDiaryClient::getInstance()->getDiaryAnswerHistory4WorkSheet($userId, $num = 10);
     // 老的血压、心率历史记录,即将废掉
     $response->bloodPressureHistory = $historyArr['bloodpressure'];
     $response->heartRateHistory = $historyArr['heartrate'];
     // 新的血压、心率历史记录
     $response->xueyaxinlvHistory = $historyArr['xueyaxinlv'];
     $response->bloodGlucoseHistory = $historyArr['bloodglucose'];
     $response->weightHistory = $historyArr['weight'];
     $response->sportHistory = $historyArr['sport'];
     //出院诊断部分
     $resultList = array();
     $diagnosisList = DAL::get()->find_all_by_customerid('LeaveHospitalDiagnosis', $customerId);
     foreach ($diagnosisList as $diagnosis) {
         $resultList[$diagnosis->leavehospitaltime] = DiagnosisClient::getInstance()->findAllDiagnosisResultByDiagnosisId($diagnosis->id);
     }
     $response->resultList = $resultList;
     $response->BMIInfo = $user->getFollowupCustomer()->getBIMInfo();
     $weightAnswer = DAL::get()->find_LastestWeightAnswer('HealthRecordAnswer', $owner->getFollowupCustomer()->userId);
     $lastWeight = $weightAnswer instanceof HealthRecordAnswer ? $weightAnswer->value : 0;
     //$lastWeight = DAL::get()->find_LastestWeightAnswer('HealthRecordAnswer', $owner->getFollowupCustomer()->userId)->value;
     $response->bmr = Patient::getBMR($owner->patient->getAgeNum(true), $lastWeight, $owner->patient->sex);
     //饮食部分
     $tmpArr = array(dietFoodInfoNodeDefine::DIET_CACULATOR_WORKSHEETID => $workSheetId);
     $response->dietFoodsNodeObjs = DAL::get()->find_all_by_nodename_and_keyname_and_value_and_source('nodeobj', NodeObj::NODE_DEFINE_DIET_CACULATOR, $tmpArr, NodeObj::SOURCE_NFS);
     //疾病管理
     $response->workMemos = DAL::get()->find_all_by_customerid('workmemo', $customerId);
     //新体重管理
     $healthItemProjects = DAL::get()->find_all_by_followupcustomerid('HealthItemProject', $workSheet->customer->id);
     $response->healthItemProjects = $healthItemProjects;
     //症状事件
     $incidents = DAL::get()->find_all_by_followupcustomerid('Incident', $workSheet->customer->id);
     $arr = array();
     $res = array();
     foreach ($incidents as $incident) {
         /*{{{*/
         $incidentStates = DAL::get()->find_all_by_incidentid('IncidentState', $incident->id);
         if (false == empty($incidentStates)) {
             $arr[$incident->id] = end($incidentStates);
         }
     }
     /*}}}*/
     if (false == empty($arr)) {
         /*{{{*/
         foreach ($arr as $incidentId => $incidentState) {
             $ids[] = $incidentId;
             $emerg[] = $incidentState->emergencyLevel;
             $f[] = $incidentState->careLevel + $incidentState->impactLevel;
         }
         array_multisort($emerg, $f, SORT_DESC, SORT_NUMERIC, $ids);
         $res = array();
         if (false == empty($ids)) {
             foreach ($ids as $id) {
                 $res[$id] = DAL::get()->find('Incident', $id);
             }
         }
     } else {
         $res = $incidents;
     }
     $response->incidents = $res;
     //复查异常
     $nfsSubTasks = DAL::get()->find_all_by_followupcustomerid_and_status('NfsSubTask', $workSheet->customer->id, ProjectConst::CustomerStatus_Start);
     //展示时先展示用药任务,然后是复查任务。
     $_FuChaTasks[] = array();
     $_YongYaoTasks[] = array();
     foreach ($nfsSubTasks as $nfsSubTask) {
         /*{{{*/
         if ($nfsSubTask->type == NfsSubTask::Type_FuCha) {
             $_FuChaTasks[$nfsSubTask->id] = $nfsSubTask;
         } else {
             if ($nfsSubTask->type == NfsSubTask::Type_YongYao) {
                 $_YongYaoTasks[$nfsSubTask->id] = $nfsSubTask;
             }
         }
     }
     /*}}}*/
     $nfsSubTasks = $_YongYaoTasks + $_FuChaTasks;
     $response->nfsSubTasks = $nfsSubTasks;
     //血糖管理
     $bloodSugarSteps = DAL::get()->find_all_by_followupcustomerid('bloodSugarStep', $workSheet->customer->id);
     $response->bloodSugarSteps = $bloodSugarSteps;
 }
 public function modifyDiary($request, $response)
 {
     /*{{{*/
     $vars = $request->vars;
     $diary = DAL::get()->find('HealthDiary', $request->diaryId);
     if ($diary->isNull()) {
         throw new BizException('该日记不存在');
     }
     $doTime = $diary->doTime;
     $user = $diary->user;
     $lastHealthAnswerList = array();
     foreach ($vars['hp'] as $updateProblemId => $value) {
         if (empty($value) == false) {
             $problem = DAL::get()->find('HealthRecordProblem', $updateProblemId);
             $ans = HealthRecordClient::getInstance()->addHealthAnswer($user->id, $problem->id, $value, $problem->unit, $doTime, HealthRecordAnswer::STATUS_INIT, array($value), array());
             $lastHealthAnswerList[$ans->id] = $ans;
         }
     }
     $relationAnswerIds = array_keys($lastHealthAnswerList);
     $relationProblemIds = explode(',', $request->relationproblemids);
     $diaryContent = $vars['diary'];
     if ($diaryContent == '' || $diaryContent == '您的健康日记只有您本人可以看到!') {
         $diaryContent = '';
     }
     foreach ($diary->relationAnswerIds as $answerId) {
         HealthRecordClient::getInstance()->deleteHealthRecordAnswer($answerId);
     }
     HealthDiaryClient::getInstance()->updateDiary($diary->id, $diaryContent, array('relationAnswerIds' => $relationAnswerIds));
     $logType = NfsAuditLog::TypeDiaryUpdate;
     $logContent = "修改了{$diary->doTime->toString()}提交的日记";
     NfsAuditClient::getInstance()->addAuditLog($diary->user, $diary, $this->auditor, $logType, $logContent);
     $response->setRedirect($response->router->urlfor('healthrecord/diarydetail', array('diaryId' => $diary->id)));
 }
    public function medicineHistoryList($request, $response)
    {/*{{{*/
        $nowPage = $request->getRequest('p', 1);
        $pageSize = 20;
        $res = HealthDiaryClient::getInstance()->getMedicineChangeDiary4User($this->user->id, 
            $pageSize, $nowPage);
        $pagelink = '';
        if(false == empty($res['pageInfo'])) 
        {
            $pagelink = PageNav::getNavLink( PageNav::getPageNavTemplate("/myhealth/medicinehistorylist?page="),
                $res['pageInfo']['nowpage'], $res['pageInfo']['pagesize'],
                $res['pageInfo']['total']);
        } 

        $response->pagelink = $pagelink;
        $response->userMedicineRecordList = $res['list'];
    }/*}}}*/
    public function patientDiaryList($request, $response)
    {/*{{{*/
        $doctorPatientRefId = Codec::getInstance()->decodeId($request->refid);
        $ref = DAL::get()->find('DoctorPatientRef', $doctorPatientRefId);
        $p = $request->getRequest('p', 1);
        $pageSize = 10;
        $res = HealthDiaryClient::getInstance()->getDiaries($p, $pageSize, $ref->user->id); 

        $pageInfo = $res['pageInfo'];
        $pagelink = PageNav::getNavLink(PageNav::getPageNavTemplate("/flow/patientdiarylist?refid=".$ref->id.'&p='), 
        $pageInfo['nowpage'], $pageInfo['pagesize'], $pageInfo['total']);

        $diaryList = $res['diaries'];
        $response->diaryList = $diaryList;
        // 查询异常
        $diaryIds = array_keys($diaryList);
        $abnormalStatus = array();
        if(empty($diaryIds) == false) {
            $abnormalStatus = PatientCaseHistoryClient::getInstance()->getAbnormalStatusByEntityIds($diaryIds);
        }
        $response->abnormalStatus = $abnormalStatus;
        $patientSignin = DAL::get()->find_by_patientid_and_spaceid('FollowupOwner', $ref->patient->id, 
            $this->_newSpace->id);
        $signinProblems = array();
        if ($patientSignin->isNull() == false) 
        {
            $response->leaveHospitalDate = $patientSignin->leaveHospitalDate;
            $signinProblems = $patientSignin->getNfsDisease()->getSigninHealthProblems();
        } 
        else 
        {
            $response->leaveHospitalDate = '';
        }
        $response->signinProblems = $signinProblems;        
        $response->pagelink = $pagelink;
        $response->ref = $ref;
        $res = FlowClient::getInstance()->getFlowInfos($ref->id, $p, $pageSize, array('curUserId'=>$this->_newUser->id));
        List($hasBooking, $hasTel, $bookingOrder, $telCase) = $this->getUnFinishedService($res['objects']);
        $response->hasBooking = $hasBooking;
        $response->hasTel = $hasTel;

        $out = MedicineClient::getInstance()->getMedicineEventLog($ref->user->id, 1, 2);
        $response->medicineEventLogList = $out['eventList'];
       
        $medicineSchemeList = MedicineClient::getInstance()->getUserCurrentMedicineScheme($ref->user->id);
        $response->medicineSchemeList = $medicineSchemeList;

        $groups = ForumClient::getInstance()->getGroupListByPatientIdAndSpaceId($ref->patient->id, $this->_newSpace->id);
        $response->groupList = $groups;
    }/*}}}*/
 public function modifyIncidentStatePost($request, $response)
 {
     $incidentState = DAL::get()->find('IncidentState', $request->incidentStateId);
     $params = $request->vars;
     if (isset($params['healthDiary']) && $params['healthDiary']) {
         $str = '';
         $emergDesc = IncidentState::getEmergencyLevelDefines();
         $str .= '紧急度:' . $emergDesc[$params['emergencyLevel']] . "\n";
         $str .= '对生活的影响:' . $params['impactLevel'] . "\n";
         $str .= '在意程度:' . $params['careLevel'] . "\n";
         $str .= '描述:' . $params['content'];
         HealthDiaryClient::getInstance()->updateDiary($incidentState->healthdiary->id, $str);
     }
     IncidentClient::getInstance()->modifyIncidentState($incidentState->id, $params);
     $preMsg = "事件跟进 " . $incidentState->id . " 修改成功";
     $response->setRedirect($response->router->urlfor('incident/modifyincidentstate', array('incidentStateId' => $incidentState->id, 'preMsg' => $preMsg)));
 }
 private function modifyPostImp($request, $response, $bloodSugarStep)
 {
     /*{{{*/
     $type = $request->type;
     $typeArr = explode(",", $type);
     $params = $request->vars;
     $arrs = $request->arrs;
     $params = BloodSugarStep::convertFieldArrToStr($typeArr, $params);
     $params += $arrs;
     $bloodSugarStepId = BloodSugarStepClient::getInstance()->modify($bloodSugarStep->id, $params);
     $bloodSugarStep = DAL::get()->find("BloodSugarStep", $request->bloodSugarStepId);
     $content = $bloodSugarStep->getContentByType();
     $healthDiaryId = HealthDiaryClient::getInstance()->updateDiary($bloodSugarStep->healthDiary->id, $content, array());
     return $bloodSugarStep;
 }
 public function modifyHealthItemStepPost($request, $response)
 {
     $healthItemStep = DAL::get()->find('HealthItemStep', $request->healthItemStepId);
     DBC::requireTrue($healthItemStep instanceof HealthItemStep, "不存在该步骤");
     $params = $request->vars;
     if (false == empty($params['checkContent'])) {
         if (is_array($params['checkContent'])) {
             $params['checkContent'] = implode(',', $params['checkContent']);
         }
     }
     $healthItemStepId = HealthItemProjectClient::getInstance()->modifyHealthItemStep($healthItemStep->id, $params);
     $arr['value'] = $params['result'];
     $arr['unit'] = $params['resultFix'];
     $ansId = $healthItemStep->healthdiary->relationAnswerIds;
     HealthRecordClient::getInstance()->updateHealthRecordAnswer($ansId[0], $arr);
     if (isset($params['healthDiary']) && $params['healthDiary']) {
         HealthDiaryClient::getInstance()->updateDiary($healthItemStep->healthdiary->id, $params['content'] . "," . $params['checkContent']);
     }
     $preMsg = "体重管理跟进 " . $healthItemStepId . " 修改成功";
     $response->setRedirect($response->router->urlfor('healthitemproject/modifyhealthitemstep', array('healthItemStepId' => $healthItemStep->id, 'preMsg' => $preMsg)));
 }
 public function checkupTicketsFeedback($userId, $checkupTicketId, $result)
 {/*{{{*/
     $user = DAL::get()->find('user', $userId);
     if($user->isNull())
     {
         $this->setErrorCode(107);
         return 0;
     }
     if(empty($checkupTicketId))
     {
         $this->setErrorCode(401);
         return 0;
     }
     //患者不想去复查
     if ($result == self::REFUSE_CHECKUP) 
     {
         $checkupTicket = DAL::get()->find('CheckupTicket', $checkupTicketId);
         $content = $checkupTicket->task->getDisplayName()."\n患者不想去复查";
         HealthDiaryClient::getInstance()->addUserRefuseCheckupDiary($user->id, $content);
     }
 }/*}}}*/
    public function index($request, $response)
    {/*{{{*/
        $this->initialize($request, $response);
        
        //疾病页2013版
        $diseasePage = DiseasePage::getByDiseaseId($this->disease->id);
        
        if($diseasePage instanceof DiseasePage && $diseasePage->isOnlineOrPreview())
        {
            $ddCnt = DiseaseClient::getInstance()->getDiseaseDoctorCnt($this->disease->id);
            $response->diseasePage = $diseasePage;
            $disease=$diseasePage->disease;
            $response->previewId = $request->getRequest('previewId', 0);
            $title = $disease->name.','.$disease->name.'的症状、治疗_疾病查询_好大夫在线';
            $keywords = $disease->name.",".$disease->name."的症状,".$disease->name."的治疗,".$disease->name."吃什么";
            $description = "中国最大的医疗网站-好大夫在线疾病库详细介绍".$disease->name."病因,".$disease->name."症状,".$disease->name."治疗方式,如何护理".$disease->name."患者等。推荐".$ddCnt."位".$disease->name."专家、咨询".$disease->name."问题、预约".$disease->name."专家门诊。";

            $response->title=$title;
            $response->keywords=$keywords;
            $response->description=$description;

            if (DiseasePage::isDiseaseWithNfs($diseasePage->disease->id)){
                $response->nfsCount = FollowupClient::getInstance()->getFollowupOwnerCount();
                $response->nfsDiseaseCount = FollowupClient::getInstance()->getPCINfsDiseaseCount();
                $response->nfsDiseaseSpaceCount = FollowupClient::getInstance()->getPCINfsDiseaseSpaceCount();
                $response->healthDiaryCount = HealthDiaryClient::getInstance()->getHealthDiaryCount();
            }

        	return 'diseasepage';
        }

        //旧模板中的新模板 : newindex => /disease/newindex
        //目前 newindex 437个疾病 by sjp 20130806
        if($this->disease->isNewDisease == 1){
            $this->newIndex($request, $response);
            return 'newindex';
        }
        //else 走到这里,是最旧的版本的模板: success => /disease/index


        //专题部分
        list($openBooking, $topic, $doctor) = $this->getZhuanTi4Case();

        //最新回复
        $threads = $this->searchByDisease($this->disease, 3);
        
        $response->openBooking = $openBooking;
        $response->topic = $topic;
        $response->doctor = $doctor;
        $response->diseaseId = $this->disease->id;
        $response->diseaseParentId = $this->diseaseParent->id;

        $response->modifiedTriageCity = array();
        $diseaseId = $this->disease->voteDisease->id;
        $this->getCurrencyMethod($request, $response, $diseaseId);
        $response->threads = $threads;
        $name = $this->disease->name;
        $response->diseaseName=$name;
        $commentCnt = DAL::get()->queryCommentCntByDiseaseId('doctorcomment', $this->disease->id);
        $diseaseDoctorCnt = DiseaseClient::getInstance()->getDiseaseDoctorCnt($this->disease->id);
        $response->desc = $commentCnt."篇".$name."患友亲历的看病经验、".$diseaseDoctorCnt."位大医院专家介绍".$name."症状、".$name."治疗方案等;各地".$name."专家排行;
            直接向专家本人咨询。".$diseaseDoctorCnt."位大医院专家介绍".$name."症状、".$name."治疗方案等;各地".$name."专家排行;直接向专家本人咨询。".
            $name."症状、".$name."治疗方案等;各地".$name."专家排行;直接向专家本人咨询";

    }/*}}}*/
 private function _submit_yiwenjiejue($customer, $datas, EntityBase $sourceEntity)
 {
     /*{{{*/
     // 健康日记内容
     $diaryContent = "";
     $zzStr = "症状描述:" . $datas['zz']['desc'] . "\n";
     $zzStr .= "症状医助建议:" . $datas['zz']['advice'] . "\n";
     if (isset($datas['zz']['inserttodiary']) && $datas['zz']['inserttodiary']) {
         $diaryContent .= "\n" . $zzStr;
     }
     $checkupStr = "复查详情:" . $datas['checkup']['desc'] . "\n";
     if (isset($datas['checkup']['inserttodiary']) && $datas['checkup']['inserttodiary']) {
         $diaryContent .= "\n" . $checkupStr;
     }
     $jiahaoStr = "\n加号要求:" . $datas['jiahao']['desc'] . "\n";
     $jiahaoStr .= "加号医助建议:" . $datas['jiahao']['advice'] . "\n";
     $otherInfo = "其他描述:" . $datas['otherinfo']['desc'] . "\n";
     $otherInfo .= "其他医助建议:" . $datas['otherinfo']['advice'] . "\n";
     if (isset($datas['otherinfo']['inserttodiary']) && $datas['otherinfo']['inserttodiary']) {
         $diaryContent .= "\n" . $otherInfo;
     }
     $auditor = $this->curInspector->getAuditorEntity4auditfront();
     // 创建事件任务 和 加号任务
     /* 柳晓秋让去掉症状事件 20140423
        $eventModel = DAL::get()->find_by_title('NfsTaskModel', NfsTaskModel::TITLE_EVENT);
        if (isset($datas['zz']['event']) && $datas['zz']['event'])
        {
            TaskClient::getInstance()->createTask4NoUserCustomer($customer->id, array($eventModel->id), $sourceEntity, $auditor, XDateTime::tomorrow(), $zzStr, FollowupAuditorRole::NAME_ASSISTANTDOCTOROPERATION_ID);
        }
        if (isset($datas['checkup']['event']) && $datas['checkup']['event'])
        {
            TaskClient::getInstance()->createTask4NoUserCustomer($customer->id, array($eventModel->id), $sourceEntity, $auditor, XDateTime::tomorrow(), $checkupStr, FollowupAuditorRole::NAME_ASSISTANTDOCTOROPERATION_ID);
        }
        */
     $jiahaoModel = DAL::get()->find_by_title('NfsTaskModel', NfsTaskModel::TITLE_JIAHAO);
     if (isset($datas['jiahao']['event']) && $datas['jiahao']['event']) {
         $deadline = $datas['jiahao']['deadline'];
         TaskClient::getInstance()->createTask4NoUserCustomer($customer->id, array($jiahaoModel->id), $sourceEntity, $auditor, XDateTime::valueOf($deadline), $jiahaoStr, FollowupAuditorRole::NAME_ASSISTANTDOCTOROPERATION_ID);
     }
     // 提问生成followupPost
     $postContent = isset($datas['postContent']) ? $datas['postContent'] : "";
     $labelIds = isset($datas['labelIds']) ? $datas['labelIds'] : array();
     $options = array('attachmentIds' => array(), 'agentAuditorId' => $auditor->id);
     if (false == empty($postContent)) {
         $this->_yiwenjiejue_add_post($customer, $auditor, $postContent, $labelIds, $options);
     }
     // 健康日记
     $healthdiaryId = HealthDiaryClient::getInstance()->addDiary($customer->userId, $diaryContent, array('diaryTime' => XDateTime::today(), 'agentAuditorId' => $auditor->id));
     $this->dataJson = array_merge(array('HealthDiary' => $healthdiaryId), $this->dataJson);
 }