private function collectMedicineInfo($request, $response)
 {/*{{{*/
     if(XString::getLengthOfGBKString($_REQUEST['medname'])<1 || XString::getLengthOfGBKString($_REQUEST['medname'])>35)
     {
         throw new BizException('用药名称为必填信息且不能超过35字');
     }
     if(XString::getLengthOfGBKString($_REQUEST['meddesc'])<1 || XString::getLengthOfGBKString($_REQUEST['meddesc'])>100)
     {
         throw new BizException('服用说明必填信息且不能超过100字');
     }
     $medicineName = XString::convertUTF8ToGBK(ltrim($request->medicineName));
     $medicineDesc = XString::convertUTF8ToGBK(ltrim($request->medicineDesc));
     $medicine = BingLiDto::createMedicineDto($medicineName, $medicineDesc);
     return $medicine;
 }/*}}}*/
 public function medicineChip($request, $response)
 {/*{{{*/
     try{
     $medicineAndNum = $request->id;
     $medicineAndNumList = explode('_', $medicineAndNum);
     $medicineKey = $medicineAndNumList[0];
     $response->num = $medicineAndNumList[1];
     $medicineName = XString::convertToGbk($request->medicineName);
     $medicineDesc = XString::convertToGbk($request->medicineDesc);
     $medicine = BingLiDto::createMedicineDto($medicineName, $medicineDesc);
     $newMedicineKey = AskSessionInfo::modifyPatientInfo(NodeObj::NODE_DEFINE_MEDICINE, $medicineKey, $medicine);
     $medicineInfo = AskSessionInfo::getSinglePatientInfos(NodeObj::NODE_DEFINE_MEDICINE, $newMedicineKey);
     $response->medicineInfo = $medicineInfo;
     $response->newMedicineKey = $newMedicineKey;
     } catch(IllegalWordsException $ex){
         echo '非法词汇';
         return parent::DIRECT_OUTPUT; 
     }
 }/*}}}*/