|
- <?php
-
- namespace App\Http\Controllers\Web\ReceiptIssuingOrder;
-
- use App\Codes\UserRole;
- use App\Http\Controllers\Web\IParam;
- use App\Http\Controllers\Web\WebController;
- use App\Logic\ReceiptIssuingOrder\TokenCheckManager;
- use App\Models\ReceiptIssuingOrder;
- use Illuminate\Http\JsonResponse;
- use Illuminate\Http\Request;
- use Illuminate\Support\Arr;
-
- class TokenCheckController extends WebController
- {
- public function name(): string
- {
- return "トークンチェック";
- }
-
- public function description(): string
- {
- return "トークンの有効性をチェックする";
- }
-
- public function __construct(
- protected TokenCheckParam $param,
- private TokenCheckManager $manager
- ) {
- parent::__construct();
- }
-
- protected function getParam(): IParam
- {
- return $this->param;
- }
-
- protected function run(Request $request): JsonResponse
- {
- $param = $this->param;
-
- if (!$this->manager->check($param->accessToken)) {
- return $this->failedResponse();
- }
-
- $data['receipt_issuing_order'] = array_merge(
- Arr::only($this->manager->getOrder(), [
- ReceiptIssuingOrder::COL_NAME_ID,
- ReceiptIssuingOrder::COL_NAME_RECEIPT_SHOP_NAME,
- ReceiptIssuingOrder::COL_NAME_RECEIPT_ISSUER,
- ReceiptIssuingOrder::COL_NAME_RECEIPT_PURPOSE,
- ReceiptIssuingOrder::COL_NAME_RECEIPT_NAME,
- ReceiptIssuingOrder::COL_NAME_RECEIPT_USE_DATE,
- ReceiptIssuingOrder::COL_NAME_RECEIPT_AMOUNT,
- ReceiptIssuingOrder::COL_NAME_UPDATED_AT,
- ReceiptIssuingOrder::COL_NAME_ACCESS_TOKEN_EXPIRES_AT,
-
- ReceiptIssuingOrder::COL_NAME_STATUS_ORDER_MAIL_DATETIME,
- ReceiptIssuingOrder::COL_NAME_STATUS_MAIL_POST_DATE,
-
- ]),
- [
- 'confirmed' => $this->manager->isConfirmed(),
- ]
- );
- return $this->successResponse($data);
- }
- }
|