yz_08
2021-03-17 19b2927073b5a2b14ca07939a6bfc0a0a34fe98c
febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/service/impl/EmpBaseInfoServiceImpl.java
@@ -22,6 +22,7 @@
import cc.mrbird.febs.server.hr.service.IEmpDimissionLogService;
import cc.mrbird.febs.server.hr.service.IEmpJobChangeService;
import cc.mrbird.febs.server.hr.util.PoiExportExcel;
import cn.hutool.core.collection.ListUtil;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
@@ -79,6 +80,9 @@
    private final IRemoteDicItemService remoteDicItemService;
    private final EmpOccupationalMapper empOccupationalMapper;
    private final IRemotePositionService remotePositionService;
    private final EmpDimissionLogMapper empDimissionLogMapper;
    private final EmpOpenArchivesMapper empOpenArchivesMapper;
    private final EmpResignMapper empResignMapper;
    @Override
    public IPage<EmpBaseInfo> findEmpBaseInfos(QueryRequest request, EmpBaseInfo empBaseInfo) {
@@ -236,6 +240,25 @@
        String[] str = ids.split(",");
        List<String> list = new ArrayList<>(Arrays.asList(str));
        empBaseInfoMapper.logicDeleteByIds(list, operatorId);
        //同步删除关联数据
        //不良记录
        empBadRecordMapper.logicDelByUserIds(list,operatorId);
        empAccidentCasesMapper.logicDelByUserIds(list,operatorId);
        empContractInfoMapper.logicDelByUserIds(list,operatorId);
        empDimissionAttendMapper.logicDelByUserIds(list,operatorId);
        empDimissionLogMapper.logicDelByUserIds(list,operatorId);
        empInsuranceMapper.logicDelByUserIds(list,operatorId);
        empJobChangeMapper.logicDelByUserIds(list,operatorId);
        empLaborTroubleMapper.logicDelByUserIds(list,operatorId);
        empLeaveInfoMapper.logicDelByUserIds(list,operatorId);
        empOccupationalMapper.logicDelByUserIds(list,operatorId);
        empOpenArchivesMapper.logicDelByUserIds(list,operatorId);
        empPhysicalExamMapper.logicDelByUserIds(list,operatorId);
        empRemarkInfoMapper.logicDelByUserIds(list,operatorId);
        empResignMapper.logicDelByUserIds(list,operatorId);
        empUnemploymentMapper.logicDelByUserIds(list,operatorId);
        empWorkExperienceMapper.logicDelByUserIds(list,operatorId);
    }
    /**
@@ -249,6 +272,9 @@
     */
    private List<EmpBaseInfo> setDeptName(List<EmpBaseInfo> empBaseInfoList) {
        List<Dept> depts = CastUtil.castList(redisService.get("depts"), Dept.class);
        if(null == depts){
            depts =remoteDeptService.setDeptRedis();
        }
        for (EmpBaseInfo empBaseInfo : empBaseInfoList) {
            // 设置部门
            empBaseInfo.setDeptName(depts.stream()
@@ -378,6 +404,7 @@
            saveChange.setOldDeptName(strDeptName[i]);
            saveChange.setOldJobName(strJobName[i]);
            saveChange.setNewDeptName(empJobChange.getNewDeptName());
            saveChange.setAllDeptName(empJobChange.getAllDeptName());
            saveChange.setNewJobName(empJobChange.getNewJobName());
            saveChange.setChangeType(empJobChange.getChangeType());
            saveChange.setChangeDate(empJobChange.getChangeDate());
@@ -392,6 +419,7 @@
        Map<String, Object> mapParams = new HashMap<>();
        mapParams.put("deptId", empJobChange.getDeptId());
        mapParams.put("deptName", empJobChange.getNewDeptName());
        mapParams.put("allDeptName", empJobChange.getAllDeptName());
        mapParams.put("jobId", empJobChange.getJobId());
        mapParams.put("jobName", empJobChange.getNewJobName());
        mapParams.put("operatorId", operatorId);
@@ -420,6 +448,12 @@
            empBaseInfo.setEmpNumb(list.get(1).toString());
            List<Dept> depts = CastUtil.castList(redisService.get("depts"), Dept.class);
            if(null == depts){
                depts =remoteDeptService.setDeptRedis();
            }
            if(null == depts){
               depts =remoteDeptService.setDeptRedis();
            }
            empBaseInfo.setDeptName(list.get(2).toString());
            Dept dept = depts.stream().filter(d -> d.getDeptName().equals(list.get(2).toString())).findFirst().orElse(null);
            if (null == dept) {
@@ -533,6 +567,11 @@
            if (null!=dicItem){
                empBaseInfo.setEntryType(dicItem.getDicItemCode());
            }
            //档案情况
            dicItem =dicItems.parallelStream().filter(j->StrUtil.equalsIgnoreCase(j.getDicCode(),"archivesStatus")&&StrUtil.equals(j.getDicItemName(),list.get(32).toString())).findFirst().orElse(null);
            if (null!=dicItem){
                empBaseInfo.setArchivesStatus(dicItem.getDicItemCode());
            }
            empBaseInfo.setEmpStatus("0");
            this.save(empBaseInfo);
        }