From 1eb6016fcf65889266b5fbac8a0e2f7db27ac2ef Mon Sep 17 00:00:00 2001
From: fuliqi <fuliqi@qq.com>
Date: 星期三, 20 十一月 2024 11:52:16 +0800
Subject: [PATCH] 视频录像导出日期调整
---
ycl-server/src/main/java/com/ycl/utils/DateUtils.java | 7 +++++++
ycl-server/src/main/java/com/ycl/task/UYTask.java | 2 ++
ycl-server/src/main/java/com/ycl/platform/service/impl/TMonitorServiceImpl.java | 36 +++++++++++++++++++++++++++++++-----
3 files changed, 40 insertions(+), 5 deletions(-)
diff --git a/ycl-server/src/main/java/com/ycl/platform/service/impl/TMonitorServiceImpl.java b/ycl-server/src/main/java/com/ycl/platform/service/impl/TMonitorServiceImpl.java
index 6fc3f24..d353ed2 100644
--- a/ycl-server/src/main/java/com/ycl/platform/service/impl/TMonitorServiceImpl.java
+++ b/ycl-server/src/main/java/com/ycl/platform/service/impl/TMonitorServiceImpl.java
@@ -610,7 +610,16 @@
}
}
List<String> deviceIds = tMonitorResults.stream().map(BaseResult::getNo).collect(Collectors.toList());
- Query query = getQuery(deviceIds, exportForm.getMonth());
+ // 灏嗗勾鏈堝瓧绗︿覆瑙f瀽涓篩earMonth瀵硅薄
+ YearMonth yearMonth = YearMonth.parse(exportForm.getMonth());
+ // 鑾峰彇褰撴湀鐨勭涓�澶�
+ LocalDate start = yearMonth.atDay(1);
+ // 鑾峰彇涓嬩釜鏈堢殑绗竴澶╋紙閫氳繃鍔犱笂1涓湀骞惰缃棩涓�1锛�
+ YearMonth nextMonth = yearMonth.plusMonths(1);
+ LocalDate end = nextMonth.atDay(1);
+ //鑾峰彇杩欎釜鏈堜唤鐨勯儴闂ㄦ暟鎹紝褰曞儚鐢变簬鏄墠涓�澶╃殑鎵�浠ヤ笉鐢╟reateTime瀛楁
+ Query query = new Query(Criteria.where("statTime").gte(start).lt(end));
+ query.addCriteria(Criteria.where("no").in(deviceIds));
//鏈堜唤姣忔棩褰曞儚绾挎暟鎹�
List<RecordMetaDSumResult> recordResult = mongoTemplate.find(query, RecordMetaDSumResult.class);
//鍏ㄩ噺琛�
@@ -686,7 +695,16 @@
}
}
List<String> deviceIds = tMonitorResults.stream().map(BaseResult::getNo).collect(Collectors.toList());
- Query query = getQuery(deviceIds, exportForm.getMonth());
+ // 灏嗗勾鏈堝瓧绗︿覆瑙f瀽涓篩earMonth瀵硅薄
+ YearMonth yearMonth = YearMonth.parse(exportForm.getMonth());
+ // 鑾峰彇褰撴湀鐨勭涓�澶�
+ LocalDate start = yearMonth.atDay(1);
+ // 鑾峰彇涓嬩釜鏈堢殑绗竴澶╋紙閫氳繃鍔犱笂1涓湀骞惰缃棩涓�1锛�
+ YearMonth nextMonth = yearMonth.plusMonths(1);
+ LocalDate end = nextMonth.atDay(1);
+ //鑾峰彇杩欎釜鏈堜唤鐨勯儴闂ㄦ暟鎹紝褰曞儚鐢变簬鏄墠涓�澶╃殑鎵�浠ヤ笉鐢╟reateTime瀛楁
+ Query query = new Query(Criteria.where("statTime").gte(start).lt(end));
+ query.addCriteria(Criteria.where("no").in(deviceIds));
//鏈堜唤姣忔棩褰曞儚绾挎暟鎹�
List<RecordMetaDSumResult> recordResult = mongoTemplate.find(query, RecordMetaDSumResult.class);
//鍏ㄩ噺琛�
@@ -894,7 +912,15 @@
monitor.setTag(tag.toString());
});
ExcelUtil<TMonitorExp> util = new ExcelUtil<>(TMonitorExp.class);
- util.exportExcel(response, monitors, "2".equals(tMonitor.getCameraFunType()) ? "杞﹁締" : "浜鸿劯");
+ String sheetName = "";
+ if("1".equals(tMonitor.getCameraFunType())){
+ sheetName = "瑙嗛";
+ }else if("2".equals(tMonitor.getCameraFunType())){
+ sheetName = "杞﹁締";
+ }else if("3".equals(tMonitor.getCameraFunType())){
+ sheetName = "浜鸿劯";
+ }
+ util.exportExcel(response, monitors,sheetName);
}
@@ -1172,7 +1198,7 @@
//涓�涓澶囧綋鏈堝湪绾挎儏鍐�
List<RecordMetaDSumResult> recordResults = records.stream().filter(online -> online.getNo().equals(result.getNo())).collect(Collectors.toList());
for (RecordMetaDSumResult recordResult : recordResults) {
- int dayOfMonth = recordResult.getMongoCreateTime().getDayOfMonth();
+ int dayOfMonth = DateUtils.getDayOfMonth(recordResult.getStatTime());
Integer status = recordResult.getRecordStatus();
String text = "";
if (ApiConstants.UY_RecordStatus_Interval.equals(status)) {
@@ -1194,7 +1220,7 @@
//涓�涓澶囧綋鏈堝湪绾挎儏鍐�
List<RecordMetaDSumResult> recordResults = records.stream().filter(online -> online.getNo().equals(result.getNo())).collect(Collectors.toList());
for (RecordMetaDSumResult recordResult : recordResults) {
- int dayOfMonth = recordResult.getMongoCreateTime().getDayOfMonth();
+ int dayOfMonth = DateUtils.getDayOfMonth(recordResult.getStatTime());
//鍙嶅皠璧嬪�硷紝瀛楁缁熶竴瀹氫箟涓篸ay+1锛�2锛�3...
Field field = videoDailyExp.getClass().getDeclaredField("day" + dayOfMonth);
field.setAccessible(true);
diff --git a/ycl-server/src/main/java/com/ycl/task/UYTask.java b/ycl-server/src/main/java/com/ycl/task/UYTask.java
index 68237f3..bd06ad5 100644
--- a/ycl-server/src/main/java/com/ycl/task/UYTask.java
+++ b/ycl-server/src/main/java/com/ycl/task/UYTask.java
@@ -175,6 +175,8 @@
/**
* 鐐逛綅鍦ㄧ嚎PING妫�娴�
+ * 浠诲姟浼氬厛鎵ц涓�娆′紭浜戝悓姝ワ紝鐒跺悗鎵цping妫�娴�
+ * online瀛楁鏉ヨ嚜浜庝紭浜戯紝pingOnline涓轰富鍔╬ing妫�娴嬬殑銆傚瓨鍏ongo缁欐暟鎹腑蹇冩煡闃�
*/
public void pointOnline() throws ExecutionException, InterruptedException {
log.info("寮�濮嬫娴嬬偣浣嶅湪绾�");
diff --git a/ycl-server/src/main/java/com/ycl/utils/DateUtils.java b/ycl-server/src/main/java/com/ycl/utils/DateUtils.java
index d1e6846..2c78faf 100644
--- a/ycl-server/src/main/java/com/ycl/utils/DateUtils.java
+++ b/ycl-server/src/main/java/com/ycl/utils/DateUtils.java
@@ -298,4 +298,11 @@
Date date = calendar.getTime();
return date;
}
+ public static Integer getDayOfMonth(Date date) {
+ // 鍒涘缓涓�涓狢alendar瀵硅薄骞惰缃负褰撳墠鏃ユ湡鍜屾椂闂�
+ Calendar calendar = Calendar.getInstance();
+ calendar.setTime(date);
+ // 鑾峰彇褰撳墠鏃ユ湡鏄綋鏈堜腑鐨勭鍑犲ぉ
+ return calendar.get(Calendar.DAY_OF_MONTH);
+ }
}
--
Gitblit v1.8.0