Search in sources :

Example 1 with StudyVideo

use of com.moxi.mogublog.commons.entity.StudyVideo in project mogu_blog_v2 by moxi624.

the class ResourceRestApi method getBlogByUid.

@ApiOperation(value = "通过分类来获取视频", notes = "通过Uid获取博客内容")
@GetMapping("/getStudyVideoBySort")
public String getBlogByUid(HttpServletRequest request, @ApiParam(name = "resourceSortUid", value = "资源分类UID", required = false) @RequestParam(name = "resourceSortUid", required = false) String resourceSortUid, @ApiParam(name = "currentPage", value = "当前页数", required = false) @RequestParam(name = "currentPage", required = false, defaultValue = "1") Long currentPage, @ApiParam(name = "pageSize", value = "每页显示数目", required = false) @RequestParam(name = "pageSize", required = false, defaultValue = "8") Long pageSize) {
    QueryWrapper<StudyVideo> queryWrapper = new QueryWrapper<>();
    Page<StudyVideo> page = new Page<>();
    page.setCurrent(currentPage);
    page.setSize(pageSize);
    queryWrapper.eq(SQLConf.STATUS, EStatus.ENABLE);
    // 按点击数降序排列
    queryWrapper.orderByDesc(SQLConf.CLICK_COUNT);
    if (!StringUtils.isEmpty(resourceSortUid)) {
        queryWrapper.eq(SQLConf.RESOURCE_SORT_UID, resourceSortUid);
    }
    IPage<StudyVideo> pageList = studyVideoService.page(page, queryWrapper);
    List<StudyVideo> list = pageList.getRecords();
    // 获取所有的分类
    Set<String> resourceSortUids = new HashSet<>();
    String fileIds = "";
    for (StudyVideo item : list) {
        if (StringUtils.isNotEmpty(item.getResourceSortUid())) {
            resourceSortUids.add(item.getResourceSortUid());
        }
        if (StringUtils.isNotEmpty(item.getFileUid())) {
            fileIds = fileIds + item.getFileUid() + ",";
        }
    }
    // PictureList
    String result = this.pictureFeignClient.getPicture(fileIds, ",");
    List<Map<String, Object>> picList = webUtil.getPictureMap(result);
    // ResourceSort
    Collection<ResourceSort> resourceSortList = resourceSortService.listByIds(resourceSortUids);
    for (StudyVideo item : list) {
        List<String> photoList = new ArrayList<>();
        for (ResourceSort item2 : resourceSortList) {
            if (item.getResourceSortUid().equals(item2.getUid())) {
                item.setResourceSort(item2);
                break;
            }
        }
        for (Map<String, Object> map : picList) {
            // 因为资源可能有多个图片
            String fileUid = item.getFileUid();
            List<String> fileUids = StringUtils.changeStringToString(fileUid, ",");
            for (String uid : fileUids) {
                if (map.get("uid").toString().equals(uid)) {
                    photoList.add(map.get("url").toString());
                }
            }
        }
        item.setPhotoList(photoList);
    }
    log.info("返回结果");
    return ResultUtil.result(SysConf.SUCCESS, pageList);
}
Also used : StudyVideo(com.moxi.mogublog.commons.entity.StudyVideo) QueryWrapper(com.baomidou.mybatisplus.core.conditions.query.QueryWrapper) Page(com.baomidou.mybatisplus.extension.plugins.pagination.Page) IPage(com.baomidou.mybatisplus.core.metadata.IPage) ResourceSort(com.moxi.mogublog.commons.entity.ResourceSort) GetMapping(org.springframework.web.bind.annotation.GetMapping) ApiOperation(io.swagger.annotations.ApiOperation)

Example 2 with StudyVideo

use of com.moxi.mogublog.commons.entity.StudyVideo in project mogu_blog_v2 by moxi624.

the class StudyVideoServiceImpl method getPageList.

@Override
public IPage<StudyVideo> getPageList(StudyVideoVO studyVideoVO) {
    QueryWrapper<StudyVideo> queryWrapper = new QueryWrapper<>();
    if (StringUtils.isNotEmpty(studyVideoVO.getKeyword()) && !StringUtils.isEmpty(studyVideoVO.getKeyword().trim())) {
        queryWrapper.like(SQLConf.NAME, studyVideoVO.getKeyword().trim());
    }
    Page<StudyVideo> page = new Page<>();
    page.setCurrent(studyVideoVO.getCurrentPage());
    page.setSize(studyVideoVO.getPageSize());
    queryWrapper.eq(SQLConf.STATUS, EStatus.ENABLE);
    queryWrapper.orderByDesc(SQLConf.CREATE_TIME);
    IPage<StudyVideo> pageList = studyVideoService.page(page, queryWrapper);
    List<StudyVideo> list = pageList.getRecords();
    final StringBuffer fileUids = new StringBuffer();
    list.forEach(item -> {
        if (StringUtils.isNotEmpty(item.getFileUid())) {
            fileUids.append(item.getFileUid() + SysConf.FILE_SEGMENTATION);
        }
    });
    String pictureResult = null;
    Map<String, String> pictureMap = new HashMap<>();
    if (fileUids != null) {
        pictureResult = this.pictureFeignClient.getPicture(fileUids.toString(), SysConf.FILE_SEGMENTATION);
    }
    List<Map<String, Object>> picList = webUtil.getPictureMap(pictureResult);
    picList.forEach(item -> {
        pictureMap.put(item.get(SysConf.UID).toString(), item.get(SysConf.URL).toString());
    });
    for (StudyVideo item : list) {
        // 获取分类资源
        if (StringUtils.isNotEmpty(item.getFileUid())) {
            List<String> pictureUidsTemp = StringUtils.changeStringToString(item.getFileUid(), SysConf.FILE_SEGMENTATION);
            List<String> pictureListTemp = new ArrayList<>();
            pictureUidsTemp.forEach(picture -> {
                pictureListTemp.add(pictureMap.get(picture));
            });
            item.setPhotoList(pictureListTemp);
        }
        if (StringUtils.isNotEmpty(item.getResourceSortUid())) {
            ResourceSort resourceSort = resourceSortService.getById(item.getResourceSortUid());
            item.setResourceSort(resourceSort);
        }
    }
    pageList.setRecords(list);
    return pageList;
}
Also used : StudyVideo(com.moxi.mogublog.commons.entity.StudyVideo) QueryWrapper(com.baomidou.mybatisplus.core.conditions.query.QueryWrapper) Page(com.baomidou.mybatisplus.extension.plugins.pagination.Page) IPage(com.baomidou.mybatisplus.core.metadata.IPage) ResourceSort(com.moxi.mogublog.commons.entity.ResourceSort)

Example 3 with StudyVideo

use of com.moxi.mogublog.commons.entity.StudyVideo in project mogu_blog_v2 by moxi624.

the class StudyVideoServiceImpl method editStudyVideo.

@Override
public String editStudyVideo(StudyVideoVO studyVideoVO) {
    StudyVideo studyVideo = studyVideoService.getById(studyVideoVO.getUid());
    studyVideo.setName(studyVideoVO.getName());
    studyVideo.setSummary(studyVideoVO.getSummary());
    studyVideo.setContent(studyVideoVO.getContent());
    studyVideo.setFileUid(studyVideoVO.getFileUid());
    studyVideo.setBaiduPath(studyVideoVO.getBaiduPath());
    studyVideo.setResourceSortUid(studyVideoVO.getResourceSortUid());
    studyVideo.setUpdateTime(new Date());
    studyVideo.updateById();
    return ResultUtil.successWithMessage(MessageConf.UPDATE_SUCCESS);
}
Also used : StudyVideo(com.moxi.mogublog.commons.entity.StudyVideo)

Example 4 with StudyVideo

use of com.moxi.mogublog.commons.entity.StudyVideo in project mogu_blog_v2 by moxi624.

the class StudyVideoServiceImpl method addStudyVideo.

@Override
public String addStudyVideo(StudyVideoVO studyVideoVO) {
    StudyVideo studyVideo = new StudyVideo();
    studyVideo.setName(studyVideoVO.getName());
    studyVideo.setSummary(studyVideoVO.getSummary());
    studyVideo.setContent(studyVideoVO.getContent());
    studyVideo.setFileUid(studyVideoVO.getFileUid());
    studyVideo.setBaiduPath(studyVideoVO.getBaiduPath());
    studyVideo.setResourceSortUid(studyVideoVO.getResourceSortUid());
    studyVideo.setClickCount(SysConf.ZERO);
    studyVideo.setUpdateTime(new Date());
    studyVideo.insert();
    return ResultUtil.successWithMessage(MessageConf.INSERT_SUCCESS);
}
Also used : StudyVideo(com.moxi.mogublog.commons.entity.StudyVideo)

Aggregations

StudyVideo (com.moxi.mogublog.commons.entity.StudyVideo)4 QueryWrapper (com.baomidou.mybatisplus.core.conditions.query.QueryWrapper)2 IPage (com.baomidou.mybatisplus.core.metadata.IPage)2 Page (com.baomidou.mybatisplus.extension.plugins.pagination.Page)2 ResourceSort (com.moxi.mogublog.commons.entity.ResourceSort)2 ApiOperation (io.swagger.annotations.ApiOperation)1 GetMapping (org.springframework.web.bind.annotation.GetMapping)1