新增智能新建题目功能

This commit is contained in:
2025-11-17 22:55:28 +08:00
parent 0fff276e59
commit e3366af9ec
9 changed files with 834 additions and 57 deletions
+15
View File
@@ -74,6 +74,21 @@ func GetExamQuestionDetail(tenantId int, id int64) (*QuestionWithMeta, error) {
return &QuestionWithMeta{Question: q, Options: opts, Answer: a}, nil
}
// FindExamQuestionByTitle 在指定租户下根据题目标题精确查找试题
// 用于批量导入时判断是否存在完全相同题目,以便执行覆盖更新
func FindExamQuestionByTitle(tenantId int, title string) (*models.ExamQuestion, error) {
o := orm.NewOrm()
q := new(models.ExamQuestion)
qs := o.QueryTable(q).Filter("delete_time__isnull", true).Filter("question_title", title)
if tenantId > 0 {
qs = qs.Filter("tenant_id", tenantId)
}
if err := qs.One(q); err != nil {
return nil, err
}
return q, nil
}
func CreateExamQuestion(tenantId int, q *models.ExamQuestion, options []models.ExamQuestionOption, answerContent string) (int64, error) {
o := orm.NewOrm()
if tenantId > 0 {