mRecord = $item; } public function waiting() : bool { return $this->mRecord['state'] == self::Waiting; } public function processing() : bool { return $this->mRecord['state'] == self::Processing; } public function completed() : bool { return $this->mRecord['state'] == self::Handled; } public function success() : bool { return $this->mRecord['result_state'] == 1; } public function task_id() { return $this->mRecord['task_id']; } public function result() { if($this->success()) { return unserialize($this->mRecord['result']); } else { return []; } } public function add_time() : int { return intval($this->mRecord['add_time']) ?? time(); } public function act_time() : int { return intval($this->mRecord['act_time']) ?? time(); } public function fini_time() : int { return intval($this->mRecord['finish_time']) ?? time(); } public static function CreateTask($data) { return new task_wrapper($data); } }