Просмотр исходного кода

用电控制报表以及大屏功率统计的实际值的有效位数保留两位

lingpeng.li 5 месяцев назад
Родитель
Сommit
12a513e83e

+ 2 - 2
zgztBus/jeecg-module-lesm/src/main/java/org/jeecg/modules/deviceLesm/service/impl/DeviceRegionServiceImpl.java

@@ -319,7 +319,7 @@ public class DeviceRegionServiceImpl extends ServiceImpl<DeviceRegionMapper, Dev
                         }
                     }
                     // 对累计总功率处理,去除无效小数
-                    powerMap.put(mapDeviceType(deviceType) + "实时总功率", totalActivePower2.stripTrailingZeros().toPlainString());
+                    powerMap.put(mapDeviceType(deviceType) + "实时总功率", totalActivePower2.setScale(2, RoundingMode.HALF_UP).stripTrailingZeros().toPlainString());
 
 
                 }
@@ -355,7 +355,7 @@ public class DeviceRegionServiceImpl extends ServiceImpl<DeviceRegionMapper, Dev
             powerMap.put(mapDeviceType(deviceType) + "谷时段总功率占比", formatPercentage(valleysRatio));
 
             // 对累计总功率处理,去除无效小数
-            powerMap.put(mapDeviceType(deviceType) + "累计总功率", totalPower.stripTrailingZeros().toPlainString());
+            powerMap.put(mapDeviceType(deviceType) + "累计总功率", totalPower.setScale(2, RoundingMode.HALF_UP).stripTrailingZeros().toPlainString());
 
         }
 

+ 51 - 51
zgztBus/jeecg-module-lesm/src/main/java/org/jeecg/modules/fpgLeanModel/service/impl/FpgLeanModelServiceImpl.java

@@ -252,7 +252,7 @@ public class FpgLeanModelServiceImpl extends ServiceImpl<FpgLeanModelMapper, Fpg
                     if (i == 0) {
                         modelDataResult.setKey("尖");
                         modelDataResult.setKey1("尖");
-                        modelDataResult.setValue(modelReportFormResult.getTopsPower());
+                        modelDataResult.setValue(modelReportFormResult.getTopsPower().setScale(2, RoundingMode.HALF_UP).stripTrailingZeros());
                     }
                     if (i == 1) {
                         modelDataResult.setKey("尖");
@@ -262,7 +262,7 @@ public class FpgLeanModelServiceImpl extends ServiceImpl<FpgLeanModelMapper, Fpg
                     if (i == 2) {
                         modelDataResult.setKey("峰");
                         modelDataResult.setKey1("峰");
-                        modelDataResult.setValue(modelReportFormResult.getPeaksPower());
+                        modelDataResult.setValue(modelReportFormResult.getPeaksPower().setScale(2, RoundingMode.HALF_UP).stripTrailingZeros());
                     }
                     if (i == 3) {
                         modelDataResult.setKey("峰");
@@ -272,7 +272,7 @@ public class FpgLeanModelServiceImpl extends ServiceImpl<FpgLeanModelMapper, Fpg
                     if (i == 4) {
                         modelDataResult.setKey("平");
                         modelDataResult.setKey1("平");
-                        modelDataResult.setValue(modelReportFormResult.getFlatPower());
+                        modelDataResult.setValue(modelReportFormResult.getFlatPower().setScale(2, RoundingMode.HALF_UP).stripTrailingZeros());
                     }
                     if (i == 5) {
                         modelDataResult.setKey("平");
@@ -282,17 +282,17 @@ public class FpgLeanModelServiceImpl extends ServiceImpl<FpgLeanModelMapper, Fpg
                     if (i == 6) {
                         modelDataResult.setKey("谷");
                         modelDataResult.setKey1("谷");
-                        modelDataResult.setValue(modelReportFormResult.getValleysPower());
+                        modelDataResult.setValue(modelReportFormResult.getValleysPower().setScale(2, RoundingMode.HALF_UP).stripTrailingZeros());
                     }
                     if (i == 7) {
                         modelDataResult.setKey("谷");
                         modelDataResult.setKey1("谷(%)");
-                        modelDataResult.setValue(modelReportFormResult.getValleysPower().add(modelReportFormResult.getPeaksPower()).add(modelReportFormResult.getFlatPower()).add(modelReportFormResult.getValleysPower()));
+                        modelDataResult.setValue(modelReportFormResult.getValleysPower().add(modelReportFormResult.getPeaksPower()).add(modelReportFormResult.getFlatPower()).add(modelReportFormResult.getValleysPower()).setScale(2, RoundingMode.HALF_UP).stripTrailingZeros());
                     }
                     if (i == 8) {
                         modelDataResult.setKey("反有总");
                         modelDataResult.setKey1("反有总");
-                        modelDataResult.setValue(modelReportFormResult.getTopsPower().add(modelReportFormResult.getPeaksPower()).add(modelReportFormResult.getFlatPower()).add(modelReportFormResult.getValleysPower()));
+                        modelDataResult.setValue(modelReportFormResult.getTopsPower().add(modelReportFormResult.getPeaksPower()).add(modelReportFormResult.getFlatPower()).add(modelReportFormResult.getValleysPower()).setScale(2, RoundingMode.HALF_UP).stripTrailingZeros());
                     }
                     modelDataResult.setDeviceTitle(deviceTitle);
                     modelDataResult.setDeviceRegionId(deviceRegionId);
@@ -394,27 +394,27 @@ public class FpgLeanModelServiceImpl extends ServiceImpl<FpgLeanModelMapper, Fpg
                 if (i == 0) {
                     modelDataResult.setKey("反有总");
                     modelDataResult.setKey1("反有总");
-                    modelDataResult.setValue(modelReportFormResult.getTopsPower().add(modelReportFormResult.getPeaksPower()).add(modelReportFormResult.getFlatPower()).add(modelReportFormResult.getValleysPower()));
+                    modelDataResult.setValue(modelReportFormResult.getTopsPower().add(modelReportFormResult.getPeaksPower()).add(modelReportFormResult.getFlatPower()).add(modelReportFormResult.getValleysPower()).setScale(2, RoundingMode.HALF_UP).stripTrailingZeros());
                 }
                 if (i == 1) {
                     modelDataResult.setKey("尖");
                     modelDataResult.setKey1("尖");
-                    modelDataResult.setValue(modelReportFormResult.getTopsPower());
+                    modelDataResult.setValue(modelReportFormResult.getTopsPower().setScale(2, RoundingMode.HALF_UP).stripTrailingZeros());
                 }
                 if (i == 2) {
                     modelDataResult.setKey("峰");
                     modelDataResult.setKey1("峰");
-                    modelDataResult.setValue(modelReportFormResult.getPeaksPower());
+                    modelDataResult.setValue(modelReportFormResult.getPeaksPower().setScale(2, RoundingMode.HALF_UP).stripTrailingZeros());
                 }
                 if (i == 3) {
                     modelDataResult.setKey("平");
                     modelDataResult.setKey1("平");
-                    modelDataResult.setValue(modelReportFormResult.getFlatPower());
+                    modelDataResult.setValue(modelReportFormResult.getFlatPower().setScale(2, RoundingMode.HALF_UP).stripTrailingZeros());
                 }
                 if (i == 4) {
                     modelDataResult.setKey("谷");
                     modelDataResult.setKey1("谷");
-                    modelDataResult.setValue(modelReportFormResult.getValleysPower());
+                    modelDataResult.setValue(modelReportFormResult.getValleysPower().setScale(2, RoundingMode.HALF_UP).stripTrailingZeros());
                 }
 
                 // 解析日期字符串为 LocalDate 对象
@@ -552,14 +552,14 @@ public class FpgLeanModelServiceImpl extends ServiceImpl<FpgLeanModelMapper, Fpg
                     modelDataResult.setValue(modelReportFormResult.getTopsPower()
                             .add(modelReportFormResult.getPeaksPower())
                             .add(modelReportFormResult.getFlatPower())
-                            .add(modelReportFormResult.getValleysPower()));
+                            .add(modelReportFormResult.getValleysPower()).setScale(2, RoundingMode.HALF_UP).stripTrailingZeros());
 
                 }
 
                 if (i == 1) {
                     modelDataResult.setKey("尖");
                     modelDataResult.setKey1("尖");
-                    modelDataResult.setValue(modelReportFormResult.getTopsPower());
+                    modelDataResult.setValue(modelReportFormResult.getTopsPower().setScale(2, RoundingMode.HALF_UP).stripTrailingZeros());
 
                 }
 
@@ -581,7 +581,7 @@ public class FpgLeanModelServiceImpl extends ServiceImpl<FpgLeanModelMapper, Fpg
                 if (i == 3) {
                     modelDataResult.setKey("峰");
                     modelDataResult.setKey1("峰");
-                    modelDataResult.setValue(modelReportFormResult.getPeaksPower());
+                    modelDataResult.setValue(modelReportFormResult.getPeaksPower().setScale(2, RoundingMode.HALF_UP).stripTrailingZeros());
 
                 }
 
@@ -603,7 +603,7 @@ public class FpgLeanModelServiceImpl extends ServiceImpl<FpgLeanModelMapper, Fpg
                 if (i == 5) {
                     modelDataResult.setKey("平");
                     modelDataResult.setKey1("平");
-                    modelDataResult.setValue(modelReportFormResult.getFlatPower());
+                    modelDataResult.setValue(modelReportFormResult.getFlatPower().setScale(2, RoundingMode.HALF_UP).stripTrailingZeros());
 
                 }
 
@@ -625,7 +625,7 @@ public class FpgLeanModelServiceImpl extends ServiceImpl<FpgLeanModelMapper, Fpg
                 if (i == 7) {
                     modelDataResult.setKey("谷");
                     modelDataResult.setKey1("谷");
-                    modelDataResult.setValue(modelReportFormResult.getValleysPower());
+                    modelDataResult.setValue(modelReportFormResult.getValleysPower().setScale(2, RoundingMode.HALF_UP).stripTrailingZeros());
 
                 }
 
@@ -894,7 +894,7 @@ public class FpgLeanModelServiceImpl extends ServiceImpl<FpgLeanModelMapper, Fpg
                 if (i == 0) {
                     modelDataResult.setKey("尖");
                     modelDataResult.setKey1("尖");
-                    modelDataResult.setValue(modelReportFormResult.getTopsPower());
+                    modelDataResult.setValue(modelReportFormResult.getTopsPower().setScale(2, RoundingMode.HALF_UP).stripTrailingZeros());
 
                 }
 
@@ -902,14 +902,14 @@ public class FpgLeanModelServiceImpl extends ServiceImpl<FpgLeanModelMapper, Fpg
                 if (i == 1) {
                     modelDataResult.setKey("峰");
                     modelDataResult.setKey1("峰");
-                    modelDataResult.setValue(modelReportFormResult.getPeaksPower());
+                    modelDataResult.setValue(modelReportFormResult.getPeaksPower().setScale(2, RoundingMode.HALF_UP).stripTrailingZeros());
 
                 }
 
                 if (i == 2) {
                     modelDataResult.setKey("平");
                     modelDataResult.setKey1("平");
-                    modelDataResult.setValue(modelReportFormResult.getFlatPower());
+                    modelDataResult.setValue(modelReportFormResult.getFlatPower().setScale(2, RoundingMode.HALF_UP).stripTrailingZeros());
 
                 }
 
@@ -917,7 +917,7 @@ public class FpgLeanModelServiceImpl extends ServiceImpl<FpgLeanModelMapper, Fpg
                 if (i == 3) {
                     modelDataResult.setKey("谷");
                     modelDataResult.setKey1("谷");
-                    modelDataResult.setValue(modelReportFormResult.getValleysPower());
+                    modelDataResult.setValue(modelReportFormResult.getValleysPower().setScale(2, RoundingMode.HALF_UP).stripTrailingZeros());
 
                 }
 
@@ -1163,7 +1163,7 @@ public class FpgLeanModelServiceImpl extends ServiceImpl<FpgLeanModelMapper, Fpg
                                 report.setRegionTitle(data.getRegionTitle());
                                 report.setDeviceTypeName(mapDeviceType(deviceInfo.getDeviceType()));
                                 report.setKey1(key);
-                                report.setValue(value);
+                                report.setValue(value.setScale(2, RoundingMode.HALF_UP).stripTrailingZeros());
                                 report.setDeviceTitle(deviceInfo.getDeviceTitle());
                                 report.setCreateTime(data.getDates());
                                 reports.add(report);
@@ -1226,8 +1226,8 @@ public class FpgLeanModelServiceImpl extends ServiceImpl<FpgLeanModelMapper, Fpg
                 summaryReport.setDeviceTypeName(deviceTypeName);
                 summaryReport.setCompanyName("龙钢公司");
                 summaryReport.setKey1(key);
-                summaryReport.setValue(totalValue);
-                summaryReport.setTotalNum(dailyTotal.stripTrailingZeros()); // 设置当天总值
+                summaryReport.setValue(totalValue.setScale(2, RoundingMode.HALF_UP).stripTrailingZeros());
+                summaryReport.setTotalNum(dailyTotal.setScale(2, RoundingMode.HALF_UP).stripTrailingZeros()); // 设置当天总值
 
                 // 设置 key1 对应的 orderIndex
                 int orderIndex;
@@ -1338,7 +1338,7 @@ public class FpgLeanModelServiceImpl extends ServiceImpl<FpgLeanModelMapper, Fpg
                                 report.setRegionTitle(data.getRegionTitle());
                                 report.setDeviceTypeName(mapDeviceType(deviceInfo.getDeviceType()));
                                 report.setKey1(key);
-                                report.setValue(value);
+                                report.setValue(value.setScale(2, RoundingMode.HALF_UP).stripTrailingZeros());
                                 report.setDeviceTitle(deviceInfo.getDeviceTitle());
                                 report.setCompanyName("龙钢公司");
                                 report.setCreateTime(data.getDates());
@@ -1389,8 +1389,8 @@ public class FpgLeanModelServiceImpl extends ServiceImpl<FpgLeanModelMapper, Fpg
                 summaryReport.setRegionTitle(regionTitle);
                 summaryReport.setCompanyName("龙钢公司");
                 summaryReport.setKey1(key);
-                summaryReport.setValue(totalValue);
-                summaryReport.setTotalNum(dailyTotal.stripTrailingZeros()); // 设置当天总值
+                summaryReport.setValue(totalValue.setScale(2, RoundingMode.HALF_UP).stripTrailingZeros());
+                summaryReport.setTotalNum(dailyTotal.setScale(2, RoundingMode.HALF_UP).stripTrailingZeros()); // 设置当天总值
 
                 // 设置 key1 对应的 orderIndex
                 int orderIndex;
@@ -1503,7 +1503,7 @@ public class FpgLeanModelServiceImpl extends ServiceImpl<FpgLeanModelMapper, Fpg
                                 report.setRegionTitle(data.getRegionTitle());
                                 report.setDeviceTypeName(mapDeviceType(deviceInfo.getDeviceType()));
                                 report.setKey1(key);
-                                report.setValue(value);
+                                report.setValue(value.setScale(2, RoundingMode.HALF_UP).stripTrailingZeros());
                                 report.setDeviceTitle(deviceInfo.getDeviceTitle());
                                 report.setCompanyName("龙钢公司");
                                 report.setCreateTime(data.getDates());
@@ -1551,8 +1551,8 @@ public class FpgLeanModelServiceImpl extends ServiceImpl<FpgLeanModelMapper, Fpg
                 summaryReport.setYear(yearFormattedDate);
                 summaryReport.setCompanyName(companyName);
                 summaryReport.setKey1(key);
-                summaryReport.setValue(totalValue);
-                summaryReport.setTotalNum(dailyTotal.stripTrailingZeros()); // 设置当天总值
+                summaryReport.setValue(totalValue.setScale(2, RoundingMode.HALF_UP).stripTrailingZeros());
+                summaryReport.setTotalNum(dailyTotal.setScale(2, RoundingMode.HALF_UP).stripTrailingZeros()); // 设置当天总值
 
                 // 设置 key1 对应的 orderIndex
                 int orderIndex;
@@ -1703,25 +1703,25 @@ public class FpgLeanModelServiceImpl extends ServiceImpl<FpgLeanModelMapper, Fpg
                 if (i == 0) {
                     modelDataResult.setKey("尖");
                     modelDataResult.setKey1("尖");
-                    modelDataResult.setValue(totalTopsPower);
+                    modelDataResult.setValue(totalTopsPower.setScale(2, RoundingMode.HALF_UP).stripTrailingZeros());
                 }
 
                 if (i == 1) {
                     modelDataResult.setKey("峰");
                     modelDataResult.setKey1("峰");
-                    modelDataResult.setValue(totalPeaksPower);
+                    modelDataResult.setValue(totalPeaksPower.setScale(2, RoundingMode.HALF_UP).stripTrailingZeros());
                 }
 
                 if (i == 2) {
                     modelDataResult.setKey("平");
                     modelDataResult.setKey1("平");
-                    modelDataResult.setValue(totalFlatPower);
+                    modelDataResult.setValue(totalFlatPower.setScale(2, RoundingMode.HALF_UP).stripTrailingZeros());
                 }
 
                 if (i == 3) {
                     modelDataResult.setKey("谷");
                     modelDataResult.setKey1("谷");
-                    modelDataResult.setValue(totalValleysPower);
+                    modelDataResult.setValue(totalValleysPower.setScale(2, RoundingMode.HALF_UP).stripTrailingZeros());
                 }
 
                 // 设置其他属性
@@ -1856,7 +1856,7 @@ public class FpgLeanModelServiceImpl extends ServiceImpl<FpgLeanModelMapper, Fpg
                                 report.setRegionTitle(data.getRegionTitle());
                                 report.setDeviceTypeName(mapDeviceType(deviceInfo.getDeviceType()));
                                 report.setKey1(key);
-                                report.setValue(value);
+                                report.setValue(value.setScale(2, RoundingMode.HALF_UP).stripTrailingZeros());
                                 report.setDeviceTitle(deviceInfo.getDeviceTitle());
                                 report.setCreateTime(data.getDates());
                                 report.setMonth(monthStr);
@@ -1921,8 +1921,8 @@ public class FpgLeanModelServiceImpl extends ServiceImpl<FpgLeanModelMapper, Fpg
                     summaryReport.setDeviceTypeName(deviceTypeName);
                     summaryReport.setCompanyName("龙钢公司");
                     summaryReport.setKey1(key);
-                    summaryReport.setValue(totalValue);
-                    summaryReport.setTotalNum(monthlyTotal.stripTrailingZeros());  // 设置当月总值
+                    summaryReport.setValue(totalValue.setScale(2, RoundingMode.HALF_UP).stripTrailingZeros());
+                    summaryReport.setTotalNum(monthlyTotal.setScale(2, RoundingMode.HALF_UP).stripTrailingZeros());  // 设置当月总值
 
                     // 设置 key1 对应的 orderIndex
                     int orderIndex;
@@ -2043,7 +2043,7 @@ public class FpgLeanModelServiceImpl extends ServiceImpl<FpgLeanModelMapper, Fpg
                                 report.setRegionTitle(data.getRegionTitle());
                                 report.setDeviceTypeName(mapDeviceType(deviceInfo.getDeviceType()));
                                 report.setKey1(key);
-                                report.setValue(value);
+                                report.setValue(value.setScale(2, RoundingMode.HALF_UP).stripTrailingZeros());
                                 report.setDeviceTitle(deviceInfo.getDeviceTitle());
                                 report.setCreateTime(data.getDates());
                                 report.setMonth(monthStr);
@@ -2099,7 +2099,7 @@ public class FpgLeanModelServiceImpl extends ServiceImpl<FpgLeanModelMapper, Fpg
                     summaryReport.setRegionTitle(regionTitle);
                     summaryReport.setCompanyName("龙钢公司");
                     summaryReport.setKey1(key);
-                    summaryReport.setValue(totalValue);
+                    summaryReport.setValue(totalValue.setScale(2, RoundingMode.HALF_UP).stripTrailingZeros());
                     summaryReport.setTotalNum(monthlyTotal.stripTrailingZeros());  // 设置当月总值
 
                     // 设置 key1 对应的 orderIndex
@@ -2204,7 +2204,7 @@ public class FpgLeanModelServiceImpl extends ServiceImpl<FpgLeanModelMapper, Fpg
                                 String monthStr = date.getYear() + "年" + date.getMonthValue() + "月";
                                 report.setCompanyName("龙钢公司");
                                 report.setKey1(key);
-                                report.setValue(value);
+                                report.setValue(value.setScale(2, RoundingMode.HALF_UP).stripTrailingZeros());
                                 report.setDeviceTitle(deviceInfo.getDeviceTitle());
                                 report.setCreateTime(data.getDates());
                                 report.setMonth(monthStr);
@@ -2257,8 +2257,8 @@ public class FpgLeanModelServiceImpl extends ServiceImpl<FpgLeanModelMapper, Fpg
                     summaryReport.setYear(month.split("年")[0]);
                     summaryReport.setCompanyName(companyName);
                     summaryReport.setKey1(key);
-                    summaryReport.setValue(totalValue);
-                    summaryReport.setTotalNum(monthlyTotal.stripTrailingZeros());  // 设置当月总值
+                    summaryReport.setValue(totalValue.setScale(2, RoundingMode.HALF_UP).stripTrailingZeros());
+                    summaryReport.setTotalNum(monthlyTotal.setScale(2, RoundingMode.HALF_UP).stripTrailingZeros());  // 设置当月总值
 
                     // 设置 key1 对应的 orderIndex
                     int orderIndex;
@@ -2430,31 +2430,31 @@ public class FpgLeanModelServiceImpl extends ServiceImpl<FpgLeanModelMapper, Fpg
                 if (i == 0) {
                     modelDataResult.setKey("尖值电量");
                     modelDataResult.setKey1("尖值电量");
-                    modelDataResult.setValue(modelReportFormResult.getTopsPower());
+                    modelDataResult.setValue(modelReportFormResult.getTopsPower().setScale(2, RoundingMode.HALF_UP).stripTrailingZeros());
                 }
 
                 if (i == 1) {
                     modelDataResult.setKey("峰值电量");
                     modelDataResult.setKey1("峰值电量");
-                    modelDataResult.setValue(modelReportFormResult.getPeaksPower());
+                    modelDataResult.setValue(modelReportFormResult.getPeaksPower().setScale(2, RoundingMode.HALF_UP).stripTrailingZeros());
                 }
 
                 if (i == 2) {
                     modelDataResult.setKey("平值电量");
                     modelDataResult.setKey1("平值电量");
-                    modelDataResult.setValue(modelReportFormResult.getFlatPower());
+                    modelDataResult.setValue(modelReportFormResult.getFlatPower().setScale(2, RoundingMode.HALF_UP).stripTrailingZeros());
                 }
 
                 if (i == 3) {
                     modelDataResult.setKey("谷值电量");
                     modelDataResult.setKey1("谷值电量");
-                    modelDataResult.setValue(modelReportFormResult.getValleysPower());
+                    modelDataResult.setValue(modelReportFormResult.getValleysPower().setScale(2, RoundingMode.HALF_UP).stripTrailingZeros());
                 }
 
                 if (i == 4) {
                     modelDataResult.setKey("总电量");
                     modelDataResult.setKey1("总电量");
-                    modelDataResult.setValue(modelReportFormResult.getTopsPower().add(modelReportFormResult.getPeaksPower()).add(modelReportFormResult.getFlatPower()).add(modelReportFormResult.getValleysPower()));
+                    modelDataResult.setValue(modelReportFormResult.getTopsPower().add(modelReportFormResult.getPeaksPower()).add(modelReportFormResult.getFlatPower()).add(modelReportFormResult.getValleysPower()).setScale(2, RoundingMode.HALF_UP).stripTrailingZeros());
                 }
 
                 if (i == 5) {
@@ -3854,26 +3854,26 @@ public class FpgLeanModelServiceImpl extends ServiceImpl<FpgLeanModelMapper, Fpg
         switch (i) {
             case 0:
                 modelDataResult.setKey("尖");
-                modelDataResult.setValue(modelReportFormResult.getTopsPower());
+                modelDataResult.setValue(modelReportFormResult.getTopsPower().setScale(2, RoundingMode.HALF_UP).stripTrailingZeros());
                 break;
             case 1:
                 modelDataResult.setKey("峰");
-                modelDataResult.setValue(modelReportFormResult.getPeaksPower());
+                modelDataResult.setValue(modelReportFormResult.getPeaksPower().setScale(2, RoundingMode.HALF_UP).stripTrailingZeros());
                 break;
             case 2:
                 modelDataResult.setKey("平");
-                modelDataResult.setValue(modelReportFormResult.getFlatPower());
+                modelDataResult.setValue(modelReportFormResult.getFlatPower().setScale(2, RoundingMode.HALF_UP).stripTrailingZeros());
                 break;
             case 3:
                 modelDataResult.setKey("谷");
-                modelDataResult.setValue(modelReportFormResult.getValleysPower());
+                modelDataResult.setValue(modelReportFormResult.getValleysPower().setScale(2, RoundingMode.HALF_UP).stripTrailingZeros());
                 break;
             case 4:
                 modelDataResult.setKey("反有总");
                 modelDataResult.setValue(modelReportFormResult.getTopsPower()
                         .add(modelReportFormResult.getPeaksPower())
                         .add(modelReportFormResult.getFlatPower())
-                        .add(modelReportFormResult.getValleysPower()));
+                        .add(modelReportFormResult.getValleysPower()).setScale(2, RoundingMode.HALF_UP).stripTrailingZeros());
                 break;
         }
     }