from sqlalchemy import Column, Integer, String, Float, DateTime, Text from sqlalchemy.sql import func from app.core.database import Base class Work(Base): __tablename__ = "works" id = Column(Integer, primary_key=True, index=True) title = Column(String(255), nullable=False, index=True) category = Column(String(100), index=True) designer = Column(String(100)) level = Column(Integer, default=1) level_text = Column(String(50)) # 文件路径 original_image = Column(String(500)) # 原图(高清) watermarked_image = Column(String(500)) # 带水印图(详情页显示) thumbnail_image = Column(String(500)) # 缩略图(列表显示) # 价格 price = Column(Float, default=0.0) # 下载价格(元) # 统计 views = Column(Integer, default=0) # 浏览量 downloads = Column(Integer, default=0) # 下载量 collects = Column(Integer, default=0) # 收藏量 # 描述 description = Column(Text, nullable=True) tags = Column(String(500), nullable=True) # JSON 格式存储标签 created_at = Column(DateTime(timezone=True), server_default=func.now()) updated_at = Column(DateTime(timezone=True), onupdate=func.now())