From 268f264a612e142783422ae45eb8b64d7d133d4f Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期一, 13 一月 2025 09:24:28 +0800
Subject: [PATCH] 修改bug

---
 ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/RedPackegeSetController.java |   18 +++++++++++++++++-
 1 files changed, 17 insertions(+), 1 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 7cf14cc..5edc8ff 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
@@ -63,8 +63,24 @@
     @PostMapping("/addRedPackegeSet")
     @Transactional(rollbackFor = Exception.class)
     public R<Void> addRedPackegeSet(@RequestBody RedPackegeSetDto redPackegeSets){
+        redPackegeSetService.remove(null);
         List<RedPackegeSet> redPackegeSetList = redPackegeSets.getRedPackegeSets();
-        redPackegeSetService.saveOrUpdateBatch(redPackegeSetList);
+        for (int i = 0; i < redPackegeSetList.size(); i++) {
+            RedPackegeSet redPackegeSet = redPackegeSetList.get(i);
+            LocalDateTime startTime = redPackegeSet.getStartTime();
+            LocalDateTime endTime = redPackegeSet.getEndTime();
+            for (int j = 0; j < redPackegeSetList.size(); j++) {
+                RedPackegeSet redPackegeSet1 = redPackegeSetList.get(j);
+                LocalDateTime startTime1 = redPackegeSet1.getStartTime();
+                LocalDateTime endTime1 = redPackegeSet1.getEndTime();
+                if(i != j && ((startTime.isAfter(startTime1) && endTime.isBefore(endTime1))
+                        || (startTime.isBefore(startTime1) && endTime.isAfter(startTime1) && endTime.isBefore(endTime1))
+                        || (startTime.isAfter(startTime1) && startTime.isBefore(endTime1)  && endTime.isAfter(endTime1)))){
+                    return R.fail("时间有重叠,请重新配置");
+                }
+            }
+        }
+        redPackegeSetService.saveBatch(redPackegeSetList);
         return R.ok();
     }
 

--
Gitblit v1.7.1