无关风月
1 天以前 c97ae0369607c7091041273012b291d3b6e6bdc1
ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/controller/TSubjectController.java
@@ -14,9 +14,12 @@
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.StringUtils;
import org.springframework.web.bind.annotation.*;
import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;
/**
 * <p>
@@ -50,13 +53,45 @@
    @Autowired
    private ITStudyService studyService;
    @Autowired
    private ICategoryService categoryService;
    @PostMapping("/subjectList")
//    @ApiOperation(value = "列表查询", tags = {"题目管理"})
    @ApiOperation(value = "列表查询", tags = {"题目管理"})
    public R<PageInfo<SubjectVO>> subjectList(@RequestBody SubjectQuery query) {
        PageInfo<SubjectVO> res = new PageInfo<>(query.getPageNumber(), query.getPageSize());
        List<Integer> integers = new ArrayList<>();
        if (StringUtils.hasLength(query.getCategoryName())) {
            // 查询分类id包含的
            List<Integer> collect = categoryService.lambdaQuery().eq(TCategory::getState, 1)
                    .eq(TCategory::getType, 1)
                    .like(TCategory::getName, query.getCategoryName()).list()
                    .stream().map(TCategory::getId).collect(Collectors.toList());// 查询分类id包含的
            List<Integer> collect2 = categoryService.lambdaQuery().eq(TCategory::getState, 1)
                    .eq(TCategory::getType, 2)
                    .like(TCategory::getName, query.getCategoryName()).list()
                    .stream().map(TCategory::getId).collect(Collectors.toList());
            collect.addAll(collect2);
            if (collect2.isEmpty()) {
                if (collect.isEmpty()) {
                    collect.add(-1);
                }
                integers = collect;
            }else{
                integers = collect2;
            }
        }
        query.setIds(integers);
        List<SubjectVO> list =  subjectService.listAll(query);
        for (SubjectVO subjectVO : list) {
            if (subjectVO.getFirstCategory()!=null&&subjectVO.getSecondCategory()!=null){
                TCategory byId1 = categoryService.getById(subjectVO.getFirstCategory());
                TCategory byId2 = categoryService.getById(subjectVO.getSecondCategory());
                if (byId1!=null&& byId2!=null){
                    subjectVO.setCategoryName(byId1.getName()+"-"+byId2.getName());
                }
            }
//            StringBuilder stringBuilder = new StringBuilder("");
//            for (String s : subjectVO.getType().split(",")) {
//                switch (s) {
@@ -86,7 +121,7 @@
        return R.ok(res);
    }
    @PostMapping("/add")
//    @ApiOperation(value = "添加", tags = {"题目管理"})
    @ApiOperation(value = "添加", tags = {"题目管理"})
    public R add(@RequestBody SubjectDTO dto) {
        TSubject tSubject = new TSubject();
        BeanUtils.copyProperties(dto,tSubject);
@@ -94,7 +129,7 @@
        return R.ok("添加成功");
    }
    @PostMapping("/update")
//    @ApiOperation(value = "编辑", tags = {"题目管理"})
    @ApiOperation(value = "编辑", tags = {"题目管理"})
    public R update(@RequestBody SubjectDTO dto) {
        TSubject tSubject = new TSubject();
        // 判断当前题目有没有被使用
@@ -118,7 +153,7 @@
                    if (s.equals(String.valueOf(id))) {
                        Integer week = tStudyListen.getWeek();
                        Integer day = tStudyListen.getDay();
                        return R.fail("操作失败,当前题目在" + "周目" + week + "、" + "day" + day + "、" + "听音选图中使用");
                        return R.failUpdate("操作失败,当前题目在" + "周目" + week + "、" + "day" + day + "、" + "听音选图中使用");
                    }
                }
            }
@@ -130,7 +165,7 @@
                    if (s.equals(String.valueOf(id))) {
                        Integer week = tStudyListen.getWeek();
                        Integer day = tStudyListen.getDay();
                        return R.fail("操作失败,当前题目在" + "周目" + week + "、" + "day" + day + "、" + "看图选音中使用");
                        return R.failUpdate("操作失败,当前题目在" + "周目" + week + "、" + "day" + day + "、" + "看图选音中使用");
                    }
                }
            }
@@ -142,7 +177,7 @@
                    if (s.equals(String.valueOf(id))) {
                        Integer week = tStudyListen.getWeek();
                        Integer day = tStudyListen.getDay();
                        return R.fail("操作失败,当前题目在" + "周目" + week + "、" + "day" + day + "、" + "归纳排除中使用");
                        return R.failUpdate("操作失败,当前题目在" + "周目" + week + "、" + "day" + day + "、" + "归纳排除中使用");
                    }
                }
            }
@@ -154,7 +189,7 @@
                if (subject.equals(id) || answerSubject.equals(id)) {
                    Integer week = tStudyListen.getWeek();
                    Integer day = tStudyListen.getDay();
                    return R.fail("操作失败,当前题目在" + "周目" + week + "、" + "day" + day + "、" + "有问有答中使用");
                    return R.failUpdate("操作失败,当前题目在" + "周目" + week + "、" + "day" + day + "、" + "有问有答中使用");
                }
            }
        }
@@ -165,7 +200,7 @@
                    if (s.equals(String.valueOf(id))) {
                        Integer week = tStudyListen.getWeek();
                        Integer day = tStudyListen.getDay();
                        return R.fail("操作失败,当前题目在" + "周目" + week + "、" + "day" + day + "、" + "音图相配中使用");
                        return R.failUpdate("操作失败,当前题目在" + "周目" + week + "、" + "day" + day + "、" + "音图相配中使用");
                    }
                }
            }