from fastapi import APIRouter, Depends from ..services.user_coupon_service import get_user_coupons_service, apply_coupon_service, redeem_coupon_service from pydantic import BaseModel class GetUserCouponsRequest(BaseModel): token: str class CouponApplyRequest(BaseModel): token: str coupon_id: int order_id: int class RedeemCouponRequest(BaseModel): token: str coupon_code: str router = APIRouter() @router.post("/user/coupons") def get_user_coupons(request: GetUserCouponsRequest): return get_user_coupons_service(request.token) @router.post("/user/apply-coupon") def apply_coupon(request: CouponApplyRequest): return apply_coupon_service(request.token, request.coupon_id, request.order_id) @router.post("/user/redeem-coupon") def redeem_coupon(request: RedeemCouponRequest): return redeem_coupon_service(request.token, request.coupon_code)