From eccde23ea401394aed432865bfbbbcb89539ba20 Mon Sep 17 00:00:00 2001 From: lizijie <lzjiiie@163.com> Date: Wed, 18 Aug 2021 15:33:45 +0800 Subject: [PATCH] 特殊设备历史表数据查询、删除,校准接口判断特殊设备表 --- screen-manage/src/main/java/com/moral/api/service/impl/UnitConversionServiceImpl.java | 84 ++++++++++++++++++++++++++++++++++++------ 1 files changed, 72 insertions(+), 12 deletions(-) diff --git a/screen-manage/src/main/java/com/moral/api/service/impl/UnitConversionServiceImpl.java b/screen-manage/src/main/java/com/moral/api/service/impl/UnitConversionServiceImpl.java index ca6a3ee..0e40019 100644 --- a/screen-manage/src/main/java/com/moral/api/service/impl/UnitConversionServiceImpl.java +++ b/screen-manage/src/main/java/com/moral/api/service/impl/UnitConversionServiceImpl.java @@ -1,6 +1,8 @@ package com.moral.api.service.impl; +import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +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.SysDictData; @@ -8,6 +10,7 @@ import com.moral.api.mapper.UnitConversionMapper; import com.moral.api.pojo.dto.unitConversion.UnitConversionDTO; import com.moral.api.pojo.dto.unitConversion.UnitConversionQueryDTO; +import com.moral.api.pojo.form.unitConversion.UnitConversionDeleteForm; import com.moral.api.pojo.form.unitConversion.UnitConversionInsertForm; import com.moral.api.pojo.form.unitConversion.UnitConversionQueryForm; import com.moral.api.pojo.form.unitConversion.UnitConversionUpdateForm; @@ -15,9 +18,11 @@ import com.moral.api.service.UnitConversionService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.moral.constant.Constants; +import com.moral.constant.RedisConstants; import com.moral.constant.ResponseCodeEnum; import com.moral.util.ConvertUtils; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.data.redis.core.RedisTemplate; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.util.ObjectUtils; @@ -41,27 +46,42 @@ UnitConversionMapper unitConversionMapper; @Autowired SysDictDataService sysDictDataService; + @Autowired + RedisTemplate redisTemplate; @Override @Transactional public UnitConversionDTO insertUnitConversion(UnitConversionInsertForm form) { //������������������ - UnitConversionDTO dto = new UnitConversionDTO(); + UnitConversionDTO dto = new UnitConversionDTO(); //������ UnitConversion unitConversion = form.formConvertEntity(); //������������������������������������������������������������������������ - QueryWrapper existWrapper = new QueryWrapper(); - existWrapper.eq("original_unit_key",unitConversion.getOriginalUnitKey()); - existWrapper.eq("target_unit_key",unitConversion.getTargetUnitKey()); - existWrapper.eq("is_delete",Constants.NOT_DELETE); - UnitConversion existConversion = unitConversionMapper.selectOne(existWrapper); - if(!ObjectUtils.isEmpty(existConversion)){ - dto.setCode(ResponseCodeEnum.UNIT_CONVERSION_EXIST.getCode()); - dto.setMsg(ResponseCodeEnum.UNIT_CONVERSION_EXIST.getMsg()); - return dto; + QueryWrapper<UnitConversion> existWrapper = new QueryWrapper(); + existWrapper.eq("original_unit_key", unitConversion.getOriginalUnitKey()); + existWrapper.eq("target_unit_key", unitConversion.getTargetUnitKey()); + existWrapper.eq("is_delete", Constants.NOT_DELETE); + List<UnitConversion> unitConversions = unitConversionMapper.selectList(existWrapper); + if (ObjectUtils.isEmpty(unitConversion.getSensorCode())) { + if (!ObjectUtils.isEmpty(unitConversions)) { + dto.setCode(ResponseCodeEnum.UNIT_CONVERSION_EXIST.getCode()); + dto.setMsg(ResponseCodeEnum.UNIT_CONVERSION_EXIST.getMsg()); + return dto; + } + } + if (!ObjectUtils.isEmpty(unitConversion.getSensorCode())) { + for (UnitConversion conversion : unitConversions) { + if (ObjectUtils.isEmpty(conversion.getSensorCode())||conversion.getSensorCode().equals(unitConversion.getSensorCode())) { + dto.setCode(ResponseCodeEnum.UNIT_CONVERSION_EXIST.getCode()); + dto.setMsg(ResponseCodeEnum.UNIT_CONVERSION_EXIST.getMsg()); + return dto; + } + } } //������������ unitConversionMapper.insert(unitConversion); + //������������ + refreshCache(); //������������������ dto.setCode(ResponseCodeEnum.SUCCESS.getCode()); dto.setMsg(ResponseCodeEnum.SUCCESS.getMsg()); @@ -83,8 +103,8 @@ //������������������ Page<UnitConversion> queryPage = new Page<>(page, size); NullFilterWrapper<UnitConversion> wrapper = new NullFilterWrapper<>(); - wrapper.eq("original_unit_key",originalUnitKey); - wrapper.eq("target_unit_key",targetUnitKey); + wrapper.eq("original_unit_key", originalUnitKey); + wrapper.eq("target_unit_key", targetUnitKey); //������������������������ if (!ObjectUtils.isEmpty(order) && !ObjectUtils.isEmpty(orderType)) { if (orderType.equals(Constants.ORDER_ASC)) @@ -135,12 +155,52 @@ UnitConversion oldUnitConversion = new UnitConversion(); oldUnitConversion.setId(unitConversion.getId()); oldUnitConversion.setIsDelete(Constants.NOT_DELETE); + oldWrapper.setEntity(oldUnitConversion); oldUnitConversion = unitConversionMapper.selectOne(oldWrapper); //������ unitConversionMapper.updateById(unitConversion); + //������������ + refreshCache(); //������������������ dto.setCode(ResponseCodeEnum.SUCCESS.getCode()); dto.setMsg(ResponseCodeEnum.SUCCESS.getMsg()); return dto; } + + @Override + public UnitConversionDTO deleteUnitConversion(UnitConversionDeleteForm form) { + //������������������ + UnitConversionDTO dto = new UnitConversionDTO(); + //������ + Integer id = form.getId(); + //������������������������������������������ + QueryWrapper<UnitConversion> oldWrapper = new QueryWrapper<>(); + UnitConversion oldUnitConversion = new UnitConversion(); + oldUnitConversion.setId(id); + oldUnitConversion.setIsDelete(Constants.NOT_DELETE); + oldWrapper.setEntity(oldUnitConversion); + oldUnitConversion = unitConversionMapper.selectOne(oldWrapper); + //������������������ + UpdateWrapper deleteWrapper = new UpdateWrapper(); + deleteWrapper.set("is_delete", Constants.DELETE); + deleteWrapper.eq("id", id); + unitConversionMapper.update(null, deleteWrapper); + //������������ + refreshCache(); + //������������������ + dto.setCode(ResponseCodeEnum.SUCCESS.getCode()); + dto.setMsg(ResponseCodeEnum.SUCCESS.getMsg()); + return dto; + } + + /*������������*/ + @Override + public void refreshCache(){ + redisTemplate.delete((RedisConstants.UNIT_CONVERSION)); + QueryWrapper<UnitConversion> queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("is_delete",Constants.NOT_DELETE); + List<UnitConversion> unitConversions = unitConversionMapper.selectList(queryWrapper); + if(!ObjectUtils.isEmpty(unitConversions)) + redisTemplate.opsForList().leftPushAll(RedisConstants.UNIT_CONVERSION,unitConversions); + } } -- Gitblit v1.8.0