public function saveOrder($request, $response) { /*{{{*/ $bookingOrder = DAL::get()->mustFind('BookingOrder', $request->id); if ($bookingOrder->notification->isClose() || $bookingOrder->notification->isPending()) { die("执行单已经是取消状态,不能修改!"); } $schedule = $request->schedule; $time = explode("_", $schedule); $date = XDateTime::valueOf($time[0]); $mae = array('str' => $time[1], 'hour' => $request->hour, 'minute' => $request->minute); if ($request->patientMobile) { PatientClient::getInstance()->modifyPatientMobile($bookingOrder->patient->id, $request->patientMobile); } $params = array('scheduleStr' => $time[1], 'adminRemark' => $request->adminRemark, 'address' => $request->address, 'smsModel' => $request->smsModel); BookingClient::getInstance()->saveOrder($request->id, $this->curInspector->user, $params, $date, $mae); $response->setRedirect($response->router->urlfor('booking/showorderdetail', array('orderId' => $request->id))); }
private function modifyPatientInfo($request, $response) {/*{{{*/ $patientNew = $patientInfo = DAL::get()->find('patient', $request->patientid); $patient = $request->patient; $feildNames = array('name', 'sex', 'province', 'city', 'idcard', 'paperstype', 'birthday', 'mobile', 'relation'); /** 患者不存在,写入一条患者信息 */ if ($patientNew->isNull()) { $patient['birthday'] = $request->dateyear."-".$request->datemonth."-".$request->dateday; $params = array(); foreach($feildNames as $feildName) { $params[$feildName] = trim($patient[$feildName]); } $theSame = PatientClient::getInstance()->theSame($this->_newUser, $params, 'jiahao'); if(false == $theSame) { $patientInfo = DAL::get()->find_by_fld_userid_and_name_and_sex_and_birthday_and_province_and_city_and_relation('patient', $this->_newUser->id, $params['name'], $params['sex'], $params['birthday'], $params['province'], $params['city'], $params['relation']); if(false == $patientInfo->isNull()) { return "该患者已经存在,请不要重复添加!"; } $patientInfo = PatientClient::getInstance()->add($this->_newUser, $params); } else { $patientInfo = DAL::get()->find('patient', $theSame); } } else if(false == empty($patient)) { $info = array(); foreach($feildNames as $feildName) { if($feildName == 'birthday' && $request->dateyear && $request->datemonth && $request->dateday) { $patient['birthday'] = $patient['dateyear']."-".$patient['datemonth']."-".$patient['dateday']; $info['birthday'] = trim($patient['birthday']); continue; } if(array_key_exists($feildName, $patient)){ $info[$feildName] = $patient[$feildName]; } } if (false == empty($info)) { PatientClient::getInstance()->modifyInfo($patientNew->id , $info); //重新find拿最新实体 $patientInfo = DAL::get()->find('patient', $patientNew->id, true); } } return $patientInfo; }/*}}}*/
public function index($request, $response) { $month = XDateTime::valueOf(date('Y-m-d',(strtotime(XDateTime::now()) - 86400*30))); $day = XDateTime::valueOf(date('Y-m-d',(strtotime(XDateTime::now())))); $threeDay = XDateTime::valueOf(date('Y-m-d',(strtotime(XDateTime::now()) - 86400*3))); $beijingHospital = array( '协和医院'=>1, '同仁医院'=>3, '301医院'=>335, '北医三院'=>142, '人民医院'=>21, '妇产医院'=>75, '儿童医院'=>24, '积水潭医院'=>34, '阜外医院'=>25, '宣武医院'=>55, '天坛医院'=>44, '北大肿瘤'=>148); $shanghaiHospital = array( '瑞金医院'=>424, '中山医院'=>420, '仁济医院'=>471, '华山医院'=>418, '新华医院'=>426, '长海医院'=>427, '上海第一'=>431, '红房子医院'=>416, '儿童医学中心'=>425, '上海九院'=>422, '五官科医院'=>419, '精神卫生中心'=>827); $guangdongHospital = array( '省人民医院'=>443, '省中医院'=>454, '中山一院'=>460, '中山二院'=>458, '中山三院'=>459, '广州市第一'=>446, '广医一院'=>453, '脑科医院'=>449, '广州儿童医院'=>447, '深圳北大医院'=>608); $otherAreaHospital = array( '天津总医院'=>487, '天津肿瘤'=>599, '天津血液病'=>1904, '华西医院'=>488, '四川省人民'=>507, '华西口腔'=>532, '江苏省人民'=>478, '南京鼓楼'=>497, '南京脑科'=>646, '武汉协和'=>494, '武汉同济'=>496, '湖北省人民'=>530); $otherAreaHospitalAddress = array( '天津总医院'=>'tianjin', '天津肿瘤'=>'tianjin', '天津血液病'=>'tianjin', '华西医院'=>'sichuan', '四川省人民'=>'sichuan', '华西口腔'=>'sichuan', '江苏省人民'=>'jiangsu', '南京鼓楼'=>'jiangsu', '南京脑科'=>'jiangsu', '武汉协和'=>'hubei', '武汉同济'=>'hubei', '湖北省人民'=>'hubei'); $hospitalArray = array_merge($beijingHospital, $shanghaiHospital); $hospitalArray = array_merge($hospitalArray, $guangdongHospital); $hospitalArray = array_merge($hospitalArray, $otherAreaHospital); //todo 移到服务层 $hospitalDoctorCount = PlussignChannelClient::getInstance()->getDoctorCountByHospital($hospitalArray); $beijingCount = PlussignChannelClient::getInstance()->getDoctorCountByArea('北京');//北京地区开通加号医生总数目 $shanghaiCount = PlussignChannelClient::getInstance()->getDoctorCountByArea('上海'); $guangdongCount = PlussignChannelClient::getInstance()->getDoctorCountByArea('广东'); $bjHospitalFactory = PlussignChannelClient::getInstance()->getFacultyListByCondition('','北京','');//北京地区各个科室开通加号医生数目 $shHospitalFactory = PlussignChannelClient::getInstance()->getFacultyListByCondition('','上海',''); $gdHospitalFactory = PlussignChannelClient::getInstance()->getFacultyListByCondition('','广东',''); $otherHospitalFactory = PlussignChannelClient::getInstance()->getFacultyListByCondition('','其它地区',''); if(isset($bjHospitalFactory['传染病科'])) { unset($bjHospitalFactory['传染病科']); } if(isset($gdHospitalFactory['传染病科'])) { unset($gdHospitalFactory['传染病科']); } if(isset($shHospitalFactory['传染病科'])) { unset($shHospitalFactory['传染病科']); } $doctorNumber = PlussignChannelClient::getInstance()->getPlusSignDoctorCount();//全国开通加号医生总数目 $patientNumber = SpaceClient::getInstance()->getPlusSignPatientCount(); $otherCount = $doctorNumber-$beijingCount-$shanghaiCount-$guangdongCount;//其它地区开通加号医生总数目 //预约成功患者 $patientOrderList = PatientClient::getInstance()->getPatientOrderList(6); $doctorOrderList = BookingClient::getInstance()->getNewBookingContractList(); $response->bjHospital = $beijingHospital; $response->shHospital = $shanghaiHospital; $response->gdHospital = $guangdongHospital; $response->otHospital = $otherAreaHospital; $response->otAreaHospital = $otherAreaHospitalAddress; $response->hospitalDoctorCount = $hospitalDoctorCount; $response->beijingCount = $beijingCount; $response->shanghaiCount = $shanghaiCount; $response->guangdongCount = $guangdongCount; $response->bjHospitalFactory = $bjHospitalFactory; $response->shHospitalFactory = $shHospitalFactory; $response->gdHospitalFactory = $gdHospitalFactory; $response->otherHospitalFactory = $otherHospitalFactory; $response->doctorNumber = $doctorNumber; $response->patientNumber = $patientNumber; $response->otherCount = $otherCount; $response->patientOrderList = $patientOrderList; $response->doctorOrderList = $doctorOrderList; $response->type = 'index'; //返回页面类型,暂时用于控制二级导航 }
private function doSavePatientInfo($request, $response) { /*{{{*/ $signinId = $request->signinId; $patientSignin = DAL::get()->find('FollowupOwner', $signinId); $params = $request->vars; $params['birthday'] = XDateTime::createXDateTime($request->dateyear, $request->datemonth, $request->dateday)->toString(); $patient = $patientSignin->patient; if ($patient->isNull() == false) { PatientClient::getInstance()->modifyInfo($patient->id, $params); } }
private function addPatient($userId, $name, $birthday, $sex, $province, $city, $relation, $mobile) {/*{{{*/ $user = DAL::get()->find('user', $userId); if ($user->isNull()) { $this->setErrorCode(107); return false; } $errorcode = $this->checkPatientInfo($name, $sex, $relation, $province, $city, $birthday, $mobile); if($errorcode != 0 && $errorcode != 110) { $this->setErrorCode($errorcode); return false; } $birthday = date('Y-m-d',$birthday); $params = array( 'name' => $name, 'sex' => $sex, 'relation' => $relation, 'province' => $province, 'birthday' => $birthday, 'city' => $city, 'mobile' =>$mobile, ); $patient = PatientClient::getInstance()->add($user, $params); return $patient; }/*}}}*/
public function index($request, $response) {/*{{{*/ if (false == $this->isFromNotice()) { $next = 'http://www.haodf.com'; if (isset($_SERVER['HTTP_HOST']) && isset($_SERVER['REQUEST_URI'])) { $next = 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']; } $refer = isset($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : 'http://www.haodf.com'; $response->setRedirect('http://'.URL_PREFIX.'jiahao.haodf.com/notice.htm?refer='.urlencode($refer).'&next='.urlencode($next)); return parent::DIRECT_OUTPUT; } $month = XDateTime::valueOf(date('Y-m-d',(strtotime(XDateTime::now()) - 86400*30))); $day = XDateTime::valueOf(date('Y-m-d',(strtotime(XDateTime::now())))); $threeDay = XDateTime::valueOf(date('Y-m-d',(strtotime(XDateTime::now()) - 86400*3))); $oneYear = XDateTime::valueOf(date('Y-m-d',(strtotime(XDateTime::now()) - 86400*30*12))); $beijingHospital = array( '协和医院'=>1, '同仁医院'=>3, '301医院'=>335, '北医三院'=>142, '人民医院'=>21, '妇产医院'=>75, '儿童医院'=>24, '积水潭医院'=>34, '阜外医院'=>25, '宣武医院'=>55, '天坛医院'=>44, '北大肿瘤'=>148); $shanghaiHospital = array( '瑞金医院'=>424, '中山医院'=>420, '仁济医院'=>471, '华山医院'=>418, '新华医院'=>426, '长海医院'=>427, '上海第一'=>431, '红房子医院'=>416, '儿童医学中心'=>425, '上海九院'=>422, '五官科医院'=>419, '精神卫生中心'=>827); $guangdongHospital = array( '省人民医院'=>443, '省中医院'=>454, '中山一院'=>460, '中山二院'=>458, '中山三院'=>459, '广州市第一'=>446, '广医一院'=>453, '脑科医院'=>449, '广州儿童医院'=>447, '深圳北大医院'=>608); $otherAreaHospital = array( '天津总医院'=>487, '天津肿瘤'=>599, '天津血液病'=>1904, '华西医院'=>488, '四川省人民'=>507, '华西口腔'=>532, '江苏省人民'=>478, '南京鼓楼'=>497, '南京脑科'=>646, '武汉协和'=>494, '武汉同济'=>496, '湖北省人民'=>530); $otherAreaHospitalAddress = array( '天津总医院'=>'tianjin', '天津肿瘤'=>'tianjin', '天津血液病'=>'tianjin', '华西医院'=>'sichuan', '四川省人民'=>'sichuan', '华西口腔'=>'sichuan', '江苏省人民'=>'jiangsu', '南京鼓楼'=>'jiangsu', '南京脑科'=>'jiangsu', '武汉协和'=>'hubei', '武汉同济'=>'hubei', '湖北省人民'=>'hubei'); $hospitalArray = array_merge($beijingHospital, $shanghaiHospital); $hospitalArray = array_merge($hospitalArray, $guangdongHospital); $hospitalArray = array_merge($hospitalArray, $otherAreaHospital); $hospitalDoctorCount = PlussignChannelClient::getInstance()->getDoctorCountByHospital($hospitalArray); $beijingCount = PlussignChannelClient::getInstance()->getDoctorCountByArea('北京');//北京地区开通加号医生总数目 $shanghaiCount = PlussignChannelClient::getInstance()->getDoctorCountByArea('上海'); $guangdongCount = PlussignChannelClient::getInstance()->getDoctorCountByArea('广东'); $bjHospitalFactory = PlussignChannelClient::getInstance()->getFacultyListByCondition('','北京','');//北京地区各个科室开通加号医生数目 $shHospitalFactory = PlussignChannelClient::getInstance()->getFacultyListByCondition('','上海',''); $gdHospitalFactory = PlussignChannelClient::getInstance()->getFacultyListByCondition('','广东',''); $otherHospitalFactory = PlussignChannelClient::getInstance()->getFacultyListByCondition('','其它地区',''); if(isset($bjHospitalFactory['传染病科'])) { unset($bjHospitalFactory['传染病科']); } if(isset($gdHospitalFactory['传染病科'])) { unset($gdHospitalFactory['传染病科']); } if(isset($shHospitalFactory['传染病科'])) { unset($shHospitalFactory['传染病科']); } $doctorNumber = PlussignChannelClient::getInstance()->getPlusSignDoctorCount();//全国开通加号医生总数目 $patientNumber = SpaceClient::getInstance()->getPlusSignPatientCount(); $otherCount = $doctorNumber-$beijingCount-$shanghaiCount-$guangdongCount;//其它地区开通加号医生总数目 //预约成功患者 $patientOrderList = PatientClient::getInstance()->getPatientOrderList(6); list($response->spacesOfNewContract, $response->newContracts) = BookingClient::getInstance()->getSpaceAndContract4newOpenBooking(20); $response->bjHospital = $beijingHospital; $response->shHospital = $shanghaiHospital; $response->gdHospital = $guangdongHospital; $response->otHospital = $otherAreaHospital; $response->otAreaHospital = $otherAreaHospitalAddress; $response->hospitalDoctorCount = $hospitalDoctorCount; $response->beijingCount = $beijingCount; $response->shanghaiCount = $shanghaiCount; $response->guangdongCount = $guangdongCount; $response->bjHospitalFactory = $bjHospitalFactory; $response->shHospitalFactory = $shHospitalFactory; $response->gdHospitalFactory = $gdHospitalFactory; $response->otherHospitalFactory = $otherHospitalFactory; $response->doctorNumber = $doctorNumber; $response->patientNumber = $patientNumber; $response->otherCount = $otherCount; $response->patientOrderList = $patientOrderList; $response->type = 'index'; //返回页面类型,暂时用于控制二级导航 }/*}}}*/
private function doSavePatientInfo($request, $response) { /*{{{*/ $signinId = $request->signinId; $patientSignin = DAL::get()->find('FollowupOwner', $signinId); $params = $request->vars; $birthDate = $request->birthday; if (XDateTime::isDate($birthDate)) { $params['birthday'] = XDateTime::valueOf($birthDate)->toString(); } $patient = $patientSignin->patient; if ($patient->isNull() == false) { PatientClient::getInstance()->modifyInfo($patient->id, $params); } }
public function index($request,$response) {/*{{{*/ /* bigpipe用来做切换,true表示关闭,以普通模式浏览 */ $response->nobp = ($request->nobp == null) ? false : true; //搜索 $response->searchWords = $this->getHotSearchWords(); List($blueImage, $redImage) = $this->getHomeBigImage(); $response->blueImage = $blueImage; $response->redImage = $redImage; //在线专家 $response->onLineDoctorList = DoctorClient::getInstance()->getOnLineDoctor4HomePage(); //按医院找大夫 $provList = $this->getProvList(); $provKeyList = $this->getProvKey(); $hospitalIds = array(); foreach ($provList as $p => $prov) { foreach ($prov as $h => $hospital) { $hospitalIds[] = $h; } } $response->hospitalList = DAL::get()->find('hospital', $hospitalIds); $response->provList = $provList; $response->provKeyList = $provKeyList; //咨询专家 咨询列表 $response->doctorPatientSets = $this->getFlowList4HomePage(self::THREADCATEGORY_COUNT, self::THREAD_COUNT); $response->statistics = SpaceClient::getInstance()->getStatistics(); //咨询专家 电话咨询列表 $recommendDoctorList = PaymentClient::getInstance()->getRecDoctorList4HomePage(10, 3); $response->recommendDoctorList = $recommendDoctorList; $spaceUserIds = $doctorIds = array(); foreach ($recommendDoctorList as $facultyInfo) { $facultyDoctorInfo = isset($facultyInfo['doctor']) ? $facultyInfo['doctor'] : array(); foreach ($facultyDoctorInfo as $doctor) { $spaceUserIds[] = $doctor->getSpace()->user->id; $doctorIds[] = $doctor->id; } } $productList = $lastOrders = array(); if(!empty($spaceUserIds) && !empty($doctorIds)) { //电话咨询产品 $productList = ProductClient::getInstance()->getProductsBySpaceIds($spaceUserIds, array(ServiceDef::TYPE_TELORDER)); //取最新订单 $lastOrders = PaymentClient::getInstance()->getLatestServiceList($doctorIds); } $response->productList = $productList; $lastOrderGroupBySpace = array(); foreach ($lastOrders as $lastOrder) { if ($lastOrder->getSpace() instanceof Space) { $lastOrderGroupBySpace[$lastOrder->getSpace()->id] = $lastOrder; } } $response->lastOrderGroupBySpace = $lastOrderGroupBySpace; //预约加号 $doctorNumber = PlussignChannelClient::getInstance()->getPlusSignDoctorCount();//全国开通加号医生总数目 $patientNumber = SpaceClient::getInstance()->getPlusSignPatientCount(); $patientOrderList = PatientClient::getInstance()->getPatientOrderList(); $response->doctorNumber = $doctorNumber; $response->patientNumber = $patientNumber; $response->patientOrderList = $patientOrderList; //分享经验 $commentCount = DoctorCommentClient::getInstance()->getCommentCount(); $response->thankListCount = isset($commentCount['letter']) ? $commentCount['letter'] : 0; $response->doctorCommentListCount = isset($commentCount['comment']) ? $commentCount['comment'] : 0; $expList = DAL::get()->find_all_for_top('cureexp', 4); $response->expList = $expList; $thankList = DAL::get()->find_all_for_top('curethankletter', 4); $response->thankList = $thankList; //出诊 停诊信息 $response->hospitalAnnounceList = HospitalClient::getInstance()->getHospitalAnnounceList4HomePage(3); $response->cmslinkList = CmsClient::getInstance()->getCmsLinkList(self::CMS_COUNT); //好大夫动态 $response->latestList = SpaceLogClient::getInstance()->getLatestList(self::LAST_COUNT); $response->images = $this->_images; //礼物动态 $spaceId = 0; $result = PresentClient::getInstance()->showPresentBanner($spaceId, 12, $request->from, array(), false); $response->presentOrders = $result['presentOrders']; //最新专家文章 $limit = self::ARTICLE_COUNT - substr_count(Place::getPlaceContent('haodf_index','wenzhang_url','onlyone'), '<li>'); $articleList = ArticleClient::getInstance()->getArticleList4Index($limit); $response->articleList = $articleList; }/*}}}*/
public function ajaxSearchUser($request, $response) { /*{{{*/ $userName = XString::convertToGbk($request->userName); $patientName = XString::convertToGbk($request->patientName); $patientMobile = $request->patientMobile; $pageId = (int) $request->pageId; $pageSize = (int) $request->pageSize; $startNumber = ($pageId - 1) * $pageSize; $response->pageId = $pageId; $response->pageSize = $pageSize; $userList = array(); if ($userName) { $userList[] = DAL::get()->find_all_by_fld_UserName('User', $userName); } if ($patientName) { $userList[] = UserClient::getInstance()->getUsersByPatientRealName($patientName); } if ($patientMobile) { $patientMobileUserIds = PatientClient::getInstance()->getUserIdsByphoneNumber('Patient', $patientMobile); if (false == empty($patientMobileUserIds)) { $userList[] = DAL::get()->find('User', $patientMobileUserIds); } } $serviceOrderList = array(); $newUserList = array(); foreach ($userList as $key => $userValueList) { foreach ($userValueList as $userId => $user) { $newUserList[$userId] = $user; } } $response->totalPage = (int) ceil(count($newUserList) / $pageSize); $newUserList = array_slice($newUserList, $startNumber, $pageSize, true); if (false == empty($newUserList)) { $serviceOrderList = DAL::get()->find_all_by_userids_and_status('ServiceOrder', array_keys($newUserList), array(ServiceOrder::STATUS_NOPAY)); } $response->newUserList = $newUserList; $response->serviceOrderList = $serviceOrderList; }
/** * @brief 提交二维码诊后报到申请 * @author zjj * @exampleUrl http://dev.mobile-api.haodf.com/patientapi/patientsignin_patientSignin4QRCode?name=TestDay&sex=0&relation=0&birthday=2014-01-18&city=北京&province=北京&xdebug=1 * * @param $name * @param $sex * @param $birthday * @param $province * @param $city * @param $diseaseName * @param $hospitalCaseNO * @param $idcard * @param $spaceId * @param $diseaseId * * @return array('msg') */ public function patientSignin4QRCode($name, $sex, $birthday, $province, $city, $diseaseName, $hospitalCaseNO, $idcard, $spaceId, $diseaseId, $patientId) {/*{{{*/ if ($diseaseName == '') { $this->setErrorCode(802); return 0; } if ($hospitalCaseNO == '') { $this->setErrorCode(803); return 0; } $disease = DAL::get()->find('Disease', $diseaseId); if ($disease->isNull()) { $this->setErrorCode(804); return 0; } $user = DAL::get()->find('user', $this->currentUserId); if ($user->isNull()) { $this->setErrorCode(178); return 0; } if($idcard != '') { if(15 == strlen($idcard)) { $idcard = IdCard::idcard_15to18($idcard); } if(false == IdCard::idcard_checksum18($idcard)) { $this->setErrorCode(312); return 0; } } if ($patientId != '') { $patient = DAL::get()->find('Patient', $patientId); if ($patient->isNull()) { $this->setErrorCode(309); return 0; } }else{ $params = array(); $params['name'] = $name; $params['sex'] = $sex; $params['relation'] = Patient::RELATION_SELF; $params['province'] = $province; $params['city'] = $city; $params['birthday'] = $birthday; $params['mobile'] = $user->mobile; $params['idcard'] = $idcard; $patient = PatientClient::getInstance()->add($user, $params); } $spaceId = $this->filterHttpUrlString($spaceId); $space = DAL::get()->find('Space', $spaceId); if ($space->isNull()) { $this->setErrorCode(144); return 0; } $QRcodePatientSignin = DAL::get()->find_by_QRpatientSign('patientsignin', $space->id, $patient->id); $res = array(); if(false == $QRcodePatientSignin->isNull()) { if($QRcodePatientSignin->isUnaudited()) { $res['msg'] = self::PATIENT_SIGNIN_RES_AUDIT; } } if (empty($res)) { $signinId = PatientSigninClient::getInstance()->addQRCODEPatientSignin($space, $patient, $hospitalCaseNO, $diseaseName, $diseaseId); $newQRCodePatientSignin = DAL::get()->find('patientsignin', $signinId); if ($newQRCodePatientSignin->isNull()) { $this->setErrorCode(801); return 0; } $disease = DAL::get()->find('disease', $diseaseId); PatientFileClient::getInstance()->createPatientHealthApply4QRCode($patient->id, $diseaseId, $disease->name); $res['msg'] = self::PATIENT_SIGNIN_RES_SUC; } $this->content = $res; }/*}}}*/
public function newSetPatient($userId, $patientId, $name, $sex, $province, $city, $idcard, $paperstype, $birthday, $mobile, $relation) {/*{{{*/ $user = DAL::get()->find('user', $userId); error_log('birthday:'.$birthday."\n",3,'/tmp/wap123.log'); $request = new Request(); if($request->os == 'ios' && $request->v == '2.1.0' && $paperstype == '0') { $birthday = substr($birthday, 0, 4)."-".substr($birthday, 4, 2)."-".substr($birthday, 6, 2); } else { $birthday = date('Y-m-d',$birthday); } if ($user->isNull()) { $this->setErrorCode(107); return 0; } if(0 == $paperstype) { if(15 == strlen($idcard)) { $idcard = IdCard::idcard_15to18($idcard); } if(false == IdCard::idcard_checksum18($idcard)) { $this->setErrorCode(312); return 0; } } $patientNew = DAL::get()->find('patient', $patientId); if("" == trim($name)) { $this->setErrorCode(176); return 0; } if("" == trim($birthday)) { $this->setErrorCode(171); return 0; } if("" == trim($sex)) { $this->setErrorCode(172); return 0; } if("" == trim($province)) { $this->setErrorCode(173); return 0; } if("" == trim($city)) { $this->setErrorCode(174); return 0; } if("" == trim($relation)) { $this->setErrorCode(175); return 0; } if(false == XString::isMobile($mobile)) { $this->setErrorCode(110); return 0; } /** 患者不存在,写入一条患者信息 */ if ($patientNew->isNull()) { $birthday = $birthday; $params = array( 'name' => trim($name), 'sex' => trim($sex), 'province' => trim($province), 'city' => trim($city), 'idcard' => trim($idcard), 'paperstype'=> trim($paperstype), 'birthday' => trim($birthday), 'mobile' => trim($mobile), 'relation' => trim($relation), ); $theSame = PatientClient::getInstance()->theSame($user, $params, 'jiahao'); if(false == $theSame) { $patientInfo = PatientClient::getInstance()->add($user, $params, 0, '', '', 'jiahao'); } else { $patientInfo = DAL::get()->find('patient', $theSame); } } else { $info = array(); $info['paperstype'] = trim($paperstype); $info['idcard'] = trim($idcard); $info['name'] = trim($name); $info['mobile'] = trim($mobile); //svc方法中会对info中有的字段会被重新赋值。我们不会更改省和市的字段(客户端获取信息时省市拼接一个字段返回,所以无法区别省市回传) // $info['province'] = trim($province); // $info['city'] = trim($city); $info['birthday'] = trim($birthday); if (false == empty($info)) { PatientClient::getInstance()->modifyInfo($patientNew->id , $info); } $patientInfo = $patientNew; } $patient = array(); $patient['patientId'] = $patientInfo->id; $this->content = $patient; }/*}}}*/
public function bindPatient($request, $response) {/*{{{*/ $order = DAL::get()->find('telorder', $request->orderId); DBC::requireTrue($order->owner->relatedObject->id == $this->_newUser->id, '无权访问此页'); $patientInfos = $request->patient; if (isset($patientInfos['id']) && $request->patient['id'] > 0) { $patient = DAL::get()->find('patient', $request->patient['id']); } else { $birthday = "{$request->dateyear}-{$request->datemonth}-{$request->dateday}"; $patientInfo['name'] = $request->patient['name']; $patientInfo['sex'] = $request->patient['sex']; $patientInfo['province'] = $request->patient['province']; $patientInfo['city'] = $request->patient['city']; $patientInfo['birthday'] = $birthday; $patientInfo['relation'] = $request->patient['relation']; $patientInfo['mobile'] = $request->patient['mobileOrEmail']; $patient = PatientClient::getInstance()->add($order->owner->relatedObject, $patientInfo); } TelOrderClient::getInstance()->bindPatient($order, $this->_newUser, $patient); $response->setRedirect($response->router->urlfor('payment/paymessage', array('orderId'=>$order->id))); return parent::DIRECT_OUTPUT; }/*}}}*/
public function choosePatient($request, $response) {/*{{{*/ $patientId = isset($request->patient['id'])?$request->patient['id']:''; $patient = DAL::get()->find('patient', $patientId); if($patient->isNull()) { $patientParams = $request->patient; $patientParams['birthday'] = $request->dateyear."-".$request->datemonth."-".$request->dateday; $patientParams['mobile'] = $request->patient['mobileOrEmail']; $patient = PatientClient::getInstance()->add(UserClient::getInstance()->getCurrentUser(), $patientParams); } $doctorPatientRef = FlowClient::getInstance()->getValidFlowRef($request->spaceId, $patient->id); $this->getPatientSigninBySession($request); $space = DAL::get()->find('space', $request->spaceId); if(false == $this->isPatientSignin($space, $patient->id)) { if('signinbeforelogin' == $request->from) { $request->patientId = $patient->id; $this->doPatientSignin($request, $response); } elseif($doctorPatientRef->isTreated()) { $response->setRedirect($response->router->urlfor('user/patientsigninaftervisit', array('spaceId' => $request->spaceId, 'patientId' => $patient->id))); } else { $response->setRedirect($response->router->urlfor('user/patientsigninbeforevisit', array('spaceId' => $request->spaceId, 'patientId' => $patient->id))); } } }/*}}}*/
private function getPatient($request, User $user) {/*{{{*/ $patients = $user->patients; $patient = array_shift($patients); if (empty($patient)) { $patient = $request->patient; $params = array( 'name' => $patient['name'], 'relation' => 0, 'sex' => $patient['sex'], 'age' => $patient['age'], 'province' => $patient['province'], 'city' => $patient['city'], 'phone' => $user->phone, 'mobile' => isset($user->mobile) ? $user->mobile : $patient['mobile'] ); return PatientClient::getInstance()->add($user, $params); } else { return $patient; } }/*}}}*/
/** 显示患者上传的所有病例*/ public function showPatientUploadAttachment($request, $response) { /*{{{*/ $patientId = $request->patientId; $patientCaseId = $request->patientCaseId; $response->patientId = $patientId; $response->patientCaseId = $patientCaseId; $list = $this->getPatientCaseandBreadCrumbNavigation($patientCaseId, $patientId); $breadcrumbNavigation = $list['breadcrumbNavigation']; $patient = DAL::get()->find('patient', $patientId); if (false == $patient->isNull()) { list($patientAttachmentList, $pageInfo) = PatientClient::getInstance()->getPatientAttachmentList($patient, $request->pageId, 10); $response->patientAttachmentss = $patientAttachmentList; $url = "/adminpatient/showpatientuploadattachment?patientId={$patientId}&pageId="; $response->pageLink = PageNav::getNavLink(PageNav::getPageNavTemplateForSpace("{$url}"), $pageInfo['nowpage'], $pageInfo['pagesize'], $pageInfo['total']); } else { $response->patientAttachmentss = array(); $response->pageLink = ''; } $response->breadcrumbNavigation = $breadcrumbNavigation; }
public function newPhoneCallOrderWithMultiPatients($userId, $doctorId, $contractId, $phoneNumber, $content, $deviceType, $patientId, $name, $birthday, $sex, $province, $city, $relation, $payType) {/*{{{*/ if (in_array($patientId, self::$patientIds)) { $this->setErrorCode(1000); return 0; } if(false == XString::isMobile(trim($phoneNumber))) { $this->setErrorCode(110); return 0; } $product = DAL::get()->find('product', $contractId); if($product->isNull()) { $this->setErrorCode(300); return 0; } //没有电话分成合同 if($product->contract->isNull() || $product->contract->isInvalid()) { $this->setErrorCode(333); return 0; } if("" == trim($content)) { $this->setErrorCode(302); return 0; } $user = DAL::get()->find('user', $userId); if ($user->isNull() || $user->id == 0) { $this->setErrorCode(107); return 0; } $source = Intention::SRC_IOS; if(strtolower($deviceType) == 'iphone') { $source = Intention::SRC_IOS; } else if(strtolower($deviceType) == 'ipad') { $source = Intention::SRC_IPAD; } else if(strtolower($deviceType) == 'android') { $source = Intention::SRC_ANDROID; } $expectedtimeStr = "越快越好"; //创建或更新patient if(0 == $patientId) { $birthday = date('Y-m-d',$birthday); if("" == trim($name)) { $this->setErrorCode(176); return 0; } if("" == trim($birthday)) { $this->setErrorCode(171); return 0; } if("" == trim($sex)) { $this->setErrorCode(172); return 0; } if("" == trim($province)) { $this->setErrorCode(173); return 0; } if("" == trim($city)) { $this->setErrorCode(174); return 0; } if("" == trim($relation)) { $this->setErrorCode(175); return 0; } $patientInfo = array(); $patientInfo['name'] = $name; $patientInfo['sex'] = $sex; $patientInfo['province'] = $province; $patientInfo['city'] = $city; $patientInfo['birthday'] = $birthday; $patientInfo['relation'] = $relation; $patientInfo['mobile'] = $phoneNumber; $params = $patientInfo; $patient = PatientClient::getInstance()->add($user, $params); } else { $modifyPatientInfo = array(); $modifyPatientInfo['mobile'] = $phoneNumber; $patientId = $patientId; $patient = DAL::get()->find('patient', $patientId); PatientClient::getInstance()->modifyInfo($patient->id , $modifyPatientInfo); } $intention = IntentionClient::getInstance()->add4Tel($product, $patient, $expectedtimeStr, $content, $source); $this->content = array('id' => $intention->id); }/*}}}*/
public function addPatient($request, $response) {/*{{{*/ $this->checkEmptyDiseaseInfos($response); $patientInfo = array(); $birthday = "{$request->dateyear}-{$request->datemonth}-{$request->dateday}"; $patientInfo['birthday'] = $birthday; $patientInfo['name'] = XString::convertUTF8ToGBK($request->patientname); $patientInfo['sex'] = $request->sex; $patientInfo['province'] = XString::convertUTF8ToGBK($request->province); $patientInfo['city'] = XString::convertUTF8ToGBK($request->city); $patientInfo['relation'] = $request->relation; $patientInfo['mobile'] = $request->mobile; $params = $patientInfo; $patientId = $request->existedPatientId; if($patientId) { PatientClient::getInstance()->modifyInfo($patientId, $params); $patient = DAL::get()->find('Patient', $patientId); AskSessionInfo::bindPatient($patient->id); AskSessionInfo::flushPatientInfos(); } else if($this->user instanceof User) { $patient = PatientClient::getInstance()->add($this->user, $params); AskSessionInfo::bindPatient($patient->id); AskSessionInfo::flushPatientInfos(); } $response->setRedirect($response->router->urlfor('newcase/attachexperience')); }/*}}}*/
public function saveOrderInfo($request, $response) {/*{{{*/ DBC::requireTrue(isset($_SESSION['telOrderInfo']['productId']), '选择服务内容失效,请返回重新选择'); $telOrderInfo = array(); DBC::requireFalse(false == XString::isMobile($request->mobile), '您填写的手机号码格式不正确!'); $cloneSession = $_SESSION; $_SESSION['telOrderInfo']['mobile'] = $request->mobile; $_SESSION['telOrderInfo']['productId'] = $request->productId; $_SESSION['telOrderInfo']['desc'] = XString::convertUTF8ToGBK($request->desc); $_SESSION['telOrderInfo']['disease'] = XString::convertUTF8ToGBK($request->disease); //监控日志 电话咨询病情描述为空的。疾病信息为空的 PAM-6749 djf $this->watchEmptyContent($request, $cloneSession); $mobile = $request->mobile; if ($this->user->isNull()) { //用户不存在,则创建user并且登录 $res = UserClient::getInstance()->createRandUser($mobile); if($res['user'] == '') { $currentUrl = $response->router->urlfor('tel/telorderform', array('productId'=> $_SESSION['telOrderInfo']['productId'])); $response->setRedirect($response->router->urlfor('user/login', array('forward' => $currentUrl))); return; } //自动登录 $this->user = $res['user']; UserClient::getInstance()->login($this->user->name, $res['password']); $_SESSION['user']['userName'] = $this->user->name; $_SESSION['user']['password'] = $res['password']; } $this->watchAndEmailUserInfo($request, $this->user); DBC::requireTrue(isset($_SESSION['telOrderInfo']['patientInfo']) || isset($_SESSION['telOrderInfo']['patientId']), '患者信息失效,请重新选择'); $patientId = 0; if (isset($_SESSION['telOrderInfo']['patientId']) && is_numeric($_SESSION['telOrderInfo']['patientId'])) { $patientId = $_SESSION['telOrderInfo']['patientId']; } if (isset($_SESSION['telOrderInfo']['patientInfos'])) { foreach ($_SESSION['telOrderInfo']['patientInfos'] as $info) { $existedPatientId = $_SESSION['telOrderInfo']['existedPatientId']; if($existedPatientId) { PatientClient::getInstance()->modifyInfo($existedPatientId, $info); $patientId = $existedPatientId; } else { $newPatient = PatientClient::getInstance()->add($this->user, $info); if (isset($_SESSION['telOrderInfo']['patientId']) && $info['id'] == $_SESSION['telOrderInfo']['patientId']) { $patientId = $newPatient->id; } } } } $response->setRedirect($response->router->urlfor('tel/newtelorder', array('patientId'=>$patientId))); }/*}}}*/
public function modifySinglePatientInfo($request, $response) { /*{{{*/ $patientId = $request->patientId; $patient = DAL::get()->find('Patient', $patientId); $params = array(); $birthday = "{$request->dateyear}-{$request->datemonth}-{$request->dateday}"; $params['name'] = $request->name; $params['sex'] = $request->patientSex; $params['paperstype'] = $request->paperstype; $params['idcard'] = $request->getRequest('idCard', ''); $params['province'] = $request->province; $params['city'] = $request->city; $params['birthday'] = $birthday; $params['relation'] = $request->relation; $params['mobile'] = $request->mobile; $params['phone'] = $request->getRequest('phone', ''); $params['backupPhone'] = $request->getRequest('backupPhone', ''); PatientClient::getInstance()->modifyInfo($patient->id, $params); S3LogClient::getInstance()->add($this->curInspector, $patient->getLogable()->action(PatientLog::ACTION_MODIFY_PATIENT, $this->addPatientLogInfo($params, $patient))); $msg = "修改成功"; $url = $response->router->urlfor('intention/showpatientdetail', array('patientId' => $patientId, 'simpleCheck' => $request->getRequest('simpleCheck', 0), 'msg' => $msg)); $response->setRedirect($url); }
private function getPatient($request) {/*{{{*/ if (isset($request->patient['id']) && $request->patient['id'] == DoctorComment::NEED_PATIENT_FALSE) { return 0; } else if (isset($request->patient['id']) && $request->patient['id']) { $patient = DAL::get()->find('patient', $request->patient['id']); if ($patient instanceof Patient) { return $patient->id; } } else if ($this->curUser instanceof user) { $params = array( 'name' => $request->patient['name'], 'sex' => $request->patient['sex'], 'relation' => $request->patient['relation'], 'province' => $request->patient['province'], 'birthday' => $request->dateyear.'-'.$request->datemonth.'-'.$request->dateday, 'city' => $request->patient['city'], 'mobile' => $request->patient['mobileOrEmail'] ); $patient = DAL::get()->find('Patient', $request->existedPatientId); if ($patient instanceof Patient && $patient->user->id == $this->curUser->id) { PatientClient::getInstance()->modifyInfo($patient->id, $params); } else { $patient = PatientClient::getInstance()->add($this->curUser, $params); } if ($patient instanceof Patient) { return $patient->id; } } return 0; }/*}}}*/
public function addPatient($request, $response) {/*{{{*/ $space = DAL::get()->find('space', $request->spaceid); DBC::requireFalse($space->isNull(), '找不到该医生,请确认医生id'); $response->space = $space; $response->userId = $request->userid; $userId = $request->userid; $spaceId = $request->spaceid; $name = $request->name; $diseaseName = $request->diseaseName; $age = $request->age; $province = $request->province; $city = $request->city; $relation = $request->relation; $sex = $request->sex; $user = DAL::get()->find('user', $userId); $patient = PatientClient::getInstance()->addOrMergePatient($user, $name, "", $sex, $age, $province, $city, "", "", "", $relation); $url = $response->router->urlfor('weixin/finishsignin', array('patientid'=>$patient->id, 'spaceid'=>$spaceId,'disease'=>$diseaseName)); $response->setRedirect($url); }/*}}}*/
public function success4Signin($request, $response) { $response->title = "提交申请成功"; $attachIds = explode(',', $request->attachIds); $space = DAL::get()->find('space', $request->spaceId); $patient = DAL::get()->find('patient', $request->patientId); DBC::requireFalse($patient->isNull(), '无效的patientId'); DBC::requireFalse($space->isNull(), '无效的spaceId'); $mobile = isset($_SESSION['newSignin']['mobile']) ? ($_SESSION['newSignin']['mobile']) : ''; $diseaseName = isset($_SESSION['newSignin']['diseaseName']) ? ($_SESSION['newSignin']['diseaseName']) : ''; PatientClient::getInstance()->modifyPatientMobile($patient->id, $mobile); $canSignin = 0; $oldSignins = DAL::get()->find_all_by_spaceid_and_patientid_and_status('patientsignin', $space->id, $patient->id, PatientSignin::STATUS_UNAUDITED); if(empty($oldSignins)) { $signinId = PatientSigninClient::getInstance()->addOrdinaryPatientSignin($space->id, $patient->id, array('diseaseName' => $diseaseName)); $newQRCodePatientSignin = DAL::get()->find('patientsignin', $signinId); if ($newQRCodePatientSignin->isNull()) { $this->_exit404(); return; } PatientSigninClient::getInstance()->addPatientSigninHelpInfo($signinId, "", $attachIds, PatientSigninHelpInfo::TYPE_ATTACH); $canSignin = 1; } $response->space = $space; $response->canSignin = $canSignin; if (!session_id()) { session_start(); } session_unset(); session_destroy(); }
/** * addOrder * * @param mixed $request * @param mixed $response * @author mq <*****@*****.**> * @access public * @return void */ public function addOrder($request, $response) { /*{{{*/ $request->convertToGBK(); $mobile = $request->buyerPhone; $product = DAL::get()->find('Product', $request->saId); DBC::requireFalse($product->isNull(), "产品不能为空"); $user = $this->user; $patientId = 0; $patientId = $request->curPatientId4Tel; if (empty($patientId) && isset($request->patient['id'])) { $patientId = $request->patient['id']; } $rand = 0; //患者不存在情况,需创建患者 if (empty($patientId)) { //用户不存在,则创建user并且登录 if ($user->isNull()) { $rand = 1; setcookie("MyRand", "1", 0); $res = UserClient::getInstance()->createRandUser($mobile); $user = $res['user']; User::sendRegisterMsg($user->id); //自动登录 UserClient::getInstance()->login($res['user']->name, $res['password']); } $patientInfo = array(); $birthday = "{$request->dateyear}-{$request->datemonth}-{$request->dateday}"; $patientInfo['name'] = $request->patient['name']; $patientInfo['sex'] = $request->patient['sex']; $patientInfo['province'] = $request->patient['province']; $patientInfo['city'] = $request->patient['city']; $patientInfo['birthday'] = $birthday; $patientInfo['relation'] = $request->patient['relation']; $patientInfo['mobile'] = $mobile; $params = $patientInfo; $patient = PatientClient::getInstance()->add($user, $params); } else { //用户不存在,则创建user并且登录 $modifyPatientInfo = array(); $existedPatientId = $request->existedPatientId; if (false == empty($existedPatientId)) { $modifyPatientInfo['name'] = $request->patient['name']; $modifyPatientInfo['sex'] = $request->patient['sex']; $modifyPatientInfo['province'] = $request->patient['province']; $modifyPatientInfo['city'] = $request->patient['city']; $birthday = "{$request->dateyear}-{$request->datemonth}-{$request->dateday}"; $modifyPatientInfo['birthday'] = $birthday; $modifyPatientInfo['relation'] = $request->patient['relation']; } $modifyPatientInfo['mobile'] = $mobile; $patient = DAL::get()->find('patient', $patientId); PatientClient::getInstance()->modifyInfo($patient->id, $modifyPatientInfo); } //期望时间 $expectedtimes = ''; if ($request->expectedtime == 'other') { $expectedtimes = $request->expectedtimeInput; } else { $expectedtimes = $request->expectTimes; } $expectedtimeStr = ""; if (false == empty($expectedtimes)) { foreach ($expectedtimes as $expectedtime) { $expectedtimeStr .= $expectedtime . ' '; } } $inconvenientTime = $request->inconvenientTime; if (false == empty($inconvenientTime)) { $expectedtimeStr .= '方便时间为:' . $request->inconvenientTime; } $src = Intention::SRC_WEB; $intention = IntentionClient::getInstance()->add4Tel($product, $patient, $expectedtimeStr, $request->diseaseDescription, $src, $request->disease); if ($intention->needPay()) { $response->setRedirect($response->router->urlfor('payment/showpaytype', array('sourceId' => $intention->id, 'sourceType' => "intention", 'rand' => $rand))); } else { $response->setRedirect($intention->getUrl()); } return parent::DIRECT_OUTPUT; }
public function addPatient($request, $response) {/*{{{*/ $this->checkEmptyDiseaseInfos($response); $birthday = "{$request->dateyear}-{$request->datemonth}-{$request->dateday}"; $patientInfo = array(); $patientInfo['name'] = $request->patientName; $patientInfo['sex'] = $request->sex; $patientInfo['province'] = $request->province; $patientInfo['city'] = $request->city; $patientInfo['birthday'] = $birthday; $patientInfo['relation'] = $request->relation; $patientInfo['mobile'] = $request->mobile; $patientInfo['phone'] = $request->phone; $patientInfo['backupPhone'] = $request->backupPhone; $params = $patientInfo; if($this->_newUser->isNull()) { throw new BizException("不能在未登录的情况下添加患者"); } $patientId = $request->existedPatientId; if($patientId) { PatientClient::getInstance()->modifyInfo($patientId, $params); $patient = DAL::get()->find('Patient', $patientId); } else { $patient = PatientClient::getInstance()->add($this->_newUser, $params); } AskSessionInfo::bindPatient($patient->id); AskSessionInfo::flushPatientInfos(); // $askInfo = AskSessionInfo::getAskInfo(); $treated = AskSessionInfo::getTreatedHospital(); if(false == $treated) { $response->setRedirect($response->router->urlfor('newcase/askfinishpagenottreated')); } else { $response->setRedirect($response->router->urlfor('newcase/askfinishpage')); } }/*}}}*/
public function askPost($request, $response) {/*{{{*/ $preHostpital = $request->getRequest('case_prehospital', ''). " ".$request->getRequest('case_prekeshi', ''); $isLogin = UserClient::getInstance()->isLogin(); if (false == $isLogin) { $username = $request->patient['mobileOrEmail']; $password = $request->password; $this->_newUser = UserClient::getInstance()->register($username, $password); User::sendRegisterMsg($this->_newUser->id); $this->_newUser = UserClient::getInstance()->login($username, $password, false); } if ($this->_newUser->isNull()) { throw new BizException('对不起,您的密码输入有误。建议您到好大夫在线取回密码'); } $spaceUserId = $request->getRequest('host_user_id', 0); $askSpace = DAL::get()->find('space', $spaceUserId); if ($askSpace->isNull()) { $askSpace = DAL::get()->find('space', 0); } $options = array(); $options['title'] = $request->getRequest('case_title', ''); $options['disease'] = $request->getRequest('case_disease_tag', ''); $options['prehospital'] = $preHostpital; $options['ExpireAction'] = $request->getRequest('case_expire_action'); //post content; for unity $contents = ""; foreach(IntentionContentsFix::$postRule as $id => $item) { $textAreaName =IntentionContentsFix::$textAreaNames[$id]; $contents .= IntentionContentsFix::$postRule[$id]."\n".$request->$textAreaName; } $options['content'] = $contents; $options['allowSpaceReplyCount'] = '3'; $options['attachmentIds'] = $request->getRequest('post_patient_attachment_ids', ''); $caseTypeId = 0; $options['facultyId'] = $request->getRequest('host_user_faculty_id', 0); $out = array(); $res = $this->_userIsAllowAsk($askSpace, $out, $response); if (false === $res) { return false; } $user = $this->_newUser; $patients = $user->patients; $patientInfos = array_shift($patients); if ($patientInfos == null || $patientInfos->isNull()) { $patient = $request->patient; if (empty($patient)) { throw new BizException('系统忙,请重试'); } $patient['birthday'] = $request->dateyear."-".$request->datemonth."-".$request->dateday; $params = array( 'name' => $patient['name'], 'sex' => $patient['sex'], 'relation' => $patient['relation'], 'province' => $patient['province'], 'birthday' => $patient['birthday'], 'city' => $patient['city'], 'mobile' => $patient['mobileOrEmail'], ); $patient = PatientClient::getInstance()->add($user, $params); } else { $patient = $patientInfos; } if ($this->_newUser->isNull()) { error_log(print_r(debug_backtrace(), true), 3, '/tmp/ask_user_null.log'); throw new BizException('系统忙,请重试'); } $src = $_SERVER['HTTP_HOST']; $hospital = $options['prehospital']; $disease = $options['disease']; $content = $options['content']; $title = $options['title']; $attachmentIds = explode(',', $options['attachmentIds']); $askSpace = $askSpace; $intention = IntentionClient::getInstance()->add4ThreadFromWap($patient, $askSpace, $src, $hospital, $content, $attachmentIds, $disease, $title); if (false == $intention->isNull()) { $response->setRedirect($response->router->urlfor('hzhospitalthread/askcomplete', array('id'=>$intention->id))); } else { throw new BizException('提交咨询出错,请重试'); } }/*}}}*/
public function patientSelect($request, $response) {/*{{{*/ $target = $request->target; $from = $request->from; if ($from <> 'comment' && $from <> 'telorder' && false == $this->user->hasPatient()) { $response->setRedirect($target); } $patient = array(); $list = Patient::$compareArr; foreach ($list as $item) { $patient[$item] = $request->$item; } $response->thePatient = $patient; $response->patientId = PatientClient::getInstance()->theSame($this->user, $patient); $response->user = $this->user; $response->target = $target; $response->from= $from; }/*}}}*/