From c83101eb62f5d4906b9c01ceea6b21a37f9e84d8 Mon Sep 17 00:00:00 2001
From: zxl <763096477@qq.com>
Date: 星期二, 18 十一月 2025 09:24:53 +0800
Subject: [PATCH] bug修复
---
ycl-pojo/src/main/java/com/ycl/platform/domain/entity/CheckIndexFace.java | 276 ++++++++++++++++++++++---------------------------------
1 files changed, 110 insertions(+), 166 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 761475d..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
@@ -2,206 +2,150 @@
import annotation.Excel;
import com.alibaba.excel.annotation.ExcelIgnore;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
import com.ycl.platform.base.CheckIndex;
+import com.ycl.platform.domain.vo.CheckIndexCarVO;
+import com.ycl.platform.domain.vo.CheckIndexFaceVO;
+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;
/**
* 浜鸿劯鎸囨爣姒傜巼鏁版嵁瀵硅薄 t_check_index_face
- *
+ *
* @author ruoyi
* @date 2024-04-29
*/
-public class CheckIndexFace extends CheckIndex
-{
+@Data
+@TableName("t_check_index_face")
+public class CheckIndexFace extends CheckIndex {
private static final long serialVersionUID = 1L;
- /** 瑙嗗浘搴撳鎺ョǔ瀹氭�� */
- @Excel(name = "瑙嗗浘搴撳鎺ョǔ瀹氭��")
+ /**
+ * 瑙嗗浘搴撳鎺ョǔ瀹氭��
+ */
+ @TableField("view_connect_stability")
private BigDecimal viewConnectStability;
- /** 鐐逛綅鍦ㄧ嚎鐜� */
- @Excel(name = "鐐逛綅鍦ㄧ嚎鐜�")
+ /**
+ * 鐐逛綅鍦ㄧ嚎鐜�
+ */
+ @TableField("site_online")
private BigDecimal siteOnline;
- /** 璁惧鐩綍涓�鑷寸巼 */
- @Excel(name = " 璁惧鐩綍涓�鑷寸巼")
+ /**
+ * 璁惧鐩綍涓�鑷寸巼
+ */
+ @TableField("device_directory_consistent")
private BigDecimal deviceDirectoryConsistent;
- /** 浜鸿劯鍗″彛淇℃伅閲囬泦鍑嗙‘鐜� */
- @Excel(name = "浜鸿劯鍗″彛淇℃伅閲囬泦鍑嗙‘鐜�",width = 25)
+ /**
+ * 浜鸿劯鍗″彛淇℃伅閲囬泦鍑嗙‘鐜�
+ */
+ @TableField("face_information_collection_accuracy")
private BigDecimal faceInformationCollectionAccuracy;
- /** 璁惧鎶撴媿鍥剧墖鍚堟牸鎬� */
- @Excel(name = "璁惧鎶撴媿鍥剧墖鍚堟牸鎬�")
+ /**
+ * 璁惧鎶撴媿鍥剧墖鍚堟牸鎬�
+ */
+ @TableField("face_picture_qualification")
private BigDecimal facePictureQualification;
- /** 璁惧鎶撴媿鍥剧墖鏃堕挓鍑嗙‘鎬� */
- @Excel(name = "璁惧鎶撴媿鍥剧墖鏃堕挓鍑嗙‘鎬�",width = 25)
+ /**
+ * 璁惧鎶撴媿鍥剧墖鏃堕挓鍑嗙‘鎬�
+ */
+ @TableField("face_timing_accuracy")
private BigDecimal faceTimingAccuracy;
- /** 鎶撴媿浜鸿劯鏁版嵁涓婁紶鍙婃椂鎬� */
- @Excel(name = "鎶撴媿浜鸿劯鏁版嵁涓婁紶鍙婃椂鎬�",width = 25)
+ /**
+ * 鎶撴媿浜鸿劯鏁版嵁涓婁紶鍙婃椂鎬�
+ */
+ @TableField("face_upload_timeliness")
private BigDecimal faceUploadTimeliness;
- /** 浜鸿劯鍗″彛璁惧鎶撴媿鏁版嵁澶у浘鍙敤鎬� */
- @Excel(name = "浜鸿劯鍗″彛璁惧鎶撴媿鏁版嵁澶у浘鍙敤鎬�",width = 25)
+ /**
+ * 浜鸿劯鍗″彛璁惧鎶撴媿鏁版嵁澶у浘鍙敤鎬�
+ */
+ @TableField("face_picture_availability")
private BigDecimal facePictureAvailability;
@ExcelIgnore
+ @TableField(exist = false)
private List<String> quarter;
+ //杞崲鎴愬瓧绗︿覆鐢ㄤ簬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.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) + "%");
+ checkIndexFaceVo.setDeviceDirectoryConsistentTextText(checkIndexFace.getDeviceDirectoryConsistent().multiply(new BigDecimal(100)) .setScale(2, RoundingMode.HALF_UP)+ "%");
+ checkIndexFaceVo.setFaceTimingAccuracyText(checkIndexFace.getFaceTimingAccuracy().multiply(new BigDecimal(100)).setScale(2, RoundingMode.HALF_UP) + "%");
+ checkIndexFaceVo.setFacePictureQualificationText(checkIndexFace.getFacePictureQualification().multiply(new BigDecimal(100)).setScale(2, RoundingMode.HALF_UP) + "%");
+ checkIndexFaceVo.setViewConnectStabilityText(checkIndexFace.getViewConnectStability().multiply(new BigDecimal(100)).setScale(2, RoundingMode.HALF_UP) + "%");
+ checkIndexFaceVo.setFaceUploadTimelinessText(checkIndexFace.getFaceUploadTimeliness().multiply(new BigDecimal(100)).setScale(2, RoundingMode.HALF_UP) + "%");
- public List<String> getQuarter() {
- return quarter;
+ 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;
- public void setQuarter(List<String> quarter) {
- this.quarter = quarter;
- }
+ int count = checkIndexFaces.size();
- public BigDecimal getViewConnectStability() {
- return viewConnectStability;
- }
-
- public void setViewConnectStability(BigDecimal viewConnectStability) {
- this.viewConnectStability = viewConnectStability;
- }
-
- public BigDecimal getSiteOnline() {
- return siteOnline;
- }
-
- public void setSiteOnline(BigDecimal siteOnline) {
- this.siteOnline = siteOnline;
- }
-
- public BigDecimal getDeviceDirectoryConsistent() {
- return deviceDirectoryConsistent;
- }
-
- public void setDeviceDirectoryConsistent(BigDecimal deviceDirectoryConsistent) {
- this.deviceDirectoryConsistent = deviceDirectoryConsistent;
- }
-
- public BigDecimal getFaceInformationCollectionAccuracy() {
- return faceInformationCollectionAccuracy;
- }
-
- public void setFaceInformationCollectionAccuracy(BigDecimal faceInformationCollectionAccuracy) {
- this.faceInformationCollectionAccuracy = faceInformationCollectionAccuracy;
- }
-
- public BigDecimal getFacePictureQualification() {
- return facePictureQualification;
- }
-
- public void setFacePictureQualification(BigDecimal facePictureQualification) {
- this.facePictureQualification = facePictureQualification;
- }
-
- public BigDecimal getFaceTimingAccuracy() {
- return faceTimingAccuracy;
- }
-
- public void setFaceTimingAccuracy(BigDecimal faceTimingAccuracy) {
- this.faceTimingAccuracy = faceTimingAccuracy;
- }
-
- public BigDecimal getFaceUploadTimeliness() {
- return faceUploadTimeliness;
- }
-
- public void setFaceUploadTimeliness(BigDecimal faceUploadTimeliness) {
- this.faceUploadTimeliness = faceUploadTimeliness;
- }
-
- public BigDecimal getFacePictureAvailability() {
- return facePictureAvailability;
- }
-
- public void setFacePictureAvailability(BigDecimal facePictureAvailability) {
- this.facePictureAvailability = facePictureAvailability;
- }
-
- @Override
- public Long getId() {
- return super.getId();
- }
-
- @Override
- public void setId(Long id) {
- super.setId(id);
- }
-
- @Override
- public String getDate() {
- return super.getDate();
- }
-
- @Override
- public void setDate(String date) {
- super.setDate(date);
- }
-
- @Override
- public Date getCreateTime() {
- return super.getCreateTime();
- }
-
- @Override
- public void setCreateTime(Date createTime) {
- super.setCreateTime(createTime);
- }
-
- @Override
- public Long getDeptId() {
- return super.getDeptId();
- }
-
- @Override
- public void setDeptId(Long deptId) {
- super.setDeptId(deptId);
- }
-
- @Override
- public String getDeptName() {
- return super.getDeptName();
- }
-
- @Override
- public void setDeptName(String deptName) {
- super.setDeptName(deptName);
- }
-
- @Override
- public Short getExamineTag() {
- return super.getExamineTag();
- }
-
- @Override
- public void setExamineTag(Short examineTag) {
- super.setExamineTag(examineTag);
- }
-
- @Override
- public String toString() {
- return "CheckIndexFace{" +
- "id=" + id +
- ", date='" + date + '\'' +
- ", createTime=" + createTime +
- ", deptId=" + deptId +
- ", deptName='" + deptName + '\'' +
- ", examineTag=" + examineTag +
- ", viewConnectStability=" + viewConnectStability +
- ", siteOnline=" + siteOnline +
- ", deviceDirectoryConsistent=" + deviceDirectoryConsistent +
- ", faceInformationCollectionAccuracy=" + faceInformationCollectionAccuracy +
- ", facePictureQualification=" + facePictureQualification +
- ", faceTimingAccuracy=" + faceTimingAccuracy +
- ", faceUploadTimeliness=" + faceUploadTimeliness +
- ", facePictureAvailability=" + facePictureAvailability +
- '}';
+ 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