screen-manage/src/main/java/com/moral/api/controller/VersionController.java
@@ -108,9 +108,16 @@ @GetMapping("queryById") public ResultMessage queryById(Integer id){ VersionDTO dto = versionService.queryVersionById(id); public ResultMessage queryById(VersionQueryByIdForm form){ //判断是否缺少参数 if (!form.valid()) return ResultMessage.fail(ResponseCodeEnum.PARAMETERS_IS_MISSING.getCode(), ResponseCodeEnum.PARAMETERS_IS_MISSING.getMsg()); VersionDTO dto = versionService.queryVersionById(form); VersionVO vo = VersionVO.convert(dto); return new ResultMessage(dto.getCode(), dto.getMsg(), vo); } screen-manage/src/main/java/com/moral/api/pojo/form/version/VersionQueryByIdForm.java
New file @@ -0,0 +1,29 @@ package com.moral.api.pojo.form.version; import lombok.Data; import org.springframework.util.ObjectUtils; /** * @ClassName VersionQueryByIdForm * @Description TODO * @Author 陈凯裕 * @Date 2021/6/11 9:49 * @Version TODO **/ @Data public class VersionQueryByIdForm { private Integer id; private Integer page; private Integer size; public boolean valid(){ if(ObjectUtils.isEmpty(id)|| ObjectUtils.isEmpty(page)|| ObjectUtils.isEmpty(size)) return false; return true; } } screen-manage/src/main/java/com/moral/api/service/VersionService.java
@@ -64,11 +64,11 @@ /** * @Description: 根据型号id查询对应的因子 * @Param: [id] * @Param: [form] * @return: com.moral.api.pojo.dto.version.VersionDTO * @Author: 陈凯裕 * @Date: 2021/6/9 */ VersionDTO queryVersionById(Integer id); VersionDTO queryVersionById(VersionQueryByIdForm form); } screen-manage/src/main/java/com/moral/api/service/impl/VersionServiceImpl.java
@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.moral.api.config.mybatis.wrapper.NullFilterWrapper; import com.moral.api.entity.Sensor; import com.moral.api.entity.User; import com.moral.api.entity.Version; import com.moral.api.entity.VersionSensorUnit; @@ -204,18 +205,39 @@ } @Override public VersionDTO queryVersionById(Integer id) { public VersionDTO queryVersionById(VersionQueryByIdForm form) { //创建返回对象 VersionDTO dto = new VersionDTO(); //取参 Integer id = form.getId(); Integer size = form.getSize(); Integer page = form.getPage(); //查询版本对应的因子和单位 List<Integer> versionsIds = new ArrayList<>(); versionsIds.add(id); List<Version> version = new ArrayList<>(); version = versionMapper.queryVersionsAndSensorUnitByIds(versionsIds); List<Version> versions = new ArrayList<>(); versions = versionMapper.queryVersionsAndSensorUnitByIds(versionsIds); //根据分页信息进行选择因子 Version version = versions.get(0); List<Sensor> querySensors = version.getSensors(); if (!ObjectUtils.isEmpty(querySensors)) { int startIndex = (page - 1) * size; int endIndex = startIndex + size - 1; List<Sensor> resultSensors = new ArrayList<>(); for (int i = startIndex; i <= endIndex; i++) { if (i >= querySensors.size()) break; resultSensors.add(querySensors.get(i)); } version.setSensors(resultSensors); } //封装返回对象 dto.setCode(ResponseCodeEnum.SUCCESS.getCode()); dto.setMsg(ResponseCodeEnum.SUCCESS.getMsg()); dto.setVersion(version.get(0)); dto.setVersion(version); return dto; } }