直接完成

This commit is contained in:
2022-11-23 20:56:28 +08:00
commit b924e94c63
21 changed files with 829 additions and 0 deletions

30
service/user.go Normal file
View File

@@ -0,0 +1,30 @@
package service
import (
"integrity-checkin/pkg/app"
"integrity-checkin/pkg/httpclient"
"integrity-checkin/pkg/util"
)
type UserService struct {
}
func (u UserService) Login(aw *app.Wrapper) app.Result {
type LoginReq struct {
Username string `form:"username" binding:"required"`
Password string `form:"password" binding:"required"`
}
var req LoginReq
if err := aw.Ctx.ShouldBind(&req); err != nil {
return aw.Error(err.Error())
}
sduLoginData, err := httpclient.SDULogin(req.Username, req.Password)
if err != nil {
return aw.Error(err.Error())
}
user := userDAO.FindUserByUsername(sduLoginData.Username)
if user == nil {
user = userDAO.CreateUser(sduLoginData.Username, sduLoginData.RealName)
}
return aw.Success(util.GenerateJWT(user.ID, user.RoleID))
}