120 lines
3.5 KiB
Go
120 lines
3.5 KiB
Go
package plant
|
|
|
|
import (
|
|
"sundynix-go/global"
|
|
"sundynix-go/model/commom/response"
|
|
plantReq "sundynix-go/model/plant/request"
|
|
|
|
"github.com/gin-gonic/gin"
|
|
"go.uber.org/zap"
|
|
)
|
|
|
|
type BadgeConfigApi struct{}
|
|
|
|
// GetBadgeTree 获取徽章配置树 (不分页)
|
|
// @Tags 徽章配置
|
|
// @Summary 获取徽章配置树形结构
|
|
// @Security BearerAuth
|
|
// @Produce application/json
|
|
// @Success 200 {string} string "{"success":true,"data":{},"msg":"获取成功"}"
|
|
// @Router /config/badge/tree [get]
|
|
func (a *BadgeConfigApi) GetBadgeTree(c *gin.Context) {
|
|
// 不需要 bind query 了,因为没有参数
|
|
tree, err := badgeConfigService.GetBadgeTree()
|
|
if err != nil {
|
|
global.Logger.Error("获取徽章树失败", zap.Error(err))
|
|
response.FailWithMsg("获取数据失败", c)
|
|
return
|
|
}
|
|
// 直接返回 data = tree
|
|
response.OkWithData(tree, c)
|
|
}
|
|
|
|
// AddBadgeConfig 添加徽章配置
|
|
// @Tags 徽章配置
|
|
// @Summary 添加徽章配置
|
|
// @Security BearerAuth
|
|
// @accept application/json
|
|
// @Produce application/json
|
|
// @Param data body plantReq.CreateBadge true "添加徽章配置"
|
|
// @Success 200 {string} string "{"success":true,"data":{},"msg":"添加成功"}"
|
|
// @Router /config/badge/add [post]
|
|
func (a *BadgeConfigApi) AddBadgeConfig(c *gin.Context) {
|
|
var req plantReq.CreateBadge
|
|
err := c.ShouldBindJSON(&req)
|
|
if err != nil {
|
|
response.FailWithMsg("参数错误", c)
|
|
return
|
|
}
|
|
err = badgeConfigService.AddBadgeConfig(req)
|
|
if err != nil {
|
|
global.Logger.Error("添加徽章失败", zap.Error(err))
|
|
response.FailWithMsg("添加失败", c)
|
|
return
|
|
}
|
|
response.OkWithMsg("添加成功", c)
|
|
}
|
|
|
|
// UpdateBadgeConfig 更新徽章配置
|
|
// @Tags 徽章配置
|
|
// @Summary 更新徽章配置
|
|
// @Security BearerAuth
|
|
// @accept application/json
|
|
// @Produce application/json
|
|
// @Param data body plantReq.UpdateBadge true "更新参数"
|
|
// @Success 200 {string} string "{"success":true,"data":{},"msg":"更新成功"}"
|
|
// @Router /config/badge/update [post]
|
|
func (a *BadgeConfigApi) UpdateBadgeConfig(c *gin.Context) {
|
|
var req plantReq.UpdateBadge
|
|
err := c.ShouldBindJSON(&req)
|
|
if err != nil {
|
|
response.FailWithMsg("参数错误", c)
|
|
return
|
|
}
|
|
err = badgeConfigService.UpdateBadgeConfig(req)
|
|
if err != nil {
|
|
global.Logger.Error("更新失败", zap.Error(err))
|
|
response.FailWithMsg("更新失败", c)
|
|
return
|
|
}
|
|
response.OkWithMsg("更新成功", c)
|
|
}
|
|
|
|
// FindBadgeConfig 根据ID获取徽章配置
|
|
// @Tags 徽章配置
|
|
// @Summary 根据ID获取徽章配置
|
|
// @Security BearerAuth
|
|
// @Produce application/json
|
|
// @Param id query string true "id"
|
|
// @Success 200 {string} string "{"success":true,"data":{},"msg":"获取成功"}"
|
|
// @Router /config/badge/find [get]
|
|
func (a *BadgeConfigApi) FindBadgeConfig(c *gin.Context) {
|
|
id := c.Query("id")
|
|
badge, err := badgeConfigService.GetBadgeConfig(id)
|
|
if err != nil {
|
|
global.Logger.Error("查询失败", zap.Error(err))
|
|
response.FailWithMsg("查询失败", c)
|
|
return
|
|
}
|
|
response.OkWithData(badge, c)
|
|
}
|
|
|
|
// DeleteBadgeConfig 删除徽章配置
|
|
// @Tags 徽章配置
|
|
// @Summary 删除徽章配置
|
|
// @Security BearerAuth
|
|
// @Produce application/json
|
|
// @Param id query string true "id"
|
|
// @Success 200 {string} string "{"success":true,"data":{},"msg":"删除成功"}"
|
|
// @Router /config/badge/delete [get]
|
|
func (a *BadgeConfigApi) DeleteBadgeConfig(c *gin.Context) {
|
|
id := c.Query("id")
|
|
err := badgeConfigService.DeleteBadgeConfig(id)
|
|
if err != nil {
|
|
global.Logger.Error("删除失败", zap.Error(err))
|
|
response.FailWithMsg("删除失败", c)
|
|
return
|
|
}
|
|
response.OkWithMsg("删除成功", c)
|
|
}
|