修改了飞花令相关接口
This commit is contained in:
parent
27bcd29967
commit
e44601c30f
@ -91,7 +91,7 @@ func (r *BaseToken) GetTokenList(c *gin.Context) {
|
|||||||
func (r *BaseToken) AddBaseToken(c *gin.Context) {
|
func (r *BaseToken) AddBaseToken(c *gin.Context) {
|
||||||
baseTokenRequest := requests.BaseTokenRequest{}
|
baseTokenRequest := requests.BaseTokenRequest{}
|
||||||
req := baseTokenRequest.AddBaseToken
|
req := baseTokenRequest.AddBaseToken
|
||||||
if err := c.ShouldBindJSON(&req); err != nil {
|
if err := c.ShouldBind(&req); err != nil {
|
||||||
responses.FailWithMessage(err.Error(), c)
|
responses.FailWithMessage(err.Error(), c)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
@ -122,23 +122,6 @@ func (r *BaseToken) AddBaseToken(c *gin.Context) {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
// 新增飞花令明细
|
|
||||||
baseTokenItemDao := dao.BaseTokenItemDao{}
|
|
||||||
for _, item := range req.BaseTokenItem {
|
|
||||||
baseTokenItem := &model.BaseTokenItem{
|
|
||||||
TokenId: baseToken.TokenId,
|
|
||||||
ItemName: item.ItemName,
|
|
||||||
ItemImage: utils.RemoveOssDomain(item.ItemImage),
|
|
||||||
ItemSort: item.ItemSort,
|
|
||||||
}
|
|
||||||
baseTokenItem, err := baseTokenItemDao.AddBaseTokenItem(tx, baseTokenItem)
|
|
||||||
if err != nil {
|
|
||||||
tx.Rollback()
|
|
||||||
responses.FailWithMessage("新增失败", c)
|
|
||||||
return
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
tx.Commit()
|
tx.Commit()
|
||||||
responses.Ok(c)
|
responses.Ok(c)
|
||||||
}
|
}
|
||||||
@ -147,7 +130,7 @@ func (r *BaseToken) AddBaseToken(c *gin.Context) {
|
|||||||
func (r *BaseToken) PutBaseToken(c *gin.Context) {
|
func (r *BaseToken) PutBaseToken(c *gin.Context) {
|
||||||
baseTokenRequest := requests.BaseTokenRequest{}
|
baseTokenRequest := requests.BaseTokenRequest{}
|
||||||
req := baseTokenRequest.PutBaseToken
|
req := baseTokenRequest.PutBaseToken
|
||||||
if err := c.ShouldBindJSON(&req); err != nil {
|
if err := c.ShouldBind(&req); err != nil {
|
||||||
responses.FailWithMessage(err.Error(), c)
|
responses.FailWithMessage(err.Error(), c)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
@ -201,31 +184,6 @@ func (r *BaseToken) PutBaseToken(c *gin.Context) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// 删除明细
|
|
||||||
baseTokenItemDao := dao.BaseTokenItemDao{}
|
|
||||||
err = baseTokenItemDao.DeleteBaseTokenItemByTokenId(tx, baseToken.TokenId)
|
|
||||||
if err != nil {
|
|
||||||
tx.Rollback()
|
|
||||||
responses.FailWithMessage("修改失败", c)
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// 新增飞花令明细
|
|
||||||
for _, item := range req.BaseTokenItem {
|
|
||||||
baseTokenItem := &model.BaseTokenItem{
|
|
||||||
TokenId: baseToken.TokenId,
|
|
||||||
ItemName: item.ItemName,
|
|
||||||
ItemImage: utils.RemoveOssDomain(item.ItemImage),
|
|
||||||
ItemSort: item.ItemSort,
|
|
||||||
}
|
|
||||||
baseTokenItem, err := baseTokenItemDao.AddBaseTokenItem(tx, baseTokenItem)
|
|
||||||
if err != nil {
|
|
||||||
tx.Rollback()
|
|
||||||
responses.FailWithMessage("修改失败", c)
|
|
||||||
return
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
tx.Commit()
|
tx.Commit()
|
||||||
responses.Ok(c)
|
responses.Ok(c)
|
||||||
}
|
}
|
||||||
|
|||||||
@ -4,10 +4,12 @@ import (
|
|||||||
"github.com/gin-gonic/gin"
|
"github.com/gin-gonic/gin"
|
||||||
"knowledge/api/dao"
|
"knowledge/api/dao"
|
||||||
"knowledge/api/dto"
|
"knowledge/api/dto"
|
||||||
|
"knowledge/api/model"
|
||||||
"knowledge/api/requests"
|
"knowledge/api/requests"
|
||||||
"knowledge/api/responses"
|
"knowledge/api/responses"
|
||||||
"knowledge/global"
|
"knowledge/global"
|
||||||
"knowledge/utils"
|
"knowledge/utils"
|
||||||
|
"strconv"
|
||||||
)
|
)
|
||||||
|
|
||||||
type BaseTokenItem struct{}
|
type BaseTokenItem struct{}
|
||||||
@ -84,3 +86,174 @@ func (r *BaseTokenItem) GetBaseTokenItemList(c *gin.Context) {
|
|||||||
|
|
||||||
responses.OkWithData(g, c)
|
responses.OkWithData(g, c)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// AddBaseTokenItem 新增
|
||||||
|
func (r *BaseTokenItem) AddBaseTokenItem(c *gin.Context) {
|
||||||
|
baseTokenItemRequest := requests.BaseTokenItemRequest{}
|
||||||
|
req := baseTokenItemRequest.AddBaseTokenItem
|
||||||
|
if err := c.ShouldBind(&req); err != nil {
|
||||||
|
responses.FailWithMessage(err.Error(), c)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// 参数验证
|
||||||
|
if err := global.Validate.Struct(req); err != nil {
|
||||||
|
responses.FailWithMessage(utils.Translate(err), c)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// 开始事务
|
||||||
|
tx := global.Db.Begin()
|
||||||
|
defer func() {
|
||||||
|
if r := recover(); r != nil {
|
||||||
|
tx.Rollback()
|
||||||
|
}
|
||||||
|
}()
|
||||||
|
|
||||||
|
// 获取飞花令数据
|
||||||
|
tokenId, err := strconv.ParseInt(req.TokenId, 10, 64)
|
||||||
|
if err != nil {
|
||||||
|
tx.Rollback()
|
||||||
|
responses.Fail(c)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
baseTokenDao := dao.BaseTokenDao{}
|
||||||
|
baseToken, err := baseTokenDao.GetBaseTokenById(tokenId)
|
||||||
|
if err != nil {
|
||||||
|
tx.Rollback()
|
||||||
|
responses.FailWithMessage("飞花令错误", c)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// 新增飞花令明细
|
||||||
|
baseTokenItemDao := dao.BaseTokenItemDao{}
|
||||||
|
baseTokenItem := &model.BaseTokenItem{
|
||||||
|
TokenId: baseToken.TokenId,
|
||||||
|
ItemName: req.ItemName,
|
||||||
|
ItemImage: utils.RemoveOssDomain(req.ItemImage),
|
||||||
|
ItemSort: req.ItemSort,
|
||||||
|
}
|
||||||
|
baseTokenItem, err = baseTokenItemDao.AddBaseTokenItem(tx, baseTokenItem)
|
||||||
|
if err != nil {
|
||||||
|
tx.Rollback()
|
||||||
|
responses.FailWithMessage("新增失败", c)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
tx.Commit()
|
||||||
|
responses.Ok(c)
|
||||||
|
}
|
||||||
|
|
||||||
|
// PutBaseTokenItem 修改
|
||||||
|
func (r *BaseTokenItem) PutBaseTokenItem(c *gin.Context) {
|
||||||
|
baseTokenItemRequest := requests.BaseTokenItemRequest{}
|
||||||
|
req := baseTokenItemRequest.PutBaseTokenItem
|
||||||
|
if err := c.ShouldBind(&req); err != nil {
|
||||||
|
responses.FailWithMessage(err.Error(), c)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// 参数验证
|
||||||
|
if err := global.Validate.Struct(req); err != nil {
|
||||||
|
responses.FailWithMessage(utils.Translate(err), c)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
id := c.Param("item_id")
|
||||||
|
if id == "" {
|
||||||
|
responses.FailWithMessage("缺少参数", c)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// 将 id 转换为 int64 类型
|
||||||
|
itemId, err := strconv.ParseInt(id, 10, 64)
|
||||||
|
if err != nil {
|
||||||
|
responses.Fail(c)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// 获取详情
|
||||||
|
baseTokenItemDao := dao.BaseTokenItemDao{}
|
||||||
|
baseTokenItem, err := baseTokenItemDao.GetBaseTokenItemById(itemId)
|
||||||
|
if err != nil {
|
||||||
|
responses.FailWithMessage("数据不存在", c)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// 开始事务
|
||||||
|
tx := global.Db.Begin()
|
||||||
|
defer func() {
|
||||||
|
if r := recover(); r != nil {
|
||||||
|
tx.Rollback()
|
||||||
|
}
|
||||||
|
}()
|
||||||
|
|
||||||
|
baseTokenItemData := make(map[string]interface{})
|
||||||
|
if req.ItemName != baseTokenItem.ItemName {
|
||||||
|
baseTokenItemData["item_name"] = req.ItemName
|
||||||
|
}
|
||||||
|
|
||||||
|
if req.ItemSort != baseTokenItem.ItemSort {
|
||||||
|
baseTokenItemData["item_sort"] = req.ItemSort
|
||||||
|
}
|
||||||
|
|
||||||
|
itemImage := utils.RemoveOssDomain(req.ItemImage)
|
||||||
|
if itemImage != baseTokenItem.ItemImage {
|
||||||
|
baseTokenItemData["item_image"] = itemImage
|
||||||
|
}
|
||||||
|
|
||||||
|
if len(baseTokenItemData) > 0 {
|
||||||
|
err := baseTokenItemDao.EditBaseTokenItemById(tx, itemId, baseTokenItemData)
|
||||||
|
if err != nil {
|
||||||
|
tx.Rollback()
|
||||||
|
responses.FailWithMessage("修改失败", c)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
tx.Commit()
|
||||||
|
responses.Ok(c)
|
||||||
|
}
|
||||||
|
|
||||||
|
// DeleteBaseTokenItem 删除
|
||||||
|
func (r *BaseTokenItem) DeleteBaseTokenItem(c *gin.Context) {
|
||||||
|
id := c.Param("item_id")
|
||||||
|
if id == "" {
|
||||||
|
responses.FailWithMessage("缺少参数", c)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// 将 id 转换为 int64 类型
|
||||||
|
itemId, err := strconv.ParseInt(id, 10, 64)
|
||||||
|
if err != nil {
|
||||||
|
responses.Fail(c)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// 获取详情
|
||||||
|
baseTokenItemDao := dao.BaseTokenItemDao{}
|
||||||
|
_, err = baseTokenItemDao.GetBaseTokenItemById(itemId)
|
||||||
|
if err != nil {
|
||||||
|
responses.FailWithMessage("数据不存在", c)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// 开始事务
|
||||||
|
tx := global.Db.Begin()
|
||||||
|
defer func() {
|
||||||
|
if r := recover(); r != nil {
|
||||||
|
tx.Rollback()
|
||||||
|
}
|
||||||
|
}()
|
||||||
|
|
||||||
|
err = baseTokenItemDao.DeleteBaseTokenItemById(tx, itemId)
|
||||||
|
if err != nil {
|
||||||
|
responses.FailWithMessage("删除失败", c)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
tx.Commit()
|
||||||
|
|
||||||
|
responses.Ok(c)
|
||||||
|
}
|
||||||
|
|||||||
@ -22,25 +22,9 @@ type GetTokenList struct {
|
|||||||
// AddBaseToken 新增
|
// AddBaseToken 新增
|
||||||
type AddBaseToken struct {
|
type AddBaseToken struct {
|
||||||
TokenName string `json:"token_name" form:"token_name" label:"名称" validate:"required"` // 名称
|
TokenName string `json:"token_name" form:"token_name" label:"名称" validate:"required"` // 名称
|
||||||
BaseTokenItem []AddBaseTokenItem `json:"base_token_item" form:"base_token_item" label:"明细" validate:"required"`
|
|
||||||
}
|
|
||||||
|
|
||||||
// AddBaseTokenItem 新增-明细
|
|
||||||
type AddBaseTokenItem struct {
|
|
||||||
ItemName string `json:"item_name" form:"item_name" label:"名称" validate:"required"`
|
|
||||||
ItemImage string `json:"item_image" form:"item_image" label:"图片地址" validate:"required"`
|
|
||||||
ItemSort int `json:"item_sort" form:"item_sort" label:"排序(越大越靠前)" validate:"required"`
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// PutBaseToken 修改
|
// PutBaseToken 修改
|
||||||
type PutBaseToken struct {
|
type PutBaseToken struct {
|
||||||
TokenName string `json:"token_name" form:"token_name" label:"名称" validate:"required"` // 名称
|
TokenName string `json:"token_name" form:"token_name" label:"名称" validate:"required"` // 名称
|
||||||
BaseTokenItem []AddBaseTokenItem `json:"base_token_item" form:"base_token_item" label:"明细" validate:"required"`
|
|
||||||
}
|
|
||||||
|
|
||||||
// PutBaseTokenItem 修改-明细
|
|
||||||
type PutBaseTokenItem struct {
|
|
||||||
ItemName string `json:"item_name" form:"item_name" label:"名称" validate:"required"`
|
|
||||||
ItemImage string `json:"item_image" form:"item_image" label:"图片地址" validate:"required"`
|
|
||||||
ItemSort int `json:"item_sort" form:"item_sort" label:"排序(越大越靠前)" validate:"required"`
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -3,7 +3,8 @@ package requests
|
|||||||
type BaseTokenItemRequest struct {
|
type BaseTokenItemRequest struct {
|
||||||
GetBaseTokenItemPage // 获取列表-分页
|
GetBaseTokenItemPage // 获取列表-分页
|
||||||
GetBaseTokenItemList // 获取列表
|
GetBaseTokenItemList // 获取列表
|
||||||
AddItem // 新增
|
AddBaseTokenItem // 新增
|
||||||
|
PutBaseTokenItem // 修改
|
||||||
}
|
}
|
||||||
|
|
||||||
// GetBaseTokenItemPage 获取列表-分页
|
// GetBaseTokenItemPage 获取列表-分页
|
||||||
@ -20,8 +21,17 @@ type GetBaseTokenItemList struct {
|
|||||||
ItemName string `json:"item_name" form:"item_name" label:"名称"`
|
ItemName string `json:"item_name" form:"item_name" label:"名称"`
|
||||||
}
|
}
|
||||||
|
|
||||||
// AddItem 新增
|
// AddBaseTokenItem 新增
|
||||||
type AddItem struct {
|
type AddBaseTokenItem struct {
|
||||||
TokenId string `json:"token_id" form:"token_id" label:"飞花令id"`
|
TokenId string `json:"token_id" form:"token_id" label:"飞花令id"`
|
||||||
ItemName string `json:"item_name" form:"item_name" label:"名称"`
|
ItemName string `json:"item_name" form:"item_name" label:"名称" validate:"required"`
|
||||||
|
ItemImage string `json:"item_image" form:"item_image" label:"图片地址" validate:"required"`
|
||||||
|
ItemSort int `json:"item_sort" form:"item_sort" label:"排序(越大越靠前)" validate:"required"`
|
||||||
|
}
|
||||||
|
|
||||||
|
// PutBaseTokenItem 修改
|
||||||
|
type PutBaseTokenItem struct {
|
||||||
|
ItemName string `json:"item_name" form:"item_name" label:"名称" validate:"required"`
|
||||||
|
ItemImage string `json:"item_image" form:"item_image" label:"图片地址" validate:"required"`
|
||||||
|
ItemSort int `json:"item_sort" form:"item_sort" label:"排序(越大越靠前)" validate:"required"`
|
||||||
}
|
}
|
||||||
|
|||||||
@ -233,6 +233,15 @@ func privateRouter(r *gin.Engine, api controller.Api) {
|
|||||||
|
|
||||||
// 获取列表
|
// 获取列表
|
||||||
itemGroup.GET("/list", api.BaseTokenItem.GetBaseTokenItemList)
|
itemGroup.GET("/list", api.BaseTokenItem.GetBaseTokenItemList)
|
||||||
|
|
||||||
|
// 新增
|
||||||
|
itemGroup.POST("", api.BaseTokenItem.AddBaseTokenItem)
|
||||||
|
|
||||||
|
// 修改
|
||||||
|
itemGroup.PUT("/:item_id", api.BaseTokenItem.PutBaseTokenItem)
|
||||||
|
|
||||||
|
// 删除
|
||||||
|
itemGroup.DELETE("/:item_id", api.BaseTokenItem.DeleteBaseTokenItem)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user