package com.hzs.system.base;

import com.hzs.common.core.domain.R;
import com.hzs.system.base.dto.BarCodeDTO;
import com.hzs.system.base.dto.BarCodeUseDTO;

import java.util.List;

/**
 * 条码服务接口
 */
public interface IBarCodeServiceApi {

    /**
     * 查询条码
     *
     * @param barCodeList 条码列表
     * @param pkCountry   国家ID
     * @return
     */
    R<List<BarCodeDTO>> queryPrintBarCode(List<String> barCodeList, Integer pkCountry);

    /**
     * 使用条码
     *
     * @param barCodeUseList 条码明细列表
     * @param pkCountry      国家ID
     * @param userId         用户ID
     * @return
     */
    R<String> useBarCode(List<BarCodeUseDTO> barCodeUseList, Integer pkCountry, Long userId);

    /**
     * 清除条码
     *
     * @param barCodeItemsIdList 条码ID列表
     * @param pkCountry          国家ID
     * @param userId             用户ID
     * @return
     */
    R<String> clearBarCode(List<Integer> barCodeItemsIdList, Integer pkCountry, Long userId);

}
