You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
134 lines
3.2 KiB
134 lines
3.2 KiB
package model |
|
|
|
import ( |
|
"database/sql" |
|
"go-common/library/time" |
|
) |
|
|
|
// 常量 |
|
const ( |
|
DeledStatus = 1 // 已删除 |
|
PAGESIZE = 20 // 每页条数 |
|
STARTINDEX = 20 // 开始页码 |
|
MULTIPLECHOICE = 2 //多选 |
|
) |
|
|
|
// Question 题目返回数据 |
|
type Question struct { |
|
QsID int64 `json:"qid"` |
|
QsType int8 `json:"question_type"` |
|
AnswerType int8 `json:"answer_type"` |
|
QsName string `json:"question_name"` |
|
QsDif int8 `json:"difficulty"` |
|
QsBId int64 `json:"qb_id"` |
|
IsDeleted uint8 `json:"is_deleted"` |
|
//Ctime string `json:"ctime"` |
|
//Mtime string `json:"mtime"` |
|
} |
|
|
|
// GetQuestionItem 获取题目接口返回数据 |
|
type GetQuestionItem struct { |
|
*Question |
|
Answers []*Answer `json:"answers"` |
|
QuestBkPic *QuestBkPic `json:"qspic"` |
|
AllCnt int64 `json:"total"` |
|
AnTime int64 `json:"answer_cnt"` |
|
} |
|
|
|
// QuestBkPic 坐标 |
|
type QuestBkPic struct { |
|
X int `json:"x"` |
|
Y int `json:"y"` |
|
Src string `json:"src"` |
|
} |
|
|
|
// QuestionAll 题目所有 |
|
type QuestionAll struct { |
|
Question |
|
AnswersList []*Answer `json:"answers"` |
|
} |
|
|
|
//QuestionBank stuct |
|
type QuestionBank struct { |
|
//ID int64 `json:"id"` |
|
QsBId int64 `json:"qb_id"` |
|
QBName string `json:"qb_name"` |
|
CdTime int64 `json:"cd_time"` |
|
MaxRetryTime int64 `json:"max_retry_time"` |
|
IsDeleted int8 `json:"is_deleted"` |
|
} |
|
|
|
// QusBankSt 返回 |
|
type QusBankSt struct { |
|
QuestionBank |
|
ID int64 `json:"id"` |
|
TotalCnt int64 `json:"total_cnt"` |
|
EasyCnt int64 `json:"easy_cnt"` |
|
NormalCnt int64 `json:"normal_cnt"` |
|
HardCnt int64 `json:"hard_cnt"` |
|
} |
|
|
|
// QusBankCnt 统计类 |
|
type QusBankCnt struct { |
|
ID int64 `json:"id"` |
|
TotalCnt int64 `json:"total_cnt"` |
|
EasyCnt sql.NullInt64 `json:"easy_cnt"` |
|
NormalCnt sql.NullInt64 `json:"normal_cnt"` |
|
HardCnt sql.NullInt64 `json:"hard_cnt"` |
|
} |
|
|
|
//Answer stuct |
|
type Answer struct { |
|
QsID int64 `json:"qid"` |
|
AnswerContent string `json:"answer_content"` |
|
IsCorrect int8 `json:"is_correct"` |
|
AnswerID int64 `json:"answer_id"` |
|
} |
|
|
|
// AnswerAdd add |
|
type AnswerAdd struct { |
|
Answer |
|
} |
|
|
|
// AddReturn return |
|
type AddReturn struct { |
|
ID int64 `json:"id"` |
|
} |
|
|
|
// Page page |
|
type Page struct { |
|
Total int64 `json:"total"` |
|
PageNo int `json:"page_no" default:"1"` |
|
PageSize int `json:"page_size" default:"20"` |
|
} |
|
|
|
// QuestionBankBind 绑定题库字段 |
|
type QuestionBankBind struct { |
|
ID int64 `json:"id"` |
|
TargetItem string `json:"target_item" validate:"required"` |
|
TargetItemType int8 `json:"target_item_type" validate:"required"` |
|
QsBId int64 `json:"bank_id" validate:"required"` |
|
UseInTime int64 `json:"use_in_time" validate:"required"` |
|
Source int8 `json:"source" validate:"required"` |
|
IsDeleted int8 `json:"is_deleted"` |
|
Ctime time.Time `json:"ctime"` |
|
Mtime time.Time `json:"mtime"` |
|
|
|
QuestionBank *QuestionBank `json:"question_bank,omitempty"` |
|
} |
|
|
|
// RespList 返回 |
|
type RespList struct { |
|
Page |
|
Items interface{} `json:"items"` |
|
} |
|
|
|
// AddLog log |
|
type AddLog struct { |
|
UID string |
|
QsID int64 |
|
Platform int8 |
|
Source int8 |
|
Ids string |
|
IsCorrect int8 |
|
}
|
|
|