bi数据报表发送周期,周报和月报获取日期时间
bi数据报表发送周期,周报和月报获取日期时间
1.今天是周四,获取上周四-本周三的日期,格式为yyyyMMddHHmmss
String startTime = ""; String endTime = ""; // 获取当前日期时间(假设今天是2025-09-19周四) LocalDateTime now = LocalDateTime.now(); // 计算上周四(当前周数减1,调整到周四) LocalDateTime lastThursday = now.minusWeeks(1) .with(java.time.DayOfWeek.THURSDAY).withHour(0).withMinute(0).withSecond(0);; // 计算本周三(当前周数不变,调整到周三) LocalDateTime thisWednesday = now .with(java.time.DayOfWeek.WEDNESDAY).withHour(23).withMinute(59).withSecond(59);; // 定义输出格式 DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyyMMddHHmmss"); // 输出结果 // System.out.println("上周四: " + lastThursday.format(formatter)); // System.out.println("本周三: " + thisWednesday.format(formatter)); startTime = lastThursday.format(formatter); endTime = thisWednesday.format(formatter);
2.今天是当前月的1号,获取上月1号-上月31号日期,格式为yyyyMMddHHmmss
String startTime = ""; String endTime = ""; // 获取当前日期(假设是2025-09-01) LocalDateTime now = LocalDateTime.now(); // 计算上个月的第一天00:00:00 LocalDateTime firstDayOfLastMonth = now.minusMonths(1) .withDayOfMonth(1) .withHour(0).withMinute(0).withSecond(0); // 计算上个月的最后一天23:59:59 LocalDateTime lastDayOfLastMonth = YearMonth.from(firstDayOfLastMonth) .atEndOfMonth() .atTime(23, 59, 59); // 定义输出格式 DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyyMMddHHmmss"); // 输出结果 // System.out.println("上月1号: " + firstDayOfLastMonth.format(formatter)); // System.out.println("上月31号: " + lastDayOfLastMonth.format(formatter)); startTime = firstDayOfLastMonth.format(formatter); endTime = lastDayOfLastMonth.format(formatter);