puzhibing
2025-06-18 3e7932d378b607f75379b463ae4ae2f4f1ccfe12
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
package com.ruoyi.goods.service.biz;
 
import cn.hutool.core.collection.CollUtil;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.goods.domain.dto.XiaoeCourseQueryDto;
import com.ruoyi.goods.domain.vo.XiaoeCourseChapterVO;
import com.ruoyi.goods.domain.vo.XiaoeCourseGroupVO;
import com.ruoyi.goods.domain.vo.XiaoeCourseVO;
import com.ruoyi.goods.utils.XiaoeUtils;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
 
import java.util.Arrays;
import java.util.Collections;
import java.util.HashSet;
import java.util.List;
import java.util.Optional;
import java.util.Set;
import java.util.stream.Collectors;
 
/**
 * @author mitao
 * @date 2025/1/10
 */
@Service
@RequiredArgsConstructor
public class XiaoeCourseService {
    private final XiaoeUtils xiaoeUtils;
 
    /**
     * 课程列表
     * @param dto
     * @param appletFlag 是否小程序端 1:是 0:否
     * @return
     */
    public Page<XiaoeCourseVO> getCoursePageList(XiaoeCourseQueryDto dto, Integer appletFlag) {
        if (1 == appletFlag && CollUtil.isEmpty(dto.getTags())) {
            dto.setTags(Arrays.asList("20275808", "20275805", "20275707", "20249173", "2406002"));
        }
        return xiaoeUtils.getCoursePageList(dto);
    }
 
    /**
     * 获取课程章节详情
     * @param id
     * @return
     */
    public List<XiaoeCourseChapterVO> getCourseDetail(String id) {
        return xiaoeUtils.getCourseChapterDetail(id);
    }
 
    /**
     * 获取课程分组列表
     * @Param appletFlag 是否为小程序端 1:是 0:否
     * @return
     */
    public List<XiaoeCourseGroupVO> getCourseGroupList(Integer appletFlag) {
        List<XiaoeCourseGroupVO> courseGroupList = Optional.ofNullable(xiaoeUtils.getCourseGroupList()).orElse(Collections.emptyList());
        if (1 == appletFlag) {
            //健康评估:20275808 中医手法小妙招:20275805 女性呵护:20275707 饮食/运动:20249173 节气小贴士:2406002
            Set<String> permissionList = new HashSet<>(Arrays.asList("20275808", "20275805", "20275707", "20249173", "2406002"));
            courseGroupList = courseGroupList.stream().filter(item -> permissionList.contains(item.getId())).collect(Collectors.toList());
        }
        return courseGroupList;
    }
}