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);
|
2022-09-15 15:31:34 +08:00
|
|
|
|
|
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
|
|
|
|
}
|