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

204 lines
5.4 KiB
Java
Raw Normal View History

2022-04-07 16:54:10 +08:00
package com.engine.salary.service;
import com.engine.salary.entity.datacollection.DataCollectionEmployee;
2023-03-06 17:57:20 +08:00
import com.engine.salary.entity.hrm.DeptInfo;
2024-07-25 14:04:14 +08:00
import com.engine.salary.entity.hrm.JobCallInfo;
2023-03-06 17:57:20 +08:00
import com.engine.salary.entity.hrm.PositionInfo;
import com.engine.salary.entity.hrm.SubCompanyInfo;
2023-11-06 11:19:00 +08:00
import com.engine.salary.entity.hrm.dto.EmployeeInfoExpandDTO;
2023-03-07 17:14:25 +08:00
import com.engine.salary.entity.salarysob.param.SalarySobRangeEmpQueryParam;
2023-03-16 16:10:29 +08:00
import com.engine.salary.enums.datacollection.UseEmployeeTypeEnum;
2022-04-07 16:54:10 +08:00
2023-08-28 13:31:11 +08:00
import java.util.Collection;
2024-12-06 16:00:05 +08:00
import java.util.Date;
2022-04-07 16:54:10 +08:00
import java.util.List;
2023-08-28 13:31:11 +08:00
import java.util.Map;
2022-04-07 16:54:10 +08:00
/**
* 人员信息
* <p>Copyright: Copyright (c) 2022</p>
* <p>Company: 泛微软件</p>
*
* @author qiantao
* @version 1.0
**/
public interface SalaryEmployeeService {
/**
* 获取租户下的所有人员
*
* @return
*/
2023-03-16 16:10:29 +08:00
List<DataCollectionEmployee> listAll(UseEmployeeTypeEnum empType);
2022-04-07 16:54:10 +08:00
/**
* 获取报表人员字段
*
* @return
*/
List<DataCollectionEmployee> listAllForReport();
2022-04-07 16:54:10 +08:00
/**
* 根据薪资账套id查询人员
*
* @param salarySobId 薪资账套id
* @return
*/
List<DataCollectionEmployee> listBySalarySobId(Long salarySobId);
/**
* 获取人员信息
*
* @param ids
* @return 全量
*/
2023-03-06 17:57:20 +08:00
List<DataCollectionEmployee> getEmployeeByIdsAll(List<Long> ids);
2022-04-07 16:54:10 +08:00
2023-04-14 15:18:18 +08:00
List<DataCollectionEmployee> listByIds(List<Long> ids);
/**
* 获取人员信息
*
* @param employeeId
* @return 全量
*/
2022-04-08 19:08:59 +08:00
DataCollectionEmployee getEmployeeById(Long employeeId);
2022-04-12 19:25:19 +08:00
/**
* 获取人员信息
*
* @param simpleEmployeeIds
* @return 简单
*/
2022-06-10 13:33:48 +08:00
List<DataCollectionEmployee> getEmployeeByIds(List<Long> simpleEmployeeIds);
2024-06-26 11:33:12 +08:00
/**
* 获取人员信息 包括次账号
*
* @param simpleEmployeeIds
* @return 简单
*/
List<DataCollectionEmployee> getEmployeeByIdsIncludeAccountType(List<Long> simpleEmployeeIds);
2022-06-10 13:33:48 +08:00
2022-04-12 19:25:19 +08:00
/**
* 获取当前登录人的信息
* @param employeeId
* @return
*/
// DataCollectionEmployee getLoginEmployeeById(Long employeeId);
2022-09-21 11:52:06 +08:00
/**
* 筛选导入人员信息可以在人力资源池中匹配到的人员信息
*
* @param confValue 校验方式
* @param employeeList 人力资源池
* @param userName 姓名
2022-09-21 11:52:06 +08:00
* @param deparmentName 部门
* @param mobile 手机号
* @param workcode 工号
2024-05-23 09:16:28 +08:00
* @param idNo 身份证号
* @param uid 人员id
2022-09-21 11:52:06 +08:00
*/
2024-05-23 09:16:28 +08:00
List<DataCollectionEmployee> matchImportEmployee(String confValue, List<DataCollectionEmployee> employeeList, String userName, String deparmentName, String mobile, String workcode, String idNo, Long uid);
2023-03-06 17:57:20 +08:00
2023-03-15 18:03:46 +08:00
String empValidType();
2023-03-06 17:57:20 +08:00
List<DeptInfo> getDeptInfoList(List<Long> departmentIds);
2024-07-25 14:04:14 +08:00
DeptInfo getDeptInfoById(Long departmentId);
2024-03-22 15:23:03 +08:00
List<DeptInfo> getVirtualDeptInfoList(List<Long> virtualDepartmentIds);
2023-03-06 17:57:20 +08:00
List<SubCompanyInfo> getSubCompanyInfoList(List<Long> subDepartmentIds);
2024-07-25 14:04:14 +08:00
SubCompanyInfo getSubCompanyInfoById(Long subDepartmentId);
2024-03-22 15:23:03 +08:00
List<SubCompanyInfo> getVirtualSubCompanyInfoList(List<Long> virtualSubDepartmentIds);
2023-03-06 17:57:20 +08:00
List<PositionInfo> listPositionInfo(List<Long> positionIds);
2024-07-25 14:04:14 +08:00
PositionInfo getPositionInfoById(Long positionId);
2023-03-06 17:57:20 +08:00
List<DataCollectionEmployee> listEmployee();
2023-03-07 17:14:25 +08:00
List<DataCollectionEmployee> listByParams(List<SalarySobRangeEmpQueryParam> includeQueryParams);
2023-08-30 10:41:00 +08:00
/**
* 根据离职日期获取离职信息
*
2023-08-30 10:41:00 +08:00
* @param formatDate
*/
Map<Long, String> getResignationMapByDate(String formatDate);
2023-11-02 18:41:58 +08:00
2023-11-06 11:19:00 +08:00
/**
* 扩展人员信息
*
2023-11-06 11:19:00 +08:00
* @param ids
* @param param
* @return
*/
List<DataCollectionEmployee> expandEmployeeInfo(List<Long> ids, EmployeeInfoExpandDTO param);
Map<Long, Map<String, String>> expandEmployeeMap(List<Long> ids, EmployeeInfoExpandDTO param);
2023-11-09 11:34:00 +08:00
2023-11-02 18:41:58 +08:00
2023-11-06 11:19:00 +08:00
/**
* 保存扩展信息
*
2023-11-06 11:19:00 +08:00
* @param param
*/
void saveEmployeeExpandFieldSettings(EmployeeInfoExpandDTO param);
2023-11-02 18:41:58 +08:00
2023-11-06 11:19:00 +08:00
/**
* 获取扩展信息
*
2023-11-06 11:19:00 +08:00
* @param module
* @return
*/
EmployeeInfoExpandDTO getExpandFieldSettings(String module);
2024-03-22 15:23:03 +08:00
/**
* 根据虚拟部门获取人员信息
* @param virtualDepartmentIds
*/
List<DataCollectionEmployee> getVirtualEmpByVirtualDepIds(List<Long> virtualDepartmentIds);
/**
* 根据虚拟分部获取人员信息
* @param virtualSubCompanyIds
*/
List<DataCollectionEmployee> getVirtualEmpByVirtualSubCompanyIds(List<Long> virtualSubCompanyIds);
2024-03-25 16:08:34 +08:00
/**
* 根据部门或者分部查询人员
* @param subCompanyIds
* @param departmentIds
* @return
*/
List<DataCollectionEmployee> listBySubCompanyOrDepartment(List<Long> subCompanyIds, List<Long> departmentIds);
2023-08-28 13:31:11 +08:00
/**
* 根据人员id查询身份证
*
* @param employeeIds
* @return
*/
Map<Long, String> mapByEmployeeIds(Collection<Long> employeeIds);
2024-02-27 15:16:13 +08:00
/**
* 根据姓名工号模糊查看
* @param keyword
* @return
*/
List<DataCollectionEmployee> listByKeyword(String keyword);
2024-07-25 14:04:14 +08:00
/**
* 根据职称id获取职称信息
* @param jobCallId
* @return
*/
JobCallInfo getJobCallInfoById(Long jobCallId);
2024-12-06 16:00:05 +08:00
List<DataCollectionEmployee> snapshot(List<Long> employeeIds, Date snapshotTime);
2022-04-07 16:54:10 +08:00
}