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
f28ddecc
Commit
f28ddecc
authored
May 13, 2025
by
chenjinjing
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
no message
parent
d0f5e79b
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
403 additions
and
992 deletions
+403
-992
qyfw.ts
src/biz/qyfw.ts
+2
-2
qyszhx.ts
src/biz/qyszhx.ts
+77
-212
zhyy.ts
src/biz/zhyy.ts
+3
-3
enum.ts
src/config/enum.ts
+13
-0
out.ts
src/data/db/out.ts
+34
-0
qyszhx.ts
src/data/db/qyszhx.ts
+270
-772
zhyy.ts
src/data/db/zhyy.ts
+1
-0
router.ts
src/routers/router.ts
+3
-3
No files found.
src/biz/qyfw.ts
View file @
f28ddecc
import
{
systemConfig
}
from
'../config/serverConfig'
;
import
{
systemConfig
}
from
'../config/serverConfig'
;
import
{
getEnterprise
,
getEnterpriseDetails
,
get
入孵企业数量变化趋势
}
from
'../data/db/qyfw'
;
import
{
getEnterprise
,
getEnterpriseDetails
,
get
入孵企业数量变化趋势
}
from
'../data/db/qyfw'
;
import
{
zhyyTableData
}
from
'../data/table/zhyyData'
;
import
{
zhyyTableData
}
from
'../data/table/zhyyData'
;
import
{
doubleYBarCharPackage
,
keyValuePackage
,
onceYBarChartPackage
,
rank
Package
,
tablePackage
}
from
'../dataPackage/inFrontOut'
;
import
{
keyValue
Package
,
tablePackage
}
from
'../dataPackage/inFrontOut'
;
import
{
get
DoubleYBarChartOut
,
getKeyValueOut
,
getOnceYBarChart
Out
,
getTableOut
}
from
'../dataPackage/out'
;
import
{
get
KeyValue
Out
,
getTableOut
}
from
'../dataPackage/out'
;
/* 企业服务 */
/* 企业服务 */
...
...
src/biz/qyszhx.ts
View file @
f28ddecc
import
{
fxyjTableData
,
qyszhxTableData
}
from
'../data/table/qyszhxData'
;
import
{
keyValuePackage
,
stringListPackage
,
tablePackage
}
from
'../dataPackage/inFrontOut'
;
import
{
doubleYBarCharPackage
,
keyValuePackage
,
onceYBarChartPackage
,
rankPackage
,
stringListPackage
,
tablePackage
}
from
'../dataPackage/inFrontOut'
;
import
{
getKeyValueOut
,
getStringOut
,
getTableOut
}
from
'../dataPackage/out'
;
import
{
getDoubleYBarChartOut
,
getKeyValueOut
,
getOnceYBarChartOut
,
getStringOut
,
getTableOut
}
from
'../dataPackage/out'
;
import
{
systemConfig
}
from
'../config/serverConfig'
;
import
{
getQyszhx
}
from
'../data/db/qyszhx'
;
import
{
getQyszhx
}
from
'../data/db/qyszhx'
;
import
{
selectData
}
from
'../data/db/operationalData'
;
import
{
OPERATIONALDATATYPE
,
TABLENAME
}
from
'../config/enum'
;
/* 企业数字画像 */
/* 企业数字画像 */
...
@@ -11,252 +11,118 @@ export async function getData(req, res) {
...
@@ -11,252 +11,118 @@ export async function getData(req, res) {
let
eId
=
req
.
body
.
eId
;
let
eId
=
req
.
body
.
eId
;
let
dbData
=
await
getQyszhx
(
eId
);
let
dbData
=
await
getQyszhx
(
eId
);
let
excelData
=
qyszhxTableData
();
let
fxyjExcelData
=
fxyjTableData
();
let
ret
:
any
=
{};
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
(
'企业基本情况'
,
qyjbqkPackageData
);
let
qyjbsjPackageData
=
keyValuePackage
(
dbData
[
'企业基本数据'
].
dataList
,
"false"
);
ret
[
'qyjbsj'
]
=
getKeyValueOut
(
'企业基本数据'
,
qyjbsjPackageData
);
let
qymcPackageData
=
keyValuePackage
(
dbData
[
'企业名称'
].
dataList
);
ret
[
'qymc'
]
=
getKeyValueOut
(
'企业名称'
,
qymcPackageData
);
let
qybqPackageData
=
stringListPackage
(
dbData
[
'企业标签'
].
dataList
);
ret
[
'qybq'
]
=
getStringOut
(
'企业标签'
,
qybqPackageData
);
let
yfzbPackageData
=
keyValuePackage
(
dbData
[
'研发占比'
].
dataList
);
ret
[
'yfzb'
]
=
getKeyValueOut
(
'研发占比'
,
yfzbPackageData
);
let
qyzhxPackageData
=
keyValuePackage
(
dbData
[
'企业自画像'
].
dataList
);
let
qyzhxPackageData
=
keyValuePackage
(
dbData
[
'企业自画像'
].
dataList
);
ret
[
'qyzhx'
]
=
getKeyValueOut
(
'企业自画像'
,
qyzhxPackageData
);
ret
[
'qyzhx'
]
=
getKeyValueOut
(
'企业自画像'
,
qyzhxPackageData
);
let
zfbtPackageData
=
keyValuePackage
(
dbData
[
'租房补贴'
].
dataList
);
ret
[
'zfbt'
]
=
getKeyValueOut
(
'租房补贴'
,
zfbtPackageData
);
let
gxPackageData
=
keyValuePackage
(
dbData
[
'高新'
].
dataList
);
ret
[
'gz'
]
=
getKeyValueOut
(
'高新'
,
gxPackageData
);
let
kxPackageData
=
keyValuePackage
(
dbData
[
'科小'
].
dataList
);
let
kxPackageData
=
keyValuePackage
(
dbData
[
'科小'
].
dataList
);
ret
[
'kx'
]
=
getKeyValueOut
(
'科小'
,
kxPackageData
);
ret
[
'kx'
]
=
getKeyValueOut
(
'科小'
,
kxPackageData
);
let
xjrPackageData
=
keyValuePackage
(
dbData
[
'小巨人'
].
dataList
);
let
gxPackageData
=
keyValuePackage
(
dbData
[
'高新'
].
dataList
);
ret
[
'xjr'
]
=
getKeyValueOut
(
'小巨人'
,
xjrPackageData
);
ret
[
'gz'
]
=
getKeyValueOut
(
'高新'
,
gxPackageData
);
let
zzrzPackageData
=
keyValuePackage
(
dbData
[
'资质认证'
].
dataList
);
ret
[
'zzrz'
]
=
getKeyValueOut
(
'资质认证'
,
zzrzPackageData
);
let
zzrzbhqsPackageData
=
onceYBarChartPackage
(
dbData
[
'资质认证变化趋势'
],
''
,
''
);
//新增
ret
[
'zzrzbhqs'
]
=
getOnceYBarChartOut
(
'资质认证变化趋势'
,
zzrzbhqsPackageData
);
let
zscqPackageData
=
keyValuePackage
(
dbData
[
'知识产权'
].
dataList
);
ret
[
'zscq'
]
=
getKeyValueOut
(
'知识产权'
,
zscqPackageData
);
let
qyyghxPackageData
=
keyValuePackage
(
dbData
[
'企业员工画像'
].
dataList
);
ret
[
'qyyghx'
]
=
getKeyValueOut
(
'企业员工画像'
,
qyyghxPackageData
);
let
lnrczpqkPackageData
=
onceYBarChartPackage
(
dbData
[
'历年人才招聘情况'
],
''
,
''
);
let
zfbtPackageData
=
keyValuePackage
(
dbData
[
'租房补贴'
].
dataList
);
ret
[
'
lnrczpqk'
]
=
getOnceYBarChartOut
(
'历年人才招聘情况'
,
lnrczpqk
PackageData
);
ret
[
'
zfbt'
]
=
getKeyValueOut
(
'租房补贴'
,
zfbt
PackageData
);
let
qyhzsjPackageData
=
keyValuePackage
(
dbData
[
'企业汇总数据
'
].
dataList
);
let
dkbtPackageData
=
keyValuePackage
(
dbData
[
'贷款补贴
'
].
dataList
);
ret
[
'
qyhzsj'
]
=
getKeyValueOut
(
'企业汇总数据'
,
qyhzsj
PackageData
);
ret
[
'
dkbt'
]
=
getKeyValueOut
(
'贷款补贴'
,
dkbt
PackageData
);
// let xjrTableData = tablePackage(excelData["小巨人"].headerList[0], excelData["小巨人"].bodyList)
;
let
qyjbqkPackageData
=
dbData
[
'企业基本情况'
].
dataList
;
// ret['xjr'] = getTableOut( '小巨人', xjrTabl
eData);
ret
[
'qyjbqk'
]
=
getKeyValueOut
(
'企业基本情况'
,
qyjbqkPackag
eData
);
// let gxqyTableData = tablePackage(excelData["高新企业"].headerList[0], excelData["高新企业"].body
List);
let
qybqPackageData
=
stringListPackage
(
dbData
[
'企业标签'
].
data
List
);
// ret['gxqy'] = getTableOut( '高新企业', gxqyTabl
eData);
ret
[
'qybq'
]
=
getStringOut
(
'企业标签'
,
qybqPackag
eData
);
// let zjtxTableData = tablePackage(excelData["专精特新"].headerList[0], excelData["专精特新"].bodyLis
t);
let
ssgjejhy
=
keyValuePackage
(
dbData
[
'企业科创分'
].
coun
t
);
// ret['zjtx'] = getTableOut( '专精特新', zjtxTableData
);
ret
[
'ssgjejhy'
]
=
getKeyValueOut
(
'所属国际二级行业'
,
ssgjejhy
);
let
ysqkPackageData
=
keyValuePackage
(
dbData
[
'营收情况'
].
dataList
);
let
qykcfbt
=
keyValuePackage
(
dbData
[
'企业科创分'
].
chartData
);
ret
[
'
ysqk'
]
=
getKeyValueOut
(
'营收情况'
,
ysqkPackageData
);
ret
[
'
qykcfbt'
]
=
getKeyValueOut
(
'企业科创分饼图'
,
qykcfbt
);
let
ysbhqsPackageData
=
onceYBarChartPackage
(
dbData
[
'营收变化趋势'
],
''
,
''
);
let
qykcf
=
keyValuePackage
(
dbData
[
'企业科创分'
].
dataList
);
ret
[
'
ysbhqs'
]
=
getOnceYBarChartOut
(
'营收变化趋势'
,
ysbhqsPackageData
);
ret
[
'
qykcf'
]
=
getKeyValueOut
(
'企业科创分'
,
qykcf
);
let
qydtTableData
=
tablePackage
(
dbData
[
"企业动态"
].
headerList
[
0
],
dbData
[
"企业动态"
].
bodyList
);
let
gqjg
=
keyValuePackage
(
dbData
[
'股权结构'
].
dataList
);
let
qydt
=
{
dataList
:
[],
titleList
:
qydtTableData
.
titleList
};
ret
[
'gqjg'
]
=
getKeyValueOut
(
'股权结构'
,
gqjg
);
// qydtTableData.dataList.forEach(info => {
// let {A} = info;
// let imgUrl = JSON.parse(A);
// info["A"] = imgUrl[0];
// qydt.dataList.push(info);
// })
ret
[
'qydt'
]
=
getTableOut
(
'企业动态'
,
qydtTableData
);
let
fxyjInfo
=
{};
let
zzrz
=
keyValuePackage
(
dbData
[
'资质认证'
].
count
);
fxyjExcelData
[
'风险预警'
].
dataList
.
forEach
(
info
=>
{
ret
[
'zzrz'
]
=
getKeyValueOut
(
'资质认证'
,
zzrz
);
let
{
key
,
value
}
=
info
;
fxyjInfo
[
key
]
=
info
;
let
zzrzTableData
=
tablePackage
(
dbData
[
"资质认证"
].
headerList
[
0
],
dbData
[
"资质认证"
].
bodyList
);
})
ret
[
'zzrzTable'
]
=
getTableOut
(
'资质认证表格'
,
zzrzTableData
);
let
qymc
=
dbData
[
'企业名称'
].
dataList
[
0
].
value
;
ret
[
'fxyj'
]
=
{
title
:
"风险预警"
,
dataList
:
fxyjInfo
[
qymc
]?
[
fxyjInfo
[
qymc
]]
:
[]};
let
fwxqPackageData
=
keyValuePackage
(
dbData
[
'服务需求'
].
dataList
,
"false"
);
let
sxhc
=
keyValuePackage
(
dbData
[
'失信核查'
].
count
);
ret
[
'
fwxq'
]
=
getKeyValueOut
(
'服务需求'
,
fwxqPackageData
);
ret
[
'
sxhc'
]
=
getKeyValueOut
(
'失信核查'
,
sxhc
);
let
hdbhqsfxPackageData
=
onceYBarChartPackage
(
dbData
[
'活动变化趋势分析'
],
''
,
''
);
let
sxhcxx
=
keyValuePackage
(
dbData
[
'失信核查'
].
dataList
);
ret
[
'
hdbhqsfx'
]
=
getOnceYBarChartOut
(
'活动变化趋势分析'
,
hdbhqsfxPackageData
);
ret
[
'
sxhcxx'
]
=
getKeyValueOut
(
'风险提示'
,
sxhcxx
);
// let ryzzPackageData = keyValuePackage(excelData['荣誉资质'].dataList);
let
sxxq
=
keyValuePackage
(
dbData
[
'失信详情'
].
dataList
);
// let ryzz = [];
ret
[
'sxxq'
]
=
getKeyValueOut
(
'失信详情'
,
sxxq
);
// ryzzPackageData.forEach(info => {
// let { key, value } = info;
// info.value = `${systemConfig.imgPath}/${value}`;
// ryzz.push(info);
// })
// ret['ryzz'] = getKeyValueOut('荣誉资质', ryzz);
let
ryzztp
=
dbData
[
"荣誉资质图片"
];
ret
[
'ryzztp'
]
=
{
title
:
"荣誉资质图片"
,
dataList
:
ryzztp
};
let
wfhc
=
keyValuePackage
(
dbData
[
'违法核查'
].
count
);
ret
[
'wfhc'
]
=
getKeyValueOut
(
'违法核查'
,
wfhc
);
let
fwjl_kjfwTableData
=
tablePackage
(
dbData
[
"服务记录_空间服务"
].
headerList
[
0
],
dbData
[
"服务记录_空间服务"
].
body
List
);
let
wfhcxx
=
keyValuePackage
(
dbData
[
'违法核查'
].
data
List
);
ret
[
'
fwjl_kjfw'
]
=
getTableOut
(
'服务记录_空间服务'
,
fwjl_kjfwTableData
);
ret
[
'
wfhcxx'
]
=
getKeyValueOut
(
'违法核查详细'
,
wfhcxx
);
let
fwjl_gsfwTableData
=
tablePackage
(
dbData
[
"服务记录_工商服务"
].
headerList
[
0
],
dbData
[
"服务记录_工商服务"
].
body
List
);
let
qyfwsqqk
=
keyValuePackage
(
dbData
[
'企业服务申请情况'
].
data
List
);
ret
[
'
fwjl_gsfw'
]
=
getTableOut
(
'服务记录_工商服务'
,
fwjl_gsfwTableData
);
ret
[
'
qyfwsqqk'
]
=
getKeyValueOut
(
'企业服务申请情况'
,
qyfwsqqk
);
let
fwjl_rzfwTableData
=
tablePackage
(
dbData
[
"服务记录_融资服务"
].
headerList
[
0
],
dbData
[
"服务记录_融资服务"
].
body
List
);
let
qyfwsqlx
=
keyValuePackage
(
dbData
[
'企业服务申请类型'
].
data
List
);
ret
[
'
fwjl_rzfw'
]
=
getTableOut
(
'服务记录_融资服务'
,
fwjl_rzfwTableData
);
ret
[
'
qyfwsqlx'
]
=
getKeyValueOut
(
'企业服务申请类型'
,
qyfwsqlx
);
let
fwjlPackageData
=
keyValuePackage
(
dbData
[
'服务记录'
].
dataLis
t
);
let
zlsl
=
keyValuePackage
(
dbData
[
'知识产权'
].
coun
t
);
ret
[
'
fwjl'
]
=
getKeyValueOut
(
'服务记录'
,
fwjlPackageData
);
ret
[
'
zlsl'
]
=
getKeyValueOut
(
'专利数量'
,
zlsl
);
let
yqtzPackageData
=
keyValuePackage
(
excelData
[
'园区通知
'
].
dataList
);
let
zscq
=
keyValuePackage
(
dbData
[
'知识产权
'
].
dataList
);
ret
[
'
yqtz'
]
=
getKeyValueOut
(
'园区通知'
,
yqtzPackageData
);
ret
[
'
zscq'
]
=
getKeyValueOut
(
'知识产权'
,
zscq
);
let
yqtzxqTableData
=
tablePackage
(
excelData
[
"园区通知详情"
].
headerList
[
0
],
excelData
[
"园区通知详情"
].
bodyList
);
let
rzqk
=
keyValuePackage
(
dbData
[
'融资情况'
].
count
);
// let yqtzxq = {dataList:[], titleList:yqtzxqTableData.titleList};
ret
[
'rzqk'
]
=
getKeyValueOut
(
'融资情况'
,
rzqk
);
// yqtzxqTableData.dataList.forEach(info => {
// let {A} = info;
// let imgUrl = `${systemConfig.imgPath}/${A}`;
// info["A"] = imgUrl;
// yqtzxq.dataList.push(info);
// })
ret
[
'yqtzxq'
]
=
getTableOut
(
'园区通知详情'
,
yqtzxqTableData
);
let
yqhdPackageData
=
keyValuePackage
(
excelData
[
'园区活动
'
].
dataList
);
let
rzqsfx
=
keyValuePackage
(
dbData
[
'融资情况
'
].
dataList
);
ret
[
'
yqhd'
]
=
getKeyValueOut
(
'园区活动'
,
yqhdPackageData
);
ret
[
'
rzqsfx'
]
=
getKeyValueOut
(
'融资趋势分析'
,
rzqsfx
);
let
y
qhdmxTableData
=
tablePackage
(
excelData
[
"园区活动明细"
].
headerList
[
0
],
excelData
[
"园区活动明细"
].
body
List
);
let
y
sqk
=
keyValuePackage
(
dbData
[
'营收情况'
].
data
List
);
ret
[
'y
qhdmx'
]
=
getTableOut
(
'园区活动明细'
,
yqhdmxTableData
);
ret
[
'y
sqk'
]
=
getKeyValueOut
(
'营收情况'
,
ysqk
);
ret
[
'ysqsfx'
]
=
{
title
:
"营收趋势分析"
,
dataList
:
dbData
[
"营收趋势分析"
]};
let
ysmx
=
tablePackage
(
dbData
[
"营收明细"
].
headerList
[
0
],
dbData
[
"营收明细"
].
bodyList
);
ret
[
'ysmx'
]
=
getTableOut
(
'营收明细'
,
ysmx
);
let
nssr
=
tablePackage
(
dbData
[
"纳税明细"
].
headerList
[
0
],
dbData
[
"纳税明细"
].
bodyList
);
ret
[
'nssr'
]
=
getTableOut
(
'纳税明细'
,
nssr
);
let
yftrmx
=
tablePackage
(
dbData
[
"研发投入明细"
].
headerList
[
0
],
dbData
[
"研发投入明细"
].
bodyList
);
ret
[
'yftrmx'
]
=
getTableOut
(
'研发投入明细'
,
yftrmx
);
res
.
send
(
ret
);
res
.
send
(
ret
);
}
}
/**
export
async
function
getData
备份
(
req
,
res
)
{
* 拼音首字母查询
let
eId
=
req
.
body
.
eId
;
* @param req
* @param res
let
excelData
=
qyszhxTableData
();
*/
export
async
function
getPinyinName
(
req
,
res
)
{
let
{
pinyinName
,
page
}
=
req
.
body
;
let
ret
:
any
=
{};
let
ret
:
any
=
{};
let
dbList
=
await
selectData
(
OPERATIONALDATATYPE
.
分页查询
,
TABLENAME
.
企业基础信息表
,
{
pinyinName
:{
"%like%"
:
pinyinName
}
},
null
,
page
);
let
qyjbqkPackageData
=
keyValuePackage
(
excelData
[
'企业基本情况'
].
dataList
);
let
enterpriseNameList
=
[];
let
qyjbqk
=
[];
dbList
.
forEach
(
info
=>
{
qyjbqkPackageData
.
forEach
(
info
=>
{
enterpriseNameList
.
push
(
info
.
enterpriseName
);
let
{
key
,
value
}
=
info
;
if
(
key
==
"企业图片"
)
{
info
.
value
=
`
${
systemConfig
.
imgPath
}
/
${
value
}
`
;
}
qyjbqk
.
push
(
info
);
})
ret
[
'qyjbqk'
]
=
getKeyValueOut
(
'企业基本情况'
,
qyjbqk
);
let
qyjbsjPackageData
=
keyValuePackage
(
excelData
[
'企业基本数据'
].
dataList
,
"false"
);
ret
[
'qyjbsj'
]
=
getKeyValueOut
(
'企业基本数据'
,
qyjbsjPackageData
);
let
qybqPackageData
=
stringListPackage
(
excelData
[
'企业标签'
].
dataList
);
ret
[
'qybq'
]
=
getStringOut
(
'企业标签'
,
qybqPackageData
);
let
zscqPackageData
=
keyValuePackage
(
excelData
[
'知识产权'
].
dataList
);
ret
[
'zscq'
]
=
getKeyValueOut
(
'知识产权'
,
zscqPackageData
);
let
qyyghxPackageData
=
keyValuePackage
(
excelData
[
'企业员工画像'
].
dataList
);
ret
[
'qyyghx'
]
=
getKeyValueOut
(
'企业员工画像'
,
qyyghxPackageData
);
let
lnrczpqkPackageData
=
onceYBarChartPackage
(
excelData
[
'历年人才招聘情况'
],
''
,
''
);
ret
[
'lnrczpqk'
]
=
getOnceYBarChartOut
(
'历年人才招聘情况'
,
lnrczpqkPackageData
);
let
qyhzsjPackageData
=
keyValuePackage
(
excelData
[
'企业汇总数据'
].
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
(
excelData
[
'营收情况'
].
dataList
);
ret
[
'ysqk'
]
=
getKeyValueOut
(
'营收情况'
,
ysqkPackageData
);
let
ysbhqsPackageData
=
onceYBarChartPackage
(
excelData
[
'营收变化趋势'
],
''
,
''
);
ret
[
'ysbhqs'
]
=
getOnceYBarChartOut
(
'营收变化趋势'
,
ysbhqsPackageData
);
let
qydtTableData
=
tablePackage
(
excelData
[
"企业动态"
].
headerList
[
0
],
excelData
[
"企业动态"
].
bodyList
);
let
qydt
=
{
dataList
:
[],
titleList
:
qydtTableData
.
titleList
};
qydtTableData
.
dataList
.
forEach
(
info
=>
{
let
{
A
}
=
info
;
let
imgUrl
=
`
${
systemConfig
.
imgPath
}
/
${
A
}
`
;
info
[
"A"
]
=
imgUrl
;
qydt
.
dataList
.
push
(
info
);
})
ret
[
'qydt'
]
=
getTableOut
(
'企业动态'
,
qydt
);
let
fwxqPackageData
=
keyValuePackage
(
excelData
[
'服务需求'
].
dataList
,
"false"
);
ret
[
'fwxq'
]
=
getKeyValueOut
(
'服务需求'
,
fwxqPackageData
);
let
hdbhqsfxPackageData
=
onceYBarChartPackage
(
excelData
[
'活动变化趋势分析'
],
''
,
''
);
ret
[
'hdbhqsfx'
]
=
getOnceYBarChartOut
(
'活动变化趋势分析'
,
hdbhqsfxPackageData
);
let
fwjl_kjfwTableData
=
tablePackage
(
excelData
[
"服务记录_空间服务"
].
headerList
[
0
],
excelData
[
"服务记录_空间服务"
].
bodyList
);
ret
[
'fwjl_kjfw'
]
=
getTableOut
(
'服务记录_空间服务'
,
fwjl_kjfwTableData
);
let
fwjl_gsfwTableData
=
tablePackage
(
excelData
[
"服务记录_工商服务"
].
headerList
[
0
],
excelData
[
"服务记录_工商服务"
].
bodyList
);
ret
[
'fwjl_gsfw'
]
=
getTableOut
(
'服务记录_工商服务'
,
fwjl_gsfwTableData
);
let
fwjl_rzfwTableData
=
tablePackage
(
excelData
[
"服务记录_融资服务"
].
headerList
[
0
],
excelData
[
"服务记录_融资服务"
].
bodyList
);
ret
[
'fwjl_rzfw'
]
=
getTableOut
(
'服务记录_融资服务'
,
fwjl_rzfwTableData
);
let
fwjlPackageData
=
keyValuePackage
(
excelData
[
'服务记录'
].
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
[
'qymcList'
]
=
enterpriseNameList
;
ret
[
'yqhd'
]
=
getKeyValueOut
(
'园区活动'
,
yqhdPackageData
);
ret
[
'dataCount'
]
=
dbList
.
length
;
res
.
send
(
ret
);
}
let
yqhdmxTableData
=
tablePackage
(
excelData
[
"园区活动明细"
].
headerList
[
0
],
excelData
[
"园区活动明细"
].
bodyList
);
ret
[
'yqhdmx'
]
=
getTableOut
(
'园区活动明细'
,
yqhdmxTableData
);
res
.
send
(
ret
);
}
\ No newline at end of file
src/biz/zhyy.ts
View file @
f28ddecc
import
{
systemConfig
}
from
'../config/serverConfig'
;
import
{
systemConfig
}
from
'../config/serverConfig'
;
import
{
getZhyy
}
from
'../data/db/zhyy'
;
import
{
getZhyy
}
from
'../data/db/zhyy'
;
import
{
zhyyTableData
}
from
'../data/table/zhyyData'
;
import
{
zhyyTableData
}
from
'../data/table/zhyyData'
;
import
{
doubleYBarCharPackage
,
keyValuePackage
,
onceYBarChartPackage
,
rank
Package
,
tablePackage
}
from
'../dataPackage/inFrontOut'
;
import
{
keyValue
Package
,
tablePackage
}
from
'../dataPackage/inFrontOut'
;
import
{
get
DoubleYBarChartOut
,
getKeyValueOut
,
getOnceYBarChart
Out
,
getTableOut
}
from
'../dataPackage/out'
;
import
{
get
KeyValue
Out
,
getTableOut
}
from
'../dataPackage/out'
;
import
{
getChart
}
from
'../data/db/out'
;
import
{
getChart
}
from
'../data/db/out'
;
/*
智慧运营
*/
/*
*智慧运营
*/
export
async
function
getData
(
req
,
res
)
{
export
async
function
getData
(
req
,
res
)
{
let
excelData
=
zhyyTableData
();
let
excelData
=
zhyyTableData
();
...
...
src/config/enum.ts
View file @
f28ddecc
...
@@ -40,6 +40,19 @@ export enum TABLENAME {
...
@@ -40,6 +40,19 @@ export enum TABLENAME {
企业专利表
=
'enterprise_patent'
,
企业专利表
=
'enterprise_patent'
,
企业基础信息表
=
'enterprise'
,
企业基础信息表
=
'enterprise'
,
企业服务表
=
'enterprise_service'
,
企业服务表
=
'enterprise_service'
,
股权结构
=
'ownership'
,
行业信息分类
=
"enterprise_industry"
,
主要人员
=
"employees"
,
分支机构
=
"branches"
,
行政许可核查
=
"license"
,
空壳扫描
=
"empty"
,
风险
=
"enterprise_risk"
,
科创分
=
"enterprise_stem"
,
资质证书
=
"certification"
,
失信核查
=
"dishonesty"
,
严重违法犯罪
=
"break_the_law"
,
对外投资
=
"overseas_investment"
,
}
}
...
...
src/data/db/out.ts
View file @
f28ddecc
...
@@ -72,3 +72,37 @@ export function getYearList() {
...
@@ -72,3 +72,37 @@ export function getYearList() {
return
years
;
return
years
;
}
}
/**
* 获取最近的四个季度
* @param count
* @returns
*/
export
function
getRecentQuarters
(
count
=
4
)
{
const
currentDate
=
moment
();
const
currentQuarter
=
Math
.
floor
(
currentDate
.
month
()
/
3
)
+
1
;
const
result
=
[];
let
year
=
currentDate
.
year
();
let
quarter
=
currentQuarter
;
for
(
let
i
=
0
;
i
<
count
;
i
++
)
{
result
.
push
({
year
:
year
,
quarter
:
quarter
});
// 计算上一个季度
quarter
--
;
if
(
quarter
===
0
)
{
quarter
=
4
;
year
--
;
}
}
return
result
;
}
src/data/db/qyszhx.ts
View file @
f28ddecc
import
moment
=
require
(
"moment"
);
import
moment
=
require
(
"moment"
);
import
{
AWARDLEVEL
,
DEGREE
,
FINANCINGROUNDS
,
IPRALLTYPE
,
NEEDCATEGORY
,
OPERATIONALDATATYPE
,
QUARTER
,
TABLENAME
}
from
"../../config/enum"
;
import
{
AWARDLEVEL
,
DEGREE
,
FINANCINGROUNDS
,
FOLLOWUPSTATUS
,
IPRALLTYPE
,
NEEDCATEGORY
,
OPERATIONALDATATYPE
,
QUARTER
,
TABLENAME
}
from
"../../config/enum"
;
import
{
selectData
,
selectManyTableData
}
from
"./operationalData"
;
import
{
selectData
,
selectManyTableData
}
from
"./operationalData"
;
import
{
getChart
,
getKeyValue
,
getYearList
}
from
"./out"
;
import
{
getChart
,
getKeyValue
,
get
RecentQuarters
,
get
YearList
}
from
"./out"
;
import
{
changeEnumValue
}
from
"../../tools/eccEnum"
;
import
{
changeEnumValue
}
from
"../../tools/eccEnum"
;
import
{
getMySqlMs
}
from
"../../tools/systemTools"
;
import
{
getMySqlMs
}
from
"../../tools/systemTools"
;
import
{
connectLogger
}
from
"log4js"
;
import
{
connectLogger
}
from
"log4js"
;
...
@@ -12,153 +12,169 @@ import { systemConfig } from "../../config/serverConfig";
...
@@ -12,153 +12,169 @@ import { systemConfig } from "../../config/serverConfig";
export
async
function
getQyszhx
(
eId
)
{
export
async
function
getQyszhx
(
eId
)
{
let
qyszhx
=
{
let
qyszhx
=
{
企业基本情况
:
{
dataList
:
[],
titleList
:
[
'key'
,
'value'
]
},
企业基本情况
:
{
dataList
:
[],
titleList
:
[
'key'
,
'value'
]
},
企业基本数据
:
{
dataList
:
[],
titleList
:
[
'key'
,
'value'
]
},
企业标签
:
{
dataList
:
[],
titleList
:
[
'key'
,
'value'
]
},
企业标签
:
{
dataList
:
[],
titleList
:
[
'key'
,
'value'
]
},
研发占比
:
{
dataList
:
[],
titleList
:
[
'key'
,
'value'
]
},
企业科创分
:
{
count
:
[],
dataList
:
[],
chartData
:[]},
//count:所属国际二级行业,chartData:饼图
股权结构
:
{
dataList
:
[],
titleList
:
[
'key'
,
'value'
]
},
资质认证
:
{
count
:[],
bodyList
:
[],
headerList
:
[[
'生效时间'
,
'证书类型'
,
'状态'
]]},
//count:资质认证总数
失信核查
:
{
count
:[],
dataList
:[]},
//todo
失信详情
:
{
count
:[],
dataList
:
[]},
//todo
违法核查
:
{
count
:[],
dataList
:
[]},
//todo
企业服务申请情况
:
{
dataList
:
[],
titleList
:
[
'key'
,
'value'
]
},
企业服务申请类型
:
{
dataList
:
[],
titleList
:
[
'key'
,
'value'
]
},
知识产权
:
{
count
:[],
dataList
:
[],
titleList
:
[
'key'
,
'value'
]
},
融资情况
:
{
count
:[],
dataList
:[]},
营收情况
:
{
dataList
:
[],
titleList
:
[
'key'
,
'value'
]
},
营收趋势分析
:
{},
营收明细
:
{
bodyList
:
[],
headerList
:
[[
'名称'
,
'时间'
,
'金额'
]]},
纳税明细
:
{
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'
]
},
科小
:
{
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'
]
},
营收情况
:
{
dataList
:
[],
titleList
:
[
'key'
,
'value'
]
},
营收变化趋势
:
[],
企业动态
:
{
bodyList
:
[],
headerList
:
[[
'获奖数量'
,
'获奖名称'
,
'获奖时间'
,
'颁奖单位'
,
'奖项等级'
]]
},
// 风险预警:{ bodyList: [], headerList: [['风险预警名称', '风险预警时间', '风险预警类型', '风险预警原因']] },
服务需求
:
{
dataList
:
[],
titleList
:
[
'key'
,
'value'
]
},
活动变化趋势分析
:
[],
荣誉资质图片
:
{},
服务记录
_
空间服务
:
{
bodyList
:
[],
headerList
:
[[
'服务名称'
,
'服务时间'
,
'服务内容'
]]
},
服务记录
_
工商服务
:
{
bodyList
:
[],
headerList
:
[[
'服务名称'
,
'服务时间'
,
'服务内容'
]]
},
服务记录
_
融资服务
:
{
bodyList
:
[],
headerList
:
[[
'服务名称'
,
'服务时间'
,
'服务内容'
]]
},
服务记录
:
{
dataList
:
[],
titleList
:
[
'key'
,
'value'
]
},
历年人才招聘情况
:
[],
}
}
/**数据库查询 */
/**数据库查询 */
let
企业基础信息
=
await
selectData
(
OPERATIONALDATATYPE
.
查询单个
,
TABLENAME
.
企业基础信息表
,
{
eId
},
null
);
let
企业基础信息
=
await
selectData
(
OPERATIONALDATATYPE
.
查询单个
,
TABLENAME
.
企业基础信息表
,
{
eId
},
null
);
if
(
!
Object
.
keys
(
企业基础信息
).
length
)
console
.
log
(
'eId:'
,
eId
);
if
(
!
Object
.
keys
(
企业基础信息
).
length
)
console
.
log
(
'eId:'
,
eId
);
let
法人信息
=
await
selectData
(
OPERATIONALDATATYPE
.
查询单个
,
TABLENAME
.
法人信息表
,
{
eId
},
null
);
// let column = ["eId", "enterpriseName", "uscc", "", "", "", "", "", "", "", "", "", "", "", ""];
let
孵化
Column
=
[
"fId"
,
"eId"
,
"startTime"
,
"endTime"
,
"state"
,
"virtualCause"
,
"virtualCauseDes"
,
"moveOutType"
,
"moveOutTrace"
,
"moveOutCause"
,
"moveOutTime"
,
"graduationTime"
,
"jiShuHeTongJiaoYi"
];
let
企业孵化联查
includeConf
=
{};
企业孵化联查
includeConf
[
TABLENAME
.
企业孵化信息
]
=
{
cloum
:
孵化
Column
,
where
:
{}
}
let
企业孵化信息
=
await
selectManyTableData
(
OPERATIONALDATATYPE
.
多表联查
,
TABLENAME
.
企业基础信息表
,
{
eId
},
[],
企业孵化联查
includeConf
);
let
资质
Column
=
[
"qId"
,
"eId"
,
"kxTime"
,
"zjtxTime"
,
"xjrTime"
,
"xjrPyTime"
,
"goPublicTime"
,
"gaoXinJiShuTime"
,
"goPublicSector"
];
let
企业资质联查
includeConf
=
{};
企业资质联查
includeConf
[
TABLENAME
.
企业资质
]
=
{
cloum
:
资质
Column
,
where
:
{}
}
let
企业资质信息
=
await
selectManyTableData
(
OPERATIONALDATATYPE
.
多表联查
,
TABLENAME
.
企业基础信息表
,
{
eId
},
[],
企业资质联查
includeConf
);
let
专利
Column
=
[
"iprId"
,
"eId"
,
"year"
,
"number"
,
"iprType"
,
"selectedValue"
,
"iprName"
,
"iprUrl"
];
let
企业专利联查
includeConf
=
{};
企业专利联查
includeConf
[
TABLENAME
.
知识产权
]
=
{
cloum
:
专利
Column
,
where
:
{}
}
let
企业专利信息
=
await
selectManyTableData
(
OPERATIONALDATATYPE
.
多表联查
,
TABLENAME
.
企业基础信息表
,
{
eId
},
[],
企业专利联查
includeConf
);
let
创业团队
Column
=
[
"tId"
,
"eId"
,
"name"
,
"sex"
,
"birth"
,
"degree"
,
"graduationSchool"
,
"talentType"
,
"des"
];
let
创业团队联查
includeConf
=
{};
创业团队联查
includeConf
[
TABLENAME
.
创业团队
]
=
{
cloum
:
创业团队
Column
,
where
:
{}
}
let
创业团队信息
=
await
selectManyTableData
(
OPERATIONALDATATYPE
.
多表联查
,
TABLENAME
.
企业基础信息表
,
{
eId
},
[],
创业团队联查
includeConf
);
let
企业经营
Column
=
[
"mId"
,
"eId"
,
"annual"
,
"BI"
,
"TXP"
,
"RD"
,
"createTime"
,
"state"
];
let
企业经营联查
includeConf
=
{};
企业经营联查
includeConf
[
TABLENAME
.
企业经营信息
]
=
{
cloum
:
企业经营
Column
,
where
:
{}
}
let
企业经营信息
=
await
selectManyTableData
(
OPERATIONALDATATYPE
.
多表联查
,
TABLENAME
.
企业基础信息表
,
{
eId
},
[],
企业经营联查
includeConf
);
let
企业荣誉
Column
=
[
"hId"
,
"eId"
,
"awardName"
,
"awardingUnit"
,
"awardTime"
,
"awardLevel"
,
"awardImg"
];
let
企业荣誉联查
includeConf
=
{};
企业荣誉联查
includeConf
[
TABLENAME
.
企业荣誉
]
=
{
cloum
:
企业荣誉
Column
,
where
:
{}
}
let
企业荣誉信息
=
await
selectManyTableData
(
OPERATIONALDATATYPE
.
多表联查
,
TABLENAME
.
企业基础信息表
,
{
eId
},
[],
企业荣誉联查
includeConf
);
let
企业融资
Column
=
[
"rId"
,
"eId"
,
"financingAmount"
,
"financingRounds"
,
"fuHuaQiInvestment"
,
"fuHuaQiInvestmentStyle"
,
"fuHuaQiInvestmentAmount"
,
"investmentDate"
,
"investmentInstitutionsName"
,
"valuation"
];
let
企业融资联查
includeConf
=
{};
企业融资联查
includeConf
[
TABLENAME
.
企业融资
]
=
{
cloum
:
企业融资
Column
,
where
:
{}
}
let
企业融资信息
=
await
selectManyTableData
(
OPERATIONALDATATYPE
.
多表联查
,
TABLENAME
.
企业基础信息表
,
{
eId
},
[],
企业融资联查
includeConf
);
let
企业服务
Column
=
[
"esId"
,
"eId"
,
"needCategory"
,
"needContent"
,
"applyTime"
,
"followUpStatus"
,
"resolveTime"
,
"fangKui"
,
"shouLiTime"
,
"outcome"
,
"desc"
];
let
企业服务联查
includeConf
=
{};
企业服务联查
includeConf
[
TABLENAME
.
企业服务表
]
=
{
cloum
:
企业服务
Column
,
where
:
{}
}
let
企业服务信息
=
await
selectManyTableData
(
OPERATIONALDATATYPE
.
多表联查
,
TABLENAME
.
企业基础信息表
,
{
eId
},
[],
企业服务联查
includeConf
);
let
参保记录
Column
=
[
"cId"
,
"eId"
,
"annual"
,
"zhuanKe"
,
"benKe"
,
"shuoshi"
,
"boShi"
,
"boshiyishang"
,
"qiTa"
];
let
参保记录联查
includeConf
=
{};
参保记录联查
includeConf
[
TABLENAME
.
参保记录
]
=
{
cloum
:
参保记录
Column
,
where
:
{}
}
// let 参保记录信息 = await selectManyTableData(OPERATIONALDATATYPE.多表联查, TABLENAME.企业基础信息表, { eId }, [], 参保记录联查includeConf);
let
参保记录信息
=
await
selectData
(
OPERATIONALDATATYPE
.
查询多个
,
TABLENAME
.
参保记录
,
{
eId
},
参保记录
Column
);
let
租赁信息
Column
=
[
"leaseId"
,
"eId"
,
"area"
,
"startTime"
,
"endTime"
];
let
租赁信息联查
includeConf
=
{};
租赁信息联查
includeConf
[
TABLENAME
.
租赁信息
]
=
{
cloum
:
租赁信息
Column
,
where
:
{}
}
let
租赁信息
=
await
selectManyTableData
(
OPERATIONALDATATYPE
.
多表联查
,
TABLENAME
.
企业基础信息表
,
{
eId
},
[],
租赁信息联查
includeConf
);
//企业基本情况
//企业基本情况
let
qyjbqk
=
{
let
qyjbqk
=
{
企业介绍
:
企业基础信息
.
jianJie
,
统一社会信用代码
:
企业基础信息
.
uscc
,
// 企业图片: "企业照片占位图.png",
法人代表
:
法人信息
.
name
,
登记状态
:
企业基础信息
.
RAS
,
成立时间
:
moment
(
企业基础信息
.
logonTime
).
format
(
"YYYY-MM-DD"
),
注册资本
:
企业基础信息
.
zhuceziben
,
组织机构代码
:
企业基础信息
.
zuZhiJiGouDaiMa
,
};
};
//企业基本数据
//企业基本数据
qyszhx
.
企业基本情况
.
dataList
=
getKeyValue
(
qyjbqk
);
qyszhx
.
企业基本情况
.
dataList
=
getKeyValue
(
qyjbqk
);
/**
//企业标签
* 企业名称
let
企业资质信息
=
await
selectData
(
OPERATIONALDATATYPE
.
查询多个
,
TABLENAME
.
企业资质
,
{
eId
},
[]);
*/
let
qybq
=
get
企业标签
(
企业资质信息
);
let
qyName
=
{
qyszhx
.
企业标签
.
dataList
=
qybq
;
企业名称
:
企业基础信息
.
enterpriseName
};
//企业科创分
qyszhx
.
企业名称
.
dataList
=
getKeyValue
(
qyName
);
let
企业科创分
=
await
selectData
(
OPERATIONALDATATYPE
.
查询单个
,
TABLENAME
.
科创分
,
{
eId
},
[
"eId"
,
"industry"
,
"subIndustry"
,
"industryRanking"
,
"score"
]);
let
ssgjejhy
=
{
所属国际二级行业
:
企业科创分
.
subIndustry
};
qyszhx
.
企业科创分
.
count
=
getKeyValue
(
ssgjejhy
);
//饼图
let
qykcfChart
=
{
占比
:
企业科创分
.
industryRanking
,
等级
:
""
,
星级
:
0
};
let
industryRanking
=
0
;
if
(
企业科创分
.
industryRanking
)
industryRanking
=
parseInt
(
企业科创分
.
industryRanking
.
split
(
'%'
)[
0
]);
if
(
industryRanking
>=
96
&&
industryRanking
<=
100
)
{
qykcfChart
.
等级
=
'卓越'
;
qykcfChart
.
星级
=
5
;
}
else
if
(
industryRanking
>=
86
&&
industryRanking
<=
95
)
{
qykcfChart
.
等级
=
'优秀'
;
qykcfChart
.
星级
=
4
;
}
else
if
(
industryRanking
>=
71
&&
industryRanking
<=
85
)
{
qykcfChart
.
等级
=
'良好'
;
qykcfChart
.
星级
=
3
;
}
else
if
(
industryRanking
>=
51
&&
industryRanking
<=
70
)
{
qykcfChart
.
等级
=
'普通'
;
qykcfChart
.
星级
=
2
;
}
else
if
(
industryRanking
>=
20
&&
industryRanking
<=
50
)
{
qykcfChart
.
等级
=
'入门'
;
qykcfChart
.
星级
=
1
;
}
else
{
qykcfChart
.
等级
=
'未知'
;
// 处理不在范围内的分数
}
qyszhx
.
企业科创分
.
chartData
=
getKeyValue
(
qykcfChart
);
//表格
let
qykcf
=
{
科创分
:
企业科创分
.
score
,
同行业内科创排名
:
企业科创分
.
industryRanking
};
qyszhx
.
企业科创分
.
dataList
=
getKeyValue
(
qykcf
);
//股权结构
let
股权结构
=
await
selectData
(
OPERATIONALDATATYPE
.
查询多个
,
TABLENAME
.
股权结构
,
{
eId
},
[
"eId"
,
"name"
,
"stockPercent"
]);
let
gqjg
=
[];
股权结构
.
forEach
(
info
=>
{
let
rate
=
0
;
if
(
info
.
stockPercent
)
rate
=
parseInt
(
info
.
stockPercent
.
split
(
'%'
)[
0
]);
gqjg
.
push
({
key
:
info
.
name
,
value
:
info
.
stockPercent
,
rate
});
});
gqjg
.
sort
(
(
a
,
b
)
=>
{
return
b
.
rate
-
a
.
rate
;
})
qyszhx
.
股权结构
.
dataList
=
gqjg
.
slice
(
0
,
3
);
//资质认证
let
资质证书
=
await
selectData
(
OPERATIONALDATATYPE
.
查询多个
,
TABLENAME
.
资质证书
,
{
eId
},
[
"eId"
,
"name"
,
"type"
,
"startDate"
,
"status"
]);
let
zzzs
=
[];
资质证书
.
forEach
(
info
=>
{
zzzs
.
push
([
moment
(
info
.
startDate
).
format
(
"YYYY-MM-DD"
),
info
.
type
,
info
.
status
]);
})
qyszhx
.
资质认证
.
count
=
[{
key
:
"资质认证"
,
value
:
资质证书
.
length
}];
qyszhx
.
资质认证
.
bodyList
=
zzzs
;
//企业风险动态:失信核查、失信详情、违法核查
let
企业风险动态
=
await
selectData
(
OPERATIONALDATATYPE
.
查询多个
,
TABLENAME
.
失信核查
,
{
eId
},
[
"eId"
,
"liandate"
,
"anno"
,
"executegov"
,
"executestatus"
,
"publicdate"
,
"executeno"
,
"actionRemark"
,
"amount"
]);
let
qyfxdt
=
{
失信核查
:[],
失信详情
:[],
违法核查
:[]};
企业风险动态
.
forEach
(
info
=>
{
qyfxdt
.
失信核查
.
push
(
info
.
actionRemark
);
})
qyszhx
.
失信核查
.
count
=
[{
key
:
"失信核查次数"
,
value
:
企业风险动态
.
length
}];
qyszhx
.
失信核查
.
dataList
=
qyfxdt
.
失信核查
;
let
qyjbsj
=
{
let
严重违法犯罪
=
await
selectData
(
OPERATIONALDATATYPE
.
查询多个
,
TABLENAME
.
严重违法犯罪
,
{
eId
},
[
"eId"
,
"Type"
,
"AddReason"
,
"AddDate"
,
"AddOffice"
,
"RemoveReason"
,
"RemoveDate"
,
"RemoveOffice"
]);
注册时间
:
"-"
,
严重违法犯罪
.
forEach
(
info
=>
{
迁入时间
:
"-"
,
qyfxdt
.
违法核查
.
push
(
info
.
AddReason
);
首次入孵时间
:
"-"
,
})
};
qyszhx
.
违法核查
.
count
=
[{
key
:
"违法核查次数"
,
value
:
严重违法犯罪
.
length
}];
if
(
企业基础信息
.
logonTime
)
qyjbsj
.
注册时间
=
moment
(
企业基础信息
.
logonTime
).
format
(
"YYYY-MM-DD"
)
qyszhx
.
违法核查
.
dataList
=
qyfxdt
.
违法核查
;
if
(
企业孵化信息
[
0
])
{
if
(
企业孵化信息
[
0
].
enterprise_fuhuas
[
0
].
startTime
)
qyjbsj
.
首次入孵时间
=
moment
(
企业孵化信息
[
0
].
enterprise_fuhuas
[
0
].
startTime
).
format
(
"YYYY-MM-DD"
)
//企业服务申请情况
let
企业服务
dbList
=
await
selectData
(
OPERATIONALDATATYPE
.
查询多个
,
TABLENAME
.
企业服务表
,
{
eId
},
[]);
//获取所有企业服务表联查企业信息表
let
未受理企业服务
Count
=
await
selectData
(
OPERATIONALDATATYPE
.
查询数据量
,
TABLENAME
.
企业服务表
,
{
eId
,
followUpStatus
:
FOLLOWUPSTATUS
.
未受理
},
[]);
let
已完成企业服务
Count
=
await
selectData
(
OPERATIONALDATATYPE
.
查询数据量
,
TABLENAME
.
企业服务表
,
{
eId
,
followUpStatus
:
FOLLOWUPSTATUS
.
已完成
},
[]);
let
qyfwsqqk
=
{
服务次数
:
企业服务
dbList
.
length
,
已完成
:
已完成企业服务
Count
,
未受理
:
未受理企业服务
Count
}
}
if
(
企业基础信息
.
firstLoginTime
)
qyjbsj
.
迁入时间
=
moment
(
企业基础信息
.
firstLoginTime
).
format
(
"YYYY-MM-DD"
)
qyszhx
.
企业服务申请情况
.
dataList
=
getKeyValue
(
qyfwsqqk
);
qyszhx
.
企业基本数据
.
dataList
=
getKeyValue
(
qyjbsj
);
let
qyfwsqlx
=
getQyfwsqlx
(
企业服务
dbList
);
qyszhx
.
企业服务申请类型
.
dataList
=
qyfwsqlx
;
//企业标签 todo
//知识产权
let
qybq
=
get
企业标签
(
企业资质信息
);
let
知识产权
=
await
selectData
(
OPERATIONALDATATYPE
.
查询多个
,
TABLENAME
.
知识产权
,
{
eId
},
[]);
qyszhx
.
企业标签
.
dataList
=
qybq
;
let
zscq
=
get
知识产权
(
知识产权
);
qyszhx
.
知识产权
.
count
=
[{
key
:
"专利数量"
,
value
:
zscq
.
count
}];
qyszhx
.
知识产权
.
dataList
=
getKeyValue
(
zscq
.
zscq
);
//融资情况
let
融资情况
=
await
selectData
(
OPERATIONALDATATYPE
.
查询多个
,
TABLENAME
.
企业融资
,
{
eId
},
[]);
let
最新融资情况
=
await
selectData
(
OPERATIONALDATATYPE
.
查询单个
,
TABLENAME
.
企业融资
,
{
eId
,
"%orderDesc%"
:
"investmentDate"
},
[]);
let
rzqk
=
get
融资情况
(
融资情况
);
rzqk
.
count
.
融资轮次
=
changeEnumValue
(
FINANCINGROUNDS
,
最新融资情况
.
financingRounds
);
qyszhx
.
融资情况
.
count
=
getKeyValue
(
rzqk
.
count
);
qyszhx
.
融资情况
.
dataList
=
rzqk
.
rzqk
;
// 计算研发占比
//营收情况
let
yfzb
=
get
研发占比
(
企业经营信息
);
let
营收情况
=
await
selectData
(
OPERATIONALDATATYPE
.
查询多个
,
TABLENAME
.
企业经营信息
,
{
eId
},
[]);
// 将研发占比数据添加到 qyszhx 对象中
let
{
ysqk
,
ysbhqs
,
ysbhqsTable
}
=
get
营收情况
(
营收情况
);
qyszhx
.
研发占比
.
dataList
=
getKeyValue
(
yfzb
);
qyszhx
.
营收情况
.
dataList
=
getKeyValue
(
ysqk
);
qyszhx
.
营收趋势分析
=
ysbhqs
;
qyszhx
.
营收明细
.
bodyList
=
ysbhqsTable
.
营收
;
qyszhx
.
纳税明细
.
bodyList
=
ysbhqsTable
.
纳税
;
qyszhx
.
研发投入明细
.
bodyList
=
ysbhqsTable
.
研发投入
;
/**
//企业自画像
* 企业自画像
let
qyzp
=
get
企业自画像
(
营收情况
,
融资情况
,
知识产权
);
*/
let
qyzp
=
get
企业自画像
(
企业经营信息
,
企业融资信息
,
企业专利信息
);
qyszhx
.
企业自画像
.
dataList
=
getKeyValue
(
qyzp
);
qyszhx
.
企业自画像
.
dataList
=
getKeyValue
(
qyzp
);
//租房补贴
//租房补贴
let
zfbz
=
get
租房补贴
(
企业资质信息
,
企业专利信息
,
参保记录信息
);
let
参保记录
Column
=
[
"cId"
,
"eId"
,
"annual"
,
"zhuanKe"
,
"benKe"
,
"shuoshi"
,
"boShi"
,
"boshiyishang"
,
"qiTa"
];
qyszhx
.
租房补贴
.
dataList
=
getKeyValue
(
zfbz
);
let
参保记录信息
=
await
selectData
(
OPERATIONALDATATYPE
.
查询多个
,
TABLENAME
.
参保记录
,
{
eId
},
参保记录
Column
);
// //高新
// let gx = get高新(企业资质信息);
// qyszhx.高新.dataList = getKeyValue(gx);
// //科小
// let kx = get科小(企业资质信息);
// qyszhx.科小.dataList = getKeyValue(kx);
// //小巨人
let
zfbz
=
get
租房补贴
(
企业资质信息
,
知识产权
,
参保记录信息
);
// let xjt = get小巨人(企业资质信息);
qyszhx
.
租房补贴
.
dataList
=
getKeyValue
(
zfbz
);
// qyszhx.小巨人.dataList = getKeyValue(xjt);
// 高新
// 高新
let
gx
=
get
资质达标情况
(
企业资质信息
,
'gaoXinJiShuTime'
);
let
gx
=
get
资质达标情况
(
企业资质信息
,
'gaoXinJiShuTime'
);
...
@@ -167,203 +183,47 @@ export async function getQyszhx(eId) {
...
@@ -167,203 +183,47 @@ export async function getQyszhx(eId) {
// 科小
// 科小
let
kx
=
get
资质达标情况
(
企业资质信息
,
'kxTime'
);
let
kx
=
get
资质达标情况
(
企业资质信息
,
'kxTime'
);
qyszhx
.
科小
.
dataList
=
getKeyValue
(
kx
);
qyszhx
.
科小
.
dataList
=
getKeyValue
(
kx
);
// 小巨人
//贷款补贴
let
xjrData
=
get
资质达标情况
(
企业资质信息
,
'xjrTime'
);
// let dkbt = get贷款补贴(企业资质信息);
qyszhx
.
小巨人
.
dataList
=
getKeyValue
(
xjrData
);
// qyszhx.贷款补贴.dataList = getKeyValue(dkbt);
//资质认证
let
zzrz
=
get
资质认证
(
企业资质信息
);
qyszhx
.
资质认证
.
dataList
=
getKeyValue
(
zzrz
);
//资质认证变化趋势
let
zzrzbsqs
=
get
资质认证变化趋势
(
企业资质信息
);
qyszhx
.
资质认证变化趋势
=
zzrzbsqs
;
//知识产权
let
zscq
=
get
知识产权
(
企业专利信息
);
qyszhx
.
知识产权
.
dataList
=
getKeyValue
(
zscq
);
//企业员工画像
let
qyyghx
=
await
get
企业员工画像
(
参保记录信息
);
qyszhx
.
企业员工画像
.
dataList
=
getKeyValue
(
qyyghx
);
let
专利总数
=
0
;
for
(
let
key
in
zscq
)
{
专利总数
+=
zscq
[
key
];
}
//企业汇总数据
let
qyhzsj
=
{
// 企业认证:0, //todo
资质认证
:
qybq
.
length
,
专利数
:
专利总数
,
};
qyszhx
.
企业汇总数据
.
dataList
=
getKeyValue
(
qyhzsj
);
//营收情况
let
{
ysqk
,
ysbhqs
}
=
get
营收情况
(
企业经营信息
);
qyszhx
.
营收情况
.
dataList
=
getKeyValue
(
ysqk
);
//营收变化趋势
qyszhx
.
营收变化趋势
=
ysbhqs
;
//企业动态
let
qydt
=
get
企业动态
(
企业荣誉信息
);
qyszhx
.
企业动态
.
bodyList
=
qydt
;
//风险预警
// let fxyj = get风险预警(企业融资信息);
// qyszhx.风险预警.bodyList = fxyj;
//服务需求
let
fwxq
=
get
服务需求
(
企业融资信息
);
qyszhx
.
服务需求
.
dataList
=
getKeyValue
(
fwxq
);
//活动变化趋势分析
let
hdbhqsfx
=
get
活动变化趋势分析
(
企业融资信息
);
qyszhx
.
活动变化趋势分析
=
hdbhqsfx
;
//荣誉资质
let
ryzz
=
get
荣誉资质
(
企业荣誉信息
);
qyszhx
.
荣誉资质图片
=
ryzz
;
//服务记录_空间服务
let
fwjlxx
=
get
服务记录
(
企业服务信息
);
// qyszhx.服务记录_空间服务.bodyList = fwjlxx.空间服务;
qyszhx
.
服务记录
_
工商服务
.
bodyList
=
fwjlxx
.
工商服务
;
qyszhx
.
服务记录
_
融资服务
.
bodyList
=
fwjlxx
.
融资服务
;
//服务记录
let
fwjl
=
{
// 空间服务次数: fwjlxx.空间服务.length,
工商服务次数
:
fwjlxx
.
工商服务
.
length
,
融资服务次数
:
fwjlxx
.
融资服务
.
length
,
}
qyszhx
.
服务记录
.
dataList
=
getKeyValue
(
fwjl
);
//就业
let
jiuYeList
=
await
selectData
(
OPERATIONALDATATYPE
.
查询多个
,
TABLENAME
.
参保记录
,
{
eId
},
null
);
let
年度就业人数趋势分析
Map
=
{};
jiuYeList
.
forEach
(
info
=>
{
let
{
annual
}
=
info
;
let
itemCount
=
0
;
let
itemYear
=
new
Date
(
annual
).
getFullYear
();
if
(
info
.
zhuanKe
)
itemCount
+=
parseInt
(
info
.
zhuanKe
);
if
(
info
.
benKe
)
itemCount
+=
parseInt
(
info
.
benKe
);
if
(
info
.
shuoshi
)
itemCount
+=
parseInt
(
info
.
shuoshi
);
if
(
info
.
boShi
)
itemCount
+=
parseInt
(
info
.
boShi
);
if
(
info
.
boshiyishang
)
itemCount
+=
parseInt
(
info
.
boshiyishang
);
if
(
!
年度就业人数趋势分析
Map
[
itemYear
])
年度就业人数趋势分析
Map
[
itemYear
]
=
{
key
:
itemYear
,
value
:
0
};
年度就业人数趋势分析
Map
[
itemYear
].
value
+=
itemCount
;
});
qyszhx
.
历年人才招聘情况
=
[{
name
:
"历年人才招聘情况"
,
data
:
Object
.
values
(
年度就业人数趋势分析
Map
)
}];
return
qyszhx
;
return
qyszhx
;
}
}
/**
* 计算研发占比的函数
*/
// function get研发占比(data) {
// let yfzb = [];
// data.forEach(info => {
// let { enterprise_manages } = info;
// enterprise_manages.forEach(manage => {
// if (parseFloat(manage.BI) > 0) {
// let ratio = parseFloat(manage.RD) / parseFloat(manage.BI);
// let 百分比 = (ratio * 100).toFixed(2) + "%";
// let 达标状态: string;
// // 判断是否已达标
// if(ratio * 100 >= 80.5){
// 达标状态 = "已达标";
// }else{
// 达标状态 = "继续努力";
// }
// yfzb.push({
// 年份: moment(manage.annual).format("YYYY"),
// 研发占比: 百分比,
// 达标状态: 达标状态
// });
// }
// });
// });
// return yfzb;
// }
function
get
研发占比
(
data
)
{
let
yfzb
=
{
研发占比
:
"0%"
,
是否达标
:
"继续努力"
,
目标值
:
"20%"
,
}
data
.
forEach
(
info
=>
{
/**
let
{
enterprise_manages
}
=
info
;
* 企业服务申请类型
let
quarterlyRD
=
{
[
QUARTER
.
第一季度
]:
0
,
[
QUARTER
.
第二季度
]:
0
,
[
QUARTER
.
第三季度
]:
0
,
[
QUARTER
.
第四季度
]:
0
};
* @param 入孵企业服务dbList
let
quarterlyBI
=
{
[
QUARTER
.
第一季度
]:
0
,
[
QUARTER
.
第二季度
]:
0
,
[
QUARTER
.
第三季度
]:
0
,
[
QUARTER
.
第四季度
]:
0
};
*/
function
getQyfwsqlx
(
企业服务
dbList
)
{
enterprise_manages
.
forEach
(
manage
=>
{
let
fuWuQiYeTypeMap
=
{};
//企业服务类型
if
(
parseFloat
(
manage
.
BI
)
>
0
)
{
企业服务
dbList
.
forEach
(
info
=>
{
const
quarter
=
getQuarter
(
manage
.
annual
);
let
needCategoryStr
=
changeEnumValue
(
NEEDCATEGORY
,
info
.
needCategory
)
quarterlyRD
[
quarter
]
+=
parseFloat
(
manage
.
RD
);
if
(
!
fuWuQiYeTypeMap
[
needCategoryStr
])
{
quarterlyBI
[
quarter
]
+=
parseFloat
(
manage
.
BI
);
fuWuQiYeTypeMap
[
needCategoryStr
]
=
0
;
}
}
});
fuWuQiYeTypeMap
[
needCategoryStr
]
+=
1
;
})
// 计算每个季度的研发占比,并生成年份信息
let
fwlx
=
[];
for
(
let
quarter
of
[
QUARTER
.
第一季度
,
QUARTER
.
第二季度
,
QUARTER
.
第三季度
,
QUARTER
.
第四季度
])
{
for
(
let
key
in
NEEDCATEGORY
)
{
if
(
quarterlyBI
[
quarter
]
>
0
)
{
let
enumValue
=
NEEDCATEGORY
[
key
];
let
ratio
=
quarterlyRD
[
quarter
]
/
quarterlyBI
[
quarter
];
// 跳过未显式赋值的枚举成员(如果有的话,它们默认为枚举前一个成员的值加1)
let
百分比
=
(
ratio
*
100
).
toFixed
(
2
)
+
"%"
;
if
(
isNaN
(
Number
(
key
)))
{
// 这里检查 key 是否可以被转换为数字,以识别枚举成员名称
let
达标状态
:
string
;
let
needCategoryStr
=
changeEnumValue
(
NEEDCATEGORY
,
enumValue
);
let
value
=
fuWuQiYeTypeMap
[
needCategoryStr
]
||
0
;
if
(
ratio
*
100
>=
20
)
{
fwlx
.
push
({
达标状态
=
"已达标"
;
key
:
needCategoryStr
,
}
else
{
value
:
value
达标状态
=
"继续努力"
;
});
}
yfzb
.
研发占比
=
百分比
;
yfzb
.
是否达标
=
达标状态
;
yfzb
.
目标值
=
"20%"
;
// // 确保年份信息从 manage 中正确提取
// let 年份 = moment(enterprise_manages[0]?.annual).format("YYYY"); // 假设所有季度属于同一年
// yfzb.push({
// 年份,
// 研发占比: 百分比,
// 达标状态,
// 目标值: "20%",
// });
}
}
}
}
);
}
return
yfzb
;
return
fwlx
;
}
}
function
getQuarter
(
dateString
:
string
):
QUARTER
{
const
date
=
moment
(
dateString
);
if
(
!
date
.
isValid
())
{
console
.
error
(
"无效的日期字符串:"
,
dateString
);
return
QUARTER
.
第一季度
;
// 或者抛出异常,具体取决于业务需求
}
const
month
=
date
.
month
()
+
1
;
// JavaScript 月份从0开始
if
(
month
<=
3
)
return
QUARTER
.
第一季度
;
if
(
month
<=
6
)
return
QUARTER
.
第二季度
;
if
(
month
<=
9
)
return
QUARTER
.
第三季度
;
return
QUARTER
.
第四季度
;
}
/**
/**
* 企业自画像
* 企业自画像
*/
*/
...
@@ -373,7 +233,8 @@ function get企业自画像(企业经营信息, 企业融资信息, 企业专利
...
@@ -373,7 +233,8 @@ function get企业自画像(企业经营信息, 企业融资信息, 企业专利
企业总得分
:
"-"
,
企业总得分
:
"-"
,
企业融资
:
"-"
,
企业融资
:
"-"
,
// 总融资金额: 0, // 新增总融资金额字段
// 总融资金额: 0, // 新增总融资金额字段
本年融资额
:
0
,
// 本年融资额: 0,
本月融资
:
0
,
短期营收
:
"-"
,
短期营收
:
"-"
,
营收金额
:
0
,
营收金额
:
0
,
知识产权
:
"-"
,
知识产权
:
"-"
,
...
@@ -383,35 +244,26 @@ function get企业自画像(企业经营信息, 企业融资信息, 企业专利
...
@@ -383,35 +244,26 @@ function get企业自画像(企业经营信息, 企业融资信息, 企业专利
研发占比
:
"-"
,
研发占比
:
"-"
,
};
};
// 获取当前月份
const
当前月份
=
new
Date
().
getMonth
()
+
1
;
// JavaScript 月份从0开始
// const 当前月份 = new Date().getMonth() + 1; // JavaScript 月份从0开始
// const 当前年份 = new Date().getFullYear();
const
当前年份
=
new
Date
().
getFullYear
();
// 计算各维度得分
// 计算各维度得分
let
优秀维度计数
=
0
;
let
优秀维度计数
=
0
;
// 1. 判断企业融资是否优秀
// 1. 判断企业融资是否优秀
let
本年融资总额
=
0
;
// let 本年融资总额 = 0;
let
本月融资总额
=
0
;
let
总融资金额
=
0
;
let
总融资金额
=
0
;
企业融资信息
.
forEach
(
info
=>
{
企业融资信息
.
forEach
(
financing
=>
{
let
{
enterprise_financings
}
=
info
;
const
融资日期
=
new
Date
(
financing
.
investmentDate
);
if
(
Array
.
isArray
(
enterprise_financings
))
{
if
(
融资日期
.
getMonth
()
+
1
===
当前月份
)
{
// 融资日期.getFullYear() === 当前年份
enterprise_financings
.
forEach
(
financing
=>
{
本月融资总额
+=
parseFloat
(
financing
.
financingAmount
||
0
);
const
融资日期
=
new
Date
(
financing
.
investmentDate
);
if
(
融资日期
.
getFullYear
()
===
当前年份
// 融资日期.getMonth() + 1 === 当前月份
)
{
本年融资总额
+=
parseFloat
(
financing
.
financingAmount
||
0
);
}
// 累加总融资金额
总融资金额
+=
parseFloat
(
financing
.
financingAmount
||
0
);
});
}
}
// 累加总融资金额
总融资金额
+=
parseFloat
(
financing
.
financingAmount
||
0
);
});
});
qyzp
[
"本年融资额"
]
=
本年融资总额
;
// 返回本月融资额
qyzp
[
"本月融资"
]
=
本月融资总额
;
// 返回本月融资额
// qyzp["总融资金额"] = 总融资金额; // 返回总融资金额
if
(
总融资金额
>
0
)
{
if
(
总融资金额
>
0
)
{
if
(
总融资金额
>=
10
)
{
// 修改为企业融资:10W及以上为优秀,
if
(
总融资金额
>=
10
)
{
// 修改为企业融资:10W及以上为优秀,
...
@@ -424,14 +276,10 @@ function get企业自画像(企业经营信息, 企业融资信息, 企业专利
...
@@ -424,14 +276,10 @@ function get企业自画像(企业经营信息, 企业融资信息, 企业专利
qyzp
[
"企业融资"
]
=
"-"
;
qyzp
[
"企业融资"
]
=
"-"
;
}
}
// 2. 判断短期营收是否优秀
// 2. 判断短期营收是否优秀
let
短期营收总额
=
0
;
let
短期营收总额
=
0
;
企业经营信息
.
forEach
(
info
=>
{
企业经营信息
.
forEach
(
manage
=>
{
let
{
enterprise_manages
}
=
info
;
短期营收总额
+=
parseFloat
(
manage
.
BI
);
enterprise_manages
.
forEach
(
manage
=>
{
短期营收总额
+=
parseFloat
(
manage
.
BI
);
});
});
});
qyzp
[
"营收金额"
]
=
短期营收总额
;
// 返回营收金额
qyzp
[
"营收金额"
]
=
短期营收总额
;
// 返回营收金额
...
@@ -450,8 +298,7 @@ function get企业自画像(企业经营信息, 企业融资信息, 企业专利
...
@@ -450,8 +298,7 @@ function get企业自画像(企业经营信息, 企业融资信息, 企业专利
// 3. 判断知识产权是否优秀
// 3. 判断知识产权是否优秀
let
专利总数
=
0
;
let
专利总数
=
0
;
企业专利信息
.
forEach
(
info
=>
{
企业专利信息
.
forEach
(
info
=>
{
let
{
enterprise_iprs
}
=
info
;
专利总数
+=
info
.
number
;
专利总数
+=
enterprise_iprs
.
length
;
});
});
qyzp
[
"专利个数"
]
=
专利总数
;
// 返回专利个数
qyzp
[
"专利个数"
]
=
专利总数
;
// 返回专利个数
...
@@ -471,12 +318,9 @@ function get企业自画像(企业经营信息, 企业融资信息, 企业专利
...
@@ -471,12 +318,9 @@ function get企业自画像(企业经营信息, 企业融资信息, 企业专利
// 4. 判断研发投入是否优秀
// 4. 判断研发投入是否优秀
let
研发投入总额
=
0
;
let
研发投入总额
=
0
;
let
总收入
=
0
;
let
总收入
=
0
;
企业经营信息
.
forEach
(
info
=>
{
企业经营信息
.
forEach
(
manage
=>
{
let
{
enterprise_manages
}
=
info
;
研发投入总额
+=
parseFloat
(
manage
.
RD
);
enterprise_manages
.
forEach
(
manage
=>
{
总收入
+=
parseFloat
(
manage
.
BI
);
研发投入总额
+=
parseFloat
(
manage
.
RD
);
总收入
+=
parseFloat
(
manage
.
BI
);
});
});
});
let
研发占比
=
总收入
>
0
?
(
研发投入总额
/
总收入
)
:
0
;
let
研发占比
=
总收入
>
0
?
(
研发投入总额
/
总收入
)
:
0
;
...
@@ -508,6 +352,7 @@ function get企业自画像(企业经营信息, 企业融资信息, 企业专利
...
@@ -508,6 +352,7 @@ function get企业自画像(企业经营信息, 企业融资信息, 企业专利
return
qyzp
;
return
qyzp
;
}
}
/**
/**
* 租房补贴
* 租房补贴
*/
*/
...
@@ -523,7 +368,6 @@ function get租房补贴(企业资质信息, 企业专利信息, 参保记录信
...
@@ -523,7 +368,6 @@ function get租房补贴(企业资质信息, 企业专利信息, 参保记录信
// 检查社保状态
// 检查社保状态
let
shebaoCompleted
=
false
;
let
shebaoCompleted
=
false
;
if
(
参保记录信息
[
0
])
{
if
(
参保记录信息
[
0
])
{
if
(
参保记录信息
[
0
].
zhuanKe
||
参保记录信息
[
0
].
benKe
||
参保记录信息
[
0
].
shuoshi
||
参保记录信息
[
0
].
boShi
||
参保记录信息
[
0
].
boshiyishang
||
参保记录信息
[
0
].
qiTa
)
{
if
(
参保记录信息
[
0
].
zhuanKe
||
参保记录信息
[
0
].
benKe
||
参保记录信息
[
0
].
shuoshi
||
参保记录信息
[
0
].
boShi
||
参保记录信息
[
0
].
boshiyishang
||
参保记录信息
[
0
].
qiTa
)
{
shebaoCompleted
=
true
;
shebaoCompleted
=
true
;
}
}
...
@@ -533,25 +377,19 @@ function get租房补贴(企业资质信息, 企业专利信息, 参保记录信
...
@@ -533,25 +377,19 @@ function get租房补贴(企业资质信息, 企业专利信息, 参保记录信
// 检查软著状态
// 检查软著状态
let
ruanzhuCompleted
=
false
;
let
ruanzhuCompleted
=
false
;
企业专利信息
.
forEach
(
info
=>
{
企业专利信息
.
forEach
(
patent
=>
{
let
{
enterprise_iprs
}
=
info
;
if
(
patent
.
iprType
===
IPRALLTYPE
.
软件著作权
)
{
enterprise_iprs
.
forEach
(
patent
=>
{
ruanzhuCompleted
=
true
;
if
(
patent
.
iprType
===
IPRALLTYPE
.
软件著作权
)
{
}
ruanzhuCompleted
=
true
;
}
});
});
});
zfbt
.
软著
=
ruanzhuCompleted
?
"已完成"
:
"未完成"
;
zfbt
.
软著
=
ruanzhuCompleted
?
"已完成"
:
"未完成"
;
// 检查科小状态
// 检查科小状态
let
kxCompleted
=
false
;
let
kxCompleted
=
false
;
企业资质信息
.
forEach
(
info
=>
{
企业资质信息
.
forEach
(
item
=>
{
let
{
enterprise_qualifications
}
=
info
;
if
(
item
.
kxTime
)
{
enterprise_qualifications
.
forEach
(
item
=>
{
kxCompleted
=
true
;
if
(
item
.
kxTime
)
{
}
kxCompleted
=
true
;
}
});
});
});
zfbt
.
科小
=
kxCompleted
?
"已完成"
:
"未完成"
;
zfbt
.
科小
=
kxCompleted
?
"已完成"
:
"未完成"
;
...
@@ -569,71 +407,6 @@ function get租房补贴(企业资质信息, 企业专利信息, 参保记录信
...
@@ -569,71 +407,6 @@ function get租房补贴(企业资质信息, 企业专利信息, 参保记录信
return
zfbt
;
return
zfbt
;
}
}
// /**
// * 高新
// */
// function get高新(data) {
// let gx = {
// 高新占比: 0,
// 是否达标: "未达标",
// };
// data.forEach(info => {
// let { enterprise_qualifications } = info;
// enterprise_qualifications.forEach(item => {
// if (item.gaoXinJiShuTime) {
// gx.高新占比 = 100;
// gx.是否达标 = "已达标";
// }
// });
// });
// return gx;
// }
// /**
// * 科小
// */
// function get科小(data) {
// let kx = {
// 科小占比: 0,
// 是否达标: "未达标",
// };
// data.forEach(info => {
// let { enterprise_qualifications } = info;
// enterprise_qualifications.forEach(item => {
// if (item.kxTime) {
// kx.科小占比 = 100;
// kx.是否达标 = "已达标";
// }
// })
// })
// return kx;
// }
// /**
// * 小巨人
// */
// function get小巨人(data){
// let xjrData = {
// 小巨人占比: 0,
// 是否达标: "未达标",
// };
// data.forEach(info => {
// let { enterprise_qualifications } = info;
// enterprise_qualifications.forEach(item => {
// if (item.xjrTime) {
// xjrData.小巨人占比 = 100;
// xjrData.是否达标 = "已达标";
// }
// })
// })
// return xjrData;
// }
/**
/**
* 获取企业资质达标情况的通用函数
* 获取企业资质达标情况的通用函数
...
@@ -667,16 +440,13 @@ function get资质达标情况(data, key: string) {
...
@@ -667,16 +440,13 @@ function get资质达标情况(data, key: string) {
function
get
企业标签
(
data
)
{
function
get
企业标签
(
data
)
{
let
qybqData
=
[];
let
qybqData
=
[];
data
.
forEach
(
info
=>
{
data
.
forEach
(
item
=>
{
let
{
enterprise_qualifications
}
=
info
;
if
(
item
.
xjrTime
)
qybqData
.
push
(
"小巨人"
);
enterprise_qualifications
.
forEach
(
item
=>
{
if
(
item
.
gaoXinJiShuTime
)
qybqData
.
push
(
"高新企业"
);
if
(
item
.
xjrTime
)
qybqData
.
push
(
"小巨人"
);
if
(
item
.
zjtxTime
)
qybqData
.
push
(
"专精特新"
);
if
(
item
.
gaoXinJiShuTime
)
qybqData
.
push
(
"高新企业"
);
if
(
item
.
xjrPyTime
)
qybqData
.
push
(
"小巨人培育"
);
if
(
item
.
zjtxTime
)
qybqData
.
push
(
"专精特新"
);
if
(
item
.
kxTime
)
qybqData
.
push
(
"科小"
);
if
(
item
.
xjrPyTime
)
qybqData
.
push
(
"小巨人培育"
);
if
(
item
.
goPublicTime
)
qybqData
.
push
(
"上市"
);
if
(
item
.
kxTime
)
qybqData
.
push
(
"科小"
);
if
(
item
.
goPublicTime
)
qybqData
.
push
(
"上市"
);
})
})
})
let
qybq
=
[];
let
qybq
=
[];
...
@@ -688,384 +458,112 @@ function get企业标签(data) {
...
@@ -688,384 +458,112 @@ function get企业标签(data) {
}
}
/** 资质认证
* @returns
*/
function
get
资质认证
(
data
)
{
let
zzrz
=
{
资质认证总数
:
0
,
};
data
.
forEach
(
info
=>
{
let
{
enterprise_qualifications
}
=
info
;
let
certifications
=
new
Set
();
// 使用 Set 来存储不同的资质认证
enterprise_qualifications
.
forEach
(
item
=>
{
if
(
item
.
kxTime
)
certifications
.
add
(
"科小"
);
if
(
item
.
zjtxTime
)
certifications
.
add
(
"专精特新"
);
if
(
item
.
xjrTime
)
certifications
.
add
(
"小巨人"
);
if
(
item
.
xjrPyTime
)
certifications
.
add
(
"小巨人培育"
);
if
(
item
.
gaoXinJiShuTime
)
certifications
.
add
(
"高新企业"
);
if
(
item
.
goPublicTime
)
certifications
.
add
(
"上市"
);
});
zzrz
.
资质认证总数
+=
certifications
.
size
;
// 计算不同资质的数量
});
return
zzrz
;
}
/**
* 资质认证变化趋势
*/
function
get
资质认证变化趋势
(
data
)
{
let
zzrzbhqsInfo
=
{
资质认证数量
:
[]
};
let
yearList
=
getYearList
();
for
(
let
i
=
0
;
i
<
yearList
.
length
;
i
++
)
{
let
year
=
parseInt
(
yearList
[
i
]);
let
资质认证数量
=
0
;
data
.
forEach
(
info
=>
{
let
{
enterprise_qualifications
}
=
info
;
enterprise_qualifications
.
forEach
(
item
=>
{
const
times
=
[
item
.
kxTime
,
item
.
zjtxTime
,
item
.
xjrTime
,
item
.
xjrPyTime
,
item
.
gaoXinJiShuTime
,
item
.
goPublicTime
];
times
.
forEach
(
time
=>
{
if
(
time
&&
moment
(
time
).
year
()
===
year
)
{
资质认证数量
++
;
}
});
});
});
zzrzbhqsInfo
.
资质认证数量
.
push
({
key
:
year
,
value
:
资质认证数量
});
}
let
zzrzbhqs
=
getChart
(
zzrzbhqsInfo
);
return
zzrzbhqs
;
}
function
get
知识产权
(
data
)
{
function
get
知识产权
(
data
)
{
let
zscq
:
any
=
{
let
zscq
:
any
=
{
// 软件著作:0,
软件著作权
:
0
,
软件著作权
:
0
,
发明专利
:
0
,
发明专利
:
0
,
海外专利
:
0
,
海外专利
:
0
,
植物新品种
:
0
,
植物新品种
:
0
,
集成电路布图
:
0
,
集成电路布图
:
0
,
}
}
let
count
=
0
;
data
.
forEach
(
info
=>
{
data
.
forEach
(
patents
=>
{
let
{
enterprise_iprs
}
=
info
;
if
(
patents
.
iprType
)
{
enterprise_iprs
.
forEach
(
patents
=>
{
let
iprTypeStr
=
changeEnumValue
(
IPRALLTYPE
,
patents
.
iprType
);
if
(
patents
.
iprType
)
{
if
(
!
zscq
[
iprTypeStr
])
zscq
[
iprTypeStr
]
=
0
;
let
iprTypeStr
=
changeEnumValue
(
IPRALLTYPE
,
patents
.
iprType
);
zscq
[
iprTypeStr
]
+=
patents
.
number
;
if
(
!
zscq
[
iprTypeStr
])
zscq
[
iprTypeStr
]
=
0
;
}
zscq
[
iprTypeStr
]
+=
patents
.
number
;
count
+=
patents
.
number
;
}
})
})
})
// data.forEach(info => {
return
{
count
,
zscq
};
// let { enterprise_patents } = info;
// enterprise_patents.forEach(patents => {
// zscq.一级专利 += patents.classIPatent;
// zscq.二级专利 += patents.secondClassPatent
// zscq.三级专利 += patents.thirdPentent;
// zscq.海外专利 += patents.alienPatent;
// })
// })
return
zscq
;
}
}
async
function
get
企业员工画像
(
data
)
{
function
get
融资情况
(
data
)
{
let
qyyghx
=
{
let
year
=
getYearList
();
"专科"
:
0
,
"本科"
:
0
,
let
count
=
{
"硕士"
:
0
,
融资金额
:
0
,
"博士"
:
0
,
融资轮次
:
""
"博士以上"
:
0
,
"其他"
:
0
,
};
};
let
rzqk
=
[];
if
(
data
&&
data
[
0
])
{
for
(
let
i
=
0
;
i
<
year
.
length
;
i
++
)
{
qyyghx
[
"专科"
]
=
data
[
0
].
zhuanKe
||
0
;
let
融资金额
=
0
;
qyyghx
[
"本科"
]
=
data
[
0
].
benKe
||
0
;
data
.
forEach
(
info
=>
{
qyyghx
[
"硕士"
]
=
data
[
0
].
shuoshi
||
0
;
let
融资日期
=
moment
(
info
.
investmentDate
);
qyyghx
[
"博士"
]
=
data
[
0
].
boShi
||
0
;
if
(
融资日期
.
isValid
()
&&
融资日期
.
year
()
===
year
[
i
])
{
qyyghx
[
"博士以上"
]
=
data
[
0
].
boshiyishang
||
0
;
融资金额
+=
parseFloat
(
info
.
financingAmount
||
0
);
qyyghx
[
"其他"
]
=
data
[
0
].
qiTa
||
0
;
}
// 累加总融资金额
count
.
融资金额
+=
parseFloat
(
info
.
financingAmount
||
0
);
});
rzqk
.
push
({
key
:
year
[
i
],
value
:
融资金额
});
}
}
return
{
count
,
rzqk
}
// for (let key in DEGREE) {
// let anyKey: any = key;
// if (isNaN(anyKey)) {
// let keyStr = key;
// if (!qyyghx[keyStr]) qyyghx[keyStr] = 0;
// let degree = DEGREE[key];
// data.forEach(info => {
// let { enterprise_teams } = info;
// if (enterprise_teams && Array.isArray(enterprise_teams)) {
// enterprise_teams.forEach(team => {
// if (degree == team.degree) {
// qyyghx[keyStr] += 1;
// }
// })
// }
// })
// }
// }
return
qyyghx
;
}
}
function
get
营收情况
(
data
)
{
function
get
营收情况
(
data
)
{
let
ysqk
=
{
let
ysqk
=
{
// 累计营收
: 0,
"25年累计营收"
:
0
,
"24年累计营收"
:
0
,
累计纳税
:
0
,
累计研发投入
:
0
,
累计研发投入
:
0
,
// 累计纳税: 0
}
}
let
ysbhqsInfo
=
{
let
ysbhqsInfo
=
{
营业收入
:
[],
营收
:
[],
纳税
:
[],
研发投入
:
[],
研发投入
:
[],
// 纳税金额: [],
}
let
year
=
getYearList
();
data
.
forEach
(
info
=>
{
let
{
enterprise_manages
}
=
info
;
enterprise_manages
.
forEach
(
manage
=>
{
// ysqk.累计营收 += parseFloat(manage.BI);
let
thisAnnual
=
moment
(
manage
.
annual
).
year
();
if
(
thisAnnual
===
2024
)
{
ysqk
[
"24年累计营收"
]
+=
parseFloat
(
manage
.
BI
);
}
ysqk
.
累计研发投入
+=
parseFloat
(
manage
.
RD
);
// ysqk.累计纳税 += parseFloat(manage.TXP);
})
})
for
(
let
i
=
0
;
i
<
year
.
length
;
i
++
)
{
let
营业收入
=
0
;
let
研发投入
=
0
;
// let 纳税金额 = 0;
data
.
forEach
(
info
=>
{
let
{
enterprise_manages
}
=
info
;
enterprise_manages
.
forEach
(
manage
=>
{
let
thisAnnual
=
moment
(
manage
.
annual
).
year
();
let
thisYear
=
parseInt
(
year
[
i
]);
if
(
thisAnnual
===
thisYear
)
{
营业收入
+=
parseFloat
(
manage
.
BI
);
研发投入
+=
parseFloat
(
manage
.
RD
);
// 纳税金额 += parseFloat(manage.TXP);
}
})
})
// ysbhqsInfo.营业收入.push({ key: year[i], value: 营业收入 });
// ysbhqsInfo.研发投入.push({ key: year[i], value: 研发投入 });
// 将营业收入和研发投入转换为“千万”单位
ysbhqsInfo
.
营业收入
.
push
({
key
:
year
[
i
],
value
:
营业收入
/
1000
});
ysbhqsInfo
.
研发投入
.
push
({
key
:
year
[
i
],
value
:
研发投入
/
1000
});
// ysbhqsInfo.纳税金额.push({ key: year[i], value: 纳税金额 });
}
}
let
ysbhqs
=
getChart
(
ysbhqsInfo
);
let
ysbhqsTable
=
{
营收
:
[],
return
{
ysqk
,
ysbhqs
};
纳税
:
[],
}
研发投入
:
[],
/**
* 企业动态
*/
// function get企业动态(data) {
// let qydt = [];
// data.forEach(info => {
// let { enterprise_honors } = info;
// enterprise_honors.forEach(honors => {
// let awardLevel = changeEnumValue(AWARDLEVEL, honors.awardLevel);
// let awardImg = JSON.parse(honors.awardImg)
// let awardTime = moment(honors.awardTime).format("YYYY-MM-DD");
// qydt.push([awardImg[0], honors.awardName, awardTime, honors.awardingUnit, awardLevel]);
// })
// })
// return qydt;
// }
function
get
企业动态
(
data
)
{
let
qydt
=
[];
let
honorsCount
=
0
;
data
.
forEach
(
info
=>
{
let
{
enterprise_honors
}
=
info
;
honorsCount
+=
enterprise_honors
.
length
;
enterprise_honors
.
forEach
(
honors
=>
{
let
awardLevel
=
changeEnumValue
(
AWARDLEVEL
,
honors
.
awardLevel
);
let
awardTime
=
moment
(
honors
.
awardTime
).
format
(
"YYYY"
);
qydt
.
push
([
honorsCount
,
honors
.
awardName
,
awardTime
,
honors
.
awardingUnit
,
awardLevel
]);
})
})
return
qydt
;
}
/**
*风险预警
*/
function
get
风险预警
(
data
)
{
}
function
get
服务需求
(
data
)
{
let
newestFinancing
:
any
=
{};
data
.
forEach
(
info
=>
{
let
{
enterprise_financings
}
=
info
;
let
enterprise_financingsData
=
[];
enterprise_financings
.
forEach
(
financings
=>
{
enterprise_financingsData
.
push
({
financingAmount
:
financings
.
financingAmount
,
financingRounds
:
financings
.
financingRounds
,
investmentDate
:
new
Date
(
financings
.
investmentDate
).
valueOf
(),
investmentInstitutionsName
:
financings
.
investmentInstitutionsName
})
})
//获取最新时间的融资信息
enterprise_financingsData
.
sort
((
a
,
b
)
=>
{
return
b
.
investmentDate
-
a
.
investmentDate
;
})
newestFinancing
=
enterprise_financingsData
[
0
];
})
// 确保 financingAmount 不为 undefined 或 null,否则设置为 0
const
financingAmount
=
newestFinancing
.
financingAmount
!==
undefined
&&
newestFinancing
.
financingAmount
!==
null
?
newestFinancing
.
financingAmount
:
0
;
let
fwxq
=
{
// 融资金额: `${newestFinancing.financingAmount}万元`,
融资金额
:
`
${
financingAmount
}
万元`
,
融资轮次
:
changeEnumValue
(
FINANCINGROUNDS
,
newestFinancing
.
financingRounds
),
融资时间
:
"-"
,
投资机构
:
newestFinancing
.
investmentInstitutionsName
};
if
(
newestFinancing
.
investmentDate
)
fwxq
.
融资时间
=
moment
(
newestFinancing
.
investmentDate
).
format
(
"YYYY-MM-DD"
);
return
fwxq
;
}
function
get
活动变化趋势分析
(
data
)
{
let
hdbhqsfxInfo
=
{
融资额
:
[],
// 融资事件: [],
}
let
year
=
getYearList
();
for
(
let
i
=
0
;
i
<
year
.
length
;
i
++
)
{
let
融资额
=
0
;
// let 融资事件 = 0;
data
.
forEach
(
info
=>
{
let
{
enterprise_financings
}
=
info
;
enterprise_financings
.
forEach
(
financings
=>
{
let
thisAnnual
=
moment
(
financings
.
investmentDate
).
year
();
let
thisYear
=
parseInt
(
year
[
i
]);
if
(
thisAnnual
===
thisYear
)
{
融资额
+=
parseFloat
(
financings
.
financingAmount
);
// 融资事件 += 1;
}
})
})
hdbhqsfxInfo
.
融资额
.
push
({
key
:
year
[
i
],
value
:
融资额
});
// hdbhqsfxInfo.融资事件.push({ key: year[i], value: 融资事件 });
}
}
let
hdbhqsfx
=
getChart
(
hdbhqsfxInfo
);
data
.
forEach
(
manage
=>
{
// ysqk.累计营收 += parseFloat(manage.BI);
return
hdbhqsfx
;
let
thisAnnual
=
moment
(
manage
.
annual
).
year
();
}
if
(
thisAnnual
===
2025
)
{
ysqk
[
"25年累计营收"
]
+=
parseFloat
(
manage
.
BI
);
}
ysqk
.
累计研发投入
+=
parseFloat
(
manage
.
RD
);
ysqk
.
累计纳税
+=
parseFloat
(
manage
.
TXP
);
//荣誉资质
let
dbQuarterStr
=
`
${
thisAnnual
}${
changeEnumValue
(
QUARTER
,
manage
.
quarter
)}
`
;
// function get荣誉资质(data) {
ysbhqsTable
.
营收
.
push
([
"营收"
,
dbQuarterStr
,
manage
.
BI
]);
// let ryzz = [];
ysbhqsTable
.
纳税
.
push
([
"纳税"
,
dbQuarterStr
,
manage
.
TXP
]);
// data.forEach(info => {
ysbhqsTable
.
研发投入
.
push
([
"研发投入"
,
dbQuarterStr
,
manage
.
RD
]);
// let { enterprise_honors } = info;
// enterprise_honors.forEach(honors => {
// let awardLevel = changeEnumValue(AWARDLEVEL, honors.awardLevel);
// let awardImg = JSON.parse(honors.awardImg)
// let imgPath = `${systemConfig.imgFileUrl}${awardImg[0]}`;
// ryzz.push([imgPath, awardLevel]);
// })
// })
// return ryzz;
// }
// 修改后的荣誉资质函数
function
get
荣誉资质
(
data
)
{
let
ryzz
=
[];
data
.
forEach
(
info
=>
{
let
{
enterprise_honors
}
=
info
;
enterprise_honors
.
forEach
(
honors
=>
{
let
awardLevel
=
changeEnumValue
(
AWARDLEVEL
,
honors
.
awardLevel
);
let
awardImg
=
JSON
.
parse
(
honors
.
awardImg
);
// 遍历所有图片
awardImg
.
forEach
(
imgName
=>
{
let
imgPath
=
`
${
systemConfig
.
imgFileUrl
}${
imgName
}
`
;
ryzz
.
push
([
imgPath
,
awardLevel
]);
});
})
})
})
return
ryzz
;
}
function
get
服务记录
(
data
)
{
let
quarter
=
getRecentQuarters
();
let
fwjl
=
{
quarter
.
forEach
(
info
=>
{
// 空间服务: [],
let
营收
=
0
;
工商服务
:
[],
let
研发投入
=
0
;
融资服务
:
[]
let
纳税金额
=
0
;
};
data
.
forEach
(
info
=>
{
let
quarterStr
=
`
${
info
.
year
}${
changeEnumValue
(
QUARTER
,
info
.
quarter
)}
`
;
let
{
enterprise_services
}
=
info
;
data
.
forEach
(
manage
=>
{
enterprise_services
.
forEach
(
service
=>
{
let
thisAnnual
=
moment
(
manage
.
annual
).
year
();
let
needCategory
=
changeEnumValue
(
NEEDCATEGORY
,
service
.
needCategory
);
let
dbQuarterStr
=
`
${
thisAnnual
}${
changeEnumValue
(
QUARTER
,
manage
.
quarter
)}
`
;
// if ( service.needCategory == NEEDCATEGORY.空间服务) {
if
(
quarterStr
==
dbQuarterStr
)
{
// fwjl.空间服务.push([needCategory, service.resolveTime, service.needContent])
营收
+=
parseFloat
(
manage
.
BI
);
// } else
研发投入
+=
parseFloat
(
manage
.
RD
);
if
(
service
.
needCategory
==
NEEDCATEGORY
.
工商服务
)
{
纳税金额
+=
parseFloat
(
manage
.
TXP
);
fwjl
.
工商服务
.
push
([
needCategory
,
service
.
resolveTime
,
service
.
needContent
])
}
else
if
(
service
.
needCategory
==
NEEDCATEGORY
.
融资服务
)
{
fwjl
.
融资服务
.
push
([
needCategory
,
service
.
resolveTime
,
service
.
needContent
])
}
}
})
})
ysbhqsInfo
.
营收
.
push
({
key
:
quarterStr
,
value
:
营收
});
ysbhqsInfo
.
纳税
.
push
({
key
:
quarterStr
,
value
:
纳税金额
});
ysbhqsInfo
.
研发投入
.
push
({
key
:
quarterStr
,
value
:
研发投入
});
})
})
return
fwjl
;
let
ysbhqs
=
getChart
(
ysbhqsInfo
);
return
{
ysqk
,
ysbhqs
,
ysbhqsTable
};
}
}
src/data/db/zhyy.ts
View file @
f28ddecc
...
@@ -80,6 +80,7 @@ async function calculateRevenue(start: string, end: string) {
...
@@ -80,6 +80,7 @@ async function calculateRevenue(start: string, end: string) {
return
totalRevenue
;
return
totalRevenue
;
}
}
export
async
function
getZhyy
()
{
export
async
function
getZhyy
()
{
let
zhyy
=
{
let
zhyy
=
{
孵化器概况
:[],
孵化器概况
:[],
...
...
src/routers/router.ts
View file @
f28ddecc
import
*
as
asyncHandler
from
'express-async-handler'
import
*
as
asyncHandler
from
'express-async-handler'
import
*
as
wmk
qyszhxBiz
from
'../biz/qyszhx'
;
import
*
as
qyszhxBiz
from
'../biz/qyszhx'
;
import
*
as
jxgljscBiz
from
'../biz/jxgljsc'
;
import
*
as
jxgljscBiz
from
'../biz/jxgljsc'
;
...
@@ -14,8 +14,8 @@ import * as publicBiz from '../biz/public';
...
@@ -14,8 +14,8 @@ import * as publicBiz from '../biz/public';
export
function
setRouter
(
httpServer
){
export
function
setRouter
(
httpServer
){
//======post
//======post
httpServer
.
post
(
'/yuyi/viewserver/getnamelist'
,
asyncHandler
(
qyszhxBiz
.
getPinyinName
))
httpServer
.
post
(
'/yuyi/viewserver/qyszhx'
,
asyncHandler
(
wmk
qyszhxBiz
.
getData
));
httpServer
.
post
(
'/yuyi/viewserver/qyszhx'
,
asyncHandler
(
qyszhxBiz
.
getData
));
httpServer
.
post
(
'/yuyi/viewserver/jxgljsc'
,
asyncHandler
(
jxgljscBiz
.
getData
));
httpServer
.
post
(
'/yuyi/viewserver/jxgljsc'
,
asyncHandler
(
jxgljscBiz
.
getData
));
httpServer
.
post
(
'/yuyi/viewserver/qyfw'
,
asyncHandler
(
qyfwBiz
.
getData
));
httpServer
.
post
(
'/yuyi/viewserver/qyfw'
,
asyncHandler
(
qyfwBiz
.
getData
));
httpServer
.
post
(
'/yuyi/viewserver/qianruqianchutable'
,
asyncHandler
(
qyfwBiz
.
getQianRuQianChu
));
httpServer
.
post
(
'/yuyi/viewserver/qianruqianchutable'
,
asyncHandler
(
qyfwBiz
.
getQianRuQianChu
));
...
...
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