修正了题库详情飞花令数据的返回问题
This commit is contained in:
parent
cffc27faf9
commit
ba8830573c
@ -298,16 +298,26 @@ func (r *QuestionQa) GetQuestionQa(c *gin.Context) {
|
||||
return
|
||||
}
|
||||
|
||||
//if questionQa.QaStatus == 2 {
|
||||
// responses.FailWithMessage("题库已失效", c)
|
||||
// return
|
||||
//}
|
||||
|
||||
// 处理返回值
|
||||
g := dto.GetQuestionQaDto(questionQa)
|
||||
|
||||
// 加载明细选题规则
|
||||
g = g.LoadItemContent(questionQa.ItemContent)
|
||||
|
||||
// 获取题库飞花令数据
|
||||
if questionQa.QaDisplayType == 2 {
|
||||
questionQaTokenDao := dao.QuestionQaTokenDao{}
|
||||
maps := make(map[string]interface{})
|
||||
maps["qa_id"] = questionQa.QaId
|
||||
questionQaTokens, err := questionQaTokenDao.GetQuestionQaTokenPreloadList(maps)
|
||||
if err != nil {
|
||||
responses.FailWithMessage("题库不存在", c)
|
||||
return
|
||||
}
|
||||
|
||||
// 加载飞花令数据
|
||||
g = g.LoadQuestionQaToken(questionQaTokens)
|
||||
}
|
||||
|
||||
responses.OkWithData(g, c)
|
||||
}
|
||||
|
||||
@ -9,20 +9,26 @@ import (
|
||||
|
||||
// QuestionQaDto 问答题库
|
||||
type QuestionQaDto struct {
|
||||
QaId string `json:"qa_id"` // 主键id
|
||||
QaName string `json:"qa_name"` // 名称
|
||||
QaQuantity int `json:"qa_quantity"` // 题目数量
|
||||
QaStatus int `json:"qa_status"` // 状态(1:正常 2:无效)
|
||||
QaRuleContent string `json:"qa_rule_content"` // 规则解释
|
||||
QaDisplayType int `json:"qa_display_type"` // 展示类型(1:常规 2:飞花令)
|
||||
QaExpireTime *model.LocalTime `json:"qa_expire_time"` // 过期时间
|
||||
QaShareId string `json:"qa_share_id"` // 分享标识
|
||||
QaPassword string `json:"qa_password"` // 分享密码
|
||||
OpenNumber int `json:"open_number"` // 打开的次数
|
||||
Image string `json:"image"` // 背景图
|
||||
ItemContent []ItemContentDto `json:"item_content"` // 明细选题规则(json)
|
||||
CreatedAt model.LocalTime `json:"created_at"` // 创建时间
|
||||
UpdatedAt model.LocalTime `json:"updated_at"` // 更新时间
|
||||
QaId string `json:"qa_id"` // 主键id
|
||||
QaName string `json:"qa_name"` // 名称
|
||||
QaQuantity int `json:"qa_quantity"` // 题目数量
|
||||
QaStatus int `json:"qa_status"` // 状态(1:正常 2:无效)
|
||||
QaRuleContent string `json:"qa_rule_content"` // 规则解释
|
||||
QaDisplayType int `json:"qa_display_type"` // 展示类型(1:常规 2:飞花令)
|
||||
QaExpireTime *model.LocalTime `json:"qa_expire_time"` // 过期时间
|
||||
QaShareId string `json:"qa_share_id"` // 分享标识
|
||||
QaPassword string `json:"qa_password"` // 分享密码
|
||||
OpenNumber int `json:"open_number"` // 打开的次数
|
||||
Image string `json:"image"` // 背景图
|
||||
ItemContent []ItemContentDto `json:"item_content"` // 明细选题规则(json)
|
||||
QuestionQaToken []*QuestionQaTokenDto `json:"question_qa_token"` // 飞花令明细 展示类型为飞花令时存在
|
||||
CreatedAt model.LocalTime `json:"created_at"` // 创建时间
|
||||
UpdatedAt model.LocalTime `json:"updated_at"` // 更新时间
|
||||
}
|
||||
|
||||
// QuestionQaBaseTokenItem 问答题库-飞花令明细
|
||||
type QuestionQaBaseTokenItem struct {
|
||||
TokenId string `json:"token_id" form:"token_id" label:"飞花令明细id" validate:"required"`
|
||||
}
|
||||
|
||||
// ItemContentDto 问答题库-明细选题规则
|
||||
@ -96,3 +102,11 @@ func (r *QuestionQaDto) LoadItemContent(s string) *QuestionQaDto {
|
||||
}
|
||||
return r
|
||||
}
|
||||
|
||||
// LoadQuestionQaToken 加载飞花令数据
|
||||
func (r *QuestionQaDto) LoadQuestionQaToken(m []*model.QuestionQaToken) *QuestionQaDto {
|
||||
if len(m) > 0 {
|
||||
r.QuestionQaToken = GetQuestionQaTokenListDto(m)
|
||||
}
|
||||
return r
|
||||
}
|
||||
|
||||
52
api/dto/QuestionQaToken.go
Normal file
52
api/dto/QuestionQaToken.go
Normal file
@ -0,0 +1,52 @@
|
||||
package dto
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"knowledge/api/model"
|
||||
)
|
||||
|
||||
// QuestionQaTokenDto 知识问答-飞花令
|
||||
type QuestionQaTokenDto struct {
|
||||
QaTokenId string `json:"qa_token_id"` // 主键id
|
||||
QaId string `json:"qa_id"` // 知识问答id
|
||||
TokenId string `json:"token_id"` // 飞花令id
|
||||
Sort int `json:"sort"` // 排序(越大越靠前)
|
||||
CreatedAt model.LocalTime `json:"created_at"` // 创建时间
|
||||
UpdatedAt model.LocalTime `json:"updated_at"` // 更新时间
|
||||
}
|
||||
|
||||
// GetQuestionQaTokenDto 详情
|
||||
func GetQuestionQaTokenDto(m *model.QuestionQaToken) *QuestionQaTokenDto {
|
||||
return &QuestionQaTokenDto{
|
||||
QaTokenId: fmt.Sprintf("%d", m.QaTokenId),
|
||||
QaId: fmt.Sprintf("%d", m.QaId),
|
||||
TokenId: fmt.Sprintf("%d", m.TokenId),
|
||||
Sort: m.Sort,
|
||||
CreatedAt: m.CreatedAt,
|
||||
UpdatedAt: m.UpdatedAt,
|
||||
}
|
||||
}
|
||||
|
||||
// GetQuestionQaTokenListDto 列表
|
||||
func GetQuestionQaTokenListDto(m []*model.QuestionQaToken) []*QuestionQaTokenDto {
|
||||
// 处理返回值
|
||||
responses := make([]*QuestionQaTokenDto, len(m))
|
||||
|
||||
if len(m) > 0 {
|
||||
for i, v := range m {
|
||||
response := &QuestionQaTokenDto{
|
||||
QaTokenId: fmt.Sprintf("%d", v.QaTokenId),
|
||||
QaId: fmt.Sprintf("%d", v.QaId),
|
||||
TokenId: fmt.Sprintf("%d", v.TokenId),
|
||||
Sort: v.Sort,
|
||||
CreatedAt: v.CreatedAt,
|
||||
UpdatedAt: v.UpdatedAt,
|
||||
}
|
||||
|
||||
// 将转换后的结构体添加到新切片中
|
||||
responses[i] = response
|
||||
}
|
||||
}
|
||||
|
||||
return responses
|
||||
}
|
||||
@ -12,6 +12,7 @@ type QuestionQaToken struct {
|
||||
TokenId int64 `gorm:"column:token_id;type:bigint(19);comment:飞花令id" json:"token_id"`
|
||||
Sort int `gorm:"column:sort;type:tinyint(1);comment:排序(越大越靠前)" json:"sort"`
|
||||
Model
|
||||
BaseToken []*BaseToken `gorm:"foreignKey:TokenId;references:token_id" json:"base_token"`
|
||||
BaseTokenItem []*BaseTokenItem `gorm:"foreignKey:TokenId;references:token_id" json:"base_token_item"`
|
||||
}
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user