package com.hw.wms.mapper;

import java.util.List;

import com.hw.wms.domain.WmsWarehouseMaterial;

/**
 * 仓库可储存物料信息Mapper接口
 *
 * @author xins
 * @date 2024-01-09
 */
public interface WmsWarehouseMaterialMapper {
    /**
     * 查询仓库可储存物料信息
     *
     * @param warehouseId 仓库可储存物料信息主键
     * @return 仓库可储存物料信息
     */
    public WmsWarehouseMaterial selectWmsWarehouseMaterialByWarehouseId(Long warehouseId);

    /**
     * 查询仓库可储存物料信息列表
     *
     * @param wmsWarehouseMaterial 仓库可储存物料信息
     * @return 仓库可储存物料信息集合
     */
    public List<WmsWarehouseMaterial> selectWmsWarehouseMaterialList(WmsWarehouseMaterial wmsWarehouseMaterial);

    /**
     * 新增仓库可储存物料信息
     *
     * @param wmsWarehouseMaterial 仓库可储存物料信息
     * @return 结果
     */
    public int insertWmsWarehouseMaterial(WmsWarehouseMaterial wmsWarehouseMaterial);

    /**
     * 修改仓库可储存物料信息
     *
     * @param wmsWarehouseMaterial 仓库可储存物料信息
     * @return 结果
     */
    public int updateWmsWarehouseMaterial(WmsWarehouseMaterial wmsWarehouseMaterial);

    /**
     * 删除仓库可储存物料信息
     *
     * @param warehouseId 仓库可储存物料信息主键
     * @return 结果
     */
    public int deleteWmsWarehouseMaterialByWarehouseMaterialId(Long warehouseId);

    /**
     * 批量删除仓库可储存物料信息
     *
     * @param warehouseIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteWmsWarehouseMaterialByWarehouseMaterialIds(Long[] warehouseIds);



    /**
     * 查询仓库可储存物料信息列表,Join material
     *
     * @param wmsWarehouseMaterial 仓库可储存物料信息
     * @return 仓库可储存物料信息集合
     */
    public List<WmsWarehouseMaterial> selectWmsWarehouseMaterialJoinList(WmsWarehouseMaterial wmsWarehouseMaterial);

    /**
     * 批量新增仓库物料配置信息
     *
     * @param warehouseMaterialList 仓库物料列表
     * @return 结果
     */
    public int batchInsertWarehouseMaterial(List<WmsWarehouseMaterial> warehouseMaterialList);

}
