feat: add campaign model and API integration with price and tags

This commit is contained in:
duanshuwen
2026-07-02 13:30:09 +08:00
parent 7b329907f9
commit 521e501992
6 changed files with 430 additions and 9 deletions

View File

@@ -173,6 +173,9 @@ class Campaign(Base):
title: Mapped[str] = mapped_column(String, nullable=False)
description: Mapped[str | None] = mapped_column(Text)
coverImage: Mapped[str | None] = mapped_column(String)
priceAmount: Mapped[int | None] = mapped_column(Integer)
priceUnit: Mapped[str | None] = mapped_column(String, default="起/人")
tags: Mapped[list[str]] = mapped_column(ARRAY(String), default=list, nullable=False)
status: Mapped[str] = mapped_column(String, default="published", nullable=False)
startsAt: Mapped[datetime | None] = mapped_column(DateTime)
endsAt: Mapped[datetime | None] = mapped_column(DateTime)