models.py 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  1. from pydantic import BaseModel
  2. from typing import List, Optional
  3. SECRET_KEY = "df2f77bd544240801a048bd4293afd8eeb7fff3cb7050e42c791db4b83ebadcd"
  4. ALGORITHM = "HS256"
  5. class id_obj(BaseModel):
  6. id: int
  7. class Token(BaseModel):
  8. access_token: str
  9. token_type: str
  10. class swap_req(BaseModel):
  11. imgurl: str
  12. class request(BaseModel):
  13. name: str
  14. text_content: List[str]
  15. image_urls: List[str]
  16. avatar: str
  17. client_id :str
  18. multiLang :int
  19. class request_normal():
  20. name: str
  21. text_content: List[str]
  22. image_urls: List[str]
  23. avatar: str
  24. client_id :str
  25. multiLang :int
  26. class gSlide_req(BaseModel):
  27. slide_url: str
  28. avatar: str
  29. client_id :str
  30. multiLang :int
  31. url_type: int
  32. class request_eng(BaseModel):
  33. name: str
  34. text_content: List[str]
  35. image_urls: List[str]
  36. sub_titles: List[str]
  37. avatar: str
  38. # AuthJWT setting
  39. class Settings(BaseModel):
  40. authjwt_secret_key: str = SECRET_KEY
  41. authjwt_token_location: set = {"cookies"}
  42. authjwt_cookie_secure: bool = False
  43. authjwt_cookie_csrf_protect: bool = True
  44. class User(BaseModel):
  45. id :int
  46. username: str
  47. email: str
  48. password: str
  49. token: Optional[str] = None
  50. class TokenData(BaseModel):
  51. username: Optional[str] = None
  52. class phone(BaseModel):
  53. price: int
  54. class register_req(BaseModel):
  55. username: str
  56. email: str
  57. password: str
  58. class register_addition(BaseModel):
  59. username: str
  60. email: str
  61. password: str
  62. left_time: int
  63. class register_invite_req(BaseModel):
  64. username: str
  65. email: str
  66. password: str
  67. invite_code: str
  68. class reset_pwd(BaseModel):
  69. code: str
  70. password: str
  71. class UserProfile(BaseModel):
  72. email: str
  73. class video_draft(BaseModel):
  74. id: int
  75. title: str
  76. avatar: int
  77. text_content: List[str]
  78. multiLang: int
  79. image_urls: List[str]
  80. class speech_req(BaseModel):
  81. text:str
  82. speaker:str