| | |
| | | throw new BaseException("编号为"+staffOnJobPrams.getStaffNo()+"的员工已经存在,无法新增!!!"); |
| | | } |
| | | // 创建入职数据 |
| | | staffOnJobPrams.setContractExpireTime(staffOnJobPrams.getContractEndTime()); |
| | | staffOnJobMapper.insert(staffOnJobPrams); |
| | | |
| | | // 创建合同记录 |
| | |
| | | throw new BaseException("编号为"+staffOnJobParams.getStaffNo()+"的员工不存在,无法更新!!!"); |
| | | } |
| | | |
| | | // 更新员工数据 |
| | | String[] ignoreProperties = {"id"};//排除id属性 |
| | | BeanUtils.copyProperties(staffOnJobParams,job,ignoreProperties); |
| | | staffOnJobMapper.updateById(job); |
| | | |
| | | // 获取最新合同数据,并且更新 |
| | | StaffContract contract = staffContractMapper.selectOne(Wrappers.<StaffContract>lambdaQuery() |
| | | .eq(StaffContract::getStaffOnJobId, id) |
| | | .last("limit 1") |
| | | .orderByDesc(StaffContract::getId)); |
| | | if (contract != null){ |
| | | BeanUtils.copyProperties(staffOnJobParams,contract,ignoreProperties); |
| | | return staffContractMapper.updateById(contract); |
| | | staffContractMapper.updateById(contract); |
| | | } |
| | | return 0; |
| | | |
| | | // 更新员工数据 |
| | | BeanUtils.copyProperties(staffOnJobParams,job,ignoreProperties); |
| | | job.setContractExpireTime(staffOnJobParams.getContractEndTime()); |
| | | return staffOnJobMapper.updateById(job); |
| | | } |
| | | |
| | | //删除入职 |
| | |
| | | staffLeaveMapper.delete(Wrappers.<StaffLeave>lambdaQuery().in(StaffLeave::getStaffOnJobId, ids)); |
| | | // 删除合同数据 |
| | | return staffContractMapper.delete(Wrappers.<StaffContract>lambdaQuery().in(StaffContract::getStaffOnJobId, ids)); |
| | | } |
| | | |
| | | // 续签合同 |
| | | @Override |
| | | @Transactional(rollbackFor = Exception.class) |
| | | public int renewContract(Long id, StaffContract staffContract) { |
| | | // 判断对象是否存在 |
| | | StaffOnJob job = staffOnJobMapper.selectById(id); |
| | | if (job == null){ |
| | | throw new BaseException("该员工不存在,无法更新!!!"); |
| | | } |
| | | |
| | | // 增加合同 |
| | | StaffContract newStaffContract = new StaffContract(); |
| | | newStaffContract.setStaffOnJobId(id); |
| | | newStaffContract.setContractTerm(staffContract.getContractTerm()); |
| | | newStaffContract.setContractStartTime(staffContract.getContractStartTime()); |
| | | newStaffContract.setContractEndTime(staffContract.getContractEndTime()); |
| | | staffContractMapper.insert(newStaffContract); |
| | | |
| | | // 更新员工合同过期时间 |
| | | job.setContractExpireTime(staffContract.getContractEndTime()); |
| | | staffOnJobMapper.updateById(job); |
| | | return 0; |
| | | } |
| | | |
| | | //在职员工详情 |
| | |
| | | // 查询合同信息 |
| | | StaffContract contract = staffContractMapper.selectOne(Wrappers.<StaffContract>lambdaQuery() |
| | | .eq(StaffContract::getStaffOnJobId, staffOnJob.getId()) |
| | | .last("limit 1") |
| | | .orderByDesc(StaffContract::getId)); |
| | | if (contract != null){ |
| | | staffOnJobDto.setContractTerm(contract.getContractTerm()); |