package cn.iocoder.yudao.module.hrm.service.salary; import cn.iocoder.yudao.framework.common.pojo.PageResult; import cn.iocoder.yudao.module.hrm.controller.admin.salary.vo.HrmEmployeeSalaryPageReqVO; import cn.iocoder.yudao.module.hrm.dal.dataobject.salary.HrmEmployeeSalaryDO; import java.util.List; /** * 员工薪酬档案 Service 接口 * * @author 超级管理员 */ public interface HrmEmployeeSalaryService { /** * 创建员工薪酬档案 * * @param salary 档案信息 * @return 档案ID */ Long createEmployeeSalary(HrmEmployeeSalaryDO salary); /** * 更新员工薪酬档案 * * @param salary 档案信息 */ void updateEmployeeSalary(HrmEmployeeSalaryDO salary); /** * 删除员工薪酬档案 * * @param id 档案ID */ void deleteEmployeeSalary(Long id); /** * 获取员工薪酬档案 * * @param id 档案ID * @return 档案信息 */ HrmEmployeeSalaryDO getEmployeeSalary(Long id); /** * 获取员工薪酬档案分页 * * @param pageReqVO 分页请求 * @return 分页结果 */ PageResult getEmployeeSalaryPage(HrmEmployeeSalaryPageReqVO pageReqVO); /** * 获取员工薪酬档案历史列表 * * @param userId 员工ID * @return 档案列表 */ List getEmployeeSalaryList(Long userId); /** * 获取员工最新生效的薪酬档案 * * @param userId 员工ID * @return 档案信息 */ HrmEmployeeSalaryDO getLatestEmployeeSalary(Long userId); }