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
Project 'vue-project/liangXing/frontEnd' was moved to 'vue-project/ZhangJian/ZhangJianFrontEnd'. Please update any links and bookmarks that may still have the old path.
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