public function handle_request() { $this->setLog(sprintf('[%s] start cursor: %s', date('Y-m-d H:i:s'), $this->cursor)); // 获取任务 $tasks = $this->getTasks(); if ($tasks === false) { $this->setLog(sprintf('[%s] remark: %s', date('Y-m-d H:i:s'), '获取数据失败')); exit; } if (empty($tasks)) { //没有数据 $dao = new DAO_Area_CmsAreaBlockDolist(); $dao->updateStatus(2, '小区信息以及房源已处理完成', $this->actionId, 2); // 任务完成 $this->setLog(sprintf('[%s] remark: %s', date('Y-m-d H:i:s'), '任务执行完成')); exit; } // 循环处理任务 foreach ($tasks as $task) { $this->dealTask($task); $this->cursor = $task['id']; } $this->setLog(sprintf('[%s] end cursor: %s', date('Y-m-d H:i:s'), $this->cursor)); //记录游标 $this->setFlag(array('id' => $this->cursor)); }
/** * 更新dolist状态 * * @param $status * @param $remark * @param $actionId * @param $listId * @return bool */ public function updateDoListStatus($status, $remark, $actionId, $listId) { $dao = new DAO_Area_CmsAreaBlockDolist(); $result = $dao->updateStatus($status, $remark, $actionId, $listId); if ($result && !isset($result[-9999])) { return true; } else { return false; } }