车车 3 luni în urmă
părinte
comite
fc3183fc54

+ 8 - 4
yudao-module-iscs/src/main/java/cn/iocoder/yudao/module/iscs/service/holiday/HolidayServiceImpl.java

@@ -16,7 +16,6 @@ import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.validation.annotation.Validated;
 
-import java.time.LocalDate;
 import java.util.ArrayList;
 import java.util.List;
 
@@ -42,7 +41,7 @@ public class HolidayServiceImpl extends ServiceImpl<HolidayMapper, HolidayDO> im
             // 按周几来设置
             List<String> datesByWeekday = SuperDateUtils.getDatesByWeekday(vo.getStartDay(), vo.getEndDay(), vo.getValue());
             if (!datesByWeekday.isEmpty()) {
-                List<HolidayDO> updateList = list(Wrappers.<HolidayDO>lambdaQuery().eq(HolidayDO::getTheDay, datesByWeekday));
+                List<HolidayDO> updateList = list(Wrappers.<HolidayDO>lambdaQuery().in(HolidayDO::getTheDay, datesByWeekday));
                 if (!updateList.isEmpty()) {
                     // 存在的全部更新一下
                     updateList.forEach(o -> o.setHolidayType(vo.getHolidayType()));
@@ -62,10 +61,15 @@ public class HolidayServiceImpl extends ServiceImpl<HolidayMapper, HolidayDO> im
         }
 
         if (vo.getUnit().equals("1")) {
+            try {
+                Integer.parseInt(vo.getValue());
+            } catch (Exception e) {
+                Assert.isFalse(true, "传入的值不符合规范!");
+            }
             // 按号来设置
-            List<String> datesWithDayInRange = SuperDateUtils.getDatesWithDayInRange(vo.getStartDay(), vo.getEndDay(), Integer.valueOf(vo.getValue()));
+            List<String> datesWithDayInRange = SuperDateUtils.getDatesWithDayInRange(vo.getStartDay(), vo.getEndDay(), Integer.parseInt(vo.getValue()));
             if (!datesWithDayInRange.isEmpty()) {
-                List<HolidayDO> updateList = list(Wrappers.<HolidayDO>lambdaQuery().eq(HolidayDO::getTheDay, datesWithDayInRange));
+                List<HolidayDO> updateList = list(Wrappers.<HolidayDO>lambdaQuery().in(HolidayDO::getTheDay, datesWithDayInRange));
                 if (!updateList.isEmpty()) {
                     // 存在的全部更新一下
                     updateList.forEach(o -> o.setHolidayType(vo.getHolidayType()));