pet-ai/server/service/pet/pet_pets.go

72 lines
2.4 KiB
Go

package pet
import (
"context"
"github.com/flipped-aurora/gin-vue-admin/server/global"
"github.com/flipped-aurora/gin-vue-admin/server/model/pet"
petReq "github.com/flipped-aurora/gin-vue-admin/server/model/pet/request"
)
type PetPetsService struct{}
// CreatePetPets 创建petPets表记录
// Author [yourname](https://github.com/yourname)
func (petPetsService *PetPetsService) CreatePetPets(ctx context.Context, petPets *pet.PetPets) (err error) {
err = global.GVA_DB.Create(petPets).Error
return err
}
// DeletePetPets 删除petPets表记录
// Author [yourname](https://github.com/yourname)
func (petPetsService *PetPetsService) DeletePetPets(ctx context.Context, ID string) (err error) {
err = global.GVA_DB.Delete(&pet.PetPets{}, "id = ?", ID).Error
return err
}
// DeletePetPetsByIds 批量删除petPets表记录
// Author [yourname](https://github.com/yourname)
func (petPetsService *PetPetsService) DeletePetPetsByIds(ctx context.Context, IDs []string) (err error) {
err = global.GVA_DB.Delete(&[]pet.PetPets{}, "id in ?", IDs).Error
return err
}
// UpdatePetPets 更新petPets表记录
// Author [yourname](https://github.com/yourname)
func (petPetsService *PetPetsService) UpdatePetPets(ctx context.Context, petPets pet.PetPets) (err error) {
err = global.GVA_DB.Model(&pet.PetPets{}).Where("id = ?", petPets.ID).Updates(&petPets).Error
return err
}
// GetPetPets 根据ID获取petPets表记录
// Author [yourname](https://github.com/yourname)
func (petPetsService *PetPetsService) GetPetPets(ctx context.Context, ID string) (petPets pet.PetPets, err error) {
err = global.GVA_DB.Where("id = ?", ID).First(&petPets).Error
return
}
// GetPetPetsInfoList 分页获取petPets表记录
// Author [yourname](https://github.com/yourname)
func (petPetsService *PetPetsService) GetPetPetsInfoList(ctx context.Context, info petReq.PetPetsSearch) (list []pet.PetPets, total int64, err error) {
limit := info.PageSize
offset := info.PageSize * (info.Page - 1)
// 创建db
db := global.GVA_DB.Model(&pet.PetPets{})
var petPetss []pet.PetPets
// 如果有条件搜索 下方会自动创建搜索语句
if len(info.CreatedAtRange) == 2 {
db = db.Where("created_at BETWEEN ? AND ?", info.CreatedAtRange[0], info.CreatedAtRange[1])
}
err = db.Count(&total).Error
if err != nil {
return
}
if limit != 0 {
db = db.Limit(limit).Offset(offset)
}
err = db.Find(&petPetss).Error
return petPetss, total, err
}