public function handle_request() { $this->cursor = self::STARTCURSOR; $cursorInfo = $this->getFlag(); if (empty($cursorInfo)) { $cursorInfo['id'] = self::STARTCURSOR; } $this->cursor = $cursorInfo['id']; $data = $this->getData(); if (empty($data)) { $this->setStop(); return false; } foreach ($data as $k => $v) { $cursorInfo['id'] = $v['id']; $this->setFlag($cursorInfo); //插入分表中 $status = Model_Mobile_DailyReplyLessThirty::insertNewData($v); if (!$status) { return false; } //推送信息 if (!$this->push($v['brokerId'])) { return false; } //赠送抢客劵 if (!Bll_Mobile_DailyQuest::presentExtraQuestCoupon($v['brokerId'])) { return false; } //更新赠送状态 Model_Mobile_DailyReplyLessThirty::updatePresentStatus($v['brokerId']); } return true; }
public function handle_request_internal() { $brokerId = $this->_params['brokerId']; $brokerInfo = Model_Broker_AjkBrokerExtend::findWithBrokerId($brokerId); if (!$brokerInfo) { throw new Exception_BrokerNotFoundException('经纪人不存在', Const_APIStatus::E_BROKER_NOT_EXISTS); } $statusMsg = ''; $display = '0'; //查询经纪人是否完成额外任务并获赠抢客劵 $data = Model_Mobile_DailyReplyLessThirty::getQuestDoneByBrokerId($brokerId); if (!empty($data)) { $display = '1'; Model_Mobile_DailyReplyLessThirty::updatePresentDisplayStatus($brokerId); } $questStatus = Model_Mobile_DailyReplyLessThirty::getQuestStatusByBrokerId($brokerId); if (!empty($questStatus)) { $statusMsg = '恭喜您,昨日回复用户时小于30分钟,额外获赠抢客券!'; } $data = array('brokerId' => $brokerId, 'statusMsg' => $statusMsg, 'display' => $display); return array('status' => 'ok', 'data' => $data); }