package com.engine.salary.mapper.salaryacct;

import com.engine.salary.entity.salaryacct.po.SalaryAcctResultTempPO;
import org.apache.ibatis.annotations.Param;

import java.util.Collection;
import java.util.List;

/**
 * 薪资核算结果临时存储
 * <p>Copyright: Copyright (c) 2022</p>
 * <p>Company: 泛微软件</p>
 *
 * @author qiantao
 * @version 1.0
 **/
public interface SalaryAcctResultTempMapper {

    /**
     * 批量插入
     *
     * @param salaryAcctResultTemps
     */
    void batchInsert(@Param("collection") Collection<SalaryAcctResultTempPO> salaryAcctResultTemps);

    /**
     * 根据薪资核算记录id删除薪资核算结果
     *
     * @param salaryAcctRecordIds
     */
    void deleteBySalaryAcctRecordIds(@Param("salaryAcctRecordIds") Collection<Long> salaryAcctRecordIds);

    /**
     * 根据薪资核算人员id删除薪资核算结果
     *
     * @param salaryAcctEmpIds
     */
    void deleteBySalaryAcctEmpIds(@Param("salaryAcctEmpIds") Collection<Long> salaryAcctEmpIds);

    /**
     * 根据key删除薪资核算结果
     *
     * @param calculateKey
     */
    void deleteByCalculateKey(@Param("calculateKey") String calculateKey);

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

}
