Compare commits

..

No commits in common. "253d05303d7482ab06050cb5e77d7761fb92ad29" and "53aca6ede9cb49e08947184aba7013c686c61737" have entirely different histories.

2 changed files with 7 additions and 30 deletions

View File

@ -3287,8 +3287,6 @@ public class ShopOrderBaseServiceImpl extends BaseServiceImpl<ShopOrderBaseMappe
Integer order_item_inventory_lock = order_item_row.getOrder_item_inventory_lock(); Integer order_item_inventory_lock = order_item_row.getOrder_item_inventory_lock();
String item_src_id = order_item_row.getItem_src_id(); String item_src_id = order_item_row.getItem_src_id();
logger.debug("尝试执行订单商品item_src_id:{} 锁定库存:{}", item_src_id, order_item_inventory_lock);
if (ObjectUtil.equal(1002, order_item_inventory_lock) && CheckUtil.isNotEmpty(item_src_id)) { if (ObjectUtil.equal(1002, order_item_inventory_lock) && CheckUtil.isNotEmpty(item_src_id)) {
Long item_id = order_item_row.getItem_id(); Long item_id = order_item_row.getItem_id();
if (shopProductItemService.lockSkuStock(item_id, order_item_row.getOrder_item_quantity()) <= 0) { if (shopProductItemService.lockSkuStock(item_id, order_item_row.getOrder_item_quantity()) <= 0) {
@ -3296,8 +3294,6 @@ public class ShopOrderBaseServiceImpl extends BaseServiceImpl<ShopOrderBaseMappe
throw new ApiException(String.format(I18nUtil._("更改: %s 冻结库存失败!"), item_id)); throw new ApiException(String.format(I18nUtil._("更改: %s 冻结库存失败!"), item_id));
} }
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_quantity); stockDeltaMap.put(item_src_id, -order_item_quantity);

View File

@ -59,7 +59,6 @@ import com.suisung.mall.shop.store.service.*;
import com.suisung.mall.shop.user.service.ShopUserFavoritesItemService; import com.suisung.mall.shop.user.service.ShopUserFavoritesItemService;
import com.suisung.mall.shop.user.service.ShopUserProductBrowseService; import com.suisung.mall.shop.user.service.ShopUserProductBrowseService;
import io.seata.spring.annotation.GlobalTransactional; import io.seata.spring.annotation.GlobalTransactional;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
@ -91,7 +90,6 @@ import static com.suisung.mall.common.utils.I18nUtil._;
* @author Xinze * @author Xinze
* @since 2021-04-07 * @since 2021-04-07
*/ */
@Slf4j
@Service @Service
public class ShopProductItemServiceImpl extends BaseServiceImpl<ShopProductItemMapper, ShopProductItem> implements ShopProductItemService { public class ShopProductItemServiceImpl extends BaseServiceImpl<ShopProductItemMapper, ShopProductItem> implements ShopProductItemService {
@ -2239,34 +2237,17 @@ public class ShopProductItemServiceImpl extends BaseServiceImpl<ShopProductItemM
} }
/** /**
* 锁定SKU库存 * 锁定库存
* *
* @param itemId 商品SKU ID * @param itemId
* @param cartQuantity 购物车商品数量 * @param cart_quantity
* @return 影响的行数1表示锁定成功0表示锁定失败库存不足 * @return
*/ */
@Override @Override
public int lockSkuStock(Long itemId, int cartQuantity) { public int lockSkuStock(Long itemId, int cart_quantity) {
// 参数校验 int flag = this.baseMapper.lockSkuStock(itemId, cart_quantity);
if (itemId == null || cartQuantity <= 0) {
log.warn("锁定SKU库存参数异常: itemId={}, cartQuantity={}", itemId, cartQuantity);
return 0;
}
// 调用Mapper方法锁定库存
int affectedRows = this.baseMapper.lockSkuStock(itemId, cartQuantity);
// 清理SKU库存缓存
cleanSkuStockCache(itemId); cleanSkuStockCache(itemId);
return flag;
// 记录库存锁定操作日志
if (affectedRows > 0) {
log.debug("SKU库存锁定成功: itemId={}, cartQuantity={}, affectedRows={}", itemId, cartQuantity, affectedRows);
} else {
log.warn("SKU库存锁定失败可能库存不足: itemId={}, cartQuantity={}", itemId, cartQuantity);
}
return affectedRows;
} }
@Override @Override