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();
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)) {
Long item_id = order_item_row.getItem_id();
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));
}
logger.debug("成功执行订单商品item_src_id:{} 锁定库存:{}", item_src_id, order_item_inventory_lock);
// RMK 第三方数据同步相关redis 给这个商品减去对应的库存
Map<String, Integer> stockDeltaMap = new HashMap<>();
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.ShopUserProductBrowseService;
import io.seata.spring.annotation.GlobalTransactional;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@ -91,7 +90,6 @@ import static com.suisung.mall.common.utils.I18nUtil._;
* @author Xinze
* @since 2021-04-07
*/
@Slf4j
@Service
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 cartQuantity 购物车商品数量
* @return 影响的行数1表示锁定成功0表示锁定失败库存不足
* @param itemId
* @param cart_quantity
* @return
*/
@Override
public int lockSkuStock(Long itemId, int cartQuantity) {
// 参数校验
if (itemId == null || cartQuantity <= 0) {
log.warn("锁定SKU库存参数异常: itemId={}, cartQuantity={}", itemId, cartQuantity);
return 0;
}
// 调用Mapper方法锁定库存
int affectedRows = this.baseMapper.lockSkuStock(itemId, cartQuantity);
// 清理SKU库存缓存
public int lockSkuStock(Long itemId, int cart_quantity) {
int flag = this.baseMapper.lockSkuStock(itemId, cart_quantity);
cleanSkuStockCache(itemId);
// 记录库存锁定操作日志
if (affectedRows > 0) {
log.debug("SKU库存锁定成功: itemId={}, cartQuantity={}, affectedRows={}", itemId, cartQuantity, affectedRows);
} else {
log.warn("SKU库存锁定失败可能库存不足: itemId={}, cartQuantity={}", itemId, cartQuantity);
}
return affectedRows;
return flag;
}
@Override