feat: 打手接单考试(按俱乐部题库、配置与通过状态)
This commit is contained in:
@@ -230,6 +230,73 @@ class IdentityTagBind(QModel):
|
||||
]
|
||||
|
||||
|
||||
class ClubDashouExamConfig(QModel):
|
||||
"""各俱乐部打手抢单前考试配置(互不影响)。"""
|
||||
club_id = models.CharField(max_length=16, primary_key=True)
|
||||
is_enabled = models.BooleanField(default=False, verbose_name='是否开启考试')
|
||||
draw_count = models.PositiveIntegerField(default=10, verbose_name='每次抽题数量')
|
||||
pass_count = models.PositiveIntegerField(default=10, verbose_name='至少答对题数')
|
||||
require_member = models.BooleanField(default=True, verbose_name='须开通会员方可考试')
|
||||
CreateTime = models.DateTimeField(auto_now_add=True)
|
||||
UpdateTime = models.DateTimeField(auto_now=True)
|
||||
|
||||
class Meta:
|
||||
db_table = 'club_dashou_exam_config'
|
||||
|
||||
|
||||
class ClubDashouExamQuestion(QModel):
|
||||
"""俱乐部考试题库(题干+最多6选项)。"""
|
||||
club_id = models.CharField(max_length=16, db_index=True)
|
||||
stem = models.TextField(verbose_name='题干文字')
|
||||
question_type = models.IntegerField(default=1, verbose_name='1单选2多选')
|
||||
option_1 = models.CharField(max_length=500, blank=True, default='')
|
||||
option_2 = models.CharField(max_length=500, blank=True, default='')
|
||||
option_3 = models.CharField(max_length=500, blank=True, default='')
|
||||
option_4 = models.CharField(max_length=500, blank=True, default='')
|
||||
option_5 = models.CharField(max_length=500, blank=True, default='')
|
||||
option_6 = models.CharField(max_length=500, blank=True, default='')
|
||||
correct_1 = models.BooleanField(default=False)
|
||||
correct_2 = models.BooleanField(default=False)
|
||||
correct_3 = models.BooleanField(default=False)
|
||||
correct_4 = models.BooleanField(default=False)
|
||||
correct_5 = models.BooleanField(default=False)
|
||||
correct_6 = models.BooleanField(default=False)
|
||||
explanation = models.TextField(blank=True, default='', verbose_name='错题解析')
|
||||
is_enabled = models.BooleanField(default=True, verbose_name='是否上架')
|
||||
sort_order = models.IntegerField(default=0)
|
||||
CreateTime = models.DateTimeField(auto_now_add=True)
|
||||
UpdateTime = models.DateTimeField(auto_now=True)
|
||||
|
||||
class Meta:
|
||||
db_table = 'club_dashou_exam_question'
|
||||
indexes = [models.Index(fields=['club_id', 'is_enabled'])]
|
||||
|
||||
|
||||
class ClubDashouExamQuestionImage(QModel):
|
||||
"""题目配图(题干下方,可多张)。"""
|
||||
club_id = models.CharField(max_length=16, db_index=True)
|
||||
question_id = models.IntegerField(db_index=True)
|
||||
image_url = models.CharField(max_length=500)
|
||||
sort_order = models.IntegerField(default=0)
|
||||
CreateTime = models.DateTimeField(auto_now_add=True)
|
||||
|
||||
class Meta:
|
||||
db_table = 'club_dashou_exam_question_image'
|
||||
indexes = [models.Index(fields=['club_id', 'question_id'])]
|
||||
|
||||
|
||||
class ClubDashouExamPass(QModel):
|
||||
"""打手在本俱乐部是否已通过考试。"""
|
||||
club_id = models.CharField(max_length=16, db_index=True)
|
||||
yonghuid = models.CharField(max_length=7, db_index=True)
|
||||
passed_at = models.DateTimeField(auto_now_add=True)
|
||||
CreateTime = models.DateTimeField(auto_now_add=True)
|
||||
|
||||
class Meta:
|
||||
db_table = 'club_dashou_exam_pass'
|
||||
unique_together = [['club_id', 'yonghuid']]
|
||||
|
||||
|
||||
class KefuMenuPage(QModel):
|
||||
"""客服后台左侧菜单页(固定 page_id,与前端路由对应)。"""
|
||||
page_id = models.CharField(max_length=64, primary_key=True, verbose_name='页面ID')
|
||||
|
||||
Reference in New Issue
Block a user