|
@@ -189,6 +189,13 @@ func AddPredictCalculateDataBak(edbInfoIdList []*EdbInfo, edbInfoId int, edbCode
|
|
|
//需要存入的数据
|
|
|
{
|
|
|
if latestDateStr == sk {
|
|
|
+ nanCheck := fmt.Sprintf("%0.f", calVal)
|
|
|
+ // 分母为0.0的报错
|
|
|
+ if nanCheck == "NaN" || nanCheck == "+Inf" || nanCheck == "-Inf" {
|
|
|
+ err = errors.New("计算失败 分母为0:Err: formulaStr:" + formulaFormStr)
|
|
|
+ fmt.Println(err)
|
|
|
+ return
|
|
|
+ }
|
|
|
latestValue, _ = decimal.NewFromFloat(calVal).Truncate(4).Float64() //保留4位小数
|
|
|
}
|
|
|
dataTime, _ := time.ParseInLocation(utils.FormatDate, sk, time.Local)
|
|
@@ -365,12 +372,16 @@ func refreshAllPredictCalculate(to orm.TxOrmer, edbInfoIdList []*EdbInfo, edbInf
|
|
|
fmt.Println(err)
|
|
|
return
|
|
|
}
|
|
|
-
|
|
|
+ nanCheck := fmt.Sprintf("%0.f", calVal)
|
|
|
+ // 分母为0.0的报错
|
|
|
+ if nanCheck == "NaN" || nanCheck == "+Inf" || nanCheck == "-Inf" {
|
|
|
+ removeDateList = append(removeDateList, sk)
|
|
|
+ continue
|
|
|
+ }
|
|
|
// 最近实际日期的实际数据
|
|
|
if latestDateStr == sk {
|
|
|
latestValue, _ = decimal.NewFromFloat(calVal).Truncate(4).Float64() //保留4位小数
|
|
|
}
|
|
|
-
|
|
|
saveValue := decimal.NewFromFloat(calVal).RoundCeil(4).String() //utils.SubFloatToString(calVal, 4)
|
|
|
if existVal, ok := dataMap[sk]; !ok {
|
|
|
dataTime, _ := time.ParseInLocation(utils.FormatDate, sk, time.Local)
|