You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

46 lines
1.3 KiB
Go

package question
import domain "knowfoolery/backend/services/question-bank-service/internal/domain/question"
// RandomQuestionRequest is the random question use-case input.
type RandomQuestionRequest struct {
ExcludeQuestionIDs []string
Theme string
Difficulty domain.Difficulty
}
// CreateQuestionInput is the create question use-case input.
type CreateQuestionInput struct {
Theme string
Text string
Answer string
Hint string
Difficulty domain.Difficulty
}
// UpdateQuestionInput is the update question use-case input.
type UpdateQuestionInput struct {
Theme string
Text string
Answer string
Hint string
Difficulty domain.Difficulty
IsActive bool
}
// BulkImportItem is an item in a bulk import payload.
type BulkImportItem struct {
Theme string `json:"theme"`
Text string `json:"text"`
Answer string `json:"answer"`
Hint string `json:"hint"`
Difficulty domain.Difficulty `json:"difficulty"`
}
// BulkImportResult is the bulk import use-case output.
type BulkImportResult struct {
CreatedCount int `json:"created_count"`
FailedCount int `json:"failed_count"`
Errors []domain.BulkError `json:"errors,omitempty"`
}