From f8751d6e701e0c3e7d8959449b67db6c35d09ec8 Mon Sep 17 00:00:00 2001
From: fuliqi <fuliqi@qq.com>
Date: 星期日, 08 十二月 2024 19:24:07 +0800
Subject: [PATCH] 新增故障类型
---
ycl-pojo/src/main/java/com/ycl/platform/domain/entity/CheckIndexFace.java | 57 +++++++++++++++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 55 insertions(+), 2 deletions(-)
diff --git a/ycl-pojo/src/main/java/com/ycl/platform/domain/entity/CheckIndexFace.java b/ycl-pojo/src/main/java/com/ycl/platform/domain/entity/CheckIndexFace.java
index 3ae107b..f41950e 100644
--- a/ycl-pojo/src/main/java/com/ycl/platform/domain/entity/CheckIndexFace.java
+++ b/ycl-pojo/src/main/java/com/ycl/platform/domain/entity/CheckIndexFace.java
@@ -10,9 +10,11 @@
import constant.CheckConstants;
import lombok.Data;
import org.springframework.lang.NonNull;
+import utils.StringUtils;
import java.math.BigDecimal;
import java.math.RoundingMode;
+import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;
@@ -81,9 +83,17 @@
//杞崲鎴愬瓧绗︿覆鐢ㄤ簬excel瀵煎嚭
public static CheckIndexFaceVO getExcelVo(@NonNull CheckIndexFace checkIndexFace) {
CheckIndexFaceVO checkIndexFaceVo = new CheckIndexFaceVO();
+ checkIndexFaceVo.setNum(checkIndexFace.getNum());
+ checkIndexFaceVo.setScore(checkIndexFace.getScore().setScale(2,RoundingMode.HALF_UP));
+ SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
+ //閬垮厤鍚堣琛屾姤閿�(鍚堣鏁版嵁 缂哄皯createTimeStr瀛楁 鐩存帴灏哻reateTimeStr璁剧疆涓�"鍚堣")
+ if (StringUtils.isEmpty(checkIndexFace.getCreateTimeStr())) {
+ checkIndexFaceVo.setCreateTimeStr(format.format(checkIndexFace.getCreateTime()));
+ }else {
+ checkIndexFaceVo.setCreateTimeStr(checkIndexFace.getCreateTimeStr());
+ }
checkIndexFaceVo.setDeptName(checkIndexFace.getDeptName());
- checkIndexFaceVo.setCreateTime(checkIndexFace.getCreateTime());
- checkIndexFaceVo.setExamineTagStr(CheckConstants.Examine_Tag_Province.equals(checkIndexFace.getExamineTag()) ? "鐪佸巺鑰冩牳" : "鍖哄幙鑰冩牳");
+ checkIndexFaceVo.setExamineTagStr(CheckConstants.Examine_Tag_Province.equals(checkIndexFace.getExamineTag()) ? "鐪佸巺鑰冩牳" : CheckConstants.Examine_Tag_County.equals(checkIndexFace.getExamineTag()) ? "鍖哄幙鑰冩牳" : "鍏畨閮ㄨ�冩牳");
checkIndexFaceVo.setSiteOnlineText(checkIndexFace.getSiteOnline().multiply(new BigDecimal(100)).setScale(2, RoundingMode.HALF_UP) + "%");
checkIndexFaceVo.setFaceInformationCollectionAccuracyText(checkIndexFace.getFaceInformationCollectionAccuracy().multiply(new BigDecimal(100)).setScale(2, RoundingMode.HALF_UP) + "%");
checkIndexFaceVo.setFacePictureAvailabilityText(checkIndexFace.getFacePictureAvailability().multiply(new BigDecimal(100)).setScale(2, RoundingMode.HALF_UP) + "%");
@@ -95,4 +105,47 @@
return checkIndexFaceVo;
}
+ /** 鐢ㄤ簬瀵煎嚭璁$畻骞冲潎鍊� */
+ public static CheckIndexFace calculateAverage(List<CheckIndexFace> checkIndexFaces) {
+ Integer numSum = 0;
+ BigDecimal scoreSum = BigDecimal.ZERO;
+ BigDecimal totalViewConnectStability = BigDecimal.ZERO;
+ BigDecimal totalSiteOnline = BigDecimal.ZERO;
+ BigDecimal totalDeviceDirectoryConsistent = BigDecimal.ZERO;
+ BigDecimal totalFaceInformationCollectionAccuracy = BigDecimal.ZERO;
+ BigDecimal totalFacePictureQualification = BigDecimal.ZERO;
+ BigDecimal totalFaceTimingAccuracy = BigDecimal.ZERO;
+ BigDecimal totalFaceUploadTimeliness = BigDecimal.ZERO;
+ BigDecimal totalFacePictureAvailability = BigDecimal.ZERO;
+
+ int count = checkIndexFaces.size();
+
+ for (CheckIndexFace indexFace : checkIndexFaces) {
+ numSum = numSum + (indexFace.getNum() == null? 0:indexFace.getNum());
+ scoreSum = scoreSum.add(indexFace.getScore() == null ? BigDecimal.ZERO : indexFace.getScore());
+ totalViewConnectStability = totalViewConnectStability.add(indexFace.getViewConnectStability());
+ totalSiteOnline = totalSiteOnline.add(indexFace.getSiteOnline());
+ totalDeviceDirectoryConsistent = totalDeviceDirectoryConsistent.add(indexFace.getDeviceDirectoryConsistent());
+ totalFaceInformationCollectionAccuracy = totalFaceInformationCollectionAccuracy.add(indexFace.getFaceInformationCollectionAccuracy());
+ totalFacePictureQualification = totalFacePictureQualification.add(indexFace.getFacePictureQualification());
+ totalFaceTimingAccuracy = totalFaceTimingAccuracy.add(indexFace.getFaceTimingAccuracy());
+ totalFaceUploadTimeliness = totalFaceUploadTimeliness.add(indexFace.getFaceUploadTimeliness());
+ totalFacePictureAvailability = totalFacePictureAvailability.add(indexFace.getFacePictureAvailability());
+ }
+ CheckIndexFace result = new CheckIndexFace();
+ result.setCreateTimeStr("鍚堣");
+ result.setDeptName(checkIndexFaces.get(0).getDeptName());
+ result.setExamineTag(checkIndexFaces.get(0).getExamineTag());
+ result.setNum(numSum/count);
+ result.setScore(scoreSum.divide(BigDecimal.valueOf(count), 2, RoundingMode.HALF_UP));
+ result.setViewConnectStability(totalViewConnectStability.divide(BigDecimal.valueOf(count), 2, RoundingMode.HALF_UP));
+ result.setSiteOnline(totalSiteOnline.divide(BigDecimal.valueOf(count), 2, RoundingMode.HALF_UP));
+ result.setDeviceDirectoryConsistent(totalDeviceDirectoryConsistent.divide(BigDecimal.valueOf(count), 2, RoundingMode.HALF_UP));
+ result.setFaceInformationCollectionAccuracy(totalFaceInformationCollectionAccuracy.divide(BigDecimal.valueOf(count), 2, RoundingMode.HALF_UP));
+ result.setFacePictureQualification(totalFacePictureQualification.divide(BigDecimal.valueOf(count), 2, RoundingMode.HALF_UP));
+ result.setFaceTimingAccuracy(totalFaceTimingAccuracy.divide(BigDecimal.valueOf(count), 2, RoundingMode.HALF_UP));
+ result.setFaceUploadTimeliness(totalFaceUploadTimeliness.divide(BigDecimal.valueOf(count), 2, RoundingMode.HALF_UP));
+ result.setFacePictureAvailability(totalFacePictureAvailability.divide(BigDecimal.valueOf(count), 2, RoundingMode.HALF_UP));
+ return result;
+ }
}
--
Gitblit v1.8.0