gofiber-study/services/auth/auth.go

43 lines
737 B
Go
Raw Normal View History

package auth
import (
"errors"
"gofiber.study.skcks.cn/common/errorx"
"gofiber.study.skcks.cn/global"
2022-10-06 20:46:17 +08:00
"gofiber.study.skcks.cn/model/dto"
"gofiber.study.skcks.cn/model/generic/models"
)
var (
2022-10-06 17:59:12 +08:00
Failed = errors.New("账号或密码错误")
)
type Service struct {
}
var Services *Service
func InitService() {
Services = &Service{}
}
func (s *Service) Login(login *dto.Login) (token string, err error) {
user := &models.User{Account: login.Account, Password: login.Password}
exist, err := global.DataSources.Get(user)
if err != nil {
return
}
if !exist {
2022-10-06 17:59:12 +08:00
return token, Failed
}
token, err = global.GetToken(global.UserClaims{
Id: user.Id,
Account: user.Account,
})
err = errorx.ParseError(err)
return
}