user_controller.go 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115
  1. package ldap
  2. import (
  3. "nginx-ui/server/base"
  4. "nginx-ui/server/models"
  5. )
  6. type UserController struct {
  7. base.Controller
  8. }
  9. func (c *UserController) Login() {
  10. req := LDAPLoginReq{}
  11. if c.ReadBody(&req) == false {
  12. return
  13. }
  14. user, err := ServiceInstance.Login(&req)
  15. if err != nil {
  16. c.ErrorJson(err)
  17. return
  18. }
  19. user.Password = ""
  20. c.SetSession("user", *user)
  21. c.PostJson(models.SuccessResp(user))
  22. }
  23. // SyncUsers 同步用户信息
  24. // post /ldap/user/sync
  25. func (c *UserController) SyncUsers() {
  26. current := c.RequiredUser()
  27. if current == nil {
  28. return
  29. }
  30. req := LDAPUserSyncReq{}
  31. if !c.ReadBody(&req) {
  32. return
  33. }
  34. count, err := ServiceInstance.SyncUsers(current, &req)
  35. if err != nil {
  36. c.ErrorJson(err)
  37. return
  38. }
  39. resp := make(map[string]interface{})
  40. resp["count"] = count
  41. c.SetData(resp).Json()
  42. }
  43. // UpdateUserPassword 更新用户密码
  44. // post /ldap/user/modifyPassword
  45. func (c *UserController) UpdateUserPassword() {
  46. }
  47. // UpdateUser 更新用户信息或者新增用户
  48. // post /ldap/user/update
  49. func (c *UserController) UpdateUser() {
  50. }
  51. // AddUser 新增用户
  52. func (c *UserController) AddUser() {
  53. current := c.RequiredUser()
  54. if current == nil {
  55. return
  56. }
  57. user := models.LdapUser{}
  58. if !c.ReadBody(&user) {
  59. return
  60. }
  61. resp, err := UserIns.Add(&user)
  62. if err != nil {
  63. c.ErrorJson(err)
  64. return
  65. }
  66. c.SetData(resp).Json()
  67. }
  68. // GetUsers 获取全部用户
  69. // get /ldap/users
  70. func (c *UserController) GetUsers() {
  71. current := c.RequiredUser()
  72. if current == nil {
  73. return
  74. }
  75. req := UserListReq{}
  76. if !c.ReadBody(&req) {
  77. return
  78. }
  79. resp, err := ServiceInstance.GetUsers(current, &req)
  80. if err != nil {
  81. c.ErrorJson(err)
  82. return
  83. }
  84. c.SetData(resp).Json()
  85. }
  86. func (c *UserController) GetDetail() {
  87. current := c.RequiredUser()
  88. if current == nil {
  89. return
  90. }
  91. id, err := c.GetIntQuery("id")
  92. if err != nil {
  93. c.ErrorJson(err)
  94. return
  95. }
  96. resp, err := UserIns.GetDetail(id)
  97. if err != nil {
  98. c.ErrorJson(err)
  99. return
  100. }
  101. c.SetData(resp).Json()
  102. }