|
@@ -61,6 +61,7 @@ func SetMysteelChemicalEdbInfoUpdateStat(needStat bool) (err error) {
|
|
|
defer func() {
|
|
|
if err != nil {
|
|
|
tips := fmt.Sprintf("钢联数据刷新-ETA指标刷新统计异常 Err: %s", err.Error())
|
|
|
+ utils.FileLog.Info(tips)
|
|
|
alarm_msg.SendAlarmMsg(tips, 3)
|
|
|
}
|
|
|
}()
|
|
@@ -83,7 +84,8 @@ func SetMysteelChemicalEdbInfoUpdateStat(needStat bool) (err error) {
|
|
|
err = fmt.Errorf("查询钢联化工指标终端更新日志报错,err: %s", err)
|
|
|
return
|
|
|
}
|
|
|
- if !needStat && len(updateLogList) == 0 {
|
|
|
+ fmt.Println(len(updateLogList))
|
|
|
+ if !needStat && len(updateLogList) == 0 { //如果不存在变更记录 则不进行汇总
|
|
|
return
|
|
|
}
|
|
|
updateLogMap := make(map[int]*data_stat.EdbInfoUpdateLog)
|
|
@@ -113,10 +115,10 @@ func SetMysteelChemicalEdbInfoUpdateStat(needStat bool) (err error) {
|
|
|
week := int(nowTime.Weekday())
|
|
|
weekNeedRefreshMap := make(map[string]struct{})
|
|
|
if week >= 3 && week <= 6 {
|
|
|
- yesterday := nowTime.AddDate(0, 0, -1).Format(utils.FormatDate)
|
|
|
+ endDate := utils.GetNowWeekMonday().Format(utils.FormatDate)
|
|
|
cond := ` AND frequency = ? AND end_date < ? AND is_stop = 0`
|
|
|
var tmpPars []interface{}
|
|
|
- tmpPars = append(tmpPars, "周度", yesterday)
|
|
|
+ tmpPars = append(tmpPars, "周度", endDate)
|
|
|
//查询所有需要当日刷新的周度指标
|
|
|
indexTotal, tErr := indexObj.GetIndexByCondition(cond, tmpPars)
|
|
|
if tErr != nil {
|
|
@@ -130,9 +132,8 @@ func SetMysteelChemicalEdbInfoUpdateStat(needStat bool) (err error) {
|
|
|
//查询所有停更指标
|
|
|
stopRefreshMap := make(map[string]struct{})
|
|
|
tmpCond := ` AND is_stop = 1`
|
|
|
- var tmpPars []interface{}
|
|
|
//查询所有需要当日刷新的周度指标
|
|
|
- indexStop, tErr := indexObj.GetIndexByCondition(tmpCond, tmpPars)
|
|
|
+ indexStop, tErr := indexObj.GetIndexByCondition(tmpCond, []interface{}{})
|
|
|
if tErr != nil {
|
|
|
err = fmt.Errorf("查询钢联化工原始指标报错,err: %s", tErr)
|
|
|
return
|
|
@@ -173,6 +174,8 @@ func SetMysteelChemicalEdbInfoUpdateStat(needStat bool) (err error) {
|
|
|
ErDataUpdateDate: v.ErDataUpdateDate,
|
|
|
ModifyTime: nowTime,
|
|
|
}
|
|
|
+ exist, existOk := updateStatMap[v.EdbInfoId]
|
|
|
+
|
|
|
frequency := v.Frequency
|
|
|
if v.Frequency == "旬度" { //特殊处理指标库里和数据源里频度不一致的情况
|
|
|
//查询源指标库的频度
|
|
@@ -181,8 +184,12 @@ func SetMysteelChemicalEdbInfoUpdateStat(needStat bool) (err error) {
|
|
|
frequency = indexTmp.Frequency
|
|
|
}
|
|
|
}
|
|
|
- needRefresh, _ := checkMySteelEdbInfoNeedRefresh(v.EdbCode, frequency, weekNeedRefreshMap)
|
|
|
- tmp.NeedRefresh = needRefresh
|
|
|
+ if existOk {
|
|
|
+ tmp.NeedRefresh = exist.NeedRefresh
|
|
|
+ } else {
|
|
|
+ needRefresh, _ := checkMySteelEdbInfoNeedRefresh(v.EdbCode, frequency, weekNeedRefreshMap)
|
|
|
+ tmp.NeedRefresh = needRefresh
|
|
|
+ }
|
|
|
|
|
|
// 判断是否当日新增
|
|
|
if v.CreateTime.After(todayT) || v.CreateTime == todayT {
|
|
@@ -199,14 +206,14 @@ func SetMysteelChemicalEdbInfoUpdateStat(needStat bool) (err error) {
|
|
|
tmp.UpdateResult = up.UpdateResult
|
|
|
tmp.UpdateFailedReason = up.UpdateFailedReason
|
|
|
tmp.UpdateTime = up.CreateTime.Format(utils.FormatDateTime)
|
|
|
- } else if needRefresh == 1 {
|
|
|
+ } else if tmp.NeedRefresh == 1 {
|
|
|
tmp.HasRefresh = 0
|
|
|
tmp.DataUpdateResult = 2
|
|
|
tmp.DataUpdateFailedReason = "服务异常"
|
|
|
}
|
|
|
|
|
|
// 判断是否需要新增还是更新
|
|
|
- if exist, ok := updateStatMap[v.EdbInfoId]; ok {
|
|
|
+ if existOk {
|
|
|
tmp.Id = exist.Id
|
|
|
modifyList = append(modifyList, tmp)
|
|
|
} else {
|