user.go 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. package user
  2. import (
  3. "github.com/gin-gonic/gin"
  4. "zhiyuan/pkg/app"
  5. "zhiyuan/services/form"
  6. "zhiyuan/services/user"
  7. )
  8. func Login(c *gin.Context) {
  9. var form form.UserLogin
  10. if app.Bind(c, &form) != nil {
  11. return
  12. }
  13. token, err := user.Login(form)
  14. if err != nil {
  15. app.Error(c, err.Error())
  16. return
  17. }
  18. app.Success(c, map[string]string{
  19. "token": token,
  20. })
  21. }
  22. func Logout(c *gin.Context) {
  23. err := user.Logout(c.GetInt("userID"))
  24. if err != nil {
  25. app.ErrorMsg(c, err.Error(), nil)
  26. return
  27. }
  28. app.Success(c, nil)
  29. }
  30. func Info(c *gin.Context) {
  31. type UserInfo struct {
  32. ID int `json:"id"`
  33. Name string `json:"name"`
  34. NickName string `json:"nickname"`
  35. Phone string `json:"phone"`
  36. HeadImgUrl string `json:"headimgurl"`
  37. }
  38. var userInfo UserInfo
  39. _, err := user.GetInfoByID(c.GetInt("userID"), nil, &userInfo)
  40. if err != nil {
  41. app.ErrorMsg(c, err.Error(), nil)
  42. return
  43. }
  44. app.Success(c, userInfo)
  45. }
  46. func InfoEdit(c *gin.Context) {
  47. var form user.EditInfoForm
  48. if app.Bind(c, &form) != nil {
  49. return
  50. }
  51. err := user.EditInfoByID(form, c.GetInt("userID"))
  52. if err != nil {
  53. app.ErrorMsg(c, err.Error(), nil)
  54. return
  55. }
  56. app.Success(c, nil)
  57. }
  58. func UnBindWeixin(c *gin.Context) {
  59. if err := user.UnBindWeixin(c.GetInt("userID")); err != nil {
  60. app.ErrorMsg(c, err.Error(), nil)
  61. return
  62. }
  63. app.Success(c, nil)
  64. }