package com.ruoyi.system.mapper;

import com.ruoyi.system.domain.ActSupplies;
import com.ruoyi.system.domain.ActSuppliesDetails;
import org.springframework.stereotype.Repository;

import java.util.List;
import java.util.Map;

/**
 * 物料细分类管理Mapper接口
 * 
 * @author ruoyi
 * @date 2023-07-11
 */
@Repository
public interface ActSuppliesDetailsMapper 
{
    /**
     * 查询物料细分类管理
     * 
     * @param id 物料细分类管理ID
     * @return 物料细分类管理
     */
    public ActSuppliesDetails selectActSuppliesDetailsById(Long id);

    /**
     * 查询物料细分类管理列表
     * 
     * @param actSuppliesDetails 物料细分类管理
     * @return 物料细分类管理集合
     */
    public List<ActSuppliesDetails> selectActSuppliesDetailsList(ActSuppliesDetails actSuppliesDetails);


    public List<ActSuppliesDetails> selectActSuppliesDetailsMaterialList(ActSuppliesDetails actSuppliesDetails);

    /**
     * 新增物料细分类管理
     * 
     * @param actSuppliesDetails 物料细分类管理
     * @return 结果
     */
    public int insertActSuppliesDetails(ActSuppliesDetails actSuppliesDetails);

    /**
     * 修改物料细分类管理
     * 
     * @param actSuppliesDetails 物料细分类管理
     * @return 结果
     */
    public int updateActSuppliesDetails(ActSuppliesDetails actSuppliesDetails);

    /**
     * 删除物料细分类管理
     * 
     * @param id 物料细分类管理ID
     * @return 结果
     */
    public int deleteActSuppliesDetailsById(Long id);

    /**
     * 批量删除物料细分类管理
     * 
     * @param ids 需要删除的数据ID
     * @return 结果
     */
    public int deleteActSuppliesDetailsByIds(Long[] ids);

    /**
     *
     * @param
     * @return
     */
    public int countByDetailsName(ActSuppliesDetails actSuppliesDetails);

    int updateActSuppliesDetails(Map<String, Object> paramMap);
    int setEnable(Map<String, Object> paramMap);
    int setDisable(Map<String, Object> paramMap);

    List<ActSupplies> saveSid();

    List<ActSuppliesDetails> getLevel();

    int countBySuppliesLevel(ActSuppliesDetails actSuppliesDetails);

    List<ActSuppliesDetails> findAllId(Long[] ids);

    Long findAllIds(ActSuppliesDetails actSuppliesDetails);

    List<ActSuppliesDetails> selectActSuppliesDetailsMaterialListPZ(ActSuppliesDetails actSuppliesDetails);
}
