update 清除订单缓存

This commit is contained in:
2023-05-04 15:20:33 +08:00
parent d1ad425bd6
commit 8a775b93c6

View File

@@ -37,7 +37,13 @@ import com.jsowell.pile.domain.PileAuthCard;
import com.jsowell.pile.domain.PileBasicInfo;
import com.jsowell.pile.domain.WxpayCallbackRecord;
import com.jsowell.pile.domain.WxpayRefundCallback;
import com.jsowell.pile.dto.*;
import com.jsowell.pile.dto.GenerateOrderDTO;
import com.jsowell.pile.dto.IndexQueryDTO;
import com.jsowell.pile.dto.QueryOrderDTO;
import com.jsowell.pile.dto.QueryPersonPileDTO;
import com.jsowell.pile.dto.QueryStartChargeDTO;
import com.jsowell.pile.dto.QueryStationInfoDTO;
import com.jsowell.pile.dto.RefundableWxPayOrderData;
import com.jsowell.pile.mapper.OrderBasicInfoMapper;
import com.jsowell.pile.service.IMemberBasicInfoService;
import com.jsowell.pile.service.IOrderAbnormalRecordService;
@@ -84,6 +90,7 @@ import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.concurrent.CompletableFuture;
import java.util.concurrent.TimeUnit;
import java.util.function.Function;
import java.util.stream.Collectors;
@@ -377,11 +384,14 @@ public class OrderBasicInfoServiceImpl implements IOrderBasicInfoService {
public int updateOrderBasicInfo(OrderBasicInfo orderBasicInfo) {
// 清缓存
this.cleanCacheByOrderCode(orderBasicInfo.getOrderCode(), orderBasicInfo.getTransactionCode());
return orderBasicInfoMapper.updateOrderBasicInfo(orderBasicInfo);
int i = orderBasicInfoMapper.updateOrderBasicInfo(orderBasicInfo);
CompletableFuture.runAsync(() -> this.cleanCacheByOrderCode(orderBasicInfo.getOrderCode(), orderBasicInfo.getTransactionCode()));
return i;
}
@Override
public void cleanCacheByOrderCode(String orderCode, String transactionCode) {
logger.debug("清除订单缓存 orderCode:{}, transactionCode:{}", orderCode, transactionCode);
List<String> keys = Lists.newArrayList();
if (StringUtils.isNotBlank(orderCode)) {
keys.add(CacheConstants.GET_ORDER_INFO_BY_ORDER_CODE + orderCode);
@@ -982,7 +992,7 @@ public class OrderBasicInfoServiceImpl implements IOrderBasicInfoService {
if (StringUtils.isBlank(transactionCode)) {
return resultList;
}
logger.info("transactionCode:{}", transactionCode);
// logger.info("transactionCode:{}", transactionCode);
String pileConnectorCode = transactionCode.substring(0, 16);
String redisKey = CacheConstants.PILE_REAL_TIME_MONITOR_DATA + pileConnectorCode + "_" + transactionCode;
// 拿到所有数据