excel.go 1.2 KB
Newer Older
aaronchen2k2k's avatar
aaronchen2k2k 已提交
1 2 3 4
package serverRepo

import (
	"github.com/easysoft/zendata/src/model"
5
	constant "github.com/easysoft/zendata/src/utils/const"
aaronchen2k2k's avatar
aaronchen2k2k 已提交
6 7 8 9 10 11 12
	"github.com/jinzhu/gorm"
)

type ExcelRepo struct {
	db *gorm.DB
}

13 14 15 16 17
func (r *ExcelRepo) ListAll() (models []*model.ZdExcel) {
	r.db.Find(&models)
	return
}

18 19 20 21 22 23 24 25 26 27 28 29 30
func (r *ExcelRepo) List(keywords string, page int) (models []*model.ZdExcel, total int, err error) {
	query := r.db.Select("id,title,folder,path").Order("id ASC")
	if keywords != "" {
		query = query.Where("title LIKE ?", "%"+keywords+"%")
	}
	if page > 0 {
		query = query.Offset((page-1) * constant.PageSize).Limit(constant.PageSize)
	}

	err = query.Find(&models).Error

	err = r.db.Model(&model.ZdExcel{}).Count(&total).Error

aaronchen2k2k's avatar
aaronchen2k2k 已提交
31 32 33 34 35 36 37 38
	return
}

func (r *ExcelRepo) Get(id uint) (model model.ZdExcel, err error) {
	err = r.db.Where("id=?", id).First(&model).Error
	return
}

aaronchen2k2k's avatar
aaronchen2k2k 已提交
39 40 41 42 43
func (r *ExcelRepo) Create(model *model.ZdExcel) (err error) {
	err = r.db.Create(model).Error
	return
}
func (r *ExcelRepo) Update(model *model.ZdExcel) (err error) {
aaronchen2k2k's avatar
aaronchen2k2k 已提交
44
	err = r.db.Save(model).Error
aaronchen2k2k's avatar
aaronchen2k2k 已提交
45 46 47 48 49 50 51 52 53 54 55 56 57 58
	return
}

func (r *ExcelRepo) Remove(id uint) (err error) {
	model := model.ZdExcel{}
	model.ID = id
	err = r.db.Delete(model).Error

	return
}

func NewExcelRepo(db *gorm.DB) *ExcelRepo {
	return &ExcelRepo{db: db}
}