首页查询优化
This commit is contained in:
parent
88243286cb
commit
ba8767b725
|
@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.dromara.common.core.service.DictService;
|
||||
import org.dromara.common.core.utils.MapstructUtils;
|
||||
import org.dromara.common.core.utils.StringUtils;
|
||||
import org.dromara.common.mybatis.core.page.PageQuery;
|
||||
|
@ -18,14 +19,10 @@ import org.dromara.scale.domain.vo.SysScaleVo;
|
|||
import org.dromara.scale.mapper.ScoreRecordMapper;
|
||||
import org.dromara.scale.mapper.SysScaleMapper;
|
||||
import org.dromara.scale.service.ISysScaleService;
|
||||
import org.dromara.system.domain.vo.SysDictDataVo;
|
||||
import org.dromara.system.mapper.SysDictDataMapper;
|
||||
import org.dromara.system.mapper.SysOssMapper;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* 心理测评量Service业务层处理
|
||||
|
@ -37,8 +34,7 @@ import java.util.stream.Collectors;
|
|||
@Service
|
||||
public class SysScaleServiceImpl implements ISysScaleService {
|
||||
private final SysScaleMapper baseMapper;
|
||||
private final SysDictDataMapper sysDictDataMapper;
|
||||
private final SysOssMapper sysOssMapper;
|
||||
private final DictService dictService;
|
||||
private final ScoreRecordMapper scoreMapper;
|
||||
|
||||
/**
|
||||
|
@ -48,11 +44,11 @@ public class SysScaleServiceImpl implements ISysScaleService {
|
|||
public SysScaleVo queryById(Long scaleId) {
|
||||
|
||||
SysScaleVo sysScaleVo = baseMapper.selectVoById(scaleId);
|
||||
List<SysDictDataVo> scaleTypeList = sysDictDataMapper.selectDictDataByTypeAndDictValue("scale_type", StrUtil.join(StrUtil.COMMA, sysScaleVo.getScaleType()));
|
||||
sysScaleVo.setScaleTypeName(scaleTypeList.stream().map(SysDictDataVo::getDictLabel).collect(Collectors.toList()));
|
||||
String scaleTypeName = dictService.getDictLabel("scale_type", StrUtil.join(StrUtil.COMMA, sysScaleVo.getScaleType()));
|
||||
sysScaleVo.setScaleTypeName(StrUtil.split(scaleTypeName, StrUtil.COMMA));
|
||||
|
||||
List<SysDictDataVo> peopleTypeList = sysDictDataMapper.selectDictDataByTypeAndDictValue("people_type", StrUtil.join(StrUtil.COMMA, sysScaleVo.getPeopleType()));
|
||||
sysScaleVo.setPeopleTypeName(peopleTypeList.stream().map(SysDictDataVo::getDictLabel).collect(Collectors.toList()));
|
||||
String peopleTypeName = dictService.getDictLabel("people_type", StrUtil.join(StrUtil.COMMA, sysScaleVo.getPeopleType()));
|
||||
sysScaleVo.setPeopleTypeName(StrUtil.split(peopleTypeName, StrUtil.COMMA));
|
||||
//计算均分
|
||||
List<ScoreRecord> scoreList = scoreMapper.selectList(new LambdaQueryWrapper<ScoreRecord>().select(ScoreRecord::getScore).eq(ScoreRecord::getBusinessId, scaleId).eq(ScoreRecord::getRecordStatus, 0));
|
||||
OptionalDouble averageScore = scoreList.stream()
|
||||
|
@ -79,11 +75,11 @@ public class SysScaleServiceImpl implements ISysScaleService {
|
|||
}
|
||||
Page<SysScaleVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||
for (SysScaleVo record : result.getRecords()) {
|
||||
List<SysDictDataVo> scaleTypeList = sysDictDataMapper.selectDictDataByTypeAndDictValue("scale_type", StrUtil.join(StrUtil.COMMA, record.getScaleType()));
|
||||
record.setScaleTypeName(scaleTypeList.stream().map(SysDictDataVo::getDictLabel).collect(Collectors.toList()));
|
||||
String scaleTypeName = dictService.getDictLabel("scale_type", StrUtil.join(StrUtil.COMMA, record.getScaleType()));
|
||||
record.setScaleTypeName(StrUtil.split(scaleTypeName, StrUtil.COMMA));
|
||||
|
||||
List<SysDictDataVo> peopleTypeList = sysDictDataMapper.selectDictDataByTypeAndDictValue("people_type", StrUtil.join(StrUtil.COMMA, record.getPeopleType()));
|
||||
record.setPeopleTypeName(peopleTypeList.stream().map(SysDictDataVo::getDictLabel).collect(Collectors.toList()));
|
||||
String peopleTypeName = dictService.getDictLabel("people_type", StrUtil.join(StrUtil.COMMA, record.getPeopleType()));
|
||||
record.setPeopleTypeName(StrUtil.split(peopleTypeName, StrUtil.COMMA));
|
||||
}
|
||||
return TableDataInfo.build(result);
|
||||
}
|
||||
|
@ -98,11 +94,11 @@ public class SysScaleServiceImpl implements ISysScaleService {
|
|||
}
|
||||
List<SysScaleVo> result = baseMapper.selectVoList(lqw);
|
||||
for (SysScaleVo record : result) {
|
||||
List<SysDictDataVo> scaleTypeList = sysDictDataMapper.selectDictDataByTypeAndDictValue("scale_type", StrUtil.join(StrUtil.COMMA, record.getScaleType()));
|
||||
record.setScaleTypeName(scaleTypeList.stream().map(SysDictDataVo::getDictLabel).collect(Collectors.toList()));
|
||||
String scaleTypeName = dictService.getDictLabel("scale_type", StrUtil.join(StrUtil.COMMA, record.getScaleType()));
|
||||
record.setScaleTypeName(StrUtil.split(scaleTypeName, StrUtil.COMMA));
|
||||
|
||||
List<SysDictDataVo> peopleTypeList = sysDictDataMapper.selectDictDataByTypeAndDictValue("people_type", StrUtil.join(StrUtil.COMMA, record.getPeopleType()));
|
||||
record.setPeopleTypeName(peopleTypeList.stream().map(SysDictDataVo::getDictLabel).collect(Collectors.toList()));
|
||||
String peopleTypeName = dictService.getDictLabel("people_type", StrUtil.join(StrUtil.COMMA, record.getPeopleType()));
|
||||
record.setPeopleTypeName(StrUtil.split(peopleTypeName, StrUtil.COMMA));
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue