xiangpei
6 天以前 288ce585418550bbf2fd898fc01bc2ff9245f960
framework/src/main/java/cn/lili/modules/lmk/service/impl/VideoServiceImpl.java
@@ -55,6 +55,7 @@
    private final MemberService memberService;
    private final VideoAccountService videoAccountService;
    private final KitchenVideoTypeRefService kitchenVideoTypeRefService;
    private final VideoGoodsService videoGoodsService;
    /**
@@ -187,8 +188,21 @@
            return videoTagRef;
        }).collect(Collectors.toList());
        videoTagRefService.saveBatch(videoTagRefs);
        // 3.保存视频文件信息
        // 3. 保存视频文件信息
        lmkFileService.addByForm(form.getFileInfo());
        // 4. 处理选择的商品
        if (CollectionUtils.isNotEmpty(form.getGoodsList())) {
            List<VideoGoods> videoGoods = new ArrayList<>(2);
            for (int i = 0; i < form.getGoodsList().size(); i++) {
                VideoGoods e = new VideoGoods();
                e.setVideoId(video.getId());
                e.setGoodsId(form.getGoodsList().get(i).getGoodsId());
                e.setGoodsNum(form.getGoodsList().get(i).getGoodsNum());
                e.setOrderNum(i);
                videoGoods.add(e);
            }
            videoGoodsService.saveBatch(videoGoods);
        }
        return Result.ok("发布成功,视频审核中~");
    }
@@ -202,7 +216,7 @@
        if (page.getTotal() > 0) {
            Map<String, List<SimpleVideoTagVO>> tagMap = videoTagRefService.getTagsByVideoIds(
                    page.getRecords().stream().map(VideoVO::getId).collect(Collectors.toList())
            ).stream().collect(Collectors.groupingBy(SimpleVideoTagVO::getVideoId));;
            ).stream().collect(Collectors.groupingBy(SimpleVideoTagVO::getVideoId));
            // 3. 获取视频临时访问地址、设置视频标签
            page.getRecords().forEach(v -> {
                v.setTagList(tagMap.get(v.getId()));
@@ -300,17 +314,35 @@
            List<String> subscribes = mySubscribeService.getSubscribesByUserId(UserContext.getCurrentUserId());
            // 3. 获取视频临时访问地址、设置视频标签、我是否收藏、作者是否关注
            page.getRecords().forEach(v -> {
                v.setGoods(new VideoGoodsVO());
                v.setTagList(tagMap.get(v.getId()));
                v.setCollected(CollectionUtils.isNotEmpty(collectMap.get(v.getId())));
                if (VideoContentTypeEnum.VIDEO.getValue().equals(v.getVideoContentType())) {
                    //                v.setVideoUrl(cosUtil.getPreviewUrl(v.getVideoFileKey()));
                    v.setVideoUrl("https://videos.pexels.com/video-files/13602965/13602965-hd_1920_1080_30fps.mp4");
                                    v.setVideoUrl(cosUtil.getPreviewUrl(v.getVideoFileKey()));
//                    v.setVideoUrl("https://videos.pexels.com/video-files/13602965/13602965-hd_1920_1080_30fps.mp4");
                } else if (VideoContentTypeEnum.IMG.getValue().equals(v.getVideoContentType()) && StringUtils.isNotBlank(v.getVideoImgs())) {
                    v.setImgs(JSON.parseArray(v.getVideoImgs(), String.class).stream().map(fileKey -> cosUtil.getPreviewUrl(fileKey)).collect(Collectors.toList()));
                }
                v.setCoverUrl(cosUtil.getPreviewUrl(v.getCoverFileKey()));
                v.setSubscribeThisAuthor(subscribes.contains(v.getAuthorId()));
            });
        }
        return Result.ok().data(page.getRecords());
    }
    @Override
    public Result healthRecommendVideo(WxHealthVideoQuery query) {
        IPage<WxVideoVO> page = PageUtil.getPage(query, WxVideoVO.class);
        //获取大健康视频列表
                baseMapper.recommendHealthVideo(page,query);
        if (page.getTotal() > 0) {
            page.getRecords().forEach(v -> {
                if (VideoContentTypeEnum.VIDEO.getValue().equals(v.getVideoContentType())) {
                    v.setVideoUrl(cosUtil.getPreviewUrl(v.getVideoFileKey()));
//                    v.setVideoUrl("https://videos.pexels.com/video-files/13602965/13602965-hd_1920_1080_30fps.mp4");
                } else if (VideoContentTypeEnum.IMG.getValue().equals(v.getVideoContentType()) && StringUtils.isNotBlank(v.getVideoImgs())) {
                    v.setImgs(JSON.parseArray(v.getVideoImgs(), String.class).stream().map(cosUtil::getPreviewUrl).collect(Collectors.toList()));
                }
                v.setCoverUrl(cosUtil.getPreviewUrl(v.getCoverFileKey()));
            });
        }
        return Result.ok().data(page.getRecords());
@@ -390,6 +422,12 @@
    }
    @Override
    public Result getGoodsDetail(String videoId) {
        List<VideoGoodsDetailVO> goodsList = baseMapper.getVideoGoods(videoId);
        return Result.ok().data(goodsList);
    }
    @Override
    @Transactional(rollbackFor = Exception.class)
    public Result homePageInfoEdit(VideoHomePageInfoForm form) {
        new LambdaUpdateChainWrapper<>(memberService.getBaseMapper())