package WorkPhone import ( "context" "fmt" "github.com/imroc/req/v3" "github.com/suyuan32/simple-admin-common/msg/errormsg" "time" "wechat-api/internal/svc" "wechat-api/internal/types" "github.com/zeromicro/go-zero/core/logx" ) type QxRefreshLogic struct { logx.Logger ctx context.Context svcCtx *svc.ServiceContext } func NewQxRefreshLogic(ctx context.Context, svcCtx *svc.ServiceContext) *QxRefreshLogic { return &QxRefreshLogic{ Logger: logx.WithContext(ctx), ctx: ctx, svcCtx: svcCtx} } func (l *QxRefreshLogic) QxRefresh() (resp *types.BaseMsgResp, err error) { var result types.WorkPhoneGetWeChatsResp client := req.C().DevMode() client.SetCommonRetryCount(2). SetCommonRetryBackoffInterval(1*time.Second, 5*time.Second). SetCommonRetryFixedInterval(2 * time.Second).SetTimeout(30 * time.Second) res, err := client.R().SetSuccessResult(&result).Post("http://chat.gkscrm.com:15086/pc/GetWeChatsReq?id=13") if err != nil { return } if !res.IsSuccessState() { err = fmt.Errorf("GetWeChats failed with status code %d", res.StatusCode) return } return &types.BaseMsgResp{Msg: errormsg.Success}, nil }