|
@@ -135,7 +135,7 @@ public class PmWorkContentServiceImpl extends AbstractCrudService<PmWorkContentM
|
|
|
reportQuery.select(PmWorkReport::getId)
|
|
|
.eq(PmWorkReport::getSubmitterId, userid)
|
|
|
.orderByDesc(PmWorkReport::getSubmitDate);
|
|
|
- return pmWorkReportMapper.selectList(reportQuery).stream().map(PmWorkReport::getId).collect(Collectors.toList());
|
|
|
+ return pmWorkReportMapper.selectList(reportQuery).stream().map(PmWorkReport::getId).collect(Collectors.toList());
|
|
|
}
|
|
|
|
|
|
/**
|
|
@@ -573,6 +573,66 @@ public class PmWorkContentServiceImpl extends AbstractCrudService<PmWorkContentM
|
|
|
}
|
|
|
|
|
|
// 已读未读数量查询
|
|
|
+ List<PmReceive> receives = new ArrayList<>();
|
|
|
+ if (!receiveList.isEmpty()) {
|
|
|
+ receives = receives(receiveList);
|
|
|
+ }
|
|
|
+
|
|
|
+ Map<Integer, List<PmReceive>> reportReceivesMap = new HashMap<>();
|
|
|
+ if (!receives.isEmpty()) {
|
|
|
+ List<Long> uId = new ArrayList<>();
|
|
|
+ for (PmReceive pmReceive : receives) {
|
|
|
+ Long receiverId = pmReceive.getReceiverId();
|
|
|
+ uId.add(receiverId);
|
|
|
+ }
|
|
|
+ reportReceivesMap = receives.stream().collect(Collectors.groupingBy(PmReceive::getReportId));
|
|
|
+ }
|
|
|
+
|
|
|
+ Set<Long> userIdSet = new HashSet<>();
|
|
|
+ for (PmWorkReport report : reportList) {
|
|
|
+ Long submitterId = report.getSubmitterId();
|
|
|
+ userIdSet.add(submitterId);
|
|
|
+ }
|
|
|
+ List<Long> userIdList = new ArrayList<>(userIdSet);
|
|
|
+
|
|
|
+ List<SysUser> sysUsers = nickNames(userIdList);
|
|
|
+
|
|
|
+ if (sysUsers != null) {
|
|
|
+ for (PmWorkReport report : reportList) {
|
|
|
+ List<Long> readAlready = new ArrayList<>();
|
|
|
+ List<Long> readNotAlready = new ArrayList<>();
|
|
|
+ int readCount = 0;
|
|
|
+ int unreadCount = 0;
|
|
|
+ if (!reportReceivesMap.isEmpty()) {
|
|
|
+ List<PmReceive> reportReceives = reportReceivesMap.getOrDefault(report.getId(), Collections.emptyList());
|
|
|
+ for (PmReceive pmReceive : reportReceives) {
|
|
|
+ if (pmReceive.getReadFlag() == 1) {
|
|
|
+ readCount++;
|
|
|
+ readAlready.add(pmReceive.getReceiverId());
|
|
|
+ } else {
|
|
|
+ unreadCount++;
|
|
|
+ readNotAlready.add(pmReceive.getReceiverId());
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ PmReportReadersVO readUnreadVO = new PmReportReadersVO(readAlready, readNotAlready, readCount, unreadCount);
|
|
|
+ report.setPmReportReaders(readUnreadVO);
|
|
|
+
|
|
|
+ // 头像
|
|
|
+ for (SysUser sysUser : sysUsers) {
|
|
|
+ if (sysUser.getUserId().equals(report.getSubmitterId())) {
|
|
|
+ report.setAvatar(sysUser.getAvatar());
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ return new CommonPage<>(reportList, reportPage.getTotal(), pageSize, pageNum);
|
|
|
+ }
|
|
|
+
|
|
|
+ /*private PmReportReadersVO readCount() {
|
|
|
List<PmReceive> receives = receives(receiveList);
|
|
|
List<Long> uId = new ArrayList<>();
|
|
|
for (PmReceive pmReceive : receives) {
|
|
@@ -610,20 +670,7 @@ public class PmWorkContentServiceImpl extends AbstractCrudService<PmWorkContentM
|
|
|
}
|
|
|
|
|
|
PmReportReadersVO readUnreadVO = new PmReportReadersVO(readAlready, readNotAlready, readCount, unreadCount);
|
|
|
- report.setPmReportReaders(readUnreadVO);
|
|
|
-
|
|
|
- // 头像
|
|
|
- for (SysUser sysUser : sysUsers) {
|
|
|
- if (sysUser.getUserId().equals(report.getSubmitterId())) {
|
|
|
- report.setAvatar(sysUser.getAvatar());
|
|
|
- break;
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- return new CommonPage<>(reportList, reportPage.getTotal(), pageSize, pageNum);
|
|
|
- }
|
|
|
+ }*/
|
|
|
|
|
|
/**
|
|
|
* @description: 获取报告接收人
|