user.go 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. package gn
  2. import (
  3. "eta_gn/eta_bridge/controller/resp"
  4. gnLogic "eta_gn/eta_bridge/logic/gn"
  5. "github.com/gin-gonic/gin"
  6. "sync"
  7. )
  8. // XiangyuController 象屿指标
  9. //type XiangyuController struct{}
  10. // 同步用户锁,防止重复同步,不管是全量还是增量,都是同一时间只能一个同步
  11. var lockSyncUser sync.Mutex
  12. // SyncUser
  13. // @Description: 全量同步用户
  14. // @author: Roc
  15. // @receiver xc
  16. // @datetime 2024-01-22 15:51:25
  17. // @param c *gin.Context
  18. func (gc *GuoNengController) SyncUser(c *gin.Context) {
  19. lockSyncUser.Lock()
  20. defer func() {
  21. lockSyncUser.Unlock()
  22. }()
  23. err := gnLogic.SyncUser()
  24. if err != nil {
  25. resp.FailData("同步失败", err.Error(), c)
  26. return
  27. }
  28. resp.Ok("同步成功", c)
  29. }
  30. // PullUser
  31. // @Description: 增量同步用户
  32. // @author: Roc
  33. // @receiver xc
  34. // @datetime 2024-01-23 17:13:07
  35. // @param c *gin.Context
  36. //func (xc *GuoNengController) PullUser(c *gin.Context) {
  37. // lockSyncUser.Lock()
  38. // defer func() {
  39. // lockSyncUser.Unlock()
  40. // }()
  41. // err := xiangyu.PullUser()
  42. // if err != nil {
  43. // resp.FailData("同步失败", err.Error(), c)
  44. // return
  45. // }
  46. // resp.Ok("同步成功", c)
  47. //
  48. // return
  49. //}