|
@@ -5,6 +5,7 @@ import (
|
|
|
"fmt"
|
|
|
"hongze/hongze_task/models"
|
|
|
"hongze/hongze_task/models/yb"
|
|
|
+ "hongze/hongze_task/services/alarm_msg"
|
|
|
"hongze/hongze_task/services/comein"
|
|
|
"hongze/hongze_task/utils"
|
|
|
"strings"
|
|
@@ -16,19 +17,29 @@ func SyncComeinMeeting(cont context.Context) (err error) {
|
|
|
errMsgList := make([]string, 0)
|
|
|
defer func() {
|
|
|
if len(errMsgList) > 0 {
|
|
|
- for _, v := range errMsgList {
|
|
|
- fmt.Println(v)
|
|
|
- }
|
|
|
+ //for _, v := range errMsgList {
|
|
|
+ // fmt.Println(v)
|
|
|
+ //}
|
|
|
+ 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()))
|