object

package
v1.0.0 Latest Latest
Warning

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

Go to latest
Published: Oct 17, 2022 License: Apache-2.0 Imports: 14 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func AddAudit

func AddAudit(audit *Audit) error

func AddDataset

func AddDataset(dataset *Dataset) bool

func AddFile

func AddFile(fileItem *FileItem) error

func AddFinalQuestion

func AddFinalQuestion(finalQuestion *FinalQuestion) error

func AddFinalTestpaper

func AddFinalTestpaper(finalTestpaper *FinalTestpaper) error

func AddProject

func AddProject(project *Project) error

func AddQuestionComment

func AddQuestionComment(request *AddQuestionCommentRequest) error

func AddStep

func AddStep(step *Step) error

func AddSubmit

func AddSubmit(submit *Submit) error

func AddTempQuestion

func AddTempQuestion(tempQuestion *TempQuestion) error

func AddTempTestpaper

func AddTempTestpaper(tempTestpaper *TempTestpaper) error

func AddTestpaperComment

func AddTestpaperComment(requset *AddTestpaperCommentRequest) error

func AppendContent

func AppendContent(req *AppendContentInSubmit) (*[]Content, error)

func ChangeAssignment

func ChangeAssignment(req *ChangeAssignmentRequest) error

func CreateEmptyProject

func CreateEmptyProject(req *Project) (string, error)

func CreateNewTempQuestion

func CreateNewTempQuestion(request *TempQuestion) (string, error)

func CreateNewTestpaper

func CreateNewTestpaper(request *TempTestpaper) (string, error)

func CreateOneStep

func CreateOneStep(req *Step) (string, error)

func CreateTemplateProject

func CreateTemplateProject(req *Project) (string, error)

func DeleteAudit

func DeleteAudit(auditId string) error

func DeleteDataset

func DeleteDataset(dataset *Dataset) bool

func DeleteFile

func DeleteFile(fileID string) error

DeleteFile delete the file-record in mongodb (keep on disk currently)

func DeleteFinalQuestion

func DeleteFinalQuestion(finalQuestion *FinalQuestion) bool

func DeleteFinalTestpaper

func DeleteFinalTestpaper(tid string) error

func DeleteProject

func DeleteProject(project *Project) bool

func DeleteStep

func DeleteStep(stepId string) error

func DeleteStepTimePoint

func DeleteStepTimePoint(req *DeleteStepTimePointRequest) error

func DeleteSubmit

func DeleteSubmit(submitId string) error

func DeleteTempQuestion

func DeleteTempQuestion(tempQuestion *TempQuestion) bool

func DeleteTempTestpaper

func DeleteTempTestpaper(tid string) error

func FinishTempQuestion

func FinishTempQuestion(qid string) (string, error)

func FinishTempTestpaper

func FinishTempTestpaper(tid string) (string, error)

func GetAllStepsInProject

func GetAllStepsInProject(pid string) (*[]Step, error)

func GetProjectAssignment

func GetProjectAssignment(pid string) (map[string][]Assignment, error)

func GetProjectDetailedInfo

func GetProjectDetailedInfo(pid string) (map[string]interface{}, error)

func GetStepSubmits

func GetStepSubmits(stepId string) (*[]Submit, error)

func GetSubmitAudits

func GetSubmitAudits(submitId string) (*[]Audit, error)

func GetTestpaperAssignment

func GetTestpaperAssignment(tid string) (map[string]auth.User, error)

func GetUserAssignments

func GetUserAssignments(uid string) (*[]Assignment, error)

func GetUserSubmitsInStep

func GetUserSubmitsInStep(req *GetUserSubmitsInStepRequest) (*[]Submit, error)

func InitAdapter

func InitAdapter()

func InitConfig

func InitConfig()

func MakeOneAssignment

func MakeOneAssignment(req *MakeOneAssignmentRequest) (string, error)

func MakeOneTpAssignment

func MakeOneTpAssignment(req *MakeOneTpAssignmentRequest) (string, error)

func NextStep

func NextStep(req *NextStepRequest) error

func QueryProjects

func QueryProjects(ids []string) map[string]Project

QueryProjects get project list

func QueryTempQuestions

func QueryTempQuestions(idList []string) map[string]TempQuestion

QueryTempQuestions 进行批量查询的方法

func RemoveAssignment

func RemoveAssignment(aid string) error

func SearchFiles

func SearchFiles(searchReq *FileItem) (*[]FileItem, error)

func SetStepStatus

func SetStepStatus(req *Step) error

func SetStepTimePoint

func SetStepTimePoint(req *SetStepTimePointRequest) (*[]ProjectTimePoint, error)

func SetSubmitStatus

func SetSubmitStatus(req *SetSubmitStatusRequest) error

func UpdateDataset

func UpdateDataset(id string, dataset *Dataset) bool

func UpdateFinalQuestion

func UpdateFinalQuestion(request *TempQuestion) error

func UpdateProject

func UpdateProject(id string, project *Project) bool

func UpdateProjectInfo

func UpdateProjectInfo(req *Project) error

func UpdateQuestion

func UpdateQuestion(request *TempQuestion) (string, error)

func UpdateStepInfo

func UpdateStepInfo(req *Step) error

func UpdateSubmitFile

func UpdateSubmitFile(req *UpdateFileRequest) error

func UpdateTestpaper

func UpdateTestpaper(request *TempTestpaper) (string, error)

func UploadFileToStorage

func UploadFileToStorage(req *FileItem, fileBytes []byte) (string, string)

func UploadStepAttachments

func UploadStepAttachments(req *AddStepAttachment) error

func WithdrawContent

func WithdrawContent(req *WithdrawContentInSubmit) (*[]Content, error)

Types

type Adapter

type Adapter struct {
	// contains filtered or unexported fields
}

Adapter represents the MySQL adapter for policy storage.

func NewAdapter

func NewAdapter(driverName string, dataSourceName string) *Adapter

NewAdapter is the constructor for Adapter.

type AddQuestionCommentRequest

type AddQuestionCommentRequest struct {
	QuestionId string `json:"question_id"`
	Comment    string `json:"comment"`
	Author     string `json:"author"`
}

type AddStepAttachment

type AddStepAttachment struct {
	StepId   string       `json:"step_id"`
	FilesIds []FileRecord `json:"files_ids"`
	Uploader string       `json:"uploader"`
}

type AddTestpaperCommentRequest

type AddTestpaperCommentRequest struct {
	TestpaperId string `json:"testpaper_id"`
	Comment     string `json:"comment"`
	Author      string `json:"author"`
}

type AppendContentInSubmit

type AppendContentInSubmit struct {
	SubmitId string `json:"submit_id"`
	Type     int    `json:"type"`
	ItemId   string `json:"item_id"`
	Version  string `json:"version"`
	Comment  string `json:"comment"`
}

type Assignment

type Assignment struct {
	Uuid        string `xorm:"varchar(100) notnull pk" json:"uuid"`
	UserId      string `json:"user_id"`
	ProjectId   string `json:"project_id"`
	Role        int    `json:"role"`
	Operator    string `json:"operator"`
	IsConfirmed bool   `json:"is_confirmed"`
	Status      int    `json:"status"`

	CreateAt  time.Time `xorm:"created" json:"create_at"`
	UpdatedAt time.Time `xorm:"updated" json:"updated_at"`
}

type Audit

type Audit struct {
	Owner       string `xorm:"varchar(100) notnull pk" json:"owner"`
	Name        string `xorm:"varchar(100) notnull pk" json:"name"`
	CreatedTime string `xorm:"varchar(100)" json:"created_time"`

	SubmitContent string `json:"submit_content"`
	Result        string `json:"result"`
	Comment       string `json:"comment"`
	Auditor       string `json:"auditor"`

	CreateAt  time.Time `xorm:"created" json:"create_at"`
	UpdatedAt time.Time `xorm:"updated" json:"updated_at"`
}

func CorrectAudit

func CorrectAudit(req *Audit) (*Audit, error)

func GetAudit

func GetAudit(id string) *Audit

func GetOneAudit

func GetOneAudit(auditId string) (*Audit, error)

func MakeOneAudit

func MakeOneAudit(req *Audit) (*Audit, error)

type ChangeAssignmentRequest

type ChangeAssignmentRequest struct {
	Operator     string `json:"operator"`
	AssignmentId string `json:"assignment_id"`
	NewRole      int    `json:"new_role"`
}

type Content

type Content struct {
	Uuid    string `json:"uuid"`
	Type    int    `json:"type"`
	ItemId  string `json:"item_id"`
	Version string `json:"version"`
	Comment string `json:"comment"`
}

type Dataset

type Dataset struct {
	Owner       string `xorm:"varchar(100) notnull pk" json:"owner"`
	Name        string `xorm:"varchar(100) notnull pk" json:"name"`
	CreatedTime string `xorm:"varchar(100)" json:"createdTime"`

	StartDate string `xorm:"varchar(100)" json:"startDate"`
	EndDate   string `xorm:"varchar(100)" json:"endDate"`
	FullName  string `xorm:"varchar(100)" json:"fullName"`
	Organizer string `xorm:"varchar(100)" json:"organizer"`
	Location  string `xorm:"varchar(100)" json:"location"`
	Address   string `xorm:"varchar(100)" json:"address"`
	Status    string `xorm:"varchar(100)" json:"status"`
	Language  string `xorm:"varchar(100)" json:"language"`

	Tags        []string    `xorm:"mediumtext" json:"tags"`
	Carousels   []string    `xorm:"mediumtext" json:"carousels"`
	IntroText   string      `xorm:"mediumtext" json:"introText"`
	DefaultItem string      `xorm:"mediumtext" json:"defaultItem"`
	TreeItems   []*TreeItem `xorm:"mediumtext" json:"treeItems"`
}

func GetDataset

func GetDataset(id string) *Dataset

func GetDatasets

func GetDatasets(owner string) []*Dataset

func GetGlobalDatasets

func GetGlobalDatasets() []*Dataset

type DeleteStepTimePointRequest

type DeleteStepTimePointRequest struct {
	StepId     string `json:"step_id"`
	PointIndex int    `json:"point_index"`
}

type FileItem

type FileItem struct {
	Uuid          string   `xorm:"varchar(100) notnull pk" json:"uuid"`
	Name          string   `json:"name"`
	Type          string   `json:"type"`
	SourceProject string   `json:"source_project"`
	Description   string   `json:"description"`
	Tags          []string `xorm:"mediumtext" json:"tags"`
	Path          string   `json:"path"`
	Owner         string   `json:"owner"`

	CreateAt  time.Time `xorm:"created" json:"create_at"`
	UpdatedAt time.Time `xorm:"updated" json:"updated_at"`
}

func GetFileInfo

func GetFileInfo(fileUuid string) (*FileItem, error)

GetFileInfo get file information by file-uuid

type FileRecord

type FileRecord struct {
	FileName string `json:"file_name"`
	FileUrl  string `json:"file_url"`
}

type FinalQuestion

type FinalQuestion struct {
	Uuid          string                `xorm:"varchar(100) notnull pk"  json:"uuid"`
	SourceProject string                `json:"source_project"` // 来源项目id
	FinalVersion  string                `json:"final_version"`  // 录入final的最后一个版本
	Author        string                `json:"author"`
	Info          QuestionInfo          `xorm:"mediumtext json" json:"info"`
	BasicProps    QuestionBasicProps    `xorm:"mediumtext json" json:"basic_props"`
	SpecProps     QuestionSpecProps     `xorm:"mediumtext json" json:"spec_props"`
	ExtraProps    QuestionExtraProps    `xorm:"mediumtext json" json:"extra_props"`
	AdvancedProps QuestionAdvancedProps `xorm:"mediumtext json" json:"advanced_props"`
	ApplyRecord   QuestionApplyRecord   `xorm:"mediumtext json" json:"apply_record"`

	CreateAt  time.Time `xorm:"created" json:"create_at"`
	UpdatedAt time.Time `xorm:"updated" json:"updated_at"`
	DeletedAt time.Time `xorm:"deleted" json:"deleted_at"`
}

func GetProjectFinalQuestions

func GetProjectFinalQuestions(pid string) ([]FinalQuestion, error)

func GetUserFinalQuestions

func GetUserFinalQuestions(uid string) ([]FinalQuestion, error)

func SearchQuestion

func SearchQuestion(bodyString string) ([]FinalQuestion, error)

type FinalTestpaper

type FinalTestpaper struct {
	Uuid          string          `xorm:"varchar(100) notnull pk" json:"uuid"`
	SourceProject string          `json:"source_project"`
	Author        string          `json:"author"`
	Title         string          `json:"title"`
	Info          []TestpaperPart `xorm:"mediumtext" json:"info"`
	Props         TestpaperProps  `xorm:"mediumtext json" json:"props"`

	CreateAt  time.Time `xorm:"created" json:"create_at"`
	UpdatedAt time.Time `xorm:"updated" json:"updated_at"`
	DeletedAt time.Time `xorm:"deleted" json:"deleted_at"`
}

func GetProjecgtFinalTestpaper

func GetProjecgtFinalTestpaper(pid string) ([]FinalTestpaper, error)

func GetUserFinalTestpaper

func GetUserFinalTestpaper(uid string) ([]FinalTestpaper, error)

type GetUserSubmitsInStepRequest

type GetUserSubmitsInStepRequest struct {
	UserId string `json:"user_id"`
	StepId string `json:"step_id"`
}

type MakeOneAssignmentRequest

type MakeOneAssignmentRequest struct {
	Operator  string `json:"operator"`
	ProjectId string `json:"project_id"`
	UserId    string `json:"user_id"`
	Role      int    `json:"role"`
}

type MakeOneTpAssignmentRequest

type MakeOneTpAssignmentRequest struct {
	Operator    string `json:"operator"`
	ProjectId   string `json:"project_id"`
	TestpaperId string `json:"testpaper_id"`
	UserId      string `json:"user_id"`
	Role        string `json:"role"`
}

type NextStepRequest

type NextStepRequest struct {
	Pid string `json:"pid"`
}

type Project

type Project struct {
	Owner       string `xorm:"varchar(100) notnull pk" json:"owner"`
	Name        string `xorm:"varchar(100) notnull pk" json:"name"`
	CreatedTime string `xorm:"varchar(100)" json:"created_time"`

	Creator   string           `xorm:"varchar(256) index" json:"creator"`
	Status    int              `json:"status"`
	BasicInfo ProjectBasicInfo `xorm:"mediumtext json" json:"basic_info"`

	CreateAt  time.Time `xorm:"created" json:"create_at"`
	UpdatedAt time.Time `xorm:"updated" json:"updated_at"`
	DeletedAt time.Time `xorm:"deleted" json:"deleted_at"`
}

func GetProject

func GetProject(id string) *Project

func GetProjectBasicInfo

func GetProjectBasicInfo(pid string) (*Project, error)

type ProjectBasicInfo

type ProjectBasicInfo struct {
	Name        string   `xorm:"index" json:"name"`
	Description string   `json:"description"`
	Requirement string   `json:"requirement"`
	Target      string   `json:"target"`
	GradeRange  []string `xorm:"mediumtext" json:"grade_range"`
	Subjects    []string `xorm:"mediumtext" json:"subjects"`
	Summary     string   `json:"summary"`
}

type ProjectFullInfo

type ProjectFullInfo struct {
	BasicInfo Project          `json:"basic_info" bson:"basic_info"`
	Group     ProjectGroup     `json:"group" bson:"group"`
	TimeTable ProjectTimeTable `json:"time_table" bson:"time_table"`
	Materials ProjectMaterials `json:"materials" bson:"materials"`
	Steps     []Step           `json:"steps" bson:"steps"`
	Submits   []Submit         `json:"submits" bson:"submits"`
	Audits    []Audit          `json:"audits" bson:"audits"`
}

type ProjectGroup

type ProjectGroup struct {
	Admins     []string `json:"admin" bson:"admin"`
	Experts    []string `json:"expert" bson:"expert"`
	Assistants []string `json:"assistant" bson:"assistant"`
	Teachers   []string `json:"teachers" bson:"teachers"`
	OutExperts []string `json:"out_experts" bson:"out_experts"`
}

type ProjectMaterials

type ProjectMaterials struct {
	Questions  []string `json:"questions" bson:"questions"`
	ExamPapers []string `json:"exam_papers" bson:"exam_papers"`
	Files      []string `json:"files" bson:"files"`
}

type ProjectTimePoint

type ProjectTimePoint struct {
	Title     string    `json:"title" bson:"title"`
	StartTime time.Time `json:"start_time" bson:"start_time"`
	EndTime   time.Time `json:"end_time" bson:"end_time"`
	Notice    string    `json:"notice" bson:"notice"`
	Comment   string    `json:"comment" bson:"comment"`
}

type ProjectTimeTable

type ProjectTimeTable struct {
	TimePoints []ProjectTimePoint `json:"time_points" bson:"time_points"`
}

ProjectTimeTable describe the timeline of a project

type QuestionAdvancedProps

type QuestionAdvancedProps struct {
	CttLevel  float64 `json:"ctt_level"`
	CttDiff_1 float64 `json:"ctt_diff_1"`
	CttDiff_2 float64 `json:"ctt_diff_2"`
	IrtLevel  float64 `json:"irt_level"`
}

type QuestionApplyRecord

type QuestionApplyRecord struct {
	GradeFits        string   `json:"grade_fits"`
	TestYear         string   `json:"test_year"`
	TestRegion       []string `json:"test_region"`
	ParticipantCount int      `json:"participant_count"`
	TestCount        int      `json:"test_count"`
}

type QuestionBasicProps

type QuestionBasicProps struct {
	Encode              string   `json:"encode"`
	Subject             string   `json:"subject"`
	DetailsDimension    string   `json:"details_dimension"`
	SubDetailsDimension string   `json:"sub_details_dimension"`
	AbilityDimension    string   `json:"ability_dimension"`
	SubAbilityDimension string   `json:"sub_ability_dimension"`
	Description         string   `json:"description"`
	SubjectRequirements string   `json:"subject_requirements"`
	Details             string   `json:"details"`
	Keywords            []string `json:"keywords"`
}

type QuestionComment

type QuestionComment struct {
	TimePoint time.Time `json:"time_point"`
	Comment   string    `json:"comment"`
	Author    string    `json:"author"`
}

type QuestionExtraProps

type QuestionExtraProps struct {
	IsScene              bool   `json:"is_scene"`
	IsQuestionGroup      bool   `json:"is_question_group"`
	ReadingMaterialTopic string `json:"reading_material_topic"`
	MaterialLength       int    `json:"material_length"`
}

type QuestionInfo

type QuestionInfo struct {
	Title    string `json:"title"`
	Type     string `json:"type"`
	Body     string `json:"body"`
	Answer   string `json:"answer"`
	Solution string `json:"solution"`
}

type QuestionItem

type QuestionItem struct {
	SmallQuestionNumber int    `json:"small_question_number"`
	QuestionId          string `json:"question_id"`
	Score               int    `json:"score"`
	Comment             string `json:"comment"`
}

type QuestionItemV1

type QuestionItemV1 struct {
	SmallQuestionNumber int          `json:"small_question_number"`
	Question            TempQuestion `json:"question"`
	Score               int          `json:"score"`
	Comment             string       `json:"comment"`
}

type QuestionSpecProps

type QuestionSpecProps struct {
	Topic       string `json:"topic"`
	ArticleType string `json:"article_type"`
	Length      string `json:"length"`
}

type SetStepTimePointRequest

type SetStepTimePointRequest struct {
	StepId     string `json:"step_id"`
	PointIndex int    `json:"point_index"`
	// index < 0 || index >= len  -> create a new time point
	Info TimePoint `json:"info"`
}

type SetSubmitStatusRequest

type SetSubmitStatusRequest struct {
	SubmitId  string `json:"submit_id"`
	NewStatus string `json:"new_status"`
}

type Step

type Step struct {
	Uuid        string             `xorm:"varchar(100) notnull pk" json:"uuid"`
	Name        string             `json:"name"`
	ProjectId   string             `json:"project_id"`
	StepIndex   int                `json:"step_index"`
	Description string             `json:"description"`
	Requirement string             `json:"requirement"`
	Status      string             `json:"status"`
	Deadline    int64              `json:"deadline"`
	Timetable   []ProjectTimePoint `xorm:"mediumtext" json:"timetable"`
	Creator     string             `json:"creator"`
	Attachments []FileRecord       `xorm:"mediumtext" json:"attachments"` // uuid of files

	CreateAt  time.Time `xorm:"created" json:"create_at"`
	UpdatedAt time.Time `xorm:"updated" json:"updated_at"`
}

func GetStepInfo

func GetStepInfo(sid string) (*Step, error)

type StepDataStatistic

type StepDataStatistic struct {
	Total     float64 `json:"total"`
	PassRate  float64 `json:"pass_rate"`
	Pass      float64 `json:"pass"`
	Returned  float64 `json:"returned"`
	ToUpload  float64 `json:"to_upload"`
	ToAudit   float64 `json:"to_audit"`
	ToCorrect float64 `json:"to_correct"`
}

func GetStepDataStatistic

func GetStepDataStatistic(stepId string) (*StepDataStatistic, error)

type Submit

type Submit struct {
	Owner       string `xorm:"varchar(100) notnull pk" json:"owner"`
	Name        string `xorm:"varchar(100) notnull pk" json:"name"`
	CreatedTime string `xorm:"varchar(100)" json:"created_time"`

	StepId      string       `json:"step_id"`
	TestpaperId string       `json:"testpaper_id"`
	Title       string       `json:"title"`
	Description string       `json:"description"`
	Submitter   string       `json:"submitter"`
	Contents    []Content    `xorm:"mediumtext" json:"contents"`
	Status      string       `json:"status"`
	File        []FileRecord `json:"file"`

	CreateAt  time.Time `xorm:"created" json:"create_at"`
	UpdatedAt time.Time `xorm:"updated" json:"updated_at"`
	DeletedAt time.Time `xorm:"deleted" json:"deleted_at"`
}

func GetOneSubmit

func GetOneSubmit(subId string) (*Submit, error)

func GetProjectSubmit

func GetProjectSubmit(pid string) ([]Submit, error)

func MakeOneSubmit

func MakeOneSubmit(req *Submit) (*Submit, error)

type Task

type Task struct {
	Owner       string `xorm:"varchar(100) notnull pk" json:"owner"`
	Name        string `xorm:"varchar(100) notnull pk" json:"name"`
	CreatedTime string `xorm:"varchar(100)" json:"createdTime"`

	Preface string   `xorm:"mediumtext" json:"preface"`
	Text    string   `xorm:"mediumtext" json:"text"`
	Type    string   `xorm:"varchar(100)" json:"type"`
	Canvas  string   `xorm:"mediumtext" json:"canvas"`
	Basic   string   `xorm:"mediumtext" json:"basic"`
	Video   string   `xorm:"mediumtext" json:"video"`
	Slides  string   `xorm:"mediumtext" json:"slides"`
	Sketch  string   `xorm:"mediumtext" json:"sketch"`
	Frame   string   `xorm:"mediumtext" json:"frame"`
	Three   string   `xorm:"mediumtext" json:"three"`
	Game    string   `xorm:"mediumtext" json:"game"`
	Deck    string   `xorm:"mediumtext" json:"deck"`
	Extras  []string `xorm:"varchar(1000)" json:"extras"`

	Options []string `xorm:"varchar(100)" json:"options"`
	Answer  []string `xorm:"varchar(100)" json:"answer"`

	SourceProject string `json:"source_project"` // 项目来源
}

type TempQuestion

type TempQuestion struct {
	Uuid          string                `xorm:"varchar(100) notnull pk"  json:"uuid"`
	IsRoot        bool                  `json:"is_root"` // 临时题目是否是根
	Base          string                `json:"base"`    // 若不是root, 需要设置上级题目, 进行版本管理
	Next          string                `json:"next"`
	SourceProject string                `json:"source_project"` // 项目来源
	Author        string                `json:"author"`
	IsNew         bool                  `json:"is_new"`
	FinalBase     string                `json:"final_base"`
	Info          QuestionInfo          `xorm:"mediumtext json" json:"info"`
	BasicProps    QuestionBasicProps    `xorm:"mediumtext json" json:"basic_props"`
	SpecProps     QuestionSpecProps     `xorm:"mediumtext json" json:"spec_props"`
	ExtraProps    QuestionExtraProps    `xorm:"mediumtext json" json:"extra_props"`
	AdvancedProps QuestionAdvancedProps `xorm:"mediumtext json" json:"advanced_props"`
	ApplyRecord   QuestionApplyRecord   `xorm:"mediumtext json" json:"apply_record"`
	CommentRecord []QuestionComment     `xorm:"mediumtext" json:"comment_record"`
	ChangeLog     string                `json:"change_log"`

	CreateAt  time.Time `xorm:"created" json:"create_at"`
	UpdatedAt time.Time `xorm:"updated" json:"updated_at"`
	DeletedAt time.Time `xorm:"deleted" json:"deleted_at"`
}

func GetProjectTempQuestions

func GetProjectTempQuestions(pid string) ([]TempQuestion, error)

func GetUserTempQuestions

func GetUserTempQuestions(uid string) ([]TempQuestion, error)

func TraceQuestionVersion

func TraceQuestionVersion(qid string) ([]TempQuestion, error)

type TempTestpaper

type TempTestpaper struct {
	Uuid          string             `xorm:"varchar(100) notnull pk" json:"uuid"`
	IsRoot        bool               `json:"is_root"`
	Base          string             `json:"base"`
	SourceProject string             `json:"source_project"`
	Author        string             `json:"author"`
	Title         string             `json:"title"`
	Info          []TestpaperPart    `xorm:"mediumtext" json:"info"`
	Props         TestpaperProps     `xorm:"mediumtext json" json:"props"`
	CommentRecord []TestpaperComment `xorm:"mediumtext" json:"comment_record"`

	CreateAt  time.Time `xorm:"created" json:"create_at"`
	UpdatedAt time.Time `xorm:"updated" json:"updated_at"`
	DeletedAt time.Time `xorm:"deleted" json:"deleted_at"`
}

func GetProjectTempTestpaper

func GetProjectTempTestpaper(pid string) ([]TempTestpaper, error)

func GetUserTempTestpaper

func GetUserTempTestpaper(uid string) ([]TempTestpaper, error)

func TraceTestpaperVersion

func TraceTestpaperVersion(tid string) ([]TempTestpaper, error)

type TempTestpaperResponse

type TempTestpaperResponse struct {
	Uuid          string             `xorm:"varchar(100) notnull pk" json:"uuid"`
	IsRoot        bool               `json:"is_root"`
	Base          string             `json:"base"`
	SourceProject string             `json:"source_project"`
	Author        string             `json:"author"`
	Title         string             `json:"title"`
	Info          []TestpaperPartV1  `xorm:"mediumtext" json:"info"`
	Props         TestpaperProps     `xorm:"mediumtext json" json:"props"`
	CommentRecord []TestpaperComment `xorm:"mediumtext" json:"comment_record"`
}

func GetTempTestPaperDetail

func GetTempTestPaperDetail(tid string) (*TempTestpaperResponse, error)

type TestpaperComment

type TestpaperComment struct {
	TimePoint time.Time `json:"time_point"`
	Comment   string    `json:"comment"`
	Author    string    `json:"author"`
}

type TestpaperPart

type TestpaperPart struct {
	BigQuestionNumber int            `json:"big_question_number"`
	Title             string         `json:"title"`
	Description       string         `json:"description"`
	QuestionList      []QuestionItem `xorm:"mediumtext" json:"question_list"`
	Score             int            `json:"score"`
}

type TestpaperPartV1

type TestpaperPartV1 struct {
	BigQuestionNumber int              `json:"big_question_number"`
	Title             string           `json:"title"`
	Description       string           `json:"description"`
	QuestionList      []QuestionItemV1 `xorm:"mediumtext" json:"question_list"`
	Score             int              `json:"score"`
}

type TestpaperProps

type TestpaperProps struct {
	GradeRange []string `xorm:"mediumtext" json:"grade_range"`
	Subjects   []string `xorm:"mediumtext" json:"subjects"`
	Difficulty string   `json:"difficulty"`
	TimeLimit  string   `json:"time_limit"`
}

type TimePoint

type TimePoint struct {
	Title     string    `json:"title"`
	StartTime time.Time `json:"start_time"`
	EndTime   time.Time `json:"end_time"`
	Notice    string    `json:"notice"`
	Comment   string    `json:"comment"`
}

type TpAssignment

type TpAssignment struct {
	Uuid        string `xorm:"varchar(100) notnull pk" json:"uuid"`
	UserId      string `json:"user_id"`
	ProjectId   string `json:"project_id"`
	TestpaperId string `json:"testpaper_id"`
	Role        string `json:"role"`
	Operator    string `json:"operator"`

	CreateAt  time.Time `xorm:"created" json:"create_at"`
	UpdatedAt time.Time `xorm:"updated" json:"updated_at"`
}

type TreeItem

type TreeItem struct {
	Key       string      `xorm:"varchar(100)" json:"key"`
	Title     string      `xorm:"varchar(100)" json:"title"`
	Content   string      `xorm:"mediumtext" json:"content"`
	TitleEn   string      `xorm:"varchar(100)" json:"titleEn"`
	ContentEn string      `xorm:"mediumtext" json:"contentEn"`
	Children  []*TreeItem `xorm:"varchar(1000)" json:"children"`
}

type UpdateFileRequest

type UpdateFileRequest struct {
	SubmitId   string       `json:"submit_id"`
	NewFileUrl []FileRecord `json:"new_file_url"`
}

type WithdrawContentInSubmit

type WithdrawContentInSubmit struct {
	SubmitId     string `json:"submit_id"`
	ContentIndex int    `json:"content_index"`
	ContentId    string `json:"content_id"`
}

Jump to

Keyboard shortcuts

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