From e31d4d2d3cecab2fb56508c0f5b82d821719e7bb Mon Sep 17 00:00:00 2001
From: zhangzeli <123456>
Date: 星期二, 25 一月 2022 14:39:14 +0800
Subject: [PATCH] bug
---
xboot-modules/xboot-your/src/main/java/cn/exrick/xboot/your/schedulings/StatisticPc2ScheduleImpl.java | 40 ++++++++++++++++++++++++++++++++++++++++
1 files changed, 40 insertions(+), 0 deletions(-)
diff --git a/xboot-modules/xboot-your/src/main/java/cn/exrick/xboot/your/schedulings/StatisticPc2ScheduleImpl.java b/xboot-modules/xboot-your/src/main/java/cn/exrick/xboot/your/schedulings/StatisticPc2ScheduleImpl.java
index 48f6124..691c5b0 100644
--- a/xboot-modules/xboot-your/src/main/java/cn/exrick/xboot/your/schedulings/StatisticPc2ScheduleImpl.java
+++ b/xboot-modules/xboot-your/src/main/java/cn/exrick/xboot/your/schedulings/StatisticPc2ScheduleImpl.java
@@ -14,6 +14,8 @@
import java.io.IOException;
import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Collections;
import java.util.List;
//澶у睆閰嶉�佸垎鏋�
@@ -59,12 +61,50 @@
listTime.add(orderTask.getTime());
}
+ Collections.sort(listTime);
+ double v = (sum * 1.0) / (1000 * 60 * 60) / listTime.size();
+ areaSection.setAvgTime((double) Math.round(v * 10) / 10);
+ if(listTime.size()>0){
+ double v1 = (listTime.get(0) * 1.0) / (1000 * 60 * 60);
+ areaSection.setMinTime((double) Math.round(v1 * 10) / 10);
+ double v2 = (listTime.get(listTime.size()-1) * 1.0) / (1000 * 60 * 60);
+ areaSection.setMaxTime((double) Math.round(v2 * 10) / 10);
+ }
+ double variance = Variance(listTime);
+ areaSection.setStability(variance);
+ iAreaSectionService.saveOrUpdate(areaSection);
}
+ }
+ public double Variance(List<Integer> x) {
+ List<Double> y = new ArrayList<>();
+ for(Integer s:x){
+ y.add(trans((s*1.0)/(3600*1000)));
+ }
+ int m = x.size();
+ double sum = 0;
+ for (int i = 0; i < m; i++) {
+ sum += y.get(i);
+ }
+ double dAve = sum / m;
+ double dVar = 0;
+ for (int i = 0; i < m; i++) {
+ dVar += (y.get(i) - dAve) * (y.get(i) - dAve);
+ }
+ double v = dVar / m;
+ return trans2(v);
+ }
+
+ public double trans(double v2){
+ return (double) Math.round(v2 * 10) / 10;
+ }
+
+ public double trans2(double v2){
+ return (double) Math.round(v2 * 100) / 100;
}
}
--
Gitblit v1.9.1