12345678910111213141516171819202122232425262728 |
- package middleware
- import (
- "fmt"
- "surveyService/response"
- "surveyService/util"
- "surveyService/util/constants"
- "github.com/gin-gonic/gin"
- "gogs.uu.mdfitnesscao.com/cuiguohai/sdk"
- sdk_constants "gogs.uu.mdfitnesscao.com/cuiguohai/sdk/constants"
- )
- func PermissionCheckStaff(routePermission string) gin.HandlerFunc {
- return func(c *gin.Context) {
- currentUser, _ := util.GetFromGinContext[*sdk.AuthMechanism](c, constants.MechanismCacheKey)
- if !currentUser.FullPermission {
- if !util.InArrayString(routePermission, currentUser.Permissions) {
- response.Fail(c, &response.ErrCode{
- Code: response.PERMISSION_NOT_ALLOWED,
- Msg: fmt.Sprintf("您没有权限进行该操作,缺少权限【%s】", sdk_constants.MechanismStaffPermissionNames[routePermission].Name),
- })
- return
- }
- }
- c.Next()
- }
- }
|