LoginController.go 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. package admin
  2. import (
  3. "think-go/controllers/services"
  4. "think-go/utils"
  5. "github.com/beego/beego/v2/server/web"
  6. )
  7. type LoginController struct {
  8. web.Controller
  9. }
  10. // @router /login/login [get,post]
  11. func (c *LoginController) Login() {
  12. if c.Ctx.Input.IsGet() {
  13. utils.JSON(&c.Controller, 200, "success", "please use POST to login")
  14. }
  15. mobile, err := utils.GetRequestString(&c.Controller, "mobile")
  16. if err != nil {
  17. utils.JSON(&c.Controller, 201, "error", "invalid json body")
  18. }
  19. password, err := utils.GetRequestString(&c.Controller, "password")
  20. if err != nil {
  21. utils.JSON(&c.Controller, 201, "error", "invalid json body")
  22. }
  23. if mobile == "" {
  24. utils.JSON(&c.Controller, 201, "error", "mobile is required")
  25. }
  26. if password == "" {
  27. utils.JSON(&c.Controller, 201, "error", "password is required")
  28. }
  29. svc := &services.SaasUserService{}
  30. result, err := svc.Login(mobile, password)
  31. if err != nil {
  32. utils.JSON(&c.Controller, 201, "error", err.Error())
  33. }
  34. utils.JSON(&c.Controller, 200, "success", result)
  35. }