Explorar o código

fix:保留小数点位数

zqbao hai 4 meses
pai
achega
030c58159a
Modificáronse 1 ficheiros con 10 adicións e 0 borrados
  1. 10 0
      services/data/stl/stl.go

+ 10 - 0
services/data/stl/stl.go

@@ -20,6 +20,7 @@ import (
 	"time"
 
 	"github.com/rdlucklib/rdluck_tools/paging"
+	"github.com/shopspring/decimal"
 	"github.com/tealeg/xlsx"
 )
 
@@ -72,6 +73,12 @@ func GenerateStlEdbData(req *request.StlConfigReq, adminId int) (resp *response.
 			err = er
 			return
 		}
+		if lastNyear <= 0 {
+			msg = "最近N年输入不合法"
+			err = fmt.Errorf("最近N年输入不合法")
+			return
+		}
+		lastNyear = lastNyear - 1
 		lastDate := time.Date(year-lastNyear, 1, 1, 0, 0, 0, 0, time.Local)
 		pars = append(pars, lastDate)
 	case RANGE_DATE:
@@ -314,6 +321,7 @@ func ParseStlExcel(excelPath string) (TrendChart, SeasonalChart, ResidualChart r
 				if MaxData == 0 || fv > MaxData {
 					MaxData = fv
 				}
+				fv, _ = decimal.NewFromFloat(fv).Round(4).Float64()
 				SeasonalChart.DataList = append(SeasonalChart.DataList, &response.EdbData{DataTime: date, Value: fv, DataTimestamp: dataTimestamp})
 			}
 			SeasonalChart.MinData = MinData
@@ -343,6 +351,7 @@ func ParseStlExcel(excelPath string) (TrendChart, SeasonalChart, ResidualChart r
 				if MaxData == 0 || fv > MaxData {
 					MaxData = fv
 				}
+				fv, _ = decimal.NewFromFloat(fv).Round(4).Float64()
 				TrendChart.DataList = append(TrendChart.DataList, &response.EdbData{DataTime: date, Value: fv, DataTimestamp: dataTimestamp})
 			}
 			TrendChart.MaxData = MaxData
@@ -372,6 +381,7 @@ func ParseStlExcel(excelPath string) (TrendChart, SeasonalChart, ResidualChart r
 				if MaxData == 0 || fv > MaxData {
 					MaxData = fv
 				}
+				fv, _ = decimal.NewFromFloat(fv).Round(4).Float64()
 				ResidualChart.DataList = append(ResidualChart.DataList, &response.EdbData{DataTime: date, Value: fv, DataTimestamp: dataTimestamp})
 			}
 			ResidualChart.MaxData = MaxData