package controllers import ( "sparrow/pkg/models" "sparrow/services/knowoapi/model" "sparrow/services/knowoapi/services" "github.com/kataras/iris" ) // UserController api type UserController struct { Ctx iris.Context Service services.UserService Token Token } // PostLogin /login func (a *UserController) PostLogin() { lr := models.LoginRequest{} if err := parseBody(a.Ctx, &lr); err != nil { badRequest(a.Ctx, err) return } b, user, err := a.Service.Login(&lr) if err != nil { responseError(a.Ctx, ErrDatabase, "用户名或密码错误") return } if !b { responseError(a.Ctx, model.ErrUserNameOrPassCode, "用户名或密码错误") return } result := map[string]interface{}{ "user_id": user.ID, "company": user.Vendor.VendorName, "access_token": a.Token.tokenMaker(user), "user_role": user.UserRoleID, } done(a.Ctx, result) } // PostRegistry 注册 //POST /registry func (a *UserController) PostRegistry() { req := &models.Reqrequest{} if err := parseBody(a.Ctx, req); err != nil { badRequest(a.Ctx, err) return } b, err := a.Service.CheckEmail(req.Email) if err != nil { responseError(a.Ctx, ErrDatabase, err.Error()) return } if b { responseError(a.Ctx, -1, "Email已经被注册") return } b, err = a.Service.CheckPhone(req.Phone) if err != nil { responseError(a.Ctx, ErrDatabase, err.Error()) return } if b { responseError(a.Ctx, -1, "手机号被注册") return } b, err = a.Service.CheckUserName(req.UserName) if err != nil { responseError(a.Ctx, ErrDatabase, err.Error()) return } if b { responseError(a.Ctx, -1, "该用户名已经被使用") return } user, err := a.Service.Register(req) if err != nil { responseError(a.Ctx, ErrDatabase, err.Error()) return } done(a.Ctx, map[string]interface{}{ "user_name": user.UserName, "user_key": user.UserKey, "vendor_id": user.VendorID, "user_id": user.ID, }) } func (a *UserController) PostFile() { }