Commit 996c87f1 by Zllgogo

no message

parent 060bb571
...@@ -9,7 +9,7 @@ import { getDoubleYBarChartOut, getKeyValueOut, getOnceYBarChartOut, getTableOut ...@@ -9,7 +9,7 @@ import { getDoubleYBarChartOut, getKeyValueOut, getOnceYBarChartOut, getTableOut
export async function getData(req, res) { export async function getData(req, res) {
let dbList = await getJxgljsc(); let dbList = await getJxgljsc();
let excelData = jxgljscTableData(); let excelData = jxgljscTableData();
let ret: any = {}; let ret: any = {};
...@@ -88,7 +88,7 @@ export async function getData(req, res) { ...@@ -88,7 +88,7 @@ export async function getData(req, res) {
let tzlxPackageData = keyValuePackage(excelData['投资类型'].dataList); let tzlxPackageData = keyValuePackage(excelData['投资类型'].dataList);
ret['tzlx'] = getKeyValueOut('投资类型', tzlxPackageData); ret['tzlx'] = getKeyValueOut('投资类型', tzlxPackageData);
let tzlxfbtPackageData = onceYBarChartPackage(dbList['投资类型分布图'], '', ''); let tzlxfbtPackageData = onceYBarChartPackage(dbList['投资类型分布图'], '', '');
ret['tzlxfbt'] = getOnceYBarChartOut('投资类型分布图', tzlxfbtPackageData); ret['tzlxfbt'] = getOnceYBarChartOut('投资类型分布图', tzlxfbtPackageData);
......
...@@ -66,10 +66,10 @@ export async function getData(req, res) { ...@@ -66,10 +66,10 @@ export async function getData(req, res) {
}) })
ret['dt'] = getTableOut('地图', dt); ret['dt'] = getTableOut('地图', dt);
// let jyfxPackageData = keyValuePackage(excelData['就业分析'].dataList); let jyfxPackageData = keyValuePackage(excelData['就业分析'].dataList);
// ret['jyfx'] = getKeyValueOut('就业分析', jyfxPackageData);
let jyfxPackageData = keyValuePackage(dbData['就业分析'].dataList);
ret['jyfx'] = getKeyValueOut('就业分析', jyfxPackageData); ret['jyfx'] = getKeyValueOut('就业分析', jyfxPackageData);
// let jyfxPackageData = keyValuePackage(dbData['就业分析'].dataList);
// ret['jyfx'] = getKeyValueOut('就业分析', jyfxPackageData);
let jdjyrsqsfxPackageData = onceYBarChartPackage(dbData['年度就业人数趋势分析'], '', ''); let jdjyrsqsfxPackageData = onceYBarChartPackage(dbData['年度就业人数趋势分析'], '', '');
ret['jdjyrsqsfx'] = getOnceYBarChartOut('年度就业人数趋势分析', jdjyrsqsfxPackageData); ret['jdjyrsqsfx'] = getOnceYBarChartOut('年度就业人数趋势分析', jdjyrsqsfxPackageData);
......
...@@ -16,7 +16,7 @@ export async function getJxgljsc() { ...@@ -16,7 +16,7 @@ export async function getJxgljsc() {
let jxgljsc = { let jxgljsc = {
产业结构: { dataList: [], titleList: ['key', 'value'] },//产业结构 产业结构: { dataList: [], titleList: ['key', 'value'] },//产业结构
科技型中小企业认定情况: { dataList: [], titleList: ['key', 'value'] },//创业团队 科技型中小企业认定情况: { dataList: [], titleList: ['key', 'value'] },//创业团队
科技型中小企业认定情况详细: { bodyList: [], headerList: [['企业名称','认定时间']] },//新增科技型中小企业认定情况 科技型中小企业认定情况详细: { bodyList: [], headerList: [['企业名称', '认定时间']] },//新增科技型中小企业认定情况
人才引进: { dataList: [], titleList: ['key', 'value'] },//人才引进 人才引进: { dataList: [], titleList: ['key', 'value'] },//人才引进
孵化器汇总数据: { dataList: [], titleList: ['key', 'value'] },//孵化器汇总数据 孵化器汇总数据: { dataList: [], titleList: ['key', 'value'] },//孵化器汇总数据
企业动态: { dataList: [], titleList: ['key', 'value'] },//企业动态 企业动态: { dataList: [], titleList: ['key', 'value'] },//企业动态
...@@ -25,7 +25,7 @@ export async function getJxgljsc() { ...@@ -25,7 +25,7 @@ export async function getJxgljsc() {
在孵企业总营收: { dataList: [], titleList: ['key', 'value'] },//在孵企业总营收 在孵企业总营收: { dataList: [], titleList: ['key', 'value'] },//在孵企业总营收
投资类型分布图: [],//新增投资类型 投资类型分布图: [],//新增投资类型
在孵企业融资情况: { dataList: [], titleList: ['key', 'value'] },//在孵企业融资情况 在孵企业融资情况: { dataList: [], titleList: ['key', 'value'] },//在孵企业融资情况
在孵企业融资情况占比:{ dataList: [], titleList: ['key', 'value'] }, 在孵企业融资情况占比: { dataList: [], titleList: ['key', 'value'] },
企业孵化数: { dataList: [], titleList: ['key', 'value'] },//企业孵化数 企业孵化数: { dataList: [], titleList: ['key', 'value'] },//企业孵化数
金融服务: { dataList: [], titleList: ['key', 'value'] }//新增后台填报 金融服务: { dataList: [], titleList: ['key', 'value'] }//新增后台填报
}; };
...@@ -36,7 +36,7 @@ export async function getJxgljsc() { ...@@ -36,7 +36,7 @@ export async function getJxgljsc() {
"moveOutTrace", "moveOutCause", "moveOutTime", "graduationTime"]; "moveOutTrace", "moveOutCause", "moveOutTime", "graduationTime"];
//获取在孵企业 //获取在孵企业
// let 在孵dbList = await selectData(OPERATIONALDATATYPE.查询多个, TABLENAME.企业孵化信息, { "endTime": { "%gt%": nowTime } }, fhColumn); // let 在孵dbList = await selectData(OPERATIONALDATATYPE.查询多个, TABLENAME.企业孵化信息, { "endTime": { "%gt%": nowTime } }, fhColumn);
let 在孵dbList = await selectData(OPERATIONALDATATYPE.查询多个, TABLENAME.企业孵化信息, {state: {"%ne%":FUHUASTATE.迁出}}, fhColumn); let 在孵dbList = await selectData(OPERATIONALDATATYPE.查询多个, TABLENAME.企业孵化信息, { state: { "%ne%": FUHUASTATE.迁出 } }, fhColumn);
//获取在孵企业租赁信息 //获取在孵企业租赁信息
let 租赁Column = ["eId", "year", "alienPatent", "classIPatent", "secondClassPatent", "thirdPentent"]; let 租赁Column = ["eId", "year", "alienPatent", "classIPatent", "secondClassPatent", "thirdPentent"];
...@@ -84,12 +84,12 @@ export async function getJxgljsc() { ...@@ -84,12 +84,12 @@ export async function getJxgljsc() {
jxgljsc.在孵企业总营收.dataList = getKeyValue(zfqyzysInfo);//在孵企业总营收 jxgljsc.在孵企业总营收.dataList = getKeyValue(zfqyzysInfo);//在孵企业总营收
// 投资类型 // 投资类型
jxgljsc.投资类型分布图 = await tzlxfb(); jxgljsc.投资类型分布图 = await tzlxfb();//投资类型分布图
jxgljsc.在孵企业融资情况.dataList = await zfqyrzqk();//在孵企业融资情况 jxgljsc.在孵企业融资情况.dataList = await zfqyrzqk();//在孵企业融资情况
jxgljsc.在孵企业融资情况占比.dataList = await zfqyrzqkzb(); jxgljsc.在孵企业融资情况占比.dataList = await zfqyrzqkzb();
let 资质Column = ["qId", "eId", "kxTime", "zjtxTime", "xjrTime", "xjrPyTime", "goPublicTime", "gaoXinJiShuTime", "goPublicSector"]; let 资质Column = ["qId", "eId", "kxTime", "zjtxTime", "xjrTime", "xjrPyTime", "goPublicTime", "gaoXinJiShuTime", "goPublicSector"];
let 企业资质联查includeConf = {}; let 企业资质联查includeConf = {};
...@@ -111,8 +111,10 @@ async function cyjg() { ...@@ -111,8 +111,10 @@ async function cyjg() {
if (isNaN(anyKey)) { if (isNaN(anyKey)) {
let keyStr = key; let keyStr = key;
let industry = INDUSTRY[key]; let industry = INDUSTRY[key];
let count = await selectData(OPERATIONALDATATYPE.查询数据量, TABLENAME.企业基础信息表, { industry }, null); let count = await selectData(OPERATIONALDATATYPE.查询数据量, TABLENAME.企业基础信息表, { industry: { "%like%": industry } }, null);
result.push({ key: keyStr, value: count }) if (count > 0) {
result.push({ key: keyStr, value: count });
}
} }
} }
...@@ -251,21 +253,21 @@ async function qydt(data) { ...@@ -251,21 +253,21 @@ async function qydt(data) {
}) })
// let 同比 = ((qydt.本月新加入在孵企业 - 上月) / 上月) * 100; // let 同比 = ((qydt.本月新加入在孵企业 - 上月) / 上月) * 100;
// qydt.同比上月 = 同比.toFixed(2) + "%"; // qydt.同比上月 = 同比.toFixed(2) + "%" || "0%";
// let 环比 = ((今年 - 去年) / 去年) * 100; // let 环比 = ((今年 - 去年) / 去年) * 100;
// qydt.环比去年 = 环比.toFixed(2) + "%"; // qydt.环比去年 = 环比.toFixed(2) + "%";
if (上月 !== 0) { if (上月 !== 0) {
let 同比 = ((qydt.本月新加入在孵企业 - 上月) / 上月) * 100; let 同比 = ((qydt.本月新加入在孵企业 - 上月) / 上月) * 100;
qydt.同比上月 = 同比.toFixed(2) + "%"; qydt.同比上月 = 同比.toFixed(2) + "%";
} else { } else {
qydt.同比上月 = "N/A"; qydt.同比上月 = "0%";
} }
if (去年 !== 0) { if (去年 !== 0) {
let 环比 = ((今年 - 去年) / 去年) * 100; let 环比 = ((今年 - 去年) / 去年) * 100;
qydt.环比去年 = 环比.toFixed(2) + "%"; qydt.环比去年 = 环比.toFixed(2) + "%";
} else { } else {
qydt.环比去年 = "N/A"; qydt.环比去年 = "0%";
} }
// result.push(qydt); // 将 qydt 对象添加到 result 数组中 // result.push(qydt); // 将 qydt 对象添加到 result 数组中
...@@ -465,9 +467,9 @@ async function qyfhs(data) { ...@@ -465,9 +467,9 @@ async function qyfhs(data) {
async function tzlxfb() { async function tzlxfb() {
let tzlxList = await selectData(OPERATIONALDATATYPE.查询多个, TABLENAME.企业融资, {}, null); let tzlxList = await selectData(OPERATIONALDATATYPE.查询多个, TABLENAME.企业融资, {}, null);
let tzlx = [ let tzlx = [
{key:'自有资金', value : 0}, { key: '自有资金', value: 0 },
{key:'参与基金', value : 0}, { key: '参与基金', value: 0 },
{key:'自有基金', value : 0} { key: '自有基金', value: 0 }
] ]
// 遍历融资记录并统计 // 遍历融资记录并统计
tzlxList.forEach(info => { tzlxList.forEach(info => {
...@@ -488,6 +490,6 @@ async function tzlxfb() { ...@@ -488,6 +490,6 @@ async function tzlxfb() {
data: tzlx data: tzlx
} }
]; ];
return result; return result;
} }
\ No newline at end of file
...@@ -91,7 +91,7 @@ export async function getZhyy() { ...@@ -91,7 +91,7 @@ export async function getZhyy() {
// 企业服务:{dataList:[], titleList:['key', 'value']}, // 企业服务:{dataList:[], titleList:['key', 'value']},
// 企业服务类型:{dataList:[], titleList:['key', 'value']}, // 企业服务类型:{dataList:[], titleList:['key', 'value']},
// }; // };
let fhColumn = ["industry", "eId"]; let fhColumn = ["industry", "eId"];
//获取所有企业孵化信息 //获取所有企业孵化信息
...@@ -109,7 +109,7 @@ export async function getZhyy() { ...@@ -109,7 +109,7 @@ export async function getZhyy() {
let industryMap = {};//行业领域 let industryMap = {};//行业领域
let ruZhuMap = {};//入驻企业变化趋势 let ruZhuMap = {};//入驻企业变化趋势
let ruZhuCount = 0;//入驻数 let ruZhuCount = 0;//入驻数
let areaCount = 0;// let areaCount = 0;
let enterpriseCount = 0;//企业数量 let enterpriseCount = 0;//企业数量
let 面积变化Map = {};//孵化面积变化 let 面积变化Map = {};//孵化面积变化
let thisYear = new Date().getFullYear(); let thisYear = new Date().getFullYear();
...@@ -420,6 +420,11 @@ export async function getZhyy() { ...@@ -420,6 +420,11 @@ export async function getZhyy() {
/** /**
* 计算在孵企业面积占比:在孵企业总面积/孵化器或者园区总面积 x 100% * 计算在孵企业面积占比:在孵企业总面积/孵化器或者园区总面积 x 100%
*/ */
// 空数据保护
if (!孵化器dbList || 孵化器dbList.length === 0) {
孵化器dbList = [{ totalArea: "0" }]; // 临时兜底,根据业务调整
}
let 园区总面积 = parseFloat(孵化器dbList[0].totalArea); let 园区总面积 = parseFloat(孵化器dbList[0].totalArea);
// 计算在孵企业的总面积 // 计算在孵企业的总面积
let 在孵企业总面积 = 0; let 在孵企业总面积 = 0;
...@@ -433,17 +438,19 @@ export async function getZhyy() { ...@@ -433,17 +438,19 @@ export async function getZhyy() {
// 计算在孵企业面积占比 // 计算在孵企业面积占比
let zaifuAreaRatio = (在孵企业总面积 / 园区总面积) * 100; let zaifuAreaRatio = (在孵企业总面积 / 园区总面积) * 100;
let 园区概况 = [ let 园区概况 = [
// { key: "园区面积", value: "0㎡" }, // { key: "园区面积", value: "0㎡" },
{ key: "园区面积", value: `${孵化器dbList[0].parkArea}㎡` }, { key: "园区面积", value: `${孵化器dbList[0].parkArea}㎡` },
// { key: "产值规模", value: "0亿元" }, // { key: "产值规模", value: "0亿元" },
{ key: "产值规模", value: `${孵化器dbList[0].industrialScale}亿元` }, { key: "产值规模", value: `${孵化器dbList[0].industrialScale}亿元` },
{ key: "企业数量", value: `${在孵dbList.length}家` }, // { key: "企业数量", value: `${在孵dbList.length}家` },
{ key: "企业数量", value: `${zaifuCount}家` },
// { key: "员工数量", value: `0人` }, // { key: "员工数量", value: `0人` },
{ key: "员工数量", value: `${totalEmployeeCount}人` }, { key: "员工数量", value: `${totalEmployeeCount}人` },
]; ];
let 孵化器数据 = [ let 孵化器数据 = [
{ key: "孵化器面积", value: `${areaCount}㎡` }, { key: "孵化器面积", value: `${areaCount}㎡` },
...@@ -480,7 +487,7 @@ export async function getZhyy() { ...@@ -480,7 +487,7 @@ export async function getZhyy() {
let 企业服务 = [ let 企业服务 = [
{ key: "服务数", value: fuWuCount }, { key: "服务数", value: fuWuCount },
// { key: "服务覆盖企业", value: fuWuQiYeCount }, // { key: "服务覆盖企业", value: fuWuQiYeCount },
{ key: "服务覆盖企业", value:`${fuWuQiYeCountPercentage}%` }, { key: "服务覆盖企业", value: `${fuWuQiYeCountPercentage}%` },
]; ];
...@@ -503,19 +510,19 @@ export async function getZhyy() { ...@@ -503,19 +510,19 @@ export async function getZhyy() {
const currentDate = new Date(); const currentDate = new Date();
// const currentYear = currentDate.getFullYear(); // const currentYear = currentDate.getFullYear();
const currentMonth = currentDate.getMonth() + 1; // JavaScript 的月份从0开始 const currentMonth = currentDate.getMonth() + 1; // JavaScript 的月份从0开始
// 计算当前月份的开始时间和结束时间 // 计算当前月份的开始时间和结束时间
const startOfMonth = new Date(currentYear, currentMonth - 1, 1); const startOfMonth = new Date(currentYear, currentMonth - 1, 1);
const endOfMonth = new Date(currentYear, currentMonth, 0); const endOfMonth = new Date(currentYear, currentMonth, 0);
// 计算去年同期的开始时间和结束时间 // 计算去年同期的开始时间和结束时间
const startOfLastYearMonth = new Date(currentYear - 1, currentMonth - 1, 1); const startOfLastYearMonth = new Date(currentYear - 1, currentMonth - 1, 1);
const endOfLastYearMonth = new Date(currentYear - 1, currentMonth, 0); const endOfLastYearMonth = new Date(currentYear - 1, currentMonth, 0);
// 查询本月新增就业数据 // 查询本月新增就业数据
let currentMonthNewJobs = await selectData(OPERATIONALDATATYPE.查询多个,TABLENAME.参保记录,{ annual: { "%between%": [startOfMonth.toISOString(), endOfMonth.toISOString()] } },null); let currentMonthNewJobs = await selectData(OPERATIONALDATATYPE.查询多个, TABLENAME.参保记录, { annual: { "%between%": [startOfMonth.toISOString(), endOfMonth.toISOString()] } }, null);
// 查询去年同期新增就业数据 // 查询去年同期新增就业数据
let lastYearMonthNewJobs = await selectData(OPERATIONALDATATYPE.查询多个,TABLENAME.参保记录,{ annual: { "%between%": [startOfLastYearMonth.toISOString(), endOfLastYearMonth.toISOString()] } },null); let lastYearMonthNewJobs = await selectData(OPERATIONALDATATYPE.查询多个, TABLENAME.参保记录, { annual: { "%between%": [startOfLastYearMonth.toISOString(), endOfLastYearMonth.toISOString()] } }, null);
// 计算本月新增就业人数 // 计算本月新增就业人数
let currentMonthJobCount = 0; let currentMonthJobCount = 0;
currentMonthNewJobs.forEach(info => { currentMonthNewJobs.forEach(info => {
...@@ -527,7 +534,7 @@ export async function getZhyy() { ...@@ -527,7 +534,7 @@ export async function getZhyy() {
if (info.boshiyishang) itemCount += parseInt(info.boshiyishang); if (info.boshiyishang) itemCount += parseInt(info.boshiyishang);
currentMonthJobCount += itemCount; currentMonthJobCount += itemCount;
}); });
// 计算去年同期新增就业人数 // 计算去年同期新增就业人数
let lastYearMonthJobCount = 0; let lastYearMonthJobCount = 0;
lastYearMonthNewJobs.forEach(info => { lastYearMonthNewJobs.forEach(info => {
...@@ -539,7 +546,7 @@ export async function getZhyy() { ...@@ -539,7 +546,7 @@ export async function getZhyy() {
if (info.boshiyishang) itemCount += parseInt(info.boshiyishang); if (info.boshiyishang) itemCount += parseInt(info.boshiyishang);
lastYearMonthJobCount += itemCount; lastYearMonthJobCount += itemCount;
}); });
// 计算同比增长率 // 计算同比增长率
let growthRate = 0; let growthRate = 0;
if (lastYearMonthJobCount !== 0) { if (lastYearMonthJobCount !== 0) {
...@@ -551,7 +558,7 @@ export async function getZhyy() { ...@@ -551,7 +558,7 @@ export async function getZhyy() {
* 年度就业人数趋势分析 * 年度就业人数趋势分析
*/ */
let jiuYeList = await selectData(OPERATIONALDATATYPE.查询多个, TABLENAME.参保记录, {}, null); let jiuYeList = await selectData(OPERATIONALDATATYPE.查询多个, TABLENAME.参保记录, {}, null);
let 年度就业人数趋势分析Map = {}; let 年度就业人数趋势分析Map = {};
jiuYeList.forEach(info => { jiuYeList.forEach(info => {
let { eId, annual } = info; let { eId, annual } = info;
...@@ -566,7 +573,7 @@ export async function getZhyy() { ...@@ -566,7 +573,7 @@ export async function getZhyy() {
if (!年度就业人数趋势分析Map[itemYear]) 年度就业人数趋势分析Map[itemYear] = { key: itemYear, value: 0 }; if (!年度就业人数趋势分析Map[itemYear]) 年度就业人数趋势分析Map[itemYear] = { key: itemYear, value: 0 };
年度就业人数趋势分析Map[itemYear].value += itemCount; 年度就业人数趋势分析Map[itemYear].value += itemCount;
}); });
let 年度就业人数趋势分析 = Object.values(年度就业人数趋势分析Map); let 年度就业人数趋势分析 = Object.values(年度就业人数趋势分析Map);
/** /**
...@@ -631,7 +638,7 @@ export async function getZhyy() { ...@@ -631,7 +638,7 @@ export async function getZhyy() {
dataList: [ dataList: [
{ key: "服务数", value: fuWuCount }, { key: "服务数", value: fuWuCount },
// { key: "服务覆盖企业", value:fuWuQiYeCount } // { key: "服务覆盖企业", value:fuWuQiYeCount }
{ key: "服务覆盖企业", value:`${fuWuQiYeCountPercentage}%` } { key: "服务覆盖企业", value: `${fuWuQiYeCountPercentage}%` }
], ],
titleList: ['key', 'value'] titleList: ['key', 'value']
}, },
...@@ -651,11 +658,11 @@ export async function getZhyy() { ...@@ -651,11 +658,11 @@ export async function getZhyy() {
// 只有当count大于0时才添加到dataList中 // 只有当count大于0时才添加到dataList中
if (count > 0) { if (count > 0) {
zhyy.入驻企业行业类型.dataList.push({ key: keyStr, value: count }); zhyy.入驻企业行业类型.dataList.push({ key: keyStr, value: count });
} }
} }
} }
return zhyy; return zhyy;
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment