package mid

import (
	"net/http"

	"github.com/gin-gonic/gin"

	"demo/internal/biz/errs"
	"demo/internal/util"
)

type Jwt struct {
}

func (p *Jwt) CheckToken(c *gin.Context) {
	headerToken := c.Request.Header.Get(util.Token)
	if util.DefaultToken != headerToken {
		c.AbortWithStatusJSON(http.StatusUnauthorized, gin.H{
			util.RequestKey: c.GetString(util.RequestKey),
			"code":          errs.InvalidAccessToken.Code,
			"message":       errs.InvalidAccessToken.Msg,
		})
		return
	}
	c.Set(util.CustomerId, util.DefaultCustomerId)
	c.Next()
}