Commit e956cce0 by lixinming
parents 96cef49f ebeb7d76
......@@ -3,5 +3,6 @@
<dbPort>40012</dbPort>
<dbHost>192.168.0.105</dbHost>
<sign>xxx90909082fsdahfjosadjfpoiwausjorip2hjklrhn1ioud0u124rx0qwejfokasjfolksaujfoas</sign>
<imgPath>http://127.0.0.1:4980/yuyi/viewpage</imgPath>
<!-- <imgPath>http://127.0.0.1:4980/yuyi/viewpage</imgPath> -->
<imgPath>http://127.0.0.1:40015</imgPath>
</config>
import { getJxgljsc } from '../data/db/jxgljsc';
import { jxgljscTableData } from '../data/table/jxgljscData';
import { doubleYBarCharPackage, keyValuePackage, onceYBarChartPackage, rankPackage, tablePackage } from '../dataPackage/inFrontOut';
import { getDoubleYBarChartOut, getKeyValueOut, getOnceYBarChartOut, getTableOut } from '../dataPackage/out';
/* 绩效管理驾驶舱 */
export function getData(req, res) {
export async function getData(req, res) {
let dbList = await getJxgljsc();
let excelData = jxgljscTableData();
let ret:any = {};
......@@ -81,4 +83,4 @@ export function getData(req, res) {
ret['qyfhs'] = getKeyValueOut('企业孵化数', qyfhsPackageData);
res.send(ret);
}
\ No newline at end of file
}
......@@ -9,12 +9,115 @@ import { getQyszhx } from '../data/db/qyszhx';
export async function getData(req, res) {
let eId = req.body.eId;
let dbData = await getQyszhx(eId);
let excelData = qyszhxTableData();
let ret:any = {};
let qyjbqkPackageData = keyValuePackage(dbData['企业基本情况'].dataList);
let qyjbqk = [];
qyjbqkPackageData.forEach( info => {
let {key, value} = info;
if (key == "企业图片") {
info.value = `${systemConfig.imgPath}/${value}`;
}
qyjbqk.push(info);
})
ret['qyjbqk'] = getKeyValueOut('企业基本情况', qyjbqk);
let qyjbsjPackageData = keyValuePackage(dbData['企业基本数据'].dataList, "false");
ret['qyjbsj'] = getKeyValueOut('企业基本数据', qyjbsjPackageData);
let qybqPackageData = stringListPackage(dbData['企业标签'].dataList);
ret['qybq'] = getStringOut('企业标签', qybqPackageData);
let zscqPackageData = keyValuePackage(dbData['知识产权'].dataList);
ret['zscq'] = getKeyValueOut('知识产权', zscqPackageData);
let qyyghxPackageData = keyValuePackage(dbData['企业员工画像'].dataList);
ret['qyyghx'] = getKeyValueOut('企业员工画像', qyyghxPackageData);
let lnrczpqkPackageData = onceYBarChartPackage( excelData['历年人才招聘情况'], '','');
ret['lnrczpqk'] = getOnceYBarChartOut('历年人才招聘情况', lnrczpqkPackageData);
let qyhzsjPackageData = keyValuePackage(dbData['企业汇总数据'].dataList);
ret['qyhzsj'] = getKeyValueOut('企业汇总数据', qyhzsjPackageData);
let xjrTableData = tablePackage(excelData["小巨人"].headerList[0], excelData["小巨人"].bodyList);
ret['xjr'] = getTableOut( '小巨人', xjrTableData);
let gxqyTableData = tablePackage(excelData["高新企业"].headerList[0], excelData["高新企业"].bodyList);
ret['gxqy'] = getTableOut( '高新企业', gxqyTableData);
let zjtxTableData = tablePackage(excelData["专精特新"].headerList[0], excelData["专精特新"].bodyList);
ret['zjtx'] = getTableOut( '专精特新', zjtxTableData);
let ysqkPackageData = keyValuePackage(dbData['营收情况'].dataList);
ret['ysqk'] = getKeyValueOut('营收情况', ysqkPackageData);
let ysbhqsPackageData = onceYBarChartPackage( dbData['营收变化趋势'], '','');
ret['ysbhqs'] = getOnceYBarChartOut('营收变化趋势', ysbhqsPackageData);
let qydtTableData = tablePackage(dbData["企业动态"].headerList[0], dbData["企业动态"].bodyList);
// let qydt = {dataList:[], titleList:qydtTableData.titleList};
// qydtTableData.dataList.forEach(info => {
// let {A} = info;
// let imgUrl = ;
// info["A"] = imgUrl;
// qydt.dataList.push(info);
// })
ret['qydt'] = getTableOut( '企业动态', qydtTableData);
let fwxqPackageData = keyValuePackage(dbData['服务需求'].dataList, "false");
ret['fwxq'] = getKeyValueOut('服务需求', fwxqPackageData);
let hdbhqsfxPackageData = onceYBarChartPackage( dbData['活动变化趋势分析'], '','');
ret['hdbhqsfx'] = getOnceYBarChartOut('活动变化趋势分析', hdbhqsfxPackageData);
let fwjl_kjfwTableData = tablePackage(dbData["服务记录_空间服务"].headerList[0], dbData["服务记录_空间服务"].bodyList);
ret['fwjl_kjfw'] = getTableOut( '服务记录_空间服务', fwjl_kjfwTableData);
let fwjl_gsfwTableData = tablePackage(dbData["服务记录_工商服务"].headerList[0], dbData["服务记录_工商服务"].bodyList);
ret['fwjl_gsfw'] = getTableOut( '服务记录_工商服务', fwjl_gsfwTableData);
let fwjl_rzfwTableData = tablePackage(dbData["服务记录_融资服务"].headerList[0], dbData["服务记录_融资服务"].bodyList);
ret['fwjl_rzfw'] = getTableOut( '服务记录_融资服务', fwjl_rzfwTableData);
let fwjlPackageData = keyValuePackage(dbData['服务记录'].dataList);
ret['fwjl'] = getKeyValueOut('服务记录', fwjlPackageData);
let yqtzPackageData = keyValuePackage(excelData['园区通知'].dataList);
ret['yqtz'] = getKeyValueOut('园区通知', yqtzPackageData);
let yqtzxqTableData = tablePackage(excelData["园区通知详情"].headerList[0], excelData["园区通知详情"].bodyList);
let yqtzxq = {dataList:[], titleList:yqtzxqTableData.titleList};
yqtzxqTableData.dataList.forEach(info => {
let {A} = info;
let imgUrl = `${systemConfig.imgPath}/${A}`;
info["A"] = imgUrl;
yqtzxq.dataList.push(info);
})
ret['yqtzxq'] = getTableOut( '园区通知详情', yqtzxq);
let yqhdPackageData = keyValuePackage(excelData['园区活动'].dataList);
ret['yqhd'] = getKeyValueOut('园区活动', yqhdPackageData);
let yqhdmxTableData = tablePackage(excelData["园区活动明细"].headerList[0], excelData["园区活动明细"].bodyList);
ret['yqhdmx'] = getTableOut( '园区活动明细', yqhdmxTableData);
res.send(ret);
}
export async function getData备份(req, res) {
let eId = req.body.eId;
let excelData = qyszhxTableData();
let ret:any = {};
let qyjbqkPackageData = keyValuePackage(excelData['企业基本情况'].dataList);
let qyjbqk = [];
qyjbqkPackageData.forEach( info => {
......@@ -107,4 +210,4 @@ export async function getData(req, res) {
ret['yqhdmx'] = getTableOut( '园区活动明细', yqhdmxTableData);
res.send(ret);
}
\ No newline at end of file
}
\ No newline at end of file
......@@ -282,7 +282,8 @@ export enum NEEDCATEGORY {
法律服务,
知识产权,
工商服务,
融资服务
融资服务,
空间服务
}
......
import moment = require("moment");
export function getKeyValue(data) {
let result = [];
for (let key in data) {
result.push({key, value:data[key]});
}
return result;
}
export function getChart(data) {
let result = [];
for(let key in data) {
result.push({name:key, data:data[key]})
}
return result;
}
export function getMonthList() {
// 获取当前时间
const currentTime = moment();
// 获取6个月前的时间
const sixMonthsAgo = currentTime.clone().subtract(6, 'months');
// 创建一个数组来存储每个月份的第一天
const monthsArray = [];
// 使用moment的range函数(如果可用)或者手动循环来遍历月份
// 注意:moment.js的官方库中并没有直接的range函数用于月份遍历,
// 但我们可以使用.month()和.date(1)结合循环来实现。
// 由于moment没有内置的range函数用于月份,我们需要手动处理
let currentMonth = sixMonthsAgo.clone();
while (currentMonth.isBefore(currentTime) || currentMonth.isSame(currentTime, 'month')) {
// 获取当前循环月份的第一天
const firstDayOfMonth = currentMonth.clone().date(1);
// 将月份添加到数组中
monthsArray.push(moment(firstDayOfMonth.clone().toDate()).format("YYYY-MM")); // 如果你需要Date对象
// monthsArray.push(firstDayOfMonth.format('YYYY-MM-DD')); // 如果你需要格式化字符串
// 移动到下一个月
currentMonth.add(1, 'months');
}
return monthsArray;
}
export function getYearList() {
// 获取当前年份
const currentYear = new Date().getFullYear();
// 初始化一个空数组来存储年份
const years = [];
// 使用一个循环来添加当前年份到6年后的每一个年份到数组中
for (let i = 0; i <= 6; i++) {
years.push(currentYear + i);
}
return years;
}
......@@ -5,6 +5,7 @@
import moment = require("moment");
import { FUHUASTATE, INDUSTRY, MOVEOUTTYPE, OPERATIONALDATATYPE, STATE, TABLENAME } from "../../config/enum";
import { selectData, selectManyTableData } from "./operationalData";
import { getChart, getKeyValue, getMonthList, getYearList } from "./out";
export async function getEnterprise() {
......@@ -301,7 +302,7 @@ function getQybhqk(data) {
* 企业变化情况——变化趋势
*/
function getQybhqkbhqs(data){
let year = ["2019", "2020", "2021", "2022", "2023", "2024"];
let year = getYearList();
let hbqs = {
"企业数":[]
}
......@@ -491,7 +492,7 @@ function getQyzzfl() {
* 企业人才
*/
async function getQyrc() {
let year = ["2019", "2020", "2021", "2022", "2023", "2024"];
let year = getYearList();
let qyrc = {
"就业人数":[],
"创业团队分布":[]
......@@ -514,56 +515,5 @@ async function getQyrc() {
}
function getKeyValue(data) {
let result = [];
for (let key in data) {
result.push({key, value:data[key]});
}
return result;
}
function getChart(data) {
let result = [];
for(let key in data) {
result.push({name:key, data:data[key]})
}
return result;
}
function getMonthList() {
// 获取当前时间
const currentTime = moment();
// 获取6个月前的时间
const sixMonthsAgo = currentTime.clone().subtract(6, 'months');
// 创建一个数组来存储每个月份的第一天
const monthsArray = [];
// 使用moment的range函数(如果可用)或者手动循环来遍历月份
// 注意:moment.js的官方库中并没有直接的range函数用于月份遍历,
// 但我们可以使用.month()和.date(1)结合循环来实现。
// 由于moment没有内置的range函数用于月份,我们需要手动处理
let currentMonth = sixMonthsAgo.clone();
while (currentMonth.isBefore(currentTime) || currentMonth.isSame(currentTime, 'month')) {
// 获取当前循环月份的第一天
const firstDayOfMonth = currentMonth.clone().date(1);
// 将月份添加到数组中
monthsArray.push(moment(firstDayOfMonth.clone().toDate()).format("YYYY-MM")); // 如果你需要Date对象
// monthsArray.push(firstDayOfMonth.format('YYYY-MM-DD')); // 如果你需要格式化字符串
// 移动到下一个月
currentMonth.add(1, 'months');
}
return monthsArray;
}
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