whitelist.go 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  1. package controller
  2. import (
  3. "github.com/gin-gonic/gin"
  4. "github.com/mhaya/game/game_cluster/internal/code"
  5. "github.com/mhaya/game/game_cluster/nodes/webadmin/common"
  6. "github.com/mhaya/game/game_cluster/nodes/webadmin/entity"
  7. "github.com/mhaya/game/game_cluster/nodes/webadmin/service"
  8. )
  9. type Whitelist struct {
  10. sev *service.Whitelist
  11. }
  12. func NewWhitelist() *Whitelist {
  13. return &Whitelist{
  14. sev: service.NewWhitelist(),
  15. }
  16. }
  17. // GetWhitelist 获取白名单
  18. // @Summary 获取白名单
  19. // @Description 获取白名单
  20. // @Tags 白名单
  21. // @Accept json
  22. // @Produce json
  23. // @Param req body entity.WhitelistListReq true "请求参数"
  24. // @Success 200 {object} []models.Whitelist "返回结果"
  25. // @Router /v1/admin/whitelist/list [post]
  26. func (w *Whitelist) GetWhitelist(ctx *gin.Context) {
  27. var req entity.WhitelistListReq
  28. if err := ctx.ShouldBindJSON(&req); err != nil {
  29. common.PackOkResult(ctx, code.ParamError)
  30. return
  31. }
  32. resp, err := w.sev.GetAll(req)
  33. if err != nil {
  34. common.PackOkResult(ctx, err.Code)
  35. return
  36. }
  37. common.PackOkResult(ctx, code.OK, resp)
  38. }
  39. // AddWhitelist 新增白名单
  40. // @Summary 新增白名单
  41. // @Description 新增白名单
  42. // @Tags 白名单
  43. // @Accept json
  44. // @Produce json
  45. // @Param req body entity.WhitelistAddReq true "请求参数"
  46. // @Success 200 {object} entity.Response "返回结果"
  47. // @Router /v1/admin/whitelist/add [post]
  48. func (w *Whitelist) AddWhitelist(ctx *gin.Context) {
  49. var req entity.WhitelistAddReq
  50. if err := ctx.ShouldBindJSON(&req); err != nil {
  51. common.PackOkResult(ctx, code.ParamError)
  52. return
  53. }
  54. err := w.sev.Add(req)
  55. if err != nil {
  56. common.PackOkResult(ctx, err.Code)
  57. return
  58. }
  59. common.PackOkResult(ctx, code.OK, nil)
  60. }
  61. // RemoveWhitelist 删除白名单
  62. // @Summary 删除白名单
  63. // @Description 删除白名单
  64. // @Tags 白名单
  65. // @Accept json
  66. // @Produce json
  67. // @Param req body entity.WhitelistRemoveReq true "请求参数"
  68. // @Success 200 {object} entity.Response "返回结果"
  69. // @Router /v1/admin/whitelist/remove [post]
  70. func (w *Whitelist) RemoveWhitelist(ctx *gin.Context) {
  71. var req entity.WhitelistRemoveReq
  72. if err := ctx.ShouldBindJSON(&req); err != nil {
  73. common.PackOkResult(ctx, code.ParamError)
  74. return
  75. }
  76. err := w.sev.Remove(req)
  77. if err != nil {
  78. common.PackOkResult(ctx, err.Code)
  79. return
  80. }
  81. common.PackOkResult(ctx, code.OK, nil)
  82. }