From 9399e9c32280d4d63bef0bb52b66e002c48eca17 Mon Sep 17 00:00:00 2001 From: kaiyu <404897439@qq.com> Date: Fri, 11 Jun 2021 10:40:01 +0800 Subject: [PATCH] screen-manage 通过型号id查询因子增加分页功能 --- screen-manage/src/main/java/com/moral/api/service/impl/VersionServiceImpl.java | 44 ++++++++++++++++----- screen-manage/src/main/java/com/moral/api/controller/VersionController.java | 11 ++++- screen-manage/src/main/java/com/moral/api/service/VersionService.java | 4 +- screen-manage/src/main/java/com/moral/api/pojo/form/version/VersionQueryByIdForm.java | 29 ++++++++++++++ 4 files changed, 73 insertions(+), 15 deletions(-) diff --git a/screen-manage/src/main/java/com/moral/api/controller/VersionController.java b/screen-manage/src/main/java/com/moral/api/controller/VersionController.java index c632470..0244fd8 100644 --- a/screen-manage/src/main/java/com/moral/api/controller/VersionController.java +++ b/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); } diff --git a/screen-manage/src/main/java/com/moral/api/pojo/form/version/VersionQueryByIdForm.java b/screen-manage/src/main/java/com/moral/api/pojo/form/version/VersionQueryByIdForm.java new file mode 100644 index 0000000..6dd2f24 --- /dev/null +++ b/screen-manage/src/main/java/com/moral/api/pojo/form/version/VersionQueryByIdForm.java @@ -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; + } +} diff --git a/screen-manage/src/main/java/com/moral/api/service/VersionService.java b/screen-manage/src/main/java/com/moral/api/service/VersionService.java index a3e16ff..f4571a2 100644 --- a/screen-manage/src/main/java/com/moral/api/service/VersionService.java +++ b/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); } diff --git a/screen-manage/src/main/java/com/moral/api/service/impl/VersionServiceImpl.java b/screen-manage/src/main/java/com/moral/api/service/impl/VersionServiceImpl.java index 4e79d21..f99c16c 100644 --- a/screen-manage/src/main/java/com/moral/api/service/impl/VersionServiceImpl.java +++ b/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; @@ -141,7 +142,7 @@ QueryWrapper<Version> wrapper = new QueryWrapper<>(); wrapper.setEntity(existVersion); Version existVersionResult = versionMapper.selectOne(wrapper); - if(!ObjectUtils.isEmpty(existVersionResult)){ + if (!ObjectUtils.isEmpty(existVersionResult)) { dto.setCode(ResponseCodeEnum.VERSION_EXIST.getCode()); dto.setMsg(ResponseCodeEnum.VERSION_EXIST.getMsg()); return dto; @@ -170,9 +171,9 @@ versionMapper.updateById(deleteVersion); //������������������������������������ UpdateWrapper deleteSensorUnitWrapper = new UpdateWrapper(); - deleteSensorUnitWrapper.eq("version_id",id); - deleteSensorUnitWrapper.set("is_delete",Constants.DELETE); - versionSensorUnitMapper.update(null,deleteSensorUnitWrapper); + deleteSensorUnitWrapper.eq("version_id", id); + deleteSensorUnitWrapper.set("is_delete", Constants.DELETE); + versionSensorUnitMapper.update(null, deleteSensorUnitWrapper); //������������������ dto.setCode(ResponseCodeEnum.SUCCESS.getCode()); dto.setMsg(ResponseCodeEnum.SUCCESS.getMsg()); @@ -189,9 +190,9 @@ Integer versionId = form.getVersionId(); //������������������������������������ UpdateWrapper deleteWrapper = new UpdateWrapper(); - deleteWrapper.eq("version_id",versionId); - deleteWrapper.set("is_delete",Constants.DELETE); - versionSensorUnitMapper.update(null,deleteWrapper); + deleteWrapper.eq("version_id", versionId); + deleteWrapper.set("is_delete", Constants.DELETE); + versionSensorUnitMapper.update(null, deleteWrapper); //��������������������������������� for (VersionSensorUnit sensorUnit : sensorUnits) { sensorUnit.setVersionId(versionId); @@ -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; } + + } -- Gitblit v1.8.0