sync_wx.go 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. package crontask
  2. import "wechat-api/internal/service/wechat"
  3. func (l *CronTask) syncWx() {
  4. syncWx := wechat.SyncWx{Ctx: l.ctx, DB: l.svcCtx.DB}
  5. syncWx.SyncAll()
  6. //// 获取微信列表
  7. //var result types.WorkPhoneGetWeChatsResp
  8. //client := req.C().DevMode()
  9. //client.SetCommonRetryCount(2).
  10. // SetCommonRetryBackoffInterval(1*time.Second, 5*time.Second).
  11. // SetCommonRetryFixedInterval(2 * time.Second).SetTimeout(30 * time.Second)
  12. //res, err := client.R().SetSuccessResult(&result).Post("http://chat.gkscrm.com:13086/pc/GetWeChatsReq?id=0")
  13. //if err != nil {
  14. // l.Error("syncWx: ", err)
  15. // return
  16. //}
  17. //if !res.IsSuccessState() {
  18. // l.Error("GetWeChats failed with status code: ", res.StatusCode)
  19. // return
  20. //}
  21. //
  22. //// 遍历微信列表
  23. //for _, account := range result.Data {
  24. // if account.Wechatid == "" {
  25. // continue
  26. // }
  27. // wxinfo, err := l.svcCtx.DB.Wx.Query().
  28. // Where(
  29. // wx.And(
  30. // wx.Or(
  31. // wx.WxidEQ(account.Wechatid),
  32. // wx.PortEQ(account.Deviceid),
  33. // ),
  34. // wx.CtypeEQ(1),
  35. // ),
  36. // ).
  37. // Only(l.ctx)
  38. //
  39. // if err != nil && !ent.IsNotFound(err) {
  40. // l.Error("syncWx: ", err)
  41. // return
  42. // }
  43. // var status uint8
  44. // if account.Isonline == 0 {
  45. // status = 1
  46. // } else {
  47. // status = 0
  48. // }
  49. // if wxinfo != nil {
  50. // err = l.svcCtx.DB.Wx.UpdateOneID(wxinfo.ID).
  51. // SetServerID(0).
  52. // SetPort(account.Deviceid).
  53. // SetProcessID(strconv.FormatInt(account.Cid, 10)).
  54. // SetAccount(account.Wechatno).
  55. // SetNickname(account.Wechatnick).
  56. // SetHeadBig(account.Avatar).
  57. // SetStatus(status).
  58. // Exec(l.ctx)
  59. //
  60. // if err != nil {
  61. // l.Error("syncWx: ", err)
  62. // return
  63. // }
  64. // } else {
  65. // l.Debug("wxinfo is nil")
  66. // _, err := l.svcCtx.DB.Wx.Create().
  67. // SetServerID(0).
  68. // SetPort(account.Deviceid).
  69. // SetProcessID(strconv.FormatInt(account.Cid, 10)).
  70. // SetWxid(account.Wechatid).
  71. // SetAccount(account.Wechatno).
  72. // SetHeadBig(account.Avatar).
  73. // SetNickname(account.Wechatnick).
  74. // SetStatus(status).
  75. // SetAllowList([]string{}).SetBlockList([]string{}).SetGroupAllowList([]string{}).SetGroupBlockList([]string{}).
  76. // Save(l.ctx)
  77. // if err != nil {
  78. // l.Error("syncWx: ", err)
  79. // return
  80. // }
  81. // }
  82. //
  83. // data := map[string]interface{}{
  84. // "MsgType": "TriggerFriendPushTask",
  85. // "Content": map[string]interface{}{
  86. // "WeChatId": account.Wechatid,
  87. // },
  88. // }
  89. // jsonStr, err := json.Marshal(data)
  90. // err = l.svcCtx.WechatWs["default"].SendMsg([]byte(jsonStr))
  91. // if err != nil {
  92. // l.Error("syncWx: ", err)
  93. // return
  94. // }
  95. //}
  96. }