Files
AutonetSellCar/backend/app/models/cc_package.py
AutonetSellCar Deploy 1f0dcb1ddb Initial commit: AutonetSellCar platform with deployment system
- Frontend: Next.js 14 with TypeScript
- Backend: FastAPI with SQLAlchemy
- Agent: Carmodoo sync agent
- Deployment: Docker Compose based staging/production setup
- Scripts: Automated deployment with rollback support

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-30 13:24:39 +09:00

49 lines
1.4 KiB
Python

from sqlalchemy import Column, Integer, String, Boolean, Float
from ..database import Base
class CCPackage(Base):
"""CC charging packages"""
__tablename__ = "cc_packages"
id = Column(Integer, primary_key=True, index=True)
name = Column(String(50), nullable=False) # e.g., "Basic", "Standard", "Premium"
price_usd = Column(Integer, nullable=False) # Price in USD (10, 27, 40)
cc_amount = Column(Integer, nullable=False) # CC amount (10, 30, 50)
bonus_cc = Column(Integer, default=0) # Bonus CC (0, 3, 10)
discount_percent = Column(Integer, default=0) # Discount percentage (0, 10, 20)
is_active = Column(Boolean, default=True)
sort_order = Column(Integer, default=0)
# Stripe Price ID for recurring or one-time payments
stripe_price_id = Column(String(100), nullable=True)
# Default CC packages
DEFAULT_CC_PACKAGES = [
{
"name": "Basic",
"price_usd": 10,
"cc_amount": 10,
"bonus_cc": 0,
"discount_percent": 0,
"sort_order": 1,
},
{
"name": "Standard",
"price_usd": 27,
"cc_amount": 27,
"bonus_cc": 3,
"discount_percent": 10,
"sort_order": 2,
},
{
"name": "Premium",
"price_usd": 40,
"cc_amount": 40,
"bonus_cc": 10,
"discount_percent": 20,
"sort_order": 3,
},
]