knowledge-api/api/dao/QuestionOption.go
2024-12-03 15:17:17 +08:00

88 lines
2.3 KiB
Go

package dao
import (
"gorm.io/gorm"
"knowledge/api/model"
"knowledge/global"
)
type QuestionOptionDao struct {
}
// GetQuestionOptionFirstById 获取数据-id
func (r *QuestionOptionDao) GetQuestionOptionFirstById(OptionId int64) (m *model.QuestionOption, err error) {
err = global.Db.First(&m, OptionId).Error
if err != nil {
return nil, err
}
return m, nil
}
func (r *QuestionOptionDao) GetQuestionOptionFirstByQuestionId(questionId int64) (m []*model.QuestionOption, err error) {
err = global.Db.Where("question_id = ?", questionId).Find(&m).Error
if err != nil {
return nil, err
}
return m, nil
}
// DeleteQuestionOption 删除
func (r *QuestionOptionDao) DeleteQuestionOption(tx *gorm.DB, maps interface{}) error {
err := tx.Where(maps).Delete(&model.QuestionOption{}).Error
if err != nil {
return err
}
return nil
}
// DeleteQuestionOptionById 删除-id
func (r *QuestionOptionDao) DeleteQuestionOptionById(tx *gorm.DB, OptionId int64) error {
if err := tx.Delete(&model.QuestionOption{}, OptionId).Error; err != nil {
return err
}
return nil
}
// DeleteQuestionOptionByQuestionId 删除-题目id
func (r *QuestionOptionDao) DeleteQuestionOptionByQuestionId(tx *gorm.DB, questionId int64) error {
if err := tx.Where("question_id = ?", questionId).Delete(&model.QuestionOption{}).Error; err != nil {
return err
}
return nil
}
// EditQuestionOption 修改
func (r *QuestionOptionDao) EditQuestionOption(tx *gorm.DB, maps interface{}, data interface{}) error {
err := tx.Model(&model.QuestionOption{}).Where(maps).Updates(data).Error
if err != nil {
return err
}
return nil
}
// EditQuestionOptionById 修改-id
func (r *QuestionOptionDao) EditQuestionOptionById(tx *gorm.DB, OptionId int64, data interface{}) error {
err := tx.Model(&model.QuestionOption{}).Where("option_id = ?", OptionId).Updates(data).Error
if err != nil {
return err
}
return nil
}
// GetQuestionOptionList 获取列表
func (r *QuestionOptionDao) GetQuestionOptionList(maps interface{}) (m []*model.QuestionOption, err error) {
err = global.Db.Where(maps).Find(&m).Error
if err != nil {
return nil, err
}
return m, nil
}
// AddQuestionOption 新增
func (r *QuestionOptionDao) AddQuestionOption(tx *gorm.DB, model *model.QuestionOption) (*model.QuestionOption, error) {
if err := tx.Create(model).Error; err != nil {
return nil, err
}
return model, nil
}