qa

package
v0.0.0-...-743d0d0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 22, 2022 License: MIT Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func RegisterRoutes

func RegisterRoutes(r *gin.Engine) error

Types

type AnswerDTO

type AnswerDTO struct {
	ID        int64     `json:"id,omitempty"`
	Content   string    `json:"content,omitempty"`
	CreatedAt time.Time `json:"created_at"`
	UpdatedAt time.Time `json:"updated_at"`

	Author *user.UserDTO `json:"author,omitempty"` // 作者
}

AnswerDTO 回答返回结构

func ConvertAnswerToDTO

func ConvertAnswerToDTO(answer *qa.Answer) *AnswerDTO

ConvertAnswerToDTO 将answer转化为DTO

func ConvertAnswersToDTO

func ConvertAnswersToDTO(answers []*qa.Answer) []*AnswerDTO

ConvertAnswersToDTO 将answers转化为带有tree结构的AnswerDTO

type QaApi

type QaApi struct {
}

func (*QaApi) AnswerCreate

func (api *QaApi) AnswerCreate(c *gin.Context)

AnswerCreate 代表创建回答 @Summary 创建回答 @Description 创建回答 @Accept json @Produce json @Tags qa @Param answerCreateParam body answerCreateParam true "创建回答参数" @Success 200 string Msg "操作成功" @Security ApiKeyAuth @Router /answer/create [post]

func (*QaApi) AnswerDelete

func (api *QaApi) AnswerDelete(c *gin.Context)

AnswerDelete 代表删除回答 @Summary 删除回答 @Description 删除回答 @Accept json @Produce json @Tags qa @Param answerDeleteParam body answerDeleteParam true "删除id" @Success 200 string Msg "操作成功" @Security ApiKeyAuth @Router /answer/delete [post]

func (*QaApi) QuestionCreate

func (api *QaApi) QuestionCreate(c *gin.Context)

QuestionCreate 代表创建问题 @Summary 创建问题 @Description 创建问题 @Accept json @Produce json @Tags qa @Param questionCreateParam body questionCreateParam true "创建问题参数" @Success 200 string Msg "操作成功" @Security ApiKeyAuth @Router /question/create [post]

func (*QaApi) QuestionDelete

func (api *QaApi) QuestionDelete(c *gin.Context)

QuestionDelete 删除问题 @Summary 删除问题 @Description 删除问题,同时删除问题中的所有答案 @Accept json @Produce json @Tags qa @Param id query int true "删除id" @Success 200 string Msg "操作成功" @Security ApiKeyAuth @Router /question/delete [post]

func (*QaApi) QuestionDetail

func (api *QaApi) QuestionDetail(c *gin.Context)

QuestionDetail 获取问题详情 @Summary 获取问题详情 @Description 获取问题详情,包括问题的所有回答 @Accept json @Produce json @Tags qa @Param param body questionDetailParam true "问题id" @Success 200 QuestionDTO question "问题详情,带回答和作者" @Security ApiKeyAuth @Router /question/detail [post]

func (*QaApi) QuestionEdit

func (api *QaApi) QuestionEdit(c *gin.Context)

QuestionEdit 编辑问题 @Summary 编辑问题 @Description 编辑问题 @Accept json @Produce json @Tags qa @Param questionEditParam body questionEditParam true "编辑问题参数" @Success 200 string Msg "操作成功" @Security ApiKeyAuth @Router /question/edit [post]

func (*QaApi) QuestionList

func (api *QaApi) QuestionList(c *gin.Context)

QuestionList 获取问题列表 @Summary 获取问题列表 @Description 获取问题列表,包含作者信息,不包含回答 @Accept json @Produce json @Tags qa @Param questionListParam body questionListParam true "获取问题列表参数" @Success 200 {array} QuestionDTO questions "问题列表" @Security ApiKeyAuth @Router /question/list [post]

type QuestionDTO

type QuestionDTO struct {
	ID        int64     `json:"id,omitempty"`
	Title     string    `json:"title,omitempty"`
	Context   string    `json:"context,omitempty"` // 在列表页,只显示前200个字符
	AnswerNum int       `json:"answer_num"`
	CreatedAt time.Time `json:"created_at"`
	UpdatedAt time.Time `json:"updated_at"`

	Author  *user.UserDTO `json:"author,omitempty"`  // 作者
	Answers []*AnswerDTO  `json:"answers,omitempty"` // 回答
}

QuestionDTO 问题列表返回结构

func ConvertQuestionToDTO

func ConvertQuestionToDTO(question *qa.Question, flags map[string]string) *QuestionDTO

ConvertQuestionToDTO 将question转换为DTO

func ConvertQuestionsToDTO

func ConvertQuestionsToDTO(questions []*qa.Question) []*QuestionDTO

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL