From 236972a79220fa9afbf78665e647fb9195ef0014 Mon Sep 17 00:00:00 2001 From: 13693261870 <252740454@qq.com> Date: 星期四, 21 三月 2024 17:29:59 +0800 Subject: [PATCH] 添加计算数据接口 --- src/main/java/com/yssh/service/EmailService.java | 80 +++++++++++++++++++++++++++++++++++++++- 1 files changed, 78 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/yssh/service/EmailService.java b/src/main/java/com/yssh/service/EmailService.java index 0611e4c..27f4710 100644 --- a/src/main/java/com/yssh/service/EmailService.java +++ b/src/main/java/com/yssh/service/EmailService.java @@ -4,13 +4,14 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Value; -import org.springframework.stereotype.Component; import org.springframework.stereotype.Service; import javax.mail.*; import javax.mail.internet.InternetAddress; import javax.mail.internet.MimeMessage; -import java.util.Properties; +import java.io.File; +import java.text.SimpleDateFormat; +import java.util.*; /** * 閭欢鏈嶅姟绫� @@ -46,6 +47,22 @@ @Value("${email.cc}") private String cc; + + @Value("${csv.bigPath}") + private String bigPath; + + @Value("${csv.filePath}") + private String filePath; + + @Value("${csv.vocPath}") + private String vocPath; + + @Value("${email.hours}") + private Integer hours; + + private final static SimpleDateFormat YMDH = new SimpleDateFormat("yyyyMMddHH"); + + private final static SimpleDateFormat Y_M_D_H = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); protected final Logger logger = LoggerFactory.getLogger(this.getClass()); @@ -102,4 +119,63 @@ return false; } } + + public int calcData() { + List<String> list = new ArrayList<>(); + + int count = countCsv(bigPath, hours); + if (0 == count) { + list.add("澶SV杩� " + hours + " 灏忔椂瀛樺湪鏂囦欢缂哄け锛�"); + } + count = countCsv(filePath, hours); + if (0 == count) { + list.add("涓瑿SV杩� " + hours + " 灏忔椂瀛樺湪鏂囦欢缂哄け锛�"); + } + count = countCsv(vocPath, hours); + if (0 == count) { + list.add("灏廋SV杩� " + hours + " 灏忔椂瀛樺湪鏂囦欢缂哄け锛�"); + } + + Calendar calendar = getCalendar(1); + calendar = getCalendar(0); + Integer iEnd = Integer.parseInt(YMDH.format(calendar.getTime())); + String sEnd = Y_M_D_H.format(calendar.getTime()); + calendar.add(Calendar.HOUR, 1 - hours); + Integer iStart = Integer.parseInt(YMDH.format(calendar.getTime())); + String sStart = Y_M_D_H.format(calendar.getTime()); + + int size = list.size(); + + return size; + } + + public int countCsv(String path, Integer hours) { + try { + int count = 0; + Calendar calendar = getCalendar(1); + for (int i = 0; i < hours; i++) { + calendar.add(Calendar.HOUR, -1); + String filePath = path + File.separator + YMDH.format(calendar.getTime()) + ".csv"; + if (new File(filePath).exists()) { + count++; + } + } + + return count; + } catch (Exception ex) { + logger.error(ex.getMessage(), ex); + return 0; + } + } + + public Calendar getCalendar(int start) { + Calendar calendar = Calendar.getInstance(); + calendar.setTime(new Date()); + calendar.add(Calendar.HOUR, start); + calendar.set(Calendar.MINUTE, 0); + calendar.set(Calendar.SECOND, 0); + calendar.set(Calendar.MILLISECOND, 0); + + return calendar; + } } -- Gitblit v1.9.3