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
e4f17a5a
Commit
e4f17a5a
authored
Aug 24, 2023
by
yht15023815643
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'dev20230707' of
http://192.168.60.201/root/dsk-operate-sys
into dev20230707
parents
df6fca02
9a49095a
Changes
21
Show whitespace changes
Inline
Side-by-side
Showing
21 changed files
with
786 additions
and
372 deletions
+786
-372
BusinessOverviewController.java
...k/web/controller/business/BusinessOverviewController.java
+8
-0
index.js
dsk-operate-ui/src/api/index.js
+8
-0
index.js
dsk-operate-ui/src/router/index.js
+28
-0
addCustom.vue
dsk-operate-ui/src/views/custom/component/addCustom.vue
+265
-0
index.vue
dsk-operate-ui/src/views/custom/customList/index.vue
+3
-0
index.vue
dsk-operate-ui/src/views/custom/overview/index.vue
+28
-6
index.vue
dsk-operate-ui/src/views/index.vue
+302
-293
region.vue
dsk-operate-ui/src/views/macro/component/region.vue
+22
-3
regionalEconomy.vue
...i/src/views/macro/economies/component/regionalEconomy.vue
+0
-10
index.vue
dsk-operate-ui/src/views/macro/economies/index.vue
+7
-1
index.vue
dsk-operate-ui/src/views/macro/enterprises/index.vue
+2
-11
qgjjdq.vue
...ui/src/views/macro/nationalEconomies/component/qgjjdq.vue
+21
-1
index.vue
dsk-operate-ui/src/views/macro/urban/index.vue
+3
-3
BusinessAnalyzeVo.java
.../com/dsk/system/domain/business/vo/BusinessAnalyzeVo.java
+4
-0
EnterpriseBussinessService.java
...com/dsk/system/dskService/EnterpriseBussinessService.java
+20
-0
EnterpriseService.java
...ain/java/com/dsk/system/dskService/EnterpriseService.java
+18
-18
BusinessInfoMapper.java
...c/main/java/com/dsk/system/mapper/BusinessInfoMapper.java
+2
-0
IBusinessOverviewService.java
...java/com/dsk/system/service/IBusinessOverviewService.java
+2
-0
BusinessOverviewServiceImpl.java
.../dsk/system/service/impl/BusinessOverviewServiceImpl.java
+6
-0
UrbanInvestmentPlatformServiceImpl.java
...stem/service/impl/UrbanInvestmentPlatformServiceImpl.java
+26
-26
BusinessInfoMapper.xml
...src/main/resources/mapper/business/BusinessInfoMapper.xml
+11
-0
No files found.
dsk-admin/src/main/java/com/dsk/web/controller/business/BusinessOverviewController.java
View file @
e4f17a5a
...
@@ -48,6 +48,14 @@ public class BusinessOverviewController extends BaseController {
...
@@ -48,6 +48,14 @@ public class BusinessOverviewController extends BaseController {
return
AjaxResult
.
success
(
baseService
.
typeAnalyze
(
new
BusinessSearchDto
(
SecurityUtils
.
getUserId
(),
status
)));
return
AjaxResult
.
success
(
baseService
.
typeAnalyze
(
new
BusinessSearchDto
(
SecurityUtils
.
getUserId
(),
status
)));
}
}
/**
* 项目类别分析
*/
@GetMapping
(
"/category/analyze/{status}"
)
public
AjaxResult
categoryAnalyze
(
@PathVariable
Integer
status
)
{
return
AjaxResult
.
success
(
baseService
.
categoryAnalyze
(
new
BusinessSearchDto
(
SecurityUtils
.
getUserId
(),
status
)));
}
/**
/**
* 公招项目地区统计
* 公招项目地区统计
*
*
...
...
dsk-operate-ui/src/api/index.js
View file @
e4f17a5a
import
request
from
"@/utils/request"
;
import
request
from
"@/utils/request"
;
// 集团中标统计
export
function
countByCompany
(
data
)
{
return
request
({
url
:
'/index/countByCompany'
,
method
:
'post'
,
data
:
data
})
}
// 企业中标排行榜
// 企业中标排行榜
export
function
bidRank
(
data
)
{
export
function
bidRank
(
data
)
{
return
request
({
return
request
({
...
...
dsk-operate-ui/src/router/index.js
View file @
e4f17a5a
...
@@ -88,6 +88,34 @@ export const constantRoutes = [
...
@@ -88,6 +88,34 @@ export const constantRoutes = [
}
}
]
]
},
},
// {
// path: '',
// component: Layout,
// hidden: true,
// redirect: 'economies',
// children: [
// {
// path: '/macro/economies',
// component: () => import('@/views/macro/economies'),
// name: 'Economies',
// meta: { title: '区域经济', icon: 'macro' }
// }
// ]
// },
{
path
:
''
,
component
:
Layout
,
hidden
:
true
,
redirect
:
'urban'
,
children
:
[
{
path
:
'/macro/urban'
,
component
:
()
=>
import
(
'@/views/macro/urban'
),
name
:
'Urban'
,
meta
:
{
title
:
'城投平台'
,
icon
:
'macro'
}
}
]
},
{
{
path
:
'/user'
,
path
:
'/user'
,
component
:
Layout
,
component
:
Layout
,
...
...
dsk-operate-ui/src/views/custom/component/addCustom.vue
0 → 100644
View file @
e4f17a5a
<
template
>
<div>
<el-dialog
class=
"popups"
:visible
.
sync=
"dialogVisible"
width=
"534px"
:close-on-click-modal=
"false"
@
close=
"resetForm('ruleForm')"
>
<div
class=
"poptitle"
>
<img
src=
"@/assets/images/economies/icon.png"
>
<span>
添加客户
</span>
</div>
<el-form
class=
"popform j"
:model=
"queryParam"
:rules=
"rules"
ref=
"ruleForm"
label-width=
"130px"
>
<el-form-item
label=
"企业名称:"
class=
"row"
prop=
"companyName"
>
<el-input
type=
"text"
placeholder=
"请输入"
v-model=
"queryParam.companyName"
@
input=
"getCompany(1)"
></el-input>
<div
class=
"resultlist infinite-list"
v-if=
"showlist"
id=
"box"
v-infinite-scroll=
"load"
style=
"overflow:auto"
>
<div
class=
"infinite-list-item"
v-for=
"(item,index) in companData"
@
click=
"selCompany(item)"
><span
v-html=
"item.name"
:key=
"companypage"
></span></div>
</div>
</el-form-item>
<el-form-item
label=
"客户等级:"
class=
"row"
>
<el-select
placeholder=
"请选择"
v-model=
"queryParam.customerLevel"
>
<el-option
v-for=
"(item,index) in customerLevel"
:key=
"index"
:label=
"item.dictLabel"
:value=
"item.dictValue"
></el-option>
</el-select>
</el-form-item>
<el-form-item
label=
"法定代表人:"
class=
"row"
>
<el-input
type=
"text"
placeholder=
"请输入"
v-model=
"queryParam.legalPerson"
></el-input>
</el-form-item>
<el-form-item
label=
"注册资本(万):"
class=
"row"
>
<el-input
type=
"text"
placeholder=
"请输入"
v-model=
"queryParam.registerCapital"
@
input=
'number'
></el-input>
</el-form-item>
<el-form-item
label=
"企业注册地:"
class=
"row"
>
<el-cascader
:props=
"props"
@
change=
"getAddr($event)"
ref=
"address"
v-model=
"queryParam.address"
:options=
"addressList"
clearable
></el-cascader>
</el-form-item>
<el-form-item
label=
"统一社会信用代码:"
class=
"row"
>
<el-input
type=
"text"
placeholder=
"请输入"
v-model=
"queryParam.creditCode"
></el-input>
</el-form-item>
<div
class=
"popbot"
>
<div
class=
"wordprimary"
@
click=
"toct"
>
前往城投平台寻找客户线索>
</div>
<div
class=
"btn btn_cancel h32"
@
click=
"resetForm('ruleForm')"
>
返回
</div>
<div
class=
"btn btn_primary h32"
@
click=
"submitForm('ruleForm')"
>
添加
</div>
</div>
</el-form>
</el-dialog>
</div>
</
template
>
<
script
>
import
{
getDictType
,
getEnterprise
}
from
'@/api/main'
import
{
addCustomer
,
getCustomerList
,
importData
}
from
'@/api/custom/custom'
import
prvinceTree
from
'@/assets/json/provinceTree'
export
default
{
name
:
''
,
components
:
{
},
props
:
{
data
:{}
},
data
()
{
return
{
props
:{
checkStrictly
:
true
,
expandTrigger
:
'hover'
},
dialogVisible
:
this
.
data
.
open
,
//添加客户
queryParam
:{
companyId
:
''
,
//jsk企业id
companyName
:
''
,
//客户名称(企业名称
customerLevel
:
''
,
//客户等级
legalPerson
:
''
,
//法定代表人
registerCapital
:
''
,
//注册资本
registerAddress
:
''
,
//企业注册地址
creditCode
:
''
,
//社会统一信用代码
address
:
''
,
//选择的地址
provinceId
:
''
,
cityId
:
''
,
districtId
:
''
,
},
rules
:{
companyName
:[{
required
:
true
,
message
:
'请输入非空格字符!'
,
trigger
:
'blur'
},]
},
showlist
:
false
,
customerLevel
:[]
}
},
created
()
{
this
.
prvinceTree
()
this
.
getDictType
()
console
.
log
(
this
.
dialogVisible
)
console
.
log
(
'1111111111'
)
},
computed
:
{},
methods
:{
async
prvinceTree
()
{
this
.
addressList
=
prvinceTree
;
this
.
getadd
(
this
.
addressList
)
},
getDictType
(){
//获取客户等级
getDictType
(
'customer_level_type'
).
then
(
result
=>
{
this
.
customerLevel
=
result
.
code
==
200
?
result
.
data
:[]
})
},
open
()
{
// this.dialogVisible = true;
},
resetForm
(
formName
)
{
this
.
queryParam
=
{
companyId
:
''
,
//jsk企业id
companyName
:
''
,
//客户名称(企业名称
customerLevel
:
''
,
//客户等级
legalPerson
:
''
,
//法定代表人
registerCapital
:
''
,
//注册资本
registerAddress
:
''
,
//企业注册地址
creditCode
:
''
,
//社会统一信用代码
address
:
''
,
//选择的地址
provinceId
:
''
,
cityId
:
''
,
districtId
:
''
,
},
this
.
dialogVisible
=
false
this
.
showlist
=
false
},
getAddr
(
obj
){
if
(
obj
.
length
==
0
){
this
.
queryParam
.
provinceId
=
''
this
.
queryParam
.
cityId
=
''
this
.
queryParam
.
districtId
=
''
return
false
}
let
labelString
=
this
.
$refs
.
address
.
getCheckedNodes
()[
0
].
pathLabels
.
join
(
"-"
);
this
.
queryParam
.
registerAddress
=
labelString
this
.
queryParam
.
provinceId
=
obj
[
0
]
this
.
queryParam
.
cityId
=
obj
.
length
>=
1
?
obj
[
1
]:
''
this
.
queryParam
.
districtId
=
obj
.
length
>=
2
?
obj
[
2
]:
''
},
//获取建设库客户
getCompany
(
value
){
this
.
queryParam
.
companyId
=
null
if
(
value
==
1
){
this
.
companData
=
[]
this
.
companypage
=
1
}
if
(
this
.
queryParam
.
companyName
.
length
>=
2
){
let
param
=
{
keyword
:
this
.
queryParam
.
companyName
,
page
:{
limit
:
20
,
page
:
this
.
companypage
}
}
getEnterprise
(
JSON
.
stringify
(
param
)).
then
(
result
=>
{
if
(
result
.
code
!=
200
){
return
false
}
if
(
result
.
data
.
list
!=
null
&&
result
.
data
.
list
.
length
>
0
){
this
.
isscroll
=
true
if
(
this
.
companData
.
length
===
0
)
{
this
.
companData
=
result
.
data
.
list
}
else
{
let
arr2
=
result
.
data
.
list
arr2
.
unshift
(
2
,
0
);
Array
.
prototype
.
splice
.
apply
(
this
.
companData
,
arr2
);
}
if
(
this
.
companData
.
length
===
0
)
{
this
.
showlist
=
false
}
else
{
this
.
showlist
=
true
}
this
.
companypage
+=
1
}
else
{
this
.
isscroll
=
false
}
})
}
},
load
(){
if
(
this
.
isscroll
){
this
.
getCompany
(
2
)
}
},
selCompany
(
item
){
this
.
queryParam
.
companyId
=
item
.
jskEid
this
.
queryParam
.
companyName
=
item
.
name
.
replace
(
/<
[^
>
]
+>/g
,
''
)
this
.
queryParam
.
legalPerson
=
item
.
legalPerson
let
registeredCapitalStr
=
""
if
(
item
.
registeredCapitalStr
==
"0"
||
item
.
registeredCapitalStr
==
0
){
registeredCapitalStr
=
''
}
else
{
registeredCapitalStr
=
item
.
registeredCapitalStr
}
this
.
queryParam
.
registerCapital
=
registeredCapitalStr
this
.
queryParam
.
creditCode
=
item
.
creditCode
this
.
queryParam
.
provinceId
=
item
.
provinceId
this
.
queryParam
.
cityId
=
item
.
cityId
this
.
queryParam
.
districtId
=
item
.
cityId
let
list
=
[]
if
(
item
.
provinceId
!=
null
&&
item
.
provinceId
!=
""
)
list
.
push
(
item
.
provinceId
)
if
(
item
.
cityId
!=
null
&&
item
.
cityId
!=
""
)
list
.
push
(
item
.
cityId
)
if
(
item
.
districtId
!=
null
&&
item
.
districtId
!=
""
)
list
.
push
(
item
.
districtId
)
this
.
$nextTick
(()
=>
{
this
.
queryParam
.
address
=
list
let
_this
=
this
setTimeout
(
function
()
{
if
(
_this
.
$refs
.
address
){
_this
.
queryParam
.
registerAddress
=
_this
.
$refs
.
address
.
getCheckedNodes
()[
0
].
pathLabels
.
join
(
"-"
)
}
},
1000
)
})
this
.
showlist
=
false
},
//添加客户
submitForm
(
formName
)
{
// if(this.queryParam.companyId=="" || this.queryParam.companyId == null){
// this.$message.error({message:'请选择企业!',showClose:true})
//
// return;
// }
this
.
$refs
[
formName
].
validate
((
valid
)
=>
{
if
(
valid
)
{
addCustomer
(
this
.
queryParam
).
then
(
result
=>
{
if
(
result
.
code
==
200
){
this
.
$message
.
success
(
'添加成功!'
)
this
.
dialogVisible
=
false
this
.
resetForm
(
'ruleForm'
)
}
else
{
this
.
$message
.
error
(
result
.
msg
)
}
})
}
else
{
}
});
},
toct
(){
this
.
$router
.
push
({
path
:
'/macro/urban'
})
},
//输入数字
number
(
value
){
if
(
value
==
''
)
this
.
queryParam
.
registerCapital
=
value
else
this
.
queryParam
.
registerCapital
=
value
.
replace
(
/^
\D
*
(\d
*
(?:\.\d{0,6})?)
.*$/g
,
'$1'
)
//输入6位小数
},
//处理注册地数据
getadd
(
row
)
{
this
.
addrcallback
(
row
,
this
.
getadd
)
},
addrcallback
(
row
,
callback
){
if
(
row
){
row
.
forEach
(
item
=>
{
item
.
value
=
item
.
id
callback
&&
callback
(
item
.
children
)
})
}
},
},
}
</
script
>
<
style
scoped
>
</
style
>
dsk-operate-ui/src/views/custom/customList/index.vue
View file @
e4f17a5a
...
@@ -366,6 +366,9 @@
...
@@ -366,6 +366,9 @@
}
}
},
},
created
()
{
created
()
{
if
(
this
.
$route
.
query
.
key
){
this
.
searchParam
.
companyName
=
this
.
$route
.
query
.
key
;
}
if
(
this
.
$route
.
query
.
type
===
'1'
){
if
(
this
.
$route
.
query
.
type
===
'1'
){
this
.
searchParam
.
companyNatures
=
[
'国有企业'
]
this
.
searchParam
.
companyNatures
=
[
'国有企业'
]
}
}
...
...
dsk-operate-ui/src/views/custom/overview/index.vue
View file @
e4f17a5a
...
@@ -39,11 +39,11 @@
...
@@ -39,11 +39,11 @@
<el-col
:span=
"6"
>
<el-col
:span=
"6"
>
<div
class=
"search"
>
<div
class=
"search"
>
<div
class=
"head_title"
>
快速查找
</div>
<div
class=
"head_title"
>
快速查找
</div>
<el-input
placeholder=
"输入企业名称查询"
>
<el-input
placeholder=
"输入企业名称查询"
v-model=
"key"
>
<i
slot=
"prefix"
class=
"el-icon-search"
></i>
<i
slot=
"prefix"
class=
"el-icon-search"
></i>
<el-button
slot=
"append"
>
搜索
</el-button>
<el-button
slot=
"append"
@
click=
"handleSearch"
>
搜索
</el-button>
</el-input>
</el-input>
<div
class=
"search_btn"
><i
class=
"el-icon-plus"
></i>
新建项目
</div>
<div
class=
"search_btn"
@
click=
"handleAdd"
><i
class=
"el-icon-plus"
></i>
新建项目
</div>
</div>
</div>
</el-col>
</el-col>
</el-row>
</el-row>
...
@@ -175,6 +175,7 @@
...
@@ -175,6 +175,7 @@
</div>
</div>
</div>
</div>
</div>
</div>
<AddCustom
:data=
"data"
v-if=
"data.open"
></AddCustom>
</div>
</div>
</template>
</template>
...
@@ -183,13 +184,17 @@
...
@@ -183,13 +184,17 @@
import
*
as
echarts
from
'echarts'
import
*
as
echarts
from
'echarts'
import
{
encodeStr
}
from
"@/assets/js/common"
import
{
encodeStr
}
from
"@/assets/js/common"
import
{
statistics
,
cooperationTop
,
creditLevel
,
getFollowList
}
from
'@/api/custom/custom'
import
{
statistics
,
cooperationTop
,
creditLevel
,
getFollowList
}
from
'@/api/custom/custom'
import
AddCustom
from
'../component/addCustom'
export
default
{
export
default
{
name
:
'Overview'
,
name
:
'Overview'
,
components
:
{
AddCustom
},
data
()
{
data
()
{
return
{
return
{
encodeStr
,
encodeStr
,
activeName
:
'first'
,
activeName
:
'first'
,
key
:
''
,
statistics
:{},
statistics
:{},
hzqkList
:[],
hzqkList
:[],
creditLevel
:[],
creditLevel
:[],
...
@@ -209,6 +214,9 @@
...
@@ -209,6 +214,9 @@
params
:{
params
:{
startTime
:
''
,
startTime
:
''
,
endTime
:
''
endTime
:
''
},
data
:{
open
:
false
}
}
}
}
},
},
...
@@ -234,7 +242,6 @@
...
@@ -234,7 +242,6 @@
methods
:
{
methods
:
{
getData
(){
getData
(){
statistics
().
then
(
res
=>
{
statistics
().
then
(
res
=>
{
console
.
log
(
res
.
data
)
this
.
statistics
=
res
.
data
;
this
.
statistics
=
res
.
data
;
})
})
cooperationTop
().
then
(
res
=>
{
cooperationTop
().
then
(
res
=>
{
...
@@ -246,7 +253,9 @@
...
@@ -246,7 +253,9 @@
list
.
push
(
res
.
data
[
i
])
list
.
push
(
res
.
data
[
i
])
}
}
}
}
if
(
list
.
length
>
0
){
this
.
initChart
(
list
)
this
.
initChart
(
list
)
}
})
})
creditLevel
().
then
(
res
=>
{
creditLevel
().
then
(
res
=>
{
for
(
let
i
=
0
;
i
<
res
.
data
.
length
;
i
++
){
for
(
let
i
=
0
;
i
<
res
.
data
.
length
;
i
++
){
...
@@ -286,6 +295,7 @@
...
@@ -286,6 +295,7 @@
},
10
)
},
10
)
},
},
initChart
(
data
){
initChart
(
data
){
//业主单位合作情况
//业主单位合作情况
this
.
option
=
{
this
.
option
=
{
legend
:
{
legend
:
{
...
@@ -507,6 +517,17 @@
...
@@ -507,6 +517,17 @@
this
.
getFollowList
()
this
.
getFollowList
()
}
}
},
},
handleSearch
(){
this
.
$router
.
push
({
path
:
'/custom/customList'
,
query
:{
key
:
this
.
key
}
})
},
handleAdd
(){
this
.
data
.
open
=
true
},
}
}
}
}
</
script
>
</
script
>
...
@@ -626,6 +647,7 @@
...
@@ -626,6 +647,7 @@
color
:
#FFFFFF
;
color
:
#FFFFFF
;
font-size
:
14px
;
font-size
:
14px
;
margin-top
:
12px
;
margin-top
:
12px
;
cursor
:
pointer
;
i
{
i
{
margin-right
:
12px
;
margin-right
:
12px
;
}
}
...
...
dsk-operate-ui/src/views/index.vue
View file @
e4f17a5a
...
@@ -57,7 +57,8 @@
...
@@ -57,7 +57,8 @@
<span
class=
"common-title"
>
集团中标统计
</span>
<span
class=
"common-title"
>
集团中标统计
</span>
</div>
</div>
</div>
</div>
<el-row>
<skeleton
v-if=
"isSkeleton"
style=
"padding: 16px"
></skeleton>
<el-row
v-if=
"!isSkeleton"
>
<el-col
:span=
"14"
>
<el-col
:span=
"14"
>
<div
id=
"zbtj-echarts"
style=
"height: 300px;"
></div>
<div
id=
"zbtj-echarts"
style=
"height: 300px;"
></div>
</el-col>
</el-col>
...
@@ -65,12 +66,12 @@
...
@@ -65,12 +66,12 @@
<div
class=
"search"
>
<div
class=
"search"
>
<el-form
ref=
"queryForm"
:model=
"queryParams"
:inline=
"true"
size=
"small"
>
<el-form
ref=
"queryForm"
:model=
"queryParams"
:inline=
"true"
size=
"small"
>
<el-form-item
prop=
"address"
>
<el-form-item
prop=
"address"
>
<el-select
v-model=
"queryParams.address"
placeholder=
"项目地区"
style=
"width: 150px;"
>
<el-select
v-model=
"queryParams.address"
@
change=
"changeSelect1"
clearable
placeholder=
"项目地区"
style=
"width: 150px;"
>
<el-option
v-for=
"(item,index) in addressList"
:key=
"index"
:label=
"item.label"
:value=
"item.
value
"
></el-option>
<el-option
v-for=
"(item,index) in addressList"
:key=
"index"
:label=
"item.label"
:value=
"item.
id
"
></el-option>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
<el-form-item
prop=
"type"
>
<el-form-item
prop=
"type"
>
<el-select
v-model=
"queryParams.type"
multiple
collapse-tags
clearable
placeholder=
"项目类型"
:class=
"queryParams.type.length > 1 ? 'selectTag' : ''"
style=
"width: 170px;"
>
<el-select
v-model=
"queryParams.type"
@
change=
"changeSelect1"
multiple
collapse-tags
clearable
placeholder=
"项目类型"
:class=
"queryParams.type.length > 1 ? 'selectTag' : ''"
style=
"width: 170px;"
>
<el-option
v-for=
"(item,index) in projectType"
:key=
"index"
:label=
"item"
:value=
"item"
></el-option>
<el-option
v-for=
"(item,index) in projectType"
:key=
"index"
:label=
"item"
:value=
"item"
></el-option>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
...
@@ -79,21 +80,25 @@
...
@@ -79,21 +80,25 @@
:timeList=
"timeList"
:timeList=
"timeList"
v-model=
"queryParams.time"
v-model=
"queryParams.time"
placeholder=
"中标日期"
placeholder=
"中标日期"
@
handle-search=
"changeSelect"
/>
@
handle-search=
"changeSelect
1
"
/>
</el-form-item>
</el-form-item>
</el-form>
</el-form>
</div>
</div>
<div
class=
"box-right"
>
<div
class=
"box-right"
>
<el-table
<el-table
:data=
"jtList"
:data=
"jt
zb
List"
border
border
max-height=
"250"
max-height=
"250"
fit
fit
highlight-current-row
highlight-current-row
>
>
<el-table-column
prop=
"name"
label=
"集团名称"
width=
"120"
/>
<el-table-column
prop=
"combineName"
label=
"集团名称"
>
<el-table-column
prop=
"count"
label=
"中标数量(个)"
align=
"right"
sortable
/>
<template
slot-scope=
"scope"
>
<el-table-column
prop=
"amount"
label=
"中标金额(万元)"
align=
"right"
sortable
/>
<router-link
:to=
"`/groupAccount/$
{scope.row.combineId}?name=${scope.row.combineName}`" tag="a" class="a-link">
{{
scope
.
row
.
combineName
}}
</router-link>
</
template
>
</el-table-column>
<el-table-column
prop=
"count"
label=
"中标数量(个)"
align=
"right"
sortable
width=
"150"
/>
<el-table-column
prop=
"money"
label=
"中标金额(万元)"
align=
"right"
sortable
/>
</el-table>
</el-table>
</div>
</div>
</el-col>
</el-col>
...
@@ -117,15 +122,15 @@
...
@@ -117,15 +122,15 @@
:moneyList=
"moneyList"
:moneyList=
"moneyList"
v-model=
"queryParams1.money"
v-model=
"queryParams1.money"
placeholder=
"中标金额"
placeholder=
"中标金额"
@
handle-search=
"changeSelect"
/>
@
handle-search=
"changeSelect
2
"
/>
</el-form-item>
</el-form-item>
<el-form-item
prop=
"address"
>
<el-form-item
prop=
"address"
>
<el-select
v-model=
"queryParams1.address"
placeholder=
"项目地区"
style=
"width: 150px;"
>
<el-select
v-model=
"queryParams1.address"
@
change=
"changeSelect2"
clearable
placeholder=
"项目地区"
style=
"width: 150px;"
>
<el-option
v-for=
"(item,index) in addressList"
:key=
"index"
:label=
"item.label"
:value=
"item.
value
"
></el-option>
<el-option
v-for=
"(item,index) in addressList"
:key=
"index"
:label=
"item.label"
:value=
"item.
id
"
></el-option>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
<el-form-item
prop=
"type"
>
<el-form-item
prop=
"type"
>
<el-select
v-model=
"queryParams1.type"
multiple
collapse-tags
clearable
placeholder=
"项目类型"
:class=
"queryParams1.type.length > 1 ? 'selectTag' : ''"
style=
"width: 170px;"
>
<el-select
v-model=
"queryParams1.type"
multiple
collapse-tags
@
change=
"changeSelect2"
clearable
placeholder=
"项目类型"
:class=
"queryParams1.type.length > 1 ? 'selectTag' : ''"
style=
"width: 170px;"
>
<el-option
v-for=
"(item,index) in projectType"
:key=
"index"
:label=
"item"
:value=
"item"
></el-option>
<el-option
v-for=
"(item,index) in projectType"
:key=
"index"
:label=
"item"
:value=
"item"
></el-option>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
...
@@ -134,21 +139,26 @@
...
@@ -134,21 +139,26 @@
:timeList=
"timeList"
:timeList=
"timeList"
v-model=
"queryParams1.time"
v-model=
"queryParams1.time"
placeholder=
"中标日期"
placeholder=
"中标日期"
@
handle-search=
"changeSelect"
/>
@
handle-search=
"changeSelect
2
"
/>
</el-form-item>
</el-form-item>
</el-form>
</el-form>
</div>
</div>
<div
class=
"box-right"
>
<div
class=
"box-right"
>
<el-table
<el-table
:data=
"
jt
List"
:data=
"
dxmb
List"
border
border
max-height=
"400"
max-height=
"400"
fit
fit
highlight-current-row
highlight-current-row
>
>
<el-table-column
prop=
"name"
label=
"企业名称"
width=
"120"
/>
<el-table-column
prop=
"companyName"
label=
"企业名称"
>
<el-table-column
prop=
"count"
label=
"中标数量(个)"
align=
"right"
sortable
/>
<
template
slot-scope=
"scope"
>
<el-table-column
prop=
"amount"
label=
"中标金额(万元)"
align=
"right"
sortable
/>
<router-link
v-if=
"scope.row.companyId"
:to=
"`/enterprise/$
{encodeStr(scope.row.companyId)}`" tag="a" class="a-link companyName" v-html="scope.row.companyName" >
</router-link>
<span
v-else
>
{{
scope
.
row
.
companyName
}}
</span>
</
template
>
</el-table-column>
<el-table-column
prop=
"count"
label=
"中标数量(个)"
align=
"right"
sortable
width=
"150"
/>
<el-table-column
prop=
"money"
label=
"中标金额(万元)"
align=
"right"
sortable
/>
</el-table>
</el-table>
</div>
</div>
</el-col>
</el-col>
...
@@ -160,15 +170,15 @@
...
@@ -160,15 +170,15 @@
<skeleton
v-if=
"zxzbIsSkeleton"
style=
"padding: 16px"
></skeleton>
<skeleton
v-if=
"zxzbIsSkeleton"
style=
"padding: 16px"
></skeleton>
<div
class=
"list"
v-if=
"!zxzbIsSkeleton"
>
<div
class=
"list"
v-if=
"!zxzbIsSkeleton"
>
<div
class=
"item"
v-for=
"(item,index) in projectList"
:key=
"index"
>
<div
class=
"item"
v-for=
"(item,index) in projectList"
:key=
"index"
>
<p
class=
"list-title"
><router-link
:to=
"`/biddetail/$
{item.id}`" tag="a" class="a-link" v-if="item.id" v-html="item.projectName">
</router-link></p>
<p
class=
"list-title"
><router-link
:to=
"`/biddetail/${item.id}`"
tag=
"a"
class=
"a-link"
v-if=
"item.
p
id"
v-html=
"item.projectName"
></router-link></p>
<div
class=
"list-content"
>
<div
class=
"list-content"
>
<p
class=
"list-content-text"
>
<p
class=
"list-content-text"
>
<span>
中标企业:
</span>
<span>
中标企业:
</span>
<span>
{{
item
.
companyN
ame
||
'--'
}}
</span>
<span>
{{item.
en
ame || '--'}}
</span>
</p>
</p>
<p
class=
"list-content-text"
>
<p
class=
"list-content-text"
>
<span>
中标金额:
</span>
<span>
中标金额:
</span>
<span>
{{
item
.
a
mount
}}
万元
</span>
<span>
{{item.
winBidA
mount}}万元
</span>
</p>
</p>
<p
class=
"list-content-text"
>
<p
class=
"list-content-text"
>
<span>
中标日期:
</span>
<span>
中标日期:
</span>
...
@@ -176,7 +186,7 @@
...
@@ -176,7 +186,7 @@
</p>
</p>
<p
class=
"list-content-text"
>
<p
class=
"list-content-text"
>
<span>
招标人:
</span>
<span>
招标人:
</span>
<span>
{{
item
.
projectUnit
||
'--'
}}
</span>
<span>
{{item.
buildCorpName
|| '--'}}
</span>
</p>
</p>
</div>
</div>
</div>
</div>
...
@@ -189,19 +199,19 @@
...
@@ -189,19 +199,19 @@
<skeleton
v-if=
"zhaobiaoIsSkeleton"
style=
"padding: 16px"
></skeleton>
<skeleton
v-if=
"zhaobiaoIsSkeleton"
style=
"padding: 16px"
></skeleton>
<div
v-if=
"!zhaobiaoIsSkeleton"
class=
"list"
>
<div
v-if=
"!zhaobiaoIsSkeleton"
class=
"list"
>
<div
class=
"item"
v-for=
"(item,index) in zbList"
:key=
"index"
>
<div
class=
"item"
v-for=
"(item,index) in zbList"
:key=
"index"
>
<p
class=
"list-title"
><router-link
:to=
"`/biddetail/$
{item.
bid}`" tag="a" class="a-link" v-if="item.b
id" v-html="item.projectName">
</router-link></p>
<p
class=
"list-title"
><router-link
:to=
"`/biddetail/${item.
id}`"
tag=
"a"
class=
"a-link"
v-if=
"item.
id"
v-html=
"item.projectName"
></router-link></p>
<div
class=
"list-content"
>
<div
class=
"list-content"
>
<p
class=
"list-content-text"
>
<p
class=
"list-content-text"
>
<span>
总投资:
</span>
<span>
总投资:
</span>
<span>
{{
item
.
projectAmount
}}
万元
</span>
<span>
{{item.
bidMoney
}}万元
</span>
</p>
</p>
<p
class=
"list-content-text"
>
<p
class=
"list-content-text"
>
<span>
招标人:
</span>
<span>
招标人:
</span>
<span>
{{
item
.
tendere
e
||
'--'
}}
</span>
<span>
{{item.
companyNam
e || '--'}}
</span>
</p>
</p>
<p
class=
"list-content-text"
>
<p
class=
"list-content-text"
>
<span>
发布日期:
</span>
<span>
发布日期:
</span>
<span>
{{
item
.
issueTim
e
||
'--'
}}
</span>
<span>
{{item.
punishDat
e || '--'}}
</span>
</p>
</p>
</div>
</div>
</div>
</div>
...
@@ -221,7 +231,7 @@
...
@@ -221,7 +231,7 @@
@
handle-search=
"changeSelect3"
/>
@
handle-search=
"changeSelect3"
/>
</el-form-item>
</el-form-item>
<el-form-item
prop=
"provinceId"
>
<el-form-item
prop=
"provinceId"
>
<el-select
v-model=
"queryParams2.provinceId"
@
change=
"changeSelect3"
placeholder=
"项目地区"
style=
"width: 150px;"
>
<el-select
v-model=
"queryParams2.provinceId"
@
change=
"changeSelect3"
clearable
placeholder=
"项目地区"
style=
"width: 150px;"
>
<el-option
v-for=
"(item,index) in addressList"
:key=
"index"
:label=
"item.label"
:value=
"item.id"
></el-option>
<el-option
v-for=
"(item,index) in addressList"
:key=
"index"
:label=
"item.label"
:value=
"item.id"
></el-option>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
...
@@ -439,12 +449,13 @@
...
@@ -439,12 +449,13 @@
<
script
>
<
script
>
import
*
as
echarts
from
'echarts'
;
import
*
as
echarts
from
'echarts'
;
import
{
encodeStr
}
from
"@/assets/js/common.js"
import
dataRegion
from
'@/assets/json/dataRegion'
import
dataRegion
from
'@/assets/json/dataRegion'
import
"@/assets/styles/public.css"
;
import
"@/assets/styles/public.css"
;
import
CustomTimeSelect
from
'./component/CustomTimeSelect'
import
CustomTimeSelect
from
'./component/CustomTimeSelect'
import
CustomMoneySelect
from
'./component/CustomMoneySelect'
import
CustomMoneySelect
from
'./component/CustomMoneySelect'
import
skeleton
from
'./component/skeleton'
import
skeleton
from
'./component/skeleton'
import
{
bidRank
,
bigWinningBidsPage
,
bigBidPage
}
from
'@/api/index'
import
{
countByCompany
,
bidRank
,
bigWinningBidsPage
,
bigBidPage
}
from
'@/api/index'
import
api
from
'@/api/radar/radar.js'
;
import
api
from
'@/api/radar/radar.js'
;
export
default
{
export
default
{
name
:
"Index"
,
name
:
"Index"
,
...
@@ -453,6 +464,7 @@ export default {
...
@@ -453,6 +464,7 @@ export default {
},
},
data
()
{
data
()
{
return
{
return
{
encodeStr
,
// 版本号
// 版本号
version
:
"3.8.5"
,
version
:
"3.8.5"
,
gjjlData
:[
gjjlData
:[
...
@@ -620,72 +632,20 @@ export default {
...
@@ -620,72 +632,20 @@ export default {
main
:
'发布招标公告 重庆轨道交通环线鹅公岩轨道专用桥增设防船撞设施项目,项目地区是重庆市-江北区,项目类型为工程建设。'
main
:
'发布招标公告 重庆轨道交通环线鹅公岩轨道专用桥增设防船撞设施项目,项目地区是重庆市-江北区,项目类型为工程建设。'
},
},
],
],
jtList
:[
jtzbList
:[],
{
dxmbList
:[],
name
:
'中交集团'
,
count
:
'24534'
,
amount
:
'23011'
},
{
name
:
'中建集团'
,
count
:
'11534'
,
amount
:
'22331'
},
{
name
:
'中冶集团'
,
count
:
'15534'
,
amount
:
'20231'
},
{
name
:
'中国铁路'
,
count
:
'6534'
,
amount
:
'11231'
},
{
name
:
'中国水利'
,
count
:
'9534'
,
amount
:
'4231'
},
{
name
:
'中建集团'
,
count
:
'14534'
,
amount
:
'23231'
},
{
name
:
'中建集团'
,
count
:
'24534'
,
amount
:
'15231'
},
{
name
:
'中国水利'
,
count
:
'2334'
,
amount
:
'5231'
},
{
name
:
'中建集团'
,
count
:
'2534'
,
amount
:
'8231'
},
{
name
:
'中交集团'
,
count
:
'2334'
,
amount
:
'9231'
},
],
addressList
:[],
addressList
:[],
projectType
:[],
//项目类型
projectType
:[],
//项目类型
queryParams
:{
queryParams
:{
address
:
''
,
address
:
''
,
type
:[],
type
:[],
time
:
''
,
time
:
''
,
money
:
''
,
},
},
queryParams1
:{
queryParams1
:{
address
:
''
,
address
:
''
,
type
:[],
type
:[],
money
:
''
,
money
:
''
,
time
:
''
,
time
:
''
,
sort
:
1
},
},
queryParams2
:{
queryParams2
:{
provinceId
:
''
,
provinceId
:
''
,
...
@@ -702,6 +662,7 @@ export default {
...
@@ -702,6 +662,7 @@ export default {
zbList
:[],
zbList
:[],
totalCount
:
0
,
totalCount
:
0
,
zbTableTotal
:
0
,
zbTableTotal
:
0
,
isSkeleton
:
true
,
zxzbIsSkeleton
:
true
,
zxzbIsSkeleton
:
true
,
zhaobiaoIsSkeleton
:
true
,
zhaobiaoIsSkeleton
:
true
,
};
};
...
@@ -709,14 +670,12 @@ export default {
...
@@ -709,14 +670,12 @@ export default {
created
()
{
created
()
{
this
.
searchDic
()
this
.
searchDic
()
this
.
dataRegion
()
this
.
dataRegion
()
this
.
getWinningBidsRanking
()
this
.
$nextTick
(()
=>
{
this
.
getCountByCompany
()
this
.
getBidRank
()
this
.
getBigWinningBidsPage
()
this
.
getBigWinningBidsPage
()
if
(
this
.
user
===
1
){
this
.
getBigBidPage
()
this
.
$nextTick
(()
=>
{
this
.
initChart
(
this
.
jtList
)
this
.
initChart1
()
})
})
}
},
},
methods
:
{
methods
:
{
//项目类型
//项目类型
...
@@ -725,69 +684,116 @@ export default {
...
@@ -725,69 +684,116 @@ export default {
this
.
projectType
=
res
.
projectType
;
this
.
projectType
=
res
.
projectType
;
}).
catch
(
error
=>
{});
}).
catch
(
error
=>
{});
},
},
getWinningBidsRanking
(){
getCountByCompany
(){
let
params
=
this
.
queryParams
;
let
params
=
{};
if
(
params
.
time
){
if
(
this
.
queryParams
.
time
.
length
>
1
){
params
.
startDate
=
params
.
time
[
0
]
params
.
startDate
=
this
.
queryParams
.
time
[
0
]
params
.
endDate
=
params
.
time
[
1
]
params
.
endDate
=
this
.
queryParams
.
time
[
1
]
}
if
(
this
.
queryParams
.
type
.
length
>
1
){
params
.
type
=
this
.
queryParams
.
type
.
join
()
}
if
(
this
.
queryParams
.
address
){
params
.
provinceId
=
this
.
queryParams
.
address
}
countByCompany
(
params
).
then
(
res
=>
{
this
.
isSkeleton
=
false
;
if
(
res
.
code
==
200
){
this
.
jtzbList
=
res
.
data
;
// if()
this
.
initChart
(
this
.
jtzbList
)
}
})
},
getBidRank
(){
let
params
=
{};
if
(
this
.
queryParams1
.
time
.
length
>
1
){
params
.
startDate
=
this
.
queryParams1
.
time
[
0
]
params
.
endDate
=
this
.
queryParams1
.
time
[
1
]
}
if
(
this
.
queryParams1
.
type
.
length
>
1
){
params
.
type
=
this
.
queryParams1
.
type
.
join
()
}
if
(
this
.
queryParams1
.
address
){
params
.
provinceId
=
this
.
queryParams1
.
address
}
if
(
this
.
queryParams1
.
money
){
if
(
this
.
queryParams1
.
money
.
length
>
1
){
params
.
endMoney
=
this
.
queryParams1
.
money
[
1
]
}
else
{
params
.
startMoney
=
this
.
queryParams1
.
money
[
0
]
}
}
}
delete
params
.
time
delete
params
.
amount
console
.
log
(
params
)
bidRank
(
params
).
then
(
res
=>
{
bidRank
(
params
).
then
(
res
=>
{
console
.
log
(
res
.
rows
)
if
(
res
.
code
==
200
){
// this.zxzbIsSkeleton=false
;
this
.
dxmbList
=
res
.
data
;
// if(res.code == 20
0){
if
(
this
.
dxmbList
.
length
>
0
){
// this.projectList=res.rows;
this
.
initChart1
(
this
.
dxmbList
)
// this.totalCount=res.total;
}
//
}
}
})
})
},
},
getBigWinningBidsPage
(){
getBigWinningBidsPage
(){
let
params
=
this
.
queryParams2
;
let
params
=
{};
if
(
params
.
amount
){
let
recentlyBidQueryDto
=
{};
if
(
params
.
amount
.
length
>
1
){
params
.
pageNum
=
this
.
queryParams2
.
pageNum
;
params
.
amountEnd
=
params
.
amount
[
1
]
params
.
pageSize
=
this
.
queryParams2
.
pageSize
;
if
(
this
.
amount
){
if
(
this
.
amount
.
length
>
1
){
recentlyBidQueryDto
.
endMoney
=
this
.
amount
[
1
]
}
else
{
}
else
{
params
.
amountStart
=
param
s
.
amount
[
0
]
recentlyBidQueryDto
.
startMoney
=
thi
s
.
amount
[
0
]
}
}
}
}
if
(
params
.
time
){
if
(
this
.
queryParams2
.
time
){
params
.
timeStart
=
params
.
time
[
0
]
recentlyBidQueryDto
.
startTenderTime
=
this
.
queryParams2
.
time
[
0
]
params
.
timeEnd
=
params
.
time
[
1
]
recentlyBidQueryDto
.
endTenderTime
=
this
.
queryParams2
.
time
[
1
]
}
}
delete
params
.
time
if
(
this
.
queryParams2
.
provinceId
){
delete
params
.
amount
recentlyBidQueryDto
.
province
=
this
.
queryParams2
.
provinceId
}
if
(
this
.
queryParams2
.
projects
){
recentlyBidQueryDto
.
projectTypeNew
=
this
.
queryParams2
.
projects
.
join
()
}
params
.
recentlyBidQueryDto
=
recentlyBidQueryDto
this
.
zxzbIsSkeleton
=
true
this
.
zxzbIsSkeleton
=
true
bigWinningBidsPage
(
params
).
then
(
res
=>
{
bigWinningBidsPage
(
params
).
then
(
res
=>
{
this
.
zxzbIsSkeleton
=
false
;
this
.
zxzbIsSkeleton
=
false
;
if
(
res
.
code
==
200
){
if
(
res
.
code
==
200
){
this
.
projectList
=
res
.
rows
;
this
.
projectList
=
res
.
data
.
list
;
this
.
totalCount
=
res
.
total
;
this
.
totalCount
=
res
.
data
.
total
;
}
}
})
})
},
},
getBigBidPage
(){
getBigBidPage
(){
let
params
=
this
.
queryParams2
;
let
params
=
{};
if
(
params
.
amount
){
let
jskBidQueryDto
=
{};
if
(
params
.
amount
.
length
>
1
){
params
.
pageNum
=
this
.
queryParams2
.
pageNum
;
params
.
amountEnd
=
params
.
amount
[
1
]
params
.
pageSize
=
this
.
queryParams2
.
pageSize
;
if
(
this
.
amount
){
if
(
this
.
amount
.
length
>
1
){
jskBidQueryDto
.
endBidMoney
=
this
.
amount
[
1
]
}
else
{
}
else
{
params
.
amountStart
=
params
.
amount
[
0
]
jskBidQueryDto
.
startBidMoney
=
this
.
amount
[
0
]
}
}
}
if
(
this
.
queryParams2
.
time
){
jskBidQueryDto
.
startPunishDate
=
this
.
queryParams2
.
time
[
0
]
jskBidQueryDto
.
endPunishDate
=
this
.
queryParams2
.
time
[
1
]
}
}
if
(
params
.
time
){
if
(
this
.
queryParams2
.
provinceId
){
params
.
timeStart
=
params
.
time
[
0
]
jskBidQueryDto
.
province
=
this
.
queryParams2
.
provinceId
params
.
timeEnd
=
params
.
time
[
1
]
}
}
delete
params
.
time
if
(
this
.
queryParams2
.
projects
){
delete
params
.
amount
jskBidQueryDto
.
projectType
=
this
.
queryParams2
.
projects
.
join
()
}
params
.
jskBidQueryDto
=
jskBidQueryDto
this
.
zhaobiaoIsSkeleton
=
true
this
.
zhaobiaoIsSkeleton
=
true
bigBidPage
(
params
).
then
(
res
=>
{
bigBidPage
(
params
).
then
(
res
=>
{
this
.
zhaobiaoIsSkeleton
=
false
this
.
zhaobiaoIsSkeleton
=
false
if
(
res
.
code
==
200
){
if
(
res
.
code
==
200
){
this
.
zbList
=
res
.
rows
;
this
.
zbList
=
res
.
data
.
list
;
this
.
zbTableTotal
=
res
.
total
;
this
.
zbTableTotal
=
res
.
data
.
total
;
}
}
})
})
},
},
...
@@ -809,7 +815,11 @@ export default {
...
@@ -809,7 +815,11 @@ export default {
}
}
this
.
addressList
=
str
;
this
.
addressList
=
str
;
},
},
initChart
(
data
)
{
initChart
(
list
)
{
let
data
=
[]
for
(
var
i
=
0
;
i
<
10
;
i
++
){
data
.
push
(
list
[
i
])
}
this
.
$nextTick
(()
=>
{
this
.
$nextTick
(()
=>
{
let
myChart
=
echarts
.
init
(
document
.
getElementById
(
"zbtj-echarts"
))
let
myChart
=
echarts
.
init
(
document
.
getElementById
(
"zbtj-echarts"
))
let
option
=
{
let
option
=
{
...
@@ -829,7 +839,7 @@ export default {
...
@@ -829,7 +839,7 @@ export default {
axisPointer
:
{
axisPointer
:
{
type
:
'shadow'
type
:
'shadow'
},
},
data
:
data
.
map
(
item
=>
item
.
n
ame
),
data
:
data
.
map
(
item
=>
item
.
combineN
ame
),
},
},
yAxis
:
[
yAxis
:
[
{
{
...
@@ -840,7 +850,7 @@ export default {
...
@@ -840,7 +850,7 @@ export default {
name
:
'单位:个'
,
name
:
'单位:个'
,
nameLocation
:
'start'
,
nameLocation
:
'start'
,
nameTextStyle
:
{
nameTextStyle
:
{
padding
:
[
0
,
0
,
0
,
-
60
],
// 四个数字分别为上右下左与原位置距离
padding
:
[
0
,
2
0
,
0
,
-
60
],
// 四个数字分别为上右下左与原位置距离
color
:
'#666666'
,
color
:
'#666666'
,
}
}
},
},
...
@@ -852,7 +862,7 @@ export default {
...
@@ -852,7 +862,7 @@ export default {
name
:
'单位:万元'
,
name
:
'单位:万元'
,
nameLocation
:
'start'
,
nameLocation
:
'start'
,
nameTextStyle
:
{
nameTextStyle
:
{
padding
:
[
0
,
0
,
0
,
72
],
// 四个数字分别为上右下左与原位置距离
padding
:
[
0
,
0
,
0
,
100
],
// 四个数字分别为上右下左与原位置距离
color
:
'#666666'
,
color
:
'#666666'
,
},
},
splitLine
:
{
splitLine
:
{
...
@@ -885,7 +895,7 @@ export default {
...
@@ -885,7 +895,7 @@ export default {
itemStyle
:
{
itemStyle
:
{
color
:
'#14C9C9'
color
:
'#14C9C9'
},
},
data
:
data
.
map
(
item
=>
item
.
amount
),
data
:
data
.
map
(
item
=>
item
.
money
),
},
},
{
{
name
:
'中标总数(个)'
,
name
:
'中标总数(个)'
,
...
@@ -917,7 +927,16 @@ export default {
...
@@ -917,7 +927,16 @@ export default {
});
});
})
})
},
},
initChart1
(){
initChart1
(
list
){
let
data
=
[]
if
(
list
.
length
>
10
){
for
(
var
i
=
0
;
i
<
10
;
i
++
){
data
.
push
(
list
[
i
])
}
}
else
{
data
=
list
;
}
var
rankPic
=
[
var
rankPic
=
[
require
(
'@/assets/images/index/1.png'
),
require
(
'@/assets/images/index/1.png'
),
require
(
'@/assets/images/index/2.png'
),
require
(
'@/assets/images/index/2.png'
),
...
@@ -930,11 +949,11 @@ export default {
...
@@ -930,11 +949,11 @@ export default {
require
(
'@/assets/images/index/9.png'
),
require
(
'@/assets/images/index/9.png'
),
require
(
'@/assets/images/index/10.png'
),
require
(
'@/assets/images/index/10.png'
),
]
]
this
.
$nextTick
(()
=>
{
let
myChart
=
echarts
.
init
(
document
.
getElementById
(
"zbph-echarts"
))
let
myChart
=
echarts
.
init
(
document
.
getElementById
(
"zbph-echarts"
))
let
option
=
{
let
option
=
{
legend
:
{
legend
:
{
show
:
tru
e
,
show
:
fals
e
,
x
:
'right'
,
x
:
'right'
,
y
:
'top'
,
y
:
'top'
,
padding
:[
10
,
0
,
10
,
0
],
padding
:[
10
,
0
,
10
,
0
],
...
@@ -947,7 +966,7 @@ export default {
...
@@ -947,7 +966,7 @@ export default {
yAxis
:
{
yAxis
:
{
type
:
'category'
,
type
:
'category'
,
inverse
:
true
,
// 反向坐标
inverse
:
true
,
// 反向坐标
data
:
this
.
pmData
.
map
(
item
=>
item
.
n
ame
),
data
:
data
.
map
(
item
=>
item
.
companyN
ame
),
axisLine
:
{
axisLine
:
{
show
:
false
,
show
:
false
,
},
},
...
@@ -957,11 +976,11 @@ export default {
...
@@ -957,11 +976,11 @@ export default {
axisPointer
:
{
axisPointer
:
{
label
:
{
label
:
{
show
:
true
,
show
:
true
,
margin
:
30
//
margin: 30
}
}
},
},
axisLabel
:
{
axisLabel
:
{
margin
:
20
0
,
margin
:
22
0
,
textStyle
:
{
textStyle
:
{
align
:
'left'
,
align
:
'left'
,
},
},
...
@@ -1071,11 +1090,10 @@ export default {
...
@@ -1071,11 +1090,10 @@ export default {
color
:
'#fff'
,
color
:
'#fff'
,
},
},
},
},
series
:
[
series
:
{
{
// realtimeSort: true,
// realtimeSort: true,
name
:
'
已完成产值
'
,
name
:
'
中标金额(万元)
'
,
data
:
this
.
pmData
.
map
(
item
=>
item
.
value
),
data
:
data
.
map
(
item
=>
item
.
money
),
barGap
:
0
,
barGap
:
0
,
type
:
'bar'
,
type
:
'bar'
,
itemStyle
:{
itemStyle
:{
...
@@ -1084,23 +1102,13 @@ export default {
...
@@ -1084,23 +1102,13 @@ export default {
},
},
barWidth
:
8
,
barWidth
:
8
,
},
},
{
name
:
'目标产值'
,
data
:
this
.
pmData
.
map
(
item
=>
item
.
value1
),
barGap
:
0
,
type
:
'bar'
,
itemStyle
:{
color
:
'#92C9FF'
,
barBorderRadius
:[
0
,
20
,
20
,
0
]
},
barWidth
:
8
,
},
],
}
}
myChart
.
setOption
(
option
);
myChart
.
setOption
(
option
);
window
.
addEventListener
(
"resize"
,
function
()
{
window
.
addEventListener
(
"resize"
,
function
()
{
myChart
.
resize
();
//图表跟随页面大小变化宽度
myChart
.
resize
();
//图表跟随页面大小变化宽度
});
});
})
},
},
handleClickTab
(){
handleClickTab
(){
this
.
queryParams2
.
pageNum
=
1
;
this
.
queryParams2
.
pageNum
=
1
;
...
@@ -1116,15 +1124,16 @@ export default {
...
@@ -1116,15 +1124,16 @@ export default {
this
.
user
=
this
.
user
===
1
?
2
:
1
;
this
.
user
=
this
.
user
===
1
?
2
:
1
;
if
(
this
.
user
===
1
){
if
(
this
.
user
===
1
){
this
.
$nextTick
(()
=>
{
this
.
$nextTick
(()
=>
{
this
.
initChart
(
this
.
jtList
)
this
.
initChart
(
this
.
jt
zb
List
)
this
.
initChart1
()
this
.
initChart1
(
this
.
dxmbList
)
})
})
}
}
},
},
changeSelect
(){
changeSelect1
(){
console
.
log
(
this
.
queryParams
)
this
.
getCountByCompany
()
this
.
getWinningBidsRanking
()
},
// this.$emit('handle-search')
changeSelect2
(){
this
.
getBidRank
()
},
},
changeSelect3
(){
changeSelect3
(){
this
.
queryParams2
.
pageNum
=
1
this
.
queryParams2
.
pageNum
=
1
...
...
dsk-operate-ui/src/views/macro/component/region.vue
View file @
e4f17a5a
...
@@ -5,7 +5,11 @@
...
@@ -5,7 +5,11 @@
<span
class=
"province"
>
{{
province
}}
</span>
<span
class=
"province"
>
{{
province
}}
</span>
<span
class=
"icon"
>
<span
class=
"icon"
>
<i
class=
"el-icon-location"
></i>
切换
<i
class=
"el-icon-location"
></i>
切换
<el-cascader
ref=
"address"
class=
"cascader-region"
popper-class=
'cascader-region-addd'
<el-select
v-if=
"key =='5'"
v-model=
"address"
class=
"cascader-region"
@
change=
"addressListbtn1"
>
<el-option
v-for=
"(item,index) in addressList"
:key=
"index"
:label=
"item.label"
:value=
"item.id"
></el-option>
</el-select>
<el-cascader
v-else
ref=
"address"
class=
"cascader-region"
popper-class=
'cascader-region-addd'
@
change=
"addressListbtn"
v-model=
"address"
:options=
"addressList"
:props=
"props"
collapse-tags
></el-cascader>
@
change=
"addressListbtn"
v-model=
"address"
:options=
"addressList"
:props=
"props"
collapse-tags
></el-cascader>
</span>
</span>
</div>
</div>
...
@@ -17,7 +21,7 @@
...
@@ -17,7 +21,7 @@
import
dataRegion
from
'@/assets/json/dataRegion'
import
dataRegion
from
'@/assets/json/dataRegion'
export
default
{
export
default
{
name
:
'region'
,
name
:
'region'
,
props
:[
'province'
,
'dataQuery'
],
props
:[
'province'
,
'dataQuery'
,
'type'
],
data
(){
data
(){
return
{
return
{
props
:
{
props
:
{
...
@@ -28,7 +32,8 @@
...
@@ -28,7 +32,8 @@
addressList
:
[],
addressList
:
[],
address
:
''
,
address
:
''
,
provinceId
:[],
provinceId
:[],
location
:
''
location
:
''
,
key
:
''
,
}
}
},
},
watch
:
{
watch
:
{
...
@@ -39,10 +44,12 @@
...
@@ -39,10 +44,12 @@
created
(){
created
(){
this
.
dataRegion
()
this
.
dataRegion
()
this
.
location
=
this
.
province
this
.
location
=
this
.
province
this
.
key
=
this
.
type
;
},
},
methods
:{
methods
:{
addressListbtn
()
{
addressListbtn
()
{
let
nodesObj
=
this
.
$refs
.
address
.
getCheckedNodes
()[
0
];
let
nodesObj
=
this
.
$refs
.
address
.
getCheckedNodes
()[
0
];
this
.
location
=
nodesObj
.
pathLabels
[
nodesObj
.
pathLabels
.
length
-
1
];
this
.
location
=
nodesObj
.
pathLabels
[
nodesObj
.
pathLabels
.
length
-
1
];
this
.
provinceId
=
nodesObj
.
path
;
this
.
provinceId
=
nodesObj
.
path
;
let
data
=
{}
let
data
=
{}
...
@@ -52,6 +59,18 @@
...
@@ -52,6 +59,18 @@
this
.
$parent
.
addressListbtn
(
data
)
this
.
$parent
.
addressListbtn
(
data
)
localStorage
.
setItem
(
'location'
,
true
)
localStorage
.
setItem
(
'location'
,
true
)
},
},
addressListbtn1
()
{
let
obj
=
this
.
addressList
.
find
((
option
)
=>
option
.
id
===
this
.
address
);
this
.
location
=
obj
.
label
;
this
.
provinceId
=
[
obj
.
id
];
let
data
=
{}
data
.
province
=
this
.
location
data
.
provinceId
=
this
.
provinceId
data
.
provinces
=
[
this
.
location
]
console
.
log
(
data
,
"|||||||"
)
this
.
$parent
.
addressListbtn
(
data
)
localStorage
.
setItem
(
'location'
,
true
)
},
//地区
//地区
async
dataRegion
()
{
async
dataRegion
()
{
// await axios.post("https://files.jiansheku.com/file/json/common/dataRegion.json", {}, {
// await axios.post("https://files.jiansheku.com/file/json/common/dataRegion.json", {}, {
...
...
dsk-operate-ui/src/views/macro/economies/component/regionalEconomy.vue
View file @
e4f17a5a
...
@@ -732,16 +732,6 @@ export default {
...
@@ -732,16 +732,6 @@ export default {
this
.
$parent
.
handleClick
(
'second'
,
data
);
this
.
$parent
.
handleClick
(
'second'
,
data
);
break
;
break
;
case
2
:
case
2
:
// this.$router.push({
// path: '/macro/urban',
// query:{
// provinceId:this.dataQuery.provinceId,
// province:this.dataQuery.province,
// }
// })
console
.
log
(
this
.
dataQuery
.
provinceId
)
console
.
log
(
this
.
dataQuery
.
province
)
// return
this
.
$router
.
push
({
name
:
'Urban'
,
this
.
$router
.
push
({
name
:
'Urban'
,
params
:
{
params
:
{
provinceId
:
this
.
dataQuery
.
provinceId
,
provinceId
:
this
.
dataQuery
.
provinceId
,
...
...
dsk-operate-ui/src/views/macro/economies/index.vue
View file @
e4f17a5a
...
@@ -76,7 +76,13 @@ export default {
...
@@ -76,7 +76,13 @@ export default {
if
(
Array
.
isArray
(
this
.
dataQuery
.
provinceId
)){
if
(
Array
.
isArray
(
this
.
dataQuery
.
provinceId
)){
this
.
provinceId
=
this
.
dataQuery
.
provinceId
this
.
provinceId
=
this
.
dataQuery
.
provinceId
}
else
{
}
else
{
this
.
provinceId
.
push
(
this
.
dataQuery
.
provinceId
)
if
(
this
.
dataQuery
.
cityId
){
this
.
provinceId
=
[
this
.
dataQuery
.
provinceId
,
this
.
dataQuery
.
cityId
,
this
.
dataQuery
.
areaId
]
}
else
if
(
this
.
dataQuery
.
cityId
){
this
.
provinceId
=
[
this
.
dataQuery
.
provinceId
,
this
.
dataQuery
.
cityId
]
}
else
{
this
.
provinceId
=
[
this
.
dataQuery
.
provinceId
]
}
}
}
}
else
{
}
else
{
location
({}).
then
(
res
=>
{
location
({}).
then
(
res
=>
{
...
...
dsk-operate-ui/src/views/macro/enterprises/index.vue
View file @
e4f17a5a
<
template
>
<
template
>
<div
class=
"app-container enterprises"
>
<div
class=
"app-container enterprises"
>
<Region
v-if=
"province"
:province=
"province"
:dataQuery=
"dataQuery"
@
addressListbtn=
"addressListbtn"
></Region>
<Region
v-if=
"province"
:province=
"province"
:dataQuery=
"dataQuery"
@
addressListbtn=
"addressListbtn"
:type=
"5"
></Region>
<div
class=
"flex-box eco-header"
>
<div
class=
"flex-box eco-header"
>
<el-tabs
v-model=
"activeName"
@
tab-click=
"handleClick"
>
<el-tabs
v-model=
"activeName"
@
tab-click=
"handleClick"
>
<el-tab-pane
label=
"本地企业"
name=
"first"
></el-tab-pane>
<el-tab-pane
label=
"本地企业"
name=
"first"
></el-tab-pane>
...
@@ -291,17 +291,8 @@ export default {
...
@@ -291,17 +291,8 @@ export default {
this
.
dataQuery
.
province
=
data
.
provinces
;
this
.
dataQuery
.
province
=
data
.
provinces
;
let
params
=
{}
let
params
=
{}
if
(
data
){
if
(
data
){
if
(
this
.
provinceId
.
length
>
0
){
params
.
provinceId
=
this
.
provinceId
params
.
provinceId
=
this
.
provinceId
[
0
]
}
}
if
(
this
.
provinceId
.
length
>
1
){
params
.
cityId
=
this
.
provinceId
[
1
]
}
if
(
this
.
provinceId
.
length
>
2
){
params
.
areaId
=
this
.
provinceId
[
2
]
}
}
this
.
querySubmit
()
this
.
querySubmit
()
location
(
params
).
then
(
res
=>
{
location
(
params
).
then
(
res
=>
{
console
.
log
(
res
.
data
)
console
.
log
(
res
.
data
)
...
...
dsk-operate-ui/src/views/macro/nationalEconomies/component/qgjjdq.vue
View file @
e4f17a5a
...
@@ -46,7 +46,7 @@
...
@@ -46,7 +46,7 @@
</el-table-column>
</el-table-column>
<el-table-column
label=
"地区"
min-width=
"150"
align=
"left"
fixed
>
<el-table-column
label=
"地区"
min-width=
"150"
align=
"left"
fixed
>
<
template
slot-scope=
"scope"
>
<
template
slot-scope=
"scope"
>
<
router-link
:to=
"
{path:'/macro/economies',query:{id:scope.row.id,provinceId:scope.row.provinceId,province:scope.row.province}}" tag="a" class="a-link">
{{
scope
.
row
.
province
}}{{
scope
.
row
.
city
?
'-'
:
''
}}{{
scope
.
row
.
city
}}{{
scope
.
row
.
area
?
'-'
:
''
}}{{
scope
.
row
.
area
}}
</router-link
>
<
span
@
click=
"clickTo(scope.row)"
>
{{
scope
.
row
.
province
}}{{
scope
.
row
.
city
?
'-'
:
''
}}{{
scope
.
row
.
city
}}{{
scope
.
row
.
area
?
'-'
:
''
}}{{
scope
.
row
.
area
}}
</span
>
</
template
>
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
label=
"年度明细"
prop=
"id"
width=
"90"
align=
"center"
fixed
>
<el-table-column
label=
"年度明细"
prop=
"id"
width=
"90"
align=
"center"
fixed
>
...
@@ -324,6 +324,26 @@
...
@@ -324,6 +324,26 @@
message
:
'功能正在开发中'
,
message
:
'功能正在开发中'
,
type
:
'warning'
type
:
'warning'
});
});
},
clickTo
(
item
){
let
params
=
{
id
:
item
.
id
,
province
:
item
.
area
?
item
.
area
:
item
.
city
?
item
.
city
:
item
.
province
,
}
if
(
item
.
areaId
){
params
.
provinceId
=
item
.
provinceId
params
.
cityId
=
item
.
cityId
params
.
areaId
=
item
.
areaId
}
else
if
(
item
.
cityId
!=
0
){
params
.
provinceId
=
item
.
provinceId
params
.
cityId
=
item
.
cityId
}
else
{
params
.
provinceId
=
item
.
provinceId
}
this
.
$router
.
push
({
path
:
'/macro/economies'
,
query
:
params
})
}
}
}
}
}
}
...
...
dsk-operate-ui/src/views/macro/urban/index.vue
View file @
e4f17a5a
...
@@ -217,9 +217,9 @@
...
@@ -217,9 +217,9 @@
<el-table-column
prop=
"econData002"
label=
"有息债务/总负债(%)"
:formatter=
"formatStatus"
width=
"160"
align=
"right"
/>
<el-table-column
prop=
"econData002"
label=
"有息债务/总负债(%)"
:formatter=
"formatStatus"
width=
"160"
align=
"right"
/>
<el-table-column
prop=
"tdr"
label=
"资产负债率(%)"
:formatter=
"formatStatus"
width=
"140"
align=
"right"
/>
<el-table-column
prop=
"tdr"
label=
"资产负债率(%)"
:formatter=
"formatStatus"
width=
"140"
align=
"right"
/>
<el-table-column
prop=
"ofcb"
label=
"综合融资成本(%)"
:formatter=
"formatStatus"
width=
"150"
align=
"right"
/>
<el-table-column
prop=
"ofcb"
label=
"综合融资成本(%)"
:formatter=
"formatStatus"
width=
"150"
align=
"right"
/>
<el-table-column
prop=
"cashRatio"
label=
"现金比率"
:formatter=
"formatStatus"
width=
"110"
align=
"right"
/>
<el-table-column
prop=
"cashRatio"
label=
"现金比率
(%)
"
:formatter=
"formatStatus"
width=
"110"
align=
"right"
/>
<el-table-column
prop=
"cashFlowRatio"
label=
"现金流量比率"
:formatter=
"formatStatus"
width=
"120"
align=
"right"
/>
<el-table-column
prop=
"cashFlowRatio"
label=
"现金流量比率
(%)
"
:formatter=
"formatStatus"
width=
"120"
align=
"right"
/>
<el-table-column
prop=
"cashDebtRatio"
label=
"现金到期债务比"
:formatter=
"formatStatus"
width=
"120"
align=
"right"
/>
<el-table-column
prop=
"cashDebtRatio"
label=
"现金到期债务比
(%)
"
:formatter=
"formatStatus"
width=
"120"
align=
"right"
/>
<el-table-column
prop=
"creditBalance"
label=
"授信余额(亿元)"
:formatter=
"formatStatus"
width=
"130"
align=
"right"
/>
<el-table-column
prop=
"creditBalance"
label=
"授信余额(亿元)"
:formatter=
"formatStatus"
width=
"130"
align=
"right"
/>
<el-table-column
prop=
"econData003"
label=
"授信余额/全部债务(%)"
:formatter=
"formatStatus"
width=
"160"
align=
"right"
/>
<el-table-column
prop=
"econData003"
label=
"授信余额/全部债务(%)"
:formatter=
"formatStatus"
width=
"160"
align=
"right"
/>
<el-table-column
prop=
"ebitdaIcr"
label=
"EBITDA保障倍数"
:formatter=
"formatStatus"
width=
"150"
align=
"right"
/>
<el-table-column
prop=
"ebitdaIcr"
label=
"EBITDA保障倍数"
:formatter=
"formatStatus"
width=
"150"
align=
"right"
/>
...
...
dsk-system/src/main/java/com/dsk/system/domain/business/vo/BusinessAnalyzeVo.java
View file @
e4f17a5a
...
@@ -16,6 +16,10 @@ public class BusinessAnalyzeVo implements Serializable {
...
@@ -16,6 +16,10 @@ public class BusinessAnalyzeVo implements Serializable {
* 项目类型
* 项目类型
*/
*/
private
String
projectType
;
private
String
projectType
;
/**
* 项目类别
*/
private
String
projectCategory
;
/**
/**
* 资金来源
* 资金来源
*/
*/
...
...
dsk-system/src/main/java/com/dsk/system/dskService/EnterpriseBussinessService.java
View file @
e4f17a5a
...
@@ -84,12 +84,22 @@ public class EnterpriseBussinessService {
...
@@ -84,12 +84,22 @@ public class EnterpriseBussinessService {
dataMap
.
put
(
"sourceList"
,
null
);
dataMap
.
put
(
"sourceList"
,
null
);
String
source
=
MapUtils
.
getString
(
dataMap
,
"source"
);
String
source
=
MapUtils
.
getString
(
dataMap
,
"source"
);
if
(
ObjectUtil
.
isNotEmpty
(
source
))
{
if
(
ObjectUtil
.
isNotEmpty
(
source
))
{
List
<
EnterpriseBussinessVo
>
enterpriseSource
=
new
ArrayList
<>();
List
<
EnterpriseBussinessVo
>
enterpriseBussinessVoList
=
JSONUtil
.
toList
(
source
,
EnterpriseBussinessVo
.
class
);
List
<
EnterpriseBussinessVo
>
enterpriseBussinessVoList
=
JSONUtil
.
toList
(
source
,
EnterpriseBussinessVo
.
class
);
if
(
ObjectUtil
.
isNotEmpty
(
enterpriseBussinessVoList
.
get
(
0
)))
{
if
(
ObjectUtil
.
isNotEmpty
(
enterpriseBussinessVoList
.
get
(
0
)))
{
EnterpriseBussinessVo
vo
=
enterpriseBussinessVoList
.
get
(
0
);
EnterpriseBussinessVo
vo
=
enterpriseBussinessVoList
.
get
(
0
);
dataMap
.
put
(
"sourceId"
,
vo
.
getSource_id
());
dataMap
.
put
(
"sourceId"
,
vo
.
getSource_id
());
dataMap
.
put
(
"sourceType"
,
vo
.
getSource_type
());
dataMap
.
put
(
"sourceType"
,
vo
.
getSource_type
());
dataMap
.
put
(
"sourceList"
,
enterpriseBussinessVoList
);
dataMap
.
put
(
"sourceList"
,
enterpriseBussinessVoList
);
if
(
ObjectUtil
.
isNotEmpty
(
body
.
getSources
()))
{
for
(
EnterpriseBussinessVo
bussinessVo
:
enterpriseBussinessVoList
)
{
String
source_type
=
bussinessVo
.
getSource_type
();
if
(
body
.
getSources
().
contains
(
source_type
))
{
enterpriseSource
.
add
(
bussinessVo
);
}
}
dataMap
.
put
(
"sourceList"
,
enterpriseSource
);
}
}
}
}
}
}
}
...
@@ -173,12 +183,22 @@ public class EnterpriseBussinessService {
...
@@ -173,12 +183,22 @@ public class EnterpriseBussinessService {
dataMap
.
put
(
"sourceType"
,
null
);
dataMap
.
put
(
"sourceType"
,
null
);
String
source
=
MapUtils
.
getString
(
dataMap
,
"source"
);
String
source
=
MapUtils
.
getString
(
dataMap
,
"source"
);
if
(
ObjectUtil
.
isNotEmpty
(
source
))
{
if
(
ObjectUtil
.
isNotEmpty
(
source
))
{
List
<
EnterpriseBussinessVo
>
enterpriseSource
=
new
ArrayList
<>();
List
<
EnterpriseBussinessVo
>
enterpriseBussinessVoList
=
JSONUtil
.
toList
(
source
,
EnterpriseBussinessVo
.
class
);
List
<
EnterpriseBussinessVo
>
enterpriseBussinessVoList
=
JSONUtil
.
toList
(
source
,
EnterpriseBussinessVo
.
class
);
if
(
ObjectUtil
.
isNotEmpty
(
enterpriseBussinessVoList
.
get
(
0
)))
{
if
(
ObjectUtil
.
isNotEmpty
(
enterpriseBussinessVoList
.
get
(
0
)))
{
EnterpriseBussinessVo
vo
=
enterpriseBussinessVoList
.
get
(
0
);
EnterpriseBussinessVo
vo
=
enterpriseBussinessVoList
.
get
(
0
);
dataMap
.
put
(
"sourceId"
,
vo
.
getSource_id
());
dataMap
.
put
(
"sourceId"
,
vo
.
getSource_id
());
dataMap
.
put
(
"sourceType"
,
vo
.
getSource_type
());
dataMap
.
put
(
"sourceType"
,
vo
.
getSource_type
());
dataMap
.
put
(
"sourceList"
,
enterpriseBussinessVoList
);
dataMap
.
put
(
"sourceList"
,
enterpriseBussinessVoList
);
if
(
ObjectUtil
.
isNotEmpty
(
body
.
getSources
()))
{
for
(
EnterpriseBussinessVo
bussinessVo
:
enterpriseBussinessVoList
)
{
String
source_type
=
bussinessVo
.
getSource_type
();
if
(
body
.
getSources
().
contains
(
source_type
))
{
enterpriseSource
.
add
(
bussinessVo
);
}
}
dataMap
.
put
(
"sourceList"
,
enterpriseSource
);
}
}
}
}
}
}
}
...
...
dsk-system/src/main/java/com/dsk/system/dskService/EnterpriseService.java
View file @
e4f17a5a
...
@@ -289,22 +289,22 @@ public class EnterpriseService {
...
@@ -289,22 +289,22 @@ public class EnterpriseService {
List
<
CustomerStatusListVo
>
claimStatusList
=
iCustomerService
.
selectStatusListByCompanyName
(
companyNames
);
List
<
CustomerStatusListVo
>
claimStatusList
=
iCustomerService
.
selectStatusListByCompanyName
(
companyNames
);
Map
<
String
,
Object
>
bondCreditRatingBatchMap
=
new
HashMap
<>(
1
);
//
Map<String, Object> bondCreditRatingBatchMap = new HashMap<>(1);
bondCreditRatingBatchMap
.
put
(
"cIds"
,
cIds
);
//
bondCreditRatingBatchMap.put("cIds", cIds);
Map
<
String
,
Object
>
bondCreditRatingMap
=
dskOpenApiUtil
.
requestBody
(
"/operate/enterprise/bondCreditRatingBatch"
,
bondCreditRatingBatchMap
);
//
Map<String, Object> bondCreditRatingMap = dskOpenApiUtil.requestBody("/operate/enterprise/bondCreditRatingBatch", bondCreditRatingBatchMap);
Integer
codeRating
=
MapUtils
.
getInteger
(
bondCreditRatingMap
,
"code"
,
300
);
//
Integer codeRating = MapUtils.getInteger(bondCreditRatingMap, "code", 300);
ArrayList
<
Map
<
String
,
Object
>>
objArrayList
=
new
ArrayList
(
1
);
//
ArrayList<Map<String, Object>> objArrayList = new ArrayList(1);
if
(
codeRating
.
equals
(
HttpStatus
.
OK
.
value
()))
{
//
if (codeRating.equals(HttpStatus.OK.value())) {
Object
object
=
bondCreditRatingMap
.
get
(
"data"
);
//
Object object = bondCreditRatingMap.get("data");
if
(
ObjectUtil
.
isNotEmpty
(
object
))
{
//
if (ObjectUtil.isNotEmpty(object)) {
objArrayList
=
(
ArrayList
)
object
;
//
objArrayList = (ArrayList) object;
}
//
}
}
//
}
//按照城投企业id合并两个list
//按照城投企业id合并两个list
for
(
Object
companyObj
:
list
)
{
for
(
Object
companyObj
:
list
)
{
Map
<
String
,
Object
>
companyMap
=
CommonUtils
.
assertAsMap
(
companyObj
);
Map
<
String
,
Object
>
companyMap
=
CommonUtils
.
assertAsMap
(
companyObj
);
companyMap
.
put
(
"bratingSubjectLevel"
,
null
);
//
companyMap.put("bratingSubjectLevel", null);
String
uipId
=
MapUtils
.
getString
(
companyMap
,
"uipId"
);
String
uipId
=
MapUtils
.
getString
(
companyMap
,
"uipId"
);
String
companyName
=
MapUtils
.
getString
(
companyMap
,
"companyName"
,
""
);
String
companyName
=
MapUtils
.
getString
(
companyMap
,
"companyName"
,
""
);
if
(
ObjectUtil
.
isNotEmpty
(
companyName
)
&&
ObjectUtil
.
isNotEmpty
(
body
.
getKeys
()))
{
if
(
ObjectUtil
.
isNotEmpty
(
companyName
)
&&
ObjectUtil
.
isNotEmpty
(
body
.
getKeys
()))
{
...
@@ -354,12 +354,12 @@ public class EnterpriseService {
...
@@ -354,12 +354,12 @@ public class EnterpriseService {
companyMap
.
put
(
"claimStatus"
,
vo
.
getStatus
());
companyMap
.
put
(
"claimStatus"
,
vo
.
getStatus
());
}
}
}
}
for
(
Map
<
String
,
Object
>
m
:
objArrayList
)
{
//
for (Map<String, Object> m : objArrayList) {
Long
companyIdCredit
=
MapUtils
.
getLong
(
m
,
"companyId"
,
0L
);
//
Long companyIdCredit = MapUtils.getLong(m, "companyId", 0L);
if
(
companyIdCredit
.
equals
(
companyId
))
{
//
if (companyIdCredit.equals(companyId)) {
companyMap
.
put
(
"bratingSubjectLevel"
,
m
.
get
(
"bratingSubjectLevel"
));
//
companyMap.put("bratingSubjectLevel", m.get("bratingSubjectLevel"));
}
//
}
}
//
}
}
}
return
new
TableDataInfo
(
list
,
MapUtils
.
getInteger
(
data
,
"totalCount"
,
0
));
return
new
TableDataInfo
(
list
,
MapUtils
.
getInteger
(
data
,
"totalCount"
,
0
));
...
...
dsk-system/src/main/java/com/dsk/system/mapper/BusinessInfoMapper.java
View file @
e4f17a5a
...
@@ -116,4 +116,6 @@ public interface BusinessInfoMapper extends BaseMapper<BusinessInfo> {
...
@@ -116,4 +116,6 @@ public interface BusinessInfoMapper extends BaseMapper<BusinessInfo> {
List
<
BusinessAnalyzeVo
>
selectTypeAnalyze
(
BusinessSearchDto
dto
);
List
<
BusinessAnalyzeVo
>
selectTypeAnalyze
(
BusinessSearchDto
dto
);
List
<
BusinessAnalyzeVo
>
selectCategoryAnalyze
(
BusinessSearchDto
dto
);
}
}
dsk-system/src/main/java/com/dsk/system/service/IBusinessOverviewService.java
View file @
e4f17a5a
...
@@ -20,6 +20,8 @@ public interface IBusinessOverviewService {
...
@@ -20,6 +20,8 @@ public interface IBusinessOverviewService {
List
<
BusinessAnalyzeVo
>
typeAnalyze
(
BusinessSearchDto
dto
);
List
<
BusinessAnalyzeVo
>
typeAnalyze
(
BusinessSearchDto
dto
);
List
<
BusinessAnalyzeVo
>
categoryAnalyze
(
BusinessSearchDto
dto
);
AjaxResult
countGroupByProvince
(
JSONObject
object
);
AjaxResult
countGroupByProvince
(
JSONObject
object
);
AjaxResult
rangByMoney
(
JSONObject
object
);
AjaxResult
rangByMoney
(
JSONObject
object
);
...
...
dsk-system/src/main/java/com/dsk/system/service/impl/BusinessOverviewServiceImpl.java
View file @
e4f17a5a
...
@@ -60,6 +60,12 @@ public class BusinessOverviewServiceImpl implements IBusinessOverviewService {
...
@@ -60,6 +60,12 @@ public class BusinessOverviewServiceImpl implements IBusinessOverviewService {
return
businessInfoMapper
.
selectTypeAnalyze
(
dto
);
return
businessInfoMapper
.
selectTypeAnalyze
(
dto
);
}
}
@Override
@DataScope
(
userAlias
=
"u"
,
deptAlias
=
"d"
)
public
List
<
BusinessAnalyzeVo
>
categoryAnalyze
(
BusinessSearchDto
dto
)
{
return
businessInfoMapper
.
selectCategoryAnalyze
(
dto
);
}
@Override
@Override
public
AjaxResult
countGroupByProvince
(
JSONObject
object
)
{
public
AjaxResult
countGroupByProvince
(
JSONObject
object
)
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/nationzj/marketAnalysis/project/countGroupByProvince"
,
object
);
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/nationzj/marketAnalysis/project/countGroupByProvince"
,
object
);
...
...
dsk-system/src/main/java/com/dsk/system/service/impl/UrbanInvestmentPlatformServiceImpl.java
View file @
e4f17a5a
...
@@ -62,17 +62,17 @@ public class UrbanInvestmentPlatformServiceImpl implements UrbanInvestmentPlatfo
...
@@ -62,17 +62,17 @@ public class UrbanInvestmentPlatformServiceImpl implements UrbanInvestmentPlatfo
}
}
List
<
CustomerStatusListVo
>
customerStatusListVos
=
iCustomerService
.
selectStatusListByCompanyName
(
companyNames
);
List
<
CustomerStatusListVo
>
customerStatusListVos
=
iCustomerService
.
selectStatusListByCompanyName
(
companyNames
);
Map
<
String
,
Object
>
bondCreditRatingBatchMap
=
new
HashMap
<>(
1
);
//
Map<String, Object> bondCreditRatingBatchMap = new HashMap<>(1);
bondCreditRatingBatchMap
.
put
(
"cIds"
,
cIds
);
//
bondCreditRatingBatchMap.put("cIds", cIds);
Map
<
String
,
Object
>
bondCreditRatingMap
=
dskOpenApiUtil
.
requestBody
(
"/operate/operate/enterprise/bondCreditRatingBatch"
,
bondCreditRatingBatchMap
);
//
Map<String, Object> bondCreditRatingMap = dskOpenApiUtil.requestBody("/operate/operate/enterprise/bondCreditRatingBatch", bondCreditRatingBatchMap);
Integer
codeRating
=
MapUtils
.
getInteger
(
bondCreditRatingMap
,
"code"
,
300
);
//
Integer codeRating = MapUtils.getInteger(bondCreditRatingMap, "code", 300);
ArrayList
<
Map
<
String
,
Object
>>
objArrayList
=
new
ArrayList
(
1
);
//
ArrayList<Map<String, Object>> objArrayList = new ArrayList(1);
if
(
codeRating
.
equals
(
HttpStatus
.
OK
.
value
()))
{
//
if (codeRating.equals(HttpStatus.OK.value())) {
Object
object
=
bondCreditRatingMap
.
get
(
"data"
);
//
Object object = bondCreditRatingMap.get("data");
if
(
ObjectUtil
.
isNotEmpty
(
object
))
{
//
if (ObjectUtil.isNotEmpty(object)) {
objArrayList
=
(
ArrayList
)
object
;
//
objArrayList = (ArrayList)object;
}
//
}
}
//
}
//按照城投企业id合并两个list
//按照城投企业id合并两个list
//按照城投企业id合并两个list
//按照城投企业id合并两个list
...
@@ -86,27 +86,27 @@ public class UrbanInvestmentPlatformServiceImpl implements UrbanInvestmentPlatfo
...
@@ -86,27 +86,27 @@ public class UrbanInvestmentPlatformServiceImpl implements UrbanInvestmentPlatfo
companyName
=
companyName
.
replaceAll
(
"</font>"
,
""
);
companyName
=
companyName
.
replaceAll
(
"</font>"
,
""
);
}
}
companyMap
.
put
(
"claimStatus"
,
null
);
companyMap
.
put
(
"claimStatus"
,
null
);
companyMap
.
put
(
"bratingSubjectLevel"
,
null
);
//
companyMap.put("bratingSubjectLevel", null);
for
(
CustomerStatusListVo
vo
:
customerStatusListVos
)
{
for
(
CustomerStatusListVo
vo
:
customerStatusListVos
)
{
if
(
companyName
.
equals
(
vo
.
getCompanyName
()))
{
if
(
companyName
.
equals
(
vo
.
getCompanyName
()))
{
companyMap
.
put
(
"claimStatus"
,
vo
.
getStatus
());
companyMap
.
put
(
"claimStatus"
,
vo
.
getStatus
());
}
}
}
}
// 去除重复的数据
// 去除重复的数据
Set
<
UrbanInvestmentPlatformSubjectLevelDto
>
subjectLevelDtoSet
=
new
HashSet
<>();
//
Set<UrbanInvestmentPlatformSubjectLevelDto> subjectLevelDtoSet = new HashSet<>();
for
(
Map
<
String
,
Object
>
m
:
objArrayList
)
{
//
for (Map<String, Object> m : objArrayList) {
UrbanInvestmentPlatformSubjectLevelDto
dto
=
new
UrbanInvestmentPlatformSubjectLevelDto
();
//
UrbanInvestmentPlatformSubjectLevelDto dto = new UrbanInvestmentPlatformSubjectLevelDto();
Long
companyIdCredit
=
MapUtils
.
getLong
(
m
,
"companyId"
,
0L
);
//
Long companyIdCredit = MapUtils.getLong(m, "companyId", 0L);
String
rate
=
MapUtils
.
getString
(
m
,
"bratingSubjectLevel"
);
//
String rate = MapUtils.getString(m, "bratingSubjectLevel");
dto
.
setCompanyId
(
companyIdCredit
);
//
dto.setCompanyId(companyIdCredit);
dto
.
setBratingSubjectLevel
(
rate
);
//
dto.setBratingSubjectLevel(rate);
subjectLevelDtoSet
.
add
(
dto
);
//
subjectLevelDtoSet.add(dto);
}
//
}
for
(
UrbanInvestmentPlatformSubjectLevelDto
dto
:
subjectLevelDtoSet
)
{
//
for (UrbanInvestmentPlatformSubjectLevelDto dto : subjectLevelDtoSet) {
if
(
dto
.
getCompanyId
().
equals
(
companyId
))
{
//
if (dto.getCompanyId().equals(companyId)) {
companyMap
.
put
(
"bratingSubjectLevel"
,
dto
.
getBratingSubjectLevel
());
//
companyMap.put("bratingSubjectLevel", dto.getBratingSubjectLevel());
}
//
}
}
//
}
}
}
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
}
...
...
dsk-system/src/main/resources/mapper/business/BusinessInfoMapper.xml
View file @
e4f17a5a
...
@@ -401,6 +401,17 @@
...
@@ -401,6 +401,17 @@
bi.project_type,count(bi.id) businessCount, ROUND(sum(bi.investment_amount), 4) totalAmount
bi.project_type,count(bi.id) businessCount, ROUND(sum(bi.investment_amount), 4) totalAmount
<include
refid=
"businessSearchSql"
/>
<include
refid=
"businessSearchSql"
/>
group by bi.project_type
group by bi.project_type
<if
test=
"status != null and status == 0 "
>
order by businessCount desc
</if>
<if
test=
"status != null and status == 2 "
>
order by totalAmount desc
</if>
</select>
<select
id=
"selectCategoryAnalyze"
resultType=
"com.dsk.system.domain.business.vo.BusinessAnalyzeVo"
>
select
bi.project_category,count(bi.id) businessCount, ROUND(sum(bi.investment_amount), 4) totalAmount
<include
refid=
"businessSearchSql"
/>
group by bi.project_category
<if
test=
"status != null and status == 0 "
>
order by businessCount desc
</if>
<if
test=
"status != null and status == 2 "
>
order by totalAmount desc
</if>
</select>
</select>
</mapper>
</mapper>
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