yz
2021-04-06 e42bbb438b21ad7ef01888b7172ee5f810d2ab39
febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/service/impl/EmpBaseInfoServiceImpl.java
@@ -24,6 +24,7 @@
import cc.mrbird.febs.server.hr.util.PoiExportExcel;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.IdcardUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
@@ -92,7 +93,7 @@
    @Override
    public IPage<EmpBaseInfo> findZsEmpBaseInfos(QueryRequest request, EmpBaseInfo empBaseInfo) {
        Page<EmpBaseInfo> page = new Page<>(request.getPageNum(), request.getPageSize());
        SortUtil.handlePageSort(request, page, "createTime", FebsConstant.ORDER_DESC, true);
        SortUtil.handlePageSort(request, page, "entryDate", FebsConstant.ORDER_ASC, true);
        IPage<EmpBaseInfo> iPage = empBaseInfoMapper.selectPageVo(page, createQueryWrapper(empBaseInfo));
        //设置部门
        // List<EmpBaseInfo> list = setDeptName(iPage.getRecords());
@@ -174,10 +175,10 @@
        String operatorId = Optional.of(FebsUtil.getUserId()).orElse("1");
        EmpBaseInfo dbInfo = this.getEmpBaseInfo(empBaseInfo);
        Long empId = SequenceUtil.generateId(0L, ModuleCode.HR_EMPLOYEE);
        boolean saveDimissionLog = false;
        boolean saveDimissionLog = true;
         if (dbInfo == null) {
            empBaseInfo.setEmpId(empId);
             saveDimissionLog = true;
             // saveDimissionLog = true;
        } else {
            empBaseInfo.setEmpId(dbInfo.getEmpId());
        }
@@ -192,18 +193,16 @@
        empBaseInfo.setModifier(operatorId);
        this.saveOrUpdate(empBaseInfo);
        if(saveDimissionLog) {
            EmpDimissionLog dimissionLog = new EmpDimissionLog();
            dimissionLog.setCloseId(SequenceUtil.generateId(0L, ModuleCode.HR_EMPLOYEE));
            dimissionLog.setEmpId(empId);
            dimissionLog.setEntryDate(empBaseInfo.getEntryDate());
            dimissionLog.setDimissionType("20");
            dimissionLog.setRemark(empBaseInfo.getRemark());
            dimissionLog.setCreator(operatorId);
            dimissionLog.setModifier(operatorId);
        EmpDimissionLog dimissionLog = new EmpDimissionLog();
        dimissionLog.setCloseId(SequenceUtil.generateId(0L, ModuleCode.HR_EMPLOYEE));
        dimissionLog.setEmpId(empId);
        dimissionLog.setEntryDate(empBaseInfo.getEntryDate());
        dimissionLog.setDimissionType("20");
        dimissionLog.setRemark(empBaseInfo.getRemark());
        dimissionLog.setCreator(operatorId);
        dimissionLog.setModifier(operatorId);
            dimissionLogService.save(dimissionLog);
        }
        dimissionLogService.save(dimissionLog);
    }
    @Override
@@ -496,7 +495,22 @@
            empBaseInfo.setJobId(position.getPositionId());
            empBaseInfo.setJobName(list.get(3).toString());
            empBaseInfo.setEmpName(list.get(4).toString());
            empBaseInfo.setCertificateNumb(list.get(5).toString());
            try {
                if(StrUtil.isNotBlank(list.get(5).toString())){
                    empBaseInfo.setCertificateNumb(list.get(5).toString());
                    if (IdcardUtil.isValidCard(list.get(5).toString())){
                        empBaseInfo.setAge(IdcardUtil.getAgeByIdCard(list.get(5).toString()));
                        empBaseInfo.setBirthdate(IdcardUtil.getBirthDate(list.get(5).toString()));
                    }
                }
            }catch (Exception e){
                log.error("导入人员身份证异常:{}",e);
                returnList.add(StrUtil.format("导入员工基本信息异常: 出现位置第{}行, 原因:{}检查身份证是否正确", listObject.indexOf(list) + 1, list.get(5).toString()));
                continue;
            }
            empBaseInfo.setSex("男".equals(list.get(6).toString()) ? "1" : "2");
            //民族
@@ -531,7 +545,7 @@
            }
            if (StringUtils.isNotBlank(list.get(13).toString())) {
                empBaseInfo.setSeniority(Integer.valueOf(list.get(13).toString()));
                empBaseInfo.setSeniority(list.get(13).toString());
            }
            //籍贯
@@ -623,7 +637,7 @@
            inputStream.read(buff);
            inputStream.close();
            String  contentType = empBaseInfo.getImagePath().substring(empBaseInfo.getImagePath().indexOf(".")+1);
            String  contentType = empBaseInfo.getImagePath().substring(empBaseInfo.getImagePath().lastIndexOf(".")+1);
            if (contentType.equals("tif")){
                //设置发送到客户端的响应内容类型
                response.setContentType("image/tiff");