Procházet zdrojové kódy

bugfix:0306 用户端和商户端评论的数据互通,现在的数据不互通

刘云鑫 před 1 měsícem
rodič
revize
e2254b284b

+ 21 - 6
alien-store/src/main/java/shop/alien/store/service/impl/CommonCommentServiceImpl.java

@@ -195,7 +195,7 @@ public class CommonCommentServiceImpl extends ServiceImpl<CommonCommentMapper, C
 
         Integer i = commonCommentMapper.selectCount(queryWrapper);
         map.put("commentCount", i);
-        getOtherDataWithSourceType(sourceId, sourceType, userId, map);
+        getOtherDataWithSourceType(sourceId, sourceType, userId, userType, map);
         return map;
     }
 
@@ -263,7 +263,7 @@ public class CommonCommentServiceImpl extends ServiceImpl<CommonCommentMapper, C
     }
 
 
-    private void getOtherDataWithSourceType(Integer sourceId, Integer sourceType, String userId, Map<String, Object> map) {
+    private void getOtherDataWithSourceType(Integer sourceId, Integer sourceType, String userId, String userType, Map<String, Object> map) {
         if ( sourceType == CommentSourceTypeEnum.DYNAMIC_COMMENT.getType() ) {
             // 1.计算分析数和喜欢数
             LifeUserDynamics lifeUserDynamics = lifeUserDynamicsMapper.selectOne(new QueryWrapper<LifeUserDynamics>().eq("id", sourceId));
@@ -277,11 +277,26 @@ public class CommonCommentServiceImpl extends ServiceImpl<CommonCommentMapper, C
             // 2.查询商家头像 TODO -> 动态发布的时候id不应该用Store_phone的格式,来不及重构动态的位置,后续等有缘人吧
             StoreUser storeUser = storeUserMapper.selectOne(new QueryWrapper<StoreUser>().eq("phone", lifeUserDynamics.getPhoneId().split("_")[1]));
             map.put("userImage",storeUser.getHeadImg()!= null?storeUser.getHeadImg():"");
-            LifeUser lifeUser = lifeUserMapper.selectById(userId);
+            String fansId = "";
+            int fansType = 1;
+            if ("user".equals(userType)) {
+                LifeUser lifeUser = lifeUserMapper.selectById(userId);
+                if (lifeUser != null) {
+                    fansId = "user_".concat(lifeUser.getUserPhone());
+                    fansType = 1;
+                }
+            } else {
+                StoreUser currentStoreUser = storeUserMapper.selectById(userId);
+                if (currentStoreUser != null) {
+                    fansId = "store_".concat(currentStoreUser.getPhone());
+                    fansType = 2;
+                }
+            }
+
             // 3.查询当前用户是否喜欢
             LifeLikeRecord lifeLikeRecord = lifeLikeRecordMapper.selectOne(new QueryWrapper<LifeLikeRecord>()
                     .eq("type", CommonConstant.LIKE_TYPE_DYNAMICS)
-                    .eq("dianzan_id", "user_".concat(lifeUser.getUserPhone()))
+                    .eq("dianzan_id", fansId)
                     .eq("huifu_id", sourceId)
                     .eq("delete_flag", 0));
             if(null != lifeLikeRecord){
@@ -292,8 +307,8 @@ public class CommonCommentServiceImpl extends ServiceImpl<CommonCommentMapper, C
             // 4.查询当前登录人是否关注了动态发布者
 
             LifeFans lifeFans = lifeFansMapper.selectOne(new QueryWrapper<LifeFans>().eq("followed_id", lifeUserDynamics.getPhoneId())
-                    .eq("fans_id", "user_".concat(lifeUser.getUserPhone()))
-                    .eq("fans_type", 1)
+                    .eq("fans_id", fansId)
+                    .eq("fans_type", fansType)
                     .last("limit 1"));
             if(null != lifeFans){
                 map.put("isFans",1);