|
@@ -23,14 +23,23 @@ func SyncComeinMeeting(cont context.Context) (err error) {
|
|
|
go alarm_msg.SendAlarmMsg("同步进门会议参会人员数据失败:"+strings.Join(errMsgList, "/n"), 3)
|
|
|
}
|
|
|
}()
|
|
|
- startTimeInt := time.Now().Add(-3700*time.Second).Unix() * 1000 //开始时间
|
|
|
- endTimeInt := time.Now().Unix() * 1000 //结束时间
|
|
|
|
|
|
- //每天的第一次同步,那么拉取数据的开始时间 需要 往前面推10个小时(避免因为晚上有客户看回放而把用户遗漏了)
|
|
|
- if time.Now().Hour() == 7 {
|
|
|
- startTimeInt = time.Now().Add(-60*60*10*time.Second).Unix() * 1000
|
|
|
+ nowHour := time.Now().Hour()
|
|
|
+ //因为 0点 和 19点 是在更新指标,就不同步参会人数了
|
|
|
+ if nowHour == 0 || nowHour == 19 {
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ //默认往前面推 1 小时
|
|
|
+ beforeHour := time.Duration(1)
|
|
|
+ //因为 0点 和 19点 是在更新指标,所以后面的两个时间点同步数据时,需要往前面2小时往后拉取
|
|
|
+ if nowHour == 1 || nowHour == 20 {
|
|
|
+ beforeHour = time.Duration(2) //往前面推 2 小时
|
|
|
}
|
|
|
|
|
|
+ startTimeInt := time.Now().Add(-3600*beforeHour*time.Second-600).Unix() * 1000 //开始时间
|
|
|
+ endTimeInt := time.Now().Unix() * 1000 //结束时间
|
|
|
+
|
|
|
roadshowData, err := comein.GetRoadshowDataList(startTimeInt, endTimeInt)
|
|
|
if err != nil {
|
|
|
errMsgList = append(errMsgList, fmt.Sprintf("获取进门路演到会信息失败,%s,err:%s", time.Now().Format(utils.FormatDate), err.Error()))
|