From 95f8eda23ff06243e68d33769c5e68f6f6de2c4b Mon Sep 17 00:00:00 2001 From: xiangpei <xiangpei@timesnew.cn> Date: 星期二, 03 六月 2025 16:40:57 +0800 Subject: [PATCH] 视频主页部分接口 --- framework/src/main/java/cn/lili/modules/lmk/domain/form/VideoForm.java | 2 framework/src/main/resources/mapper/lmk/VideoMapper.xml | 40 +++++++++++++++++++ buyer-api/src/main/java/cn/lili/controller/lmk/VideoController.java | 6 +++ framework/src/main/java/cn/lili/modules/lmk/service/VideoService.java | 8 ++++ framework/src/main/java/cn/lili/modules/lmk/service/impl/VideoServiceImpl.java | 18 ++++++++ framework/src/main/java/cn/lili/modules/lmk/mapper/VideoMapper.java | 8 ++++ 6 files changed, 79 insertions(+), 3 deletions(-) diff --git a/buyer-api/src/main/java/cn/lili/controller/lmk/VideoController.java b/buyer-api/src/main/java/cn/lili/controller/lmk/VideoController.java index f9ad281..68671ba 100644 --- a/buyer-api/src/main/java/cn/lili/controller/lmk/VideoController.java +++ b/buyer-api/src/main/java/cn/lili/controller/lmk/VideoController.java @@ -90,4 +90,10 @@ public Result getAuthorVideoPage(AuthorVideoQuery query) { return videoService.getAuthorVideoPage(query); } + + @GetMapping("/author-collect-video-page") + @ApiOperation(value = "鑾峰彇瑙嗛涓婚〉浣滆�呮敹钘忕殑瑙嗛鍒嗛〉", notes = "鑾峰彇瑙嗛涓婚〉浣滆�呮敹钘忕殑瑙嗛鍒嗛〉") + public Result getAuthorCollectVideoPage(AuthorVideoQuery query) { + return videoService.getAuthorCollectVideoPage(query); + } } diff --git a/framework/src/main/java/cn/lili/modules/lmk/domain/form/VideoForm.java b/framework/src/main/java/cn/lili/modules/lmk/domain/form/VideoForm.java index d5a4688..bcf2858 100644 --- a/framework/src/main/java/cn/lili/modules/lmk/domain/form/VideoForm.java +++ b/framework/src/main/java/cn/lili/modules/lmk/domain/form/VideoForm.java @@ -39,7 +39,7 @@ private String title; @ApiModelProperty("瑙嗛灏侀潰") - @NotBlank(message = "瑙嗛灏侀潰涓嶈兘涓虹┖") + @NotBlank(message = "瑙嗛灏侀潰涓嶈兘涓虹┖", groups = {Add.class, Update.class}) private String cover; @ApiModelProperty("瑙嗛鏍囩") diff --git a/framework/src/main/java/cn/lili/modules/lmk/mapper/VideoMapper.java b/framework/src/main/java/cn/lili/modules/lmk/mapper/VideoMapper.java index 0839f17..cbb9fe8 100644 --- a/framework/src/main/java/cn/lili/modules/lmk/mapper/VideoMapper.java +++ b/framework/src/main/java/cn/lili/modules/lmk/mapper/VideoMapper.java @@ -96,4 +96,12 @@ * @param query */ IPage getAuthorVideoPage(IPage page, @Param("query") AuthorVideoQuery query); + + /** + * 鑾峰彇瑙嗛涓婚〉浣滆�呮敹钘忕殑瑙嗛鍒嗛〉 + * + * @param page + * @param query + */ + IPage getAuthorCollectVideoPage(IPage page, @Param("query") AuthorVideoQuery query); } diff --git a/framework/src/main/java/cn/lili/modules/lmk/service/VideoService.java b/framework/src/main/java/cn/lili/modules/lmk/service/VideoService.java index de396a9..0acc5ad 100644 --- a/framework/src/main/java/cn/lili/modules/lmk/service/VideoService.java +++ b/framework/src/main/java/cn/lili/modules/lmk/service/VideoService.java @@ -159,4 +159,12 @@ * @return */ Result getAuthorVideoPage(AuthorVideoQuery query); + + /** + * 鑾峰彇瑙嗛涓婚〉浣滆�呮敹钘忚棰戝垎椤� + * + * @param query + * @return + */ + Result getAuthorCollectVideoPage(AuthorVideoQuery query); } diff --git a/framework/src/main/java/cn/lili/modules/lmk/service/impl/VideoServiceImpl.java b/framework/src/main/java/cn/lili/modules/lmk/service/impl/VideoServiceImpl.java index b77a6df..e712108 100644 --- a/framework/src/main/java/cn/lili/modules/lmk/service/impl/VideoServiceImpl.java +++ b/framework/src/main/java/cn/lili/modules/lmk/service/impl/VideoServiceImpl.java @@ -198,7 +198,7 @@ // 3. 鑾峰彇瑙嗛涓存椂璁块棶鍦板潃銆佽缃棰戞爣绛� page.getRecords().forEach(v -> { v.setTagList(tagMap.get(v.getId())); -// v.setVideoUrl(cosUtil.getPreviewUrl(v.getVideoFileKey())); + v.setCoverUrl(cosUtil.getPreviewUrl(v.getCoverUrl())); }); } return Result.ok().data(page.getRecords()).total(page.getTotal()); @@ -336,6 +336,22 @@ public Result getAuthorVideoPage(AuthorVideoQuery query) { IPage<WxVideoVO> page = PageUtil.getPage(query, WxVideoVO.class); baseMapper.getAuthorVideoPage(page, query); + for (WxVideoVO vo : page.getRecords()) { + vo.setCoverUrl(cosUtil.getPreviewUrl(vo.getCoverUrl())); + vo.setVideoUrl(cosUtil.getPreviewUrl(vo.getVideoUrl())); + } + return Result.ok().data(page.getRecords()).total(page.getTotal()); + } + + @Override + public Result getAuthorCollectVideoPage(AuthorVideoQuery query) { + IPage<WxVideoVO> page = PageUtil.getPage(query, WxVideoVO.class); + baseMapper.getAuthorCollectVideoPage(page, query); + for (WxVideoVO vo : page.getRecords()) { + vo.setCoverUrl(cosUtil.getPreviewUrl(vo.getCoverUrl())); + vo.setVideoUrl(cosUtil.getPreviewUrl(vo.getVideoUrl())); + vo.setCollected(Boolean.TRUE); + } return Result.ok().data(page.getRecords()).total(page.getTotal()); } } diff --git a/framework/src/main/resources/mapper/lmk/VideoMapper.xml b/framework/src/main/resources/mapper/lmk/VideoMapper.xml index 7964dd8..22895cf 100644 --- a/framework/src/main/resources/mapper/lmk/VideoMapper.xml +++ b/framework/src/main/resources/mapper/lmk/VideoMapper.xml @@ -235,6 +235,9 @@ LV.video_duration, LV.video_file_key, LV.title, + LV.goods_id, + LV.goods_view_num, + LV.goods_order_num, LV.recommend, LV.status, LV.play_num, @@ -243,13 +246,48 @@ LV.weight, LV.audit_pass_time, LV.update_time, - LV.id + LV.id, + LM.nick_name as authorName, + LM.face as authorAvatar FROM lmk_video LV + LEFT JOIN li_member LM ON LV.author_id = LM.id WHERE LV.delete_flag = 0 AND LV.status = '1' AND LV.author_id = #{query.authorId} ORDER BY LV.collect_num DESC </select> + <select id="getAuthorCollectVideoPage" resultMap="WxResultMap"> + SELECT + LV.author_id, + LV.cover_url, + LV.video_fit, + LV.video_duration, + LV.video_file_key, + LV.title, + LV.goods_id, + LV.goods_view_num, + LV.goods_order_num, + LV.recommend, + LV.status, + LV.play_num, + LV.comment_num, + LV.collect_num, + LV.weight, + LV.audit_pass_time, + LV.update_time, + LV.id, + LM.nick_name as authorName, + LM.face as authorAvatar + FROM + lmk_my_collect LMC + INNER JOIN lmk_video LV ON LMC.ref_id = LV.id AND LV.delete_flag = 0 AND LV.status = '1' + LEFT JOIN li_member LM ON LV.author_id = LM.id + WHERE + LMC.delete_flag = 0 AND LMC.user_id = #{query.authorId} AND LMC.collect_type = 'video' + ORDER BY + LMC.create_time DESC + </select> + </mapper> -- Gitblit v1.8.0