Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in / Register
Toggle navigation
D
dsk-cr20g
Project
Project
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
Administrator
dsk-cr20g
Commits
4c00c164
Commit
4c00c164
authored
Jun 09, 2023
by
dengguangman
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'origin/master'
parents
3ccd438a
3286a077
Changes
13
Hide whitespace changes
Inline
Side-by-side
Showing
13 changed files
with
894 additions
and
348 deletions
+894
-348
macro.js
dsk-operate-ui/src/api/macro/macro.js
+82
-0
index.js
dsk-operate-ui/src/router/index.js
+4
-4
comparison.vue
...ate-ui/src/views/macro/economies/component/comparison.vue
+83
-44
industrialStructure.vue
...c/views/macro/economies/component/industrialStructure.vue
+70
-55
localEconomy.vue
...e-ui/src/views/macro/economies/component/localEconomy.vue
+4
-1
regionalEconomy.vue
...i/src/views/macro/economies/component/regionalEconomy.vue
+86
-41
index.vue
dsk-operate-ui/src/views/macro/economies/index.vue
+17
-8
localEnterprises.vue
...rc/views/macro/enterprises/component/localEnterprises.vue
+190
-0
offsite.vue
...rate-ui/src/views/macro/enterprises/component/offsite.vue
+176
-0
index.vue
dsk-operate-ui/src/views/macro/enterprises/index.vue
+43
-11
index.vue
dsk-operate-ui/src/views/macro/financing/index.vue
+133
-116
qgjjdq.vue
...ui/src/views/macro/nationalEconomies/component/qgjjdq.vue
+6
-5
zhongbiao.vue
...src/views/macro/nationalEconomies/component/zhongbiao.vue
+0
-63
No files found.
dsk-operate-ui/src/api/macro/macro.js
View file @
4c00c164
...
...
@@ -85,6 +85,14 @@ export function regional(param) {
data
:
param
})
}
//地区经济-获取当前位置
export
function
location
(
param
)
{
return
request
({
url
:
'/economic/location'
,
method
:
'POST'
,
data
:
param
})
}
//地区经济-主要指标列表
export
function
regionalList
(
param
)
{
return
request
({
...
...
@@ -94,5 +102,79 @@ export function regionalList(param) {
})
}
//产业结构-按年份选择 各个项目类型项目总数
export
function
bidGroupCountByProjectType
(
param
)
{
return
request
({
url
:
'/marketAnalysis/bidGroupCountByProjectType'
,
method
:
'POST'
,
data
:
param
})
}
//产业结构-近两年各个项目类型项目总数及金额占比
export
function
bidMoneyGroupByProjectType
(
param
)
{
return
request
({
url
:
'/marketAnalysis/bidMoneyGroupByProjectType'
,
method
:
'POST'
,
data
:
param
})
}
//对比经济
export
function
regionalCompare
(
param
)
{
return
request
({
url
:
'/economic/regional/compare'
,
method
:
'POST'
,
data
:
param
})
}
//区域专项债-项目类别统计
export
function
statistics
(
param
)
{
return
request
({
url
:
'/specialPurposeBonds/bond/statistics'
,
method
:
'POST'
,
data
:
param
})
}
//区域专项债-专项债项目分页列表
export
function
projectsPage
(
param
)
{
return
request
({
url
:
'/specialPurposeBonds/projects/page'
,
method
:
'POST'
,
data
:
param
})
}
//区域专项债-专项债项目详情
export
function
details
(
param
)
{
return
request
({
url
:
'/specialPurposeBonds/details'
,
method
:
'POST'
,
data
:
param
})
}
//区域专项债-专项债项目详情-专项债分页列表
export
function
bondPage
(
param
)
{
return
request
({
url
:
'/specialPurposeBonds/bond/page'
,
method
:
'POST'
,
data
:
param
})
}
//区域企业
export
function
enterprise
(
param
)
{
return
request
({
url
:
'/enterprise/page'
,
method
:
'POST'
,
data
:
param
})
}
dsk-operate-ui/src/router/index.js
View file @
4c00c164
...
...
@@ -116,7 +116,7 @@ export const constantRoutes = [
]
},
{
path
:
'/financing'
,
path
:
'/financing
Details
'
,
component
:
Layout
,
hidden
:
true
,
redirect
:
'noredirect'
,
...
...
@@ -227,9 +227,9 @@ export const constantRoutes = [
}
]
},
]
// 动态路由,基于用户权限动态去加载
...
...
dsk-operate-ui/src/views/macro/economies/component/comparison.vue
View file @
4c00c164
...
...
@@ -83,6 +83,7 @@
<el-table
:data=
"getValues"
:show-header=
"false"
:cell-style=
"rowStyle"
border
>
<el-table-column
...
...
@@ -100,7 +101,7 @@
<
script
>
import
dataRegion
from
'@/assets/json/dataRegion'
import
{
nationalPag
e
,
getYears
}
from
'@/api/macro/macro'
import
{
regionalCompar
e
,
getYears
}
from
'@/api/macro/macro'
export
default
{
name
:
'comparison'
,
props
:{
...
...
@@ -112,18 +113,8 @@ export default {
year
:
''
,
},
yearOptions
:
[],
tableData
:
[
{
index
:
0
},
{
index
:
1
},
{
index
:
2
},
{
index
:
3
},
{
index
:
4
},
],
tableData
:
[{},{},{},{},{}],
headers
:
[
{
prop
:
'year'
,
label
:
'指标'
,
},
{
prop
:
'name'
,
label
:
'经济'
,
...
...
@@ -190,7 +181,7 @@ export default {
},
{
prop
:
'gbrGrowth'
,
label
:
'
般公共预算收入增速
'
,
label
:
'
一般公共预算收入增速(%)
'
,
},
{
prop
:
'taxIncome'
,
...
...
@@ -254,23 +245,23 @@ export default {
},
{
prop
:
'fiscalSelfSufficiencyRate'
,
label
:
'财政自给率'
,
label
:
'财政自给率
(%)
'
,
},
{
prop
:
'govDebtToGdpRate'
,
label
:
'负债率'
,
label
:
'负债率
(%)
'
,
},
{
prop
:
'govDebtToGdpRateWild'
,
label
:
'负债率
-宽口径
'
,
label
:
'负债率
(宽口径)(%)
'
,
},
{
prop
:
'govDebtRate'
,
label
:
'债务率'
,
label
:
'债务率
(%)
'
,
},
{
prop
:
'govDebtRateWild'
,
label
:
'债务率
-宽口径
'
,
label
:
'债务率
(宽口径)(%)
'
,
},
],
props
:
{
...
...
@@ -293,6 +284,7 @@ export default {
value3Flag
:
false
,
value4Flag
:
false
,
value5Flag
:
false
,
regionData
:[]
}
},
created
()
{
...
...
@@ -314,10 +306,13 @@ export default {
}
},
methods
:
{
getData
(
params
){
nationalPage
(
params
).
then
(
res
=>
{
console
.
log
(
res
.
data
)
// this.tableData = res.data.list
getData
(
params
,
index
){
if
(
this
.
dataQuery
.
id
){
params
.
id
=
this
.
dataQuery
.
id
}
regionalCompare
(
params
).
then
(
res
=>
{
this
.
tableData
.
splice
(
index
-
1
,
1
,
res
.
data
)
this
.
$forceUpdate
();
})
},
//地区
...
...
@@ -392,7 +387,22 @@ export default {
this
.
value5Flag
=
true
break
;
}
const
params
=
{
pageNum
:
this
.
pageIndex
,
pageSize
:
this
.
pageSize
,
year
:
this
.
queryParams
.
year
,
type
:
3
}
let
code
=
[];
for
(
var
i
in
this
.
regionData
)
{
code
=
this
.
regionData
[
i
].
path
}
if
(
code
.
length
>=
1
){
params
.
provinceId
=
code
[
0
]
}
if
(
code
.
length
>=
2
){
params
.
cityId
=
code
[
1
]
}
if
(
code
.
length
>=
3
){
params
.
areaId
=
code
[
2
]
}
this
.
getData
(
params
,
index
)
}
},
handleChange
(
index
)
{
...
...
@@ -435,29 +445,42 @@ export default {
}
}
const
params
=
{
pageNum
:
this
.
pageIndex
,
pageSize
:
this
.
pageSize
,
year
:
this
.
queryParams
.
year
,
type
:
3
}
let
provinceCode
=
[],
cityCode
=
[],
countyCode
=
[];
for
(
var
i
in
arr
)
{
if
(
arr
[
i
].
parent
)
{
if
(
!
arr
[
i
].
parent
.
checked
)
{
arr
[
i
].
hasChildren
&&
cityCode
.
push
(
arr
[
i
].
value
);
!
arr
[
i
].
hasChildren
&&
countyCode
.
push
(
arr
[
i
].
value
);
}
}
else
{
provinceCode
.
push
(
arr
[
i
].
value
)
}
}
if
(
provinceCode
.
length
>
0
){
params
.
provinceIds
=
provinceCode
}
if
(
cityCode
.
length
>
0
){
params
.
cityIds
=
cityCode
}
if
(
countyCode
.
length
>
0
){
params
.
areaIds
=
countyCode
}
this
.
regionData
=
arr
;
// const params = { pageNum: this.pageIndex, pageSize: this.pageSize, year: this.queryParams.year,type:3 }
// let provinceCode = [],cityCode = [],countyCode = [];
// let code=[];
// for (var i in arr) {
// code=arr[i].path
// if (arr[i].parent) {
// if (!arr[i].parent.checked) {
// arr[i].hasChildren && cityCode.push(arr[i].value);
// !arr[i].hasChildren && countyCode.push(arr[i].value);
// }
// } else {
// provinceCode.push(arr[i].value)
// }
// }
// if(provinceCode.length > 0){
// params.provinceIds=provinceCode
// }
// if(cityCode.length > 0){
// params.cityIds=cityCode
// }
// if(countyCode.length > 0){
// params.areaIds=countyCode
// }
// if(code.length >= 1){
// params.provinceId=code[0]
// }
// if(code.length >= 2){
// params.cityId=code[1]
// }
// if(code.length >= 3){
// params.areaId=code[2]
// }
this
.
getData
(
params
)
//
this.getData(params)
},
handleDelete
(
index
){
...
...
@@ -479,6 +502,22 @@ export default {
break
;
}
},
formatStatus
:
function
(
row
,
column
,
cellValue
)
{
if
(
row
.
title
===
'经济'
||
row
.
title
===
'财政'
||
row
.
title
===
'债务'
){
return
cellValue
}
else
{
return
cellValue
?
cellValue
:
'-'
}
},
rowStyle
(
row
){
if
(
row
.
row
.
title
===
'经济'
||
row
.
row
.
title
===
'财政'
||
row
.
row
.
title
===
'债务'
){
return
{
// background: '#FAF5EB',
color
:
'#232323'
,
fontWeight
:
'bold'
}
}
}
}
}
</
script
>
...
...
dsk-operate-ui/src/views/macro/economies/component/industrialStructure.vue
View file @
4c00c164
...
...
@@ -5,7 +5,7 @@
<span
class=
"common-title"
>
主要指标
</span>
<el-form
ref=
"queryForm"
:model=
"queryParams"
:inline=
"true"
size=
"small"
>
<el-form-item
prop=
"year"
>
<el-select
v-model=
"queryParams.year"
filterable
class=
"form-content-width"
placeholder=
"请选择年度"
>
<el-select
v-model=
"queryParams.year"
filterable
class=
"form-content-width"
placeholder=
"请选择年度"
@
change=
"getGroupCount"
>
<el-option
v-for=
"(item, index) in yearOptions"
:key=
"index"
:label=
"item.year"
:value=
"item.year"
/>
</el-select>
</el-form-item>
...
...
@@ -29,16 +29,16 @@
highlight-current-row
>
<el-table-column
label=
"序号"
width=
"60"
align=
"left"
>
<template
slot-scope=
"scope"
>
{{
pageIndex
*
pageSize
-
pageSize
+
scope
.
$index
+
1
}}
</
template
>
<template
slot-scope=
"scope"
>
{{
scope
.
$index
+
1
}}
</
template
>
</el-table-column>
<el-table-column
label=
"产业类型"
prop=
"
t
ype"
></el-table-column>
<el-table-column
label=
"2022年
"
>
<el-table-column
prop=
"
je
"
label=
"金额(亿元)"
>
</el-table-column>
<el-table-column
prop=
"
zb"
label=
"占比"
sortable
>
</el-table-column>
<el-table-column
label=
"产业类型"
prop=
"
projectT
ype"
></el-table-column>
<el-table-column
:label=
"oneYear
"
>
<el-table-column
prop=
"
money
"
label=
"金额(亿元)"
>
</el-table-column>
<el-table-column
prop=
"
rate"
label=
"占比"
>
</el-table-column>
</el-table-column>
<el-table-column
label=
"2021年
"
>
<el-table-column
prop=
"
province"
label=
"金额(亿元)"
sortable
>
</el-table-column>
<el-table-column
prop=
"
province"
label=
"占比"
sortable
>
</el-table-column>
<el-table-column
:label=
"twoYear
"
>
<el-table-column
prop=
"
lastMoney"
label=
"金额(亿元)"
>
</el-table-column>
<el-table-column
prop=
"
lastRate"
label=
"占比"
>
</el-table-column>
</el-table-column>
</el-table>
</div>
...
...
@@ -48,11 +48,14 @@
<
script
>
import
*
as
echarts
from
'echarts'
;
import
{
nationalPag
e
,
getYears
}
from
'@/api/macro/macro'
import
{
bidGroupCountByProjectType
,
bidMoneyGroupByProjectTyp
e
,
getYears
}
from
'@/api/macro/macro'
export
default
{
name
:
'industrialStructure'
,
props
:{
dataQuery
:{}
dataQuery
:
{
type
:
Object
,
default
:
{}
},
},
data
()
{
return
{
...
...
@@ -61,46 +64,11 @@ export default {
address
:
''
},
yearOptions
:
[],
tableData
:[
{
type
:
'房建工程'
,
je
:
'29,175.61'
,
zb
:
'26%'
},
{
type
:
'市政工程'
,
je
:
'29,175.61'
,
zb
:
'26%'
},
{
type
:
'公路工程'
,
je
:
'29,175.61'
,
zb
:
'26%'
},
{
type
:
'机电工程'
,
je
:
'29,175.61'
,
zb
:
'26%'
},
],
tableData
:[],
tableLoading
:
false
,
pageIndex
:
1
,
pageSize
:
10
,
tableDataTotal
:
0
,
data
:[
{
name
:
'房建工程'
,
value
:
11
},
{
name
:
'市政工程'
,
value
:
22
},
{
name
:
'公路工程'
,
value
:
33
}
]
data
:[],
oneYear
:
''
,
twoYear
:
''
,
}
},
created
()
{
...
...
@@ -108,14 +76,60 @@ export default {
this
.
yearOptions
=
res
.
data
.
reverse
();
this
.
queryParams
.
year
=
this
.
yearOptions
[
0
].
year
;
})
this
.
getData
()
this
.
getGroupCount
()
this
.
$nextTick
(()
=>
{
this
.
initChart
()
})
},
methods
:
{
handleClick
()
{
getData
(){
let
mydate
=
new
Date
();
var
startTime
,
endTime
,
Year
Year
=
mydate
.
getFullYear
();
startTime
=
mydate
.
getFullYear
()
-
2
+
'-01-01'
;
endTime
=
mydate
.
getFullYear
()
-
1
+
'-12-31'
;
this
.
oneYear
=
mydate
.
getFullYear
()
-
1
+
'年'
;
this
.
twoYear
=
mydate
.
getFullYear
()
-
2
+
'年'
;
let
params
=
{
startDate
:
startTime
,
endDate
:
endTime
,
province
:
this
.
dataQuery
.
provinceId
}
bidMoneyGroupByProjectType
(
params
).
then
(
res
=>
{
let
list
=
res
.
data
[
1
].
type
for
(
let
i
=
0
;
i
<
res
.
data
[
0
].
type
.
length
;
i
++
){
for
(
let
j
=
0
;
j
<
list
.
length
;
j
++
){
if
(
res
.
data
[
0
].
type
[
i
].
projectType
===
list
[
j
].
projectType
){
list
[
j
].
lastMoney
=
res
.
data
[
0
].
type
[
i
].
money
;
list
[
j
].
lastRate
=
res
.
data
[
0
].
type
[
i
].
rate
;
}
}
}
this
.
tableData
=
list
.
reverse
()
})
},
getGroupCount
(){
let
mydate
=
new
Date
();
let
startTime
=
''
let
endTime
=
''
if
(
!
this
.
queryParams
.
year
){
startTime
=
mydate
.
getFullYear
()
-
1
+
'-01-01'
;
endTime
=
mydate
.
getFullYear
()
-
1
+
'-12-31'
;
}
else
{
startTime
=
this
.
queryParams
.
year
+
'-01-01'
;
endTime
=
this
.
queryParams
.
year
+
'-12-31'
;
}
bidGroupCountByProjectType
({
startDate
:
startTime
,
endDate
:
endTime
}).
then
(
res
=>
{
let
list
=
[]
for
(
let
i
=
0
;
i
<
res
.
data
.
length
;
i
++
){
let
item
=
{};
item
.
name
=
res
.
data
[
i
].
type
item
.
value
=
res
.
data
[
i
].
count
list
.
push
(
item
);
}
this
.
data
=
list
;
this
.
initChart
()
})
},
initChart
()
{
let
myChart
=
echarts
.
init
(
document
.
getElementById
(
"echarts"
))
let
option
=
{
...
...
@@ -134,7 +148,7 @@ export default {
},
//鼠标悬停时显示的样式
tooltip
:
{
extraCssText
:
'width:1
0
0px!important;'
,
extraCssText
:
'width:1
2
0px!important;'
,
formatter
:
function
(
params
){
var
result
=
''
result
+=
'<p style="color: rgba(35,35,35,0.8);padding: 0;margin: 0;">'
+
params
.
name
+
'</p>'
...
...
@@ -157,7 +171,8 @@ export default {
]
}
myChart
.
setOption
(
option
);
}
},
}
}
</
script
>
...
...
dsk-operate-ui/src/views/macro/economies/component/localEconomy.vue
View file @
4c00c164
...
...
@@ -52,7 +52,10 @@
export
default
{
name
:
'localEconomy'
,
props
:{
dataQuery
:{}
dataQuery
:
{
type
:
Object
,
default
:
{}
},
},
data
()
{
return
{
...
...
dsk-operate-ui/src/views/macro/economies/component/regionalEconomy.vue
View file @
4c00c164
...
...
@@ -4,45 +4,71 @@
<div
class=
"common-title"
>
经济数据
</div>
<div
class=
"content-box"
>
<div
class=
"item"
>
<div
class=
"item-title"
><i
style=
"background: #4E8EFF;"
></i>
2022年GDP
</div>
<div
class=
"item-count"
><span>
29,129.03
</span>
亿
<img
src=
"@/assets/images/economies/icon_up.png"
></div>
<div
class=
"item-title"
><i
style=
"background: #4E8EFF;"
></i>
{{
recentlyYear
.
year
}}
年GDP
</div>
<div
class=
"item-count"
>
<span>
{{
recentlyYear
.
gdp
}}
</span>
亿
<img
v-if=
"recentlyYear.gdpGrowth > 0"
src=
"@/assets/images/economies/icon_up.png"
>
<img
v-else
src=
"@/assets/images/economies/icon_down.png"
>
</div>
<div
id=
"echartsGDP"
style=
"height: 75px;"
></div>
<div
class=
"item-text up"
>
较2021年上升
<span>
26.7%
</span></div>
<div
class=
"item-text up"
v-if=
"recentlyYear.gdpGrowth > 0"
>
较
{{
nextYearMap
.
year
}}
年上升
<span>
{{
recentlyYear
.
gdpGrowth
}}
%
</span></div>
<div
class=
"item-text down"
v-else
>
较
{{
nextYearMap
.
year
}}
年下降
<span>
{{
Number
(
recentlyYear
.
gdpGrowth
).
toString
().
substring
(
1
)
}}
%
</span></div>
</div>
<div
class=
"item"
>
<div
class=
"item-title"
><i
style=
"background: #718AFF;"
></i>
2022年GDP增速
</div>
<div
class=
"item-count"
><span>
29,129.03
</span>
亿
<img
src=
"@/assets/images/economies/icon_down.png"
></div>
<div
class=
"item-title"
><i
style=
"background: #718AFF;"
></i>
{{
recentlyYear
.
year
}}
年GDP增速
</div>
<div
class=
"item-count"
>
<span>
{{
recentlyYear
.
gdpGrowth
}}
</span>
%
<img
v-if=
"(recentlyYear.gdpGrowth-nextYearMap.gdpGrowth) > 0"
src=
"@/assets/images/economies/icon_up.png"
>
<img
v-else
src=
"@/assets/images/economies/icon_down.png"
>
</div>
<div
id=
"echartsZS"
style=
"height: 75px;"
></div>
<div
class=
"item-text down"
>
较2021年下降
<span>
26.7%
</span></div>
<div
class=
"item-text up"
v-if=
"(recentlyYear.gdpGrowth-nextYearMap.gdpGrowth) > 0"
>
较
{{
nextYearMap
.
year
}}
年上升
<span>
{{
recentlyYear
.
gdpGrowth
-
nextYearMap
.
gdpGrowth
}}
%
</span></div>
<div
class=
"item-text down"
v-else
>
较
{{
nextYearMap
.
year
}}
年下降
<span>
{{
(
this
.
recentlyYear
.
gdpGrowth
-
this
.
nextYearMap
.
gdpGrowth
).
toFixed
(
2
).
toString
().
substring
(
1
)
}}
%
</span></div>
</div>
<div
class=
"item"
>
<div
class=
"item-title"
><i
style=
"background: #3AD0D1;"
></i>
2022年人口
</div>
<div
class=
"item-count"
><span>
29,129.03
</span>
亿
<img
src=
"@/assets/images/economies/icon_down.png"
></div>
<div
class=
"item-title"
><i
style=
"background: #3AD0D1;"
></i>
{{
recentlyYear
.
year
}}
年人口
</div>
<div
class=
"item-count"
>
<span>
{{
recentlyYear
.
population
}}
</span>
万
<img
v-if=
"recentlyYear.populationGrowthRate > 0"
src=
"@/assets/images/economies/icon_up.png"
>
<img
v-else
src=
"@/assets/images/economies/icon_down.png"
>
</div>
<div
id=
"echartsRK"
style=
"height: 75px;"
></div>
<div
class=
"item-text down"
>
较2021年下降
<span>
26.7%
</span></div>
<div
class=
"item-text up"
v-if=
"recentlyYear.populationGrowthRate > 0"
>
较
{{
nextYearMap
.
year
}}
年上升
<span>
{{
recentlyYear
.
populationGrowthRate
}}
%
</span></div>
<div
class=
"item-text down"
v-else
>
较
{{
nextYearMap
.
year
}}
年下降
<span>
{{
recentlyYear
.
populationGrowthRate
}}
%
</span></div>
</div>
<div
class=
"item"
>
<div
class=
"item-title"
><i
style=
"background: #FFBE5D;"
></i>
2022年一般公共预算收入
</div>
<div
class=
"item-count"
><span>
29,129.03
</span>
亿
<img
src=
"@/assets/images/economies/icon_up.png"
></div>
<div
class=
"item-title"
><i
style=
"background: #FFBE5D;"
></i>
{{
recentlyYear
.
year
}}
年一般公共预算收入
</div>
<div
class=
"item-count"
>
<span>
{{
recentlyYear
.
gbr
}}
</span>
亿
<img
v-if=
"recentlyYear.gbrGrowth > 0"
src=
"@/assets/images/economies/icon_up.png"
>
<img
v-else
src=
"@/assets/images/economies/icon_down.png"
>
</div>
<div
id=
"echartsSR"
style=
"height: 75px;"
></div>
<div
class=
"item-text up"
>
较2021年上升
<span>
26.7%
</span></div>
<div
class=
"item-text up"
v-if=
"recentlyYear.gbrGrowth > 0"
>
较
{{
nextYearMap
.
year
}}
年上升
<span>
{{
recentlyYear
.
gbrGrowth
}}
%
</span></div>
<div
class=
"item-text down"
v-else
>
较
{{
nextYearMap
.
year
}}
年下降
<span>
{{
Number
(
recentlyYear
.
gbrGrowth
).
toString
().
substring
(
1
)
}}
%
</span></div>
</div>
<div
class=
"item"
>
<div
class=
"item-title"
><i
style=
"background: #FF8935;"
></i>
2000年地方政府债务余额
</div>
<div
class=
"item-count"
><span>
29,129.03
</span>
亿
<img
src=
"@/assets/images/economies/icon_up.png"
></div>
<div
class=
"item-title"
><i
style=
"background: #FF8935;"
></i>
{{
recentlyYear
.
year
}}
年地方政府债务余额
</div>
<div
class=
"item-count"
>
<span>
{{
recentlyYear
.
govDebtBalance
}}
</span>
亿
<img
v-if=
"recentlyYear.govDebtBalance > nextYearMap.govDebtBalance"
src=
"@/assets/images/economies/icon_up.png"
>
<img
v-else
src=
"@/assets/images/economies/icon_down.png"
>
</div>
<div
id=
"echartsYE"
style=
"height: 75px;"
></div>
<div
class=
"item-text up"
>
较2021年上升
<span>
26.7%
</span></div>
<div
class=
"item-text up"
v-if=
"recentlyYear.govDebtBalance > nextYearMap.govDebtBalance"
>
较
{{
nextYearMap
.
year
}}
年上升
<span>
{{
((
recentlyYear
.
govDebtBalance
-
nextYearMap
.
govDebtBalance
)
/
nextYearMap
.
govDebtBalance
*
100
).
toFixed
(
2
)
}}
%
</span></div>
<div
class=
"item-text down"
v-else
>
较
{{
nextYearMap
.
year
}}
年下降
<span>
{{
((
recentlyYear
.
govDebtBalance
-
nextYearMap
.
govDebtBalance
)
/
nextYearMap
.
govDebtBalance
*
100
).
toFixed
(
2
).
toString
().
substring
(
1
)
}}
%
</span></div>
</div>
</div>
</div>
<div
class=
"content content2"
>
<div
class=
"common-title"
>
经济信息
</div>
<div
class=
"content-box"
>
<span><img
src=
"@/assets/images/economies/icon_1.png"
>
下属辖区
<label>
38
</label><i>
个
</i
></span>
<span><img
src=
"@/assets/images/economies/icon_2.png"
>
地方债余额
<label>
10,567.32
</label><i>
亿
</i
></span>
<span><img
src=
"@/assets/images/economies/icon_3.png"
>
专项债项目
<label>
10
</label><i>
个
</i
></span>
<span><img
src=
"@/assets/images/economies/icon_4.png"
>
城投平台
<label>
17
</label><i>
家
</i
></span>
<span><img
src=
"@/assets/images/economies/icon_5.png"
>
城投平台有息债务
<label>
17,710.19
</label><i>
亿
</i
></span>
<span><img
src=
"@/assets/images/economies/icon_1.png"
>
下属辖区
<label>
{{
recentlyYear
.
subordinateJurisdiction
}}
<i>
个
</i></label
></span>
<span><img
src=
"@/assets/images/economies/icon_2.png"
>
城投平台
<label>
{{
recentlyYear
.
urbanInvestmentPlatform
}}
<i>
亿
</i></label
></span>
<span><img
src=
"@/assets/images/economies/icon_3.png"
>
城投平台授信余额
<label>
{{
recentlyYear
.
creditBalance
}}
<i>
个
</i></label
></span>
<span><img
src=
"@/assets/images/economies/icon_4.png"
>
城投平台
营收账款
<label>
{{
recentlyYear
.
accountsReceivable
}}
<i>
家
</i></label
></span>
<span><img
src=
"@/assets/images/economies/icon_5.png"
>
城投平台有息债务
<label>
{{
recentlyYear
.
uipInterestBearingDebt
}}
<i>
亿
</i></label
></span>
</div>
</div>
<div
class=
"content content3"
>
...
...
@@ -77,15 +103,17 @@
<
script
>
import
*
as
echarts
from
'echarts'
;
import
{
regional
,
regionalList
}
from
'@/api/macro/macro'
import
{
regional
,
regionalList
,
location
}
from
'@/api/macro/macro'
export
default
{
name
:
'regionalEconomy'
,
props
:{
dataQuery
:{}
dataQuery
:
{
type
:
Object
,
default
:
{}
},
},
data
()
{
return
{
activeName
:
'first'
,
tableData
:
[],
headers
:
[
{
...
...
@@ -158,7 +186,7 @@ export default {
},
{
prop
:
'gbrGrowth'
,
label
:
'
般公共预算收入增速
'
,
label
:
'
一般公共预算收入增速(%)
'
,
},
{
prop
:
'taxIncome'
,
...
...
@@ -222,23 +250,23 @@ export default {
},
{
prop
:
'fiscalSelfSufficiencyRate'
,
label
:
'财政自给率'
,
label
:
'财政自给率
(%)
'
,
},
{
prop
:
'govDebtToGdpRate'
,
label
:
'负债率'
,
label
:
'负债率
(%)
'
,
},
{
prop
:
'govDebtToGdpRateWild'
,
label
:
'负债率
-宽口径
'
,
label
:
'负债率
(宽口径)(%)
'
,
},
{
prop
:
'govDebtRate'
,
label
:
'债务率'
,
label
:
'债务率
(%)
'
,
},
{
prop
:
'govDebtRateWild'
,
label
:
'债务率
-宽口径
'
,
label
:
'债务率
(宽口径)(%)
'
,
},
],
tableLoading
:
false
,
...
...
@@ -246,18 +274,19 @@ export default {
pageSize
:
10
,
tableDataTotal
:
0
,
labelData
:[
2021
,
2022
],
valData
:[
23201
,
35201
]
valData
:[],
valData1
:[],
valData2
:[],
valData3
:[],
valData4
:[],
recentlyYear
:{},
nextYearMap
:{},
}
},
created
()
{
console
.
log
(
this
.
dataQuery
)
this
.
getData
()
this
.
$nextTick
(()
=>
{
this
.
initChart
()
this
.
initChart1
()
this
.
initChart2
()
this
.
initChart3
()
this
.
initChart4
()
})
},
computed
:
{
...
...
@@ -280,7 +309,18 @@ export default {
params
.
provinceId
=
this
.
dataQuery
.
provinceId
}
regional
(
params
).
then
(
res
=>
{
console
.
log
(
res
.
data
)
this
.
recentlyYear
=
res
.
data
[
0
].
recentlyYear
;
this
.
nextYearMap
=
res
.
data
[
0
].
nextYearMap
;
this
.
valData
=
[
this
.
nextYearMap
.
gdp
,
this
.
recentlyYear
.
gdp
]
this
.
valData1
=
[
this
.
nextYearMap
.
gdpGrowth
,
this
.
recentlyYear
.
gdpGrowth
]
this
.
valData2
=
[
this
.
nextYearMap
.
population
,
this
.
recentlyYear
.
population
]
this
.
valData3
=
[
this
.
nextYearMap
.
gbr
,
this
.
recentlyYear
.
gbr
]
this
.
valData4
=
[
this
.
nextYearMap
.
govDebtBalance
,
this
.
recentlyYear
.
govDebtBalance
]
this
.
initChart
()
this
.
initChart1
()
this
.
initChart2
()
this
.
initChart3
()
this
.
initChart4
()
})
regionalList
(
params
).
then
(
res
=>
{
this
.
tableData
=
res
.
data
;
...
...
@@ -369,7 +409,7 @@ export default {
},
series
:
[
{
data
:
this
.
valData
,
data
:
this
.
valData
1
,
type
:
'line'
,
smooth
:
true
,
emphasis
:
{
...
...
@@ -428,7 +468,7 @@ export default {
},
series
:
[
{
data
:
this
.
valData
,
data
:
this
.
valData
2
,
type
:
'line'
,
smooth
:
true
,
emphasis
:
{
...
...
@@ -487,7 +527,7 @@ export default {
},
series
:
[
{
data
:
this
.
valData
,
data
:
this
.
valData
3
,
type
:
'line'
,
smooth
:
true
,
emphasis
:
{
...
...
@@ -546,7 +586,7 @@ export default {
},
series
:
[
{
data
:
this
.
valData
,
data
:
this
.
valData
4
,
type
:
'line'
,
smooth
:
true
,
emphasis
:
{
...
...
@@ -671,6 +711,8 @@ export default {
color
:
rgba
(
35
,
35
,
35
,
0
.8
);
font-size
:
12px
;
padding-left
:
16px
;
width
:
20%
;
line-height
:
26px
;
img
{
width
:
12px
;
height
:
12px
;
...
...
@@ -682,12 +724,15 @@ export default {
color
:
#232323
;
font-size
:
20px
;
margin-left
:
12px
;
float
:
right
;
}
i
{
color
:
#232323
;
margin-right
:
16px
;
font-style
:
normal
;
margin-left
:
4px
;
font-weight
:
400
;
font-size
:
12px
;
}
}
span
:last-child
{
...
...
dsk-operate-ui/src/views/macro/economies/index.vue
View file @
4c00c164
...
...
@@ -7,12 +7,12 @@
<el-tab-pane
label=
"产业结构"
name=
"third"
></el-tab-pane>
<el-tab-pane
label=
"地区经济对比"
name=
"four"
></el-tab-pane>
</el-tabs>
<div
class=
"location"
><i
class=
"el-icon-location"
></i>
重庆市
</div>
<div
class=
"location"
><i
class=
"el-icon-location"
></i>
{{
province
}}
</div>
</div>
<RegionalEconomy
v-if=
"activeName === 'first'"
:dataQuery=
"dataQuery"
></RegionalEconomy>
<LocalEconomy
v-if=
"activeName === 'second'"
:dataQuery=
"dataQuery"
></LocalEconomy>
<IndustrialStructure
v-if=
"activeName === 'third'"
:dataQuery=
"dataQuery"
></IndustrialStructure>
<Comparison
v-if=
"activeName === 'four'"
:dataQuery=
"dataQuery"
></Comparison>
<RegionalEconomy
v-if=
"activeName === 'first'
&& province
"
:dataQuery=
"dataQuery"
></RegionalEconomy>
<LocalEconomy
v-if=
"activeName === 'second'
&& province
"
:dataQuery=
"dataQuery"
></LocalEconomy>
<IndustrialStructure
v-if=
"activeName === 'third'
&& province
"
:dataQuery=
"dataQuery"
></IndustrialStructure>
<Comparison
v-if=
"activeName === 'four'
&& province
"
:dataQuery=
"dataQuery"
></Comparison>
</div>
</
template
>
...
...
@@ -21,6 +21,7 @@
import
LocalEconomy
from
'./component/localEconomy'
import
Comparison
from
'./component/comparison'
import
IndustrialStructure
from
'./component/industrialStructure'
import
{
location
}
from
'@/api/macro/macro'
export
default
{
name
:
'Economies'
,
components
:
{
...
...
@@ -31,12 +32,20 @@ export default {
},
data
()
{
return
{
activeName
:
'third'
,
dataQuery
:{}
activeName
:
'four'
,
dataQuery
:{},
province
:
''
}
},
created
()
{
this
.
dataQuery
=
this
.
$route
.
query
this
.
dataQuery
=
this
.
$route
.
query
;
location
({
provinceId
:
'500000'
}).
then
(
res
=>
{
this
.
province
=
res
.
data
.
currentProvince
.
regionName
;
this
.
provinceId
=
res
.
data
.
currentProvince
.
id
;
if
(
!
this
.
dataQuery
.
provinceId
){
this
.
dataQuery
.
provinceId
=
this
.
provinceId
}
})
// let name = sessionStorage.getItem('currentTab')
// if (name != "undefined" && name){
// this.activeName = name;
...
...
dsk-operate-ui/src/views/macro/enterprises/component/localEnterprises.vue
0 → 100644
View file @
4c00c164
<
template
>
<div
class=
"localEnterprises"
>
<div
class=
"content"
>
<div
class=
"search"
>
<el-cascader
ref=
"address"
:options=
"aptitudeCodeList"
:props=
"props"
v-model=
"queryParams.codeStr"
placeholder=
"资质资格"
collapse-tags
clearable
></el-cascader>
<el-input
placeholder=
"输入企业名称关键词"
v-model=
"queryParams.key"
>
<el-button
slot=
"append"
>
搜索
</el-button>
</el-input>
<span
class=
"total"
>
共
{{
tableDataTotal
}}
条
</span>
</div>
<div
class=
"table-item"
>
<el-table
v-loading=
"tableLoading"
:data=
"tableData"
element-loading-text=
"Loading"
border
fit
highlight-current-row
>
<el-table-column
label=
"序号"
width=
"50"
align=
"left"
fixed
>
<template
slot-scope=
"scope"
>
{{
pageIndex
*
pageSize
-
pageSize
+
scope
.
$index
+
1
}}
</
template
>
</el-table-column>
<el-table-column
label=
"公司名称"
align=
"left"
width=
"300"
>
<
template
slot-scope=
"scope"
>
<router-link
to=
""
tag=
"a"
class=
"a-link"
>
{{
scope
.
row
.
name
}}
</router-link>
</
template
>
</el-table-column>
<el-table-column
label=
"注册地区"
prop=
"address"
width=
"80"
/>
<el-table-column
label=
"资质资格"
prop=
"aptitudeCountNew"
sortable
width=
"120"
align=
"right"
/>
<el-table-column
label=
"专业人员"
prop=
"persionCount"
sortable
width=
"130"
align=
"right"
/>
<el-table-column
label=
"中标业绩"
prop=
"recentlyCount"
sortable
width=
"130"
align=
"right"
/>
<el-table-column
label=
"最大中标金额(万元)"
prop=
"cgfs"
sortable
width=
"160"
align=
"right"
/>
<el-table-column
label=
"中标总金额(万元)"
prop=
"cgfs"
sortable
width=
"160"
align=
"right"
/>
<el-table-column
label=
"四库业绩"
prop=
"skyCount"
sortable
width=
"130"
align=
"right"
/>
<el-table-column
label=
"公路业绩"
prop=
"cgfs"
sortable
width=
"130"
align=
"right"
/>
<el-table-column
label=
"水利业绩"
prop=
"cgfs"
sortable
width=
"130"
align=
"right"
/>
<el-table-column
label=
"常合作业主"
prop=
"cgfs"
width=
"280"
align=
"right"
/>
<el-table-column
label=
"客户(个)"
prop=
"customerCount"
sortable
width=
"130"
align=
"right"
/>
<el-table-column
label=
"供应商(个)"
prop=
"supplierCount"
sortable
width=
"130"
align=
"right"
/>
<el-table-column
label=
"常合作供应商"
prop=
"cgfs"
width=
"280"
align=
"right"
/>
</el-table>
</div>
<div
class=
"pagination-box"
>
<el-pagination
background
:current-page=
"pageIndex"
:page-size=
"pageSize"
:total=
"tableDataTotal"
layout=
"prev, pager, next, jumper"
@
current-change=
"handleCurrentChange"
@
size-change=
"handleSizeChange"
/>
</div>
</div>
</div>
</template>
<
script
>
import
*
as
echarts
from
'echarts'
;
import
aptitudeCode
from
'@/assets/json/aptitudeCode'
import
{
countGroupByMonth
,
countGroupByProvince
,
getYear
}
from
'@/api/macro/macro'
export
default
{
name
:
'localEnterprises'
,
data
()
{
return
{
queryParams
:{
key
:
''
,
codeStr
:
''
},
props
:
{
value
:
'id'
,
multiple
:
true
,
// checkStrictly:true,
label
:
'name'
,
children
:
'list'
,
expandTrigger
:
'hover'
},
tableData
:
[
{
dataId
:
'1'
,
cgrssqy
:
'100'
,
cgfs
:
'200'
,
address
:
'江北区'
,
name
:
'重庆市江北区国有资本投资运营管理集团有限公司'
}
],
tableLoading
:
false
,
pageIndex
:
1
,
pageSize
:
10
,
tableDataTotal
:
1
,
aptitudeCodeList
:[],
}
},
created
()
{
this
.
aptitudeCode
()
this
.
querySubmit
()
},
methods
:
{
//资质Json
async
aptitudeCode
()
{
// await axios.post("https://files.jiansheku.com/file/json/common/aptitudeCode.json", {}, {
// headers: {
// 'Content-Type': 'application/json'
// }
// }).then(res => {
// if (res.data.code == 200) {
// console.log(res.data.data)
// }
// })
this
.
aptitudeCodeList
=
aptitudeCode
},
async
querySubmit
(){
const
params
=
{
pageNum
:
this
.
pageIndex
,
pageSize
:
this
.
pageSize
}
if
(
this
.
queryParams
.
field
){
params
.
field
=
this
.
queryParams
.
field
}
if
(
this
.
queryParams
.
order
){
params
.
order
=
this
.
queryParams
.
order
}
enterprise
(
params
).
then
(
res
=>
{
console
.
log
(
res
.
data
)
})
},
// 重置页数
handleSizeChange
(
val
)
{
this
.
pageIndex
=
1
this
.
pageSize
=
val
this
.
querySubmit
()
},
// 跳转指定页数
handleCurrentChange
(
val
)
{
this
.
pageIndex
=
val
this
.
querySubmit
()
},
}
}
</
script
>
<
style
lang=
"scss"
scoped
>
.localEnterprises
{
.content
{
background
:
#FFFFFF
;
border-radius
:
4px
;
margin-top
:
12px
;
padding
:
16px
;
.search
{
::v-deep
.el-cascader
{
width
:
180px
;
margin-right
:
12px
;
height
:
32px
;
.el-input
{
width
:
100%
;
height
:
32px
;
.el-input__inner
{
height
:
32px
!
important
;
}
}
.el-cascader__tags
{
flex-wrap
:
inherit
;
.el-tag
{
max-width
:
100px
;
margin
:
5px
0
2px
6px
;
}
}
}
::v-deep
.el-input
{
width
:
250px
;
height
:
32px
;
.el-input__inner
{
height
:
32px
;
}
.el-input-group__append
{
width
:
59px
;
background
:
#F5F5F5
;
color
:
#0081FF
;
border-left
:
0
;
}
}
.total
{
float
:
right
;
color
:
#3D3D3D
;
font-size
:
12px
;
line-height
:
36px
;
}
}
.table-item
{
margin-top
:
14px
;
}
}
}
</
style
>
dsk-operate-ui/src/views/macro/enterprises/component/offsite.vue
0 → 100644
View file @
4c00c164
<
template
>
<div
class=
"offsite"
>
<div
class=
"content"
>
<div
class=
"search"
>
<el-cascader
ref=
"address"
:options=
"aptitudeCodeList"
:props=
"props"
v-model=
"queryParams.codeStr"
placeholder=
"资质资格"
collapse-tags
clearable
></el-cascader>
<el-input
placeholder=
"输入企业名称关键词"
v-model=
"queryParams.key"
>
<el-button
slot=
"append"
>
搜索
</el-button>
</el-input>
<span
class=
"total"
>
共
{{
tableDataTotal
}}
条
</span>
</div>
<div
class=
"table-item"
>
<el-table
v-loading=
"tableLoading"
:data=
"tableData"
element-loading-text=
"Loading"
border
fit
highlight-current-row
>
<el-table-column
label=
"序号"
width=
"50"
align=
"left"
fixed
>
<template
slot-scope=
"scope"
>
{{
pageIndex
*
pageSize
-
pageSize
+
scope
.
$index
+
1
}}
</
template
>
</el-table-column>
<el-table-column
label=
"公司名称"
align=
"left"
width=
"300"
>
<
template
slot-scope=
"scope"
>
<router-link
to=
""
tag=
"a"
class=
"a-link"
>
{{
scope
.
row
.
name
}}
</router-link>
</
template
>
</el-table-column>
<el-table-column
label=
"注册地区"
prop=
"address"
width=
"80"
/>
<el-table-column
label=
"资质资格"
prop=
"aptitudeCountNew"
sortable
width=
"120"
align=
"right"
/>
<el-table-column
label=
"专业人员"
prop=
"persionCount"
sortable
width=
"130"
align=
"right"
/>
<el-table-column
label=
"中标业绩"
prop=
"recentlyCount"
sortable
width=
"130"
align=
"right"
/>
<el-table-column
label=
"最大中标金额(万元)"
prop=
"cgfs"
sortable
width=
"160"
align=
"right"
/>
<el-table-column
label=
"中标总金额(万元)"
prop=
"cgfs"
sortable
width=
"160"
align=
"right"
/>
<el-table-column
label=
"四库业绩"
prop=
"skyCount"
sortable
width=
"130"
align=
"right"
/>
<el-table-column
label=
"公路业绩"
prop=
"cgfs"
sortable
width=
"130"
align=
"right"
/>
<el-table-column
label=
"水利业绩"
prop=
"cgfs"
sortable
width=
"130"
align=
"right"
/>
<el-table-column
label=
"常合作业主"
prop=
"cgfs"
width=
"280"
align=
"right"
/>
<el-table-column
label=
"客户(个)"
prop=
"customerCount"
sortable
width=
"130"
align=
"right"
/>
<el-table-column
label=
"供应商(个)"
prop=
"supplierCount"
sortable
width=
"130"
align=
"right"
/>
<el-table-column
label=
"常合作供应商"
prop=
"cgfs"
width=
"280"
align=
"right"
/>
</el-table>
</div>
</div>
</div>
</template>
<
script
>
import
*
as
echarts
from
'echarts'
;
import
aptitudeCode
from
'@/assets/json/aptitudeCode'
import
{
countGroupByMonth
,
countGroupByProvince
,
getYear
}
from
'@/api/macro/macro'
export
default
{
name
:
'offsite'
,
data
()
{
return
{
queryParams
:{
key
:
''
,
codeStr
:
''
},
props
:
{
value
:
'id'
,
multiple
:
true
,
// checkStrictly:true,
label
:
'name'
,
children
:
'list'
,
expandTrigger
:
'hover'
},
tableData
:
[
{
dataId
:
'1'
,
cgrssqy
:
'100'
,
cgfs
:
'200'
,
address
:
'江北区'
,
name
:
'重庆市江北区国有资本投资运营管理集团有限公司'
}
],
tableLoading
:
false
,
pageIndex
:
1
,
pageSize
:
10
,
tableDataTotal
:
1
,
aptitudeCodeList
:[],
}
},
created
()
{
this
.
aptitudeCode
()
this
.
querySubmit
()
},
methods
:
{
//资质Json
async
aptitudeCode
()
{
// await axios.post("https://files.jiansheku.com/file/json/common/aptitudeCode.json", {}, {
// headers: {
// 'Content-Type': 'application/json'
// }
// }).then(res => {
// if (res.data.code == 200) {
// console.log(res.data.data)
// }
// })
this
.
aptitudeCodeList
=
aptitudeCode
},
async
querySubmit
(){
const
params
=
{
pageNum
:
this
.
pageIndex
,
pageSize
:
this
.
pageSize
}
if
(
this
.
queryParams
.
field
){
params
.
field
=
this
.
queryParams
.
field
}
if
(
this
.
queryParams
.
order
){
params
.
order
=
this
.
queryParams
.
order
}
enterprise
(
params
).
then
(
res
=>
{
console
.
log
(
res
.
data
)
})
}
}
}
</
script
>
<
style
lang=
"scss"
scoped
>
.offsite
{
.content
{
background
:
#FFFFFF
;
border-radius
:
4px
;
margin-top
:
12px
;
padding
:
16px
;
.search
{
::v-deep
.el-cascader
{
width
:
180px
;
margin-right
:
12px
;
height
:
32px
;
.el-input
{
width
:
100%
;
height
:
32px
;
.el-input__inner
{
height
:
32px
!
important
;
}
}
.el-cascader__tags
{
flex-wrap
:
inherit
;
.el-tag
{
max-width
:
100px
;
margin
:
5px
0
2px
6px
;
}
}
}
::v-deep
.el-input
{
width
:
250px
;
height
:
32px
;
.el-input__inner
{
height
:
32px
;
}
.el-input-group__append
{
width
:
59px
;
background
:
#F5F5F5
;
color
:
#0081FF
;
border-left
:
0
;
}
}
.total
{
float
:
right
;
color
:
#3D3D3D
;
font-size
:
12px
;
line-height
:
36px
;
}
}
.table-item
{
margin-top
:
14px
;
}
}
}
</
style
>
dsk-operate-ui/src/views/macro/enterprises/index.vue
View file @
4c00c164
...
...
@@ -40,28 +40,38 @@
</
template
>
</el-table-column>
<el-table-column
label=
"注册地区"
prop=
"address"
width=
"80"
/>
<el-table-column
label=
"资质资格"
prop=
"
cgfs
"
sortable
width=
"120"
align=
"right"
/>
<el-table-column
label=
"专业人员"
prop=
"
cgfs
"
sortable
width=
"130"
align=
"right"
/>
<el-table-column
label=
"中标业绩"
prop=
"
cgfs
"
sortable
width=
"130"
align=
"right"
/>
<el-table-column
label=
"资质资格"
prop=
"
aptitudeCountNew
"
sortable
width=
"120"
align=
"right"
/>
<el-table-column
label=
"专业人员"
prop=
"
persionCount
"
sortable
width=
"130"
align=
"right"
/>
<el-table-column
label=
"中标业绩"
prop=
"
recentlyCount
"
sortable
width=
"130"
align=
"right"
/>
<el-table-column
label=
"最大中标金额(万元)"
prop=
"cgfs"
sortable
width=
"160"
align=
"right"
/>
<el-table-column
label=
"中标总金额(万元)"
prop=
"cgfs"
sortable
width=
"160"
align=
"right"
/>
<el-table-column
label=
"四库业绩"
prop=
"
cgfs
"
sortable
width=
"130"
align=
"right"
/>
<el-table-column
label=
"四库业绩"
prop=
"
skyCount
"
sortable
width=
"130"
align=
"right"
/>
<el-table-column
label=
"公路业绩"
prop=
"cgfs"
sortable
width=
"130"
align=
"right"
/>
<el-table-column
label=
"水利业绩"
prop=
"cgfs"
sortable
width=
"130"
align=
"right"
/>
<el-table-column
label=
"常合作业主"
prop=
"cgfs"
width=
"280"
align=
"right"
/>
<el-table-column
label=
"客户(个)"
prop=
"c
gfs
"
sortable
width=
"130"
align=
"right"
/>
<el-table-column
label=
"供应商(个)"
prop=
"
cgfs
"
sortable
width=
"130"
align=
"right"
/>
<el-table-column
label=
"客户(个)"
prop=
"c
ustomerCount
"
sortable
width=
"130"
align=
"right"
/>
<el-table-column
label=
"供应商(个)"
prop=
"
supplierCount
"
sortable
width=
"130"
align=
"right"
/>
<el-table-column
label=
"常合作供应商"
prop=
"cgfs"
width=
"280"
align=
"right"
/>
</el-table>
</div>
<div
class=
"pagination-box"
>
<el-pagination
background
:current-page=
"pageIndex"
:page-size=
"pageSize"
:total=
"tableDataTotal"
layout=
"prev, pager, next, jumper"
@
current-change=
"handleCurrentChange"
@
size-change=
"handleSizeChange"
/>
</div>
</div>
<!--<LocalEnterprises v-if="activeName === 'first'"></LocalEnterprises>-->
<!--<Offsite v-if="activeName === 'second'"></Offsite>-->
</div>
</template>
<
script
>
// import LocalEnterprises from './component/localEnterprises'
// import Offsite from './component/offsite'
import
aptitudeCode
from
'@/assets/json/aptitudeCode'
import
{
countGroupByMonth
,
countGroupByProvince
,
getYear
}
from
'@/api/macro/macro'
export
default
{
name
:
'Enterprises'
,
// components: {LocalEnterprises,Offsite},
data
()
{
return
{
activeName
:
'first'
,
...
...
@@ -72,7 +82,7 @@ export default {
props
:
{
value
:
'id'
,
multiple
:
true
,
checkStrictly
:
true
,
//
checkStrictly:true,
label
:
'name'
,
children
:
'list'
,
expandTrigger
:
'hover'
...
...
@@ -90,14 +100,15 @@ export default {
pageIndex
:
1
,
pageSize
:
10
,
tableDataTotal
:
1
,
aptitudeCodeList
:[]
aptitudeCodeList
:[]
,
}
},
created
()
{
this
.
aptitudeCode
()
this
.
querySubmit
()
},
methods
:
{
//资质Json
//资质Json
async
aptitudeCode
()
{
// await axios.post("https://files.jiansheku.com/file/json/common/aptitudeCode.json", {}, {
// headers: {
...
...
@@ -108,9 +119,30 @@ export default {
// console.log(res.data.data)
// }
// })
console
.
log
(
aptitudeCode
)
this
.
aptitudeCodeList
=
aptitudeCode
},
async
querySubmit
(){
const
params
=
{
pageNum
:
this
.
pageIndex
,
pageSize
:
this
.
pageSize
}
if
(
this
.
queryParams
.
field
){
params
.
field
=
this
.
queryParams
.
field
}
if
(
this
.
queryParams
.
order
){
params
.
order
=
this
.
queryParams
.
order
}
enterprise
(
params
).
then
(
res
=>
{
console
.
log
(
res
.
data
)
})
},
// 重置页数
handleSizeChange
(
val
)
{
this
.
pageIndex
=
1
this
.
pageSize
=
val
this
.
querySubmit
()
},
// 跳转指定页数
handleCurrentChange
(
val
)
{
this
.
pageIndex
=
val
this
.
querySubmit
()
},
}
}
...
...
dsk-operate-ui/src/views/macro/financing/index.vue
View file @
4c00c164
...
...
@@ -13,12 +13,13 @@
border
height=
"360"
fit
@
sort-change=
"sortChange"
highlight-current-row
>
<el-table-column
prop=
"name"
label=
"项目
关系
"
width=
"150"
/>
<el-table-column
prop=
"value"
label=
"项目个数"
width=
"140"
/>
<el-table-column
prop=
"t
z"
label=
"投资额(亿元)"
width=
"140"
/>
<el-table-column
prop=
"
bl"
label=
"比例"
width=
"140
"
/>
<el-table-column
prop=
"name"
label=
"项目
类型
"
width=
"150"
/>
<el-table-column
prop=
"value"
label=
"项目个数"
sortable=
"custom"
width=
"140"
/>
<el-table-column
prop=
"t
otalInvestment"
label=
"投资额(亿元)"
sortable=
"custom"
width=
"140"
/>
<el-table-column
prop=
"
proportion"
label=
"比例"
width=
"140"
sortable=
"custom
"
/>
</el-table>
</div>
</div>
...
...
@@ -33,6 +34,7 @@
</div>
<div
class=
"table-item"
>
<el-table
v-loading=
"tableLoading"
:data=
"listData"
element-loading-text=
"Loading"
border
...
...
@@ -42,138 +44,108 @@
<el-table-column
label=
"序号"
width=
"55"
align=
"left"
fixed
>
<template
slot-scope=
"scope"
>
{{
pageIndex
*
pageSize
-
pageSize
+
scope
.
$index
+
1
}}
</
template
>
</el-table-column>
<el-table-column
prop=
"
name"
label=
"项目名称"
width=
"290
"
>
<el-table-column
prop=
"
projectName"
label=
"项目名称
"
>
<
template
slot-scope=
"scope"
>
<router-link
:to=
"'/macro/financing/details/'+ scope.row.id"
tag=
"a"
class=
"a-link"
>
{{
scope
.
row
.
n
ame
}}
</router-link>
<router-link
:to=
"'/macro/financing/details/'+ scope.row.id"
tag=
"a"
class=
"a-link"
>
{{
scope
.
row
.
projectN
ame
}}
</router-link>
</
template
>
</el-table-column>
<el-table-column
prop=
"
tz
"
label=
"项目总投资(亿)"
sortable
width=
"155"
/>
<el-table-column
prop=
"
bj
"
label=
"项目资本金(亿)"
sortable
width=
"155"
/>
<el-table-column
prop=
"
sy
"
label=
"项目收益倍数(倍)"
width=
"150"
/>
<el-table-column
prop=
"
projectTotalInvestment
"
label=
"项目总投资(亿)"
sortable
width=
"155"
/>
<el-table-column
prop=
"
projectCapital
"
label=
"项目资本金(亿)"
sortable
width=
"155"
/>
<el-table-column
prop=
"
econData007
"
label=
"项目收益倍数(倍)"
width=
"150"
/>
<el-table-column
prop=
"zxz"
label=
"专项债金额(亿)"
width=
"150"
/>
<el-table-column
prop=
"zxzzj"
label=
"专项债用作资本金(亿)"
width=
"170"
/>
<el-table-column
prop=
"xmzt"
label=
"项目主体"
/>
<el-table-column
prop=
"specialCapital"
label=
"专项债用作资本金(亿)"
width=
"170"
/>
<el-table-column
prop=
"projectEntity"
label=
"项目主体"
>
<!--<template slot-scope="scope">-->
<!--<router-link :to="'/macro/financing/details/'+ scope.row.projectEntityId" tag="a" class="a-link">{{ scope.row.projectEntity}}</router-link>-->
<!--</template>-->
</el-table-column>
</el-table>
</div>
<div
class=
"pagination-box"
>
<el-pagination
background
:current-page=
"pageIndex"
:page-size=
"pageSize"
:total=
"tableDataTotal"
layout=
"prev, pager, next, jumper"
@
current-change=
"handleCurrentChange"
@
size-change=
"handleSizeChange"
/>
</div>
</div>
</div>
</template>
<
script
>
import
*
as
echarts
from
'echarts'
;
import
{
statistics
,
projectsPage
}
from
'@/api/macro/macro'
export
default
{
name
:
'Financing'
,
data
()
{
return
{
tableData
:[
{
name
:
'农业农村'
,
value
:
'2'
,
tz
:
'50.01'
,
bl
:
'0.19%'
},
{
name
:
'乡村振兴'
,
value
:
'2'
,
tz
:
'50.01'
,
bl
:
'0.19%'
},
{
name
:
'农林水利'
,
value
:
'2'
,
tz
:
'50.01'
,
bl
:
'0.19%'
},
{
name
:
'交通'
,
value
:
'2'
,
tz
:
'50.01'
,
bl
:
'0.19%'
},
{
name
:
'轨道交通'
,
value
:
'2'
,
tz
:
'50.01'
,
bl
:
'0.19%'
},
{
name
:
'政府收费公路'
,
value
:
'2'
,
tz
:
'50.01'
,
bl
:
'0.19%'
},
{
name
:
'其他交通基础设施'
,
value
:
'2'
,
tz
:
'50.01'
,
bl
:
'0.19%'
},
{
name
:
'铁路'
,
value
:
'2'
,
tz
:
'50.01'
,
bl
:
'0.19%'
},
{
name
:
'养老'
,
value
:
'2'
,
tz
:
'50.01'
,
bl
:
'0.19%'
},
{
name
:
'生态环保'
,
value
:
'2'
,
tz
:
'50.01'
,
bl
:
'0.19%'
},
{
name
:
'职业教育'
,
value
:
'2'
,
tz
:
'50.01'
,
bl
:
'0.19%'
},
{
name
:
'能源'
,
value
:
'2'
,
tz
:
'50.01'
,
bl
:
'0.19%'
},
],
listData
:[
{
id
:
1
,
name
:
'涪陵高新产业园区总和配套项目'
,
tz
:
'535.00'
,
bj
:
'235.00'
,
sy
:
'3'
,
zxz
:
'230'
,
zxzzj
:
'423'
,
xmzt
:
'重庆市涪陵区新城区开发 (集团) 有限公司'
,
},
{
id
:
2
,
name
:
'涪陵高新产业园区总和配套项目'
,
tz
:
'235.00'
,
bj
:
'435.00'
,
sy
:
'6'
,
zxz
:
'530'
,
zxzzj
:
'323'
,
xmzt
:
'重庆市涪陵区新城区开发 (集团) 有限公司'
,
}
],
queryParams
:{},
tableParams
:{},
tableData
:[],
listData
:[],
tableLoading
:
false
,
pageIndex
:
1
,
pageSize
:
10
,
tableDataTotal
:
12
0
tableDataTotal
:
0
}
},
created
()
{
this
.
getStatistics
()
this
.
getData
()
this
.
$nextTick
(()
=>
{
this
.
initChart
()
})
},
methods
:
{
initChart
()
{
getData
(){
this
.
tableLoading
=
true
let
params
=
{
pageNum
:
this
.
pageIndex
,
pageSize
:
this
.
pageSize
}
if
(
this
.
tableParams
.
field
){
params
.
field
=
this
.
tableParams
.
field
}
if
(
this
.
tableParams
.
order
){
params
.
order
=
this
.
tableParams
.
order
}
projectsPage
(
params
).
then
(
res
=>
{
this
.
tableLoading
=
false
this
.
listData
=
res
.
data
.
list
;
this
.
tableDataTotal
=
res
.
data
.
totalCount
})
// 延迟关闭加载效果
// setTimeout(() => {
// this.tableLoading = false
// }, 200)
},
getStatistics
(){
let
params
=
{};
if
(
this
.
queryParams
.
field
){
params
.
field
=
this
.
queryParams
.
field
}
if
(
this
.
queryParams
.
order
){
params
.
order
=
this
.
queryParams
.
order
}
statistics
(
params
).
then
(
res
=>
{
var
list
=
[];
for
(
var
i
=
0
;
i
<
res
.
data
.
length
;
i
++
){
var
obj
=
{};
obj
.
name
=
res
.
data
[
i
].
projectType
;
obj
.
value
=
res
.
data
[
i
].
count
;
obj
.
totalInvestment
=
res
.
data
[
i
].
totalInvestment
;
obj
.
proportion
=
res
.
data
[
i
].
proportion
;
list
.
push
(
obj
)
}
this
.
tableData
=
list
;
let
arr
=
this
.
tableData
.
sort
((
old
,
New
)
=>
{
return
New
.
value
-
old
.
value
})
let
data
=
[]
for
(
let
i
=
0
;
i
<
10
;
i
++
){
data
.
push
(
arr
[
i
])
}
console
.
log
(
arr
)
console
.
log
(
data
)
this
.
initChart
(
data
)
})
},
initChart
(
data
)
{
let
myChart
=
echarts
.
init
(
document
.
getElementById
(
"echarts"
))
let
option
=
{
...
...
@@ -185,8 +157,8 @@ export default {
var
result
=
''
result
+=
'<h3 style="color: #232226;padding: 0 0 5px 0;margin: 0;">'
+
params
.
data
.
name
+
'</h3>'
result
+=
'<p style="color: rgba(35,35,35,0.8);padding: 0;margin: 0;">'
+
params
.
data
.
value
+
'个</p>'
result
+=
'<p style="color: rgba(35,35,35,0.8);padding: 0;margin: 0;">'
+
params
.
data
.
t
z
+
'亿元</p>'
result
+=
'<p style="color: rgba(35,35,35,0.8);padding: 0;margin: 0;">'
+
params
.
data
.
bl
+
'%</p>'
result
+=
'<p style="color: rgba(35,35,35,0.8);padding: 0;margin: 0;">'
+
params
.
data
.
t
otalInvestment
+
'亿元</p>'
result
+=
'<p style="color: rgba(35,35,35,0.8);padding: 0;margin: 0;">'
+
params
.
data
.
proportion
+
'%</p>'
return
result
;
},
extraCssText
:
'width:150px!important;'
,
...
...
@@ -194,8 +166,8 @@ export default {
legend
:
{
type
:
'scroll'
,
orient
:
'horizontal'
,
bottom
:
2
0
,
data
:
this
.
tableD
ata
,
bottom
:
0
,
data
:
d
ata
,
pageButtonPosition
:
'end'
,
},
series
:
[
...
...
@@ -203,7 +175,7 @@ export default {
type
:
'pie'
,
radius
:
'55%'
,
center
:
[
'50%'
,
'40%'
],
data
:
this
.
tableD
ata
,
data
:
d
ata
,
emphasis
:
{
itemStyle
:
{
shadowBlur
:
10
,
...
...
@@ -215,7 +187,52 @@ export default {
]
}
myChart
.
setOption
(
option
);
}
},
sortChange
({
column
,
prop
,
order
}){
if
(
prop
===
'value'
){
this
.
queryParams
.
field
=
'count'
}
else
{
this
.
queryParams
.
field
=
prop
}
if
(
column
.
order
===
"ascending"
){
this
.
queryParams
.
order
=
'asc'
}
else
if
(
column
.
order
===
"descending"
){
this
.
queryParams
.
order
=
'desc'
}
else
{
this
.
queryParams
.
order
=
''
this
.
queryParams
.
field
=
''
}
let
params
=
{
field
:
this
.
queryParams
.
field
,
order
:
this
.
queryParams
.
order
};
statistics
(
params
).
then
(
res
=>
{
var
list
=
[];
for
(
var
i
=
0
;
i
<
res
.
data
.
length
;
i
++
){
var
obj
=
{};
obj
.
name
=
res
.
data
[
i
].
projectType
;
obj
.
value
=
res
.
data
[
i
].
count
;
obj
.
totalInvestment
=
res
.
data
[
i
].
totalInvestment
;
obj
.
proportion
=
res
.
data
[
i
].
proportion
;
list
.
push
(
obj
)
}
this
.
tableData
=
list
;
})
},
// 重置页数
handleSizeChange
(
val
)
{
this
.
pageIndex
=
1
this
.
pageSize
=
val
this
.
getData
()
},
// 跳转指定页数
handleCurrentChange
(
val
)
{
this
.
pageIndex
=
val
this
.
getData
()
},
}
}
</
script
>
...
...
dsk-operate-ui/src/views/macro/nationalEconomies/component/qgjjdq.vue
View file @
4c00c164
...
...
@@ -201,7 +201,7 @@
},
// 查询提交
async
querySubmit
()
{
//
this.tableLoading = true
this
.
tableLoading
=
true
const
params
=
{
pageNum
:
this
.
pageIndex
,
pageSize
:
this
.
pageSize
,
year
:
this
.
queryParams
.
year
,
type
:
1
}
if
(
this
.
queryParams
.
address
){
let
arr
=
this
.
$refs
.
address
.
getCheckedNodes
();
...
...
@@ -235,13 +235,14 @@
}
nationalPage
(
params
).
then
(
res
=>
{
this
.
tableData
=
res
.
data
.
list
this
.
tableLoading
=
false
this
.
tableData
=
res
.
data
.
list
;
this
.
tableDataTotal
=
res
.
data
.
totalCount
})
// 延迟关闭加载效果
setTimeout
(()
=>
{
this
.
tableLoading
=
false
},
200
)
//
setTimeout(() => {
//
this.tableLoading = false
//
}, 200)
},
// 明细
handleDetail
(
row
)
{
...
...
dsk-operate-ui/src/views/macro/nationalEconomies/component/zhongbiao.vue
View file @
4c00c164
...
...
@@ -139,69 +139,6 @@ export default {
name
:
'NationalEconomies'
,
data
()
{
return
{
tableData
:[
{
area
:
'1月'
,
number
:
'123'
,
zb
:
'0.19%'
},
{
area
:
'2月'
,
number
:
'156'
,
zb
:
'0.29%'
},
{
area
:
'3月'
,
number
:
'236'
,
zb
:
'0.34%'
},
{
area
:
'4月'
,
number
:
'426'
,
zb
:
'0.34%'
},
{
area
:
'5月'
,
number
:
'412'
,
zb
:
'0.34%'
},
{
area
:
'6月'
,
number
:
'231'
,
zb
:
'0.34%'
},
{
area
:
'7月'
,
number
:
'96'
,
zb
:
'0.34%'
},
{
area
:
'8月'
,
number
:
'105'
,
zb
:
'0.34%'
},
{
area
:
'9月'
,
number
:
'210'
,
zb
:
'0.34%'
},
{
area
:
'10月'
,
number
:
'420'
,
zb
:
'0.34%'
},
{
area
:
'11月'
,
number
:
'213'
,
zb
:
'0.34%'
},
{
area
:
'12月'
,
number
:
'213'
,
zb
:
'0.34%'
},
],
typeIndex
:
0
,
glData
:[],
jzglData
:[],
...
...
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