From 6451d61e4438c93d78b5fb187afd7bc538f2af44 Mon Sep 17 00:00:00 2001
From: fuliqi <fuliqi@qq.com>
Date: 星期三, 08 一月 2025 17:42:40 +0800
Subject: [PATCH] OSD导出
---
ycl-pojo/src/main/java/com/ycl/platform/domain/result/UY/OsdCheckResult.java | 17 ++++++++
ycl-pojo/src/main/java/com/ycl/platform/domain/query/DataCenterQuery.java | 2 +
ycl-server/src/main/java/com/ycl/platform/service/impl/DataCenterServiceImpl.java | 53 ++++++++++++++++++++++++++
ycl-server/src/main/java/com/ycl/platform/controller/DataCenterController.java | 13 ++++++
ycl-server/src/main/java/com/ycl/platform/service/DataCenterService.java | 2 +
5 files changed, 86 insertions(+), 1 deletions(-)
diff --git a/ycl-pojo/src/main/java/com/ycl/platform/domain/query/DataCenterQuery.java b/ycl-pojo/src/main/java/com/ycl/platform/domain/query/DataCenterQuery.java
index 11fd6a2..4a241b7 100644
--- a/ycl-pojo/src/main/java/com/ycl/platform/domain/query/DataCenterQuery.java
+++ b/ycl-pojo/src/main/java/com/ycl/platform/domain/query/DataCenterQuery.java
@@ -3,6 +3,7 @@
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ycl.platform.base.AbsQuery;
import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
import utils.DateUtils;
import java.util.Date;
@@ -18,6 +19,7 @@
@Data
public class DataCenterQuery extends AbsQuery {
@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
+ @DateTimeFormat(pattern = "yyyy-MM-dd")
private Date date;
/** 寮�濮嬫椂闂� */
diff --git a/ycl-pojo/src/main/java/com/ycl/platform/domain/result/UY/OsdCheckResult.java b/ycl-pojo/src/main/java/com/ycl/platform/domain/result/UY/OsdCheckResult.java
index 1c04824..e609fb0 100644
--- a/ycl-pojo/src/main/java/com/ycl/platform/domain/result/UY/OsdCheckResult.java
+++ b/ycl-pojo/src/main/java/com/ycl/platform/domain/result/UY/OsdCheckResult.java
@@ -1,5 +1,6 @@
package com.ycl.platform.domain.result.UY;
+import annotation.Excel;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ycl.platform.domain.result.BaseResult;
import constant.ApiConstants;
@@ -23,6 +24,7 @@
/**
* 鍥芥爣鐮�
*/
+ @Excel(name = "璁惧缂栫爜",sort = 1)
private String deviceNo;
/**
@@ -33,6 +35,7 @@
/**
* 鎽勫儚鏈哄搧鐗�0/1/2 娴峰悍/澶у崕/瀹囪
*/
+ @Excel(name = "璁惧鍝佺墝",sort = 2)
private String deviceBrandStr;
/**
* 璁惧绫诲瀷
@@ -42,48 +45,57 @@
/**
* ip
*/
+ @Excel(name = "IP",sort = 3)
private String ip;
/**
* 妫�娴嬫椂闂�
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @Excel(name = "妫�娴嬫椂闂�",dateFormat = "yyyy-MM-dd HH:mm:ss",sort = 10)
private Date checkTime;
/**
* 鏍囨敞鏃堕棿
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @Excel(name = "OSD鏍囨敞鏃堕棿",dateFormat = "yyyy-MM-dd HH:mm:ss",sort = 9)
private Date setTime;
/**
* osd閫氶亾鍚�
*/
+ @Excel(name = "閫氶亾鍚嶇О",sort = 4)
private String osdName;
/**
* osd鐪�
*/
+ @Excel(name = "OSD鐪�",sort = 5)
private String osdProvince;
/**
* osd甯�
*/
+ @Excel(name = "OSD甯�",sort = 6)
private String osdCity;
/**
* osd鍖�
*/
+ @Excel(name = "OSD鍖�",sort = 7)
private String osdPart;
/**
* osd宸︿笅瑙�
*/
+ @Excel(name = "OSD宸︿笅瑙�",sort = 8)
private String osdLB;
/**
* osdTimeCorrect鏃堕棿鏄惁姝g‘
*/
+ @Excel(name = "鏃堕棿鏄惁姝g‘",sort = 16, readConverterExp = "0=鏈煡,1=姝g‘,-1=閿欒")
private Integer osdTimeCorrect;
/**
@@ -94,6 +106,7 @@
/**
* osd閫氶亾鍚嶆槸鍚︽纭� 1姝g‘ 0鏈煡 -1閿�
*/
+ @Excel(name = "閫氶亾鍚嶆槸鍚︽纭�",sort = 11, readConverterExp = "0=鏈煡,1=姝g‘,-1=閿欒")
private Integer osdNameCorrect;
/**
@@ -104,6 +117,7 @@
/**
* osd鐪佹槸鍚︽纭�
*/
+ @Excel(name = "OSD鐪佹槸鍚︽纭�",sort = 12, readConverterExp = "0=鏈煡,1=姝g‘,-1=閿欒")
private Integer osdProvinceCorrect;
/**
@@ -114,6 +128,7 @@
/**
* osd甯傛槸鍚︽纭�
*/
+ @Excel(name = "OSD甯傛槸鍚︽纭�",sort = 13, readConverterExp = "0=鏈煡,1=姝g‘,-1=閿欒")
private Integer osdCityCorrect;
/**
@@ -124,6 +139,7 @@
/**
* osd鍖烘槸鍚︽纭�
*/
+ @Excel(name = "OSD鍖烘槸鍚︽纭�",sort = 14, readConverterExp = "0=鏈煡,1=姝g‘,-1=閿欒")
private Integer osdPartCorrect;
/**
@@ -133,6 +149,7 @@
/**
* osd宸︿笅瑙掓槸鍚︽纭�
*/
+ @Excel(name = "OSD宸︿笅鏄惁姝g‘",sort = 15, readConverterExp = "0=鏈煡,1=姝g‘,-1=閿欒")
private Integer osdLbCorrect;
diff --git a/ycl-server/src/main/java/com/ycl/platform/controller/DataCenterController.java b/ycl-server/src/main/java/com/ycl/platform/controller/DataCenterController.java
index b151c5f..fd10c35 100644
--- a/ycl-server/src/main/java/com/ycl/platform/controller/DataCenterController.java
+++ b/ycl-server/src/main/java/com/ycl/platform/controller/DataCenterController.java
@@ -6,6 +6,7 @@
import com.ycl.platform.service.PlatformOnlineService;
import com.ycl.system.Result;
import io.swagger.annotations.ApiOperation;
+import jakarta.servlet.http.HttpServletResponse;
import lombok.RequiredArgsConstructor;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*;
@@ -160,7 +161,17 @@
query.setTime();
return dataCenterService.videoImportantPointLabelingAccuracy(query);
}
-
+ /**
+ * 瑙嗛锛氬鍑洪噸鐐圭偣浣嶆爣娉ㄦ纭巼
+ *
+ * @param query
+ * @return
+ */
+ @PostMapping("/videoImportantPointLabelingAccuracy/export")
+ public void videoImportantPointLabelingAccuracyExport(HttpServletResponse response,DataCenterQuery query) {
+ query.setTime();
+ dataCenterService.videoImportantPointLabelingAccuracyExport(response,query);
+ }
/**
* 瑙嗛锛氭牎鏃舵纭巼 锛堟柊瑙勫垯宸茬粡寮冪敤锛�
*
diff --git a/ycl-server/src/main/java/com/ycl/platform/service/DataCenterService.java b/ycl-server/src/main/java/com/ycl/platform/service/DataCenterService.java
index 8db5653..bad47b9 100644
--- a/ycl-server/src/main/java/com/ycl/platform/service/DataCenterService.java
+++ b/ycl-server/src/main/java/com/ycl/platform/service/DataCenterService.java
@@ -6,6 +6,7 @@
import com.ycl.platform.domain.result.UY.OneMachineFileResult;
import com.ycl.platform.domain.result.UY.RecordMetaDSumResult;
import com.ycl.system.Result;
+import jakarta.servlet.http.HttpServletResponse;
import java.util.List;
@@ -97,6 +98,7 @@
* @return
*/
Result videoImportantPointLabelingAccuracy(DataCenterQuery query);
+ void videoImportantPointLabelingAccuracyExport(HttpServletResponse response,DataCenterQuery query);
/**
* 瑙嗛锛氭牎鏃舵纭巼
diff --git a/ycl-server/src/main/java/com/ycl/platform/service/impl/DataCenterServiceImpl.java b/ycl-server/src/main/java/com/ycl/platform/service/impl/DataCenterServiceImpl.java
index 512db9f..0c418f5 100644
--- a/ycl-server/src/main/java/com/ycl/platform/service/impl/DataCenterServiceImpl.java
+++ b/ycl-server/src/main/java/com/ycl/platform/service/impl/DataCenterServiceImpl.java
@@ -9,6 +9,7 @@
import com.mongodb.client.MongoCollection;
import com.mongodb.client.MongoDatabase;
import com.ycl.platform.domain.entity.*;
+import com.ycl.platform.domain.excel.TMonitorExp;
import com.ycl.platform.domain.query.DataCenterQuery;
import com.ycl.platform.domain.result.HK.*;
import com.ycl.platform.domain.result.SYS.TMonitorResult;
@@ -26,9 +27,11 @@
import com.ycl.utils.DateUtils;
import com.ycl.utils.MongoUtil;
import com.ycl.utils.bean.BeanUtils;
+import com.ycl.utils.poi.ExcelUtil;
import constant.ApiConstants;
import constant.CheckConstants;
import enumeration.general.AreaDeptEnum;
+import jakarta.servlet.http.HttpServletResponse;
import lombok.RequiredArgsConstructor;
import org.apache.commons.collections.CollectionUtils;
import org.bson.Document;
@@ -1148,6 +1151,56 @@
return Result.ok().data(map).total(total);
}
+ @Override
+ public void videoImportantPointLabelingAccuracyExport(HttpServletResponse response, DataCenterQuery params) {
+ List<String> likeFileds = Arrays.asList("deviceNo", "osdName");
+ List<Criteria> andCriteria = MongoUtil.getAndCriteria(params, "checkTime", likeFileds, null);
+ Query query = new Query();
+ Criteria and = new Criteria();
+ and.andOperator(andCriteria);
+ query = Query.query(and);
+ //涓嬫媺妗嗘爣娉ㄦ纭煡璇㈡潯浠�
+ if (params.getOption() != null) {
+ if(params.getOption()==1) {
+ andCriteria.add(Criteria.where("osdNameCorrect").is(1));
+ andCriteria.add(Criteria.where("osdTimeCorrect").is(1));
+ andCriteria.add(Criteria.where("osdProvinceCorrect").is(1));
+ andCriteria.add(Criteria.where("osdCityCorrect").is(1));
+ andCriteria.add(Criteria.where("osdPartCorrect").is(1));
+ Criteria and2 = new Criteria();
+ and2.andOperator(andCriteria);
+ query = Query.query(and2);
+ }else if(params.getOption()==-1){
+ // 浣跨敤$or鏉′欢杩炴帴澶氫釜瀛楁妫�鏌ワ紝姣忎釜瀛楁妫�鏌ユ槸鍚︾瓑浜�-1
+ Criteria c1 = Criteria.where("osdNameCorrect").is(-1);
+ Criteria c2 = Criteria.where("osdTimeCorrect").is(-1);
+ Criteria c3 = Criteria.where("osdProvinceCorrect").is(-1);
+ Criteria c4 = Criteria.where("osdCityCorrect").is(-1);
+ Criteria c5 = Criteria.where("osdPartCorrect").is(-1);
+ Criteria orOperator = new Criteria().orOperator(c1, c2, c3, c4, c5);
+ orOperator.andOperator(andCriteria);
+ query = Query.query(orOperator);
+ }else {
+ Criteria c1 = Criteria.where("osdNameCorrect").is(0);
+ Criteria c2 = Criteria.where("osdTimeCorrect").is(0);
+ Criteria c3 = Criteria.where("osdProvinceCorrect").is(0);
+ Criteria c4 = Criteria.where("osdCityCorrect").is(0);
+ Criteria c5 = Criteria.where("osdPartCorrect").is(0);
+ Criteria orOperator = new Criteria().orOperator(c1, c2, c3, c4, c5);
+ orOperator.andOperator(andCriteria);
+ query = Query.query(orOperator);
+ }
+ }
+ List<OsdCheckResult> resultList = mongoTemplate.find(query, OsdCheckResult.class);
+ for (OsdCheckResult osdCheckResult : resultList) {
+ OsdCheckResult.getError(osdCheckResult);
+ }
+ ExcelUtil<OsdCheckResult> util = new ExcelUtil<>(OsdCheckResult.class);
+ String sheetName = "OSD鏍囨敞";
+
+ util.exportExcel(response, resultList, sheetName);
+ }
+
/**
* 瑙嗛锛氭牎鏃舵纭巼
*
--
Gitblit v1.8.0