diff --git a/ruoyi-modules/Property/src/main/java/org/dromara/property/service/impl/AttendanceArrangementServiceImpl.java b/ruoyi-modules/Property/src/main/java/org/dromara/property/service/impl/AttendanceArrangementServiceImpl.java index 42261de..5a87edc 100644 --- a/ruoyi-modules/Property/src/main/java/org/dromara/property/service/impl/AttendanceArrangementServiceImpl.java +++ b/ruoyi-modules/Property/src/main/java/org/dromara/property/service/impl/AttendanceArrangementServiceImpl.java @@ -253,20 +253,7 @@ public class AttendanceArrangementServiceImpl implements IAttendanceArrangementS bo.setId(add.getId()); } - //判断排班日期是单个日期还是从此日期开始循环有效还是从此日期开始有效 - //1.单个日期 - if (bo.getDateType().equals(StatusConstant.SINGLE)) { - add.setEndDate(null); - } - //2.从此日期开始长期有效 - if (bo.getDateType().equals(StatusConstant.LONGTIME)) { - //设置长期时间为2099年12月31日 - LocalDate longTimeEndDate = LocalDate.of(2099, 12, 31); - add.setEndDate(Date.from(longTimeEndDate.atStartOfDay(ZoneId.systemDefault()).toInstant())); - } - if (bo.getDateType().equals(StatusConstant.SHORTTIME)){ - add.setEndDate(bo.getEndDate()); - } + judgeDate(bo, add); //取出当前新增的排班的id @@ -282,6 +269,23 @@ public class AttendanceArrangementServiceImpl implements IAttendanceArrangementS return flag; } + private static void judgeDate(AttendanceArrangementBo bo, AttendanceArrangement add) { + //判断排班日期是单个日期还是从此日期开始循环有效还是从此日期开始有效 + //1.单个日期 + if (bo.getDateType().equals(StatusConstant.SINGLE)) { + add.setEndDate(null); + } + //2.从此日期开始长期有效 + if (bo.getDateType().equals(StatusConstant.LONGTIME)) { + //设置长期时间为2099年12月31日 + LocalDate longTimeEndDate = LocalDate.of(2099, 12, 31); + add.setEndDate(Date.from(longTimeEndDate.atStartOfDay(ZoneId.systemDefault()).toInstant())); + } + if (bo.getDateType().equals(StatusConstant.SHORTTIME)){ + add.setEndDate(bo.getEndDate()); + } + } + /** * 修改排班 * @@ -293,6 +297,8 @@ public class AttendanceArrangementServiceImpl implements IAttendanceArrangementS AttendanceArrangement update = MapstructUtils.convert(bo, AttendanceArrangement.class); validEntityBeforeSave(update); + judgeDate(bo, update); + //取出当前排班的id Long ArrangementId = update.getId(); //用获取到的排班id向attendanceUserGroup表中更新数据