package com.fs.qwApi;

import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;

public class test2 {
    public static void main(String[] args) {

//        LocalDateTime currentTime = LocalDateTime.now();
//        System.out.println(currentTime);
//        LocalDate localDate1 = currentTime.toLocalDate();
//        System.out.println(localDate1);

        LocalDate localDate = LocalDateTime.now().withMinute(0).withSecond(0).withNano(0).toLocalDate();
        String date = localDate.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"));

        System.out.println(date);
//        redisCache.setCacheObject("miniprogram:"+corpId+":"+courseImg.getCourseId(),imageResult.getMediaId());


//        Date sendTime=new Date();
//        LocalDateTime sendDateTime = sendTime.toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime();
//        LocalDateTime expireDateTime = sendDateTime.plusDays(1-1);
//        expireDateTime = expireDateTime.toLocalDate().atTime(23, 59, 59);
//        Date updateTime = Date.from(expireDateTime.atZone(ZoneId.systemDefault()).toInstant());
//
//        System.out.println(updateTime);
//        List<String> tagArr=new ArrayList<>();
//        tagArr.add("et7tWFCgAAHZOsxTFXpJ3vaFtmv87CqQ");
//        tagArr.add("et7tWFCgAA2135kirKbnXIfveYxep0Nw");
//
//        String excludeTags="et7tWFCgAA2OUibGLQzJ-yDS7tBlZDfw";
//        // 将排除的字符串转成列表
//        List<String> excludedTagsList=new ArrayList<>();
//        excludedTagsList= Arrays.asList(excludeTags.split(","));
//
//
//        // 检查 combinedTagsList 是否包含排除列表中的任意一个标签
//        boolean containsExcludedTag = tagArr.stream()
//                .anyMatch(excludedTagsList::contains);
//
//        //含任意一个排除标签
//        if (containsExcludedTag) {
//
//            System.out.println("111");
//        }
//        LocalDate startDate = LocalDate.parse("2024-12-21", DateTimeFormatter.ofPattern("yyyy-MM-dd"));
//        LocalDate currentDate = LocalDate.now();
//
//        long daysBetween = ChronoUnit.DAYS.between(startDate, currentDate);
//        int tempGap = 1;
//
//        int intervalDay = (int) (daysBetween / tempGap);
//
//
//        //寻找时间
//        LocalDateTime currentTime = LocalDateTime.of(2024, 12, 23, 23, 40);
//        // 先算好 20分钟后 ~ 再20分钟后的时间段
//        LocalDateTime startRangeFirst = currentTime.plusMinutes(20);  // 2024-12-14 00:00
//        LocalDateTime endRangeFirst = startRangeFirst.plusMinutes(20);     // 2024-12-14 00:20
//
//        // 如果发现已经跨天
//        if (!startRangeFirst.toLocalDate().equals(currentDate)) {
//            // 更新 currentDate
//            currentDate = startRangeFirst.toLocalDate(); // 切换为 2024-12-14
//
//            // 重新计算 daysBetween
//            daysBetween = ChronoUnit.DAYS.between(startDate, currentDate);
//            intervalDay = (int) (daysBetween / tempGap);
//
//        }
//                LocalTime elementLocalTime = LocalTime.parse("00:03");
//                LocalDateTime elementDateTime = LocalDateTime.of(currentTime.toLocalDate(), elementLocalTime);
//
//                // 动态调整 elementDateTime 的日期
//                if (elementLocalTime.isBefore(currentTime.toLocalTime())) {
//                    elementDateTime = elementDateTime.plusDays(1);
//                }
//
//                LocalDateTime startRange = currentTime.plusMinutes(20); // 2024-12-16 23:40
//                LocalDateTime endRange = startRange.plusMinutes(20);        // 2024-12-17 00:00
//
//                // 跨天逻辑修正：仅当 startRange 的时间晚于 endRange 的时间时调整
//                if (startRange.toLocalTime().isAfter(endRange.toLocalTime())
//                        && startRange.toLocalDate().equals(endRange.toLocalDate())) {
//                    endRange = endRange.plusDays(1); // 将 endRange 调整为第二天
//                }
//                if (!elementDateTime.isBefore(startRange) && elementDateTime.isBefore(endRange)) {
//
//                    // 如果时间差在目标范围内，更新记录
//                    // 组合年月日和element的时间
//                    LocalTime elementTime = LocalTime.parse("00:03"); // 例如 "16:20"
//
//                    LocalDate targetDate = startDate.plusDays(intervalDay * tempGap);
//
//                    // 将 targetDate 和 elementTime 组合成 LocalDateTime
//                    LocalDateTime dateTime = LocalDateTime.of(targetDate, elementTime);
//
//                    // 将 LocalDateTime 转换为 Date
//                    Date sendTime = Date.from(dateTime.atZone(ZoneId.systemDefault()).toInstant());
//                    System.out.println(sendTime);
//    }
    }
}
