Переглянути джерело

[alerter]fixbug dashboard告警处理率计算和无数据时告警图展示错乱

tomsun28 3 роки тому
батько
коміт
b6ca0f4db9

+ 8 - 4
alerter/src/main/java/com/usthe/alert/service/impl/AlertServiceImpl.java

@@ -75,10 +75,14 @@ public class AlertServiceImpl implements AlertService {
                 - alertSummary.getPriorityEmergencyNum() - alertSummary.getPriorityWarningNum();
         alertSummary.setDealNum(dealNum);
         try {
-            float rate = BigDecimal.valueOf(100 * (float) dealNum / total)
-                    .setScale(2, RoundingMode.HALF_UP)
-                    .floatValue();
-            alertSummary.setRate(rate);
+            if (total == 0) {
+                alertSummary.setRate(100);
+            } else {
+                float rate = BigDecimal.valueOf(100 * (float) dealNum / total)
+                        .setScale(2, RoundingMode.HALF_UP)
+                        .floatValue();
+                alertSummary.setRate(rate);
+            }
         } catch (Exception e) {
             log.error(e.getMessage(), e);
         }

+ 2 - 2
web-app/src/app/routes/dashboard/dashboard.component.html

@@ -145,7 +145,7 @@
       [autoResize]="true"
       [loading]="alertsLoading"
       (chartInit)="onAlertNumChartInit($event)"
-      style="width: 100%; height: 100%"
+      style="width: 100%; min-height: 300px"
     ></div>
   </div>
   <div nz-col nzXs="24" nzSm="12" nzMd="5" class="mb-md">
@@ -156,7 +156,7 @@
       [autoResize]="true"
       [loading]="alertsDealLoading"
       (chartInit)="onAlertRateChartInit($event)"
-      style="width: 100%; height: 100%"
+      style="width: 100%; min-height: 300px"
     ></div>
   </div>
 </div>

+ 1 - 1
web-app/src/app/routes/dashboard/dashboard.component.ts

@@ -195,7 +195,7 @@ export class DashboardComponent implements OnInit, OnDestroy {
           },
           data: [
             {
-              value: 0,
+              value: 100,
               name: '告警处理率'
             }
           ]