From f8889f7364adae89e45a5ec3fcf4b38e430cf389 Mon Sep 17 00:00:00 2001 From: xiangpei <xiangpei@timesnew.cn> Date: 星期二, 10 九月 2024 10:41:18 +0800 Subject: [PATCH] 工单详情 --- ycl-pojo/src/main/java/com/ycl/platform/domain/entity/CheckIndexFace.java | 272 +++++++++++++++++++++--------------------------------- 1 files changed, 106 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..244f4f0 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,146 @@ 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.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()) ? "鐪佸巺鑰冩牳" : "鍖哄幙鑰冩牳"); + 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) { + 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) { + 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.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