|
|
@@ -296,6 +296,9 @@ public class PunchInManagerImpl implements IPunchInManager {
|
|
|
// 获取打卡任务
|
|
|
PiTask piTask = Optional.ofNullable(piTaskService.getById(id)).orElseThrow(() -> BusinessException.fail("无法查询到该打卡任务"));
|
|
|
BeanUtils.copyProperties(piTask, piTaskVO);
|
|
|
+ if (RepeatCategoryEnum.CUSTOM.equals(piTask.getRepeatCategory()) && StringUtils.hasText(piTask.getRepeatCustomDay())) {
|
|
|
+ piTaskVO.setRepeatCustomDayList(Arrays.stream(piTask.getRepeatCustomDay().split(",")).toList());
|
|
|
+ }
|
|
|
|
|
|
// 获取拓展信息
|
|
|
PiTaskExtQuery piTaskExtQuery = new PiTaskExtQuery();
|
|
|
@@ -355,7 +358,7 @@ public class PunchInManagerImpl implements IPunchInManager {
|
|
|
if (CommonEnableStatusEnum.ENABLED.equals(request.getFullAttendanceStatus()) && (Objects.isNull(request.getFullAttendancePeriod()) || Objects.isNull(request.getFullAttendanceFaultToleranceCnt()))) {
|
|
|
throw BusinessException.fail("启用了全勤奖励,全勤周期和全勤容错次数不能为空");
|
|
|
}
|
|
|
- if (RepeatCategoryEnum.CUSTOM.equals(request.getRepeatCategory()) && !StringUtils.hasText(request.getRepeatCustomDay())) {
|
|
|
+ if (RepeatCategoryEnum.CUSTOM.equals(request.getRepeatCategory()) && CollectionUtils.isEmpty(request.getRepeatCustomDayList())) {
|
|
|
throw BusinessException.fail("自定义重复周期,自定义重复日不能为空");
|
|
|
}
|
|
|
if (PunchInExtraMethodEnum.FIXED.equals(request.getExtraMethod()) || PunchInExtraMethodEnum.INTERVAL.equals(request.getExtraMethod())) {
|
|
|
@@ -402,6 +405,9 @@ public class PunchInManagerImpl implements IPunchInManager {
|
|
|
addPiTask.setTaskStatus(VersionStatusEnum.ACTIVE);
|
|
|
addPiTask.setTaskVersion(0);
|
|
|
addPiTask.setArchiveStatus(ArchiveStatusEnum.ACTIVE);
|
|
|
+ if (!CollectionUtils.isEmpty(request.getRepeatCustomDayList())) {
|
|
|
+ addPiTask.setRepeatCustomDay(String.join(",", request.getRepeatCustomDayList()));
|
|
|
+ }
|
|
|
|
|
|
// 拓展信息(当天打卡)
|
|
|
List<PiTaskExt> taskExtList = Optional.ofNullable(request.getTaskExtList()).orElse(List.of()).stream()
|