|
@@ -34,11 +34,10 @@ import org.springframework.transaction.annotation.Transactional;
|
|
|
import javax.annotation.Resource;
|
|
|
import java.time.LocalDateTime;
|
|
|
import java.time.format.DateTimeFormatter;
|
|
|
-import java.util.ArrayList;
|
|
|
-import java.util.Date;
|
|
|
-import java.util.List;
|
|
|
+import java.util.*;
|
|
|
import java.util.concurrent.ExecutorService;
|
|
|
import java.util.concurrent.Executors;
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
import static org.jeecg.common.constant.CommonConstant.SC_INTERNAL_SERVER_ERROR_500;
|
|
|
|
|
@@ -127,8 +126,15 @@ public class UserServiceImpl implements IUserService {
|
|
|
LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
|
|
List<MsgVO> msgVOList = new ArrayList<>();
|
|
|
if (null != user) {
|
|
|
- sysAnnouncementSendMapper.selectList(Wrappers.<SysAnnouncementSend>lambdaQuery()
|
|
|
- .eq(SysAnnouncementSend::getUserId, user.getId()).eq(SysAnnouncementSend::getReadFlag, 0)).forEach(sysAnnouncementSend -> {
|
|
|
+ Set<String> uniqueIds = new HashSet<>();
|
|
|
+ List<SysAnnouncementSend> announcementSends = sysAnnouncementSendMapper.selectList(Wrappers.<SysAnnouncementSend>lambdaQuery()
|
|
|
+ .eq(SysAnnouncementSend::getUserId, user.getId())
|
|
|
+ .eq(SysAnnouncementSend::getReadFlag, 0));
|
|
|
+
|
|
|
+ List<SysAnnouncementSend> distinctList = announcementSends.stream()
|
|
|
+ .filter(a -> a.getId() != null && uniqueIds.add(a.getId()))
|
|
|
+ .collect(Collectors.toList());
|
|
|
+ distinctList.forEach(sysAnnouncementSend -> {
|
|
|
SysAnnouncement sysAnnouncement =
|
|
|
sysAnnouncementMapper.selectOne(Wrappers.lambdaQuery(SysAnnouncement.class).eq(SysAnnouncement::getId,
|
|
|
sysAnnouncementSend.getAnntId()).eq(SysAnnouncement::getSendStatus, 1));
|
|
@@ -139,8 +145,8 @@ public class UserServiceImpl implements IUserService {
|
|
|
.setId(sysAnnouncement.getId())
|
|
|
.setSendTime(sysAnnouncement.getSendTime())
|
|
|
.setImgUrl(sysAnnouncement.getImgUrl()).setSender(sysAnnouncement.getSender());
|
|
|
+ msgVOList.add(msgVO);
|
|
|
}
|
|
|
- msgVOList.add(msgVO);
|
|
|
});
|
|
|
return msgVOList;
|
|
|
}
|