思迅同步,改为出库时才扣减库存

This commit is contained in:
liyj 2025-10-21 18:01:12 +08:00
parent 2b03dee62d
commit a65fb441cb
3 changed files with 37 additions and 12 deletions

View File

@ -3311,9 +3311,9 @@ public class ShopOrderBaseServiceImpl extends BaseServiceImpl<ShopOrderBaseMappe
logger.debug("成功执行订单商品item_src_id:{} 锁定库存:{}", item_src_id, order_item_inventory_lock); logger.debug("成功执行订单商品item_src_id:{} 锁定库存:{}", item_src_id, order_item_inventory_lock);
// RMK 第三方数据同步相关redis 给这个商品减去对应的库存 // RMK 第三方数据同步相关redis 给这个商品减去对应的库存
Map<String, Integer> stockDeltaMap = new HashMap<>(); // Map<String, Integer> stockDeltaMap = new HashMap<>();
stockDeltaMap.put(item_src_id + "-" + order_item_row.getOrder_id(), -order_item_quantity); // stockDeltaMap.put(item_src_id + "-" + order_item_row.getOrder_id(), -order_item_quantity);
syncThirdDataService.incrProductStockToRedis(stockDeltaMap); // syncThirdDataService.incrProductStockToRedis(stockDeltaMap);
} }
} }
@ -4234,9 +4234,9 @@ public class ShopOrderBaseServiceImpl extends BaseServiceImpl<ShopOrderBaseMappe
} }
log.debug("释放库存Item_src_id:{},数量:{}", shopProductItem.getItem_src_id(), order_item_quantity); log.debug("释放库存Item_src_id:{},数量:{}", shopProductItem.getItem_src_id(), order_item_quantity);
// RMK 第三方数据同步相关redis 给这个商品加上对应的库存 // RMK 第三方数据同步相关redis 给这个商品加上对应的库存
Map<String, Integer> stockDeltaMap = new HashMap<>(); // Map<String, Integer> stockDeltaMap = new HashMap<>();
stockDeltaMap.put(shopProductItem.getItem_src_id() + "-" + order_item_row.getOrder_id(), order_item_quantity); // stockDeltaMap.put(shopProductItem.getItem_src_id() + "-" + order_item_row.getOrder_id(), order_item_quantity);
syncThirdDataService.incrProductStockToRedis(stockDeltaMap); // syncThirdDataService.incrProductStockToRedis(stockDeltaMap);
} }
} }
@ -7264,10 +7264,10 @@ public class ShopOrderBaseServiceImpl extends BaseServiceImpl<ShopOrderBaseMappe
} }
// RMK 第三方数据同步相关redis 给这个商品减去上对应的库存 // RMK 第三方数据同步相关redis 给这个商品减去上对应的库存
log.debug("减库存Item_src_id:{},数量:{}", item_src_id, cart_quantity); // log.debug("减库存Item_src_id:{},数量:{}", item_src_id, cart_quantity);
Map<String, Integer> stockDeltaMap = new HashMap<>(); // Map<String, Integer> stockDeltaMap = new HashMap<>();
stockDeltaMap.put(item_src_id + "-" + order_id, -cart_quantity); // stockDeltaMap.put(item_src_id + "-" + order_id, -cart_quantity);
syncThirdDataService.incrProductStockToRedis(stockDeltaMap); // syncThirdDataService.incrProductStockToRedis(stockDeltaMap);
} }
// end // end

View File

@ -1515,7 +1515,7 @@ public class ShopOrderReturnServiceImpl extends BaseServiceImpl<ShopOrderReturnM
} }
logger.debug("成功增加商品库存商品项ID: {}, 增加数量: {}", itemId, returnNum); logger.debug("成功增加商品库存商品项ID: {}, 增加数量: {}", itemId, returnNum);
//todo 退货新增返还思迅库存 // RMK 第三方数据同步相关redis 新增返还思迅库存
Map<String, Integer> stockDeltaMap = new HashMap<>(); Map<String, Integer> stockDeltaMap = new HashMap<>();
String item_src_id= productItem.getItem_src_id(); String item_src_id= productItem.getItem_src_id();
stockDeltaMap.put(item_src_id + "-" + shopOrderItem.getOrder_id(), returnNum); stockDeltaMap.put(item_src_id + "-" + shopOrderItem.getOrder_id(), returnNum);

View File

@ -15,10 +15,12 @@ import cn.hutool.core.util.StrUtil;
import cn.hutool.http.HttpUtil; import cn.hutool.http.HttpUtil;
import cn.hutool.json.JSONObject; import cn.hutool.json.JSONObject;
import cn.hutool.json.JSONUtil; import cn.hutool.json.JSONUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.suisung.mall.common.api.StateCode; import com.suisung.mall.common.api.StateCode;
import com.suisung.mall.common.constant.CommonConstant; import com.suisung.mall.common.constant.CommonConstant;
import com.suisung.mall.common.constant.SFExpressConstant; import com.suisung.mall.common.constant.SFExpressConstant;
import com.suisung.mall.common.exception.ApiException; import com.suisung.mall.common.exception.ApiException;
import com.suisung.mall.common.modules.order.ShopOrderItem;
import com.suisung.mall.common.modules.store.ShopMchEntry; import com.suisung.mall.common.modules.store.ShopMchEntry;
import com.suisung.mall.common.modules.store.ShopStoreSameCityTransportBase; import com.suisung.mall.common.modules.store.ShopStoreSameCityTransportBase;
import com.suisung.mall.common.modules.store.ShopStoreSfOrder; import com.suisung.mall.common.modules.store.ShopStoreSfOrder;
@ -29,11 +31,13 @@ import com.suisung.mall.common.utils.*;
import com.suisung.mall.shop.message.service.PushMessageService; import com.suisung.mall.shop.message.service.PushMessageService;
import com.suisung.mall.shop.order.service.ShopOrderBaseService; import com.suisung.mall.shop.order.service.ShopOrderBaseService;
import com.suisung.mall.shop.order.service.ShopOrderInfoService; import com.suisung.mall.shop.order.service.ShopOrderInfoService;
import com.suisung.mall.shop.order.service.ShopOrderItemService;
import com.suisung.mall.shop.order.service.ShopOrderReturnService; import com.suisung.mall.shop.order.service.ShopOrderReturnService;
import com.suisung.mall.shop.sfexpress.service.SFExpressApiService; import com.suisung.mall.shop.sfexpress.service.SFExpressApiService;
import com.suisung.mall.shop.store.service.ShopMchEntryService; import com.suisung.mall.shop.store.service.ShopMchEntryService;
import com.suisung.mall.shop.store.service.ShopStoreSameCityTransportBaseService; import com.suisung.mall.shop.store.service.ShopStoreSameCityTransportBaseService;
import com.suisung.mall.shop.store.service.ShopStoreSfOrderService; import com.suisung.mall.shop.store.service.ShopStoreSfOrderService;
import com.suisung.mall.shop.sync.service.SyncThirdDataService;
import com.suisung.mall.shop.wechat.service.WxOrderShippingService; import com.suisung.mall.shop.wechat.service.WxOrderShippingService;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger; import org.slf4j.Logger;
@ -98,6 +102,12 @@ public class SFExpressApiServiceImpl implements SFExpressApiService {
@Autowired @Autowired
private PushMessageService pushMessageService; private PushMessageService pushMessageService;
@Autowired
private SyncThirdDataService syncThirdDataService;
@Lazy
@Autowired
private ShopOrderItemService shopOrderItemService;
/** /**
* 创建顺丰同店铺-连锁店铺 * 创建顺丰同店铺-连锁店铺
@ -1002,9 +1012,24 @@ public class SFExpressApiServiceImpl implements SFExpressApiService {
orderIsOutStatus = StateCode.ORDER_PICKING_STATE_YES; // 已出库 orderIsOutStatus = StateCode.ORDER_PICKING_STATE_YES; // 已出库
orderIsShippedStatus = 0; orderIsShippedStatus = 0;
pushRemark = "配送员已到店。"; pushRemark = "配送员已到店。";
// 上传发货信息到微信 // 上传发货信息到微信
wxOrderShippingService.uploadShippingInfoToWx(2, shopOrderId); wxOrderShippingService.uploadShippingInfoToWx(2, shopOrderId);
//出库扣减思迅库存star
// RMK 第三方数据同步相关redis 给这个商品减去对应的库存
QueryWrapper<ShopOrderItem> itemQueryWrapper = new QueryWrapper<>();
String order_id=shopStoreSfOrder.getShop_order_id();
itemQueryWrapper.eq("order_id", order_id);
List<ShopOrderItem> order_item_rows = shopOrderItemService.find(itemQueryWrapper);
if(!order_item_rows.isEmpty()){
for (ShopOrderItem shopOrderItem : order_item_rows) {
Map<String, Integer> stockDeltaMap = new HashMap<>();
String item_src_id= shopOrderItem.getItem_src_id();
Integer order_item_quantity=shopOrderItem.getOrder_item_quantity();
stockDeltaMap.put(item_src_id + "-" + shopStoreSfOrder.getShop_order_id(), -order_item_quantity);
syncThirdDataService.incrProductStockToRedis(stockDeltaMap);
}
}
//出库扣减思迅库存end
} else if (shopStoreSfOrder.getOrder_status().equals(StateCode.SF_ORDER_STATUS_RECEIVED)) { } else if (shopStoreSfOrder.getOrder_status().equals(StateCode.SF_ORDER_STATUS_RECEIVED)) {
// 顺丰同城状态15-配送员配送中已取货 // 顺丰同城状态15-配送员配送中已取货
// 商城订单状态 2030-待发货 2040-已发货/待收货确认 // 商城订单状态 2030-待发货 2040-已发货/待收货确认