商品缓存清除于设置

This commit is contained in:
Tankaikai
2025-04-18 15:55:36 +08:00
parent c9ba9a1c45
commit c2a4672358
2 changed files with 7 additions and 0 deletions

View File

@@ -186,6 +186,7 @@ public class OrderInfoRpcServiceImpl implements OrderInfoRpcService {
@Override
public void orderRefundCallback(JSONObject data) {
log.info(">>>>>>>>>>>>>>>>>:入参:{}", data.toJSONString());
Long orderId = data.getLong("orderId");
// 订单取消后商品库存恢复,耗材恢复,流水记录
OrderInfo orderInfo = orderInfoMapper.selectOneById(orderId);

View File

@@ -232,13 +232,16 @@ public class ProductRpcServiceImpl implements ProductRpcService {
if (CollUtil.isEmpty(list)) {
return;
}
log.info(">>>>>>>>>>>>>>>>>入参1{}", list.size());
boolean isHasStockChangeToZero = false;
for (ProductStockSubtractDTO dto : list) {
Product product = productMapper.selectOneById(dto.getProductId());
log.info(">>>>>>>>>>>>>>>>>入参2{}", product.getName());
// 商品是否允许退款退货时归还库存
if (product.getIsRefundStock() == YesNoEnum.NO.value()) {
continue;
}
log.info(">>>>>>>>>>>>>>>>>入参3{}", product.getName());
productMapper.updateProductStockNum(dto.getProductId(), dto.getShopId(), "add", dto.getNum());
// 记录商品库存流水
ProductStockFlow flow = new ProductStockFlow();
@@ -255,7 +258,10 @@ public class ProductRpcServiceImpl implements ProductRpcService {
flow.setRemark("红冲订单取消/退菜/退单消耗的库存");
flow.setOrderId(orderId);
productStockFlowService.saveFlow(flow);
String key = StrUtil.format(SHOP_PRODUCT_STOCK, shopId, product.getId());
log.info(">>>>>>>>>>>>>>>>>入参4{}", redisService.get(key));
refreshRedisProdStock(shopId, product.getId(), flow.getAfterNumber());
log.info(">>>>>>>>>>>>>>>>>入参5{}", redisService.get(key));
if (!isHasStockChangeToZero && NumberUtil.isLessOrEqual(flow.getAfterNumber(), BigDecimal.ZERO)) {
isHasStockChangeToZero = true;
}