浏览代码

聊天列表新增字段判断订单是否有效

zc 3 月之前
父节点
当前提交
cdce5640fb

+ 2 - 2
alien-entity/src/main/java/shop/alien/entity/store/vo/LifeMessageVo.java

@@ -54,6 +54,6 @@ public class LifeMessageVo extends LifeMessage {
     @ApiModelProperty(value = "发送方图片展示")
     private String senderImg;
 
-    @ApiModelProperty(value = "是否允许继续聊天")
-    private Boolean canChat;
+    @ApiModelProperty(value = "是否允许继续聊天(1-允许,0-不允许)")
+    private String canChat;
 }

+ 11 - 6
alien-store/src/main/java/shop/alien/store/service/impl/LifeMessageServiceImpl.java

@@ -104,7 +104,7 @@ public class LifeMessageServiceImpl extends ServiceImpl<LifeMessageMapper, LifeM
                             .eq("phone", receiverId.substring(7)));
                     currentLawyerId = currentLawyer != null ? currentLawyer.getId() : null;
                 }
-                Map<String, Boolean> chatEnabledCache = new HashMap<>();
+                Map<String, String> chatEnabledCache = new HashMap<>();
 
                 // 当前用户的所有关注
                 LambdaQueryWrapper<LifeFans> followWrapper = new LambdaQueryWrapper<>();
@@ -134,7 +134,7 @@ public class LifeMessageServiceImpl extends ServiceImpl<LifeMessageMapper, LifeM
                 List<String> notDisturbList = lifeMessageNotDisturbMapper.selectList(notDisturbWrapper).stream().map(LifeMessageNotDisturb::getNotDisturbId).collect(Collectors.toList());
 
                 for (LifeMessageVo messageVo : lifeMessagePageList) {
-                    messageVo.setCanChat(true);
+                    messageVo.setCanChat("1");
                     String messagePhoneId = messageVo.getPhoneId();
                     if (messagePhoneId != null && (currentIsUser || currentIsLawyer)) {
                         if (currentIsUser && messagePhoneId.startsWith("lawyer_")) {
@@ -199,9 +199,9 @@ public class LifeMessageServiceImpl extends ServiceImpl<LifeMessageMapper, LifeM
         }
     }
 
-    private boolean isChatEnabled(Integer userId, Integer lawyerId, Map<String, Boolean> cache) {
+    private String isChatEnabled(Integer userId, Integer lawyerId, Map<String, String> cache) {
         if (userId == null || lawyerId == null) {
-            return true;
+            return "1";
         }
         String cacheKey = userId + "_" + lawyerId;
         if (cache.containsKey(cacheKey)) {
@@ -221,8 +221,13 @@ public class LifeMessageServiceImpl extends ServiceImpl<LifeMessageMapper, LifeM
                     && !Objects.equals(status, LawyerStatusEnum.CANCEL.getStatus())
                     && !Objects.equals(status, LawyerStatusEnum.REFUNDED.getStatus());
         }
-        cache.put(cacheKey, enabled);
-        return enabled;
+        String chatStr = "1";
+        if(!enabled){
+            chatStr = "0";
+        }
+
+        cache.put(cacheKey, chatStr);
+        return chatStr;
     }
 
     @Override