loginUser()->checkAuthorization($order)) { throw new AppCommonException("認可不良"); } $this->order = $order; } protected function refreshToken() { $order = $this->order; $order->access_token = base64_encode(Str::uuid()); $order->access_token_expires_at = DateUtil::now()->adddays(7); } protected function checkToken(string $token): bool { if ($this->order->isNotSavedModel()) { throw new LogicException("初期化不良"); } $order = ReceiptIssuingOrder::whereAccessToken($token) ->first(); if (!($order instanceof ReceiptIssuingOrder)) { return false; } if ($order->access_token_expires_at === null) { return false; } if ($order->access_token !== $token) { return false; } $now = DateUtil::now(); $ret = $now->lt($this->order->access_token_expires_at); if (!$ret) { return false; } $this->order = $order; return true; } }