public function newPost($request, $response) { /*{{{*/ $verifyOk = Captcha::verify($request->verifyStr, XIpLocation::getIp(), 'article', $request->article_id, $request->token); DBC::requireTrue($verifyOk, "您输入的验证码有误!"); //禁用词检查 $title = $request->title; $result = DoctorClient::getInstance()->getProfanityCheck($title); DBC::requireFalse($result['CODE'] < 0, "文章 评论添加失败"); DBC::requireFalse($result['CODE'] == 2, "文章 评论添加成功"); $title = $result['CONTENT']; $content = htmlspecialchars($request->getRequest('content'), ENT_COMPAT | ENT_HTML401, 'ISO-8859-1'); $result = DoctorClient::getInstance()->getProfanityCheck($content); DBC::requireFalse($result['CODE'] < 0, "文章 评论添加失败"); DBC::requireFalse($result['CODE'] == 2, "文章 评论添加成功"); $content = $result['CONTENT']; $article = DAL::get()->find('article', $request->article_id); $feilds = array(); $feilds['ip'] = XIpLocation::getIp(); $feilds['ipLocation'] = XIpLocation::getLocationArea(); $userId = $this->user->isNull() == false ? $this->user->id : ''; $comment = ArticleClient::getInstance()->addComment($article, $userId, $title, $content, $feilds); squid::clean($article->getUrl(), true); $this->message('您发表的评论已经提交,待网站审核通过后即可展示。', $response); }
public function before($context) {/*{{{*/ parent::before($context); $group = DAL::get()->find_parent('FinanceInspectGroup'); DBC::requireTrue($group->among($context->response->curInspector), '你没有权限访问'); }/*}}}*/
public function detail($request, $response) {/*{{{*/ $threadId = (int)$request->case_id; $criticalNum = 100*100*1000; $correctNum = 100*100*100; $threadId = $threadId > $criticalNum ? $threadId : $threadId-$correctNum; $proposal = DAL::get()->find('proposal', $threadId); if(false == $proposal->isNull()) { $response->setRedirect($proposal->getTouchUrl()); return 0; } else { $intention = DAL::get()->find('intention', $threadId); if(false == $intention->isNull()) { $response->setRedirect($intention->getTouchUrl()); return 0; } else { DBC::requireTrue(false, 'Êý¾ÝÎÊÌâ'); } } }/*}}}*/
public function addFlowChargeOrder($request, $response) { /*{{{*/ $refId = $request->getRequest('refid', true); $ref = DAL::get()->find('DoctorPatientRef', $refId); $isdpRef = $ref instanceof DoctorPatientRef; $isUserSelf = $ref->user->id == $this->user->id; $isOpenCharge = $ref->space->isChargeOpened(); DBC::requireTrue($isdpRef && $isUserSelf && $isOpenCharge, '对不起,您不能预充值'); if ($this->checkCanCharge($ref)) { $this->message("抱歉!现在不能购买。您已经提前购买了{$ref->space->name}医生的3次指导机会,为避免资源浪费,请在使用后再次够买。", $response, array('text' => '点击这里继续', 'url' => $ref->getUrl())); } else { $product = ProductClient::getInstance()->getDoctorChargeFlowProduct($ref->space); $charge = $product->salePrice; $cashAccount = $this->user->getCashAccount(); if ($cashAccount->amount >= $charge) { $serviceOrder = ServiceOrderClient::getInstance()->create($ref, $product, $this->user); if (false == $serviceOrder->isNull()) { ServiceOrderClient::getInstance()->pay($serviceOrder, $this->user); $serviceOrder = DAL::get()->find('serviceOrder', $serviceOrder->id, true); } if ($serviceOrder->isPaid()) { $response->setRedirect($serviceOrder->successUrl()); return parent::DIRECT_OUTPUT; } } $url = 'http://' . URL_PREFIX . 'passport.haodf.com/telpayment/showtelaccount'; $this->message('您的余额不足,不能购买,请充值后重新购买', $response, array('text' => '去充值', 'url' => $url)); } }
public function before($context) { $userId = UserClient::getInstance()->getCheckedSeed('id'); $user = DAL::get()->mustFind('user', $userId); $inspector = DAL::get()->find_actived('inspector', $user); $hasClaimPaymentPower = $inspector->isInRenLingHuiKuanGroup(); DBC::requireTrue($hasClaimPaymentPower, '您没有认领汇款权限'); }
public function saveCurrentAppUrl($request, $response) { if (!$this->curOperator->isOperatorAdmin()) { throw new TelConfException('抱歉,此座席无权限查看!'); } DBC::requireTrue(in_array('haodfhw', array('byteh', 'haodfhw', 'miaoqing1983', 'zhb110good')), '没有权限,亲!'); PhoneConferenceClient::getInstance()->updateProviderCurrentAppUrl($request->callcenterProviderId, $request->currentAppUrl); $response->setRedirect('callcenterprovider'); }
public function getPayItemList($pageNo, $pageSize, $startTime, $endTime) { /*{{{*/ DBC::requireTrue(XDateTime::getSecondDiffDesc($endTime, $startTime) < 3600, "查询时间不能超过一天"); $parameter = array("service" => "account.page.query", "partner" => $this->partner, "_input_charset" => $this->_input_charset, "page_no" => $pageNo, "page_size" => $pageSize, "gmt_start_time" => $startTime, "gmt_end_time" => $endTime, "logon_id" => "", "trade_no" => "", "merchant_out_order_no" => "", "deposit_bank_no" => "", "trans_code" => ""); $alipay = new alipay_service($parameter, $this->security_code, $this->sign_type); $url = $alipay->create_url(); return $url; }
public function before($context) { parent::before($context); $flowGroup = DAL::get()->find_parent('FlowPostInspectGroup'); $followupGroup = DAL::get()->find_parent('followupPostInspectGroup'); DBC::requireTrue($flowGroup->among($context->response->curInspector) || $followupGroup->among($context->response->curInspector), '你没有权限访问'); $userInfo = $context->request->getCookie('userinfo'); $context->response->auditor = DAL::get()->find_by_userid('auditor', $userInfo['id']); }
private function checkCacheConfigs($configs) { /*{{{*/ foreach ($configs as $type => $servers) { foreach ($servers as $i => $server) { DBC::requireTrue(isset($server['host']), "memcache {$type} type[{$i}][host] not defined"); DBC::requireTrue(isset($server['port']), "memcache {$type} type[{$i}][port] not defined"); } } }
public function modifyZhiJiaPost($request, $response) { /*{{{*/ $projectSupport = DAL::get()->find('ProjectSupport', $request->projectSupportId); DBC::requireTrue($projectSupport instanceof ProjectSupport, "不存在该支架"); $params = $request->vars; ProjectInterviewClient::getInstance()->modifyZhiJia($projectSupport->id, $params); $preMsg = "支架 " . $projectSupport->getCodeDesc() . " 修改成功"; $response->setRedirect($response->router->urlfor('projectsupportmgr/modifyzhijia', array('preMsg' => $preMsg, 'projectSupportId' => $projectSupport->id))); }
public function modifyPost($request, $response) { /*{{{*/ $projectAntithromboticDrug = DAL::get()->find('ProjectAntithromboticDrug', $request->projectAntithromboticDrugId); DBC::requireTrue($projectAntithromboticDrug instanceof ProjectAntithromboticDrug, "²»´æÔڸüÈÍù/¿¹Ë¨Ò©ÎïÖÎÁÆ"); $params = $request->vars; ProjectInterviewClient::getInstance()->modifyAntithromboticDrug($projectAntithromboticDrug->id, $params); $preMsg = "¼ÈÍù/¿¹Ë¨Ò©ÎïÖÎÁÆ " . $projectAntithromboticDrug->getDrugNameDesc() . " Ð޸ijɹ¦"; $response->setRedirect($response->router->urlfor('projectantithromboticdrugmgr/modify', array('preMsg' => $preMsg, 'projectAntithromboticDrugId' => $projectAntithromboticDrug->id))); }
public function before($context) { parent::before($context); $group = DAL::get()->find_parent('PatientClubInspectGroup'); DBC::requireTrue($group->among($context->response->curInspector), '你没有权限访问'); $userInfo = $context->request->getCookie('userinfo'); $auditor = DAL::get()->find_by_userid('auditor', $userInfo['id']); if ($context->action == 'exportcontacts' && false == in_array($auditor->user->name, self::$exportContactsAuditor)) { throw new BizException('你没有权限访问'); } }
public function listOfFunpoint4Mv($request, $response) { $deleted = $request->deleted; $response->deleted = isset($deleted)?$deleted:-1; $funpointid = $request->funpointid; $funpoint = Funpoint::getById($funpointid); DBC::requireTrue($funpoint instanceof Funpoint,'功能点不存在,id='.$funpointid); $response->funpoint = $funpoint; }
public function before($context) { parent::before($context); $userInfo = $context->request->getCookie('userinfo'); $inspector = DAL::get()->find_by_userid('inspector', $userInfo['id']); $user = DAL::get()->find('user', $userInfo['id']); DBC::requireTrue(Inspector::isInSpector($user), '你没有权限访问'); $leaderGroup = DAL::get()->queryBuAndSaleLeaderIdAndAdmin("Inspector"); DBC::requireTrue(in_array($inspector->id, $leaderGroup), "没有操作权限!"); $context->response->curInspector = $inspector; }
public function updatePost($request, $response) { /*{{{*/ $categoryName = $request->categoryName; DBC::requireTrue($categoryName, "类别名不可为空!"); $isSuccess = ArticleClient::getInstance()->modifyArticleCategory($request->categoryId, array('name' => $categoryName)); if ($isSuccess) { $this->message('文章分类 ' . $categoryName . ' 修改成功', $response); } else { $this->message('修改失败,请稍后重试', $response); } }
public function addProjectTransfusionPost($request, $response) { /*{{{*/ //检查角色 $this->myProjectOperator->checkAuthOrQuit('insert'); $event = DAL::get()->find('ProjectBleedingEvent', $request->eventId); DBC::requireTrue($event instanceof ProjectBleedingEvent, "不存在该出血事件"); $params = $request->vars; $transfusionId = ProjectBleedingEventClient::getInstance()->addProjectTransfusion($event->id, $params); $preMsg = $transfusionId . " 添加成功"; $response->setRedirect("/projectbleedingeventmgr/modifyprojecttransfusion?projectBleedingEventId=" . $event->id . "&preMsg=" . $preMsg); }
public function hold400TelConference($request, $response) {/*{{{*/ $orderid = $request->orderid; $duration = $request->duration; $adminphone = $request->adminphone; $patientphone = $request->patientphone; $patientphone1 = $request->patientphone1; $patientphone2 = $request->patientphone2; $spacephone1 = $request->spacephone1; $spacephone2 = $request->spacephone2; $spacephone3 = $request->spacephone3; $adminUserId = $request->adminuserid; $authKey = $request->authkey; $phones = array($adminphone, $patientphone, $patientphone1, $patientphone2, $spacephone1, $spacephone2, $spacephone3); $teleconf = MeetingClient::getInstance()->getInitTeleconf($orderid, $phones); $controlButton = TeleconfControlButton::init($teleconf); $teleconf = $controlButton->teleconf; //权限判断 只有创建这个会议的人才可以重新开启此订单 if (false == $teleconf->isNull()) { DBC::requireTrue($teleconf->userId == $adminUserId, "您没有权限操作这个会议, 请联系管理员(执行人:{$teleconf->adminUserName})"); } $response->teleconf = $teleconf; $response->controlButton = $controlButton; if ($teleconf->isNull()) { $admin = new NullEntity(); $partner1 = new NullEntity(); $partner2 = new NullEntity(); $errorMsgs = array(); } else { $admin = $teleconf->getPartnerByRole(TeleconferencePartner::ADMIN); $partner1 = $teleconf->getPartnerByRole(TeleconferencePartner::PARTNER1); $partner2 = $teleconf->getPartnerByRole(TeleconferencePartner::PARTNER2); $errorMsgs = MeetingClient::getInstance()->getErrorMsgs($teleconf); } $response->admin = $admin; $response->partner1 = $partner1; $response->partner2 = $partner2; if (false == $admin->isNull()) { $phones[] = $admin->phone; } $errorMsgs = $this->checkPhoneNumber($phones, $errorMsgs); $response->errorMsgs = $errorMsgs; $phoneStatus = MeetingClient::getInstance()->getPhonesStatusAndTransByConfId($teleconf, $phones); $response->phoneStatus = $phoneStatus; }/*}}}*/
public function modifyPost($request, $response) { $taskItemId = $request->taskItemId; $taskItem = TaskItem::getById($taskItemId); DBC::requireTrue($taskItem instanceof TaskItem,"任务项 {$taskItemId} 不存在"); UsecaseClient::getInstance()->modifyTaskItem($taskItem->id,$request->result,$request->bugInfo); $taskItem = DAL::get()->find('taskitem', $taskItemId,true); $preMsg = "{$taskItem->usecase->id} 执行结果:{$taskItem->resultDesc}"; $response->setRedirect($response->router->urlfor('taskitem/next',array('preTaskItemId'=>$taskItem->id,'preMsg'=>$preMsg))); }
public function ajaxSetDoctorCount($request, $response) { /*{{{*/ $request->convertToGbk(); $type = $request->type; $count = $request->count; DBC::requireNotEmptyString($type, 'type不能为空'); DBC::requireTrue(is_numeric($count), '医生数量必须是数值'); DBC::requireNotEmptyString($request->diseasePageId, 'diseasepageid不能为空'); DiseasePageClient::getInstance()->setDoctorCount($request->diseasePageId, $type, $count); echo 'ok'; return parent::DIRECT_OUTPUT; }
public function showDetail($request, $response) {/*{{{*/ DBC::requireNotEmptyString($request->id, "ID不能为空!"); DBC::requireTrue(class_exists($request->type, "无效的病历类型!")); $source = DAL::get()->find($request->type, $request->id); if ($source->isNull()) { throw new BizException('病历资料不存在!'); } $response->bingliSet = BingLiDtoClient::getInstance()->getBingLiByRelatedObj($source); $response->patient = $source->patient; $response->callback = $request->callback; }/*}}}*/
public function checkIsAbleToRun() { DBC::requireTrue(file_exists($this->filePath), "当然命令不可执行, 因为 $this->filePath 不存在"); $filename = explode(dirname($this->filePath).'/', $this->filePath); $arr = pathinfo($this->filePath); $filename = $arr['basename']; //同时要去掉grep的和crontab自身 $grepCommand = "ps aux | grep $filename | grep -v 'grep' | grep -v '/bin/sh -c'"; $result = exec($grepCommand, $output); DBC::requireTrue($this->max >= count($output), "$filename 运行中ing..."); }
public function modifyPost($request, $response) { /*{{{*/ $pGroupTplId = $request->pGroupTplId; $pGroupTpl = DAL::get()->find('PGroupTpl', $pGroupTplId, true); DBC::requireTrue($pGroupTpl instanceof PGroupTpl, "PGroupTpl {$pGroupTplId} 不存在"); $params = array(); $params['name'] = $request->name; $params['keyworddesc'] = $request->keyworddesc; PlaceClient::getInstance()->modifyPGroupTpl($pGroupTplId, $params); $msg = '修改成功'; $url = $response->router->urlfor('pgrouptpl/modify', array('msg' => $msg, 'pgrouptplid' => $pGroupTplId)); $response->setRedirect($url); }
public function modifyPost($request, $response) { $paperTplId = $request->paperTplId; $paperTpl = DAL::get()->find('PaperTpl', $paperTplId, true); DBC::requireTrue($paperTpl instanceof PaperTpl, "PaperTpl {$paperTplId} 不存在"); $params = array(); $params['ename'] = $request->ename; $params['name'] = $request->name; $params['content'] = $request->getPost('content'); PaperClient::getInstance()->modifyPaperTpl($paperTplId, $params); $msg = '修改成功'; $url = $response->router->urlfor('papertpl/modify', array('msg' => $msg, 'paperTplId' => $paperTplId)); $response->setRedirect($url); }
public function confirmToVisit($request, $response) {/*{{{*/ $orderId = $request->id; $order = DAL::get()->find('BookingOrder', $orderId); //患者自己确认去就诊相当于患者电话确认 DBC::requireTrue(in_array($order->status, array(BookingOrder::STATUS_CONFIRM)), '当前状态不能领取加号凭证'); $now = XDateTime::now("Y-m-d H:i:s"); $before2Schedule = $order->schedule->addDay(-2)->setHour("20")->setMinute("00"); DBC::requireFalse($now < $before2Schedule, '当前状态不能领取加号凭证'); BookingClient::getInstance()->patientConfirmOrder($order->user,$orderId); $response->order = $order; }/*}}}*/
public function onlineBankPay($request,$response) { $bankid = $request->paycard; $spaceid = $request->spaceid; $productid = $request->productid; $fuProduct = DAL::get()->find('FollowupProduct', $productid); DBC::requireFalse($fuProduct->isNull(), '无效的随访商品'); $space = DAL::get()->find('space', $spaceid); DBC::requireFalse($space->isNull(), '无效的随访space'); $realPrice = 0;//$fuProduct->price; if($fuProduct->isNoPriceProduct()) { $realPrice = $request->price; DBC::requireTrue((int)$realPrice > 0, '无效的续费金额'); } $order = FollowupClient::getInstance()->getFollowupOrder($this->user->id, $productid, $spaceid, $realPrice); DBC::requireFalse($order->isNull(), '无效的订单'); $binds = array(); $binds['payType'] = FollowupOrder::PAYTYPE_ALIPAY; $form = ''; if ($bankid == 'alipay') { $form = $this->getAlipayForm4FollowupOrder($order); $binds['payType'] = FollowupOrder::PAYTYPE_ALIPAY; } else if($bankid == '00')//快钱 { $form = $this->getQpayForm4FollowupOrder($order, $bankid); $binds['payType'] = FollowupOrder::BANK_NAME_ONLLINE; //设置订单状态为网银支付 } else//网银(支付宝纯网关) { $callbackUrl = BeanFinder::get('configs')->alipay_gateway_callback_url; $frontUrl = BeanFinder::get('configs')->alipay_gateway_callback_returnurl; $price = $order->price;//原价 //dodo::zhb 创建充值单 $depositeOrder = OrderClient::getInstance()->createDepositeOrder($this->user, $price, DepositeOrder::RECHARGE_TYPE_ALIPAY, array($order)); $description = ''; $form = GatewayAlipay::getInstance()->getPayUrl($depositeOrder->id, Pay::TYPE_FOLLOWUPORDER, $price, $callbackUrl, $order->product->title, $order->product->title, $frontUrl, $bankid); $binds['payType'] = FollowupOrder::PAYTYPE_ALIPAY; } $response->form = $form; $response->orderId = $order->id; FollowupClient::getInstance()->updateFollowupOrder($order->id,$binds); unset($binds); }
public static function generateByDefaultKey($app, $captchaType, $charCnt, $clientIp, $effactiveTime) { /*{{{*/ DBC::requireTrue($effactiveTime < 60, "有效时间不能超过1小时"); $contentObj = ContentFactory::generate($captchaType); $contentArr = $contentObj->generate($charCnt); $handler = new QBase64(); $key = self::generateID(); $token = $handler->crypt(microtime() . $app . $key); $expireTime = XDateTime::now()->addMinute($effactiveTime)->getTime(); $originalValues = array('app' => $app, 'key' => $key, 'ip' => $clientIp, 'expiretime' => $expireTime, 'answer' => strtolower($contentArr['answer']), 'question' => $contentArr['question']); $cacher = Cacher::get()->getCache(Cacher::CACHETYPE_CAPTCHA); $cacher->add($token, $originalValues); return array('token' => $token, 'captchaId' => $key); }
public function contractPost($request, $response) { /*{{{*/ DBC::requireTrue($this->space->user->verifyToken($request->token), '验证码错误'); $params['disease'] = $request->disease; $params['userCategory'] = $request->userCategory; $params['seatLimit'] = $request->seatLimit; $params['isProxy'] = $request->isProxy; $params['schedule'] = $request->schedule; $params['area'] = $request->area; $params['address'] = $request->address; $params['doctorRemark'] = $request->doctorRemark; BookingClient::getInstance()->createContract($this->space, $params); $this->message('提交成功', $response, array('url' => $response->router->urlfor("index/index"), 'module' => Space::MODULE_ADMIN_BOOKING)); }
public function modifyPost($request, $response) { /*{{{*/ $projectMedication = DAL::get()->find('ProjectMedication', $request->projectMedicationId); DBC::requireTrue($projectMedication instanceof ProjectMedication, "不存在该术中用药"); $params = $request->vars; if (false == empty($params['useOpportunity'])) { if (is_array($params['useOpportunity'])) { $params['useOpportunity'] = implode(',', $params['useOpportunity']); } } ProjectInterviewClient::getInstance()->modifyMedication($projectMedication->id, $params); $preMsg = "术中用药 " . $projectMedication->name . " 修改成功"; $response->setRedirect($response->router->urlfor('projectmedicationmgr/modify', array('preMsg' => $preMsg, 'projectMedicationId' => $projectMedication->id))); }
public function modifyPost($request, $response) { /*{{{*/ $placeTplId = $request->placeTplId; $placeTpl = DAL::get()->find('PlaceTpl', $placeTplId, true); DBC::requireTrue($placeTpl instanceof PlaceTpl, "PlaceTpl {$placeTplId} 不存在"); $params = array(); $params['name'] = $request->name; $content = $request->getUnSafeData('content'); $content = str_ireplace(' ', ' ', $content); $params['content'] = html_entity_decode($content); PlaceClient::getInstance()->modifyPlaceTpl($placeTplId, $params); $msg = '修改成功'; $url = $response->router->urlfor('placetpl/modify', array('msg' => $msg, 'placeTplId' => $placeTplId)); $response->setRedirect($url); }
public function replenish($request, $response) {/*{{{*/ $intention = DAL::get()->find('intention', $request->intentionid); $user = $this->user; DBC::requireEquals($this->user->id, $intention->user->id, '你不能操作别人的数据'); if($intention->isFromThread() && $intention->hasSpace()) { DBC::requireTrue($intention->space->isCaseOpen(), '医生已经关闭咨询区,不能补充意向了'); } $content = $request->content; $attachmentIds = array_filter(explode(",", $request->attachmentIds)); $patient = $intention->patient; $intention = IntentionClient::getInstance()->replenishFromIntention($intention, Intention::SRC_WEB, $content, $attachmentIds); $url = $intention->getUrl(); $url .= "&fromReplenish=1"; $response->setRedirect($url); }/*}}}*/