usercontroller.go 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124
  1. package controller
  2. import (
  3. "bigdata_archives/app/e"
  4. "bigdata_archives/app/model"
  5. "bigdata_archives/app/service"
  6. "bigdata_archives/unity"
  7. "bigdata_archives/utils"
  8. "github.com/gin-gonic/gin"
  9. "github.com/go-playground/validator/v10"
  10. "strconv"
  11. )
  12. var users service.UserService = &model.User{}
  13. // Login @Summary 用户登录
  14. func Login(c *gin.Context) {
  15. var user model.User
  16. if err := c.ShouldBindJSON(&user); err != nil {
  17. e.ResponseWithMsg(c, e.JSONParsingFailed, e.JSONParsingFailed.GetMsg())
  18. return
  19. } else {
  20. validate := validator.New()
  21. if err := validate.Struct(user); err != nil {
  22. e.ResponseWithMsg(c, e.JSONParsingFailed, e.JSONParsingFailed.GetMsg())
  23. return
  24. }
  25. login, rescode := users.Login(user.Account, user.Password)
  26. if rescode == e.SUCCESS {
  27. e.ResponseSuccess(c, login)
  28. return
  29. }
  30. e.ResponseWithMsg(c, rescode, rescode.GetMsg())
  31. return
  32. }
  33. }
  34. // AddUser @Summary 添加用户
  35. func AddUser(c *gin.Context) {
  36. var user model.User
  37. if err := c.ShouldBindJSON(&user); err != nil {
  38. e.ResponseWithMsg(c, e.JSONParsingFailed, e.JSONParsingFailed.GetMsg())
  39. return
  40. } else {
  41. validate := validator.New()
  42. if err := validate.Struct(user); err != nil {
  43. e.ResponseWithMsg(c, e.JSONParsingFailed, e.JSONParsingFailed.GetMsg())
  44. return
  45. }
  46. addUser, rescode := users.AddUser(user)
  47. if rescode == e.SUCCESS {
  48. e.ResponseSuccess(c, addUser)
  49. return
  50. }
  51. e.ResponseWithMsg(c, rescode, rescode.GetMsg())
  52. }
  53. }
  54. // UserList @Summary 用户列表
  55. func UserList(c *gin.Context) {
  56. var params unity.QueryPageParams
  57. if err := c.ShouldBindJSON(&params); err != nil {
  58. e.ResponseWithMsg(c, e.JSONParsingFailed, e.JSONParsingFailed.GetMsg())
  59. return
  60. }
  61. result, total, err := unity.PaginateWithCondition(params, model.User{}, nil)
  62. if err != nil {
  63. e.ResponseWithMsg(c, e.PaginationFailed, e.PaginationFailed.GetMsg())
  64. return
  65. }
  66. e.ResPonsePage(c, result, total, params)
  67. }
  68. // GetUserById @Summary 根据id获取用户
  69. func GetUserById(c *gin.Context) {
  70. value := c.Query("id")
  71. atoi, _ := strconv.Atoi(value)
  72. err := validator.New().Var(atoi, "required")
  73. if err != nil {
  74. e.ResponseWithMsg(c, e.CheckRequired, e.CheckRequired.GetMsg())
  75. return
  76. }
  77. id, rescode := users.GetUserById(atoi)
  78. if rescode == e.SUCCESS {
  79. e.ResponseSuccess(c, id)
  80. return
  81. }
  82. e.ResponseWithMsg(c, rescode, rescode.GetMsg())
  83. }
  84. // DeleteUser @Summary 删除用户
  85. func DeleteUser(c *gin.Context) {
  86. var user model.User
  87. err := c.ShouldBindJSON(&user)
  88. if err != nil {
  89. e.ResponseWithMsg(c, e.JSONParsingFailed, e.JSONParsingFailed.GetMsg())
  90. return
  91. }
  92. id, err := unity.DeleteById(user.ID, user)
  93. if err != nil {
  94. e.ResponseWithMsg(c, e.DELETEFAIL, e.DELETEFAIL.GetMsg())
  95. return
  96. }
  97. e.ResponseSuccess(c, id)
  98. }
  99. // UpdateUserById @Summary 修改用户
  100. func UpdateUserById(c *gin.Context) {
  101. var user model.User
  102. if err := c.ShouldBindJSON(&user); err != nil {
  103. e.ResponseWithMsg(c, e.JSONParsingFailed, e.JSONParsingFailed.GetMsg())
  104. return
  105. }
  106. if user.Password != "" {
  107. md5 := utils.MD5(user.Password)
  108. user.Password = md5
  109. }
  110. id, err := unity.UpdateById(user.ID, user)
  111. if err != nil {
  112. e.ResponseWithMsg(c, e.UPDATEFAIL, e.UPDATEFAIL.GetMsg())
  113. return
  114. }
  115. e.ResponseSuccess(c, id)
  116. }