⚡分类接口完成
This commit is contained in:
53
service/navigation_type.go
Normal file
53
service/navigation_type.go
Normal file
@@ -0,0 +1,53 @@
|
||||
package service
|
||||
|
||||
import (
|
||||
"gorm.io/gorm"
|
||||
"website-nav/global/client"
|
||||
"website-nav/http/param"
|
||||
"website-nav/http/vo"
|
||||
"website-nav/model"
|
||||
)
|
||||
|
||||
type navigationType struct {
|
||||
*gorm.DB
|
||||
}
|
||||
|
||||
func NavigationType() navigationType { return navigationType{DB: client.DB} }
|
||||
|
||||
// List
|
||||
// @description: 分页列表
|
||||
// @receiver s
|
||||
// @return list
|
||||
// @return err
|
||||
func (s navigationType) List(p param.Page) (list []vo.NavigationTypeItem, total int64, err error) {
|
||||
err = s.Model(&model.NavigationType{}).Scopes(Paginate(p.Current, p.Size)).Find(&list).Offset(-1).Limit(-1).Count(&total).Error
|
||||
return
|
||||
}
|
||||
|
||||
// CreateType
|
||||
// @description: 新增/编辑分类
|
||||
// @receiver s
|
||||
// @param p
|
||||
// @return error
|
||||
func (s navigationType) CreateType(p param.SaveNavigationType) error {
|
||||
if p.Id != "" {
|
||||
return s.Model(&model.NavigationType{}).Where("id = ?", p.Id).Updates(map[string]any{
|
||||
"name": p.Name,
|
||||
"icon": p.Icon,
|
||||
}).Error
|
||||
}
|
||||
|
||||
return s.Create(&model.NavigationType{
|
||||
Name: p.Name,
|
||||
Icon: p.Icon,
|
||||
}).Error
|
||||
}
|
||||
|
||||
// Delete
|
||||
// @description: 删除分类
|
||||
// @receiver s
|
||||
// @param id
|
||||
// @return error
|
||||
func (s navigationType) Delete(id string) error {
|
||||
return s.Model(&model.NavigationType{}).Where("id = ?", id).Delete(&model.NavigationType{}).Error
|
||||
}
|
Reference in New Issue
Block a user