Browse Source

fix:手工指标刷新逻辑调整,如果手工指标没有数据,那么在修改更新时间的逻辑判断做过滤

Roc 3 years ago
parent
commit
3757dd41cf
2 changed files with 24 additions and 14 deletions
  1. 11 6
      models/data_manage/edb_data_manual.go
  2. 13 8
      services/data/edb_info.go

+ 11 - 6
models/data_manage/edb_data_manual.go

@@ -2,8 +2,8 @@ package data_manage
 
 import (
 	"fmt"
-	"hongze/hongze_task/utils"
 	"github.com/rdlucklib/rdluck_tools/orm"
+	"hongze/hongze_task/utils"
 	"strconv"
 	"strings"
 	"time"
@@ -155,13 +155,18 @@ func RefreshManual(item *EdbInfoList) (err error) {
 
 	maxAndMinItem, err := GetEdbInfoMaxAndMinInfo(utils.DATA_SOURCE_MANUAL, edbCode)
 	if err != nil {
-		return err
-	}
-	if maxAndMinItem != nil {
-		err = ModifyEdbInfoMaxAndMinInfo(edbInfoId, maxAndMinItem)
-		if err != nil {
+		if err.Error() == utils.ErrNoRow() {
+			err = nil
+		} else {
 			return err
 		}
+	} else {
+		if maxAndMinItem != nil {
+			err = ModifyEdbInfoMaxAndMinInfo(edbInfoId, maxAndMinItem)
+			if err != nil {
+				return err
+			}
+		}
 	}
 	return
 }

+ 13 - 8
services/data/edb_info.go

@@ -4,9 +4,9 @@ import (
 	"context"
 	"errors"
 	"fmt"
+	"github.com/rdlucklib/rdluck_tools/http"
 	"hongze/hongze_task/models/data_manage"
 	"hongze/hongze_task/utils"
-	"github.com/rdlucklib/rdluck_tools/http"
 	"strconv"
 	"sync"
 	"time"
@@ -241,7 +241,7 @@ func RefreshDataFromCalculateAll() (err error) {
 	condition += " AND edb_type=? "
 	pars = append(pars, 2)
 
-	condition += " AND is_update=1 "
+	//condition += " AND is_update=1 "
 
 	items, err := data_manage.GetEdbInfoByCondition(condition, pars, 0)
 	if err != nil {
@@ -506,16 +506,21 @@ func RefreshDataFromManual(wg *sync.WaitGroup) (err error) {
 	for _, v := range items {
 		err = data_manage.RefreshManual(v)
 		if err != nil {
-			return errors.New("RefreshManual:" + err.Error())
+			return errors.New("RefreshManual:edbCode:" + v.EdbCode + ":" + err.Error())
 		}
 		item, err := data_manage.GetEdbInfoMaxAndMinInfo(v.Source, v.EdbCode)
 		if err != nil {
-			return err
-		}
-		if item != nil {
-			err = data_manage.ModifyEdbInfoMaxAndMinInfo(v.EdbInfoId, item)
-			if err != nil {
+			if err.Error() != utils.ErrNoRow() {
 				return err
+			} else {
+				err = nil
+			}
+		} else {
+			if item != nil {
+				err = data_manage.ModifyEdbInfoMaxAndMinInfo(v.EdbInfoId, item)
+				if err != nil {
+					return err
+				}
 			}
 		}
 	}