package service import ( "github.com/lejianwen/rustdesk-api/v2/model" "gorm.io/gorm" ) type GroupService struct { } // InfoById 根据用户id取用户信息 func (us *GroupService) InfoById(id uint) *model.Group { u := &model.Group{} DB.Where("id = ?", id).First(u) return u } func (us *GroupService) List(page, pageSize uint, where func(tx *gorm.DB)) (res *model.GroupList) { res = &model.GroupList{} res.Page = int64(page) res.PageSize = int64(pageSize) tx := DB.Model(&model.Group{}) if where != nil { where(tx) } tx.Count(&res.Total) tx.Scopes(Paginate(page, pageSize)) tx.Find(&res.Groups) return } // Create 创建 func (us *GroupService) Create(u *model.Group) error { res := DB.Create(u).Error return res } func (us *GroupService) Delete(u *model.Group) error { return DB.Delete(u).Error } // Update 更新 func (us *GroupService) Update(u *model.Group) error { return DB.Model(u).Updates(u).Error } // DeviceGroupInfoById 根据用户id取用户信息 func (us *GroupService) DeviceGroupInfoById(id uint) *model.DeviceGroup { u := &model.DeviceGroup{} DB.Where("id = ?", id).First(u) return u } func (us *GroupService) DeviceGroupList(page, pageSize uint, where func(tx *gorm.DB)) (res *model.DeviceGroupList) { res = &model.DeviceGroupList{} res.Page = int64(page) res.PageSize = int64(pageSize) tx := DB.Model(&model.DeviceGroup{}) if where != nil { where(tx) } tx.Count(&res.Total) tx.Scopes(Paginate(page, pageSize)) tx.Find(&res.DeviceGroups) return } func (us *GroupService) DeviceGroupCreate(u *model.DeviceGroup) error { res := DB.Create(u).Error return res } func (us *GroupService) DeviceGroupDelete(u *model.DeviceGroup) error { return DB.Delete(u).Error } func (us *GroupService) DeviceGroupUpdate(u *model.DeviceGroup) error { return DB.Model(u).Updates(u).Error }