Files
trade-assistant/backend/app/models/translation_quota.py
T
TradeMate Dev c397740748 feat: WeChat Pay integration, translation quota management, login UX fixes
- WeChat Pay APIv3 integration (JSAPI + Native) with cert-based auth
- TranslationQuota model + admin management UI (配额 tab)
- Alibaba MT provider now checks quota before translation
- Fix: admin tabs scrollable on mobile, remove header-card
- Fix: profile/login navigation - logout stays on profile, login returns to profile
- Fix: login form now visible by default (no extra click to show)
- Fix: home page translate link uses navigateTo (was switchTab to non-tabBar page)
- Add .coverage and apiclient_key.pem to gitignore
2026-05-20 18:30:12 +08:00

19 lines
785 B
Python

from sqlalchemy import Column, String, Boolean, Integer, DateTime, Text
from sqlalchemy.dialects.postgresql import UUID
from datetime import datetime
from app.database import Base
import uuid
class TranslationQuota(Base):
__tablename__ = "translation_quotas"
id = Column(UUID(as_uuid=True), primary_key=True, default=uuid.uuid4)
version = Column(String(50), unique=True, nullable=False, index=True)
monthly_limit = Column(Integer, nullable=False, default=1000000)
used_chars = Column(Integer, nullable=False, default=0)
current_month = Column(String(7), nullable=False)
enabled = Column(Boolean, nullable=False, default=True)
description = Column(Text, default="")
updated_at = Column(DateTime, default=datetime.utcnow, onupdate=datetime.utcnow)