|
@@ -24,6 +24,7 @@ import com.sckw.message.model.vo.req.SelectMessagesReqVO;
|
|
|
import com.sckw.message.model.vo.req.StatisticsMessagesReqVO;
|
|
import com.sckw.message.model.vo.req.StatisticsMessagesReqVO;
|
|
|
import com.sckw.message.model.vo.res.KwmMessageListResVO;
|
|
import com.sckw.message.model.vo.res.KwmMessageListResVO;
|
|
|
import com.sckw.message.model.vo.res.MessagesStatisticsResVO;
|
|
import com.sckw.message.model.vo.res.MessagesStatisticsResVO;
|
|
|
|
|
+import com.sckw.message.model.vo.res.UserCenterMsgVO;
|
|
|
import com.sckw.message.model.vo.res.UserMsgCenterResVO;
|
|
import com.sckw.message.model.vo.res.UserMsgCenterResVO;
|
|
|
import com.sckw.stream.enums.MessageEnum;
|
|
import com.sckw.stream.enums.MessageEnum;
|
|
|
import com.sckw.system.api.RemoteSystemService;
|
|
import com.sckw.system.api.RemoteSystemService;
|
|
@@ -276,19 +277,20 @@ public class MessageService {
|
|
|
* @desc: 用户消息中心获取
|
|
* @desc: 用户消息中心获取
|
|
|
* @author: yzc
|
|
* @author: yzc
|
|
|
* @date: 2023-09-07 17:41
|
|
* @date: 2023-09-07 17:41
|
|
|
- * @return: java.util.List<com.sckw.message.model.vo.res.UserMsgCenterResVO>
|
|
|
|
|
|
|
+ * @return: com.sckw.message.model.vo.res.UserMsgCenterResVO
|
|
|
*/
|
|
*/
|
|
|
- public List<UserMsgCenterResVO> userMsgCenter() {
|
|
|
|
|
|
|
+ public UserMsgCenterResVO userMsgCenter() {
|
|
|
UserMsgCenterReqDTO dto = new UserMsgCenterReqDTO();
|
|
UserMsgCenterReqDTO dto = new UserMsgCenterReqDTO();
|
|
|
boolean isMain = Objects.equals(LoginUserHolder.getIsMain(), 1);
|
|
boolean isMain = Objects.equals(LoginUserHolder.getIsMain(), 1);
|
|
|
dto.setEntId(isMain ? LoginUserHolder.getEntId() : null);
|
|
dto.setEntId(isMain ? LoginUserHolder.getEntId() : null);
|
|
|
dto.setUserId(isMain ? null : LoginUserHolder.getUserId());
|
|
dto.setUserId(isMain ? null : LoginUserHolder.getUserId());
|
|
|
- List<UserMsgCenterResVO> result = kwmMessageUserService.userMsgCenter(dto);
|
|
|
|
|
- int size = result.size();
|
|
|
|
|
|
|
+ //获取消息列表
|
|
|
|
|
+ List<UserCenterMsgVO> msgList = kwmMessageUserService.userMsgCenter(dto);
|
|
|
|
|
+ int size = msgList.size();
|
|
|
boolean flag = size < 5;
|
|
boolean flag = size < 5;
|
|
|
Set<MessageEnum> excludeEnums = new HashSet<>();
|
|
Set<MessageEnum> excludeEnums = new HashSet<>();
|
|
|
String clientType = LoginUserHolder.getClientType();
|
|
String clientType = LoginUserHolder.getClientType();
|
|
|
- result.forEach(e -> {
|
|
|
|
|
|
|
+ msgList.forEach(e -> {
|
|
|
dto.setStatus(e.getStatus()).setType(e.getType());
|
|
dto.setStatus(e.getStatus()).setType(e.getType());
|
|
|
UserMsgCenterLatestMsgDTO msg = kwmMessageUserService.getLatestMsg(dto);
|
|
UserMsgCenterLatestMsgDTO msg = kwmMessageUserService.getLatestMsg(dto);
|
|
|
if (Objects.nonNull(msg.getUrl())) {
|
|
if (Objects.nonNull(msg.getUrl())) {
|
|
@@ -305,14 +307,19 @@ public class MessageService {
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
});
|
|
});
|
|
|
|
|
+ //补齐默认消息
|
|
|
if (flag) {
|
|
if (flag) {
|
|
|
List<MessageEnum> enums = MessageEnum.getEnums(isMain, 5 - size, excludeEnums);
|
|
List<MessageEnum> enums = MessageEnum.getEnums(isMain, 5 - size, excludeEnums);
|
|
|
enums.forEach(e -> {
|
|
enums.forEach(e -> {
|
|
|
- UserMsgCenterResVO vo = new UserMsgCenterResVO();
|
|
|
|
|
|
|
+ UserCenterMsgVO vo = new UserCenterMsgVO();
|
|
|
vo.setTitle(e.getTitle()).setContent("暂无" + e.getTitle());
|
|
vo.setTitle(e.getTitle()).setContent("暂无" + e.getTitle());
|
|
|
- result.add(vo);
|
|
|
|
|
|
|
+ msgList.add(vo);
|
|
|
});
|
|
});
|
|
|
}
|
|
}
|
|
|
|
|
+ //统计总未读消息条数
|
|
|
|
|
+ Long unReadNum = kwmMessageUserService.count(dto.getEntId(), dto.getUserId(), 0);
|
|
|
|
|
+ UserMsgCenterResVO result = new UserMsgCenterResVO();
|
|
|
|
|
+ result.setMsgList(msgList).setTotalUnReadNum(unReadNum);
|
|
|
return result;
|
|
return result;
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|