- Add PricingConfigResponse and PricingConfigUpdate schemas - Create PricingService with validation logic - Add GET and PUT endpoints in routes/pricing.py - Add MANAGE_PRICING permission to admin role - Register pricing router in main.py - Add comprehensive API tests for permissions and validation
93 lines
2.1 KiB
Python
93 lines
2.1 KiB
Python
# Export pagination
|
|
# Export auth schemas
|
|
from .auth import RegisterWithInvite, UserCreate, UserCredentials, UserLogin
|
|
|
|
# Export availability schemas
|
|
from .availability import (
|
|
AvailabilityDay,
|
|
AvailabilityResponse,
|
|
CopyAvailabilityRequest,
|
|
SetAvailabilityRequest,
|
|
TimeSlot,
|
|
)
|
|
|
|
# Export exchange schemas
|
|
from .exchange import (
|
|
AdminExchangeResponse,
|
|
AvailableSlotsResponse,
|
|
BookableSlot,
|
|
ExchangeRequest,
|
|
ExchangeResponse,
|
|
ExchangeUserContact,
|
|
PaginatedAdminExchanges,
|
|
PaginatedExchanges,
|
|
)
|
|
|
|
# Export invite schemas
|
|
from .invite import (
|
|
InviteCheckResponse,
|
|
InviteCreate,
|
|
InviteResponse,
|
|
PaginatedInviteRecords,
|
|
UserInviteResponse,
|
|
)
|
|
|
|
# Export meta schemas
|
|
from .meta import ConstantsResponse
|
|
from .pagination import PaginatedResponse, RecordT
|
|
|
|
# Export price schemas
|
|
from .price import (
|
|
ExchangeConfigResponse,
|
|
ExchangePriceResponse,
|
|
PriceHistoryResponse,
|
|
PriceResponse,
|
|
)
|
|
|
|
# Export pricing schemas
|
|
from .pricing import PricingConfigResponse, PricingConfigUpdate
|
|
|
|
# Export profile schemas
|
|
from .profile import ProfileResponse, ProfileUpdate
|
|
|
|
# Export user schemas
|
|
from .user import AdminUserResponse, UserResponse, UserSearchResult
|
|
|
|
__all__ = [
|
|
"AdminExchangeResponse",
|
|
"AdminUserResponse",
|
|
"AvailabilityDay",
|
|
"AvailabilityResponse",
|
|
"AvailableSlotsResponse",
|
|
"BookableSlot",
|
|
"ConstantsResponse",
|
|
"CopyAvailabilityRequest",
|
|
"ExchangeConfigResponse",
|
|
"ExchangePriceResponse",
|
|
"ExchangeRequest",
|
|
"ExchangeResponse",
|
|
"ExchangeUserContact",
|
|
"InviteCheckResponse",
|
|
"InviteCreate",
|
|
"InviteResponse",
|
|
"PaginatedAdminExchanges",
|
|
"PaginatedExchanges",
|
|
"PaginatedInviteRecords",
|
|
"PaginatedResponse",
|
|
"PriceHistoryResponse",
|
|
"PriceResponse",
|
|
"PricingConfigResponse",
|
|
"PricingConfigUpdate",
|
|
"ProfileResponse",
|
|
"ProfileUpdate",
|
|
"RecordT",
|
|
"RegisterWithInvite",
|
|
"SetAvailabilityRequest",
|
|
"TimeSlot",
|
|
"UserCreate",
|
|
"UserCredentials",
|
|
"UserInviteResponse",
|
|
"UserLogin",
|
|
"UserResponse",
|
|
"UserSearchResult",
|
|
]
|