public_api_model.py 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. from datetime import datetime
  2. from enum import IntEnum
  3. from typing import Optional
  4. from pydantic import BaseModel
  5. from sqlalchemy import Column, String, Enum as SQLAlchemyEnum, Integer, BigInteger, DateTime, Text, Float, Boolean
  6. from app.models.base_model import Base
  7. class AppType(IntEnum):
  8. BASIC = 0
  9. RAGFLOW = 1
  10. BISHENG = 2
  11. class AppRegisterModel(Base):
  12. __tablename__ = "app_register"
  13. id = Column(String(36), primary_key=True)
  14. name = Column(String(255))
  15. status = Column(Integer, nullable=False, default=1)
  16. created_at = Column(DateTime, default=datetime.now())
  17. updated_at = Column(DateTime, default=datetime.now(), onupdate=datetime.now())
  18. # to_dict 方法
  19. def to_dict(self):
  20. return {
  21. 'id': self.id,
  22. 'name': self.name,
  23. 'status': self.status
  24. }
  25. class DfTokenModel(Base):
  26. __tablename__ = "df_api_token"
  27. id = Column(String(36), primary_key=True)
  28. token = Column(String(36))
  29. created_at = Column(DateTime, default=datetime.now())
  30. updated_at = Column(DateTime, default=datetime.now(), onupdate=datetime.now())
  31. # to_dict 方法
  32. def to_dict(self):
  33. return {
  34. 'id': self.id,
  35. 'token': self.token,
  36. 'created_at': self.created_at.strftime('%Y-%m-%d %H:%M:%S'),
  37. # 'updated_at': self.updated_at.strftime('%Y-%m-%d %H:%M:%S')
  38. }
  39. class DfToken(BaseModel):
  40. image: Optional[str] = ""
  41. clean: Optional[str] = ""
  42. report: Optional[str] = ""
  43. class AppRegister(BaseModel):
  44. rg: Optional[int] = 0
  45. bs: Optional[int] = 0
  46. df: Optional[int] = 0