This commit is contained in:
2023-06-21 15:55:40 +08:00
parent 42975464b1
commit 2097566b9a
6 changed files with 60 additions and 3 deletions

View File

@@ -70,4 +70,6 @@ public interface PileModelInfoMapper {
* @return PileModelInfo对象
*/
List<PileModelInfoVO> getPileModelInfoByPileSnList(@Param("pileSnList") List<String> pileSns);
PileModelInfoVO getPileModelInfoByModelId(@Param("modelId") Long modelId);
}

View File

@@ -69,4 +69,6 @@ public interface IPileModelInfoService {
List<PileModelInfoVO> getPileModelInfoByPileSnList(List<String> pileSns);
PileModelInfoVO getPileModelInfoByPileSn(String pileSn);
PileModelInfoVO getPileModelInfoByModelId(Long modelId);
}

View File

@@ -1,6 +1,8 @@
package com.jsowell.pile.service.impl;
import com.google.common.collect.Lists;
import com.jsowell.common.constant.CacheConstants;
import com.jsowell.common.core.redis.RedisCache;
import com.jsowell.common.util.DateUtils;
import com.jsowell.pile.domain.PileModelInfo;
import com.jsowell.pile.mapper.PileModelInfoMapper;
@@ -11,6 +13,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
import java.util.Objects;
/**
* 充电桩型号信息Service业务层处理
@@ -23,6 +26,9 @@ public class PileModelInfoServiceImpl implements IPileModelInfoService {
@Autowired
private PileModelInfoMapper pileModelInfoMapper;
@Autowired
private RedisCache redisCache;
/**
* 查询充电桩型号信息
*
@@ -66,6 +72,7 @@ public class PileModelInfoServiceImpl implements IPileModelInfoService {
@Override
public int updatePileModelInfo(PileModelInfo pileModelInfo) {
pileModelInfo.setUpdateTime(DateUtils.getNowDate());
cleanCache(new Long[]{pileModelInfo.getId()});
return pileModelInfoMapper.updatePileModelInfo(pileModelInfo);
}
@@ -77,6 +84,7 @@ public class PileModelInfoServiceImpl implements IPileModelInfoService {
*/
@Override
public int deletePileModelInfoByIds(Long[] ids) {
cleanCache(ids);
return pileModelInfoMapper.deletePileModelInfoByIds(ids);
}
@@ -88,6 +96,7 @@ public class PileModelInfoServiceImpl implements IPileModelInfoService {
*/
@Override
public int deletePileModelInfoById(Long id) {
cleanCache(new Long[]{id});
return pileModelInfoMapper.deletePileModelInfoById(id);
}
@@ -110,4 +119,25 @@ public class PileModelInfoServiceImpl implements IPileModelInfoService {
}
return null;
}
@Override
public PileModelInfoVO getPileModelInfoByModelId(Long modelId) {
String redisKey = CacheConstants.GET_PILE_MODEL_INFO_BY_MODEL_ID + modelId;
PileModelInfoVO modelInfoVO = redisCache.getCacheObject(redisKey);
if (Objects.isNull(modelInfoVO)) {
modelInfoVO = pileModelInfoMapper.getPileModelInfoByModelId(modelId);
if (Objects.nonNull(modelInfoVO)) {
redisCache.setCacheObject(redisKey, modelInfoVO, CacheConstants.cache_expire_time_1d);
}
}
return modelInfoVO;
}
private void cleanCache(Long[] modelIds) {
List<String> redisKeyList = Lists.newArrayList();
for (Long modelId : modelIds) {
redisKeyList.add(CacheConstants.GET_PILE_MODEL_INFO_BY_MODEL_ID + modelId);
}
redisCache.deleteObject(redisKeyList);
}
}