UNIACID, 'ticket'=>$ticket, 'status'=>1, 'createtime'=>['>',time()-$this->vaild_time] ])->find(); if(!$ticket){ return false; } return $ticket; } /** * 检查 ticket是否可用 * @param $ticket * @return void */ public function checkTicketCanUse($ticket){ $data = self::where([ 'uniacid'=>UNIACID, 'ticket'=>$ticket, 'status'=>0, 'createtime'=>['>',time()-$this->vaild_time] ])->find(); if($data){ return true; } return false; } /** * 创建 ticket * @return mixed */ public function buildTicket(){ $ticket = \fast\Random::alnum(10); self::insert([ 'uniacid'=>UNIACID, 'ticket'=>$ticket, 'status'=>0, 'createtime'=>time() ]); return $ticket; } /** * 销毁 ticket * @param $ticket * @return mixed */ public function destroyTicket($ticket){ return self::where([ 'uniacid'=>UNIACID, 'ticket'=>$ticket, ])->update([ 'status'=>2 ]); } /** * 登录成功 * @param $ticket * @param $userId * @param $token * @return mixed */ public function successTicket($ticket,$userId,$token){ return self::where([ 'uniacid'=>UNIACID, 'ticket'=>$ticket, ])->update([ 'status'=>1, 'user_id'=>$userId, 'token'=>$token ]); } }