models.py 7.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159
  1. from tortoise import fields
  2. from tortoise.models import Model
  3. from pydantic import BaseModel
  4. from datetime import datetime
  5. from tortoise import fields
  6. from tortoise.models import Model
  7. from pydantic import BaseModel
  8. from datetime import datetime
  9. class User(Model):
  10. id = fields.IntField(pk=True)
  11. username = fields.CharField(max_length=30, unique=True, description="帳號")
  12. password = fields.CharField(max_length=128, description="密碼")
  13. email = fields.CharField(max_length=128, description="信箱")
  14. points = fields.IntField(description="點數")
  15. is_superuser = fields.IntField(description="超級使用者")
  16. is_gmail = fields.IntField(description="是否使用gmail登入")
  17. token = fields.CharField(max_length=200)
  18. class UserPydantic(BaseModel):
  19. id: int
  20. username: str
  21. password: str
  22. email: str
  23. points: int
  24. is_superuser: int
  25. is_gmail: int
  26. token: str
  27. class Config:
  28. orm_mode = True
  29. class UserPydantic(BaseModel):
  30. id: int
  31. username: str
  32. password: str
  33. email: str
  34. points: int
  35. is_superuser: int
  36. is_gmail: int
  37. token: str
  38. class Config:
  39. orm_mode = True
  40. #學校
  41. class Schools(Model):
  42. id = fields.IntField(pk=True)
  43. name = fields.CharField(max_length=45, description="學校名稱")
  44. longitude = fields.CharField(max_length=100, description="經度")
  45. latitude = fields.CharField(max_length=100, description="緯度")
  46. address = fields.CharField(max_length=128,description="地址")
  47. update_time = fields.DatetimeField(description="更新時間")
  48. class Group_name(Model):
  49. id = fields.IntField(pk=True)
  50. group_name = fields.CharField(max_length=45, description="學群名稱")
  51. class Class_name(Model):
  52. id = fields.IntField(pk=True)
  53. name = fields.CharField(max_length=45, description="課程名稱")
  54. school_id = fields.IntField(description="學校ID")
  55. category = fields.CharField(max_length=45, description="分類")
  56. introduction = fields.TextField(description="簡介")
  57. organizer = fields.CharField(max_length=45, description="主辦單位")
  58. cover_img = fields.CharField(max_length=255, description="封面圖片")
  59. group_id = fields.IntField(description="學群")
  60. class Class_list(Model):
  61. id = fields.IntField(pk=True)
  62. name_id = fields.IntField(description="課程名稱ID")
  63. event = fields.CharField(max_length=45, description="場次")
  64. start_time = fields.DatetimeField(description="開始時間")
  65. end_time = fields.DatetimeField(description="結束時間")
  66. contact = fields.CharField(max_length=255, description="聯絡方式")
  67. lecturer = fields.CharField(max_length=255, description="講師")
  68. location = fields.CharField(max_length=255, description="地點詳情")
  69. content = fields.TextField(description="內容")
  70. URL = fields.TextField(description="連結網址")
  71. people = fields.CharField(max_length=255, description="對象")
  72. fee_method = fields.CharField(max_length=255, description="收費方式")
  73. registration_way = fields.CharField(max_length=255, description="報名方式")
  74. remark = fields.TextField(description="備註")
  75. registration_day = fields.CharField(max_length=255, description="報名時間")
  76. class Class_detail(Model):
  77. id = fields.IntField(pk=True)
  78. class_list_id = fields.IntField(description="課程場次ID")
  79. start_time = fields.DatetimeField(description="開始時間")
  80. end_time = fields.DatetimeField(description="結束時間")
  81. sessions = fields.IntField(description="堂數")
  82. content = fields.TextField(description="內容")
  83. class Registration(Model):
  84. id = fields.IntField(pk=True)
  85. class_id = fields.IntField(description="課程ID")
  86. user_id = fields.IntField(description="使用者ID")
  87. reg_confirm = fields.CharField(max_length=255, description="報名確認(1:報名成功 0:單純報名)")
  88. is_del = fields.CharField(max_length=255, description="是否取消(1:yes ,0:no)")
  89. create_time = fields.DatetimeField(description="創建時間")
  90. class News(Model):
  91. id = fields.IntField(pk=True)
  92. title = fields.CharField(max_length=200, description="標題")
  93. category = fields.CharField(max_length=45, description="類別")
  94. create_time = fields.DatetimeField(description="發布時間")
  95. click_time = fields.IntField(description="點擊次數")
  96. content = fields.TextField(description="內容")
  97. files = fields.TextField(description="附加檔案")
  98. URL = fields.TextField(description="外部連結")
  99. tags = fields.TextField(description="標籤")
  100. class Favorite_course(Model):
  101. id = fields.IntField(pk=True)
  102. user_id = fields.IntField(description="使用者ID")
  103. class_event_id = fields.IntField(description="課程場次ID")
  104. time_stemp = fields.DatetimeField(description="時間")
  105. class Article_list(Model):
  106. id = fields.IntField(pk=True)
  107. title = fields.CharField(max_length=45, description="標題")
  108. school_id = fields.IntField(description="學校ID")
  109. group_id = fields.IntField(description="學群")
  110. create_user_id = fields.IntField(description="創建使用者ID")
  111. create_time = fields.DatetimeField(description="創建時間")
  112. latest_update_user_id = fields.IntField(description="最新更新使用者ID")
  113. latest_update_time = fields.DatetimeField(description="最新更新時間")
  114. tags = fields.TextField(description="標籤")
  115. category = fields.CharField(max_length=45, description="類別")
  116. depiction = fields.TextField(description="文章描述")
  117. cover_img = fields.TextField( description="封面圖片")
  118. vedio_url = fields.TextField( description="影片連結")
  119. click_time = fields.IntField(description="點擊次數")
  120. content = fields.TextField(description="內容")
  121. is_del = fields.IntField(description="是否刪除")
  122. class Online_course(Model):
  123. id = fields.IntField(pk=True)
  124. title = fields.CharField(max_length=45, description="標題")
  125. category = fields.CharField(max_length=45, description="類別")
  126. create_time = fields.DatetimeField(description="發布時間")
  127. click_time = fields.IntField(description="點擊次數")
  128. content = fields.TextField(description="發布時間")
  129. vedio_url = fields.TextField(description="影片連結")
  130. group_id = fields.IntField(description="學群")
  131. class Guidance_group(Model):
  132. id = fields.IntField(pk=True)
  133. name = fields.CharField(max_length=125, description="協會(團體)名稱")
  134. contact_person = fields.CharField(max_length=125, description="聯絡人")
  135. contact_phone = fields.CharField(max_length=125, description="聯絡電話")
  136. line = fields.IntField(description="LINE (0:沒有、1:有)")
  137. address = fields.TextField(description="地址")
  138. email = fields.CharField(max_length=125, description="信箱")
  139. information = fields.TextField(description="開課資訊")
  140. request = fields.TextField(description="需求")
  141. schedule = fields.CharField(max_length=45, description="處理進度")
  142. result = fields.CharField(max_length=125, description="處理結果")
  143. person = fields.CharField(max_length=45, description="輔導人員")
  144. remark = fields.TextField(description="備註")