增加了题库不允许重复的业务逻辑6
This commit is contained in:
parent
c7f68e4edc
commit
2a6d7d82ab
@ -63,7 +63,13 @@ type AddQuestionQa struct {
|
||||
BaseTokenItem []AddQuestionQaBaseTokenItem `json:"base_token_item" form:"base_token_item" label:"飞花令明细"` // 展示类型为飞花令时存在
|
||||
TokenQuestionContent []TokenQuestionContent `json:"token_question_content" form:"token_question_content" label:"飞花令题目数量规则"` // -json(当题库类型为2、3时存在。2表示飞花令后固定题目数量,3表示飞花令后单个类型题目数量)
|
||||
QuestionQaTimer []QuestionQaTimer `json:"question_qa_timer" form:"question_qa_timer" label:"计时设置"` //
|
||||
RepeatQaId string `json:"repeat_qa_id" form:"repeat_qa_id" label:"禁止重复id合集"` // 禁止重复id合集
|
||||
RepeatQaId []RepeatQaId `json:"repeat_qa_id" form:"repeat_qa_id" label:"禁止重复id合集"` // 禁止重复id合集
|
||||
}
|
||||
|
||||
// RepeatQaId 禁止重复id合集
|
||||
type RepeatQaId struct {
|
||||
QaId string `json:"qa_id" form:"qa_id" label:"唯一标识" validate:"required"`
|
||||
QaName string `json:"qa_name" form:"qa_name" label:"名称" validate:"required"`
|
||||
}
|
||||
|
||||
// QuestionQaItem 新增问答题库-题目明细
|
||||
@ -111,7 +117,7 @@ type PutQuestionQa struct {
|
||||
BaseTokenItem []PutQuestionQaBaseTokenItem `json:"base_token_item" form:"base_token_item" label:"飞花令明细"` // 展示类型为飞花令时存在
|
||||
TokenQuestionContent []TokenQuestionContent `json:"token_question_content" form:"token_question_content" label:"飞花令题目数量规则"` // -json(当题库类型为2、3时存在。2表示飞花令后固定题目数量,3表示飞花令后单个类型题目数量)
|
||||
QuestionQaTimer []QuestionQaTimer `json:"question_qa_timer" form:"question_qa_timer" label:"计时设置"` //
|
||||
RepeatQaId string `json:"repeat_qa_id" form:"repeat_qa_id" label:"禁止重复id合集"` // 禁止重复id合集(逗号分割)
|
||||
RepeatQaId []RepeatQaId `json:"repeat_qa_id" form:"repeat_qa_id" label:"禁止重复id合集"` // 禁止重复id合集
|
||||
}
|
||||
|
||||
// PutQuestionQaBaseTokenItem 修改问答题库-飞花令明细
|
||||
|
||||
@ -217,9 +217,12 @@ func (r *QuestionQaService) AddQuestionQa(req requests.AddQuestionQa) (bool, err
|
||||
questionQaItemDao := dao.QuestionQaItemDao{}
|
||||
|
||||
var notQuestionIds []int64 // 处理需排除的题目id
|
||||
if req.RepeatQaId != "" {
|
||||
if len(req.RepeatQaId) > 0 {
|
||||
// 获取正常题库的明细列表
|
||||
repeatQaId := strings.Split(req.RepeatQaId, ",")
|
||||
var repeatQaId []string
|
||||
for _, item := range req.RepeatQaId {
|
||||
repeatQaId = append(repeatQaId, item.QaId)
|
||||
}
|
||||
questionQaItems, _ := questionQaItemDao.GetQuestionQaItemListByQaIdDistinctQuestionId(repeatQaId)
|
||||
if len(questionQaItems) > 0 {
|
||||
for _, item := range questionQaItems {
|
||||
@ -361,8 +364,16 @@ func (r *QuestionQaService) PutQuestionQa(qaId int64, req requests.PutQuestionQa
|
||||
}
|
||||
|
||||
// 是否允许重复
|
||||
if req.RepeatQaId != questionQa.RepeatQaId {
|
||||
questionQaData["repeat_qa_id"] = req.RepeatQaId
|
||||
if len(req.RepeatQaId) > 0 {
|
||||
var repeatQaId []string
|
||||
for _, item := range req.RepeatQaId {
|
||||
repeatQaId = append(repeatQaId, item.QaId)
|
||||
}
|
||||
|
||||
repeatQaIdStr := strings.Join(repeatQaId, ",")
|
||||
if repeatQaIdStr != questionQa.RepeatQaId {
|
||||
questionQaData["repeat_qa_id"] = req.RepeatQaId
|
||||
}
|
||||
}
|
||||
|
||||
// 背景图
|
||||
@ -424,9 +435,12 @@ func (r *QuestionQaService) PutQuestionQa(qaId int64, req requests.PutQuestionQa
|
||||
}
|
||||
|
||||
var notQuestionIds []int64 // 处理需排除的题目id
|
||||
if req.RepeatQaId != "" {
|
||||
if len(req.RepeatQaId) > 0 {
|
||||
// 获取正常题库的明细列表
|
||||
repeatQaId := strings.Split(req.RepeatQaId, ",")
|
||||
var repeatQaId []string
|
||||
for _, item := range req.RepeatQaId {
|
||||
repeatQaId = append(repeatQaId, item.QaId)
|
||||
}
|
||||
questionQaItems, _ := questionQaItemDao.GetQuestionQaItemListByQaIdDistinctQuestionId(repeatQaId)
|
||||
if len(questionQaItems) > 0 {
|
||||
for _, item := range questionQaItems {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user