This commit is contained in:
zt
2025-03-12 13:51:09 +08:00
parent 64c5b1e6cb
commit d5ab2aa26f
2 changed files with 19 additions and 8 deletions

View File

@ -128,10 +128,19 @@ public class BgtProjectRecruitServiceImpl extends ServicePlusImpl<BgtProjectRecr
private void validEntityBeforeSave(BgtProjectRecruit entity){ private void validEntityBeforeSave(BgtProjectRecruit entity){
if(entity.getId()!=null){ if(entity.getId()!=null){
BgtProjectRecruit recruit = getById(entity.getId()); BgtProjectRecruit recruit = getById(entity.getId());
if(recruit == null) {
throw new BaseException("招工数据不存在");
}
LocalDate recruitEndTime = recruit.getRecruitEndTime(); LocalDate recruitEndTime = recruit.getRecruitEndTime();
if(recruitEndTime.isBefore(LocalDate.now())) { if(recruitEndTime.isBefore(LocalDate.now())) {
throw new BaseException("已过报名截止时间,无法修改"); throw new BaseException("已过报名截止时间,无法修改");
} }
if(recruit.getRecruitStaffNum()>entity.getRecruitStaffNum()) {
throw new BaseException("招工人数不能少于修改前的人数");
}
if(recruit.getRecruitStaffNum() < entity.getRecruitStaffNum() && RecruitStatus.FULL.getCode().equals(recruit.getStatus())) {
entity.setStatus(RecruitStatus.PROGRESS.getCode());
}
} }
} }

View File

@ -35,16 +35,17 @@ import com.ruoyi.wgz.domain.WgzAttendance;
import com.ruoyi.wgz.domain.WgzReissueacard; import com.ruoyi.wgz.domain.WgzReissueacard;
import com.ruoyi.wgz.mapper.WgzAttendanceMapper; import com.ruoyi.wgz.mapper.WgzAttendanceMapper;
import com.ruoyi.wgz.service.IWgzAttendanceService; import com.ruoyi.wgz.service.IWgzAttendanceService;
import com.ruoyi.wgz.service.IWgzLeaveService;
import com.ruoyi.wgz.service.IWgzReissueacardService; import com.ruoyi.wgz.service.IWgzReissueacardService;
import com.ruoyi.wgz.service.IWgzUserService;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Lazy; import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import java.text.DecimalFormat; import java.text.DecimalFormat;
import java.time.*; import java.time.Duration;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.LocalTime;
import java.time.format.DateTimeFormatter; import java.time.format.DateTimeFormatter;
import java.time.temporal.TemporalAdjusters; import java.time.temporal.TemporalAdjusters;
import java.util.*; import java.util.*;
@ -467,14 +468,15 @@ public class WgzAttendanceServiceImpl extends ServicePlusImpl<WgzAttendanceMappe
FbsProjectTask task = taskService.getById(dto.getTaskId()); FbsProjectTask task = taskService.getById(dto.getTaskId());
validTaskTime(task, dto.getDate()); validTaskTime(task, dto.getDate());
LocalDate taskBeginTime = DateUtils.str2Localdate(task.getTaskBeginTime(), DateUtils.YYYY_MM_DD); LocalDate taskEndTime = DateUtils.str2Localdate(task.getTaskEndTime(), DateUtils.YYYY_MM_DD);
LocalDate date = dto.getDate(); LocalDate date = dto.getDate();
LocalDate endTime = date;
LocalDate startTime = date.minusDays(7); LocalDate startTime = date.minusDays(7);
if (taskBeginTime!=null &&taskBeginTime.isAfter(startTime)){ if (taskEndTime!=null &&taskEndTime.isBefore(date)){
startTime = taskBeginTime; endTime = taskEndTime;
} }
return countDayByTaskId(dto.getTaskId(), startTime, date); List<BgtDayAttendanceCountVO> bgtDayAttendanceCountVOS = countDayByTaskId(dto.getTaskId(), startTime, endTime);
return DataUtil.fillMissingDates(bgtDayAttendanceCountVOS, startTime, endTime);
} }