fix: 自定义指标处理小数部分,保留非零数字

This commit is contained in:
TsMask
2025-07-02 10:01:37 +08:00
parent e5823cfbd6
commit 8e008e24b6

View File

@@ -158,8 +158,20 @@ func (k *KpiCReport) GetReport2FE(c *gin.Context) {
}
for _, k := range r.KpiValues {
formatted := fmt.Sprintf("%.3f", k.Value)
formattedFloat, err := strconv.ParseFloat(formatted, 64)
vStr := fmt.Sprintf("%v", k.Value)
// 分割整数和小数部分
parts := strings.Split(vStr, ".")
if len(parts) == 2 {
// 处理小数部分,保留非零数字
decimalPart := strings.TrimRight(parts[1], "0")
if decimalPart != "" {
vStr = parts[0] + "." + decimalPart
} else {
vStr = parts[0]
}
}
formattedFloat, err := strconv.ParseFloat(vStr, 64)
if err != nil {
formattedFloat = 0
}