From 5de4a49148636dce6568d37e4c62039934b0a188 Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期三, 22 十月 2025 16:36:34 +0800
Subject: [PATCH] bug修改
---
ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/controller/TSubjectController.java | 67 ++++++++++++++++++++++++++++-----
1 files changed, 56 insertions(+), 11 deletions(-)
diff --git a/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/controller/TSubjectController.java b/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/controller/TSubjectController.java
index 5ac03e0..b580b79 100644
--- a/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/controller/TSubjectController.java
+++ b/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/controller/TSubjectController.java
@@ -3,6 +3,7 @@
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.web.page.PageInfo;
+import com.ruoyi.management.api.feignClient.ManagementClient;
import com.ruoyi.study.domain.*;
import com.ruoyi.study.dto.SubjectDTO;
import com.ruoyi.study.dto.SubjectQuery;
@@ -13,9 +14,13 @@
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.Map;
+import java.util.stream.Collectors;
/**
* <p>
@@ -49,12 +54,50 @@
@Autowired
private ITStudyService studyService;
+ @Autowired
+ private ICategoryService categoryService;
+
@PostMapping("/subjectList")
@ApiOperation(value = "列表查询", tags = {"题目管理"})
public R<PageInfo<SubjectVO>> subjectList(@RequestBody SubjectQuery query) {
PageInfo<SubjectVO> res = new PageInfo<>(query.getPageNumber(), query.getPageSize());
- List<SubjectVO> list = subjectService.listAll(query);
+ List<Integer> integers = new ArrayList<>();
+ int type=0;
+ 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);
+ }
+ type=1;
+ integers = collect;
+ }else{
+ type=2;
+ integers = collect2;
+ }
+ }
+
+ query.setIds(integers);
+ List<SubjectVO> list = subjectService.listAll(query,type,res);
+ Map<Integer, String> categoryMap = categoryService.list(null).stream()
+ .collect(Collectors.toMap(TCategory::getId, TCategory::getName));
for (SubjectVO subjectVO : list) {
+ if (subjectVO.getFirstCategory()!=null&&subjectVO.getSecondCategory()!=null){
+ String byId1 = categoryMap.get(subjectVO.getFirstCategory());
+ String byId2 = categoryMap.get(subjectVO.getSecondCategory());
+ if (byId1!=null&& byId2!=null){
+ subjectVO.setCategoryName(byId1+"-"+byId2);
+ }
+ }
// StringBuilder stringBuilder = new StringBuilder("");
// for (String s : subjectVO.getType().split(",")) {
// switch (s) {
@@ -80,7 +123,6 @@
subjectVO.setType(subjectVO.getType());
}
res.setRecords(list);
- res.setTotal(list.size());
return R.ok(res);
}
@PostMapping("/add")
@@ -96,8 +138,8 @@
public R update(@RequestBody SubjectDTO dto) {
TSubject tSubject = new TSubject();
// 判断当前题目有没有被使用
- R<Object> week = getObjectR(dto.getId());
- if (week != null) return week;
+// R<Object> week = getObjectR(dto.getId());
+// if (week != null) return week;
BeanUtils.copyProperties(dto,tSubject);
subjectService.updateById(tSubject);
return R.ok("编辑成功");
@@ -116,7 +158,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 + "、" + "听音选图中使用");
}
}
}
@@ -128,7 +170,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 + "、" + "看图选音中使用");
}
}
}
@@ -140,7 +182,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 + "、" + "归纳排除中使用");
}
}
}
@@ -152,7 +194,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 + "、" + "有问有答中使用");
}
}
}
@@ -163,7 +205,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 + "、" + "音图相配中使用");
}
}
}
@@ -172,7 +214,7 @@
}
@PostMapping("/getInfo")
- @ApiOperation(value = "查看详情", tags = {"题目管理"})
+// @ApiOperation(value = "查看详情", tags = {"题目管理"})
public R<SubjectDTO> getInfo(@RequestParam("id") Integer id) {
TSubject byId = subjectService.getById(id);
SubjectDTO subjectDTO = new SubjectDTO();
@@ -180,7 +222,7 @@
return R.ok(subjectDTO);
}
@PostMapping("/updateState/{id}/{state}")
- @ApiOperation(value = "修改状态", tags = {"题目管理"})
+// @ApiOperation(value = "修改状态", tags = {"题目管理"})
@ApiImplicitParams({
@ApiImplicitParam(name = "id", value = "题目id", required = true),
@ApiImplicitParam(name = "state", value = "1上架2下架3删除", required = true),
@@ -197,6 +239,9 @@
TSubject byId = subjectService.getById(id);
byId.setState(state);
subjectService.updateById(byId);
+ if (state == 3){
+ subjectService.removeById(byId);
+ }
return R.ok("编辑成功");
}
}
--
Gitblit v1.7.1