Commit 7e24c315 by 邹磊浩

修改代码

parent a37c2f34
......@@ -48,8 +48,8 @@ public class DbCollectListController extends BaseController {
* 查询我的收藏列表
*/
@GetMapping("/list")
public TableDataInfo<MyCollectListVo> list(@RequestParam("categoryId") Integer categoryId, PageQuery pageQuery) {
return iDbCollectListService.queryPageList(categoryId, getUserId(), pageQuery);
public TableDataInfo<MyCollectListVo> list(@RequestParam("categoryId") Integer categoryId, @RequestParam("species") Integer species, PageQuery pageQuery) {
return iDbCollectListService.queryPageList(categoryId, species, getUserId(), pageQuery);
}
/**
......@@ -80,7 +80,6 @@ public class DbCollectListController extends BaseController {
* @return
*/
@Log(title = "收藏", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody DbCollectListBo bo) {
bo.setUserId(getUserId());
......@@ -91,7 +90,6 @@ public class DbCollectListController extends BaseController {
* 【小程序】修改收藏
*/
@Log(title = "收藏", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody DbCollectListBo bo) {
bo.setUserId(getUserId());
......
......@@ -59,7 +59,7 @@ public class DbErrorListController extends BaseController {
*/
@GetMapping("/MyErrorTopicList")
public TableDataInfo<MyErrorTopicListVo> findMyErrorTopicListVoPage(ErrorTopicRequest request, PageQuery pageQuery) {
request.setUserId(1L);
request.setUserId(getUserId());
return iDbErrorListService.findMyErrorTopicListVoPage(pageQuery, request);
}
......
......@@ -2,6 +2,7 @@ package com.ruoyi.school.paper.domain;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import com.ruoyi.common.core.domain.BaseEntity;
import lombok.Data;
......@@ -38,8 +39,9 @@ public class DbCollectList extends BaseEntity {
*/
private String remark;
/**
* 状态:0正常,1删除
* 删除标志(0代表存在 2代表删除)
*/
private Integer status;
@TableLogic
private String delFlag;
}
......@@ -2,6 +2,7 @@ package com.ruoyi.school.paper.domain;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import com.ruoyi.common.core.domain.BaseEntity;
import lombok.Data;
......@@ -43,12 +44,13 @@ public class DbErrorList extends BaseEntity {
*/
private Long recordId;
/**
* 备注
* 删除标志(0代表存在 2代表删除)
*/
private String remark;
@TableLogic
private String delFlag;
/**
* 状态:0正常,1删除
* 备注
*/
private Integer status;
private String remark;
}
package com.ruoyi.school.paper.domain.bo;
import com.alibaba.excel.annotation.ExcelProperty;
import com.ruoyi.common.core.validate.AddGroup;
import com.ruoyi.common.core.validate.EditGroup;
import lombok.Data;
......@@ -40,11 +41,10 @@ public class DbCollectListBo extends BaseEntity {
* 备注
*/
private String remark;
/**
* 状态:0正常,1删除
* 删除标志(0代表存在 2代表删除)
*/
private Integer status;
private String delFlag;
}
......@@ -51,11 +51,10 @@ public class DbErrorListBo extends BaseEntity {
* 备注
*/
private String remark;
/**
* 状态:0正常,1删除
* 删除标志(0代表存在 2代表删除)
*/
private Integer status;
private String delFlag;
}
......@@ -2,6 +2,7 @@ package com.ruoyi.school.paper.domain.vo;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.ruoyi.common.annotation.ExcelDictFormat;
import com.ruoyi.common.convert.ExcelDictConvert;
import lombok.Data;
......@@ -46,10 +47,10 @@ public class DbCollectListVo {
private String remark;
/**
* 状态:0正常,1删除
* 删除标志(0代表存在 2代表删除)
*/
@ExcelProperty(value = "状态:0正常,1删除")
private Integer status;
@ExcelProperty(value = "删除标志(0代表存在 2代表删除)")
private String delFlag;
}
......@@ -2,6 +2,7 @@ package com.ruoyi.school.paper.domain.vo;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.ruoyi.common.annotation.ExcelDictFormat;
import com.ruoyi.common.convert.ExcelDictConvert;
import lombok.Data;
......@@ -58,10 +59,10 @@ public class DbErrorListVo {
private String remark;
/**
* 状态:0正常,1删除
* 删除标志(0代表存在 2代表删除)
*/
@ExcelProperty(value = "状态:0正常,1删除")
private Integer status;
@ExcelProperty(value = "删除标志(0代表存在 2代表删除)")
private String delFlag;
}
package com.ruoyi.school.paper.domain.vo;
import com.ruoyi.school.paper.domain.DbQuestionBankAnswerTestPaper;
import lombok.Data;
import java.io.Serializable;
......@@ -31,7 +32,16 @@ public class MyCollectListVo implements Serializable {
private String rightAnswersPic;
/**
* 习题种类:1填空,2选择,3解答
*/
private Long species;
/**
* 用户编号
*/
private Long userId;
/**
* 选项
*/
private List<DbQuestionBankAnswerVo> list;
private List<DbQuestionBankAnswerTestPaper> list;
}
......@@ -15,7 +15,7 @@ import org.apache.ibatis.annotations.Param;
* @date 2023-07-20
*/
public interface DbCollectListMapper extends BaseMapperPlus<DbCollectListMapper, DbCollectList, DbCollectListVo> {
Page<MyCollectListVo> findMyECollectListVoPage(IPage<MyCollectListVo> iPage,@Param("userId") Long userId, @Param("categoryId") Integer categoryId);
Page<MyCollectListVo> findMyECollectListVoPage(IPage<MyCollectListVo> iPage,@Param("userId") Long userId, @Param("categoryId") Integer categoryId,@Param("species")Integer species);
long getListByRecord(@Param("recordId") Long recordId, @Param("questionBankId") Long questionBankId);
}
......@@ -26,7 +26,7 @@ public interface IDbCollectListService {
/**
* 查询收藏列表
*/
TableDataInfo<MyCollectListVo> queryPageList(Integer categoryId,Long userId, PageQuery pageQuery);
TableDataInfo<MyCollectListVo> queryPageList(Integer categoryId,Integer species,Long userId, PageQuery pageQuery);
/**
* 查询收藏列表
......
package com.ruoyi.school.paper.service.impl;
import cn.hutool.core.bean.BeanUtil;
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.core.domain.PageQuery;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.ruoyi.school.paper.domain.DbQuestionBankAnswerTestPaper;
import com.ruoyi.school.paper.domain.vo.MyCollectListVo;
import com.ruoyi.school.paper.mapper.DbQuestionBankAnswerTestPaperMapper;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
import com.ruoyi.school.paper.domain.bo.DbCollectListBo;
......@@ -18,6 +21,7 @@ import com.ruoyi.school.paper.service.IDbCollectListService;
import java.util.List;
import java.util.Map;
import java.util.Collection;
import java.util.Optional;
/**
* 收藏Service业务层处理
......@@ -31,6 +35,8 @@ public class DbCollectListServiceImpl implements IDbCollectListService {
private final DbCollectListMapper baseMapper;
private final DbQuestionBankAnswerTestPaperMapper dbQuestionBankAnswerTestPaperMapper;
/**
* 查询收藏
*/
......@@ -43,8 +49,19 @@ public class DbCollectListServiceImpl implements IDbCollectListService {
* 查询收藏列表
*/
@Override
public TableDataInfo<MyCollectListVo> queryPageList(Integer categoryId, Long userId, PageQuery pageQuery) {
Page<MyCollectListVo> result = baseMapper.findMyECollectListVoPage(pageQuery.build(), userId, categoryId);
public TableDataInfo<MyCollectListVo> queryPageList(Integer categoryId, Integer species, Long userId, PageQuery pageQuery) {
Page<MyCollectListVo> result = baseMapper.findMyECollectListVoPage(pageQuery.build(), userId, categoryId, species);
List<MyCollectListVo> records = result.getRecords();
if (CollectionUtils.isNotEmpty(records)) {
records.forEach(res -> {
if (res.getSpecies().equals("2")) {
//选择题查询选项集
Optional.ofNullable(dbQuestionBankAnswerTestPaperMapper.selectList(Wrappers.<DbQuestionBankAnswerTestPaper>lambdaQuery()
.eq(DbQuestionBankAnswerTestPaper::getQuestionBankId, res.getQuestionBankId())))
.ifPresent(res::setList);
}
});
}
return TableDataInfo.build(result);
}
......@@ -62,7 +79,6 @@ public class DbCollectListServiceImpl implements IDbCollectListService {
LambdaQueryWrapper<DbCollectList> lqw = Wrappers.lambdaQuery();
lqw.eq(bo.getUserId() != null, DbCollectList::getUserId, bo.getUserId());
lqw.eq(bo.getQuestionBankId() != null, DbCollectList::getQuestionBankId, bo.getQuestionBankId());
lqw.eq(bo.getStatus() != null, DbCollectList::getStatus, bo.getStatus());
return lqw;
}
......@@ -85,9 +101,11 @@ public class DbCollectListServiceImpl implements IDbCollectListService {
*/
@Override
public Boolean updateByBo(DbCollectListBo bo) {
DbCollectList update = BeanUtil.toBean(bo, DbCollectList.class);
validEntityBeforeSave(update);
return baseMapper.updateById(update) > 0;
DbCollectList dbCollectList = baseMapper.selectOne(Wrappers.<DbCollectList>lambdaQuery().eq(DbCollectList::getQuestionBankId, bo.getQuestionBankId()).eq(DbCollectList::getUserId, bo.getUserId()));
if (null != dbCollectList) {
return baseMapper.deleteById(dbCollectList.getId()) > 0;
}
return false;
}
/**
......
......@@ -7,11 +7,13 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.common.core.domain.PageQuery;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.school.paper.domain.DbCollectList;
import com.ruoyi.school.paper.domain.DbErrorList;
import com.ruoyi.school.paper.domain.DbQuestionBankAnswerTestPaper;
import com.ruoyi.school.paper.domain.bo.DbErrorListBo;
import com.ruoyi.school.paper.domain.request.ErrorTopicRequest;
import com.ruoyi.school.paper.domain.vo.*;
import com.ruoyi.school.paper.mapper.DbCollectListMapper;
import com.ruoyi.school.paper.mapper.DbErrorListMapper;
import com.ruoyi.school.paper.mapper.DbQuestionBankAnswerTestPaperMapper;
import com.ruoyi.school.paper.service.IDbErrorListService;
......@@ -38,6 +40,8 @@ public class DbErrorListServiceImpl implements IDbErrorListService {
private final DbQuestionBankAnswerTestPaperMapper dbQuestionBankAnswerTestPaperMapper;
private final DbCollectListMapper dbCollectListMapper;
/**
* 查询错题集
*/
......@@ -78,7 +82,6 @@ public class DbErrorListServiceImpl implements IDbErrorListService {
lqw.eq(bo.getUserId() != null, DbErrorList::getUserId, bo.getUserId());
lqw.eq(bo.getPaperId() != null, DbErrorList::getPaperId, bo.getPaperId());
lqw.eq(bo.getQuestionBankId() != null, DbErrorList::getQuestionBankId, bo.getQuestionBankId());
lqw.eq(bo.getStatus() != null, DbErrorList::getStatus, bo.getStatus());
return lqw;
}
......@@ -149,6 +152,12 @@ public class DbErrorListServiceImpl implements IDbErrorListService {
//选项set至每道题目中
records.parallelStream().forEach(myErrorTopicListVo -> {
//判读是否收藏
Optional.ofNullable(dbCollectListMapper.selectOne(Wrappers.<DbCollectList>lambdaQuery().eq(DbCollectList::getUserId, request.getUserId())
.eq(DbCollectList::getQuestionBankId, myErrorTopicListVo.getQuestionBankId())))
.ifPresent(res -> {
myErrorTopicListVo.setCollectFlag(Boolean.TRUE);
});
List<DbQuestionBankAnswerTestPaper> options = optionsMap.get(myErrorTopicListVo.getQuestionBankId());
myErrorTopicListVo.setOptions(options);
});
......
......@@ -20,7 +20,9 @@
dcl.question_bank_id questionBankId,
dqb.topic AS topic,
dqb.right_answers AS rightAnswers,
dqb.right_answers_pic AS rightAnswersPic
dqb.right_answers_pic AS rightAnswersPic,
dqb.species AS species,
dcl.user_id AS userId
FROM
db_collect_list AS dcl
LEFT JOIN db_question_bank AS dqb ON dcl.question_bank_id = dqb.id
......@@ -31,7 +33,9 @@
<if test="categoryId != null">
and dqb.category_id = #{categoryId}
</if>
<if test="species != null">
and dqb.species = #{species}
</if>
</where>
</select>
......
......@@ -55,16 +55,16 @@
<select id="findMyErrorTopicListVoPage" resultType="com.ruoyi.school.paper.domain.vo.MyErrorTopicListVo">
SELECT
del.id AS id,
dtprd.question_bank_id AS questionBankId,
del.question_bank_id AS questionBankId,
dqbtp.topic AS topic,
dtprd.answer AS answer,
dtprd.correct_answer AS correctAnswer,
dqbtp.species AS species
FROM
db_error_list AS del
LEFT JOIN db_test_paper_record AS dtpr ON del.record_id = dtpr.id
LEFT JOIN db_test_paper_record_detail AS dtprd ON dtpr.id = dtprd.record_id
LEFT JOIN db_question_bank_test_paper AS dqbtp ON dtprd.question_bank_id = dqbtp.id
LEFT JOIN db_test_paper_record AS dtpr ON dtpr.id = del.record_id
LEFT JOIN db_test_paper_record_detail AS dtprd ON dtprd.record_id = dtpr.id
LEFT JOIN db_question_bank_test_paper AS dqbtp ON dqbtp.id = dtprd.question_bank_id
<where>
del.user_id = #{request.userId}
<if test="request.categoryId != null">
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment