diff --git a/bonus-modules/bonus-material-mall/src/main/java/com/bonus/material/basic/service/impl/BmMessageServiceImpl.java b/bonus-modules/bonus-material-mall/src/main/java/com/bonus/material/basic/service/impl/BmMessageServiceImpl.java index 5353dad..7188084 100644 --- a/bonus-modules/bonus-material-mall/src/main/java/com/bonus/material/basic/service/impl/BmMessageServiceImpl.java +++ b/bonus-modules/bonus-material-mall/src/main/java/com/bonus/material/basic/service/impl/BmMessageServiceImpl.java @@ -1,5 +1,6 @@ package com.bonus.material.basic.service.impl; +import java.util.ArrayList; import java.util.List; import java.util.UUID; import java.util.concurrent.TimeUnit; @@ -52,9 +53,12 @@ public class BmMessageServiceImpl implements IBmMessageService { @Override public List selectBmMessageListFromCache(BmMessage bmMessage) { - List bmMessages = redisService.getCacheList(MaterialConstants.CACHE_MATERIAL_MALL_MESSAGE); Long companyId = SecurityUtils.getLoginUser().getSysUser().getCompanyId(); - List result = bmMessages.stream().filter(o -> companyId.equals(o.getFromCompany()) || companyId.equals(o.getToCompany())).collect(Collectors.toList()); + List fromMessages = redisService.getCacheList(MaterialConstants.CACHE_MATERIAL_MALL_MESSAGE + companyId); + List toMessages = redisService.getCacheList(MaterialConstants.CACHE_MATERIAL_MALL_MESSAGE + bmMessage.getToCompany()); + List result = new ArrayList<>(); + result.addAll(fromMessages); + result.addAll(toMessages); return result; } @@ -68,10 +72,11 @@ public class BmMessageServiceImpl implements IBmMessageService { public int insertBmMessage(BmMessage bmMessage) { bmMessage.setCreateTime(DateUtils.getNowDate()); try { - bmMessage.setFromCompany(SecurityUtils.getLoginUser().getSysUser().getCompanyId()); + Long companyId = SecurityUtils.getLoginUser().getSysUser().getCompanyId(); + bmMessage.setFromCompany(companyId); bmMessage.setFromUser(SecurityUtils.getLoginUser().getSysUser().getUserId()); bmMessage.setUuid(String.valueOf(UUID.randomUUID())); - String msgKey = MaterialConstants.CACHE_MATERIAL_MALL_MESSAGE; + String msgKey = MaterialConstants.CACHE_MATERIAL_MALL_MESSAGE + companyId; String msgContent = JSONObject.toJSONString(bmMessage); redisService.setCacheObject(msgKey, msgContent, MaterialConstants.CACHE_MATERIAL_MALL_MESSAGE_HOURS, TimeUnit.HOURS); return bmMessageMapper.insertBmMessage(bmMessage);