package com.engine.salary.mapper.datacollection; import com.engine.salary.entity.datacollection.DataCollectionEmployee; import com.engine.salary.entity.hrm.DeptInfo; import com.engine.salary.entity.hrm.PositionInfo; import com.engine.salary.entity.hrm.SubCompanyInfo; import com.engine.salary.entity.hrm.dto.HrmInfoDTO; import com.engine.salary.entity.hrm.param.HrmQueryParam; import com.engine.salary.entity.salarysob.param.SalarySobRangeEmpQueryParam; import org.apache.ibatis.annotations.Param; import java.util.Collection; import java.util.List; public interface EmployMapper { /** * 只查人力资源表 * @return */ List listAll(); /** * 获取所有员工,关联部门 * * @return */ List listEmployee(); /** * 单表查询 * @param ids * @return */ List getEmployeeByIds(@Param("collection") List ids); /** * 单表查询 包括次账号 * @param ids * @return */ List getEmployeeByIdsIncludeAccountType(@Param("collection") List ids); /** * 多表联查 * @param ids * @return */ List getEmployeeByIdsAll(@Param("collection") List ids); /** * 根据薪资账套的人员范围转换而成的查询参数查询人员 * * @param queryParams 薪资账套的人员范围转换而成的查询参数 * @return */ List listByParams(@Param("params") Collection queryParams); List listByVirtualParams(@Param("params") Collection queryParams); /** * 多表,详细信息 * @param employeeId * @return */ DataCollectionEmployee getEmployeeById(Long employeeId); /** * 报表专用 * @return */ List listAllForReport(); /** * 所以岗位 * @param ids * @return */ List listPositionInfo(@Param("collection") List ids); /** * 所以部门 * @param departmentIds * @return */ List getDeptInfoList(@Param("departmentIds") List departmentIds); /** * 虚拟部门(其他组织维度) * @param virtualDepartmentIds * @return */ List getVirtualDeptInfoList(@Param("virtualDepartmentIds") List virtualDepartmentIds); /** * 所以分部 * @param subDepartmentIds * @return */ List getSubCompanyInfoList(@Param("subDepartmentIds") List subDepartmentIds); /** * 虚拟分部 * @param virtualSubCompanyIds * @return */ List getVirtualSubCompanyInfoList(@Param("virtualSubCompanyIds") List virtualSubCompanyIds); List listHrmInfoByIdAndName(@Param("param") HrmQueryParam param); List listExtHrmInfoByIdAndName(@Param("param") HrmQueryParam param); /** * 根据部门名称查询部门 */ List getDeptInfosByName(String name); /** * 根据分部名称查询分部 */ List getSubCompanyInfosByName(String name); /** * 根据部门id查询部门 */ DeptInfo getDeptInfoById(Long id); /** * 获取大于离职日期的 离职、退休、解聘人员信息 * @return */ List listByDismissDate(String dismissDate); /** * 根据虚拟部门获取人员信息 * @param virtualDepartmentIds * @return */ List listVirtualEmpByVirtualDepIds(@Param("virtualDepartmentIds") List virtualDepartmentIds); /** * 根据虚拟分部获取人员信息 * @param virtualSubCompanyIds * @return */ List listVirtualEmpByVirtualSubCompanyIds(@Param("virtualSubCompanyIds") List virtualSubCompanyIds); /** * 根据分部、部门获取查询 * @param subCompanyIds * @param departmentIds * @return */ List listBySubCompanyOrDepartment(@Param("subCompanyIds") List subCompanyIds, @Param("departmentIds") List departmentIds); /** * 根据用户名和工号模糊查询 * @param keyword * @return */ List listByKeyword(@Param("keyword") String keyword); }