dev-tmp1
luotaiqian 2026-08-17 18:24:06 +08:00
parent 7941877be9
commit 9c9844f9b8
1 changed files with 20 additions and 19 deletions

View File

@ -1,15 +1,17 @@
package org.qinan.cedu.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.baomidou.mybatisplus.extension.toolkit.Db;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.qinan.cedu.convertor.PaperConvertor;
import org.qinan.cedu.enums.DeleteEnum;
import org.qinan.cedu.enums.PaperStatusEnum;
import org.qinan.cedu.mapper.PaperMapper;
import org.qinan.cedu.mapper.QuestionMapper;
import org.qinan.cedu.model.dto.PaperImportDTO;
import org.qinan.cedu.model.dto.PaperPageQueryDTO;
import org.qinan.cedu.model.dto.PaperUpdateDTO;
@ -21,7 +23,6 @@ import org.qinan.cedu.model.vo.PaperImportVO;
import org.qinan.cedu.model.vo.PaperPageVO;
import org.qinan.cedu.service.PaperQuestionRelService;
import org.qinan.cedu.service.PaperService;
import org.qinan.cedu.service.QuestionService;
import org.qinan.cedu.service.support.QuestionExcelImporter;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@ -38,31 +39,31 @@ import java.util.stream.Collectors;
*
*/
@Service
@Slf4j
@RequiredArgsConstructor
public class PaperServiceImpl extends ServiceImpl<PaperMapper, PaperDO> implements PaperService {
@Autowired
private PaperQuestionRelService paperQuestionRelService;
@Autowired
private QuestionService questionService;
@Autowired
private QuestionMapper questionMapper;
@Autowired
private QuestionExcelImporter questionExcelImporter;
private final PaperQuestionRelService paperQuestionRelService;
private final QuestionExcelImporter questionExcelImporter;
@Autowired
private PaperConvertor paperConvertor;
@Override
public IPage<PaperPageVO> pageQuery(PaperPageQueryDTO query) {
IPage<PaperDO> page = this.lambdaQuery()
.eq(PaperDO::getDeleteEnum, DeleteEnum.FALSE.getCode())
.like(StringUtils.hasText(query.getPaperName()), PaperDO::getPaperName, query.getPaperName())
.ge(query.getCreateTimeStart() != null, PaperDO::getCreateTime, query.getCreateTimeStart().atStartOfDay())
.lt(query.getCreateTimeEnd() != null, PaperDO::getCreateTime, query.getCreateTimeEnd().plusDays(1).atStartOfDay())
.orderByDesc(PaperDO::getCreateTime)
.page(new Page<>(query.getCurrent(), query.getSize()));
LambdaQueryWrapper<PaperDO> wrapper = new LambdaQueryWrapper<PaperDO>()
.eq(PaperDO::getDeleteEnum, DeleteEnum.FALSE.getCode());
if (StringUtils.hasText(query.getPaperName())) {
wrapper.like(PaperDO::getPaperName, query.getPaperName());
}
if (query.getCreateTimeStart() != null) {
wrapper.ge(PaperDO::getCreateTime, query.getCreateTimeStart().atStartOfDay());
}
if (query.getCreateTimeEnd() != null) {
wrapper.lt(PaperDO::getCreateTime, query.getCreateTimeEnd().plusDays(1).atStartOfDay());
}
wrapper.orderByDesc(PaperDO::getId);
IPage<PaperDO> page = this.page(new Page<>(query.getCurrent(), query.getSize()), wrapper);
return page.convert(paperConvertor::convertEToVo);
}