132 lines
3.7 KiB
Go
132 lines
3.7 KiB
Go
package plant
|
|
|
|
import (
|
|
"sundynix-go/global"
|
|
"sundynix-go/model/commom/response"
|
|
"sundynix-go/model/plant"
|
|
"sundynix-go/model/plant/request"
|
|
|
|
"github.com/gin-gonic/gin"
|
|
"go.uber.org/zap"
|
|
)
|
|
|
|
type BannerApi struct{}
|
|
|
|
// Create 创建Banner
|
|
// @Tags 轮播图管理
|
|
// @Summary 创建Banner
|
|
// @Security BearerAuth
|
|
// @accept application/json
|
|
// @Produce application/json
|
|
// @Param data body plant.Banner true "创建Banner"
|
|
// @Success 200 {string} string "{"success":true,"data":{},"msg":"创建成功"}"
|
|
// @Router /plantBanner/create [post]
|
|
func (a *BannerApi) Create(c *gin.Context) {
|
|
var req plant.Banner
|
|
if err := c.ShouldBindJSON(&req); err != nil {
|
|
response.FailWithMsg("参数错误", c)
|
|
return
|
|
}
|
|
if err := bannerService.Create(req); err != nil {
|
|
global.Logger.Error("创建失败", zap.Error(err))
|
|
response.FailWithMsg("创建失败", c)
|
|
return
|
|
}
|
|
response.OkWithMsg("创建成功", c)
|
|
}
|
|
|
|
// Delete 删除Banner
|
|
// @Tags 轮播图管理
|
|
// @Summary 删除Banner
|
|
// @Security BearerAuth
|
|
// @accept application/json
|
|
// @Produce application/json
|
|
// @Param data body object true "删除Banner"
|
|
// @Success 200 {string} string "{"success":true,"data":{},"msg":"删除成功"}"
|
|
// @Router /plantBanner/delete [post]
|
|
func (a *BannerApi) Delete(c *gin.Context) {
|
|
var req struct {
|
|
Id string `json:"id"`
|
|
}
|
|
if err := c.ShouldBindJSON(&req); err != nil || req.Id == "" {
|
|
response.FailWithMsg("参数错误", c)
|
|
return
|
|
}
|
|
if err := bannerService.Delete(req.Id); err != nil {
|
|
global.Logger.Error("删除失败", zap.Error(err))
|
|
response.FailWithMsg("删除失败", c)
|
|
return
|
|
}
|
|
response.OkWithMsg("删除成功", c)
|
|
}
|
|
|
|
// Update 更新Banner
|
|
// @Tags 轮播图管理
|
|
// @Summary 更新Banner
|
|
// @Security BearerAuth
|
|
// @accept application/json
|
|
// @Produce application/json
|
|
// @Param data body plant.Banner true "更新Banner"
|
|
// @Success 200 {string} string "{"success":true,"data":{},"msg":"更新成功"}"
|
|
// @Router /plantBanner/update [put]
|
|
func (a *BannerApi) Update(c *gin.Context) {
|
|
var req plant.Banner
|
|
if err := c.ShouldBindJSON(&req); err != nil {
|
|
response.FailWithMsg("参数错误", c)
|
|
return
|
|
}
|
|
if err := bannerService.Update(req); err != nil {
|
|
global.Logger.Error("更新失败", zap.Error(err))
|
|
response.FailWithMsg("更新失败", c)
|
|
return
|
|
}
|
|
response.OkWithMsg("更新成功", c)
|
|
}
|
|
|
|
// GetList 分页获取Banner
|
|
// @Tags 轮播图管理
|
|
// @Summary 分页获取Banner
|
|
// @Security BearerAuth
|
|
// @accept application/json
|
|
// @Produce application/json
|
|
// @Param data body request.BannerPageReq true "分页获取Banner"
|
|
// @Success 200 {string} string "{"success":true,"data":{},"msg":"获取成功"}"
|
|
// @Router /plantBanner/list [post]
|
|
func (a *BannerApi) GetList(c *gin.Context) {
|
|
var req request.BannerPageReq
|
|
if err := c.ShouldBindJSON(&req); err != nil {
|
|
response.FailWithMsg("参数错误", c)
|
|
return
|
|
}
|
|
list, total, err := bannerService.GetList(req)
|
|
if err != nil {
|
|
global.Logger.Error("获取失败", zap.Error(err))
|
|
response.FailWithMsg("获取失败", c)
|
|
return
|
|
}
|
|
response.OkWithData(response.PageResult{
|
|
List: list,
|
|
Total: total,
|
|
Page: req.Current,
|
|
PageSize: req.PageSize,
|
|
}, c)
|
|
}
|
|
|
|
// GetActiveList 客户端获取启用的Banner
|
|
// @Tags 轮播图管理
|
|
// @Summary 客户端获取启用的Banner
|
|
// @Produce application/json
|
|
// @Success 200 {string} string "{"success":true,"data":{},"msg":"获取成功"}"
|
|
// @Router /plantBanner/activeList [get]
|
|
func (a *BannerApi) GetActiveList(c *gin.Context) {
|
|
list, err := bannerService.GetActiveList()
|
|
if err != nil {
|
|
global.Logger.Error("获取失败", zap.Error(err))
|
|
response.FailWithMsg("获取失败", c)
|
|
return
|
|
}
|
|
response.OkWithData(response.ListResult{
|
|
List: list,
|
|
}, c)
|
|
}
|