package middlewares import ( "github.com/gin-gonic/gin" "hepa-calc-api/api/dao" "hepa-calc-api/api/responses" ) // Auth Auth认证 func Auth() gin.HandlerFunc { return func(c *gin.Context) { // 获取用户id userId := c.GetInt64("UserId") if userId == 0 { responses.Fail(c) c.Abort() return } // 获取用户数据 userDao := dao.UserDao{} user, err := userDao.GetUserById(userId) if err != nil || user == nil { responses.FailWithMessage("用户数据错误", c) c.Abort() return } if user.UserStatus == 2 { responses.FailWithMessage("用户已禁用", c) c.Abort() return } c.Set("UserId", userId) // 用户id c.Next() } }