42 lines
1.1 KiB
Go
42 lines
1.1 KiB
Go
package article
|
|
|
|
import (
|
|
"git.echol.cn/loser/lckt/global"
|
|
"git.echol.cn/loser/lckt/model/article"
|
|
"git.echol.cn/loser/lckt/model/article/request"
|
|
)
|
|
|
|
type ArticleService struct{}
|
|
|
|
func (ArticleService) CreateArticle(req article.Article) (err error) {
|
|
err = global.GVA_DB.Create(&req).Error
|
|
return
|
|
}
|
|
|
|
func (ArticleService) DeleteArticle(ids request.DeleteIds) (err error) {
|
|
err = global.GVA_DB.Delete(&article.Article{}, "id in ?", ids.Ids).Error
|
|
return
|
|
}
|
|
|
|
func (ArticleService) UpdateArticle(req article.Article) (err error) {
|
|
err = global.GVA_DB.Model(&article.Article{}).Where("id = ?", req.ID).Updates(&req).Error
|
|
return
|
|
}
|
|
func (ArticleService) GetArticle(id string) (article article.Article, err error) {
|
|
err = global.GVA_DB.Where("id = ?", id).First(&article).Error
|
|
return
|
|
}
|
|
|
|
func (ArticleService) GetArticleList(pageInfo request.GetList) (list []article.Article, total int64, err error) {
|
|
limit := pageInfo.PageSize
|
|
offset := pageInfo.PageSize * (pageInfo.Page - 1)
|
|
// 创建db
|
|
db := global.GVA_DB.Model(&article.Article{})
|
|
err = db.Count(&total).Error
|
|
if err != nil {
|
|
return
|
|
}
|
|
err = db.Limit(limit).Offset(offset).Find(&list).Error
|
|
return
|
|
}
|