Ver código fonte

Merge branch 'eta/2.0.2' into debug

Roc 9 meses atrás
pai
commit
c1ca56d7a8
1 arquivos alterados com 25 adições e 14 exclusões
  1. 25 14
      services/base_from_business.go

+ 25 - 14
services/base_from_business.go

@@ -546,15 +546,24 @@ func DelBusinessIndexData(indexCode string, startDate, endDate string) (err erro
 	}
 
 	// 删除具体的数据
+	var indexMaxAndMinInfo *models.EdbInfoMaxAndMinInfo
 	if utils.UseMongo {
-		err = delBusinessIndexDataByMongo(item, startDateTime, endDateTime)
+		indexMaxAndMinInfo, err = delBusinessIndexDataByMongo(item, startDateTime, endDateTime)
 	} else {
-		err = delBusinessIndexDataByMysql(item, startDateTime, endDateTime)
+		indexMaxAndMinInfo, err = delBusinessIndexDataByMysql(item, startDateTime, endDateTime)
 	}
 	if err != nil {
 		return
 	}
 
+	// 修改指标的最早最晚日期
+	if indexMaxAndMinInfo != nil {
+		e := item.ModifyIndexMaxAndMinInfo(item.IndexCode, indexMaxAndMinInfo, true)
+		if e != nil {
+			fmt.Println("ModifyIndexMaxAndMinInfo Err:" + e.Error())
+		}
+	}
+
 	// 同步刷新指标库的指标
 	go refreshEdbBusiness(item.IndexCode, reqMinDate)
 
@@ -569,7 +578,7 @@ func DelBusinessIndexData(indexCode string, startDate, endDate string) (err erro
 // @param startDateTime time.Time
 // @param endDateTime time.Time
 // @return err error
-func delBusinessIndexDataByMongo(item *models.BaseFromBusinessIndex, startDateTime, endDateTime time.Time) (err error) {
+func delBusinessIndexDataByMongo(item *models.BaseFromBusinessIndex, startDateTime, endDateTime time.Time) (indexMaxAndMinInfo *models.EdbInfoMaxAndMinInfo, err error) {
 	defer func() {
 		if err != nil {
 			utils.FileLog.Error("delBusinessIndexDataByMongo 删除自有指标明细数据 Err:" + err.Error())
@@ -597,20 +606,13 @@ func delBusinessIndexDataByMongo(item *models.BaseFromBusinessIndex, startDateTi
 	}
 
 	//修改最大最小日期
-	indexMaxAndMinInfo, err := item.GetEdbInfoMaxAndMinInfo(item.IndexCode)
+	indexMaxAndMinInfo, err = item.GetEdbInfoMaxAndMinInfo(item.IndexCode)
 	// 如果有错误,且错误信息是取不到文档,那么就不修改了
 	if err != nil && !errors.Is(err, qmgo.ErrNoSuchDocuments) {
 		return
 	}
-	if err == nil && indexMaxAndMinInfo != nil {
-		e := item.ModifyIndexMaxAndMinInfo(item.IndexCode, indexMaxAndMinInfo, true)
-		if e != nil {
-			fmt.Println("ModifyIndexMaxAndMinInfo Err:" + e.Error())
-		}
-	} else {
-		// 清空的目的是为了避免异常返回
-		err = nil
-	}
+	// 清空的目的是为了避免异常返回
+	err = nil
 
 	return
 }
@@ -623,7 +625,7 @@ func delBusinessIndexDataByMongo(item *models.BaseFromBusinessIndex, startDateTi
 // @param startDateTime time.Time
 // @param endDateTime time.Time
 // @return err error
-func delBusinessIndexDataByMysql(item *models.BaseFromBusinessIndex, startDateTime, endDateTime time.Time) (err error) {
+func delBusinessIndexDataByMysql(item *models.BaseFromBusinessIndex, startDateTime, endDateTime time.Time) (indexMaxAndMinInfo *models.EdbInfoMaxAndMinInfo, err error) {
 	defer func() {
 		if err != nil {
 			utils.FileLog.Error("delBusinessIndexDataByMysql 删除自有指标明细数据 Err:" + err.Error())
@@ -652,6 +654,15 @@ func delBusinessIndexDataByMysql(item *models.BaseFromBusinessIndex, startDateTi
 		return
 	}
 
+	//修改最大最小日期
+	indexMaxAndMinInfo, err = item.GetEdbInfoMaxAndMinInfo(item.IndexCode)
+	// 如果有错误,且错误信息是取不到文档,那么就不修改了
+	if err != nil && err.Error() != utils.ErrNoRow() {
+		return
+	}
+	// 清空的目的是为了避免异常返回
+	err = nil
+
 	return
 }