| | |
| | | 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; |
| | |
| | | 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; |
| | |
| | | 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()); |
| | |
| | | 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); |
| | |
| | | } |
| | | |
| | | @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; |
| | | } |
| | | |
| | | |
| | | } |