| | |
| | | |
| | | import java.util.*; |
| | | |
| | | import cc.mrbird.febs.common.core.entity.system.SysConfig; |
| | | import cc.mrbird.febs.server.hr.entity.EmpDimissionLog; |
| | | import cc.mrbird.febs.server.hr.entity.EmpJobChange; |
| | | import cc.mrbird.febs.server.hr.service.IEmpDimissionLogService; |
| | |
| | | } |
| | | if (StringUtils.isNotBlank(empBaseInfo.getEmpCardStatus())) { |
| | | queryWrapper.eq(EmpBaseInfo::getEmpCardStatus, empBaseInfo.getEmpCardStatus()); |
| | | } |
| | | Page<EmpBaseInfo> page = new Page<>(request.getPageNum(), request.getPageSize()); |
| | | IPage<EmpBaseInfo> iPage = this.page(page, queryWrapper); |
| | | //设置部门 |
| | | List<EmpBaseInfo> list = setDeptName(iPage.getRecords()); |
| | | List<DicItem> dicItems = CastUtil.castList(redisService.get("dicItems"), DicItem.class); |
| | | list.forEach(p -> { |
| | | p.setSexName("1".equals(p.getSex()) ? "男" : "女"); |
| | | p.setEmpTypeName("1".equals(p.getEmpType()) ? "正式工" : "临时工"); |
| | | p.setInsuranceTypeName("1".equals(p.getInsuranceType()) ? "(深户)五险一档" : "(非深户)五险一档"); |
| | | p.setArchivesStatusName("0".equals(p.getArchivesStatus()) ? "未移交" : "已移交"); |
| | | // 设置民族 |
| | | p.setNationName(dicItems.stream() |
| | | .filter(k -> DicCode.NATION.equals(k.getDicCode()) && k.getDicItemCode().equals(p.getNation())) |
| | | .findFirst() |
| | | .map(DicItem::getDicItemName) |
| | | .orElse("汉族")); |
| | | // 设置政治面貌 |
| | | p.setPoliticsName(dicItems.stream() |
| | | .filter(k -> DicCode.PLITICAL.equals(k.getDicCode()) && k.getDicItemCode().equals(p.getPolitics())) |
| | | .findFirst() |
| | | .map(DicItem::getDicItemName) |
| | | .orElse("群众")); |
| | | // 设置婚姻状况 |
| | | p.setMarriageName(dicItems.stream() |
| | | .filter(k -> DicCode.MARRIAGE.equals(k.getDicCode()) && k.getDicItemCode().equals(p.getMarriage())) |
| | | .findFirst() |
| | | .map(DicItem::getDicItemName) |
| | | .orElse("未婚")); |
| | | // 设置学历 |
| | | p.setEducationName(dicItems.stream() |
| | | .filter(k -> DicCode.EDUCATION.equals(k.getDicCode()) && k.getDicItemCode().equals(p.getEducation())) |
| | | .findFirst() |
| | | .map(DicItem::getDicItemName) |
| | | .orElse("无学历")); |
| | | // 设置籍贯 |
| | | p.setNativePlaceName(dicItems.stream() |
| | | .filter(k -> DicCode.NATIVEPLACE.equals(k.getDicCode()) && k.getDicItemCode().equals(p.getNativePlace())) |
| | | .findFirst() |
| | | .map(DicItem::getDicItemName) |
| | | .orElse("未知")); |
| | | }); |
| | | iPage.setRecords(list); |
| | | return iPage; |
| | | } |
| | | |
| | | @Override |
| | | public IPage<EmpBaseInfo> findZsEmpBaseInfos(QueryRequest request, EmpBaseInfo empBaseInfo) { |
| | | LambdaQueryWrapper<EmpBaseInfo> queryWrapper = new LambdaQueryWrapper<>(); |
| | | queryWrapper.eq(EmpBaseInfo::getDelFlag, empBaseInfo.getDelFlag()); |
| | | if (StringUtils.isNotBlank(empBaseInfo.getEmpNumb())) { |
| | | queryWrapper.like(EmpBaseInfo::getEmpNumb, empBaseInfo.getEmpNumb()); |
| | | } |
| | | if (StringUtils.isNotBlank(empBaseInfo.getEmpName())) { |
| | | queryWrapper.like(EmpBaseInfo::getEmpName, empBaseInfo.getEmpName()); |
| | | } |
| | | if (StringUtils.isNotBlank(empBaseInfo.getCertificateNumb())) { |
| | | queryWrapper.like(EmpBaseInfo::getCertificateNumb, empBaseInfo.getCertificateNumb()); |
| | | } |
| | | if (StringUtils.isNotBlank(empBaseInfo.getDeptName())) { |
| | | queryWrapper.like(EmpBaseInfo::getDeptName, empBaseInfo.getDeptName()); |
| | | } |
| | | if (StringUtils.isNotBlank(empBaseInfo.getEntryDateStr())) { |
| | | queryWrapper.between(EmpBaseInfo::getEntryDate, empBaseInfo.getEntryDateStr().split(",")[0], empBaseInfo.getEntryDateStr().split(",")[1]); |
| | | } |
| | | if (StringUtils.isNotBlank(empBaseInfo.getDimissionDateStr())) { |
| | | queryWrapper.between(EmpBaseInfo::getDimissionDate, empBaseInfo.getDimissionDateStr().split(",")[0], empBaseInfo.getDimissionDateStr().split(",")[1]); |
| | | } |
| | | if (StringUtils.isNotBlank(empBaseInfo.getSex())) { |
| | | queryWrapper.in(EmpBaseInfo::getSex, empBaseInfo.getSex().split(",")); |
| | | } |
| | | if (StringUtils.isNotBlank(empBaseInfo.getEducation())) { |
| | | queryWrapper.in(EmpBaseInfo::getEducation, empBaseInfo.getEducation().split(",")); |
| | | } |
| | | if (StringUtils.isNotBlank(empBaseInfo.getPolitics())) { |
| | | queryWrapper.in(EmpBaseInfo::getPolitics, empBaseInfo.getPolitics().split(",")); |
| | | } |
| | | if (StringUtils.isNotBlank(empBaseInfo.getAgeStr())) { |
| | | String[] ages=empBaseInfo.getAgeStr().split(","); |
| | | for (int i = 0; i < ages.length; i++) { |
| | | String ageBtn=ages[i]; |
| | | queryWrapper.between(EmpBaseInfo::getAge, ageBtn.split("-")[0], ageBtn.split("-")[1]); |
| | | } |
| | | } |
| | | if (StringUtils.isNotBlank(empBaseInfo.getArchivesStatus())) { |
| | | queryWrapper.in(EmpBaseInfo::getArchivesStatus, empBaseInfo.getArchivesStatus().split(",")); |
| | | } |
| | | if (StringUtils.isNotBlank(empBaseInfo.getInsuranceType())) { |
| | | queryWrapper.in(EmpBaseInfo::getInsuranceType, empBaseInfo.getInsuranceType().split(",")); |
| | | } |
| | | if (StringUtils.isNotBlank(empBaseInfo.getEmpStatus())) { |
| | | queryWrapper.in(EmpBaseInfo::getEmpStatus, empBaseInfo.getEmpStatus().split(",")); |
| | | } |
| | | Page<EmpBaseInfo> page = new Page<>(request.getPageNum(), request.getPageSize()); |
| | | IPage<EmpBaseInfo> iPage = this.page(page, queryWrapper); |
| | |
| | | for (List<Object> list : listObject) { |
| | | EmpBaseInfo empBaseInfo = new EmpBaseInfo(); |
| | | empBaseInfo.setEmpId(SequenceUtil.generateId(0L, ModuleCode.HR_EMPLOYEE)); |
| | | empBaseInfo.setEmpNumb(list.get(0).toString()); |
| | | empBaseInfo.setArchivesNumb(list.get(0).toString()); |
| | | empBaseInfo.setEmpNumb(list.get(1).toString()); |
| | | empBaseInfo.setEmpName(list.get(2).toString()); |
| | | List<Dept> depts = CastUtil.castList(redisService.get("depts"), Dept.class); |
| | | empBaseInfo.setDeptName(list.get(1).toString()); |
| | | Long deptId=depts.stream().filter(d -> d.getDeptName().equals(list.get(1).toString())).findFirst().get().getDeptId(); |
| | | empBaseInfo.setDeptName(list.get(3).toString()); |
| | | Long deptId = depts.stream().filter(d -> d.getDeptName().equals(list.get(3).toString())).findFirst().get() |
| | | .getDeptId(); |
| | | empBaseInfo.setDeptId(deptId); |
| | | empBaseInfo.setJobName(list.get(2).toString()); |
| | | empBaseInfo.setEmpName(list.get(3).toString()); |
| | | empBaseInfo.setCertificateNumb(list.get(4).toString()); |
| | | empBaseInfo.setSex("男".equals(list.get(5).toString())?"1":"0"); |
| | | if (StringUtils.isNotBlank(list.get(6).toString())) { |
| | | empBaseInfo.setAge(Integer.valueOf(list.get(6).toString())); |
| | | } |
| | | empBaseInfo.setEducation(list.get(7).toString()); |
| | | empBaseInfo.setNativePlace(list.get(8).toString()); |
| | | empBaseInfo.setTelePhone(list.get(9).toString()); |
| | | empBaseInfo.setJobName(list.get(4).toString()); |
| | | empBaseInfo.setEmpType(list.get(5).toString()); |
| | | empBaseInfo.setSex("男".equals(list.get(6).toString()) ? "1" : "2"); |
| | | empBaseInfo.setNation(list.get(7).toString()); |
| | | empBaseInfo.setCertificateNumb(list.get(8).toString()); |
| | | empBaseInfo.setMarriage(list.get(9).toString()); |
| | | if (StringUtils.isNotBlank(list.get(10).toString())) { |
| | | empBaseInfo.setEntryDate(DateUtil.parseDate(list.get(10).toString())); |
| | | empBaseInfo.setStature(Integer.valueOf(list.get(10).toString())); |
| | | } |
| | | empBaseInfo.setPolitics(list.get(11).toString()); |
| | | if (StringUtils.isNotBlank(list.get(12).toString())) { |
| | | empBaseInfo.setEntryDate(DateUtil.parseDate(list.get(12).toString())); |
| | | } |
| | | empBaseInfo.setEducation(list.get(13).toString()); |
| | | if (StringUtils.isNotBlank(list.get(14).toString())) { |
| | | empBaseInfo.setSeniority(Integer.valueOf(list.get(14).toString())); |
| | | } |
| | | empBaseInfo.setNativePlace(list.get(15).toString()); |
| | | empBaseInfo.setCensusAddress(list.get(16).toString()); |
| | | empBaseInfo.setCurrentAddress(list.get(17).toString()); |
| | | empBaseInfo.setGuardNumb(list.get(18).toString()); |
| | | empBaseInfo.setReturnReceipt(list.get(19).toString()); |
| | | empBaseInfo.setTelePhone(list.get(20).toString()); |
| | | empBaseInfo.setIntroducer(list.get(21).toString()); |
| | | empBaseInfo.setBankName(list.get(22).toString()); |
| | | empBaseInfo.setBankNumb(list.get(23).toString()); |
| | | empBaseInfo.setInsuranceType(list.get(24).toString()); |
| | | empBaseInfo.setSocialNumb(list.get(25).toString()); |
| | | empBaseInfo.setFamily(list.get(26).toString()); |
| | | empBaseInfo.setUrgencyPhone(list.get(27).toString()); |
| | | empBaseInfo.setHandbookStatus(list.get(28).toString()); |
| | | empBaseInfo.setEmpCardStatus(list.get(29).toString()); |
| | | empBaseInfo.setCertificateList(list.get(30).toString()); |
| | | empBaseInfo.setEmpStatus("0"); |
| | | this.save(empBaseInfo); |
| | | } |
| | | |
| | | } |
| | | |
| | | |
| | |
| | | public IPage<EmpBaseInfo> baseInfoList(String index, String btime, String etime, String pageSize, String pageNum, String number, String name) { |
| | | Page<EmpBaseInfo> page = new Page<EmpBaseInfo>(new Long(pageNum), new Long(pageSize)); |
| | | IPage<EmpBaseInfo> iPage =null; |
| | | List<SysConfig> sysConfig=this.baseMapper.sysConfig(); |
| | | String manOld=""; |
| | | String womanOld=""; |
| | | if(sysConfig.size()>0){ |
| | | manOld=sysConfig.get(0).getConfigValue(); |
| | | womanOld=sysConfig.get(1).getConfigValue(); |
| | | } |
| | | if("1".equals(number)){ //在职员工 |
| | | iPage = this.empBaseInfoMapper.zzbaseInfoList(page, index,btime,etime,name); |
| | | }else if("2".equals(number)){ //新进员工 |
| | |
| | | }else if("4".equals(number)){ //临时员工 |
| | | iPage = this.empBaseInfoMapper.lsbaseInfoList(page, index,btime,etime,name); |
| | | }else if("5".equals(number)){ //超龄员工 |
| | | iPage = this.empBaseInfoMapper.baseInfoList(page, index,btime,etime,name); |
| | | iPage = this.empBaseInfoMapper.clbaseInfoList(page, index,btime,etime,name,manOld,womanOld); |
| | | }else if("6".equals(number)){ //离职员工总数 |
| | | iPage = this.empBaseInfoMapper.lzbaseInfoList(page, index,btime,etime,name); |
| | | }else if("7".equals(number)){ //辞职申请人数 |
| | |
| | | |
| | | @Override |
| | | public Map<String, Object> countBaseInfoList(String index, String btime, String etime) { |
| | | //在职员工,正式员工,临时员工,正常离职,自动离职,公司辞退 判断条件离职申请日期 |
| | | Map<String, Object> stringObjectMap = this.baseMapper.countBaseInfoList(index,btime,etime); |
| | | List<SysConfig> sysConfig=this.baseMapper.sysConfig(); |
| | | String manOld=""; |
| | | String womanOld=""; |
| | | if(sysConfig.size()>0){ |
| | | manOld=sysConfig.get(0).getConfigValue(); |
| | | womanOld=sysConfig.get(1).getConfigValue(); |
| | | } |
| | | //在职员工,正式员工,临时员工,超龄员工 |
| | | Map<String, Object> stringObjectMap = this.baseMapper.countBaseInfoList(index,btime,etime,manOld,womanOld); |
| | | //正常离职,自动离职,公司辞退 判断条件创建日期 |
| | | Map<String, Object> zclzObjectMap =this.baseMapper.countZcygBaseInfoList(index,btime,etime); |
| | | if(zclzObjectMap!=null){ |
| | | stringObjectMap.put("zclz",zclzObjectMap.get("zclz").toString()); |
| | | stringObjectMap.put("zdlz",zclzObjectMap.get("zdlz").toString()); |
| | | stringObjectMap.put("gsct",zclzObjectMap.get("gsct").toString()); |
| | | } |
| | | //新进员工 判断条件入职日期 |
| | | Integer xjygObjectMap =this.baseMapper.countXjygBaseInfoList(index,btime,etime); |
| | | if(xjygObjectMap!=null){ |
| | | stringObjectMap.put("xjyg",xjygObjectMap); |
| | | } |
| | | //离职员工总数,解除合同 判断条件离职申请日期 |
| | | |
| | | //离职员工总数 |
| | | Integer empStatus = this.baseMapper.selectCount(new QueryWrapper<EmpBaseInfo>().eq("empStatus", 1)); |
| | | if(empStatus!=null){ |
| | | stringObjectMap.put("lzyg",empStatus); |
| | | } |
| | | //解除合同 判断条件离职申请日期 |
| | | Map<String, Object> lzygObjectMap =this.baseMapper.countLzygBaseInfoList(index,btime,etime); |
| | | if(lzygObjectMap!=null){ |
| | | stringObjectMap.put("lzyg",lzygObjectMap.get("lzyg").toString()); |
| | | stringObjectMap.put("jcht",lzygObjectMap.get("jcht").toString()); |
| | | } |
| | | //辞职申请员工总数 判断条件辞职申请日期 |
| | |
| | | if(czygObjectMap!=null){ |
| | | stringObjectMap.put("czyg",czygObjectMap); |
| | | } |
| | | //有效合同,新签合同,续签合同 判断条件合同签订日期 |
| | | //有效合同 判断条件合同签订日期 |
| | | Map<String, Object> yxhtObjectMap =this.baseMapper.countYxhtBaseInfoList(index,btime,etime); |
| | | if(yxhtObjectMap!=null){ |
| | | stringObjectMap.put("yxht",yxhtObjectMap.get("yxht").toString()); |
| | | stringObjectMap.put("xinqht",yxhtObjectMap.get("xinqht").toString()); |
| | | stringObjectMap.put("xqht",yxhtObjectMap.get("xqht").toString()); |
| | | } |
| | | //新签合同,续签合同 判断条件合同签订日期 |
| | | Map<String, Object> xqhtObjectMap =this.baseMapper.countXqhtBaseInfoList(index,btime,etime); |
| | | if(yxhtObjectMap!=null){ |
| | | stringObjectMap.put("xinqht",xqhtObjectMap.get("xinqht").toString()); |
| | | stringObjectMap.put("xqht",xqhtObjectMap.get("xqht").toString()); |
| | | } |
| | | //到期合同 判断条件合同结束时间 |
| | | Integer dqhtObjectMap =this.baseMapper.countDqhtBaseInfoList(index,btime,etime); |