from fastapi import APIRouter, HTTPException from pydantic import BaseModel from ..services.admin_config_service import ( get_price_config, get_night_config, update_points_rate, update_get_points_rate, update_night_start, update_night_end, update_price_minutes ) from ..services.admin_table_service import _verify_admin_permission router = APIRouter() class UpdatePointsRateRequest(BaseModel): token: str points_rate: float class UpdateNightTimeRequest(BaseModel): token: str time: str # 格式:"HH:MM:SS" class UpdatePriceMinutesRequest(BaseModel): token: str price_minutes: int @router.get("/config/price") def get_price_config_api(): return get_price_config() @router.get("/config/night") def get_night_config_api(): return get_night_config() @router.post("/config/points-rate") def update_points_rate_api(request: UpdatePointsRateRequest): _verify_admin_permission(request.token) return update_points_rate(request.points_rate) @router.post("/config/get-points-rate") def update_get_points_rate_api(request: UpdatePointsRateRequest): _verify_admin_permission(request.token) return update_get_points_rate(request.points_rate) @router.post("/config/night-start") def update_night_start_api(request: UpdateNightTimeRequest): _verify_admin_permission(request.token) return update_night_start(request.time) @router.post("/config/night-end") def update_night_end_api(request: UpdateNightTimeRequest): _verify_admin_permission(request.token) return update_night_end(request.time) @router.post("/config/price-minutes") def update_price_minutes_api(request: UpdatePriceMinutesRequest): _verify_admin_permission(request.token) return update_price_minutes(request.price_minutes)