def.go 1.1 KB
Newer Older
aaronchen2k2k's avatar
aaronchen2k2k 已提交
1 2 3 4 5 6 7 8 9 10 11
package serverRepo

import (
	"github.com/easysoft/zendata/src/model"
	"github.com/jinzhu/gorm"
)

type DefRepo struct {
	db *gorm.DB
}

aaronchen2k2k's avatar
aaronchen2k2k 已提交
12
func (r *DefRepo) List() (defs []*model.ZdDef, err error) {
aaronchen2k2k's avatar
aaronchen2k2k 已提交
13 14 15 16
	err = r.db.Find(&defs).Error
	return
}

aaronchen2k2k's avatar
aaronchen2k2k 已提交
17
func (r *DefRepo) Get(id uint) (def model.ZdDef, err error) {
aaronchen2k2k's avatar
aaronchen2k2k 已提交
18 19 20 21 22
	err = r.db.Where("id=?", id).First(&def).Error

	return
}

aaronchen2k2k's avatar
aaronchen2k2k 已提交
23
func (r *DefRepo) Create(def *model.ZdDef) (err error) {
aaronchen2k2k's avatar
aaronchen2k2k 已提交
24 25 26 27 28
	err = r.db.Create(def).Error

	return
}

aaronchen2k2k's avatar
aaronchen2k2k 已提交
29
func (r *DefRepo) Update(def *model.ZdDef) (err error) {
aaronchen2k2k's avatar
aaronchen2k2k 已提交
30 31 32 33 34 35
	err = r.db.Save(def).Error

	return
}

func (r *DefRepo) Remove(id uint) (err error) {
aaronchen2k2k's avatar
aaronchen2k2k 已提交
36
	var def model.ZdDef
aaronchen2k2k's avatar
aaronchen2k2k 已提交
37
	def.ID = id
aaronchen2k2k's avatar
aaronchen2k2k 已提交
38 39

	err = r.db.Delete(&def).Error
aaronchen2k2k's avatar
aaronchen2k2k 已提交
40
	err = r.db.Where("defID = ?", id).Delete(&model.ZdField{}).Error
aaronchen2k2k's avatar
aaronchen2k2k 已提交
41 42 43 44 45

	return
}


aaronchen2k2k's avatar
aaronchen2k2k 已提交
46 47
func (r *DefRepo) UpdateYaml(def model.ZdDef) (err error) {
	err = r.db.Model(&model.ZdDef{}).Where("id=?", def.ID).Update("yaml", def.Yaml).Error
aaronchen2k2k's avatar
aaronchen2k2k 已提交
48 49 50
	return
}

aaronchen2k2k's avatar
aaronchen2k2k 已提交
51
func (r *DefRepo) GenDef(def model.ZdDef, data *model.DefData) () {
aaronchen2k2k's avatar
aaronchen2k2k 已提交
52 53 54 55 56 57 58 59
	data.Title = def.Title
	data.Desc = def.Desc
	data.Type = def.Type
}

func NewDefRepo(db *gorm.DB) *DefRepo {
	return &DefRepo{db: db}
}