yubo
2026-03-11 a889a01cca175ba5888f38be8f1df90089e6bb70
febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/service/IEmpBaseInfoService.java
@@ -1,16 +1,15 @@
package cc.mrbird.febs.server.hr.service;
import cc.mrbird.febs.common.core.entity.QueryRequest;
import cc.mrbird.febs.common.core.entity.system.DicItem;
import cc.mrbird.febs.common.core.exception.FebsException;
import cc.mrbird.febs.server.hr.entity.*;
import cc.mrbird.febs.common.core.entity.QueryRequest;
import cc.mrbird.febs.server.hr.entity.EmpDimissionLog;
import cc.mrbird.febs.server.hr.entity.EmpJobChange;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import javax.servlet.http.HttpServletResponse;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.util.List;
import java.util.Map;
@@ -34,7 +33,7 @@
    IPage<EmpBaseInfo> findEmpBaseInfos(QueryRequest request, EmpBaseInfo empBaseInfo);
    /**
     *智搜 查询(分页)
     * 智搜 查询(分页)
     *
     * @param request     QueryRequest
     * @param empBaseInfo empBaseinfo
@@ -106,19 +105,17 @@
    boolean momentToNormal(String ids);
    /**
     *
     * 获取指定人员信息
     *
     * <p>
     * date 2021-02-17 08:12
     * @author: luoyibo
     *
     * @param empBaseInfo 获取条件
     * @return cc.mrbird.febs.server.hr.entity.EmpBaseInfo
     * @author: luoyibo
     */
    EmpBaseInfo getEmpBaseInfo(EmpBaseInfo empBaseInfo);
    /**
     *
     *
     * @param s
     * @param btime
     * @param index 0 今天 1本周 2本月 3今年
@@ -151,45 +148,138 @@
    IPage<EmpBadRecord> empBaseInfoBlList(String index, String btime, String etime, String pageSize, String pageNum, String number, String name);
    /**
     *
     * 关闭员工档案
     *
     * <p>
     * date 2021-02-18 12:54
     * @author: luoyibo
     *
     * @param empDimissionLog
     * @return boolean
     * @author: luoyibo
     */
    boolean closeEmpArchives(EmpDimissionLog empDimissionLog);
    /**
     *
     * 员工岗位变更
     *
     * <p>
     * date 2021-02-18 20:32
     * @author: luoyibo
     *
     * @param empJobChange 1
     * @return boolean
     * @author: luoyibo
     */
    boolean changeEmpJob(EmpJobChange empJobChange);
    /**
     * 导入员工
     *
     * @param listObject
     */
   void importEmpBaseInfo(List<List<Object>> listObject,List<String>  returnList) throws FebsException;
    void importEmpBaseInfo(List<List<Object>> listObject, List<String> returnList, List<DicItem> dicItems) throws FebsException;
    void getImage(String empId, HttpServletResponse response) throws Exception;
    /**
     *
     * 增加在职员工信息
     *
     * <p>
     * date 2021-03-03 00:06
     * @author: luoyibo
     *
     * @param empBaseInfo 在职员工信息
     * @return cc.mrbird.febs.server.hr.entity.EmpBaseInfo
     * @author: luoyibo
     */
    EmpBaseInfo addInEmpBaseInfo(EmpBaseInfo empBaseInfo);
    Long getEmpIdByEmpNumb(String empNumb);
    EmpBaseInfo getEmpBaseInfoByEmpNumb(String empNumb);
    void exportEmpAll(HttpServletResponse response, EmpBaseInfo empBaseinfo) throws IOException;
    boolean verifyCertificateNumb(EmpBaseInfo empBaseInfo);
    List<EmpBaseInfo> listAll(QueryWrapper<EmpBaseInfo> wrapper);
    /**
     *
     * 更新人员工龄
     *
     * date 2022-03-13 09:45
     * @author: luoyibo
     * @return boolean
     */
    boolean updateSeniority();
    /**
     *
     * 更新人员年龄
     *
     * date 2022-03-13 09:47
     * @author: luoyibo
     * @param userId 1
     * @return boolean
     */
    boolean updateEmpAge(String userId);
    boolean updateDeptName();
    /**
     * 更新指定员工的年假信息
     * @param userId 员工Id
     */
    void updateAnnualLeave(String userId);
    /**
     * 更新所有人员的年假信息
     */
    void updateAnnualLeave();
    /**
     * 更新员工的一些关键信息,主要提供给定时任务用,目前已提供
     * <p>
     * 1.更新员工年龄
     * 2.更新员工年假
     */
    void updateEmpBaseKeyInfo();
    /**
     * 查询社保档位提醒员工  查询(分页)
     *
     * @param request     QueryRequest
     * @param empBaseInfo empBaseInfo
     * @return IPage<EmpBaseinfo>
     */
    IPage<EmpBaseInfo> findInsuranceEmpBaseInfos(QueryRequest request, EmpBaseInfo empBaseInfo);
    /**
     * 统计社保档位提醒员工数量
     *
     * @param empBaseInfo 查询条件
     * @return 符合条件的员工数量
     */
    Long countInsuranceAlert(EmpBaseInfo empBaseInfo, QueryRequest request);
    /**
     * 获取到龄退休提醒员工  查询(分页)
     *
     * @param request     QueryRequest
     * @param empBaseInfo empBaseinfo
     * @return IPage<EmpBaseinfo>
     */
    IPage<EmpBaseInfo> findRetirementEmpBaseInfos(QueryRequest request, EmpBaseInfo empBaseInfo);
    /**
     * 查询当月待转正员工  查询(分页)
     *
     * @param request     QueryRequest
     * @param empBaseInfo empBaseinfo
     * @return IPage<EmpBaseinfo>
     */
    IPage<EmpBaseInfo> findProbationEmpBaseInfos(QueryRequest request, EmpBaseInfo empBaseInfo);
    /**
     * 待转正员工转正,如果转正状态为转正或延期,则只更新员工信息对应的内容,如果为2则更新内容的同时要关闭员工档案
     *
     * @param empBaseInfo empBaseinfo
     */
    void probationEmpBaseInfo(EmpBaseInfo empBaseInfo);
}