pet-ai/server/api/v1/pet/pet_families.go

170 lines
5.4 KiB
Go

package pet
import (
"github.com/flipped-aurora/gin-vue-admin/server/global"
"github.com/flipped-aurora/gin-vue-admin/server/model/common/response"
"github.com/flipped-aurora/gin-vue-admin/server/model/pet"
petReq "github.com/flipped-aurora/gin-vue-admin/server/model/pet/request"
"github.com/gin-gonic/gin"
"go.uber.org/zap"
)
type PetFamiliesApi struct{}
// CreatePetFamilies 创建petFamilies表
// @Tags PetFamilies
// @Summary 创建petFamilies表
// @Security ApiKeyAuth
// @Accept application/json
// @Produce application/json
// @Param data body pet.PetFamilies true "创建petFamilies表"
// @Success 200 {object} response.Response{msg=string} "创建成功"
// @Router /petFamilies/createPetFamilies [post]
func (petFamiliesApi *PetFamiliesApi) CreatePetFamilies(c *gin.Context) {
// 创建业务用Context
ctx := c.Request.Context()
var petFamilies pet.PetFamilies
err := c.ShouldBindJSON(&petFamilies)
if err != nil {
response.FailWithMessage(err.Error(), c)
return
}
err = petFamiliesService.CreatePetFamilies(ctx, &petFamilies)
if err != nil {
global.GVA_LOG.Error("创建失败!", zap.Error(err))
response.FailWithMessage("创建失败:"+err.Error(), c)
return
}
response.OkWithMessage("创建成功", c)
}
// DeletePetFamilies 删除petFamilies表
// @Tags PetFamilies
// @Summary 删除petFamilies表
// @Security ApiKeyAuth
// @Accept application/json
// @Produce application/json
// @Param data body pet.PetFamilies true "删除petFamilies表"
// @Success 200 {object} response.Response{msg=string} "删除成功"
// @Router /petFamilies/deletePetFamilies [delete]
func (petFamiliesApi *PetFamiliesApi) DeletePetFamilies(c *gin.Context) {
// 创建业务用Context
ctx := c.Request.Context()
ID := c.Query("ID")
err := petFamiliesService.DeletePetFamilies(ctx, ID)
if err != nil {
global.GVA_LOG.Error("删除失败!", zap.Error(err))
response.FailWithMessage("删除失败:"+err.Error(), c)
return
}
response.OkWithMessage("删除成功", c)
}
// DeletePetFamiliesByIds 批量删除petFamilies表
// @Tags PetFamilies
// @Summary 批量删除petFamilies表
// @Security ApiKeyAuth
// @Accept application/json
// @Produce application/json
// @Success 200 {object} response.Response{msg=string} "批量删除成功"
// @Router /petFamilies/deletePetFamiliesByIds [delete]
func (petFamiliesApi *PetFamiliesApi) DeletePetFamiliesByIds(c *gin.Context) {
// 创建业务用Context
ctx := c.Request.Context()
IDs := c.QueryArray("IDs[]")
err := petFamiliesService.DeletePetFamiliesByIds(ctx, IDs)
if err != nil {
global.GVA_LOG.Error("批量删除失败!", zap.Error(err))
response.FailWithMessage("批量删除失败:"+err.Error(), c)
return
}
response.OkWithMessage("批量删除成功", c)
}
// UpdatePetFamilies 更新petFamilies表
// @Tags PetFamilies
// @Summary 更新petFamilies表
// @Security ApiKeyAuth
// @Accept application/json
// @Produce application/json
// @Param data body pet.PetFamilies true "更新petFamilies表"
// @Success 200 {object} response.Response{msg=string} "更新成功"
// @Router /petFamilies/updatePetFamilies [put]
func (petFamiliesApi *PetFamiliesApi) UpdatePetFamilies(c *gin.Context) {
// 从ctx获取标准context进行业务行为
ctx := c.Request.Context()
var petFamilies pet.PetFamilies
err := c.ShouldBindJSON(&petFamilies)
if err != nil {
response.FailWithMessage(err.Error(), c)
return
}
err = petFamiliesService.UpdatePetFamilies(ctx, petFamilies)
if err != nil {
global.GVA_LOG.Error("更新失败!", zap.Error(err))
response.FailWithMessage("更新失败:"+err.Error(), c)
return
}
response.OkWithMessage("更新成功", c)
}
// FindPetFamilies 用id查询petFamilies表
// @Tags PetFamilies
// @Summary 用id查询petFamilies表
// @Security ApiKeyAuth
// @Accept application/json
// @Produce application/json
// @Param ID query uint true "用id查询petFamilies表"
// @Success 200 {object} response.Response{data=pet.PetFamilies,msg=string} "查询成功"
// @Router /petFamilies/findPetFamilies [get]
func (petFamiliesApi *PetFamiliesApi) FindPetFamilies(c *gin.Context) {
// 创建业务用Context
ctx := c.Request.Context()
ID := c.Query("ID")
repetFamilies, err := petFamiliesService.GetPetFamilies(ctx, ID)
if err != nil {
global.GVA_LOG.Error("查询失败!", zap.Error(err))
response.FailWithMessage("查询失败:"+err.Error(), c)
return
}
response.OkWithData(repetFamilies, c)
}
// GetPetFamiliesList 分页获取petFamilies表列表
// @Tags PetFamilies
// @Summary 分页获取petFamilies表列表
// @Security ApiKeyAuth
// @Accept application/json
// @Produce application/json
// @Param data query petReq.PetFamiliesSearch true "分页获取petFamilies表列表"
// @Success 200 {object} response.Response{data=response.PageResult,msg=string} "获取成功"
// @Router /petFamilies/getPetFamiliesList [get]
func (petFamiliesApi *PetFamiliesApi) GetPetFamiliesList(c *gin.Context) {
// 创建业务用Context
ctx := c.Request.Context()
var pageInfo petReq.PetFamiliesSearch
err := c.ShouldBindQuery(&pageInfo)
if err != nil {
response.FailWithMessage(err.Error(), c)
return
}
list, total, err := petFamiliesService.GetPetFamiliesInfoList(ctx, pageInfo)
if err != nil {
global.GVA_LOG.Error("获取失败!", zap.Error(err))
response.FailWithMessage("获取失败:"+err.Error(), c)
return
}
response.OkWithDetailed(response.PageResult{
List: list,
Total: total,
Page: pageInfo.Page,
PageSize: pageInfo.PageSize,
}, "获取成功", c)
}