Эх сурвалжийг харах

修改接口:发布动态,
新增接口:获取草稿列表,点赞列表

lyx 2 долоо хоног өмнө
parent
commit
45fe9457e1

+ 1 - 1
alien-entity/src/main/java/shop/alien/entity/store/LifeCoupon.java

@@ -548,7 +548,7 @@ public class LifeCoupon {
     @TableField("single_can_use")
     private String singleCanUse;
 
-    @ApiModelProperty(value = "适用标识:1:适用范围,2:不适用范围")
+    @ApiModelProperty(value = "适用标识:1:适用范围,2:不适用范围,3:全场适用")
     @TableField("apply_type")
     private String applyType;
 

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

@@ -45,6 +45,11 @@ public class LifeUserDynamics {
     private String address;
 
     /**
+     * 地址名称
+     */
+    private String addressName;
+
+    /**
      * 浏览数
      */
     private Integer liulanCount;

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

@@ -17,7 +17,7 @@ public interface LifeUserDynamicsMapper extends BaseMapper<LifeUserDynamics> {
     @Select("with dynamice as( " +
             "    select id, title, phone_id phoneId, context, image_path, address, liulan_count, dianzan_count, type, created_time, substring_index(phone_id, '_', 1) flag, substring_index(phone_id, '_', -1) phone, draft " +
             "    from life_user_dynamics " +
-            "    where delete_flag = 0 order by created_time desc" +
+            "    where delete_flag = 0 and draft = 0 order by created_time desc" +
             ") " +
             "select dynamice.*, info.store_name userName, img.img_url userImage, info.id storeUserId, user.id storeOrUserId " +
             "from dynamice " +
@@ -41,4 +41,10 @@ public interface LifeUserDynamicsMapper extends BaseMapper<LifeUserDynamics> {
             "and lu.user_phone = (select CONCAT('user_',lu1.user_phone) from life_user lu1 where lu1.id = #{userId})" +
             "${ew.customSqlSegment}")
     List<LifeUserDynamicsVo> getStoreDynamicslist(@Param("userId") String userId, @Param(Constants.WRAPPER) QueryWrapper<LifeUserDynamics> dynamicsWrapper);
+
+    @Select("select lud.*,'1' isLike\n" +
+            "from life_user_dynamics lud \n" +
+            "where lud.delete_flag = 0 \n" +
+            "and lud.id in (select llr.huifu_id from life_like_record llr where llr.dianzan_id = #{phoneId} and llr.delete_flag = 0)")
+    List<LifeUserDynamicsVo> selectDianZanList(String phoneId);
 }

+ 21 - 0
alien-store/src/main/java/shop/alien/store/controller/LifeUserDynamicsController.java

@@ -136,4 +136,25 @@ public class LifeUserDynamicsController {
         log.info("LifeUserDynamicsController.addLiulanShu?id={}", id);
         return lifeUserDynamicsService.addLiulanCount(id);
     }
+
+    @ApiOperation("草稿列表")
+    @ApiOperationSupport(order = 1)
+    @ApiImplicitParams({@ApiImplicitParam(name = "page", value = "分页页数", dataType = "String", paramType = "query", required = true),
+            @ApiImplicitParam(name = "size", value = "分页条数", dataType = "String", paramType = "query", required = true),
+            @ApiImplicitParam(name = "phoneId", value = "用户唯一标识", dataType = "String", paramType = "query")})
+    @GetMapping("/getUserDraftDynamics")
+    public R<IPage<LifeUserDynamics>> getUserDraftDynamics(@RequestParam(defaultValue = "1") Integer page,
+                                                        @RequestParam(defaultValue = "10") Integer size,
+                                                        @RequestParam(required = false) String phoneId) {
+        log.info("LifeUserDynamicsController.getUserDraftDynamics?page={}&size={}&phoneId={}", page, size, phoneId);
+        List<LifeUserDynamics> stores = lifeUserDynamicsService.getUserDraftDynamics(phoneId);
+        return R.data(ListToPage.setPage(stores, page, size));
+    }
+
+    @ApiOperation("点赞列表")
+    @ApiOperationSupport(order = 2)
+    @GetMapping("/getDianZanList")
+    public R<List<LifeUserDynamicsVo>> getDianZanList(@RequestParam(required = false) String phoneId) {
+        return R.data(lifeUserDynamicsService.getDianZanList(phoneId));
+    }
 }

+ 26 - 0
alien-store/src/main/java/shop/alien/store/service/LifeUserDynamicsService.java

@@ -156,6 +156,7 @@ public class LifeUserDynamicsService extends ServiceImpl<LifeUserDynamicsMapper,
         List<StoreCommentVo> sonCommitCount = storeCommentMapper.getSonCommitCount(2, null);
 
         // 设置动态对象的状态信息:是否关注对方、是否被关注、是否点赞及评论数量
+        // 设置.imagePath。视频为mp4+jpg格式,图片为jpg/png格式。
         for (LifeUserDynamicsVo vo : lifeUserDynamicsVoList) {
             if (followList.contains(vo.getPhoneId())) {
                 vo.setIsFollowThis("1");
@@ -185,6 +186,10 @@ public class LifeUserDynamicsService extends ServiceImpl<LifeUserDynamicsMapper,
                 }
                 vo.setCommentCount(count);
             }
+            // 默认视频上传的imagePath正确,图片则取第一个
+            if(vo.getImagePath().contains(",") && !vo.getImagePath().contains(".mp4")){
+                vo.setImagePath(vo.getImagePath().split(",")[0]);
+            }
         }
 
         // 如果phoneId不为空,处理黑名单逻辑,过滤掉被拉黑用户的动态
@@ -413,4 +418,25 @@ public class LifeUserDynamicsService extends ServiceImpl<LifeUserDynamicsMapper,
         }
         return resultMap;
     }
+
+    public List<LifeUserDynamics> getUserDraftDynamics(String phoneId) {
+        List<LifeUserDynamics> lifeUserDynamics = lifeUserDynamicsMapper.selectList(new QueryWrapper<LifeUserDynamics>().eq("phone_id", phoneId).eq("draft", 1));
+//        for (LifeUserDynamics lifeUserDynamic : lifeUserDynamics) {
+//            if(lifeUserDynamic.getImagePath().contains(",") && !lifeUserDynamic.getImagePath().contains(".mp4")){
+//                lifeUserDynamic.setImagePath(lifeUserDynamic.getImagePath().split(",")[0]);
+//            }
+//        }
+        return lifeUserDynamics;
+    }
+
+    public List<LifeUserDynamicsVo> getDianZanList(String phoneId) {
+        List<LifeUserDynamicsVo> lifeUserDynamicsVos = lifeUserDynamicsMapper.selectDianZanList(phoneId);
+        for (LifeUserDynamicsVo lifeUserDynamicsVo : lifeUserDynamicsVos) {
+            if(lifeUserDynamicsVo.getImagePath().contains(",") && !lifeUserDynamicsVo.getImagePath().contains(".mp4")){
+                lifeUserDynamicsVo.setImagePath(lifeUserDynamicsVo.getImagePath().split(",")[0]);
+            }
+        }
+
+        return  lifeUserDynamicsVos;
+    }
 }