user(); if (! $admin instanceof AdminUser) { return ApiResponse::error( trans('admin.unauthenticated', [], $request->lotteryLocale()), \App\Lottery\ErrorCode::AdminUnauthenticated->value, null, 401, ); } try { $result = $this->service->apply( $batch, $admin, (int) $request->validated('player_id'), (int) $request->validated('amount_delta'), (string) $request->validated('reason'), $request, ); } catch (TicketOperationException $e) { return ApiResponse::error( LotteryMessage::wallet($request, $e->lotteryCode), $e->lotteryCode, $e->payload, $e->httpStatus, ); } catch (\RuntimeException $e) { return ApiMessage::runtimeErrorResponse($request, $e, 0, 422); } return ApiResponse::success($result); } }