|
@@ -5934,8 +5934,8 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
|
|
|
List<Map<String,Object>> dataList=new ArrayList<>();
|
|
|
long days =dateTimeList.size();
|
|
|
List<LeaveSheet> leaveSheets = leaveSheetList.stream().filter(ls -> ls.getOwnerId().equals(user.getId())
|
|
|
- &&((ls.getStartDate().isAfter(ChronoLocalDate.from(sDate))||ls.getStartDate().isEqual(ChronoLocalDate.from(sDate)))&&(ls.getStartDate().isBefore(ChronoLocalDate.from(eDate))||ls.getStartDate().isEqual(ChronoLocalDate.from(eDate))))
|
|
|
- &&((ls.getEndDate().isBefore(ChronoLocalDate.from(eDate))||ls.getEndDate().isEqual(ChronoLocalDate.from(eDate)))&&(ls.getEndDate().isAfter(ChronoLocalDate.from(sDate))||ls.getEndDate().isEqual(ChronoLocalDate.from(sDate))))).collect(Collectors.toList());
|
|
|
+ &&((ls.getStartDate().isBefore(ChronoLocalDate.from(eDate))||ls.getStartDate().isEqual(ChronoLocalDate.from(eDate))))
|
|
|
+ &&((ls.getEndDate().isAfter(ChronoLocalDate.from(sDate))||ls.getEndDate().isEqual(ChronoLocalDate.from(sDate))))).collect(Collectors.toList());
|
|
|
TimelinessRateVO timelinessRateVO=new TimelinessRateVO();
|
|
|
timelinessRateVO.setUserName(user.getName());
|
|
|
timelinessRateVO.setJobNumber(user.getJobNumber());
|
|
@@ -5949,6 +5949,7 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
|
|
|
//去掉填非工作日
|
|
|
for (LocalDateTime localDateTime : dateTimeList) {
|
|
|
if(mapList!=null){
|
|
|
+ //在非工作日下 填报了的情况下 及时填报了就算作及时率计算的基数
|
|
|
if(!WorkDayCalculateUtils.isWorkDay(localDateTime.toLocalDate())&&!mapList.stream().anyMatch(ml->{
|
|
|
Object date = ml.get("createDate");
|
|
|
LocalDate createDate = LocalDate.parse(String.valueOf(date));
|
|
@@ -5964,7 +5965,7 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
|
|
|
|
|
|
}
|
|
|
//请假的不参与及时率统计
|
|
|
- //todo: 此处对请假的 数据做处理 计请假填报
|
|
|
+ //todo: 此处对请假的 数据做处理 计请假填报 去除请假日期中的需要填报的日期
|
|
|
long daysWithLeave =days;
|
|
|
if(leaveSheets.size()>0){
|
|
|
for (LeaveSheet leaveSheet : leaveSheets) {
|
|
@@ -5974,7 +5975,13 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
|
|
|
}else{
|
|
|
days-=leaveSheet.getTimeDays();
|
|
|
}
|
|
|
+ System.out.println(leaveDateList.size());
|
|
|
for (LocalDateTime localDateTime : leaveDateList) {
|
|
|
+ //todo: 请假区间当中有非工作日在之前被当作 不需填报 所以要加上 保证基数正确
|
|
|
+ if(!WorkDayCalculateUtils.isWorkDay(localDateTime.toLocalDate())){
|
|
|
+ days+=1;
|
|
|
+ continue;
|
|
|
+ }
|
|
|
if(localDateTime.isBefore(sDate)||localDateTime.isAfter(eDate)){
|
|
|
days++;
|
|
|
continue;
|
|
@@ -5994,6 +6001,7 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
|
|
|
}
|
|
|
}
|
|
|
int num=0;
|
|
|
+ System.out.println(days);
|
|
|
if(mapList!=null){
|
|
|
for (Map<String, Object> map : mapList) {
|
|
|
Map<String,Object> objectMap=new HashMap<>();
|