From 36dd5e7edf18d0ab0e0d57ed960bdbd8aa770c40 Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期一, 13 一月 2025 13:52:32 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/RedPackegeSetController.java |   22 +++++++++++++++++++---
 1 files changed, 19 insertions(+), 3 deletions(-)

diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/RedPackegeSetController.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/RedPackegeSetController.java
index 98df583..d70cbd1 100644
--- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/RedPackegeSetController.java
+++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/RedPackegeSetController.java
@@ -66,11 +66,11 @@
     @PostMapping("/addRedPackegeSet")
     @Transactional(rollbackFor = Exception.class)
     public R<Void> addRedPackegeSet(@RequestBody RedPackegeSetDto redPackegeSets){
-        redPackegeSetService.remove(null);
         List<RedPackegeSet> redPackegeSetList = redPackegeSets.getRedPackegeSets();
         if (hasOverlap(redPackegeSetList)) {
-            R.fail("时间段存在重叠,请重新配置");
+            return R.fail("时间段存在重叠,请重新配置");
         }
+        redPackegeSetService.remove(null);
         redPackegeSetService.saveBatch(redPackegeSetList);
         return R.ok();
     }
@@ -85,7 +85,7 @@
         return R.ok();
     }
 
-    private boolean hasOverlap(List<RedPackegeSet> redPackegeSetList) {
+    public static boolean hasOverlap(List<RedPackegeSet> redPackegeSetList) {
         // 首先根据startTime对列表进行排序
         Collections.sort(redPackegeSetList, Comparator.comparing(RedPackegeSet::getStartTime));
 
@@ -104,6 +104,22 @@
         return false;
     }
 
+    public static void main(String[] args) {
+        // 示例数据
+        RedPackegeSet redPackegeSet = new RedPackegeSet();
+        redPackegeSet.setStartTime(LocalDateTime.of(2025, 1, 13, 0, 0));
+        redPackegeSet.setEndTime(LocalDateTime.of(2025, 1, 14, 0, 0));
+
+        RedPackegeSet redPackegeSet2 = new RedPackegeSet();
+        redPackegeSet2.setStartTime(LocalDateTime.of(2025, 1, 13, 0, 0));
+        redPackegeSet2.setEndTime(LocalDateTime.of(2025, 1, 14, 0, 0));
+        List<RedPackegeSet> redPackegeSetList = Arrays.asList(
+                redPackegeSet,redPackegeSet2
+        );
+
+        boolean overlapExists = hasOverlap(redPackegeSetList);
+        System.out.println("是否存在重叠: " + overlapExists);
+    }
 
 
 

--
Gitblit v1.7.1