Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
Y
yuyiViewServer
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
node_server
yuyiViewServer
Commits
e76e5735
Commit
e76e5735
authored
Feb 11, 2025
by
zhangzhencai
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
增加了jxgljsc.ts文件
parent
fef13b2e
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
380 additions
and
0 deletions
+380
-0
jxgljsc.ts
src/data/db/jxgljsc.ts
+380
-0
No files found.
src/data/db/jxgljsc.ts
View file @
e76e5735
/**
* 绩效管理驾驶仓
*/
import
moment
=
require
(
"moment"
)
import
{
FUHUASTATE
,
INDUSTRY
,
MOVEOUTTYPE
,
OPERATIONALDATATYPE
,
TABLENAME
,
FINANCINGROUNDS
}
from
"../../config/enum"
;
import
{
selectData
,
selectManyTableData
}
from
"./operationalData"
;
import
{
keyValuePackage
}
from
"../../dataPackage/inFrontOut"
;
import
{
info
}
from
"console"
;
export
async
function
getJxgljsc
()
{
let
jxgljsc
=
{
"cyjg"
:
{
dataList
:
[],
titleList
:
[
'key'
,
'value'
]
},
//产业结构
"rcyj"
:
{
dataList
:
[],
titleList
:
[
'key'
,
'value'
]
},
//人才引进
"fhqhzsj"
:
{
dataList
:
[],
titleList
:
[
'key'
,
'value'
]
},
//孵化器汇总数据
"qydt"
:
{
dataList
:
[],
titleList
:
[
'key'
,
'value'
]
},
//企业动态
"zfqybhqs"
:
[],
//在孵企业变化趋势
"zysje"
:
{
dataList
:
[],
titleList
:
[
'key'
,
'value'
]
},
//总营收金额
"zfqyzys"
:
{
dataList
:
[],
titleList
:
[
'key'
,
'value'
]
},
//在孵企业总营收
"tzlx"
:
{
dataList
:
[],
titleList
:
[
'key'
,
'value'
]
},
//投资类型
"zfqyrzqk"
:
{
dataList
:
[],
titleList
:
[
'key'
,
'value'
]
},
//在孵企业融资情况
"qyfhl"
:
{
dataList
:
[],
titleList
:
[
'key'
,
'value'
]
},
//企业孵化率
"qyfhs"
:
{
dataList
:
[],
titleList
:
[
'key'
,
'value'
]
},
//企业孵化数
}
// 获取当前时间
let
nowTime
=
moment
().
format
(
'YYYY-MM-DD HH:mm:ss'
);
let
fhColumn
=
[
"fId"
,
"eId"
,
"startTime"
,
"endTime"
,
"state"
,
"virtualCause"
,
"virtualCauseDes"
,
"moveOutType"
,
"moveOutTrace"
,
"moveOutCause"
,
"moveOutTime"
,
"graduationTime"
];
//获取在孵企业
let
在孵
dbList
=
await
selectData
(
OPERATIONALDATATYPE
.
查询多个
,
TABLENAME
.
企业孵化信息
,
{
"endTime"
:
{
"%gt%"
:
nowTime
}
},
fhColumn
);
jxgljsc
.
cyjg
.
dataList
=
await
cyjg
();
//产业结构
jxgljsc
.
rcyj
.
dataList
=
await
rcyj
();
//人才引进
jxgljsc
.
fhqhzsj
.
dataList
=
await
fhqhzsj
();
//孵化器汇总数据
jxgljsc
.
qydt
.
dataList
=
await
qydt
();
//企业动态
jxgljsc
.
zfqybhqs
=
await
zfqybhqs
(
在孵
dbList
,
jxgljsc
);
//在孵企业变化趋势
jxgljsc
.
zysje
.
dataList
=
await
zysje
();
//总营收金额
jxgljsc
.
zfqyzys
.
dataList
=
await
zfqyzys
(
在孵
dbList
,
jxgljsc
,
在孵
dbList
);
//在孵企业总营收
jxgljsc
.
tzlx
.
dataList
=
await
tzlx
();
//投资类型
jxgljsc
.
zfqyrzqk
.
dataList
=
await
zfqyrzqk
();
//在孵企业融资情况
jxgljsc
.
qyfhl
.
dataList
=
await
qyfhl
();
//企业孵化率
jxgljsc
.
qyfhs
.
dataList
=
await
qyfhs
();
//企业孵化数
return
jxgljsc
;
}
//产业结构
async
function
cyjg
()
{
let
result
=
[];
for
(
let
key
in
INDUSTRY
)
{
let
anyKey
:
any
=
key
;
if
(
isNaN
(
anyKey
))
{
let
keyStr
=
key
;
let
industry
=
INDUSTRY
[
key
];
let
count
=
await
selectData
(
OPERATIONALDATATYPE
.
查询数据量
,
TABLENAME
.
企业基础信息表
,
{
industry
},
null
);
result
.
push
({
key
:
keyStr
,
value
:
count
})
}
}
return
result
;
}
//人才引进
async
function
rcyj
()
{
let
rcyj
=
{
"国家级人才"
:
0
,
"上海市级人才"
:
0
,
"浦东区级人才"
:
0
,
"海外人才"
:
0
,
"博士人才"
:
0
}
// 分别获取不同表的数据并合并处理
let
创业团队
List
=
await
selectData
(
OPERATIONALDATATYPE
.
查询多个
,
TABLENAME
.
创业团队
,
{},
null
);
let
result
=
[];
for
(
let
rcyjItem
of
[
创业团队
List
])
{
if
(
rcyjItem
.
title
==
"国家级人才"
)
{
rcyj
.
国家级人才
+=
1
;
}
else
if
(
rcyjItem
.
city
==
"上海市"
)
{
rcyj
.
上海市级人才
+=
1
;
}
else
if
(
rcyjItem
.
city
==
"浦东区"
)
{
rcyj
.
浦东区级人才
+=
1
;
}
else
if
(
rcyjItem
.
city
==
"海外"
)
{
rcyj
.
海外人才
+=
1
;
}
else
if
(
rcyjItem
.
title
==
"博士"
)
{
rcyj
.
博士人才
+=
1
;
}
// 将 rcyj 对象转换为数组
let
result
=
Object
.
entries
(
rcyj
).
map
(([
key
,
value
])
=>
({
key
:
key
,
value
:
value
}));
}
return
result
;
}
//孵化器汇总数据
async
function
fhqhzsj
()
{
let
result
=
[];
let
fhqhzsj
=
{
"在孵企业"
:
0
,
"在孵面积"
:
0
}
let
孵化信息
dbList
=
await
selectData
(
OPERATIONALDATATYPE
.
查询多个
,
TABLENAME
.
企业孵化信息
,
{},
null
);
孵化信息
dbList
.
forEach
(
item
=>
{
fhqhzsj
.
在孵面积
+=
parseInt
(
item
.
area
);;
});
let
fhColumn
=
[
"fId"
,
"eId"
,
"startTime"
,
"endTime"
,
"state"
,
"virtualCause"
,
"virtualCauseDes"
,
"moveOutType"
,
"moveOutTrace"
,
"moveOutCause"
,
"moveOutTime"
,
"graduationTime"
];
//获取所有企业孵化表联查企业信息表
let
孵化企业
includeConf
=
{};
let
孵化企业
Clumn
=
[
"enterpriseName"
,
"industry"
];
孵化企业
includeConf
[
TABLENAME
.
企业基础信息表
]
=
{
cloum
:
孵化企业
Clumn
,
where
:
{}
}
let
孵化企业
dbList
=
await
selectManyTableData
(
OPERATIONALDATATYPE
.
多表联查
,
TABLENAME
.
企业孵化信息
,
{},
fhColumn
,
孵化企业
includeConf
);
fhqhzsj
.
在孵企业
=
孵化企业
dbList
.
length
;
result
.
push
({
key
:
"在孵企业"
,
value
:
fhqhzsj
.
在孵企业
});
result
.
push
({
key
:
"在孵面积"
,
value
:
fhqhzsj
.
在孵面积
});
return
result
;
}
//企业动态---------
async
function
qydt
()
{
let
result
=
[];
let
qydt
=
{
"本月新加入在孵企业"
:
0
,
"同比上月"
:
0
,
"环比去年"
:
0
}
let
qydtList
=
await
selectData
(
OPERATIONALDATATYPE
.
查询多个
,
TABLENAME
.
企业孵化信息
,
{},
null
);
//本月新加入在孵企业
let
nowTime
=
moment
().
format
(
'YYYY-MM-DD HH:mm:ss'
);
let
monthAgo
=
moment
().
subtract
(
1
,
'month'
).
format
(
'YYYY-MM-DD HH:mm:ss'
);
let
monthAgoList
=
qydtList
.
filter
(
item
=>
{
return
moment
(
item
.
createTime
)
>
moment
(
monthAgo
)
&&
moment
(
item
.
createTime
)
<
moment
(
nowTime
);
});
qydt
.
本月新加入在孵企业
=
monthAgoList
.
length
;
//同比上月
let
monthAgo2
=
moment
().
subtract
(
2
,
'month'
).
format
(
'YYYY-MM-DD HH:mm:ss'
);
let
monthAgo2List
=
qydtList
.
filter
(
item
=>
{
return
moment
(
item
.
createTime
)
>
moment
(
monthAgo2
)
&&
moment
(
item
.
createTime
)
<
moment
(
monthAgo
);
});
qydt
.
同比上月
=
monthAgoList
.
length
-
monthAgo2List
.
length
;
//环比去年
let
yearAgo
=
moment
().
subtract
(
1
,
'year'
).
format
(
'YYYY-MM-DD HH:mm:ss'
);
let
yearAgoList
=
qydtList
.
filter
(
item
=>
{
return
moment
(
item
.
createTime
)
>
moment
(
yearAgo
)
&&
moment
(
item
.
createTime
)
<
moment
(
monthAgo
);
});
qydt
.
环比去年
=
monthAgoList
.
length
-
yearAgoList
.
length
;
result
.
push
({
key
:
"本月新加入在孵企业"
,
value
:
qydt
.
本月新加入在孵企业
});
result
.
push
({
key
:
"同比上月"
,
value
:
qydt
.
同比上月
});
result
.
push
({
key
:
"环比去年"
,
value
:
qydt
.
环比去年
});
return
result
;
}
async
function
zfqybhqs
(
data
,
在孵
dbList
)
{
let
企业孵化信息
List
=
await
selectData
(
OPERATIONALDATATYPE
.
查询多个
,
TABLENAME
.
企业孵化信息
,
{},
null
);
let
result
=
[];
let
year
=
[
"2017"
,
"2018"
,
"2019"
,
"2020"
,
"2021"
,
"2022"
,
"2023"
,
"2024"
];
let
zfqybhqsData
=
{
"在孵企业"
:
[]
}
for
(
let
i
=
0
;
i
<
year
.
length
;
i
++
)
{
let
count
=
0
;
data
.
forEach
(
info
=>
{
let
startTimeYear
=
moment
(
info
.
startTime
).
year
();
//获取入孵开始时间
let
thisYear
=
parseInt
(
year
[
i
]);
if
(
startTimeYear
===
thisYear
)
count
+=
1
;
});
zfqybhqsData
.
在孵企业
.
push
({
key
:
year
[
i
],
value
:
count
});
}
let
zfqybhqs
=
getChart
(
zfqybhqsData
);
function
getChart
(
data
)
{
let
result
=
[];
for
(
let
key
in
data
)
{
result
.
push
({
name
:
key
,
data
:
data
[
key
]
})
}
}
return
result
;
}
//总营收金额
async
function
zysje
()
{
let
result
=
[];
let
zysjeList
=
await
selectData
(
OPERATIONALDATATYPE
.
查询多个
,
TABLENAME
.
企业经营信息
,
{},
null
);
//获取总营收金额
let
zysje
=
0
;
zysjeList
.
forEach
(
item
=>
{
zysje
+=
parseFloat
(
item
.
totalRevenue
);
});
result
.
push
({
key
:
"总营收金额"
,
value
:
zysje
+
"千万元"
});
return
result
;
}
//在孵企业总营收
async
function
zfqyzys
(
在孵
dbList
:
any
[],
jxgljsc
:
any
,
data
:
any
[]
=
[])
{
let
result
=
[];
//在孵企业总营收
// let zfqyzys = getZfqyzys(在孵dbList);
// jxgljsc.zfqyzys.dataList = getKeyValue(zfqyzys);
let
zfqyzys
=
{
"500万以下"
:
0
,
"500万-1000万"
:
0
,
"1000万-2000万"
:
0
,
"2000万以上"
:
0
}
for
(
let
i
=
0
;
i
<
data
.
length
;
i
++
)
{
//获取在孵企业经营数据
let
经营信息
dbList
=
await
selectData
(
OPERATIONALDATATYPE
.
查询多个
,
TABLENAME
.
企业经营信息
,
{
eId
:
data
[
i
].
eId
},
null
);
经营信息
dbList
.
forEach
(
info
=>
{
//BI(单位万元)
if
(
info
.
BI
<
500
)
zfqyzys
[
"500万以下"
]
+=
1
;
else
if
(
info
.
BI
>=
500
&&
info
.
BI
<
1000
)
zfqyzys
[
"500万-1000万"
]
+=
1
;
else
if
(
info
.
BI
>=
1000
&&
info
.
BI
<
2000
)
zfqyzys
[
"1000万-2000万"
]
+=
1
;
else
zfqyzys
[
"2000万以上"
]
+=
1
;
})
}
// 将 zfqyzys 转换为键值对形式
result
=
getKeyValue
(
zfqyzys
);
return
result
;
function
getKeyValue
(
data
)
{
let
result
=
[];
for
(
let
key
in
data
)
{
result
.
push
({
key
,
value
:
data
[
key
]
});
}
return
result
;
}
}
//投资类型
async
function
tzlx
()
{
let
result
=
[];
let
融资
dbList
=
await
selectData
(
OPERATIONALDATATYPE
.
查询多个
,
TABLENAME
.
企业融资
,
{},
null
);
//获取投资类型
let
投资类型
=
{
"设备"
:
0
,
"租金"
:
0
,
"服务"
:
0
,
"其他"
:
0
};
融资
dbList
.
forEach
(
item
=>
{
let
type
=
item
.
type
;
if
(
type
===
"设备"
)
投资类型
.
设备
+=
1
;
else
if
(
type
===
"租金"
)
投资类型
.
租金
+=
1
;
else
if
(
type
===
"服务"
)
投资类型
.
服务
+=
1
;
else
投资类型
.
其他
+=
1
;
});
result
=
getKeyValue
(
投资类型
);
return
result
;
function
getKeyValue
(
data
)
{
let
result
=
[];
for
(
let
key
in
data
)
{
result
.
push
({
key
,
value
:
data
[
key
]
});
}
return
result
;
}
}
//在孵企业融资情况
async
function
zfqyrzqk
()
{
let
result
=
[];
for
(
let
key
in
FINANCINGROUNDS
)
{
let
anyKey
:
any
=
key
;
if
(
isNaN
(
anyKey
))
{
let
financingRounds
=
FINANCINGROUNDS
[
key
];
let
count
=
await
selectData
(
OPERATIONALDATATYPE
.
查询数据量
,
TABLENAME
.
企业融资
,
{},
null
);
result
.
push
({
key
:
key
,
value
:
count
})
}
}
return
result
;
}
//企业孵化率
async
function
qyfhl
()
{
let
result
=
[];
let
qyfhlList
=
await
selectData
(
OPERATIONALDATATYPE
.
查询多个
,
TABLENAME
.
企业孵化信息
,
{},
null
);
//获取企业孵化率
let
qyfhl
=
{
"企业孵化率"
:
0
,
"环比去年孵化率"
:
0
};
let
nowYear
=
new
Date
().
getFullYear
();
let
lastYear
=
nowYear
-
1
;
for
(
let
i
=
0
;
i
<
qyfhlList
.
length
;
i
++
)
{
let
item
=
qyfhlList
[
i
];
let
endTime
=
new
Date
(
item
.
endTime
).
getFullYear
();
let
startTime
=
new
Date
(
item
.
startTime
).
getFullYear
();
if
(
endTime
===
nowYear
)
{
qyfhl
.
企业孵化率
+=
1
;
if
(
startTime
<=
lastYear
&&
endTime
>=
lastYear
)
{
qyfhl
.
环比去年孵化率
+=
1
;
}
}
}
result
.
push
({
key
:
"企业孵化率"
,
value
:
qyfhl
.
企业孵化率
});
result
.
push
({
key
:
"环比去年孵化率"
,
value
:
qyfhl
.
环比去年孵化率
});
return
result
;
}
//企业孵化数
async
function
qyfhs
()
{
let
result
=
[];
let
企业孵化信息
List
=
await
selectData
(
OPERATIONALDATATYPE
.
查询多个
,
TABLENAME
.
企业孵化信息
,
{},
null
);
//获取企业孵化数
let
qyfhs
=
{
"小巨人"
:
0
,
"高企培育"
:
0
,
"高新企业"
:
0
,
"科技型中小企业"
:
0
,
"专精特精"
:
0
};
let
企业资质
List
=
await
selectData
(
OPERATIONALDATATYPE
.
查询多个
,
TABLENAME
.
企业资质
,
{},
null
);
for
(
let
i
=
0
;
i
<
企业孵化信息
List
.
length
;
i
++
)
{
let
item
=
企业孵化信息
List
[
i
];
let
企业资质
dbList
=
企业资质
List
.
filter
(
q
=>
q
.
eId
===
item
.
eId
);
企业资质
dbList
.
forEach
(
q
=>
{
let
企业类型
=
q
.
industry
;
if
(
企业类型
===
"小巨人"
)
qyfhs
.
小巨人
+=
1
;
else
if
(
企业类型
===
"高企培育"
)
qyfhs
.
高企培育
+=
1
;
else
if
(
企业类型
===
"高新企业"
)
qyfhs
.
高新企业
+=
1
;
else
if
(
企业类型
===
"科技型中小企业"
)
qyfhs
.
科技型中小企业
+=
1
;
else
if
(
企业类型
===
"专精特精"
)
qyfhs
.
专精特精
+=
1
;
});
}
result
.
push
({
key
:
"小巨人"
,
value
:
qyfhs
.
小巨人
});
result
.
push
({
key
:
"高企培育"
,
value
:
qyfhs
.
高企培育
});
result
.
push
({
key
:
"高新企业"
,
value
:
qyfhs
.
高新企业
});
result
.
push
({
key
:
"科技型中小企业"
,
value
:
qyfhs
.
科技型中小企业
});
result
.
push
({
key
:
"专精特精"
,
value
:
qyfhs
.
专精特精
});
return
result
;
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment