febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/service/IEmpBaseInfoService.java
@@ -1,13 +1,21 @@
package cc.mrbird.febs.server.hr.service;
import cc.mrbird.febs.server.hr.entity.EmpBaseInfo;
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;
/**
 * name:EmpBaseinfo
@@ -27,6 +35,16 @@
     * @return IPage<EmpBaseinfo>
     */
    IPage<EmpBaseInfo> findEmpBaseInfos(QueryRequest request, EmpBaseInfo empBaseInfo);
    /**
     * 智搜 查询(分页)
     *
     * @param request     QueryRequest
     * @param empBaseInfo empBaseinfo
     * @return IPage<EmpBaseinfo>
     */
    IPage<EmpBaseInfo> findZsEmpBaseInfos(QueryRequest request, EmpBaseInfo empBaseInfo);
    /**
     * 查询(所有)
@@ -91,24 +109,119 @@
    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今年
     * @return
     */
    Map<String, Object> countBaseInfoList(String s, String btime, String index);
    IPage<EmpBaseInfo> baseInfoList(String index, String btime, String etime, String pageSize, String pageNum, String number, String name);
    IPage<EmpBaseInfo> baseInfoHeList(String index, String btime, String etime, String pageSize, String pageNum, String number, String name);
    IPage<EmpDimissionAttend> empBaseInfoCqList(String index, String btime, String etime, String pageSize, String pageNum, String number, String name);
    IPage<EmpLeaveInfo> empBaseInfoQjList(String index, String btime, String etime, String pageSize, String pageNum, String number, String name);
    IPage<EmpPhysicalExam> empBaseInfoTjList(String index, String btime, String etime, String pageSize, String pageNum, String number, String name);
    IPage<EmpLaborTrouble> empBaseInfoLzList(String index, String btime, String etime, String pageSize, String pageNum, String number, String name);
    IPage<EmpJobChange> empBaseInfoTgList(String index, String btime, String etime, String pageSize, String pageNum, String number, String name);
    IPage<EmpOccupational> empBaseInfoGsList(String index, String btime, String etime, String pageSize, String pageNum, String number, String name);
    IPage<EmpAccidentCases> empBaseInfoYwList(String index, String btime, String etime, String pageSize, String pageNum, String number, String name);
    IPage<EmpInsurance> empBaseInfoSbList(String index, String btime, String etime, String pageSize, String pageNum, String number, String name);
    IPage<EmpUnemployment> empBaseInfoSyjList(String index, String btime, String etime, String pageSize, String pageNum, String number, String name);
    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
     *
     * @param empJobChange 1
     * @return boolean
     * @author: luoyibo
     */
    boolean changeEmpJob(EmpJobChange empJobChange);
    /**
     * 导入员工
     *
     * @param listObject
     */
    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
     *
     * @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();
}