@@ -126,7 +126,7 @@ public class AnalysisExportServiceImpl implements AnalysisExportService {
break ;
// 智慧就业大数据分析展示系统-产业与人才供需技能提升分析
case WISDOM_EMPLOYMENT_SECTOR_TALENT_SKILL :
test ( response , dto ) ;
exportWisdomSectorTalentSkill ( response , dto ) ;
break ;
// 智慧就业大数据分析展示系统-重点人群跟踪服务情况分析
case WISDOM_EMPLOYMENT_KEY_GROUP_SERVICE_SITUATION :
@@ -2217,6 +2217,242 @@ public class AnalysisExportServiceImpl implements AnalysisExportService {
}
/**
* 导出 产业与人才供需技能提升分析
*
* @param response 响应
* @param dto 查询参数
* @throws IOException 异常
*/
private void exportWisdomSectorTalentSkill ( HttpServletResponse response , QueryParamDto dto ) throws IOException {
MultiSheetExcelUtil multiSheetExcelUtil = new MultiSheetExcelUtil ( ) ;
String exportTime = DateUtils . dateTimeNow ( DateUtils . YYYY_MM_DD_HH_MM_SS ) ;
// 数据总览
List < ExcelRow > basicExportList = new ArrayList < > ( ) ;
basicExportList . add ( new ExcelRow ( " 导出时间 " , exportTime ) ) ;
basicExportList . add ( new ExcelRow ( " 数据总览 " ) ) ;
basicExportList . add ( new ExcelRow ( " 指标名称(单位) " , " 指标值 " , " 较上期变化(%) " ) ) ;
QueryParamDto newParam = new QueryParamDto ( ) ;
BeanUtils . copyProperties ( dto , newParam ) ;
SectorTalentOverviewVo overview =
analysisSectorTalentService . overview ( newParam ) ;
basicExportList . add ( new ExcelRow (
" 产业产值(亿元) " , transform ( overview . getSectorAmount ( ) ) ,
transform ( overview . getSectorAmountMom ( ) )
) ) ;
basicExportList . add ( new ExcelRow (
" 企业新增投资额(亿元) " , transform ( overview . getCompanyNewInvestmentAmount ( ) ) ,
transform ( overview . getCompanyNewInvestmentAmountMom ( ) )
) ) ;
basicExportList . add ( new ExcelRow (
" 人才需求(人) " , transform ( overview . getTalentDemandCount ( ) ) ,
transform ( overview . getTalentDemandCountMom ( ) )
) ) ;
basicExportList . add ( new ExcelRow (
" 人才供给(人) " , transform ( overview . getTalentSupplyCount ( ) ) ,
transform ( overview . getTalentSupplyCountMom ( ) )
) ) ;
basicExportList . add ( new ExcelRow (
" 供需匹配度(%) " , transform ( overview . getSupplyDemandMatchingDegree ( ) ) ,
transform ( overview . getSupplyDemandMatchingDegreeMom ( ) )
) ) ;
basicExportList . add ( new ExcelRow (
" 人才缺口(人) " , transform ( overview . getTalentGapCount ( ) ) ,
transform ( overview . getTalentGapCountMom ( ) )
) ) ;
basicExportList . add ( new ExcelRow (
" 技能培训人数(人) " , transform ( overview . getSkillTrainCount ( ) ) ,
transform ( overview . getSkillTrainCountMom ( ) )
) ) ;
// 创建Excel工具类并添加工作表
ExcelUtil < ExcelRow > basicSituationExcelUtil = new ExcelUtil < > ( ExcelRow . class ) ;
basicSituationExcelUtil . setDataList ( basicExportList ) ;
basicSituationExcelUtil . setSheetName ( " 数据总览 " ) ;
multiSheetExcelUtil . addSheet ( basicSituationExcelUtil ) ;
// 区域就业热力图
basicExportList = new ArrayList < > ( ) ;
basicExportList . add ( new ExcelRow ( " 区域就业热力图 " ) ) ;
basicExportList . add ( new ExcelRow ( " 地区 " , " 岗位需求(人) " ) ) ;
newParam = new QueryParamDto ( ) ;
BeanUtils . copyProperties ( dto , newParam ) ;
List < HeatmapVo > heatmapList = analysisSectorTalentService . heatmap ( newParam ) ;
for ( HeatmapVo heatmap : heatmapList ) {
basicExportList . add ( new ExcelRow (
heatmap . getAreaName ( ) , transform ( heatmap . getCount ( ) )
) ) ;
}
// 创建Excel工具类并添加工作表
basicSituationExcelUtil = new ExcelUtil < > ( ExcelRow . class ) ;
basicSituationExcelUtil . setDataList ( basicExportList ) ;
basicSituationExcelUtil . setSheetName ( " 区域就业热力图 " ) ;
multiSheetExcelUtil . addSheet ( basicSituationExcelUtil ) ;
// 产业景气指数
basicExportList = new ArrayList < > ( ) ;
basicExportList . add ( new ExcelRow ( " 产业景气指数 " ) ) ;
newParam = new QueryParamDto ( ) ;
BeanUtils . copyProperties ( dto , newParam ) ;
SectorTalentProsperityIndexVo sectorTalentProsperityIndexVo =
analysisSectorTalentService . sectorProsperityIndex ( newParam ) ;
basicExportList . add ( new ExcelRow ( " 指数 " , transform ( sectorTalentProsperityIndexVo . getProsperityIndex ( ) ) ) ) ;
// 创建Excel工具类并添加工作表
basicSituationExcelUtil = new ExcelUtil < > ( ExcelRow . class ) ;
basicSituationExcelUtil . setDataList ( basicExportList ) ;
basicSituationExcelUtil . setSheetName ( " 产业景气指数 " ) ;
multiSheetExcelUtil . addSheet ( basicSituationExcelUtil ) ;
// 产业发展趋势分析
basicExportList = new ArrayList < > ( ) ;
basicExportList . add ( new ExcelRow ( " 产业发展趋势分析 " ) ) ;
basicExportList . add ( new ExcelRow ( " 时间 " , " 岗位需求(人) " , " 产业投资(亿元) " ,
" 产业增加值(亿元) " , " 产值增长率(%) " ) ) ;
newParam = new QueryParamDto ( ) ;
BeanUtils . copyProperties ( dto , newParam ) ;
List < SectorTalentTreadVo > sectorTalentList = analysisSectorTalentService . sectorDevelopTrend ( newParam ) ;
for ( SectorTalentTreadVo tread : sectorTalentList ) {
basicExportList . add ( new ExcelRow (
tread . getDesc ( ) , transform ( tread . getJobDemandCount ( ) ) , transform ( tread . getSectorInvestmentAmount ( ) ) ,
transform ( tread . getSectorIncreaseValue ( ) ) , transform ( tread . getGrowthRate ( ) )
) ) ;
}
// 创建Excel工具类并添加工作表
basicSituationExcelUtil = new ExcelUtil < > ( ExcelRow . class ) ;
basicSituationExcelUtil . setDataList ( basicExportList ) ;
basicSituationExcelUtil . setSheetName ( " 产业发展趋势分析 " ) ;
multiSheetExcelUtil . addSheet ( basicSituationExcelUtil ) ;
// 产业人才需求
basicExportList = new ArrayList < > ( ) ;
basicExportList . add ( new ExcelRow ( " 产业人才需求 " ) ) ;
basicExportList . add ( new ExcelRow ( " 产业 " , " 需求人数(人) " , " 占比(%) " ) ) ;
newParam = new QueryParamDto ( ) ;
BeanUtils . copyProperties ( dto , newParam ) ;
List < QueryResultVo > resultList = analysisSectorTalentService . talentDemandStructure ( newParam ) ;
for ( QueryResultVo result : resultList ) {
basicExportList . add ( new ExcelRow (
result . getDesc ( ) , transform ( result . getCount ( ) ) , transform ( result . getCountPercentage ( ) )
) ) ;
}
// 创建Excel工具类并添加工作表
basicSituationExcelUtil = new ExcelUtil < > ( ExcelRow . class ) ;
basicSituationExcelUtil . setDataList ( basicExportList ) ;
basicSituationExcelUtil . setSheetName ( " 产业人才需求 " ) ;
multiSheetExcelUtil . addSheet ( basicSituationExcelUtil ) ;
// 重点产业的核心职业技能需求
basicExportList = new ArrayList < > ( ) ;
basicExportList . add ( new ExcelRow ( " 重点产业的核心职业技能需求 " ) ) ;
basicExportList . add ( new ExcelRow ( " 产业 " , " 薪资水平(元) " ) ) ;
newParam = new QueryParamDto ( ) ;
BeanUtils . copyProperties ( dto , newParam ) ;
resultList = analysisSectorOccupationSkillService . coreSkillDemand ( newParam ) ;
for ( QueryResultVo result : resultList ) {
basicExportList . add ( new ExcelRow (
result . getDesc ( ) , transform ( result . getAmount ( ) )
) ) ;
}
// 创建Excel工具类并添加工作表
basicSituationExcelUtil = new ExcelUtil < > ( ExcelRow . class ) ;
basicSituationExcelUtil . setDataList ( basicExportList ) ;
basicSituationExcelUtil . setSheetName ( " 重点产业的核心职业技能需求 " ) ;
multiSheetExcelUtil . addSheet ( basicSituationExcelUtil ) ;
// 重点群体技能培训覆盖率
basicExportList = new ArrayList < > ( ) ;
basicExportList . add ( new ExcelRow ( " 重点群体技能培训覆盖率 " ) ) ;
basicExportList . add ( new ExcelRow ( " 人员类型 " , " 人员总数(人) " , " 培训人数(人) " , " 覆盖率(%) " ) ) ;
newParam = new QueryParamDto ( ) ;
BeanUtils . copyProperties ( dto , newParam ) ;
resultList = analysisSectorOccupationSkillService . keyGroupSkillCoverageRate ( newParam ) ;
for ( QueryResultVo result : resultList ) {
basicExportList . add ( new ExcelRow (
result . getDesc ( ) , transform ( result . getCount ( ) ) , transform ( result . getAnotherCount ( ) ) ,
transform ( result . getRate ( ) )
) ) ;
}
// 创建Excel工具类并添加工作表
basicSituationExcelUtil = new ExcelUtil < > ( ExcelRow . class ) ;
basicSituationExcelUtil . setDataList ( basicExportList ) ;
basicSituationExcelUtil . setSheetName ( " 重点群体技能培训覆盖率 " ) ;
multiSheetExcelUtil . addSheet ( basicSituationExcelUtil ) ;
// 人才供需匹配度评估
basicExportList = new ArrayList < > ( ) ;
basicExportList . add ( new ExcelRow ( " 人才供需匹配度评估 " ) ) ;
basicExportList . add ( new ExcelRow ( " 产业 " , " 人才需求(人) " , " 人才供给(人) " , " 供需比(%) " ) ) ;
newParam = new QueryParamDto ( ) ;
BeanUtils . copyProperties ( dto , newParam ) ;
resultList = analysisSectorTalentService . talentSupplyDemandMatchingDegree ( newParam ) ;
for ( QueryResultVo result : resultList ) {
basicExportList . add ( new ExcelRow (
result . getDesc ( ) , transform ( result . getCount ( ) ) , transform ( result . getAnotherCount ( ) ) ,
transform ( result . getRate ( ) )
) ) ;
}
// 创建Excel工具类并添加工作表
basicSituationExcelUtil = new ExcelUtil < > ( ExcelRow . class ) ;
basicSituationExcelUtil . setDataList ( basicExportList ) ;
basicSituationExcelUtil . setSheetName ( " 人才供需匹配度评估 " ) ;
multiSheetExcelUtil . addSheet ( basicSituationExcelUtil ) ;
// 技能人才等级分布
basicExportList = new ArrayList < > ( ) ;
basicExportList . add ( new ExcelRow ( " 技能人才等级分布 " ) ) ;
basicExportList . add ( new ExcelRow ( " 技能等级 " , " 人数(人) " , " 占比(%) " ) ) ;
newParam = new QueryParamDto ( ) ;
BeanUtils . copyProperties ( dto , newParam ) ;
resultList = analysisSectorTalentService . talentSkillLevelDistribution ( newParam ) ;
for ( QueryResultVo result : resultList ) {
basicExportList . add ( new ExcelRow (
result . getDesc ( ) , transform ( result . getCount ( ) ) , transform ( result . getCountPercentage ( ) )
) ) ;
}
// 创建Excel工具类并添加工作表
basicSituationExcelUtil = new ExcelUtil < > ( ExcelRow . class ) ;
basicSituationExcelUtil . setDataList ( basicExportList ) ;
basicSituationExcelUtil . setSheetName ( " 技能人才等级分布 " ) ;
multiSheetExcelUtil . addSheet ( basicSituationExcelUtil ) ;
// 高校毕业生人才供给专业分布
basicExportList = new ArrayList < > ( ) ;
basicExportList . add ( new ExcelRow ( " 高校毕业生人才供给专业分布 " ) ) ;
basicExportList . add ( new ExcelRow ( " 专业 " , " 人数(人) " , " 占比(%) " ) ) ;
newParam = new QueryParamDto ( ) ;
BeanUtils . copyProperties ( dto , newParam ) ;
resultList = analysisSectorTalentService . talentSupplyDistribution ( newParam ) ;
for ( QueryResultVo result : resultList ) {
basicExportList . add ( new ExcelRow (
result . getDesc ( ) , transform ( result . getCount ( ) ) , transform ( result . getCountPercentage ( ) )
) ) ;
}
// 创建Excel工具类并添加工作表
basicSituationExcelUtil = new ExcelUtil < > ( ExcelRow . class ) ;
basicSituationExcelUtil . setDataList ( basicExportList ) ;
basicSituationExcelUtil . setSheetName ( " 高校毕业生人才供给专业分布 " ) ;
multiSheetExcelUtil . addSheet ( basicSituationExcelUtil ) ;
multiSheetExcelUtil . setFileName ( dto . getExportModule ( ) . getDesc ( ) ) ;
multiSheetExcelUtil . exportExcel ( response ) ;
}
/**
* 导出 劳动力招聘需求分析