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
efb4840e
Commit
efb4840e
authored
Apr 29, 2025
by
Zllgogo
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
no message
parent
1b69c95b
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
53 additions
and
28 deletions
+53
-28
jxgljsc.ts
src/data/db/jxgljsc.ts
+51
-28
qyfw.ts
src/data/db/qyfw.ts
+1
-0
zhyy.ts
src/data/db/zhyy.ts
+1
-0
No files found.
src/data/db/jxgljsc.ts
View file @
efb4840e
...
...
@@ -40,8 +40,8 @@ export async function getJxgljsc() {
金融服务
:
{
dataList
:
[],
titleList
:
[
'key'
,
'value'
]
},
//新增后台填报
预警
:
{
dataList
:
[],
titleList
:
[
'key'
,
'value'
]
},
//预警
企业预警
:
{
bodyList
:
[],
headerList
:
[[
'企业名称'
,
'风险等级'
]]
},
在孵企业面积情况分析
:
{
dataList
:
[]
},
//在孵企业面积情况分析
在孵企业面积变化趋势
:
{
name
:
"在孵企业面积"
,
data
:[]
}
在孵企业面积情况分析
:
{
dataList
:
[]
},
//在孵企业面积情况分析
在孵企业面积变化趋势
:
{
name
:
"在孵企业面积"
,
data
:
[]
}
};
...
...
@@ -50,7 +50,8 @@ export async function getJxgljsc() {
let
manyTableInfo
:
any
=
{}
manyTableInfo
[
TABLENAME
.
企业孵化信息
]
=
{
column
:
[
"fId"
,
"eId"
,
"startTime"
,
"endTime"
,
"state"
],
where
:
{}
};
manyTableInfo
[
TABLENAME
.
租赁信息
]
=
{
column
:
[
"area"
,
"startTime"
,
"endTime"
],
where
:
{}
};
let
fhdbList
=
await
selectManyTableData
(
OPERATIONALDATATYPE
.
多表联查
,
TABLENAME
.
企业基础信息表
,
{
state
:
1
},
[
"industry"
,
"eId"
],
manyTableInfo
);
let
fhdbList
=
await
selectManyTableData
(
OPERATIONALDATATYPE
.
多表联查
,
TABLENAME
.
企业基础信息表
,
{
state
:
1
},
[
"industry"
,
"eId"
],
manyTableInfo
);
let
areaCount
=
0
;
let
面积变化
Map
=
{};
//孵化面积变化
let
thisYear
=
new
Date
().
getFullYear
();
...
...
@@ -59,6 +60,8 @@ export async function getJxgljsc() {
fhdbList
.
forEach
(
info
=>
{
let
{
industry
,
enterprise_fuhuas
,
enterprise_leases
}
=
info
;
// 迁出状态
if
(
enterprise_fuhuas
[
0
].
state
===
FUHUASTATE
.
迁出
)
return
;
let
startTime
=
enterprise_fuhuas
[
0
].
startTime
;
if
(
!
startTime
)
return
;
...
...
@@ -94,7 +97,7 @@ export async function getJxgljsc() {
}
在孵企业变化趋势
.
sort
((
a
,
b
)
=>
{
return
parseInt
(
a
.
key
)
-
parseInt
(
b
.
key
)
});
jxgljsc
.
在孵企业变化趋势
=
getChart
({
"在孵企业"
:
在孵企业变化趋势
});
//在孵企业变化趋势
jxgljsc
.
在孵企业变化趋势
=
getChart
({
"在孵企业"
:
在孵企业变化趋势
});
//在孵企业变化趋势
//行业领域----按照企业选择的类型呈现
for
(
let
key
in
INDUSTRY
)
{
...
...
@@ -118,7 +121,7 @@ export async function getJxgljsc() {
let
zaifuAreaRatioNum
=
100
*
(
areaCount
/
parseFloat
(
孵化器信息数据
.
totalArea
));
zaifuAreaRatio
=
zaifuAreaRatioNum
>
100
?
"100"
:
zaifuAreaRatioNum
.
toFixed
(
2
);
}
jxgljsc
.
在孵企业面积情况分析
.
dataList
.
push
({
key
:
"在孵面积占比"
,
value
:
zaifuAreaRatio
});
jxgljsc
.
在孵企业面积情况分析
.
dataList
.
push
({
key
:
"在孵面积占比"
,
value
:
zaifuAreaRatio
});
// 获取当前时间
...
...
@@ -127,8 +130,8 @@ export async function getJxgljsc() {
"moveOutTrace"
,
"moveOutCause"
,
"moveOutTime"
,
"graduationTime"
];
//获取在孵企业
// let 在孵dbList = await selectData(OPERATIONALDATATYPE.查询多个, TABLENAME.企业孵化信息, { "endTime": { "%gt%": nowTime } }, fhColumn);
let
在孵
dbList
=
await
selectData
(
OPERATIONALDATATYPE
.
查询多个
,
TABLENAME
.
企业孵化信息
,
{
state
:{
"%between%"
:
[
FUHUASTATE
.
实体孵化
,
FUHUASTATE
.
虚拟孵化
]
}
},
fhColumn
);
let
在孵
dbList
=
await
selectData
(
OPERATIONALDATATYPE
.
查询多个
,
TABLENAME
.
企业孵化信息
,
{
state
:
{
"%between%"
:
[
FUHUASTATE
.
实体孵化
,
FUHUASTATE
.
虚拟孵化
]
}
},
fhColumn
);
// let 在孵dbList = await selectData(OPERATIONALDATATYPE.查询多个, TABLENAME.企业孵化信息, {state:{"%notIn%":FUHUASTATE.迁出} }, fhColumn);
//获取在孵企业租赁信息
let
租赁
Column
=
[
"eId"
,
"year"
,
"alienPatent"
,
"classIPatent"
,
"secondClassPatent"
,
"thirdPentent"
];
...
...
@@ -140,6 +143,7 @@ export async function getJxgljsc() {
//获取羽翼孵化器
let
羽翼孵化器
dbList
=
await
selectData
(
OPERATIONALDATATYPE
.
查询单个
,
TABLENAME
.
羽翼孵化器
,
{},
[]);
// jxgljsc.产业结构.dataList = await cyjg();//产业结构
jxgljsc
.
人才引进
.
dataList
=
await
rcyj
();
//人才引进
...
...
@@ -152,13 +156,14 @@ export async function getJxgljsc() {
//科技型中小企业认定情况详细列表
jxgljsc
.
科技型中小企业认定情况详细
.
bodyList
=
kjxzxqyrdqkxx
;
let
fhqhzsjInfo
=
await
fhqhzsj
(
羽翼孵化器
dbList
,
在孵
dbList
);
let
fhqhzsjInfo
=
await
fhqhzsj
(
羽翼孵化器
dbList
,
在孵
dbList
,
areaCount
);
jxgljsc
.
孵化器汇总数据
.
dataList
=
getKeyValue
(
fhqhzsjInfo
);
//孵化器汇总数据
/**
* 预警
*/
let
{
yj
,
riskEnterprises
}
=
await
getyj
();
let
{
yj
,
riskEnterprises
}
=
await
getyj
();
jxgljsc
.
预警
.
dataList
=
getKeyValue
(
yj
)
jxgljsc
.
企业预警
.
bodyList
=
riskEnterprises
//企业预警
...
...
@@ -300,11 +305,12 @@ async function getKXrdqk(KXdbList, KXrdCount) {
/**
* 孵化器汇总数据
*/
async
function
fhqhzsj
(
data
,
zfData
)
{
async
function
fhqhzsj
(
data
,
zfData
,
areaCount
)
{
let
fhqhzsj
=
{
孵化器总面积
:
data
.
totalArea
+
"㎡"
,
在孵企业
:
zfData
.
length
+
"家"
,
在孵面积
:
data
.
zaifuArea
+
"㎡"
在孵面积
:
data
.
zaifuArea
+
"㎡"
,
// 在孵面积: `${areaCount.toFixed(2)}㎡`
}
return
fhqhzsj
;
...
...
@@ -322,7 +328,7 @@ async function getyj() {
关注
:
0
}
let
riskEnterprises
:
any
[]
=
[];
let
fhColumn
=
[
"enterpriseName"
,
"industry"
,
"eId"
,
"shijiaoziben"
];
let
fhColumn
=
[
"enterpriseName"
,
"industry"
,
"eId"
,
"shijiaoziben"
];
//获取所有企业孵化信息
let
manyTableInfo
:
any
=
{}
...
...
@@ -331,7 +337,7 @@ async function getyj() {
// manyTableInfo[TABLENAME.企业经营信息] = { column: ["annual"], where: {} };
let
fhdbList
=
await
selectManyTableData
(
OPERATIONALDATATYPE
.
多表联查
,
TABLENAME
.
企业基础信息表
,
{},
fhColumn
,
manyTableInfo
);
let
manageList
=
await
selectData
(
OPERATIONALDATATYPE
.
查询多个
,
TABLENAME
.
企业经营信息
,
{
},
[
"annual"
,
"eId"
]);
let
manageList
=
await
selectData
(
OPERATIONALDATATYPE
.
查询多个
,
TABLENAME
.
企业经营信息
,
{},
[
"annual"
,
"eId"
]);
let
map
=
{};
manageList
.
forEach
(
info
=>
{
...
...
@@ -382,28 +388,44 @@ async function qydt(data) {
"环比去年"
:
""
}
// //本月新加入在孵企业
// let nowTime = moment().format('YYYY-MM-DD HH:mm:ss');
// let monthAgo = moment().format('YYYY-MM-01 00:00:00');
// //同比上月
// let monthAgo2 = moment().subtract(1, 'month').format('YYYY-MM-01 00:00:00');
// let monthAgo2End = moment().subtract(1, 'month').endOf('month').format('YYYY-MM-DD 00:00:00');
// //环比去年
// let lastYearThieMonthAgo = moment().startOf("M").subtract(1, 'year').format('YYYY-MM-DD 00:00:00');
// let lastYearThieMonthAgoEnd = moment().endOf("M").subtract(1, 'year').format('YYYY-MM-DD 00:00:00');
//本月新加入在孵企业
let
nowTime
=
moment
().
format
(
'YYYY-MM
-DD HH:mm:ss
'
);
let
monthAgo
=
moment
().
format
(
'YYYY-MM-01 00:00:00'
);
let
nowTime
=
moment
().
format
(
'YYYY-MM'
);
//同比上月
let
monthAgo2
=
moment
().
subtract
(
1
,
'month'
).
format
(
'YYYY-MM-01 00:00:00'
);
let
monthAgo2End
=
moment
().
subtract
(
1
,
'month'
).
endOf
(
'month'
).
format
(
'YYYY-MM-DD 00:00:00'
);
//环比去年
let
lastYearThieMonthAgo
=
moment
().
startOf
(
"M"
).
subtract
(
1
,
'year'
).
format
(
'YYYY-MM-DD 00:00:00'
);
let
lastYearThieMonthAgoEnd
=
moment
().
endOf
(
"M"
).
subtract
(
1
,
'year'
).
format
(
'YYYY-MM-DD 00:00:00'
);
let
monthAgo2
=
moment
().
subtract
(
1
,
'month'
).
format
(
'YYYY-MM'
);
//环比去年
let
lastYearThieMonthAgo
=
moment
().
startOf
(
"M"
).
subtract
(
1
,
'year'
).
format
(
'YYYY-MM'
);
let
上月
=
0
;
let
去年本月
=
0
;
data
.
forEach
(
info
=>
{
let
{
startTime
}
=
info
;
if
(
moment
(
startTime
)
>
moment
(
monthAgo
)
&&
moment
(
startTime
)
<
moment
(
nowTime
))
{
let
{
startTime
}
=
info
;
let
startTimeMonth
=
moment
(
startTime
).
format
(
'YYYY-MM'
);
// if (moment(startTime) > moment(monthAgo) && moment(startTime) < moment(nowTime)) {
// qydt.本月新加入在孵企业 += 1;
// }
if
(
moment
(
startTimeMonth
)
==
moment
(
nowTime
))
{
qydt
.
本月新加入在孵企业
+=
1
;
}
if
(
moment
(
startTime
)
>
moment
(
monthAgo2
)
&&
moment
(
startTime
)
<
moment
(
monthAgo2End
))
{
if
(
moment
(
startTimeMonth
)
==
moment
(
monthAgo2
))
{
上月
+=
1
;
}
if
(
moment
(
startTime
)
>
moment
(
lastYearThieMonthAgo
)
&&
moment
(
startTime
)
<
moment
(
lastYearThieMonthAgoEnd
))
{
if
(
moment
(
startTime
Month
)
==
moment
(
lastYearThieMonthAgo
))
{
去年本月
+=
1
;
}
})
...
...
@@ -603,13 +625,14 @@ async function qyfhs(data) {
let
{
enterprise_qualifications
}
=
info
;
enterprise_qualifications
.
forEach
(
item
=>
{
if
(
item
.
kxTime
)
qyfhs
.
科小
+=
1
;
//新增"科小"
else
if
(
item
.
xjrTime
)
qyfhs
.
小巨人
+=
1
;
else
if
(
item
.
gaoXinJiShuTime
)
qyfhs
.
高新企业
+=
1
;
else
if
(
item
.
zjtxTime
)
qyfhs
.
专精特新
+=
1
;
else
if
(
item
.
xjrPyTime
)
qyfhs
.
小巨人培育
+=
1
;
if
(
item
.
xjrTime
)
qyfhs
.
小巨人
+=
1
;
if
(
item
.
gaoXinJiShuTime
)
qyfhs
.
高新企业
+=
1
;
if
(
item
.
zjtxTime
)
qyfhs
.
专精特新
+=
1
;
if
(
item
.
xjrPyTime
)
qyfhs
.
小巨人培育
+=
1
;
})
})
return
qyfhs
;
}
...
...
src/data/db/qyfw.ts
View file @
efb4840e
...
...
@@ -103,6 +103,7 @@ export async function getEnterprise() {
//获取在孵企业
// let 在孵dbList = await selectData(OPERATIONALDATATYPE.查询多个, TABLENAME.企业孵化信息, { "endTime": { "%gt%": nowTime } }, fhColumn);
let
在孵
dbList
=
await
selectData
(
OPERATIONALDATATYPE
.
查询多个
,
TABLENAME
.
企业孵化信息
,
{
state
:
{
"%between%"
:
[
FUHUASTATE
.
实体孵化
,
FUHUASTATE
.
虚拟孵化
]
}},
fhColumn
);
// let 在孵dbList = await selectData(OPERATIONALDATATYPE.查询多个, TABLENAME.企业孵化信息, {state:{"%notIn%":FUHUASTATE.迁出} }, fhColumn);
//获取毕业企业
// let 毕业dbList = await selectData(OPERATIONALDATATYPE.查询多个, TABLENAME.企业孵化信息, { "moveOutType": MOVEOUTTYPE.毕业迁出 }, fhColumn);
...
...
src/data/db/zhyy.ts
View file @
efb4840e
...
...
@@ -90,6 +90,7 @@ export async function getZhyy() {
let
在孵
dbList
=
await
selectData
(
OPERATIONALDATATYPE
.
查询多个
,
TABLENAME
.
企业孵化信息
,
{
state
:{
"%ne%"
:
0
}},
[
"fId"
,
"eId"
,
"startTime"
,
"endTime"
,
"state"
,
"virtualCause"
,
"virtualCauseDes"
,
"moveOutType"
,
"moveOutTrace"
,
"moveOutCause"
,
"moveOutTime"
,
"graduationTime"
]);
//入驻企业变化趋势
let
industryMap
=
{};
//行业领域
let
ruZhuMap
=
{};
//入驻企业变化趋势
...
...
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