1 Star 0 Fork 0

瑞新/go-admin

加入 Gitee
与超过 1400万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
CodeController.go 2.64 KB
一键复制 编辑 原始数据 按行查看 历史
瑞新 提交于 2018-12-24 18:35 +08:00 . test
package controllers
import (
"gitee.com/tangrx/go-admin/app"
"gitee.com/tangrx/go-admin/models"
"github.com/gin-gonic/gin"
"log"
)
func init() {
app.Any("/api/sys/code", func(c *gin.Context) {
var json models.SearchForm
if err := c.ShouldBindJSON(&json); err != nil {
c.JSON(200, gin.H{"error": err.Error()})
return
}
c.JSON(200, models.GetCodeList4Pager(json))
})
app.Any("/api/sys/codetree", func(c *gin.Context) {
var json models.SearchForm
if err := c.ShouldBindJSON(&json); err != nil {
c.JSON(200, gin.H{"error": err.Error()})
return
}
c.JSON(200, gin.H{"status": "200",
"data": models.GetCodeTree(json),
"msg": "",
})
})
// 删除
app.POST("/api/sys/code/delete", func(c *gin.Context) {
var json map[string]int64
if err := c.ShouldBindJSON(&json); err != nil {
c.JSON(200, gin.H{"error": err.Error()})
return
}
checkNode := models.GetTreeNode(json["id"])
if checkNode == -1 {
c.JSON(200, gin.H{"status": "100",
"data": nil,
"msg": "发生异常,请联系管理员!",
})
return
}
if checkNode > 0 {
c.JSON(200, gin.H{"status": "100",
"data": nil,
"msg": "存在子节点,不能直接删除!",
})
return
}
data := models.DeleteCode(json["id"])
if data == 0 {
c.JSON(200, gin.H{"status": "100",
"data": nil,
"msg": "数据不存在!",
})
return
}
log.Println(data)
c.JSON(200, gin.H{"status": "200",
"data": nil,
"msg": "删除成功!",
})
})
// 保存
app.POST("/api/sys/code/save", func(c *gin.Context) {
var json models.Code
if err := c.ShouldBindJSON(&json); err != nil {
c.JSON(200, gin.H{"error": err.Error()})
return
}
checkNode := models.CheckNodeByKey(json.Key, json.Id)
if checkNode == -1 {
c.JSON(200, gin.H{"status": "100",
"data": nil,
"msg": "发生异常,请联系管理员!",
})
return
}
if checkNode > 0 {
c.JSON(200, gin.H{"status": "100",
"data": nil,
"msg": "存在相同key,不能保存!",
})
return
}
if !models.CheckParentId(json.Id, json.ParentId) {
c.JSON(200, gin.H{"status": "100",
"data": nil,
"msg": "父亲节点有问题,会构成循环,不能保存!",
})
return
}
json.UpdateId = app.GetUserId(c)
json.CreateId = app.GetUserId(c)
var result int64
if json.Id == 0 {
result = models.AddCodeData(&json)
} else {
result = models.UpdateCode(&json)
}
if result == 0 {
c.JSON(200, gin.H{"status": "100",
"data": nil,
"msg": "保存失败!",
})
return
}
log.Println(result)
c.JSON(200, gin.H{"status": "200",
"data": nil,
"msg": "保存成功!",
})
})
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Go
1
https://gitee.com/tangrx/go-admin.git
git@gitee.com:tangrx/go-admin.git
tangrx
go-admin
go-admin
f52182f48257

搜索帮助