package com.sundot.airport.system.mapper;

import java.util.List;

import com.sundot.airport.system.domain.BasePerformanceIndicator;

/**
 * 考核指标Mapper接口
 *
 * @author ruoyi
 * @date 2026-04-28
 */
public interface BasePerformanceIndicatorMapper {
    /**
     * 查询考核指标
     *
     * @param id 考核指标主键
     * @return 考核指标
     */
    public BasePerformanceIndicator selectBasePerformanceIndicatorById(Long id);

    /**
     * 查询考核指标列表
     *
     * @param basePerformanceIndicator 考核指标
     * @return 考核指标集合
     */
    public List<BasePerformanceIndicator> selectBasePerformanceIndicatorList(BasePerformanceIndicator basePerformanceIndicator);

    /**
     * 查询考核指标列表（严格）
     *
     * @param basePerformanceIndicator 考核指标
     * @return 考核指标集合
     */
    public List<BasePerformanceIndicator> selectBasePerformanceIndicatorStrictList(BasePerformanceIndicator basePerformanceIndicator);

    /**
     * 新增考核指标
     *
     * @param basePerformanceIndicator 考核指标
     * @return 结果
     */
    public int insertBasePerformanceIndicator(BasePerformanceIndicator basePerformanceIndicator);

    /**
     * 修改考核指标
     *
     * @param basePerformanceIndicator 考核指标
     * @return 结果
     */
    public int updateBasePerformanceIndicator(BasePerformanceIndicator basePerformanceIndicator);

    /**
     * 删除考核指标
     *
     * @param id 考核指标主键
     * @return 结果
     */
    public int deleteBasePerformanceIndicatorById(Long id);

    /**
     * 批量删除考核指标
     *
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteBasePerformanceIndicatorByIds(Long[] ids);

    /**
     * 查询考核指标列表
     *
     * @param list 所属二级分类编码列表
     * @return 考核指标集合
     */
    public List<BasePerformanceIndicator> selectBasePerformanceIndicatorListByCategoryCodeList(List<String> list);
}
