From 3287db59c29dff93993f2bcfc02d3ad0b08c7d97 Mon Sep 17 00:00:00 2001
From: jinpengyong <jpy123456>
Date: Tue, 10 Aug 2021 14:22:55 +0800
Subject: [PATCH] update
---
screen-manage/src/main/java/com/moral/api/service/impl/UnitConversionServiceImpl.java | 63 ++++++++++++++++++++++++-------
1 files changed, 48 insertions(+), 15 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 5075715..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,5 +1,6 @@
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;
@@ -17,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;
@@ -43,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());
@@ -85,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))
@@ -141,6 +159,8 @@
oldUnitConversion = unitConversionMapper.selectOne(oldWrapper);
//������
unitConversionMapper.updateById(unitConversion);
+ //������������
+ refreshCache();
//������������������
dto.setCode(ResponseCodeEnum.SUCCESS.getCode());
dto.setMsg(ResponseCodeEnum.SUCCESS.getMsg());
@@ -162,12 +182,25 @@
oldUnitConversion = unitConversionMapper.selectOne(oldWrapper);
//������������������
UpdateWrapper deleteWrapper = new UpdateWrapper();
- deleteWrapper.set("is_delete",Constants.DELETE);
- deleteWrapper.eq("id",id);
- unitConversionMapper.update(null,deleteWrapper);
+ 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