From 1aea5d028172fa742148ac120ab1bdf69bdcac11 Mon Sep 17 00:00:00 2001 From: liyj <1617420630@qq.com> Date: Thu, 6 Nov 2025 16:48:08 +0800 Subject: [PATCH] =?UTF-8?q?=E9=87=91=E9=A2=9D=E5=8F=96=E6=95=B4=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../shop/sync/service/impl/SyncThirdDataServiceImpl.java | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/mall-shop/src/main/java/com/suisung/mall/shop/sync/service/impl/SyncThirdDataServiceImpl.java b/mall-shop/src/main/java/com/suisung/mall/shop/sync/service/impl/SyncThirdDataServiceImpl.java index cd95608a..bb76332b 100644 --- a/mall-shop/src/main/java/com/suisung/mall/shop/sync/service/impl/SyncThirdDataServiceImpl.java +++ b/mall-shop/src/main/java/com/suisung/mall/shop/sync/service/impl/SyncThirdDataServiceImpl.java @@ -979,6 +979,9 @@ public class SyncThirdDataServiceImpl extends SyncBaseThirdSxAbstract implements logger.info("key:{},Product_number:{}",key,itemId); if(array_item_spec.isEmpty()){ BigDecimal saleAmount=new BigDecimal(unitPrice).multiply(new BigDecimal(delta)); + if(saleAmount.compareTo(BigDecimal.ZERO)<0){ + saleAmount=saleAmount.multiply(new BigDecimal("-1")); + } redisTemplate.opsForHash().increment(key, itemId+"-"+orderId+"-"+unitPrice+"-"+saleAmount.toPlainString(), delta.doubleValue()); logger.info("存储无规格库存成功"); continue; @@ -996,6 +999,9 @@ public class SyncThirdDataServiceImpl extends SyncBaseThirdSxAbstract implements itemReturnAmount=unitPriceBg.multiply(itemQuaryty); } logger.info("unitWeight-{};itemQuaryty-{};unitPriceBg-{}",unitWeight,itemQuaryty,unitPriceBg); + if(itemReturnAmount.compareTo(BigDecimal.ZERO)<0){ + itemReturnAmount=itemReturnAmount.multiply(new BigDecimal("-1")); + } // 使用 Redis 的 HINCRBY 保证原子性和高性能 redisTemplate.opsForHash().increment(key, itemId+"-"+orderId+"-"+unitPriceBg.toPlainString()+"-"+itemReturnAmount.toPlainString(), itemQuaryty.doubleValue()); logger.info("存储有规格库存成功",itemId+"-"+orderId+"-"+unitPriceBg.toPlainString());