From 43f0876e61e2c838f14fdcd57e5691eb5dca82aa Mon Sep 17 00:00:00 2001 From: aoshiguchen <1052045476@qq.com> Date: Wed, 4 Jan 2023 17:21:04 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B5=81=E9=87=8F=E7=BB=9F=E8=AE=A1-=E6=9C=88?= =?UTF-8?q?=E6=8A=A5=E8=A1=A8=E9=80=BB=E8=BE=91=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../fun/asgc/neutrino/core/util/DateUtil.java | 17 +++++++++++++++-- .../proxy/server/job/FlowReportForMonthJob.java | 6 +++--- 2 files changed, 18 insertions(+), 5 deletions(-) diff --git a/neutrino-core/src/main/java/fun/asgc/neutrino/core/util/DateUtil.java b/neutrino-core/src/main/java/fun/asgc/neutrino/core/util/DateUtil.java index 377909b5..af093be2 100644 --- a/neutrino-core/src/main/java/fun/asgc/neutrino/core/util/DateUtil.java +++ b/neutrino-core/src/main/java/fun/asgc/neutrino/core/util/DateUtil.java @@ -145,6 +145,19 @@ public class DateUtil { return cal.getTime(); } + /** + * 获取该日期当月第一天 + * + * @param date 日期 + * @return 结果日期 + */ + public static Date getMonthBegin(Date date) { + Calendar calendar = Calendar.getInstance(); + calendar.setTime(getDayBegin(date)); + calendar.set(Calendar.DAY_OF_MONTH, 1); + return calendar.getTime(); + } + /** * 获取该日期当月最后一天 * @@ -153,10 +166,10 @@ public class DateUtil { */ public static Date getMonthEnd(Date date) { Calendar calendar = Calendar.getInstance(); - calendar.setTime(getDayEnd(date)); + calendar.setTime(getDayBegin(date)); calendar.add(Calendar.MONTH, 1); calendar.set(Calendar.DAY_OF_MONTH, 1); - calendar.add(Calendar.DAY_OF_MONTH, -1); + calendar.add(Calendar.MILLISECOND, -1); return calendar.getTime(); } diff --git a/neutrino-proxy-server/src/main/java/fun/asgc/neutrino/proxy/server/job/FlowReportForMonthJob.java b/neutrino-proxy-server/src/main/java/fun/asgc/neutrino/proxy/server/job/FlowReportForMonthJob.java index e06c2478..fdb07fdf 100644 --- a/neutrino-proxy-server/src/main/java/fun/asgc/neutrino/proxy/server/job/FlowReportForMonthJob.java +++ b/neutrino-proxy-server/src/main/java/fun/asgc/neutrino/proxy/server/job/FlowReportForMonthJob.java @@ -63,11 +63,11 @@ public class FlowReportForMonthJob implements IJobHandler { Date now = new Date(); String dateStr = DateUtil.format(DateUtil.addDate(now, Calendar.MONTH, -1), "yyyy-MM"); Date date = DateUtil.parse(dateStr, "yyyy-MM"); - Date startDayDate = DateUtil.getDayBegin(date); - Date endEndDate = DateUtil.getDayEnd(date); + Date startDayDate = DateUtil.getMonthBegin(date); + Date endEndDate = DateUtil.getMonthEnd(date); // 删除原来的记录 - flowReportDayMapper.deleteByDateStr(dateStr); + flowReportMonthMapper.deleteByDateStr(dateStr); // 查询上个月的天级别统计数据 List flowReportDayList = flowReportDayMapper.findListByDateRange(startDayDate, endEndDate);