package dto import ( "case-api/api/model" "fmt" ) // CaseItemQuestionOptionDto 病历表-明细-题目-选项 type CaseItemQuestionOptionDto struct { OptionId string `json:"option_id"` //主键id QuestionId string `json:"question_id"` // 题目id OptionValue string `json:"option_value"` // 选项内容 CreatedAt model.LocalTime `json:"created_at"` // 创建时间 UpdatedAt model.LocalTime `json:"updated_at"` // 修改时间 Proportion float64 `json:"proportion"` // 被选择占比 SelectNum int `json:"select_num"` // 被选择数量 } // GetCaseItemQuestionOptionListDto 列表 func GetCaseItemQuestionOptionListDto(m []*model.CaseItemQuestionOption) []*CaseItemQuestionOptionDto { // 处理返回值 responses := make([]*CaseItemQuestionOptionDto, len(m)) if len(m) > 0 { for i, v := range m { response := &CaseItemQuestionOptionDto{ OptionId: fmt.Sprintf("%d", v.OptionId), QuestionId: fmt.Sprintf("%d", v.QuestionId), OptionValue: v.OptionValue, CreatedAt: v.CreatedAt, UpdatedAt: v.UpdatedAt, } // 将转换后的结构体添加到新切片中 responses[i] = response } } return responses } // LoadProportion 加载数据-占比 func (r *CaseItemQuestionOptionDto) LoadProportion(m float64) *CaseItemQuestionOptionDto { r.Proportion = m return r } // LoadSelectNum 加载数据-被选择数量 func (r *CaseItemQuestionOptionDto) LoadSelectNum(m int) *CaseItemQuestionOptionDto { r.SelectNum = m return r }