From 7cae317501065df4d29fcfcc045a032c79e9588c Mon Sep 17 00:00:00 2001 From: "autumn.g@foxmail.com" Date: Fri, 2 Jun 2023 16:51:23 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E8=AE=A2=E5=8D=95=E5=AE=9E?= =?UTF-8?q?=E6=97=B6=E6=95=B0=E6=8D=AE=20=E6=96=B9=E6=B3=95=E5=8A=A0?= =?UTF-8?q?=E7=BC=93=E5=AD=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/constant/CacheConstants.java | 4 +++ .../impl/OrderMonitorDataServiceImpl.java | 32 +++++++++++++++++-- 2 files changed, 34 insertions(+), 2 deletions(-) diff --git a/jsowell-common/src/main/java/com/jsowell/common/constant/CacheConstants.java b/jsowell-common/src/main/java/com/jsowell/common/constant/CacheConstants.java index a92fcdf29..251bf3c89 100644 --- a/jsowell-common/src/main/java/com/jsowell/common/constant/CacheConstants.java +++ b/jsowell-common/src/main/java/com/jsowell/common/constant/CacheConstants.java @@ -33,6 +33,10 @@ public class CacheConstants { public static final String ACCESS_TOKEN = "AccessToken_"; + public static final String ORDER_MONITOR_DATA_BY_TRANSACTION_CODE = "order_monitor_data_by_transaction_code:"; + + public static final String ORDER_MONITOR_DATA_BY_ORDER_CODE = "order_monitor_data_by_order_code:"; + /** * 通过订单号查询订单信息Key */ diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderMonitorDataServiceImpl.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderMonitorDataServiceImpl.java index f38fb1782..09317df19 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderMonitorDataServiceImpl.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderMonitorDataServiceImpl.java @@ -1,8 +1,11 @@ package com.jsowell.pile.service.impl; +import com.jsowell.common.constant.CacheConstants; +import com.jsowell.common.core.redis.RedisCache; import com.jsowell.pile.domain.OrderMonitorData; import com.jsowell.pile.mapper.OrderMonitorDataMapper; import com.jsowell.pile.service.OrderMonitorDataService; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import javax.annotation.Resource; @@ -13,6 +16,9 @@ public class OrderMonitorDataServiceImpl implements OrderMonitorDataService { @Resource private OrderMonitorDataMapper orderMonitorDataMapper; + @Autowired + private RedisCache redisCache; + @Override public int deleteByPrimaryKey(Integer id) { return orderMonitorDataMapper.deleteByPrimaryKey(id); @@ -35,12 +41,34 @@ public class OrderMonitorDataServiceImpl implements OrderMonitorDataService { @Override public OrderMonitorData selectByOrderCode(String orderCode) { - return orderMonitorDataMapper.selectByOrderCode(orderCode); + String redisKey = CacheConstants.ORDER_MONITOR_DATA_BY_ORDER_CODE + orderCode; + OrderMonitorData orderMonitorData = redisCache.getCacheObject(redisKey); + if (orderMonitorData == null) { + orderMonitorData = orderMonitorDataMapper.selectByOrderCode(orderCode); + if (orderMonitorData != null) { + // 放缓存 + redisCache.setCacheObject(redisKey, orderMonitorData, CacheConstants.cache_expire_time_12h); + String redisKey2 = CacheConstants.ORDER_MONITOR_DATA_BY_TRANSACTION_CODE + orderMonitorData.getTransactionCode(); + redisCache.setCacheObject(redisKey2, orderMonitorData, CacheConstants.cache_expire_time_12h); + } + } + return orderMonitorData; } @Override public OrderMonitorData selectByTransactionCode(String transactionCode) { - return orderMonitorDataMapper.selectByTransactionCode(transactionCode); + String redisKey = CacheConstants.ORDER_MONITOR_DATA_BY_TRANSACTION_CODE + transactionCode; + OrderMonitorData orderMonitorData = redisCache.getCacheObject(redisKey); + if (orderMonitorData == null) { + orderMonitorData = orderMonitorDataMapper.selectByTransactionCode(transactionCode); + if (orderMonitorData != null) { + // 放缓存 + redisCache.setCacheObject(redisKey, orderMonitorData, CacheConstants.cache_expire_time_12h); + String redisKey2 = CacheConstants.ORDER_MONITOR_DATA_BY_ORDER_CODE + orderMonitorData.getOrderCode(); + redisCache.setCacheObject(redisKey2, orderMonitorData, CacheConstants.cache_expire_time_12h); + } + } + return orderMonitorData; } }