Parcourir la source

Merge remote-tracking branch 'origin/master'

lyx il y a 2 mois
Parent
commit
73c0831d98

+ 5 - 0
alien-entity/src/main/java/shop/alien/entity/store/vo/LifeUserDynamicsVo.java

@@ -7,6 +7,8 @@ import lombok.Data;
 import lombok.NoArgsConstructor;
 import shop.alien.entity.store.LifeUserDynamics;
 
+import java.util.List;
+
 @Data
 @JsonInclude
 @NoArgsConstructor
@@ -60,4 +62,7 @@ public class LifeUserDynamicsVo extends LifeUserDynamics {
 
     @ApiModelProperty(value = "动态类型1-图片 2-视频 3-其他")
     private String dynamicsType;
+
+    @ApiModelProperty(value = "动态图片列表")
+    private List<String> imagePathList;
 }

+ 3 - 3
alien-entity/src/main/java/shop/alien/mapper/LifeUserDynamicsMapper.java

@@ -14,8 +14,8 @@ import java.util.List;
 @Mapper
 public interface LifeUserDynamicsMapper extends BaseMapper<LifeUserDynamics> {
 
-    @Select("with dynamice as( " +
-            "    select id, title, phone_id phoneId, context, image_path, address,address_name,address_context, liulan_count, dianzan_count, type, created_time, substring_index(phone_id, '_', 1) flag, substring_index(phone_id, '_', -1) phone, draft , address_province" +
+    @Select("select dyna1.* from (with dynamice as( " +
+            "    select id, top_status, top_time,  title, phone_id phoneId, context, image_path, address,address_name,address_context, liulan_count, dianzan_count, type, created_time, substring_index(phone_id, '_', 1) flag, substring_index(phone_id, '_', -1) phone, draft , address_province" +
             "    from life_user_dynamics " +
             "    where delete_flag = 0 and draft = 0 order by created_time desc" +
             ") " +
@@ -30,7 +30,7 @@ public interface LifeUserDynamicsMapper extends BaseMapper<LifeUserDynamics> {
             "from dynamice " +
             "join life_user user on dynamice.phone = user.user_phone and user.delete_flag = 0 " +
             "left join life_user_expert  lue on lue.user_id = user.id and lue.delete_flag = 0 " +
-            "where dynamice.flag = 'user'")
+            "where dynamice.flag = 'user') dyna1 order by dyna1.top_status desc, dyna1.top_time desc, created_time desc")
     List<LifeUserDynamicsVo> getLifeUserDynamicsList();
 
     @Select("select lud.id ,lud.image_path,lud.context,lu.user_image,lu.user_name,IF(llr.huifu_id IS NOT NULL, 1, 0) AS isLike\n" +

+ 6 - 1
alien-entity/src/main/resources/mapper/LifeUserDynamicsMapper.xml

@@ -58,7 +58,12 @@
         select dyna1.*, COUNT(dyna1.id) AS fansCount from (
         select dyna.*,COUNT(lc.id) AS commentCount,  COUNT(lm.id) AS transferNum from (
         with dynamice as(
-        select id, title, phone_id phoneId, context, image_path, address,address_name,address_context, liulan_count, dianzan_count, type, created_time, substring_index(phone_id, '_', 1) userType, substring_index(phone_id, '_', -1) phone, draft , address_province, top_status, top_time, enable_status
+        select
+        CASE
+        WHEN image_path REGEXP '.mp4|.avi|.flv|.mkv|.rmvb|.wmv|.3gp|.mov' THEN 2
+        WHEN image_path REGEXP '.jpg|.jpeg|.png|.bmp|.webp|.gif|.svg' THEN 1
+        ELSE 0
+        END AS dynamicsType, id, title, phone_id phoneId, context, image_path, address,address_name,address_context, liulan_count, dianzan_count, type, created_time, substring_index(phone_id, '_', 1) userType, substring_index(phone_id, '_', -1) phone, draft , address_province, top_status, top_time, enable_status
         from life_user_dynamics
         where id = #{id} and delete_flag = 0 and draft = 0 order by created_time desc
         )

+ 15 - 4
alien-store/src/main/java/shop/alien/store/service/LifeUserDynamicsService.java

@@ -62,7 +62,12 @@ public class LifeUserDynamicsService extends ServiceImpl<LifeUserDynamicsMapper,
             LambdaUpdateWrapper<LifeUserDynamics> lambdaUpdateWrapper = new LambdaUpdateWrapper<>();
             lambdaUpdateWrapper.eq(LifeUserDynamics::getId, lifeUserDynamicsVo.getId());
             lambdaUpdateWrapper.set(LifeUserDynamics::getTopStatus, lifeUserDynamicsVo.getTopStatus());
-            lambdaUpdateWrapper.set(LifeUserDynamics::getTopTime, new Date());
+            if(lifeUserDynamicsVo.getTopStatus() == 0){
+                lambdaUpdateWrapper.set(LifeUserDynamics::getTopTime, null);
+            } else{
+                lambdaUpdateWrapper.set(LifeUserDynamics::getTopTime, new Date());
+
+            }
             return lifeUserDynamicsMapper.update(null, lambdaUpdateWrapper);
         } else {
             return 0;
@@ -259,7 +264,7 @@ public class LifeUserDynamicsService extends ServiceImpl<LifeUserDynamicsMapper,
         }
 
         // 最后按照创建时间倒序排序
-        lifeUserDynamicsVoList = lifeUserDynamicsVoList.stream().sorted(Comparator.comparing(LifeUserDynamicsVo::getCreatedTime).reversed()).collect(Collectors.toList());
+//        lifeUserDynamicsVoList = lifeUserDynamicsVoList.stream().sorted(Comparator.comparing(LifeUserDynamicsVo::getCreatedTime).reversed()).collect(Collectors.toList());
 
         return lifeUserDynamicsVoList;
     }
@@ -483,10 +488,16 @@ public class LifeUserDynamicsService extends ServiceImpl<LifeUserDynamicsMapper,
 
     public LifeUserDynamicsVo getDynamicsDetail(Integer id) {
         // 查询动态数据并按类型过滤
+        LifeUserDynamicsVo lifeUserDynamicsVo = new LifeUserDynamicsVo();
         List<LifeUserDynamicsVo> lifeUserDynamicsVoList = lifeUserDynamicsMapper.getDynamicsDetail(id);
         if(!CollectionUtils.isEmpty(lifeUserDynamicsVoList)){
-            return lifeUserDynamicsVoList.get(0);
+            lifeUserDynamicsVo = lifeUserDynamicsVoList.get(0);
+            String imagePath = lifeUserDynamicsVo.getImagePath();
+            if(!StringUtils.isEmpty(imagePath)){
+                List<String> imagePathList = Arrays.asList(imagePath.split(","));
+                lifeUserDynamicsVo.setImagePathList(imagePathList);
+            }
         }
-        return new LifeUserDynamicsVo();
+        return lifeUserDynamicsVo;
     }
 }