refactor: part of remove all reqparser (#29847)

This commit is contained in:
Asuka Minato 2025-12-25 20:57:07 +09:00 committed by GitHub
parent f08d847c20
commit 7e06225ce2
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 4 additions and 17 deletions

View File

@ -1,8 +1,9 @@
import base64 import base64
from typing import Literal
from flask import request from flask import request
from flask_restx import Resource, fields from flask_restx import Resource, fields
from pydantic import BaseModel, Field, field_validator from pydantic import BaseModel, Field
from werkzeug.exceptions import BadRequest from werkzeug.exceptions import BadRequest
from controllers.console import console_ns from controllers.console import console_ns
@ -15,22 +16,8 @@ DEFAULT_REF_TEMPLATE_SWAGGER_2_0 = "#/definitions/{model}"
class SubscriptionQuery(BaseModel): class SubscriptionQuery(BaseModel):
plan: str = Field(..., description="Subscription plan") plan: Literal[CloudPlan.PROFESSIONAL, CloudPlan.TEAM] = Field(..., description="Subscription plan")
interval: str = Field(..., description="Billing interval") interval: Literal["month", "year"] = Field(..., description="Billing interval")
@field_validator("plan")
@classmethod
def validate_plan(cls, value: str) -> str:
if value not in [CloudPlan.PROFESSIONAL, CloudPlan.TEAM]:
raise ValueError("Invalid plan")
return value
@field_validator("interval")
@classmethod
def validate_interval(cls, value: str) -> str:
if value not in {"month", "year"}:
raise ValueError("Invalid interval")
return value
class PartnerTenantsPayload(BaseModel): class PartnerTenantsPayload(BaseModel):