package com.hw.wms.service;

import java.util.List;
import com.hw.wms.domain.WmsRawOutstockDetail;

/**
 * 原材料出库记录明细Service接口
 *
 * @author xins
 * @date 2023-12-22
 */
public interface IWmsRawOutstockDetailService
{
    /**
     * 查询原材料出库记录明细
     *
     * @param rawOutstockDetailId 原材料出库记录明细主键
     * @return 原材料出库记录明细
     */
    public WmsRawOutstockDetail selectWmsRawOutstockDetailByRawOutstockDetailId(Long rawOutstockDetailId);

    /**
     * 查询原材料出库记录明细列表
     *
     * @param wmsRawOutstockDetail 原材料出库记录明细
     * @return 原材料出库记录明细集合
     */
    public List<WmsRawOutstockDetail> selectWmsRawOutstockDetailList(WmsRawOutstockDetail wmsRawOutstockDetail);

    /**
     * 新增原材料出库记录明细
     *
     * @param wmsRawOutstockDetail 原材料出库记录明细
     * @return 结果
     */
    public int insertWmsRawOutstockDetail(WmsRawOutstockDetail wmsRawOutstockDetail);

    /**
     * 修改原材料出库记录明细
     *
     * @param wmsRawOutstockDetail 原材料出库记录明细
     * @return 结果
     */
    public int updateWmsRawOutstockDetail(WmsRawOutstockDetail wmsRawOutstockDetail);

    /**
     * 批量删除原材料出库记录明细
     *
     * @param rawOutstockDetailIds 需要删除的原材料出库记录明细主键集合
     * @return 结果
     */
    public int deleteWmsRawOutstockDetailByRawOutstockDetailIds(Long[] rawOutstockDetailIds);

    /**
     * 删除原材料出库记录明细信息
     *
     * @param rawOutstockDetailId 原材料出库记录明细主键
     * @return 结果
     */
    public int deleteWmsRawOutstockDetailByRawOutstockDetailId(Long rawOutstockDetailId);

    /**
     * 查询原材料出库记录明细列表，供手持出库使用
     *
     * @param wmsRawOutstockDetail 原材料出库记录明细
     * @return 原材料出库记录明细
     */
    public List<WmsRawOutstockDetail> selectAuditPassRawOutstockDetails(WmsRawOutstockDetail wmsRawOutstockDetail);

}
