123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108 |
- package admin
- import (
- "github.com/gin-gonic/gin"
- "zhiyuan/pkg/app"
- "zhiyuan/pkg/utils"
- "zhiyuan/services/auth"
- "zhiyuan/services/form"
- )
- func AuthInfo(c *gin.Context) {
- id := utils.StrTo(c.Param("id")).MustInt()
- if id <= 0 {
- app.ErrorMsg(c, "auth id must be a number", nil)
- return
- }
- auth, err := auth.GetInfoByID(id)
- if err != nil {
- app.Error(c, err.Error())
- return
- }
- app.Success(c, auth)
- }
- func AuthList(c *gin.Context) {
- isTree := utils.ToInt(c.Query("tree"))
- if isTree == 1 {
- AuthListTree(c)
- return
- }
- page := app.HandlePageNum(c)
- where := make(map[string]interface{})
- total, err := auth.Count(where)
- if err != nil {
- app.Error(c, err.Error())
- return
- }
- auths, err := auth.GetList(where, []string{"id", "name", "pid", "auth"}, page, nil)
- if err != nil {
- app.Error(c, err.Error())
- return
- }
- data := gin.H{
- "list": auths,
- "total": total,
- "limit": page.PageSize,
- }
- app.Success(c, data)
- }
- func AuthListTree(c *gin.Context) {
- auths, err := auth.GetList(nil, []string{"id", "name", "pid", "auth"}, app.Page{}, nil)
- if err != nil {
- app.Error(c, err.Error())
- return
- }
- app.Success(c, utils.GenTree(auths, "id", "pid", "children", 0))
- }
- func AuthAdd(c *gin.Context) {
- var form form.AuthAdd
- if app.Bind(c, &form) != nil {
- return
- }
- id, err := auth.Add(form)
- if err != nil {
- app.Error(c, err.Error())
- return
- }
- app.Success(c, gin.H{"id": id})
- }
- func AuthEdit(c *gin.Context) {
- id := utils.StrTo(c.Param("id")).MustInt()
- if id <= 0 {
- app.ErrorMsg(c, "auth id must be a number", nil)
- return
- }
- var form form.AuthAdd
- if app.Bind(c, &form) != nil {
- return
- }
- err := auth.EditByID(form, id)
- if err != nil {
- app.Error(c, err.Error())
- return
- }
- app.Success(c, nil)
- }
- func AuthDel(c *gin.Context) {
- id := utils.StrTo(c.Param("id")).MustInt()
- if id <= 0 {
- app.ErrorMsg(c, "auth id must be a number", nil)
- return
- }
- err := auth.DeleteByID(id)
- if err != nil {
- app.Error(c, err.Error())
- return
- }
- app.Success(c, nil)
- }
|