UserRouter.go 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. package router
  2. import (
  3. "file-manger-server/service/dao"
  4. "file-manger-server/util"
  5. "file-manger-server/util/share"
  6. "github.com/gin-gonic/gin"
  7. "github.com/spf13/cast"
  8. )
  9. type loginVo struct {
  10. Token string `json:"token"`
  11. Expire int64 `json:"expire"`
  12. }
  13. func Login(c *gin.Context) {
  14. param := share.GetJsonAnyParam(c)
  15. username, _ := param("username")
  16. password, _ := param("password")
  17. userDao := dao.UserDao{}
  18. user, err := userDao.Login(cast.ToString(username), cast.ToString(password))
  19. if err != nil {
  20. c.JSON(200, CreateResultError(400, err.Error()))
  21. return
  22. }
  23. token, expire, err := util.GenerateToken(user.Id, user.Role)
  24. if err != nil {
  25. c.JSON(200, CreateResultError(400, err.Error()))
  26. return
  27. }
  28. vo := loginVo{
  29. Token: token,
  30. Expire: expire,
  31. }
  32. c.JSON(200, CreateResultData(vo))
  33. }
  34. func Register(c *gin.Context) {
  35. param := share.GetJsonAnyParam(c)
  36. username, _ := param("username")
  37. password, _ := param("password")
  38. userDao := dao.UserDao{}
  39. err := userDao.Register(cast.ToString(username), cast.ToString(password))
  40. if err != nil {
  41. c.JSON(200, CreateResultError(400, err.Error()))
  42. return
  43. }
  44. c.JSON(200, CreateResult())
  45. }