增加了题库不允许重复的业务逻辑4
This commit is contained in:
+27
-3
@@ -19,7 +19,7 @@ type QuestionQaDto struct {
|
||||
QaRuleContent string `json:"qa_rule_content"` // 规则解释
|
||||
QaDisplayType int `json:"qa_display_type"` // 展示类型(1:常规 2:飞花令)
|
||||
IsTurnTimer int `json:"is_turn_timer"` // 是否开启计时(0:否 1:是)
|
||||
IsRepeat int `json:"is_repeat"` // 是否允许重复(0:否 1:是)
|
||||
RepeatQaId []*RepeatQaId `json:"repeat_qa_id"` // 禁止重复id合集
|
||||
QaExpireTime *model.LocalTime `json:"qa_expire_time"` // 过期时间
|
||||
QaShareId string `json:"qa_share_id"` // 分享标识
|
||||
QaPassword string `json:"qa_password"` // 分享密码
|
||||
@@ -33,6 +33,12 @@ type QuestionQaDto struct {
|
||||
QuestionQaTimer []*QuestionQaTimerDto `json:"question_qa_timer"` // 计时设置
|
||||
}
|
||||
|
||||
// RepeatQaId 禁止重复id合集
|
||||
type RepeatQaId struct {
|
||||
QaId string `json:"qa_id"` // 主键id
|
||||
QaName string `json:"qa_name"` // 名称
|
||||
}
|
||||
|
||||
// QuestionQaBaseTokenItem 问答题库-飞花令明细
|
||||
type QuestionQaBaseTokenItem struct {
|
||||
TokenId string `json:"token_id" form:"token_id" label:"飞花令明细id" validate:"required"`
|
||||
@@ -69,7 +75,6 @@ func GetQuestionQaListDto(m []*model.QuestionQa) []*QuestionQaDto {
|
||||
QaRuleContent: v.QaRuleContent,
|
||||
QaDisplayType: v.QaDisplayType,
|
||||
IsTurnTimer: v.IsTurnTimer,
|
||||
IsRepeat: v.IsRepeat,
|
||||
QaExpireTime: &v.QaExpireTime,
|
||||
QaShareId: utils.AddDomain(v.QaShareId),
|
||||
QaPassword: v.QaPassword,
|
||||
@@ -108,7 +113,6 @@ func GetQuestionQaDto(m *model.QuestionQa) *QuestionQaDto {
|
||||
QaRuleContent: m.QaRuleContent,
|
||||
QaDisplayType: m.QaDisplayType,
|
||||
IsTurnTimer: m.IsTurnTimer,
|
||||
IsRepeat: m.IsRepeat,
|
||||
QaExpireTime: &m.QaExpireTime,
|
||||
QaShareId: utils.AddDomain(m.QaShareId),
|
||||
QaPassword: m.QaPassword,
|
||||
@@ -176,3 +180,23 @@ func (r *QuestionQaDto) LoadQuestionQaTimerDto(m []*model.QuestionQaTimer) *Ques
|
||||
}
|
||||
return r
|
||||
}
|
||||
|
||||
// LoadRepeatQaId 加载禁止重复id合集
|
||||
func (r *QuestionQaDto) LoadRepeatQaId(m []*model.QuestionQa) *QuestionQaDto {
|
||||
if len(m) > 0 {
|
||||
responses := make([]*RepeatQaId, len(m))
|
||||
|
||||
for i, v := range m {
|
||||
response := &RepeatQaId{
|
||||
QaId: fmt.Sprintf("%d", v.QaId),
|
||||
QaName: v.QaName,
|
||||
}
|
||||
|
||||
// 将转换后的结构体添加到新切片中
|
||||
responses[i] = response
|
||||
}
|
||||
|
||||
r.RepeatQaId = responses
|
||||
}
|
||||
return r
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user