|
@@ -404,9 +404,9 @@ func (obj Percentile) getPercentileData(fromEdbInfo *EdbInfo, calculateValue int
|
|
|
currDateTime, _ := time.ParseInLocation(utils.FormatDate, tmpData.DataTime, time.Local)
|
|
|
maxVal := tmpData.Value
|
|
|
minVal := tmpData.Value
|
|
|
- for i := 0; i < calculateDay; i++ {
|
|
|
- preVal, ok := dataMap[currDateTime.AddDate(0, 0, -i)]
|
|
|
- if ok {
|
|
|
+ for k := 0; k < calculateDay; i++ {
|
|
|
+ preVal, ok2 := dataMap[currDateTime.AddDate(0, 0, -k)]
|
|
|
+ if ok2 {
|
|
|
if preVal > maxVal {
|
|
|
maxVal = preVal
|
|
|
}
|
|
@@ -419,12 +419,12 @@ func (obj Percentile) getPercentileData(fromEdbInfo *EdbInfo, calculateValue int
|
|
|
if maxVal == minVal {
|
|
|
continue
|
|
|
}
|
|
|
- tmpV := (tmpData.Value) / (maxVal - minVal) * 100
|
|
|
+ tmpV := (tmpData.Value - minVal) / (maxVal - minVal) * 100
|
|
|
tmpV, _ = decimal.NewFromFloat(tmpV).Round(4).Float64()
|
|
|
//百分位=(现值-Min)/(Max-Min)
|
|
|
newDataList = append(newDataList, EdbInfoSearchData{
|
|
|
EdbDataId: i,
|
|
|
- DataTime: dataList[i-1].DataTime,
|
|
|
+ DataTime: dataList[i].DataTime,
|
|
|
Value: tmpV,
|
|
|
})
|
|
|
}
|