weaver-hrm-salary/src/com/engine/salary/service/SalaryAcctEmployeeService.java

260 lines
7.8 KiB
Java
Raw Normal View History

2022-04-06 20:01:00 +08:00
package com.engine.salary.service;
import com.engine.salary.entity.salaryacct.dto.SalaryAcctEmployeeCountDTO;
import com.engine.salary.entity.salaryacct.param.*;
import com.engine.salary.entity.salaryacct.po.SalaryAcctEmployeePO;
import com.engine.salary.entity.salaryacct.po.SalaryAcctRecordPO;
2023-04-10 09:47:33 +08:00
import com.engine.salary.report.entity.param.SalaryStatisticsReportDataQueryParam;
2022-04-07 16:54:10 +08:00
import com.engine.salary.util.page.PageInfo;
2022-04-06 20:01:00 +08:00
import java.util.Collection;
2023-04-10 12:43:48 +08:00
import java.util.Date;
2022-04-06 20:01:00 +08:00
import java.util.List;
2023-04-10 09:47:33 +08:00
import java.util.Set;
2022-04-06 20:01:00 +08:00
/**
* 薪资核算人员
* <p>Copyright: Copyright (c) 2022</p>
* <p>Company: 泛微软件</p>
*
* @author qiantao
* @version 1.0
**/
public interface SalaryAcctEmployeeService {
/**
* 根据薪资核算记录id统计薪资核算人员的数量
*
* @param salaryAcctRecordIds 薪资核算记录的id
* @return
*/
List<SalaryAcctEmployeeCountDTO> countBySalaryAcctRecordId(Collection<Long> salaryAcctRecordIds);
/**
* 根据主键id获取单个薪资核算人员
*
2023-04-10 09:47:33 +08:00
* @param id 主键id
2022-04-06 20:01:00 +08:00
* @return
*/
SalaryAcctEmployeePO getById(Long id);
/**
* 根据主键id查询薪资核算人员
*
2023-04-10 09:47:33 +08:00
* @param ids 主键id
2022-04-06 20:01:00 +08:00
* @return
*/
List<SalaryAcctEmployeePO> listByIds(Collection<Long> ids);
/**
* 根据薪资核算记录id查询薪资核算人员
*
* @param salaryAcctRecordId 薪资核算记录id
* @return
*/
List<SalaryAcctEmployeePO> listBySalaryAcctRecordId(Long salaryAcctRecordId);
/**
* 根据薪资核算记录id查询薪资核算人员
*
* @param salaryAcctRecordIds 薪资核算记录id
* @return
*/
List<SalaryAcctEmployeePO> listBySalaryAcctRecordIds(Collection<Long> salaryAcctRecordIds);
/**
* 根据薪资核算记录id个税扣缴义务人id查询薪资核算人员
*
* @param salaryAcctRecordId 薪资核算记录id
* @param taxAgentId 个税扣缴义务人id
* @return
*/
List<SalaryAcctEmployeePO> listBySalaryAcctRecordIdAndTaxAgentId(Long salaryAcctRecordId, Long taxAgentId);
/**
* 根据薪资核算记录id主键id查询薪资核算人员
*
* @param salaryAcctRecordId 薪资核算记录id
* @param ids 主键id
* @return
*/
List<SalaryAcctEmployeePO> listBySalaryAcctRecordIdAndIds(Long salaryAcctRecordId, Collection<Long> ids);
/**
* 根据薪资核算记录id人员id查询薪资核算人员
*
* @param salaryAcctRecordId 薪资核算记录id
* @param employeeIds 人员id
* @return
*/
List<SalaryAcctEmployeePO> listBySalaryAcctRecordIdAndEmployeeIds(Long salaryAcctRecordId, Collection<Long> employeeIds);
/**
* 根据薪资核算记录id人员id查询薪资核算人员
*
* @param salaryAcctRecordIds 薪资核算记录id
* @param employeeIds 人员id
* @return
*/
List<SalaryAcctEmployeePO> listBySalaryAcctRecordIdsAndEmployeeIds(Collection<Long> salaryAcctRecordIds, Collection<Long> employeeIds);
/**
* 根据薪资核算记录id人员id个税扣缴义务人id查询薪资核算人员
*
* @param salaryAcctRecordIds 薪资核算记录id
* @param employeeId 人员id
* @param taxAgentId 个税扣缴义务人
* @return
*/
List<SalaryAcctEmployeePO> listByRecordIdsAndEmpIdAndTaxAgentId(Collection<Long> salaryAcctRecordIds, Long employeeId, Long taxAgentId);
/**
* 根据列表查询条件查询薪资核算人员分页
*
* @param queryParam 列表查询条件
* @return
*/
2022-04-07 16:54:10 +08:00
PageInfo<SalaryAcctEmployeePO> listPageByParam(SalaryAcctEmployeeQueryParam queryParam);
2022-04-06 20:01:00 +08:00
/**
* 根据列表查询条件查询薪资核算人员
*
* @param queryParam 列表查询条件
* @return
*/
List<SalaryAcctEmployeePO> listByParam(SalaryAcctEmployeeQueryParam queryParam);
/**
* 根据薪资核算结果列表的列表查询条件查询薪资核算人员分页
*
* @param queryParam 薪资核算结果列表的列表查询条件
* @return
*/
2023-04-10 09:47:33 +08:00
PageInfo<SalaryAcctEmployeePO> listPageByResultQueryParam(SalaryAcctResultQueryParam queryParam);
2022-04-06 20:01:00 +08:00
/**
* 根据薪资核算结果列表的列表查询条件查询薪资核算人员
*
* @param queryParam 薪资核算结果列表的列表查询条件
* @return
*/
List<SalaryAcctEmployeePO> listByResultQueryParam(SalaryAcctResultQueryParam queryParam);
/**
* 根据列表查询条件查询同比减少的薪资核算人员分页
*
* @param queryParam 列表查询条件
* @return
*/
2022-04-07 16:54:10 +08:00
PageInfo<SalaryAcctEmployeePO> listPageByParam4Reduce(SalaryAcctEmployeeQueryParam queryParam);
2022-04-06 20:01:00 +08:00
2022-09-19 16:05:59 +08:00
/**
* 根据列表查询条件查询同比增加的薪资核算人员分页
*
* @param queryParam 列表查询条件
* @return
*/
PageInfo<SalaryAcctEmployeePO> listPageByParam4Add(SalaryAcctEmployeeQueryParam queryParam);
2022-04-06 20:01:00 +08:00
/**
* 根据列表查询条件查询同比减少的薪资核算人员
*
* @param queryParam 列表查询条件
* @return
*/
List<SalaryAcctEmployeePO> listByParam4Reduce(SalaryAcctEmployeeQueryParam queryParam);
2022-09-19 16:05:59 +08:00
/**
* 根据列表查询条件查询同比增加的薪资核算人员
*
* @param queryParam 列表查询条件
* @return
*/
List<SalaryAcctEmployeePO> listByParam4Add(SalaryAcctEmployeeQueryParam queryParam);
2022-04-06 20:01:00 +08:00
/**
* 根据列表查询条件查询合并计税的薪资核算人员分页
*
* @param queryParam 列表查询条件
* @return
*/
2022-04-07 16:54:10 +08:00
PageInfo<SalaryAcctEmployeePO> listPageByParam4ConsolidatedTax(SalaryAcctEmployeeQueryParam queryParam);
2022-04-06 20:01:00 +08:00
/**
* 根据列表查询条件查询合并计税的薪资核算人员
*
* @param queryParam 列表查询条件
* @return
*/
List<SalaryAcctEmployeePO> listByParam4ConsolidatedTax(SalaryAcctEmployeeQueryParam queryParam);
/**
* 添加薪资核算人员
*
2023-04-10 09:47:33 +08:00
* @param saveParam 保存参数
2022-04-06 20:01:00 +08:00
*/
2022-04-07 16:54:10 +08:00
void save(SalaryAcctEmployeeSaveParam saveParam);
2022-04-06 20:01:00 +08:00
/**
* 从环比上月减少添加薪资核算人员
*
* @param param
*/
2022-04-07 16:54:10 +08:00
void addFromReduce(SalaryAcctEmployeeAddParam param);
2022-04-06 20:01:00 +08:00
/**
* 批量保存
*
* @param salaryAcctEmployeePOS 薪资核算人员
*/
void batchSave(Collection<SalaryAcctEmployeePO> salaryAcctEmployeePOS);
/**
* 薪资核算记录会删除薪资核算结果校验异常明细线下对比导入结果
*
* @param ids
*/
void deleteByIds(Collection<Long> ids);
/**
* 根据参数删除薪资核算人员
*
* @param deleteParam 删除参数
*/
void deleteByParam(SalaryAcctEmployeeDeleteParam deleteParam);
/**
* 根据薪资核算记录id删除薪资核算人员
*
* @param salaryAcctRecordIds 薪资核算记录id
*/
void deleteBySalaryAcctRecordIds(Collection<Long> salaryAcctRecordIds);
/**
* 根据薪资核算记录id初始化薪资核算人员
*
* @param salaryAcctRecordPO 薪资核算记录
*/
void initBySalaryAcctRecord(SalaryAcctRecordPO salaryAcctRecordPO);
/**
* 刷新薪资核算人员的个税扣缴义务人
*
* @param salaryAcctRecordId 薪资核算记录
*/
2022-04-07 16:54:10 +08:00
void refresh(Long salaryAcctRecordId);
2023-04-10 09:47:33 +08:00
List<SalaryAcctEmployeePO> listBySalaryStatisticsReportParam(SalaryStatisticsReportDataQueryParam param);
/**
* 根据个税扣缴义务人和薪资所属月获取列表
*
* @param taxAgentIds
* @param salaryMonths
* @return
*/
2023-04-10 12:43:48 +08:00
List<SalaryAcctEmployeePO> listByTaxAgentAndSalaryMonth(List<Long> taxAgentIds, Set<Date> salaryMonths);
2023-04-10 09:47:33 +08:00
2022-04-06 20:01:00 +08:00
}