Commit 07fa481a authored by 赵啸非's avatar 赵啸非

修改导出动态列

parent 5948ffc1
...@@ -16,4 +16,6 @@ public class AttendanceRecordDetailVo extends BaseEntityLong { ...@@ -16,4 +16,6 @@ public class AttendanceRecordDetailVo extends BaseEntityLong {
private String title; private String title;
private Long staffId;
} }
...@@ -41,6 +41,7 @@ public class AttendanceRecordServiceImpl extends AbstractCRUDServiceImpl<Attenda ...@@ -41,6 +41,7 @@ public class AttendanceRecordServiceImpl extends AbstractCRUDServiceImpl<Attenda
protected void findAfter(AttendanceRecordEntity params, PageInfo pageInfo, Context context, List<AttendanceRecordEntity> list) throws AppException { protected void findAfter(AttendanceRecordEntity params, PageInfo pageInfo, Context context, List<AttendanceRecordEntity> list) throws AppException {
list.stream().map(item -> { list.stream().map(item -> {
List<AttendanceRecordDetailEntity> attendanceRecordDetailEntities = attendanceRecordDetailService.find(new AttendanceRecordDetailQuery().recordId(item.getId())); List<AttendanceRecordDetailEntity> attendanceRecordDetailEntities = attendanceRecordDetailService.find(new AttendanceRecordDetailQuery().recordId(item.getId()));
item.setAttendanceRecordDetailList(attendanceRecordDetailEntities); item.setAttendanceRecordDetailList(attendanceRecordDetailEntities);
return item; return item;
}).collect(Collectors.toList()); }).collect(Collectors.toList());
...@@ -51,7 +52,9 @@ public class AttendanceRecordServiceImpl extends AbstractCRUDServiceImpl<Attenda ...@@ -51,7 +52,9 @@ public class AttendanceRecordServiceImpl extends AbstractCRUDServiceImpl<Attenda
Map<Long, List<AttendanceRecordDetailEntity>> collect = attendanceRecordDetailService.find(new AttendanceRecordDetailQuery()).parallelStream().collect(Collectors.groupingBy(x -> x.getRecordId())); Map<Long, List<AttendanceRecordDetailEntity>> collect = attendanceRecordDetailService.find(new AttendanceRecordDetailQuery()).parallelStream().collect(Collectors.groupingBy(x -> x.getRecordId()));
list.stream().map(item -> { list.stream().map(item -> {
List<AttendanceRecordDetailEntity> attendanceRecordDetailEntities = collect.getOrDefault(item.getId(), new ArrayList<>()); List<AttendanceRecordDetailEntity> attendanceRecordDetailEntities = collect.getOrDefault(item.getId(), new ArrayList<>());
attendanceRecordDetailEntities.forEach(i -> {
i.setStaffId(item.getStaffId());
});
//List<AttendanceRecordDetailEntity> attendanceRecordDetailEntities = attendanceRecordDetailService.find(new AttendanceRecordDetailQuery().recordId(item.getId())); //List<AttendanceRecordDetailEntity> attendanceRecordDetailEntities = attendanceRecordDetailService.find(new AttendanceRecordDetailQuery().recordId(item.getId()));
item.setAttendanceRecordDetailList(attendanceRecordDetailEntities); item.setAttendanceRecordDetailList(attendanceRecordDetailEntities);
return item; return item;
...@@ -111,6 +114,8 @@ public class AttendanceRecordServiceImpl extends AbstractCRUDServiceImpl<Attenda ...@@ -111,6 +114,8 @@ public class AttendanceRecordServiceImpl extends AbstractCRUDServiceImpl<Attenda
long beLate = attendanceRecordEntities.parallelStream() long beLate = attendanceRecordEntities.parallelStream()
.flatMap(item -> item.getAttendanceRecordDetailList().stream()) .flatMap(item -> item.getAttendanceRecordDetailList().stream())
.filter(f -> GoWorkResultEnum.迟到.getValue() == f.getGoWorkResult() || OffWorkResultEnum.迟到.getValue() == f.getOffWorkResult()) .filter(f -> GoWorkResultEnum.迟到.getValue() == f.getGoWorkResult() || OffWorkResultEnum.迟到.getValue() == f.getOffWorkResult())
.map(i->i.getStaffId())
.distinct()
.count(); .count();
attendStatInfo.setBeLate(beLate); attendStatInfo.setBeLate(beLate);
...@@ -118,23 +123,27 @@ public class AttendanceRecordServiceImpl extends AbstractCRUDServiceImpl<Attenda ...@@ -118,23 +123,27 @@ public class AttendanceRecordServiceImpl extends AbstractCRUDServiceImpl<Attenda
long leaveEarly = attendanceRecordEntities.parallelStream() long leaveEarly = attendanceRecordEntities.parallelStream()
.flatMap(item -> item.getAttendanceRecordDetailList().stream()) .flatMap(item -> item.getAttendanceRecordDetailList().stream())
.filter(f -> GoWorkResultEnum.早退.getValue() == f.getGoWorkResult() || OffWorkResultEnum.早退.getValue() == f.getOffWorkResult()) .filter(f -> GoWorkResultEnum.早退.getValue() == f.getGoWorkResult() || OffWorkResultEnum.早退.getValue() == f.getOffWorkResult())
.map(i->i.getStaffId())
.distinct()
.count(); .count();
attendStatInfo.setLeaveEarly(leaveEarly); attendStatInfo.setLeaveEarly(leaveEarly);
//缺卡 //缺卡
long lackOfCards = attendanceRecordEntities.parallelStream() long lackOfCards = attendanceRecordEntities.parallelStream()
.flatMap(item -> item.getAttendanceRecordDetailList().stream()) .flatMap(item -> item.getAttendanceRecordDetailList().stream())
.filter(f -> GoWorkResultEnum.缺卡.getValue() == f.getGoWorkResult() || OffWorkResultEnum.缺卡.getValue() == f.getOffWorkResult()) .filter(f -> GoWorkResultEnum.缺卡.getValue() == f.getGoWorkResult() || OffWorkResultEnum.缺卡.getValue() == f.getOffWorkResult())
.map(i->i.getStaffId())
.distinct()
.count(); .count();
attendStatInfo.setLackOfCards(lackOfCards); attendStatInfo.setLackOfCards(lackOfCards);
//未考勤 //未考勤
long noAtt=lackOfCards; long noAtt = lackOfCards;
long att = total - noAtt; long att = total - noAtt;
if (att!=0L){ if (att != 0L) {
BigDecimal bigDecimal = new BigDecimal(att).divide(new BigDecimal(total)).multiply(new BigDecimal(100)).setScale(2, BigDecimal.ROUND_CEILING); BigDecimal bigDecimal = new BigDecimal(att).divide(new BigDecimal(total)).multiply(new BigDecimal(100)).setScale(2, BigDecimal.ROUND_CEILING);
attendStatInfo.setAttPercentage(bigDecimal.toString()+"%"); attendStatInfo.setAttPercentage(bigDecimal.toString() + "%");
}else{ } else {
attendStatInfo.setAttPercentage("0%"); attendStatInfo.setAttPercentage("0%");
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment