From f9545167b86415ce6933f64679a198fb34696661 Mon Sep 17 00:00:00 2001 From: "liang.chao" <1360241448@qq.com> Date: Mon, 23 Dec 2024 19:01:32 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B6=88=E6=81=AF=E7=AE=A1=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../material/basic/domain/BmMessage.java | 4 ++-- .../service/impl/BmMessageServiceImpl.java | 23 +++++++++---------- 2 files changed, 13 insertions(+), 14 deletions(-) diff --git a/bonus-modules/bonus-material-mall/src/main/java/com/bonus/material/basic/domain/BmMessage.java b/bonus-modules/bonus-material-mall/src/main/java/com/bonus/material/basic/domain/BmMessage.java index c0e37ef..8286f3e 100644 --- a/bonus-modules/bonus-material-mall/src/main/java/com/bonus/material/basic/domain/BmMessage.java +++ b/bonus-modules/bonus-material-mall/src/main/java/com/bonus/material/basic/domain/BmMessage.java @@ -60,7 +60,7 @@ public class BmMessage extends BaseEntity { /** 来自companyName */ @Excel(name = "来自companyName") @ApiModelProperty(value = "来自companyName") - private Long fromCompanyName; + private String fromCompanyName; /** 发给companyId */ @Excel(name = "发给companyId") @@ -70,7 +70,7 @@ public class BmMessage extends BaseEntity { /** 发给companyName */ @Excel(name = "发给companyName") @ApiModelProperty(value = "发给companyName") - private Long toCompanyName; + private String toCompanyName; @ApiModelProperty(value = "是否已读(0:未读 1:已读)") private Integer isRead; 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 3006685..efb9cbb 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 @@ -68,17 +68,10 @@ public class BmMessageServiceImpl implements IBmMessageService { list.addAll(arrayCache.toList(BmMessage.class)); }); List result = list.stream().filter(o -> companyId.equals(o.getFromCompany()) || companyId.equals(o.getToCompany())).collect(Collectors.toList()); -// Optional result2 = result.stream().min(Comparator.comparing(BmMessage::getCreateTime).reversed()); -// if (result2.isPresent()) { -// BmMessage message = result2.get(); -// // 现在你可以使用message对象 -// // 如果你真的需要一个List,尽管这里只有一个元素,你可以这样做: -// List singleElementList = Collections.singletonList(message); -// return singleElementList; -// }else { -// return new ArrayList<>(); -// } - return result; + List sortedList = result.stream() + .sorted(Comparator.comparing(BmMessage::getCreateTime)) + .collect(Collectors.toList()); + return sortedList.subList(0,1); } public List selectBmMessageListFromCacheOne(BmMessage bmMessage) { @@ -93,7 +86,10 @@ public class BmMessageServiceImpl implements IBmMessageService { JSONArray arrayCache = SpringUtils.getBean(RedisService.class).getCacheObject(t); list.addAll(arrayCache.toList(BmMessage.class)); }); - return list; + List sortedList = list.stream() + .sorted(Comparator.comparing(t -> t.getCreateTime())) + .collect(Collectors.toList()); + return sortedList; } /** @@ -112,6 +108,9 @@ public class BmMessageServiceImpl implements IBmMessageService { bmMessage.setUuid(String.valueOf(UUID.randomUUID())); String msgKey = MaterialConstants.CACHE_MATERIAL_MALL_MESSAGE + companyId + ":" + bmMessage.getToCompany(); JSONArray arrayCache = SpringUtils.getBean(RedisService.class).getCacheObject(msgKey); + if (arrayCache == null){ + arrayCache = new JSONArray(); + } List list = arrayCache.toList(BmMessage.class); list.add(bmMessage); (SpringUtils.getBean(RedisService.class)).setCacheObject(msgKey, list, MaterialConstants.CACHE_MATERIAL_MALL_MESSAGE_HOURS, TimeUnit.HOURS);