package com.haha.service;

import com.haha.entity.Order;

/**
 * 订单库存服务接口
 * 处理订单相关的库存操作
 */
public interface OrderInventoryService {

    /**
     * 订单支付成功，扣减库存
     *
     * @param order 订单
     */
    void decreaseStockOnPaid(Order order);

    /**
     * 订单退款，恢复库存
     *
     * @param order 订单
     */
    void restoreStockOnRefund(Order order);

    /**
     * 检查订单商品库存是否充足
     *
     * @param deviceId 设备ID
     * @param items    商品明细JSON
     * @return 是否充足
     */
    boolean checkStockAvailable(String deviceId, String items);
}
