sanbon / app /models /membership_plan.py
Seth0330's picture
Update app/models/membership_plan.py
8642df6 verified
raw
history blame contribute delete
800 Bytes
from sqlalchemy import Column, Integer, String, Boolean, DECIMAL, Text
from core.database import Base # absolute import
from sqlalchemy.orm import relationship
class MembershipPlan(Base):
__tablename__ = "membership_plans"
id = Column(Integer, primary_key=True, index=True)
name = Column(String(255), nullable=False)
billing_period = Column(String(50), nullable=False) # monthly, quarterly, annual
price = Column(DECIMAL(10, 2), nullable=False)
stripe_link = Column(Text, nullable=True)
description = Column(Text, nullable=True)
max_students = Column(Integer, nullable=False, default=1) # Maximum students allowed per membership
is_active = Column(Boolean, default=True)
is_default = Column(Boolean, default=False) # Default plan shown to all students