| | |
| | | import cc.mrbird.febs.server.hr.entity.EmpBaseInfo; |
| | | import cc.mrbird.febs.server.hr.entity.EmpContractInfo; |
| | | import cc.mrbird.febs.server.hr.feign.IRemoteDeptService; |
| | | import cc.mrbird.febs.server.hr.mapper.EmpBaseInfoMapper; |
| | | import cc.mrbird.febs.server.hr.mapper.EmpContractInfoMapper; |
| | | import cc.mrbird.febs.server.hr.service.IEmpBaseInfoService; |
| | | import cc.mrbird.febs.server.hr.service.IEmpContractInfoService; |
| | | import cn.hutool.core.date.DateUnit; |
| | | import cn.hutool.core.date.DateUtil; |
| | | import cn.hutool.core.util.ObjectUtil; |
| | | import cn.hutool.core.util.StrUtil; |
| | |
| | | private final EmpContractInfoMapper empContractinfoMapper; |
| | | private final IRemoteDeptService remoteDeptService; |
| | | private final IEmpBaseInfoService empBaseInfoService; |
| | | private final EmpBaseInfoMapper empBaseInfoMapper; |
| | | private final String operatorId = Optional.ofNullable(FebsUtil.getCurrentUser()) |
| | | .map(u -> u.getUserId().toString()) |
| | | .orElse("1"); |
| | |
| | | @Override |
| | | @Transactional(rollbackFor = Exception.class) |
| | | public void importEmpContractInfo(List<List<Object>> listObject, List<String> returnList, List<DicItem> dicItems) { |
| | | for (List<Object> list : listObject) { |
| | | for (List<Object> list : listObject) { |
| | | if (list.size() == 0 || StrUtil.isBlank(list.get(0).toString())) { |
| | | continue; |
| | | } |
| | |
| | | } catch (Exception e) { |
| | | returnList.add(StrUtil.format("导入员工合同信息异常: 出现位置第{}行, 原因:{}时间格式错误", listObject.indexOf(list) + 1, list.get(0).toString())); |
| | | continue; |
| | | } |
| | | |
| | | // 计算合同结束日期与当前日期之间的间隔天数 |
| | | if (contractInfo.getEndDate() != null) { |
| | | contractInfo.setDiffDay((int) DateUtil.betweenDay(DateUtil.date(), contractInfo.getEndDate(), false)); |
| | | } |
| | | |
| | | if (StringUtils.isNotBlank(list.get(8).toString())) { |
| | |
| | | //设置不再提醒 |
| | | empContractinfoMapper.updateEmpContractRemind(contractId); |
| | | } |
| | | |
| | | @Override |
| | | @Transactional(rollbackFor = Exception.class) |
| | | public void retireRehireEmpContract(EmpContractInfo empContractinfo) { |
| | | // 1.将原来合同状态为解除 |
| | | empContractinfoMapper.terminateContract(Collections.singletonList(String.valueOf(empContractinfo.getEmpId())), operatorId); |
| | | // 2.创建一份新合同信息 |
| | | empContractinfo.setDelFlag(0); |
| | | this.createEmpContractinfo(empContractinfo); |
| | | // 不再提醒 |
| | | empBaseInfoMapper.updateRetirementReminded(empContractinfo.getEmpId().toString(), "1", operatorId); |
| | | } |
| | | } |