permission.go 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. package middleware
  2. import (
  3. "gadmin/config"
  4. "gadmin/internal/admin/consts"
  5. "gadmin/utility/serializer"
  6. "gadmin/utility/token"
  7. "github.com/gin-gonic/gin"
  8. )
  9. // Permission 验证权限
  10. func Permission() gin.HandlerFunc {
  11. return func(c *gin.Context) {
  12. cUser, ok := c.Get("user")
  13. if !ok {
  14. c.JSON(200, serializer.Err(consts.CodeNoPermission, "登陆失效", nil))
  15. c.Abort()
  16. return
  17. }
  18. user := cUser.(*token.UserClaims)
  19. //q := query.Use(config.DB).AdminUser
  20. c.Set("admin_id", user.ID)
  21. //models, err := q.WithContext(c).Where(q.ID.Eq(user.ID)).First()
  22. //if err != nil {
  23. // c.JSON(200, serializer.Err(consts.CodeNoPermission, err.Error(), err))
  24. // c.Abort()
  25. // return
  26. //}
  27. //
  28. //if models == nil {
  29. // c.JSON(200, serializer.Err(consts.CodeNoPermission, "用户不存在", nil))
  30. // c.Abort()
  31. // return
  32. //}
  33. //
  34. //if models.Status != 1 {
  35. // c.JSON(200, serializer.Err(consts.CodeCheckLogin, "账号已被禁用", nil))
  36. // c.Abort()
  37. // return
  38. //}
  39. systemId := user.SystemId
  40. /*if systemId <= 0 {
  41. c.JSON(200, serializer.Err(consts.CodeNoPermission, "登陆失效", nil))
  42. c.Abort()
  43. }*/
  44. if user.UserName != "mojun" {
  45. if err := config.ValidityAuth(user.RoleId, c.Request.Method, c.Request.URL.Path, systemId); err != nil {
  46. c.JSON(200, serializer.Err(consts.CodeNoPermission, err.Error(), err))
  47. c.Abort()
  48. return
  49. }
  50. }
  51. c.Next()
  52. return
  53. }
  54. }