|
@@ -2,6 +2,7 @@ package com.citupro.module.menduner.flames.serviceimpl;
|
|
|
|
|
|
import cn.hutool.core.lang.Snowflake;
|
|
|
import cn.hutool.core.util.IdUtil;
|
|
|
+import com.alibaba.excel.EasyExcel;
|
|
|
import com.alibaba.fastjson.JSON;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
|
@@ -9,10 +10,13 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
|
|
|
import com.citu.framework.common.pojo.CommonResult;
|
|
|
+import com.citu.module.menduner.system.api.flames.enterprise.recruit.respvo.AppFlameJobRespVO;
|
|
|
import com.citupro.module.menduner.flames.controller.base.reqvo.school.SchoolOrganizationReqVo;
|
|
|
import com.citupro.module.menduner.flames.controller.base.reqvo.school.SchoolStudentDetailReqVo;
|
|
|
import com.citupro.module.menduner.flames.controller.base.respvo.school.SchoolStudentDetailRespVo;
|
|
|
import com.citupro.module.menduner.flames.controller.base.vo.school.SchoolInfoVo;
|
|
|
+import com.citu.module.menduner.system.api.flames.enterprise.respvo.AppFlamesEnterpriseDetailRespVO;
|
|
|
+
|
|
|
import com.citupro.module.menduner.flames.dal.mysql.School;
|
|
|
import com.citupro.module.menduner.flames.dal.mysql.SchoolDepartment;
|
|
|
import com.citupro.module.menduner.flames.dal.mysql.SchoolQualificaions;
|
|
@@ -21,13 +25,18 @@ import com.citupro.module.menduner.flames.mapper.SchoolMapper;
|
|
|
import com.citupro.module.menduner.flames.mapper.SchoolQualificaionsMapper;
|
|
|
import com.citupro.module.menduner.flames.service.SchoolDepartmentService;
|
|
|
import com.citupro.module.menduner.flames.service.SchoolService;
|
|
|
+import com.citupro.module.menduner.flames.service.proxy.EnterpriseProxyService;
|
|
|
+import com.citupro.module.menduner.flames.service.proxy.EnterpriseRecruitProxyService;
|
|
|
import com.citupro.module.menduner.flames.util.ListMap;
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
+
|
|
|
+import javax.servlet.ServletOutputStream;
|
|
|
import java.time.LocalDateTime;
|
|
|
import java.util.*;
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
/**
|
|
|
* @author code generator
|
|
@@ -41,6 +50,12 @@ public class SchoolServiceImpl extends ServiceImpl<SchoolMapper, School> impleme
|
|
|
SchoolQualificaionsMapper schoolQualificaionsMapper;
|
|
|
SchoolDepartmentService schoolDepartmentService;
|
|
|
|
|
|
+
|
|
|
+ EnterpriseProxyService enterpriseProxyService;
|
|
|
+
|
|
|
+ EnterpriseRecruitProxyService enterpriseRecruitProxyService;
|
|
|
+
|
|
|
+
|
|
|
@Override
|
|
|
public School getSchoolById(Long schoolId) {
|
|
|
if (null == schoolId) {
|
|
@@ -164,13 +179,43 @@ public class SchoolServiceImpl extends ServiceImpl<SchoolMapper, School> impleme
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- public CommonResult schoolStudentDetail(SchoolStudentDetailReqVo reqVo) {
|
|
|
+ public CommonResult<Page<SchoolStudentDetailRespVo>> schoolStudentDetail(SchoolStudentDetailReqVo reqVo) {
|
|
|
Page page = reqVo.getPage();
|
|
|
- List<SchoolStudentDetailRespVo> datas = schoolMapper.schoolStudentDetail(page,reqVo.getSchoolId());
|
|
|
+ List<SchoolStudentDetailRespVo> datas = schoolMapper.schoolStudentDetail(page,reqVo);
|
|
|
+ // 拼接企业信息
|
|
|
+ Set<Long> enterpriseIds = datas.stream().filter(item -> null != item.getEnterpriseId()).map(SchoolStudentDetailRespVo::getEnterpriseId).collect(Collectors.toSet());
|
|
|
+ // 拼接岗位
|
|
|
+ Set<Long> enterpriseRecruitId = datas.stream().filter(item -> null != item.getEnterpriseRecruitId())
|
|
|
+ .map(SchoolStudentDetailRespVo::getEnterpriseRecruitId).collect(Collectors.toSet());
|
|
|
+
|
|
|
+ Map<Long, AppFlameJobRespVO> resp = enterpriseRecruitProxyService.getEnterpriseRecruitByIds(new ArrayList<>(enterpriseRecruitId));
|
|
|
+ Map<Long, AppFlamesEnterpriseDetailRespVO> enterpriseMap = enterpriseProxyService.getEnterpriseList(new ArrayList<>(enterpriseIds ));
|
|
|
+ for (SchoolStudentDetailRespVo data : datas) {
|
|
|
+ AppFlamesEnterpriseDetailRespVO appEnterpriseDetailRespVO = enterpriseMap.get(data.getEnterpriseId());
|
|
|
+ if(null!=appEnterpriseDetailRespVO) {
|
|
|
+ data.setEnterpeiseName(null==appEnterpriseDetailRespVO.getEnterprise()?"":appEnterpriseDetailRespVO.getEnterprise().getName());
|
|
|
+ }
|
|
|
+ AppFlameJobRespVO appFlameJobRespVO = resp.get(data.getEnterpriseRecruitId());
|
|
|
+ if(null!=appFlameJobRespVO){
|
|
|
+ data.setEnterpriseRecruitJobName(appFlameJobRespVO.getJob().getName());
|
|
|
+ data.setJobDept(appFlameJobRespVO.getJobExtend().getDept());
|
|
|
+ }
|
|
|
+ }
|
|
|
page.setRecords(datas);
|
|
|
return CommonResult.success(page);
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ public void schoolStudentDetailExport(SchoolStudentDetailReqVo reqVo, ServletOutputStream outputStream) {
|
|
|
+ Page page = reqVo.getPage();
|
|
|
+ page.setSize(1000*1000*1000);
|
|
|
+ List<SchoolStudentDetailRespVo> datas = schoolStudentDetail(reqVo).getData().getRecords();
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ EasyExcel.write(outputStream, SchoolStudentDetailRespVo.class).sheet().doWrite(datas);
|
|
|
+ }
|
|
|
+
|
|
|
@Override
|
|
|
public CommonResult<SchoolInfoVo> getSchoolInformation(Long userId) {
|
|
|
School school = schoolMapper.selectOne(new LambdaQueryWrapper<School>().eq(School::getUserId, userId));
|
|
@@ -228,6 +273,16 @@ public class SchoolServiceImpl extends ServiceImpl<SchoolMapper, School> impleme
|
|
|
return CommonResult.success(schoolInfoVo);
|
|
|
}
|
|
|
|
|
|
+ @Autowired
|
|
|
+ public void setEnterpriseProxyService(EnterpriseProxyService enterpriseProxyService) {
|
|
|
+ this.enterpriseProxyService = enterpriseProxyService;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ public void setEnterpriseRecruitProxyService(EnterpriseRecruitProxyService enterpriseRecruitProxyService) {
|
|
|
+ this.enterpriseRecruitProxyService = enterpriseRecruitProxyService;
|
|
|
+ }
|
|
|
+
|
|
|
@Autowired
|
|
|
public void setSchoolQualificaionsMapper(SchoolQualificaionsMapper schoolQualificaionsMapper) {
|
|
|
this.schoolQualificaionsMapper = schoolQualificaionsMapper;
|