package com.engine.salary.mapper.report;

import com.engine.salary.report.entity.po.SalaryStatisticsDimensionPO;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface SalaryStatisticsDimensionMapper {

	/**
	 * 查询所有记录
	 *
	 * @return 返回集合，没有返回空List
	 */
	List<SalaryStatisticsDimensionPO> listAll();

	/**
	 * 条件查询
	 *
	 * @return 返回集合，没有返回空List
	 */
	List<SalaryStatisticsDimensionPO> listSome(SalaryStatisticsDimensionPO salaryStatsDim);


	/**
	 * 根据主键查询
	 *
	 * @param id 主键
	 * @return 返回记录，没有返回null
	 */
	SalaryStatisticsDimensionPO getById(Long id);

	/**
	 * 新增，忽略null字段
	 *
	 * @param salaryStatsDim 新增的记录
	 * @return 返回影响行数
	 */
	int insertIgnoreNull(SalaryStatisticsDimensionPO salaryStatsDim);

	/**
	 * 修改，修改所有字段
	 *
	 * @param salaryStatsDim 修改的记录
	 * @return 返回影响行数
	 */
	int update(SalaryStatisticsDimensionPO salaryStatsDim);

	/**
	 * 修改，忽略null字段
	 *
	 * @param salaryStatsDim 修改的记录
	 * @return 返回影响行数
	 */
	int updateIgnoreNull(SalaryStatisticsDimensionPO salaryStatsDim);

	/**
	 * 删除记录
	 *
	 * @param salaryStatsDim 待删除的记录
	 * @return 返回影响行数
	 */
	int delete(SalaryStatisticsDimensionPO salaryStatsDim);

    void batDelete(@Param("ids") List<Long> ids);
}