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
fb16a235
Commit
fb16a235
authored
Aug 31, 2023
by
yht15023815643
Browse files
Options
Browse Files
Download
Plain Diff
xiugai
parents
19e5f1ca
f74eb7d0
Changes
36
Hide whitespace changes
Inline
Side-by-side
Showing
36 changed files
with
2451 additions
and
1618 deletions
+2451
-1618
BusinessOpportunityRadarController.java
...search/controller/BusinessOpportunityRadarController.java
+12
-0
package.json
dsk-operate-ui/package.json
+1
-1
groupAccount.js
dsk-operate-ui/src/api/detail/groupAccount/groupAccount.js
+17
-0
index.scss
dsk-operate-ui/src/assets/styles/index.scss
+15
-1
Navbar.vue
dsk-operate-ui/src/layout/components/Navbar.vue
+1
-1
index.vue
dsk-operate-ui/src/layout/components/TagsView/index.vue
+57
-24
download.js
dsk-operate-ui/src/plugins/download.js
+7
-3
request.js
dsk-operate-ui/src/utils/request.js
+23
-1
index.vue
dsk-operate-ui/src/views/custom/customList/index.vue
+164
-162
index.vue
...operate-ui/src/views/custom/historicalCustomers/index.vue
+6
-6
index.vue
dsk-operate-ui/src/views/custom/overview/index.vue
+2
-10
Sidebar.vue
...te-ui/src/views/detail/groupAccount/component/Sidebar.vue
+2
-0
members.vue
...te-ui/src/views/detail/groupAccount/component/members.vue
+7
-3
performance.vue
...i/src/views/detail/groupAccount/component/performance.vue
+19
-6
qualifications.vue
...rc/views/detail/groupAccount/component/qualifications.vue
+6
-4
qualificationsDetail.vue
...ws/detail/groupAccount/component/qualificationsDetail.vue
+68
-8
zhaobiao.vue
...e-ui/src/views/detail/groupAccount/component/zhaobiao.vue
+552
-0
index.vue
dsk-operate-ui/src/views/detail/groupAccount/index.vue
+8
-4
CustomMoneySelect.vue
.../src/views/detail/party-a/component/CustomMoneySelect.vue
+1
-1
HeadForm.vue
...perate-ui/src/views/detail/party-a/component/HeadForm.vue
+30
-17
Tables.vue
dsk-operate-ui/src/views/detail/party-a/component/Tables.vue
+6
-0
index.vue
...te-ui/src/views/enterpriseData/components/Owner/index.vue
+1271
-1270
index.vue
dsk-operate-ui/src/views/index.vue
+6
-3
industrialStructure.vue
...c/views/macro/economies/component/industrialStructure.vue
+1
-1
localEconomy.vue
...e-ui/src/views/macro/economies/component/localEconomy.vue
+2
-2
regionalEconomy.vue
...i/src/views/macro/economies/component/regionalEconomy.vue
+1
-1
index.vue
dsk-operate-ui/src/views/macro/enterprises/index.vue
+19
-5
index.vue
dsk-operate-ui/src/views/macro/financing/index.vue
+0
-1
jzqyfx.vue
...ui/src/views/macro/nationalEconomies/component/jzqyfx.vue
+1
-1
qgjjdq.vue
...ui/src/views/macro/nationalEconomies/component/qgjjdq.vue
+29
-30
index.vue
dsk-operate-ui/src/views/macro/urban/index.vue
+41
-39
index.vue
dsk-operate-ui/src/views/radar/index.vue
+9
-9
EnterpriseBussinessService.java
...com/dsk/system/dskService/EnterpriseBussinessService.java
+30
-0
IndexService.java
...src/main/java/com/dsk/system/dskService/IndexService.java
+27
-0
JskCombineInfoService.java
...java/com/dsk/system/dskService/JskCombineInfoService.java
+4
-4
BusinessOpportunityRadarService.java
...system/searchService/BusinessOpportunityRadarService.java
+6
-0
No files found.
dsk-admin/src/main/java/com/dsk/web/controller/search/controller/BusinessOpportunityRadarController.java
View file @
fb16a235
...
...
@@ -145,4 +145,16 @@ public class BusinessOpportunityRadarController {
public
AjaxResult
bidSourceList
(
@RequestBody
JSONObject
object
)
{
return
opportunityRadarService
.
bidSourceList
(
object
);
}
/*
* 重点项目清单
*/
@RequestMapping
(
"/importantPage"
)
public
AjaxResult
importantPage
(
@RequestBody
JSONObject
object
)
{
ComposeQueryDto
compose
=
JSONObject
.
parseObject
(
object
.
toJSONString
(),
ComposeQueryDto
.
class
);
if
(
PageQueryLimit
.
pageLimit
(
compose
.
getPage
())){
return
AjaxResult
.
error
(
"翻页已达到上限"
);
}
return
opportunityRadarService
.
importantPage
(
object
);
}
}
dsk-operate-ui/package.json
View file @
fb16a235
...
...
@@ -61,7 +61,7 @@
"vue-cropper"
:
"0.5.5"
,
"vue-meta"
:
"2.4.0"
,
"vue-router"
:
"3.4.9"
,
"vuedraggable"
:
"2.24.3"
,
"vuedraggable"
:
"
^
2.24.3"
,
"vuex"
:
"3.6.0"
},
"devDependencies"
:
{
...
...
dsk-operate-ui/src/api/detail/groupAccount/groupAccount.js
View file @
fb16a235
...
...
@@ -50,3 +50,20 @@ export function businessList(data) {
data
:
data
})
}
// 集团招标
export
function
bidPage
(
data
)
{
return
request
({
url
:
'/combine/info/bidPage'
,
method
:
'post'
,
data
:
data
})
}
// 集团招标导出
export
function
exportBid
(
data
)
{
return
request
({
url
:
'/combine/info/export/bid'
,
method
:
'post'
,
data
:
data
})
}
dsk-operate-ui/src/assets/styles/index.scss
View file @
fb16a235
...
...
@@ -121,7 +121,7 @@ aside {
//main-container全局样式
.app-container
{
padding
:
16px
;
//
padding: 16px;
//margin-top: 56px;
}
...
...
@@ -223,6 +223,7 @@ ul, li {
.app-container
{
margin
:
12px
24px
;
background-color
:
#f5f5f5
;
padding-bottom
:
16px
!
important
;
.el-input__inner
{
border-color
:
#D9D9D9
;
color
:
#232323
;
...
...
@@ -262,6 +263,19 @@ ul, li {
}
}
.query-ability
{
.total
{
display
:
flex
!
important
;
flex-direction
:
row
;
align-items
:
center
;
&
:before
{
content
:
""
;
display
:
inline-block
;
width
:
2px
;
height
:
2px
;
background
:
rgba
(
35
,
35
,
35
,
0
.4
);
margin-right
:
4px
;
}
}
span
{
font-size
:
14px
;
color
:
#232323
;
...
...
dsk-operate-ui/src/layout/components/Navbar.vue
View file @
fb16a235
...
...
@@ -88,7 +88,7 @@ export default {
overflow
:
inherit
;
/*position: relative;*/
background
:
#fff
;
box-shadow
:
0
1px
4px
rgba
(
0
,
21
,
41
,.
08
);
/*box-shadow: 0 1px 4px rgba(0,21,41,.08);*/
position
:
fixed
;
top
:
0
;
z-index
:
999
;
...
...
dsk-operate-ui/src/layout/components/TagsView/index.vue
View file @
fb16a235
<
template
>
<div
id=
"tags-view-container"
class=
"tags-view-container"
>
<scroll-pane
ref=
"scrollPane"
class=
"tags-view-wrapper"
@
scroll=
"handleScroll"
>
<router-link
v-for=
"(tag, index) in visitedViews"
ref=
"tag"
:key=
"tag.path"
:class=
"isActive(tag)?'active':''"
:to=
"
{ path: tag.path, query: tag.query, fullPath: tag.fullPath }"
tag="span"
class="tags-view-item"
@click.middle.native="!isAffix(tag)?closeSelectedTag(tag):''"
@contextmenu.prevent.native="openMenu(tag,$event)"
>
<svg
:class=
"isActive(tag)?'tags-icon tags-icon-active':'tags-icon'"
aria-hidden=
"true"
>
<use
:xlink:href=
"iconName(tag)"
/>
</svg>
<span
:id=
"isActive(tag)?'tagTitle':''"
>
{{
tag
.
title
}}
</span>
<span
v-if=
"!isAffix(tag)"
class=
"el-icon-close"
@
click
.
prevent
.
stop=
"closeSelectedTag(tag)"
/>
<i
:class=
"index!=visitedViews.length-1 && index != isActiveIndex() && index != isActiveIndex()-1?'tags-item-line':'tags-item-line item-color'"
/>
</router-link>
<draggable
v-model=
"visitedViews"
:options=
"dragOptions"
@
end=
"end"
>
<router-link
v-for=
"(tag, index) in visitedViews"
ref=
"tag"
:key=
"tag.path"
:class=
"isActive(tag)?'active':''"
:to=
"
{ path: tag.path, query: tag.query, fullPath: tag.fullPath }"
tag="span"
class="tags-view-item"
@click.middle.native="!isAffix(tag)?closeSelectedTag(tag):''"
@contextmenu.prevent.native="openMenu(tag,$event)"
>
<svg
:class=
"isActive(tag)?'tags-icon tags-icon-active':'tags-icon'"
aria-hidden=
"true"
>
<use
:xlink:href=
"iconName(tag)"
/>
</svg>
<span
:id=
"isActive(tag)?'tagTitle':''"
>
{{
tag
.
title
}}
</span>
<span
v-if=
"!isAffix(tag)"
class=
"el-icon-close"
@
click
.
prevent
.
stop=
"closeSelectedTag(tag)"
/>
<i
:class=
"index!=visitedViews.length-1 && index != isActiveIndex() && index != isActiveIndex()-1?'tags-item-line':'tags-item-line item-color'"
/>
</router-link>
</draggable>
</scroll-pane>
<ul
v-show=
"visible"
:style=
"
{left:left+'px',top:top+'px'}" class="contextmenu">
<li
@
click=
"refreshSelectedTag(selectedTag)"
><i
class=
"el-icon-refresh-right"
></i>
刷新页面
</li>
...
...
@@ -60,11 +63,12 @@
</
template
>
<
script
>
import
ScrollPane
from
'./ScrollPane'
import
path
from
'path'
import
draggable
from
'vuedraggable'
import
ScrollPane
from
'./ScrollPane'
import
path
from
'path'
export
default
{
components
:
{
ScrollPane
},
components
:
{
ScrollPane
,
draggable
},
data
()
{
return
{
visible
:
false
,
...
...
@@ -73,11 +77,21 @@ export default {
selectedTag
:
{},
affixTags
:
[],
showall
:
false
,
dragOptions
:
{
animation
:
200
,
// 动画时间,单位毫秒
group
:
'items'
,
// 分组,同一分组内的元素可以互相拖拽
ghostClass
:
'ghost'
,
// 拖拽过程中占位元素的class名称
sort
:
true
,
// 是否启用排序功能
draggable
:
'.tags-view-item'
,
// 可拖拽元素的选择器
}
}
},
computed
:
{
visitedViews
()
{
return
this
.
$store
.
state
.
tagsView
.
visitedViews
visitedViews
:{
get
()
{
return
this
.
$store
.
state
.
tagsView
.
visitedViews
},
set
()
{}
},
iconName
()
{
return
function
(
val
)
{
...
...
@@ -292,7 +306,26 @@ export default {
},
handleScroll
()
{
this
.
closeMenu
()
}
},
end
(
event
)
{
//调换顺序
let
oldIndex
=
event
.
oldIndex
//移动初始位置
let
newIndex
=
event
.
newIndex
//运动终止位置
let
diff
=
Math
.
abs
(
newIndex
-
oldIndex
)
//插值绝对值
let
index
=
this
.
visitedViews
[
oldIndex
]
if
(
eval
(
oldIndex
)
>
eval
(
newIndex
))
{
for
(
let
i
=
0
;
i
<
diff
;
i
++
)
{
this
.
visitedViews
[
oldIndex
-
i
]
=
this
.
visitedViews
[
oldIndex
-
i
-
1
]
}
this
.
visitedViews
[
newIndex
]
=
index
}
else
{
for
(
let
i
=
0
;
i
<
diff
;
i
++
)
{
this
.
visitedViews
[
oldIndex
+
i
]
=
this
.
visitedViews
[
oldIndex
+
i
+
1
]
}
this
.
visitedViews
[
newIndex
]
=
index
}
this
.
$forceUpdate
()
},
}
}
</
script
>
...
...
dsk-operate-ui/src/plugins/download.js
View file @
fb16a235
...
...
@@ -63,7 +63,7 @@ export default {
saveAs
(
text
,
name
,
opts
);
},
exportByPost
(
url
,
params
){
exportByPost
(
url
,
params
,
name
){
var
url
=
baseURL
+
url
axios
({
method
:
'post'
,
...
...
@@ -72,8 +72,12 @@ export default {
data
:
params
,
headers
:
{
'Authorization'
:
'Bearer '
+
getToken
()
}
}).
then
(
res
=>
{
const
blob
=
new
Blob
([
res
.
data
],
{
type
:
'application/octet-stream/pdf/doc/xlsx/xls/docx'
})
this
.
saveAs
(
blob
,
decodeURI
(
res
.
headers
[
'download-filename'
]))
const
blob
=
new
Blob
([
res
.
data
],
{
type
:
'application/octet-stream/pdf/doc/xlsx/xls/docx/excel'
})
if
(
name
){
this
.
saveAs
(
blob
,
name
)
}
else
{
this
.
saveAs
(
blob
,
decodeURI
(
res
.
headers
[
'download-filename'
]))
}
})
},
async
printErrMsg
(
data
)
{
...
...
dsk-operate-ui/src/utils/request.js
View file @
fb16a235
...
...
@@ -36,6 +36,10 @@ service.interceptors.request.use(config => {
config
.
params
=
{};
config
.
url
=
url
;
}
cancelPending
(
config
)
config
.
cancelToken
=
new
CancelToken
(
res
=>
{
pending
.
push
({
'UrlPath'
:
config
.
url
,
'Cancel'
:
res
})
})
if
(
!
isRepeatSubmit
&&
(
config
.
method
===
'post'
||
config
.
method
===
'put'
))
{
const
requestObj
=
{
url
:
config
.
url
,
...
...
@@ -65,6 +69,23 @@ service.interceptors.request.use(config => {
Promise
.
reject
(
error
)
})
//频繁发送请求时,返回慢的数据覆盖了返回快的数据
let
pending
=
[]
let
CancelToken
=
axios
.
CancelToken
let
cancelPending
=
(
config
)
=>
{
pending
.
forEach
((
item
,
index
)
=>
{
if
(
config
)
{
if
(
item
.
UrlPath
===
config
.
url
)
{
item
.
Cancel
()
// 取消请求
pending
.
splice
(
index
,
1
)
// 移除当前请求记录
};
}
else
{
item
.
Cancel
()
// 取消请求
pending
.
splice
(
index
,
1
)
// 移除当前请求记录
}
})
}
// 响应拦截器
service
.
interceptors
.
response
.
use
(
res
=>
{
const
apiList
=
[
'/login'
,
'/system/user/profile/updatePwd'
]
//需要提示错误的接口
...
...
@@ -99,6 +120,7 @@ service.interceptors.response.use(res => {
Notification
.
error
({
title
:
msg
})
return
Promise
.
reject
(
'error'
)
}
else
{
cancelPending
(
res
.
config
)
return
res
.
data
}
},
error
=>
{
...
...
@@ -114,7 +136,7 @@ service.interceptors.response.use(res => {
if
(
message
==
'数据正在处理,请勿重复提交'
){
//重复提交,提示样式特殊处理
Message
({
message
:
message
,
type
:
'warning'
,
duration
:
5
*
1000
})
}
else
{
Message
({
message
:
message
,
type
:
'error'
,
duration
:
5
*
1000
})
//
Message({ message: message, type: 'error', duration: 5 * 1000 })
}
return
Promise
.
reject
(
error
)
}
...
...
dsk-operate-ui/src/views/custom/customList/index.vue
View file @
fb16a235
...
...
@@ -6,7 +6,7 @@
</div>
<div
class=
"app-container"
>
<el-card
class=
"box-card noborder"
>
<div
class=
"tables"
>
<div
class=
"tables
"
>
<div
class=
"empty"
v-if=
"tableData.total==0 && !isSkeleton"
>
<img
src=
"@/assets/images/project/empty.png"
>
<div
class=
"p1"
>
抱歉,没找到相关数据
</div>
...
...
@@ -60,171 +60,173 @@
</div>
</div>
<skeleton
v-if=
"isSkeleton"
></skeleton>
<el-table
v-show=
"!isSkeleton&&tableData.total > 0"
class=
"fixed-table"
max-height=
"640"
ref=
"thistables"
:data=
"tableData.rows"
stripe
border
style=
"width: 100%"
>
<el-table-column
prop=
"index"
label=
"序号"
fixed=
"left"
width=
"47"
>
<template
slot-scope=
'scope'
>
<span>
{{
(
searchParam
.
pageNum
-
1
)
*
searchParam
.
pageSize
+
scope
.
$index
+
1
}}
</span>
</
template
>
</el-table-column>
<el-table-column
prop=
"date"
label=
"企业名称"
fixed=
"left"
width=
"316"
>
<
template
slot-scope=
"scope"
>
<div
class=
"ps1"
>
<div
class=
"wordprimary ps2"
@
click=
"toDetail(scope.row,'business')"
v-html=
"scope.row.companyName"
></div>
<div
class=
"ps3"
>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"写跟进"
placement=
"top"
transition=
""
:open-delay=
"450"
>
<div
@
click=
"toDetail(scope.row,'gjjl')"
><img
class=
"i"
src=
"@/assets/images/project/edit_1.png"
><img
class=
"o"
src=
"@/assets/images/project/edit_11.png"
></div>
</el-tooltip>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"编辑信息"
placement=
"top"
transition=
""
:open-delay=
"450"
>
<div
@
click=
"toDetail(scope.row,'business')"
><img
class=
"i"
src=
"@/assets/images/project/edit_2.png"
><img
class=
"o"
src=
"@/assets/images/project/edit_22.png"
></div>
</el-tooltip>
</div>
</div>
</
template
>
<div
class=
"table-item"
>
<el-table
v-show=
"!isSkeleton&&tableData.total > 0"
class=
"fixed-table"
v-horizontal-scroll=
"'always'"
ref=
"thistables"
:data=
"tableData.rows"
stripe
border
style=
"width: 100%"
>
<el-table-column
prop=
"index"
label=
"序号"
fixed=
"left"
width=
"60"
>
<template
slot-scope=
'scope'
>
<span>
{{
(
searchParam
.
pageNum
-
1
)
*
searchParam
.
pageSize
+
scope
.
$index
+
1
}}
</span>
</
template
>
</el-table-column>
<el-table-column
prop=
"date"
label=
"企业名称"
fixed=
"left"
width=
"316"
>
<
template
slot-scope=
"scope"
>
<div
class=
"ps1"
>
<div
class=
"wordprimary ps2"
@
click=
"toDetail(scope.row,'business')"
v-html=
"scope.row.companyName"
></div>
<div
class=
"ps3"
>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"写跟进"
placement=
"top"
transition=
""
:open-delay=
"450"
>
<div
@
click=
"toDetail(scope.row,'gjjl')"
><img
class=
"i"
src=
"@/assets/images/project/edit_1.png"
><img
class=
"o"
src=
"@/assets/images/project/edit_11.png"
></div>
</el-tooltip>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"编辑信息"
placement=
"top"
transition=
""
:open-delay=
"450"
>
<div
@
click=
"toDetail(scope.row,'business')"
><img
class=
"i"
src=
"@/assets/images/project/edit_2.png"
><img
class=
"o"
src=
"@/assets/images/project/edit_22.png"
></div>
</el-tooltip>
</div>
</div>
</
template
>
</el-table-column>
<el-table-column
prop=
"cooperationProject"
label=
"合作项目"
width=
"76
"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
cooperationProject
||
'--'
}}
</
template
>
</el-table-column>
<el-table-column
prop=
"followProject"
label=
"跟进项目"
width=
"76
"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
followProject
||
'--'
}}
</
template
>
</el-table-column>
<el-table-column
prop=
"reserveProject"
label=
"储备项目"
width=
"76
"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
reserveProject
||
'--'
}}
</
template
>
</el-table-column>
<el-table-column
prop=
"legalPerson"
label=
"法定代表人"
width=
"110"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
legalPerson
||
'--'
}}
</
template
>
</el-table-column>
<el-table-column
prop=
"registerAddress"
label=
"注册地区"
width=
"160"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
registerAddress
||
'--'
}}
</
template
>
</el-table-column>
<el-table-column
prop=
"registerCapitalStr"
label=
"注册资本金(万元)"
width=
"14
0"
>
<
template
slot-scope=
"scope"
>
<span
v-if=
"scope.row.registerCapital && scope.row.registerCapital>0"
>
{{
scope
.
row
.
registerCapital
}}
</span><span
v-else
>
--
</span>
</
template
>
</el-table-column>
<el-table-column
prop=
"creditLevel"
label=
"企业主体评级"
width=
"10
0"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
creditLevel
||
'--'
}}
</
template
>
</el-table-column>
<el-table-column
prop=
"isOn"
label=
"上市公司"
width=
"76
"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
isOn
==
1
?
"是"
:
"否"
}}
</
template
>
</el-table-column>
<el-table-column
prop=
"isMajor"
label=
"局级大客户"
width=
"88
"
>
<
template
slot-scope=
"scope"
>
</el-table-column>
<el-table-column
prop=
"cooperationProject"
label=
"合作项目"
width=
"90
"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
cooperationProject
||
'--'
}}
</
template
>
</el-table-column>
<el-table-column
prop=
"followProject"
label=
"跟进项目"
width=
"90
"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
followProject
||
'--'
}}
</
template
>
</el-table-column>
<el-table-column
prop=
"reserveProject"
label=
"储备项目"
width=
"90
"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
reserveProject
||
'--'
}}
</
template
>
</el-table-column>
<el-table-column
prop=
"legalPerson"
label=
"法定代表人"
width=
"110"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
legalPerson
||
'--'
}}
</
template
>
</el-table-column>
<el-table-column
prop=
"registerAddress"
label=
"注册地区"
width=
"160"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
registerAddress
||
'--'
}}
</
template
>
</el-table-column>
<el-table-column
prop=
"registerCapitalStr"
label=
"注册资本金(万元)"
width=
"16
0"
>
<
template
slot-scope=
"scope"
>
<span
v-if=
"scope.row.registerCapital && scope.row.registerCapital>0"
>
{{
scope
.
row
.
registerCapital
}}
</span><span
v-else
>
--
</span>
</
template
>
</el-table-column>
<el-table-column
prop=
"creditLevel"
label=
"企业主体评级"
width=
"12
0"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
creditLevel
||
'--'
}}
</
template
>
</el-table-column>
<el-table-column
prop=
"isOn"
label=
"上市公司"
width=
"90
"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
isOn
==
1
?
"是"
:
"否"
}}
</
template
>
</el-table-column>
<el-table-column
prop=
"isMajor"
label=
"局级大客户"
width=
"90
"
>
<
template
slot-scope=
"scope"
>
<span
v-if=
"scope.row.isMajor != null"
>
{{
scope
.
row
.
isMajor
==
1
?
"是"
:
"否"
}}
</span>
<span
v-else
>
--
</span>
</
template
>
</el-table-column>
<el-table-column
prop=
"customerLevel"
label=
"客户等级"
width=
"76"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
customerLevel
||
'--'
}}
</
template
>
</el-table-column>
<el-table-column
prop=
"companyNature"
label=
"客户性质"
width=
"76"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
companyNature
||
'--'
}}
</
template
>
</el-table-column>
<el-table-column
prop=
"companyLevel"
label=
"客户级别"
width=
"76"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
companyLevel
||
'--'
}}
</
template
>
</el-table-column>
<el-table-column
prop=
"address"
label=
"企业母公司"
width=
"268"
>
<
template
slot-scope=
"scope"
>
<div
class=
""
>
{{
scope
.
row
.
superCompany
||
'--'
}}
</div>
</
template
>
</el-table-column>
<el-table-column
:key=
"keys"
prop=
"mainBusiness"
label=
"主营业务"
width=
"400"
>
<
template
slot-scope=
"scope"
>
<div
v-if=
"scope.row.mainBusiness == null || scope.row.mainBusiness == ''"
>
--
</div>
<div
v-if=
"scope.row.mainBusiness1"
>
<div
class=
"box"
v-if=
"scope.row.sq1==true"
>
{{
scope
.
row
.
mainBusiness1
}}
...
<span
@
click=
"sq1(scope.row,false)"
>
更多
</span></div>
<div
class=
"box"
v-else
>
{{
scope
.
row
.
mainBusiness
}}
<span
@
click=
"sq1(scope.row,true)"
>
收起
</span></div>
</div>
<div
v-else
>
{{
scope
.
row
.
mainBusiness
}}
</div>
</
template
>
</el-table-column>
<el-table-column
prop=
"companyAttribute"
:key=
"keys+2"
label=
"发包属性"
width=
"400"
>
<
template
slot-scope=
"scope"
>
<div
v-if=
"scope.row.companyAttribute == null || scope.row.companyAttribute == ''"
>
--
</div>
<div
v-if=
"scope.row.companyAttribute1"
>
<div
class=
"box"
v-if=
"scope.row.sq2==true"
>
{{
scope
.
row
.
companyAttribute1
}}
...
<span
@
click=
"sq2(scope.row,false)"
>
更多
</span></div>
<div
class=
"box"
v-else
>
{{
scope
.
row
.
companyAttribute
}}
<span
@
click=
"sq2(scope.row,true)"
>
收起
</span></div>
</div>
<div
v-else
>
{{
scope
.
row
.
companyAttribute
}}
</div>
</
template
>
</el-table-column>
<el-table-column
prop=
"followUser"
label=
"跟进人"
width=
"110"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
followUser
||
'--'
}}
</
template
>
</el-table-column>
</el-table>
<span
v-else
>
--
</span>
</
template
>
</el-table-column>
<el-table-column
prop=
"customerLevel"
label=
"客户等级"
width=
"90"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
customerLevel
||
'--'
}}
</
template
>
</el-table-column>
<el-table-column
prop=
"companyNature"
label=
"客户性质"
width=
"90"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
companyNature
||
'--'
}}
</
template
>
</el-table-column>
<el-table-column
prop=
"companyLevel"
label=
"客户级别"
width=
"90"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
companyLevel
||
'--'
}}
</
template
>
</el-table-column>
<el-table-column
prop=
"address"
label=
"企业母公司"
width=
"200"
>
<
template
slot-scope=
"scope"
>
<div
class=
""
>
{{
scope
.
row
.
superCompany
||
'--'
}}
</div>
</
template
>
</el-table-column>
<el-table-column
:key=
"keys"
prop=
"mainBusiness"
label=
"主营业务"
width=
"300"
>
<
template
slot-scope=
"scope"
>
<div
v-if=
"scope.row.mainBusiness == null || scope.row.mainBusiness == ''"
>
--
</div>
<div
v-if=
"scope.row.mainBusiness1"
>
<div
class=
"box"
v-if=
"scope.row.sq1==true"
>
{{
scope
.
row
.
mainBusiness1
}}
...
<span
@
click=
"sq1(scope.row,false)"
>
更多
</span></div>
<div
class=
"box"
v-else
>
{{
scope
.
row
.
mainBusiness
}}
<span
@
click=
"sq1(scope.row,true)"
>
收起
</span></div>
</div>
<div
v-else
>
{{
scope
.
row
.
mainBusiness
}}
</div>
</
template
>
</el-table-column>
<el-table-column
prop=
"companyAttribute"
:key=
"keys+2"
label=
"发包属性"
width=
"300"
>
<
template
slot-scope=
"scope"
>
<div
v-if=
"scope.row.companyAttribute == null || scope.row.companyAttribute == ''"
>
--
</div>
<div
v-if=
"scope.row.companyAttribute1"
>
<div
class=
"box"
v-if=
"scope.row.sq2==true"
>
{{
scope
.
row
.
companyAttribute1
}}
...
<span
@
click=
"sq2(scope.row,false)"
>
更多
</span></div>
<div
class=
"box"
v-else
>
{{
scope
.
row
.
companyAttribute
}}
<span
@
click=
"sq2(scope.row,true)"
>
收起
</span></div>
</div>
<div
v-else
>
{{
scope
.
row
.
companyAttribute
}}
</div>
</
template
>
</el-table-column>
<el-table-column
prop=
"followUser"
label=
"跟进人"
width=
"110"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
followUser
||
'--'
}}
</
template
>
</el-table-column>
</el-table>
</div>
<div
class=
"bottems"
v-if=
"tableData.total>searchParam.pageSize"
>
<el-pagination
background
...
...
dsk-operate-ui/src/views/custom/historicalCustomers/index.vue
View file @
fb16a235
...
...
@@ -18,7 +18,7 @@
</div>
</div>
<skeleton
v-if=
"isSkeleton"
></skeleton>
<el-table
v-if=
"!isSkeleton&&tableData.total > 0"
class=
"fixed-table"
max-height=
"640"
<el-table
v-if=
"!isSkeleton&&tableData.total > 0"
class=
"fixed-table"
v-horizontal-scroll=
"'always'"
max-height=
"640"
:data=
"tableData.rows"
stripe
border
style=
"width: 100%"
>
...
...
@@ -26,7 +26,7 @@
prop=
"index"
label=
"序号"
fixed=
"left"
width=
"
47
"
>
width=
"
60
"
>
<template
slot-scope=
'scope'
>
<span>
{{
(
searchParam
.
pageNum
-
1
)
*
searchParam
.
pageSize
+
scope
.
$index
+
1
}}
</span>
</
template
>
...
...
@@ -51,7 +51,7 @@
<el-table-column
prop=
"cooperationProject"
label=
"合作项目"
width=
"
76
"
>
width=
"
90
"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
cooperationProject
||
'--'
}}
</
template
>
...
...
@@ -59,7 +59,7 @@
<el-table-column
prop=
"followProject"
label=
"跟进项目"
width=
"
76
"
>
width=
"
90
"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
followProject
||
'--'
}}
</
template
>
...
...
@@ -67,7 +67,7 @@
<el-table-column
prop=
"reserveProject"
label=
"储备项目"
width=
"
76
"
>
width=
"
90
"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
reserveProject
||
'--'
}}
</
template
>
...
...
@@ -91,7 +91,7 @@
<el-table-column
prop=
"registerCapitalStr"
label=
"注册资本金(万元)"
width=
"1
4
0"
>
width=
"1
6
0"
>
<
template
slot-scope=
"scope"
>
<span
v-if=
"scope.row.registerCapital && scope.row.registerCapital>0"
>
{{
scope
.
row
.
registerCapital
}}
</span><span
v-else
>
--
</span>
</
template
>
...
...
dsk-operate-ui/src/views/custom/overview/index.vue
View file @
fb16a235
...
...
@@ -108,7 +108,7 @@
<div
class=
"content_wap3"
>
<div
class=
"flex-box query-box"
>
<div
class=
"flex-box query-params"
>
<span
class=
"title"
>
跟进动态
</span>
<span
class=
"
item_
title"
>
跟进动态
</span>
</div>
<div
class=
"flex-box time-label"
>
<div
class=
"labels"
>
...
...
@@ -689,14 +689,6 @@
border
:
1px
solid
#0081FF
;
color
:
#ffffff
;
background
:
#0081FF
;
/*.el-button{*/
/*border: 1px solid #0081FF;*/
/*span{*/
/*color: #ffffff;*/
/*background: #0081FF;*/
/*border: 1px solid #0081FF;*/
/*}*/
/*}*/
}
...
...
@@ -856,7 +848,7 @@
.query-box
{
padding
:
16px
;
}
.title
{
.
item_
title
{
font-weight
:
700
;
color
:
#232323
;
font-size
:
16px
;
...
...
dsk-operate-ui/src/views/detail/groupAccount/component/Sidebar.vue
View file @
fb16a235
...
...
@@ -53,12 +53,14 @@ export default {
{
title
:
'集团成员'
,
pathName
:
'members'
},
{
title
:
'集团资质'
,
pathName
:
'qualifications'
},
{
title
:
'集团业绩'
,
pathName
:
'performance'
},
// {title: '集团招标', pathName: 'zhaobiao'},
],
defaultRoute
:
[],
customer
:[
'members'
,
'qualifications'
,
'performance'
,
// 'zhaobiao',
],
uniqueOpened
:
false
,
searchIndex
:
''
...
...
dsk-operate-ui/src/views/detail/groupAccount/component/members.vue
View file @
fb16a235
...
...
@@ -171,7 +171,7 @@
qyType
:[],
cgblList
:[
'100%'
,
'50%以上'
,
'20%以上'
,
'5%以上'
,
'1%-5%'
],
cgblName
:
''
,
paramsData
:
[]
,
//储存组件筛选的条件
paramsData
:
{}
,
//储存组件筛选的条件
}
},
watch
:{
...
...
@@ -244,7 +244,7 @@
}
},
handleQuery
(
params
){
this
.
paramsData
=
params
;
this
.
paramsData
=
params
||
{}
;
this
.
tableLoading
=
true
let
data
=
this
.
getAreaList
(
params
||
this
.
queryParams
)
memberList
(
data
).
then
(
res
=>
{
...
...
@@ -400,7 +400,11 @@
},
sortChange
({
column
,
prop
,
order
}){
this
.
queryParams
.
orderName
=
prop
this
.
paramsData
.
orderName
=
prop
this
.
paramsData
.
orderName
=
prop
;
this
.
paramsData
.
combineId
=
this
.
customerId
;
this
.
paramsData
.
pageNum
=
1
;
this
.
paramsData
.
pageSize
=
20
;
if
(
column
.
order
===
"ascending"
){
this
.
queryParams
.
orderType
=
'asc'
this
.
paramsData
.
orderType
=
'asc'
...
...
dsk-operate-ui/src/views/detail/groupAccount/component/performance.vue
View file @
fb16a235
...
...
@@ -5,8 +5,9 @@
:form-data=
"formData"
:query-params=
"queryParams"
:total=
"tableDataTotal"
:isExcel=
"
fals
e"
:isExcel=
"
tru
e"
@
handle-search=
"handleSearch"
@
handle-excel=
"clickEXCEL"
>
<template
slot=
"slot"
>
...
...
@@ -57,7 +58,7 @@
import
{
getDictType
}
from
'@/api/main'
export
default
{
name
:
'qualifications'
,
props
:
[
'customerId'
],
props
:
[
'customerId'
,
'combineName'
],
mixins
:
[
mixin
],
components
:{},
data
(){
...
...
@@ -74,12 +75,12 @@
forData
:
[
{
label
:
'中标时间'
,
prop
:
'bidTime'
,
slot
:
true
,
minWidth
:
'80'
},
{
label
:
'中标成员'
,
prop
:
'companyName'
,
slot
:
true
,
minWidth
:
'190'
},
{
label
:
'持股比例'
,
prop
:
'stockPercent'
,
slot
:
true
,
minWidth
:
'
95
'
},
{
label
:
'持股比例'
,
prop
:
'stockPercent'
,
slot
:
true
,
minWidth
:
'
80
'
},
{
label
:
'项目名称'
,
prop
:
'projectName'
,
slot
:
true
,
minWidth
:
'260'
},
{
label
:
'中标金额'
,
prop
:
'bidAmount'
,
slot
:
true
,
minWidth
:
'110'
},
{
label
:
'中标地区'
,
prop
:
'address'
,
minWidth
:
'
8
0'
},
{
label
:
'业绩类型'
,
prop
:
'boundType'
,
minWidth
:
'
10
0'
},
{
label
:
'项目类型'
,
prop
:
'projectType'
,
minWidth
:
'
10
0'
},
{
label
:
'中标地区'
,
prop
:
'address'
,
minWidth
:
'
13
0'
},
{
label
:
'业绩类型'
,
prop
:
'boundType'
,
minWidth
:
'
8
0'
},
{
label
:
'项目类型'
,
prop
:
'projectType'
,
minWidth
:
'
8
0'
},
{
label
:
'业主单位'
,
prop
:
'projectUnit'
,
slot
:
true
,
minWidth
:
'190'
},
],
formData
:
[
...
...
@@ -103,6 +104,7 @@
],
timeList
:
[
'近三天'
,
'近七天'
,
'近半月'
,
'自定义'
],
moneyList
:
[
'5000万以下'
,
'5000万-1亿'
,
'1亿-5亿'
,
'5亿-10亿'
,
'10亿以上'
,
'自定义'
],
dataEXCEL
:{}
}
},
created
()
{
...
...
@@ -162,6 +164,7 @@
}
delete
data
.
cgbl
}
this
.
dataEXCEL
=
data
;
businessList
(
data
).
then
(
res
=>
{
this
.
tableData
=
res
.
code
==
200
?
res
.
rows
:[]
this
.
tableDataTotal
=
res
.
total
...
...
@@ -263,6 +266,16 @@
// this.$children[1].$refs.tableRef.bodyWrapper.scrollTop = 0
},
500
);
},
clickEXCEL
()
{
this
.
dataEXCEL
.
combineName
=
this
.
combineName
;
if
(
this
.
tableDataTotal
>
2000
){
this
.
dataEXCEL
.
pageSize
=
2000
;
}
else
{
this
.
dataEXCEL
.
pageSize
=
this
.
tableDataTotal
;
}
delete
this
.
dataEXCEL
.
pageNum
this
.
$download
.
exportByPost
(
'/combine/info/export/win/bid'
,
this
.
dataEXCEL
,
'集团中标.xlsx'
);
},
}
}
</
script
>
...
...
dsk-operate-ui/src/views/detail/groupAccount/component/qualifications.vue
View file @
fb16a235
...
...
@@ -39,7 +39,7 @@
import
QualificationsDetail
from
'./qualificationsDetail'
export
default
{
name
:
'qualifications'
,
props
:
[
'customerId'
,
'
n
ame'
],
props
:
[
'customerId'
,
'
combineN
ame'
],
mixins
:
[
mixin
],
components
:{
QualificationsDetail
...
...
@@ -65,7 +65,7 @@
tableData
:[],
tableDataTotal
:
0
,
title
:
''
,
rowData
:
''
rowData
:
''
,
}
},
created
()
{
...
...
@@ -75,7 +75,8 @@
methods
:
{
handleQuery
(
params
){
this
.
isSkeleton
=
true
let
data
=
params
?
params
:
this
.
queryParams
let
data
=
params
?
params
:
this
.
queryParams
;
certificateList
(
data
).
then
(
res
=>
{
this
.
isSkeleton
=
false
if
(
res
.
code
===
200
){
...
...
@@ -98,10 +99,11 @@
})
},
handleClick
(
e
,
data
)
{
this
.
title
=
this
.
n
ame
+
'-'
+
data
.
qualificationName
+
'(共'
+
data
.
companyCount
+
'条)'
this
.
title
=
this
.
combineN
ame
+
'-'
+
data
.
qualificationName
+
'(共'
+
data
.
companyCount
+
'条)'
this
.
rowData
=
data
this
.
isDetails
=
true
},
}
}
</
script
>
...
...
dsk-operate-ui/src/views/detail/groupAccount/component/qualificationsDetail.vue
View file @
fb16a235
...
...
@@ -6,11 +6,17 @@
custom-class=
"client-drawer"
:with-header=
"false"
@
closed=
"cancel"
>
<skeleton
style=
"margin-left:16px;"
v-if=
"isSkeleton"
></skeleton>
<div
class=
"head"
v-if=
"!isSkeleton"
>
<div
class=
"head"
>
<img
class=
"tip-img"
src=
"@/assets/images/icon.png"
/>
<span>
{{
title
}}
</span>
</div>
<div
style=
"height: 34px;margin: 12px"
>
<div
class=
"cooperate-name"
id=
"focus01"
>
<el-input
clearable
@
clear=
"changeSelect"
style=
"width: 300px;"
@
focus=
"clickFocus('focus01')"
@
blur=
"clickFocus('focus01')"
v-model=
"queryParams.companyName"
placeholder=
"成员名称查询"
></el-input>
<span
@
click=
"changeSelect"
>
搜索
</span>
</div>
</div>
<skeleton
style=
"margin-left:16px;"
v-if=
"isSkeleton"
></skeleton>
<tables
v-if=
"!isSkeleton"
:tableLoading=
"tableLoading"
...
...
@@ -18,6 +24,7 @@
:forData=
"forData"
:tableDataTotal=
"tableDataTotal"
:queryParams=
"queryParams"
:MaxPage=
500
@
handle-current-change=
"handleCurrentChange"
style=
"margin: 12px;"
>
...
...
@@ -50,11 +57,9 @@ export default {
queryParams
:
{
id
:
this
.
data
.
id
,
pageNum
:
1
,
pageSize
:
10
pageSize
:
10
,
companyName
:
''
},
formData
:
[
{
type
:
3
,
fieldName
:
'keys'
,
value
:
''
,
placeholder
:
'输入项目/工程名称查询'
,
options
:
[]},
],
forData
:
[
{
label
:
'拥有该资质成员'
,
prop
:
'companyName'
,
slot
:
true
},
{
label
:
'成员共有资质(个)'
,
prop
:
'certificateCount'
},
...
...
@@ -73,7 +78,8 @@ export default {
methods
:
{
async
handleQuery
(
params
)
{
this
.
isSkeleton
=
true
let
param
=
params
?
params
:
this
.
queryParams
let
param
=
params
?
params
:
this
.
queryParams
;
console
.
log
(
param
)
let
res
=
await
memberCertificateList
(
param
)
this
.
isSkeleton
=
false
if
(
res
.
code
==
200
){
...
...
@@ -94,7 +100,19 @@ export default {
},
cancel
()
{
this
.
$emit
(
'cancel'
)
}
},
changeSelect
(){
this
.
queryParams
.
pageNum
=
1
this
.
handleQuery
()
},
clickFocus
(
e
){
document
.
getElementById
(
e
).
classList
.
toggle
(
'span-ba'
)
},
//分页
handleCurrentChange
(
e
){
this
.
queryParams
.
pageNum
=
e
this
.
handleQuery
()
},
}
}
</
script
>
...
...
@@ -114,5 +132,47 @@ export default {
height
:
17px
;
margin
:
0
8px
-2px
12px
;
}
.cooperate-name
{
display
:
flex
;
border-radius
:
2px
0px
0px
2px
;
border
:
1px
solid
#D9D9D9
;
line-height
:
34px
;
height
:
34px
;
width
:
300px
;
float
:
right
;
span
{
width
:
80px
;
height
:
32px
;
line-height
:
32px
;
font-size
:
14px
;
background
:
#F5F5F5
;
text-align
:
center
;
color
:
#0081FF
;
border
:
1px
solid
#EFEFEF
;
border-left
:
0
;
cursor
:
pointer
;
}
&
.span-ba
{
border
:
1px
solid
#0081FF
;
span
{
color
:
#ffffff
;
background
:
#0081FF
;
border
:
1px
solid
#0081FF
;
}
}
::v-deep
.el-input
{
flex
:
1
;
}
::v-deep
.el-input__inner
{
border
:
0
;
line-height
:
32px
;
height
:
32px
;
position
:
absolute
;
top
:
0
;
padding-right
:
22px
;
font-size
:
12px
;
padding-left
:
8px
;
}
}
}
</
style
>
dsk-operate-ui/src/views/detail/groupAccount/component/zhaobiao.vue
0 → 100644
View file @
fb16a235
<
template
>
<div
class=
"performance"
>
<div
class=
"headForm"
>
<div
class=
"flex-box query-box"
style=
"margin-bottom: 12px;"
>
<div
class=
"flex-box query-params"
>
<span
class=
"common-title"
>
集团招标
</span>
<div
class=
"cooperate-name"
id=
"focus00"
>
<el-input
clearable
@
clear=
"changeSelect"
style=
"width: 300px;"
@
focus=
"clickFocus('focus00')"
@
blur=
"clickFocus('focus00')"
v-model=
"queryParams.keys"
placeholder=
"搜索招标成员名称/项目名称/代理单位"
></el-input>
<span
@
click=
"changeSelect"
>
搜索
</span>
</div>
</div>
</div>
<div
class=
"flex-box query-box"
>
<div
class=
"flex-box query-params"
>
<div
class=
"headForm-from"
>
<div
class=
"from-item"
:key=
"i"
v-for=
"(form, i) in formData"
>
<!-- 单选 -->
<template
v-if=
"form.type==1"
>
<el-select
v-model=
"form.value"
clearable
class=
"form-content-width"
:style=
"form.width?'width:'+form.width+'px':'max-width: 110px'"
:placeholder=
"form.placeholder"
@
change=
"changeSelect"
>
<el-option
v-for=
"(item, index) in form.options"
:key=
"index"
:label=
"item.name"
:value=
"item.value"
:disabled=
"item.disabled"
/>
</el-select>
</
template
>
<!-- 年月日 -->
<
template
v-if=
"form.type==2"
>
<el-date-picker
@
change=
"changeSelect"
class=
"fromTime"
style=
"width: 210px"
v-model=
"form.value"
type=
"daterange"
prefix-icon=
"fromTime-icon"
value-format=
"yyyy-MM-dd"
range-separator=
"至"
start-placeholder=
"开始日期"
end-placeholder=
"结束日期"
>
</el-date-picker>
</
template
>
<!-- 多选 -->
<
template
v-if=
"form.type==4"
>
<el-select
class=
"form-content-width"
:class=
"form.value.length > 1 ? 'selectTag' : ''"
v-model=
"form.value"
multiple
collapse-tags
clearable
:style=
"form.width?'width:'+form.width+'px':'max-width: 170px'"
:placeholder=
"form.placeholder"
@
change=
"changeSelect"
>
<el-option
v-for=
"(item, index) in form.options"
:key=
"index"
:label=
"item.name"
:value=
"item.value"
/>
</el-select>
</
template
>
<!-- 时间、自定义 -->
<
template
v-else-if=
"form.type==5"
>
<custom-time-select
:timeList=
"form.timeList"
v-model=
"form.value"
:placeholder=
"form.placeholder"
:dateFrom=
"form.dateFrom ? form.dateFrom : ''"
:dateTo=
"form.dateTo ? form.dateTo : ''"
@
handle-search=
"changeSelect"
/>
</
template
>
<!-- 金额 -->
<
template
v-else-if=
"form.type==6"
>
<custom-money-select
:moneyList=
"form.moneyList"
v-model=
"form.value"
:placeholder=
"form.placeholder"
@
handle-search=
"changeSelect"
/>
</
template
>
<!-- 地区选择 -->
<
template
v-else-if=
"form.type==7"
>
<el-cascader
ref=
"cascader"
:options=
"form.options"
:props=
"form.props"
v-model=
"form.value"
@
change=
"changeSelect"
:placeholder=
"form.placeholder"
collapse-tags
clearable
></el-cascader>
</
template
>
</div>
</div>
</div>
<div
class=
"flex-box"
>
<span
class=
"flex-box ability-total"
>
共{{ tableDataTotal }}条
</span>
<span
v-hasPermi=
"['combine:info:export:bid']"
class=
"flex-box ability-excel"
@
click=
"clickEXCEL"
><img
src=
"@/assets/images/ability_excel.png"
>
导出EXCEL
</span>
</div>
</div>
</div>
<skeleton
style=
"margin-left:16px;"
v-if=
"isSkeleton"
></skeleton>
<tables
v-if=
"!isSkeleton"
:defaultSort=
"defaultSort"
:tableLoading=
"tableLoading"
:tableData=
"tableData"
:forData=
"forData"
:MaxPage=
500
:tableDataTotal=
"tableDataTotal"
:queryParams=
"queryParams"
@
handle-current-change=
"handleCurrentChange"
@
sort-change=
"sortChange"
>
<
template
slot=
"tenderee"
slot-scope=
"scope"
>
<router-link
:to=
"scope.row.tendereeUipId?`/enterprise/$
{encodeStr(scope.row.tendereeId)}`:`/company/${encodeStr(scope.row.tendereeId)}`" tag="a" class="a-link" v-if="scope.row.tendereeId
&&
scope.row.tenderee" v-html="scope.row.tenderee">
</router-link>
<div
v-else
v-html=
"scope.row.tenderee || '--'"
></div>
</
template
>
<
template
slot=
"projectName"
slot-scope=
"scope"
>
<router-link
:to=
"`/radar/Notice/details/$
{scope.row.bId}`" tag="a" class="a-link" v-if="scope.row.bId" v-html="scope.row.projectName">
</router-link>
<div
v-else
v-html=
"scope.row.projectName || '--'"
></div>
</
template
>
<
template
slot=
"agency"
slot-scope=
"scope"
>
<router-link
:to=
"scope.row.agencyUipId?`/enterprise/$
{encodeStr(scope.row.agencyId)}`:`/company/${encodeStr(scope.row.agencyId)}`" tag="a" class="a-link" v-if="scope.row.agencyId
&&
scope.row.agency" v-html="scope.row.agency">
</router-link>
<div
v-else
v-html=
"scope.row.agency || '--'"
></div>
</
template
>
<
template
slot=
"stockPercent"
slot-scope=
"scope"
>
<div>
{{
scope
.
row
.
stockPercent
||
'--'
}}{{
scope
.
row
.
stockPercent
?
'%'
:
''
}}
</div>
</
template
>
<
template
slot=
"bidAmount"
slot-scope=
"scope"
>
<div>
{{
scope
.
row
.
bidAmount
||
'--'
}}{{
scope
.
row
.
bidAmount
?
'万元'
:
''
}}
</div>
</
template
>
</tables>
</div>
</template>
<
script
>
import
mixin
from
'../../party-a/mixins/mixin'
import
CustomTimeSelect
from
'../../party-a/component/CustomTimeSelect'
import
CustomMoneySelect
from
'../../party-a/component/CustomMoneySelect'
import
{
bidPage
,
exportBid
}
from
'@/api/detail/groupAccount/groupAccount'
import
dataRegion
from
'@/assets/json/dataRegion1'
import
{
getDictType
}
from
'@/api/main'
export
default
{
name
:
'qualifications'
,
props
:
[
'customerId'
,
'combineName'
],
mixins
:
[
mixin
],
components
:{
CustomTimeSelect
,
CustomMoneySelect
},
data
(){
return
{
isSkeleton
:
true
,
tableLoading
:
false
,
isDetails
:
false
,
defaultSort
:
{
prop
:
'time'
,
order
:
'descending'
},
queryParams
:
{
combineId
:
this
.
customerId
,
pageNum
:
1
,
pageSize
:
20
,
keys
:
''
},
forData
:
[
{
label
:
'招标发布时间'
,
prop
:
'issueTime'
,
minWidth
:
'90'
},
{
label
:
'招标成员'
,
prop
:
'tenderee'
,
slot
:
true
,
minWidth
:
'190'
},
{
label
:
'持股比例'
,
prop
:
'stockPercent'
,
slot
:
true
,
minWidth
:
'80'
},
{
label
:
'项目名称'
,
prop
:
'projectName'
,
slot
:
true
,
minWidth
:
'220'
},
{
label
:
'预算金额'
,
prop
:
'bidAmount'
,
slot
:
true
,
minWidth
:
'100'
},
{
label
:
'项目地区'
,
prop
:
'address'
,
minWidth
:
'110'
},
{
label
:
'招标采购分类'
,
prop
:
'subjectMatter'
,
minWidth
:
'90'
},
{
label
:
'项目类型'
,
prop
:
'projectType'
,
minWidth
:
'80'
},
{
label
:
'代理单位'
,
prop
:
'agency'
,
minWidth
:
'160'
,
slot
:
true
},
],
formData
:
[
{
type
:
7
,
fieldName
:
'province'
,
value
:
''
,
props
:
{
multiple
:
true
,
value
:
'id'
,
expandTrigger
:
'hover'
},
placeholder
:
'项目地区'
,
options
:[]},
{
type
:
5
,
fieldName
:
'time'
,
value
:
''
,
placeholder
:
'招标发布时间'
,
startTime
:
'startTime'
,
endTime
:
'endTime'
,
timeList
:[]
},
{
type
:
6
,
fieldName
:
'money'
,
value
:
''
,
placeholder
:
'预算金额'
,
startMoney
:
'minAmount'
,
endMoney
:
'maxAmount'
,
moneyList
:[]
},
{
type
:
1
,
fieldName
:
'subjectMatters'
,
value
:
''
,
placeholder
:
'招标采购分类'
,
options
:
[],
width
:
140
},
{
type
:
4
,
fieldName
:
'projectTypes'
,
value
:
''
,
placeholder
:
'项目类型'
,
options
:
[],
width
:
150
},
{
type
:
1
,
fieldName
:
'cgbl'
,
value
:
''
,
placeholder
:
'持股比例'
,
options
:
[],
width
:
110
},
],
tableData
:[],
tableDataTotal
:
0
,
addressList
:
[],
cgblList
:
[
{
name
:
'100%'
,
value
:
'100%'
},
{
name
:
'50%以上'
,
value
:
'50%以上'
},
{
name
:
'20%以上'
,
value
:
'20%以上'
},
{
name
:
'5%以上'
,
value
:
'5%以上'
},
{
name
:
'1%-5%'
,
value
:
'1%-5%'
},
],
cgType
:
[
{
name
:
'工程'
,
value
:
'工程'
},
{
name
:
'货物'
,
value
:
'货物'
},
{
name
:
'服务'
,
value
:
'服务'
},
{
name
:
'其他'
,
value
:
'其他'
},
],
timeList
:
[
'近三天'
,
'近七天'
,
'近半月'
,
'自定义'
],
moneyList
:
[
'5000万以下'
,
'5000万-1亿'
,
'1亿-5亿'
,
'5亿-10亿'
,
'10亿以上'
,
'自定义'
],
dataEXCEL
:{},
}
},
created
()
{
this
.
dataRegion
()
this
.
handleQuery
()
this
.
formData
[
1
].
timeList
=
this
.
timeList
;
this
.
formData
[
2
].
moneyList
=
this
.
moneyList
;
this
.
formData
[
3
].
options
=
this
.
cgType
;
this
.
formData
[
5
].
options
=
this
.
cgblList
;
//项目类型
getDictType
(
'project_type_new'
).
then
(
result
=>
{
let
data
=
result
.
code
==
200
?
result
.
data
:[];
if
(
data
.
length
>
0
){
for
(
var
i
=
0
;
i
<
data
.
length
;
i
++
){
this
.
formData
[
4
].
options
.
push
({
name
:
data
[
i
].
dictLabel
,
value
:
data
[
i
].
dictValue
,
})
}
}
})
},
methods
:
{
handleQuery
(
params
){
this
.
isSkeleton
=
true
let
data
=
this
.
getAreaList
(
params
||
this
.
queryParams
)
if
(
data
.
cgbl
){
if
(
data
.
cgbl
===
'100%'
){
data
.
minStockPercent
=
1
}
if
(
data
.
cgbl
===
'50%以上'
){
data
.
minStockPercent
=
0.5
}
if
(
data
.
cgbl
===
'20%以上'
){
data
.
minStockPercent
=
0.2
}
if
(
data
.
cgbl
===
'5%以上'
){
data
.
minStockPercent
=
0.05
}
if
(
data
.
cgbl
===
'1%-5%'
){
data
.
minStockPercent
=
0.01
data
.
maxStockPercent
=
0.05
}
delete
data
.
cgbl
}
if
(
data
.
subjectMatters
){
data
.
subjectMatters
=
[
data
.
subjectMatters
]
}
if
(
!
data
.
endTime
){
data
.
endTime
=
this
.
formatDate
(
new
Date
())
}
this
.
dataEXCEL
=
data
;
bidPage
(
data
).
then
(
res
=>
{
this
.
tableData
=
res
.
code
==
200
?
res
.
rows
:[];
console
.
log
(
res
.
total
)
this
.
tableDataTotal
=
res
.
total
this
.
isSkeleton
=
false
this
.
tableLoading
=
false
})
},
formatDate
(
timestamp
)
{
var
time
=
new
Date
(
timestamp
)
let
year
=
time
.
getFullYear
();
let
month
=
time
.
getMonth
()
+
1
>=
10
?
parseInt
(
time
.
getMonth
()
+
1
)
:
"0"
+
parseInt
(
time
.
getMonth
()
+
1
);
let
day
=
time
.
getDate
()
>=
10
?
time
.
getDate
()
:
"0"
+
time
.
getDate
();
return
year
+
'-'
+
month
+
'-'
+
day
},
//地区
async
dataRegion
()
{
var
str
=
[];
for
(
let
x
=
0
;
x
<
3
;
x
++
)
{
for
(
let
i
=
0
;
i
<
dataRegion
.
length
;
i
++
)
{
if
(
dataRegion
[
i
].
regionLevel
==
x
+
1
&&
x
+
1
==
1
)
{
str
.
push
({
'id'
:
dataRegion
[
i
].
id
,
"label"
:
dataRegion
[
i
].
regionName
,
"short"
:
dataRegion
[
i
].
short
,
"value"
:
dataRegion
[
i
].
parentId
,
"children"
:
[]
});
}
// else if (dataRegion[i].regionLevel == x + 1 && x + 1 == 2) {
// for (let j = 0; j
<
str
.
length
;
j
++
)
{
// if (str[j].id == dataRegion[i].parentId) {
// str[j].children.push({
// 'id': dataRegion[i].id,
// "label": dataRegion[i].regionName,
// "short": dataRegion[i].short,
// "value": dataRegion[i].parentId,
// "children": []
// });
// }
// }
// } else if (dataRegion[i].regionLevel == x + 1 && x + 1 == 3) {
// for (let j = 0; j
<
str
.
length
;
j
++
)
{
// for (let k = 0; k
<
str
[
j
].
children
.
length
;
k
++
)
{
// if (str[j].children[k].id == dataRegion[i].parentId) {
// str[j].children[k].children.push({
// 'id': dataRegion[i].id,
// "label": dataRegion[i].regionName,
// "short": dataRegion[i].short,
// "value": dataRegion[i].parentId
// // "children":[]
// });
// }
// }
// }
// }
}
}
for
(
var
i
=
0
;
i
<
str
.
length
;
i
++
)
{
if
(
str
[
i
].
children
.
length
)
{
}
else
{
delete
str
[
i
].
children
}
}
this
.
addressList
=
str
;
this
.
formData
[
0
].
options
=
str
;
},
getAreaList
(
params
){
if
(
params
.
province
&&
params
.
province
.
length
>
0
){
let
arr
=
this
.
$refs
.
cascader
[
0
].
getCheckedNodes
()
let
provinceIds
=
[],
cityIds
=
[],
districtIds
=
[]
for
(
var
i
in
arr
)
{
if
(
arr
[
i
].
parent
)
{
if
(
!
arr
[
i
].
parent
.
checked
)
{
if
(
arr
[
i
].
hasChildren
||
arr
[
i
].
level
==
2
){
cityIds
.
push
(
arr
[
i
].
data
.
id
)
}
else
{
districtIds
.
push
(
arr
[
i
].
data
.
id
)
}
}
}
else
{
provinceIds
.
push
(
arr
[
i
].
data
.
id
)
}
}
delete
params
.
province
provinceIds
.
length
>
0
?
params
.
provinceIds
=
provinceIds
:
''
cityIds
.
length
>
0
?
params
.
cityIds
=
cityIds
:
''
districtIds
.
length
>
0
?
params
.
districtIds
=
districtIds
:
''
}
return
params
},
//分页
handleCurrentChange
(
e
){
let
params
=
this
.
formParams
()
params
.
pageNum
=
e
this
.
queryParams
.
pageNum
=
e
this
.
handleQuery
(
params
)
console
.
log
(
this
.
$children
[
1
].
$refs
.
tableRef
.
bodyWrapper
.
scrollTop
)
setTimeout
(()
=>
{
// this.$children[1].$refs.tableRef.bodyWrapper.scrollTop = 0
},
500
);
},
changeSelect
(){
this
.
handleSearch
()
},
clickEXCEL
()
{
this
.
dataEXCEL
.
combineName
=
this
.
combineName
;
if
(
this
.
tableDataTotal
>
2000
){
this
.
dataEXCEL
.
pageSize
=
2000
;
}
else
{
this
.
dataEXCEL
.
pageSize
=
this
.
tableDataTotal
;
}
delete
this
.
dataEXCEL
.
pageNum
this
.
$download
.
exportByPost
(
'/combine/info/export/bid'
,
this
.
dataEXCEL
,
'集团招标.xlsx'
);
},
clickFocus
(
e
){
document
.
getElementById
(
e
).
classList
.
toggle
(
'span-ba'
)
}
}
}
</
script
>
<
style
lang=
"scss"
scoped
>
.performance
{
background
:
#ffffff
;
border-radius
:
4px
;
padding
:
16px
;
.headForm
{
margin-bottom
:
14px
;
.common-title
{
margin-right
:
24px
;
}
::v-deep
.el-input__inner
{
border
:
1px
solid
#D9D9D9
;
height
:
34px
;
line-height
:
34px
;
padding-right
:
27px
;
overflow
:
hidden
;
text-overflow
:
ellipsis
;
white-space
:
nowrap
;
border-radius
:
4px
;
}
::v-deep
.el-form-item
{
margin-right
:
8px
!
important
;
}
::v-deep
.el-input--medium
.el-input__icon
{
line-height
:
34px
;
}
::v-deep
.el-cascader
{
height
:
34px
;
line-height
:
34px
;
width
:
190px
;
.el-input
{
input
{
height
:
34px
!
important
;
}
}
.el-cascader__tags
{
flex-wrap
:
inherit
;
margin-top
:
1px
;
.el-tag
{
max-width
:
100px
;
}
}
.el-input__suffix
{
top
:
1px
;
}
}
.cooperate-name
{
display
:
flex
;
border-radius
:
2px
;
border
:
1px
solid
#D9D9D9
;
line-height
:
34px
;
height
:
34px
;
span
{
width
:
80px
;
height
:
32px
;
line-height
:
32px
;
font-size
:
14px
;
background
:
#F5F5F5
;
text-align
:
center
;
color
:
#0081FF
;
border
:
1px
solid
#EFEFEF
;
border-left
:
0
;
cursor
:
pointer
;
}
&
.span-ba
{
/*border: 1px solid #0081FF;*/
span
{
color
:
#ffffff
;
background
:
#0081FF
;
border
:
1px
solid
#0081FF
;
}
}
::v-deep
.el-input
{
flex
:
1
;
}
::v-deep
.el-input__inner
{
border
:
0
;
line-height
:
32px
;
height
:
32px
;
position
:
absolute
;
top
:
0
;
padding-right
:
22px
;
font-size
:
12px
;
padding-left
:
8px
;
}
}
.headForm-from
{
display
:
flex
;
.from-item
{
margin-right
:
8px
;
&
:last-child
{
margin-right
:
0
;
}
.fromTime
{
::v-deep
.el-range-input
{
width
:
100%
;
}
::v-deep
.el-range-separator
,
::v-deep
.el-range__close-icon
{
line-height
:
24px
;
width
:
20px
;
}
}
.fromTime-icon
{
display
:
none
;
}
.el-select
{
.el-input__suffix
{
right
:
10px
;
}
}
}
::v-deep
.form-content-width
{
width
:
170px
;
}
::v-deep
.selectTag
{
.el-select__tags
{
.el-tag
{
&
:first-child
{
width
:
70px
;
}
}
}
}
::v-deep
.el-select__tags
{
.el-tag
{
&
:first-child
{
//width: 100%;
}
}
}
}
.ability-total
{
font-size
:
12px
;
color
:
#3D3D3D
;
position
:
relative
;
&
:before
{
content
:
''
;
display
:
inline-block
;
width
:
2px
;
height
:
2px
;
background
:
rgba
(
35
,
35
,
35
,
0
.4
);
margin-right
:
4px
;
}
}
.ability-excel
{
font-size
:
14px
;
color
:
rgba
(
35
,
35
,
35
,
0
.8
);
margin-left
:
16px
;
cursor
:
pointer
;
&
:hover
{
color
:
#0081FF
;
}
img
{
width
:
18px
;
height
:
18px
;
margin-right
:
4px
;
}
}
}
::v-deep
.el-table
{
.has-gutter
{
tr
{
th
:nth-last-child
(
2
)
{
border-right
:
0
;
}
td
:nth-last-child
(
2
)
{
border-right
:
0
;
}
}
}
.el-table__cell.gutter
{
background
:
#F0F3FA
;
}
}
.custom-time-select
{
width
:
150px
;
}
}
</
style
>
dsk-operate-ui/src/views/detail/groupAccount/index.vue
View file @
fb16a235
...
...
@@ -12,9 +12,10 @@
</div>
<div
class=
"group-right"
>
<div
id=
"groupBox"
v-if=
"customerId"
>
<Members
v-if=
"currentPath.pathName=='members'"
:customer-id=
"customerId"
:isSkeleton=
"isSkeleton"
/>
<Qualifications
v-if=
"currentPath.pathName=='qualifications'"
:customer-id=
"customerId"
:isSkeleton=
"isSkeleton"
:name=
"name"
/>
<Performance
v-if=
"currentPath.pathName=='performance'"
:customer-id=
"customerId"
:isSkeleton=
"isSkeleton"
/>
<Members
v-if=
"currentPath.pathName=='members'"
:customer-id=
"customerId"
:isSkeleton=
"isSkeleton"
:combineName=
"name"
/>
<Qualifications
v-if=
"currentPath.pathName=='qualifications'"
:customer-id=
"customerId"
:isSkeleton=
"isSkeleton"
:combineName=
"name"
/>
<Performance
v-if=
"currentPath.pathName=='performance'"
:customer-id=
"customerId"
:isSkeleton=
"isSkeleton"
:combineName=
"name"
/>
<Zhaobiao
v-if=
"currentPath.pathName=='zhaobiao'"
:customer-id=
"customerId"
:isSkeleton=
"isSkeleton"
:combineName=
"name"
/>
</div>
</div>
</div>
...
...
@@ -27,12 +28,13 @@
import
Members
from
"./component/members"
import
Qualifications
from
"./component/qualifications"
import
Performance
from
"./component/performance"
import
Zhaobiao
from
"./component/zhaobiao"
import
{
infoHeader
}
from
'@/api/detail/party-a/index'
import
elementResizeDetectorMaker
from
"element-resize-detector"
export
default
{
name
:
'GroupAccount'
,
components
:{
SideBar
,
Members
,
Qualifications
,
Performance
SideBar
,
Members
,
Qualifications
,
Performance
,
Zhaobiao
},
data
(){
return
{
...
...
@@ -77,6 +79,8 @@
}
.group-left
{
margin-right
:
16px
;
padding-bottom
:
16px
;
background
:
#FFFFFF
;
}
.group-right
{
min-width
:
1088px
;
...
...
dsk-operate-ui/src/views/detail/party-a/component/CustomMoneySelect.vue
View file @
fb16a235
...
...
@@ -272,7 +272,7 @@ export default {
.options-block
{
position
:
absolute
;
margin-top
:
12
px
;
margin-top
:
5
px
;
min-width
:
120px
;
font-size
:
14px
;
color
:
#666666
;
...
...
dsk-operate-ui/src/views/detail/party-a/component/HeadForm.vue
View file @
fb16a235
...
...
@@ -7,15 +7,15 @@
<div
class=
"from-item"
:key=
"i"
v-for=
"(form, i) in formData"
>
<!-- 单选 -->
<template
v-if=
"form.type==1"
>
<el-select
v-model=
"form.value"
clearable
class=
"form-content-width"
:style=
"form.width?'width:'+form.width+'px':'max-width: 110px'"
:placeholder=
"form.placeholder"
@
change=
"changeSelect"
>
<el-option
v-for=
"(item, index) in form.options"
:key=
"index"
:label=
"item.name"
:value=
"item.value"
:disabled=
"item.disabled"
/>
</el-select>
<el-select
v-model=
"form.value"
clearable
class=
"form-content-width"
:style=
"form.width?'width:'+form.width+'px':'max-width: 110px'"
:placeholder=
"form.placeholder"
@
change=
"changeSelect"
>
<el-option
v-for=
"(item, index) in form.options"
:key=
"index"
:label=
"item.name"
:value=
"item.value"
:disabled=
"item.disabled"
/>
</el-select>
</
template
>
<!-- 年月日 -->
<
template
v-if=
"form.type==2"
>
...
...
@@ -98,10 +98,12 @@
</
template
>
<div
v-else
class=
"flex-box"
>
<span
class=
"flex-box ability-total"
v-if=
"isTotal"
>
共{{ total }}条
</span>
<span
class=
"flex-box ability-excel"
v-if=
"isExcel"
@
click=
"clickEXCEL"
><img
src=
"@/assets/images/ability_excel.png"
>
导出EXCEL
</span>
<span
class=
"flex-box ability-excel"
v-hasPermi=
"['combine:info:export:win:bid']"
v-if=
"isExcel && title ==='集团业绩'"
@
click=
"clickEXCEL"
><img
src=
"@/assets/images/ability_excel.png"
>
导出EXCEL
</span>
<span
class=
"flex-box ability-excel"
v-else
@
click=
"clickEXCEL"
><img
src=
"@/assets/images/ability_excel.png"
>
导出EXCEL
</span>
</div>
</div>
</div>
</template>
<
script
>
...
...
@@ -156,10 +158,14 @@ export default {
this
.
$emit
(
'handle-search'
)
},
clickEXCEL
()
{
this
.
$message
({
message
:
'功能正在开发中'
,
type
:
'warning'
});
if
(
this
.
title
===
'集团业绩'
){
this
.
$emit
(
'handle-excel'
)
}
else
{
this
.
$message
({
message
:
'功能正在开发中'
,
type
:
'warning'
});
}
},
clickFocus
(
e
){
document
.
getElementById
(
e
).
classList
.
toggle
(
'span-ba'
)
...
...
@@ -167,8 +173,15 @@ export default {
}
}
</
script
>
<
style
lang=
"scss"
>
.el-popper
[
x-placement
^=
bottom
]
{
margin-top
:
5px
!
important
;
}
</
style
>
<
style
lang=
"scss"
scoped
>
::v-deep
.el-popper
[
x-placement
^=
bottom
]
{
margin-top
:
5px
;
}
.headForm
{
margin-bottom
:
14px
;
.common-title
{
...
...
@@ -219,7 +232,7 @@ export default {
}
.cooperate-name
{
display
:
flex
;
border-radius
:
2px
0px
0px
2px
;
border-radius
:
2px
;
border
:
1px
solid
#D9D9D9
;
line-height
:
34px
;
height
:
34px
;
...
...
@@ -236,7 +249,7 @@ export default {
cursor
:
pointer
;
}
&
.span-ba
{
border
:
1px
solid
#0081FF
;
/*border: 1px solid #0081FF;*/
span
{
color
:
#ffffff
;
background
:
#0081FF
;
...
...
dsk-operate-ui/src/views/detail/party-a/component/Tables.vue
View file @
fb16a235
...
...
@@ -197,6 +197,12 @@ export default {
}
}
}
.table-item
{
::v-deep
.el-table
td
.el-table__cell
{
border-bottom
:
0
;
}
}
::v-deep
.el-table
th
.el-table__cell.is-leaf
,
::v-deep
.el-table
td
.el-table__cell
{
border-bottom
:
1px
solid
#E6EAF1
;
}
...
...
dsk-operate-ui/src/views/enterpriseData/components/Owner/index.vue
View file @
fb16a235
<
template
>
<div
class=
"app-container enterprise_contatiner"
>
<div
class=
"title_wrap"
>
<div
class=
"enterprise_title"
>
查城投平台
</div>
</div>
<div
class=
"content"
>
<div
class=
"content_item"
>
<div
class=
"content_right item_ckquery_list"
>
<el-input
class=
"ename_input"
placeholder=
"请输入企业名称关键字"
clearable
v-model=
"keys"
>
<div
slot=
"append"
class=
"btn-search"
@
click=
"search()"
>
搜索
</div>
</el-input>
</div>
</div>
<div
class=
"content_item"
>
<div
class=
"label"
>
企业地区
</div>
<div
class=
"content_right item_ckquery_list"
>
<div
class=
"select-popper"
>
<span
:class=
"
{color_text:jskBidQueryDto.provinceIds.length ||jskBidQueryDto.cityIds.length ||jskBidQueryDto.areaIds.length,}">
注册地区
{{
jskBidQueryDto
.
provinceIds
.
length
||
jskBidQueryDto
.
cityIds
.
length
||
jskBidQueryDto
.
areaIds
.
length
?
jskBidQueryDto
.
provinceIds
.
length
+
jskBidQueryDto
.
cityIds
.
length
+
jskBidQueryDto
.
areaIds
.
length
+
"项"
:
""
}}
<i
class=
"el-icon-caret-bottom"
></i>
</span>
<el-cascader
ref=
"address"
class=
"cascader-region"
v-model=
"addressType"
:options=
"addressList"
:props=
"props"
@
change=
"domicileChange"
collapse-tags
clearable
></el-cascader>
</div>
<div
class=
"checkbox"
>
<div
class=
"checkbox-titel"
>
行政等级
</div>
<div
class=
"checkbox-content"
>
<div
class=
"checkbox-content-qx"
>
<el-checkbox
v-model=
"checkuipExecutive"
@
change=
"checkuipExecutivebtn"
>
全部
</el-checkbox>
</div>
<el-checkbox-group
v-model=
"uipExecutiveText"
@
change=
"uipExecutiveLevelbtn"
>
<el-checkbox
v-for=
"item in uipExecutiveLevel"
:label=
"item"
:key=
"item"
>
{{
item
}}
</el-checkbox>
</el-checkbox-group>
</div>
</div>
</div>
</div>
<div
class=
"content_item"
>
<div
class=
"label"
>
城投业务类型
</div>
<div
class=
"content_right "
>
<div
class=
"checkbox"
>
<div
class=
"checkbox-content"
>
<div
class=
"checkbox-content-qx"
>
<el-checkbox
v-model=
"checkuipBusiness"
@
change=
"checkuipBusinessbtn"
>
全部
</el-checkbox>
</div>
<el-checkbox-group
v-model=
"uipBusinessText"
@
change=
"uipBusinessTypebtn"
>
<el-checkbox
v-for=
"item in uipBusinessType"
:label=
"item"
:key=
"item"
>
{{
item
}}
</el-checkbox>
</el-checkbox-group>
</div>
</div>
</div>
</div>
<div
class=
"content_item"
>
<div
class=
"label"
>
主体评级
</div>
<div
class=
"content_right "
>
<div
class=
"checkbox"
>
<div
class=
"checkbox-content"
>
<div
class=
"checkbox-content-qx"
>
<el-checkbox
v-model=
"checkbratingSubject"
@
change=
"checkbratingSubjectbtn"
>
全部
</el-checkbox>
</div>
<el-checkbox-group
v-model=
"bratingSubjectText"
@
change=
"bratingSubjectLevelbtn"
>
<el-checkbox
v-for=
"item in bratingSubjectLevel"
:label=
"item"
:key=
"item"
>
{{
item
}}
</el-checkbox>
</el-checkbox-group>
</div>
</div>
</div>
</div>
<div
class=
"content_item content_item1"
>
<div
class=
"label"
>
股东背景
</div>
<div
class=
"content_right "
>
<div
class=
"checkbox"
>
<div
class=
"checkbox-content"
>
<!--
<el-checkbox-group
v-model=
"shareholderText"
@
change=
"shareholderBgbtn"
>
-->
<el-checkbox
v-model=
"checkshareholder"
@
change=
"checkshareholderbtn"
>
全部
</el-checkbox>
<el-checkbox
@
change=
"shareholderBgbtn"
v-for=
"(item,index) in shareholderBg"
v-model=
"item.checked"
:key=
"index"
>
{{
item
.
value
}}
</el-checkbox>
</div>
</div>
</div>
</div>
<div
class=
"content_item"
style=
"padding:0;"
>
<div
class=
"label"
>
股权关系
</div>
<div
class=
"content_right "
>
<div
class=
"checkbox"
>
<div
class=
"checkbox-content"
>
<div
class=
"checkbox-content-qx"
>
<el-checkbox
v-model=
"checkequityRelationship"
@
change=
"checkequityRelationshipbtn"
>
全部
</el-checkbox>
</div>
<el-checkbox-group
v-model=
"equityRelationshipText"
@
change=
"equityRelationshipbtn"
>
<el-checkbox
v-for=
"item in equityRelationship"
:label=
"item"
:key=
"item"
>
{{
item
}}
</el-checkbox>
</el-checkbox-group>
</div>
</div>
</div>
</div>
<div
class=
"content_item"
>
</div>
<div
class=
"app-container enterprise_contatiner"
>
<div
class=
"title_wrap"
>
<div
class=
"enterprise_title"
>
查城投平台
</div>
</div>
<div
class=
"bottomlist"
>
<div
class=
"bottomlist-title"
>
<div
class=
"bottomlist-title-left"
>
<p
class=
"title-left"
>
查询结果列表
</p>
<el-popover
v-model=
"fieldshow"
placement=
"bottom-start"
trigger=
"click"
popper-class=
"viewlist-el-popover"
>
<ul
class=
"pup_list"
>
<li
v-for=
"(itme,i) in fieldOptions"
:class=
"itme.status?'active':''"
@
click=
"handsequencingList(i)"
:key=
"i"
>
{{
itme
.
value
}}
</li>
</ul>
<span
slot=
"reference"
class=
"toolbar-right-download"
>
{{
fieldText
}}
<i
class=
"el-icon-arrow-down"
:style=
"
{transform:fieldshow?'rotate(180deg)':''}">
</i>
</span>
</el-popover>
<div
class=
"content"
>
<div
class=
"content_item"
>
<div
class=
"content_right item_ckquery_list"
>
<el-input
class=
"ename_input"
placeholder=
"请输入企业名称关键字"
clearable
v-model=
"keys"
>
<div
slot=
"append"
class=
"btn-search"
@
click=
"search()"
>
搜索
</div>
</el-input>
</div>
</div>
<div
class=
"title-right"
>
<p><span
style=
"margin-right:4;color:rgba(35, 35, 35, 0.40);font-size: 18px;position: relative;top:2px;"
>
·
</span>
共有
{{
total
}}
条
</p>
<p>
<img
src=
"@/assets/images/EXCEL.png"
alt=
""
>
<span
class=
"excel"
@
click=
"$message(
{message: '功能正在开发中',type: 'warning'})">导出EXCEL
</span>
</p>
</div>
</div>
<div
class=
"table-item-jf table-item-jf1"
v-if=
"tableData.length==0&& !isSkeleton"
>
<img
class=
"item-jf-img"
src=
"@/assets/images/kong.png"
alt=
""
>
<div
class=
"item-jf-titel"
>
抱歉,没找到相关数据!
</div>
<div
class=
"item-jf-text"
>
建议调整关键词或筛选条件,重新搜索!
</div>
<div
class=
"content_item"
>
<div
class=
"label"
>
企业地区
</div>
<div
class=
"content_right item_ckquery_list"
>
<div
class=
"select-popper"
>
<span
:class=
"
{color_text:jskBidQueryDto.provinceIds.length ||jskBidQueryDto.cityIds.length ||jskBidQueryDto.areaIds.length,}">
注册地区
{{
jskBidQueryDto
.
provinceIds
.
length
||
jskBidQueryDto
.
cityIds
.
length
||
jskBidQueryDto
.
areaIds
.
length
?
jskBidQueryDto
.
provinceIds
.
length
+
jskBidQueryDto
.
cityIds
.
length
+
jskBidQueryDto
.
areaIds
.
length
+
"项"
:
""
}}
<i
class=
"el-icon-caret-bottom"
></i>
</span>
<el-cascader
ref=
"address"
class=
"cascader-region"
v-model=
"addressType"
:options=
"addressList"
:props=
"props"
@
change=
"domicileChange"
collapse-tags
clearable
></el-cascader>
</div>
<div
class=
"checkbox"
>
<div
class=
"checkbox-titel"
>
行政等级
</div>
<div
class=
"checkbox-content"
>
<div
class=
"checkbox-content-qx"
>
<el-checkbox
v-model=
"checkuipExecutive"
@
change=
"checkuipExecutivebtn"
>
全部
</el-checkbox>
</div>
<el-checkbox-group
v-model=
"uipExecutiveText"
@
change=
"uipExecutiveLevelbtn"
>
<el-checkbox
v-for=
"item in uipExecutiveLevel"
:label=
"item"
:key=
"item"
>
{{
item
}}
</el-checkbox>
</el-checkbox-group>
</div>
</div>
</div>
</div>
<div
class=
"content_item"
>
<div
class=
"label"
>
城投业务类型
</div>
<div
class=
"content_right "
>
<div
class=
"checkbox"
>
<div
class=
"checkbox-content"
>
<div
class=
"checkbox-content-qx"
>
<el-checkbox
v-model=
"checkuipBusiness"
@
change=
"checkuipBusinessbtn"
>
全部
</el-checkbox>
</div>
<el-checkbox-group
v-model=
"uipBusinessText"
@
change=
"uipBusinessTypebtn"
>
<el-checkbox
v-for=
"item in uipBusinessType"
:label=
"item"
:key=
"item"
>
{{
item
}}
</el-checkbox>
</el-checkbox-group>
</div>
</div>
</div>
</div>
<div
class=
"content_item"
>
<div
class=
"label"
>
主体评级
</div>
<div
class=
"content_right "
>
<div
class=
"checkbox"
>
<div
class=
"checkbox-content"
>
<div
class=
"checkbox-content-qx"
>
<el-checkbox
v-model=
"checkbratingSubject"
@
change=
"checkbratingSubjectbtn"
>
全部
</el-checkbox>
</div>
<el-checkbox-group
v-model=
"bratingSubjectText"
@
change=
"bratingSubjectLevelbtn"
>
<el-checkbox
v-for=
"item in bratingSubjectLevel"
:label=
"item"
:key=
"item"
>
{{
item
}}
</el-checkbox>
</el-checkbox-group>
</div>
</div>
</div>
</div>
<div
class=
"content_item content_item1"
>
<div
class=
"label"
>
股东背景
</div>
<div
class=
"content_right "
>
<div
class=
"checkbox"
>
<div
class=
"checkbox-content"
>
<!--
<el-checkbox-group
v-model=
"shareholderText"
@
change=
"shareholderBgbtn"
>
-->
<el-checkbox
v-model=
"checkshareholder"
@
change=
"checkshareholderbtn"
>
全部
</el-checkbox>
<el-checkbox
@
change=
"shareholderBgbtn"
v-for=
"(item,index) in shareholderBg"
v-model=
"item.checked"
:key=
"index"
>
{{
item
.
value
}}
</el-checkbox>
</div>
</div>
</div>
</div>
<div
class=
"content_item"
style=
"padding:0;"
>
<div
class=
"label"
>
股权关系
</div>
<div
class=
"content_right "
>
<div
class=
"checkbox"
>
<div
class=
"checkbox-content"
>
<div
class=
"checkbox-content-qx"
>
<el-checkbox
v-model=
"checkequityRelationship"
@
change=
"checkequityRelationshipbtn"
>
全部
</el-checkbox>
</div>
<el-checkbox-group
v-model=
"equityRelationshipText"
@
change=
"equityRelationshipbtn"
>
<el-checkbox
v-for=
"item in equityRelationship"
:label=
"item"
:key=
"item"
>
{{
item
}}
</el-checkbox>
</el-checkbox-group>
</div>
</div>
</div>
</div>
<div
class=
"content_item"
>
</div>
</div>
<skeleton
style=
"margin-left:16px;"
v-if=
"isSkeleton"
></skeleton>
<div
class=
" table-item-jf table-item "
v-if=
"!isSkeleton&&tableData.length>0"
>
<el-table
:data=
"tableData"
:header-cell-style=
"
{ background:'#f0f3fa',color: 'rgba(35,35,35,0.8)'}" max-height="640" class="table-item1 fixed-table" border highlight-current-row>
<el-table-column
type=
"index"
label=
"序号"
fixed
width=
"60"
>
<template
slot-scope=
"scope"
>
<span>
{{
(
pageNum
-
1
)
*
20
+
scope
.
$index
+
1
}}
</span>
</
template
>
</el-table-column>
<el-table-column
label=
"公司名称"
fixed
width=
"380"
>
<
template
slot-scope=
"scope"
>
<div
class=
"renling"
>
<router-link
:to=
"`/enterprise/$
{encodeStr(scope.row.companyId)}`" tag="a" class="list-titel-a" v-html="scope.row.companyName" >
</router-link>
<div
class=
"renling-btn"
@
click=
"claimbtn(scope.row)"
>
<p
v-if=
"scope.row.claimStatus==0"
class=
"renling-img-true"
>
</p>
<p
v-else
class=
"renling-img-false"
>
</p>
<span
v-if=
"scope.row.claimStatus==0"
@
click=
"cancelClaim(scope.row.companyName,scope.$index)"
class=
"renling-hui"
>
已认领
</span>
<span
v-else
class=
"renling-hei"
>
认领
</span>
</div>
</div>
<div
class=
"bottomlist"
>
<div
class=
"bottomlist-title"
>
<div
class=
"bottomlist-title-left"
>
<p
class=
"title-left"
>
查询结果列表
</p>
<el-popover
v-model=
"fieldshow"
placement=
"bottom-start"
trigger=
"click"
popper-class=
"viewlist-el-popover"
>
<ul
class=
"pup_list"
>
<li
v-for=
"(itme,i) in fieldOptions"
:class=
"itme.status?'active':''"
@
click=
"handsequencingList(i)"
:key=
"i"
>
{{
itme
.
value
}}
</li>
</ul>
<span
slot=
"reference"
class=
"toolbar-right-download"
>
{{
fieldText
}}
<i
class=
"el-icon-arrow-down"
:style=
"
{transform:fieldshow?'rotate(180deg)':''}">
</i>
</span>
</el-popover>
</div>
<div
class=
"title-right"
>
<p><span
style=
"margin-right:4;color:rgba(35, 35, 35, 0.40);font-size: 18px;position: relative;top:2px;"
>
·
</span>
共有
{{
total
}}
条
</p>
<p>
<img
src=
"@/assets/images/EXCEL.png"
alt=
""
>
<span
class=
"excel"
@
click=
"$message(
{message: '功能正在开发中',type: 'warning'})">导出EXCEL
</span>
</p>
</div>
</div>
<div
class=
"table-item-jf table-item-jf1"
v-if=
"tableData.length==0&& !isSkeleton"
>
<img
class=
"item-jf-img"
src=
"@/assets/images/kong.png"
alt=
""
>
<div
class=
"item-jf-titel"
>
抱歉,没找到相关数据!
</div>
<div
class=
"item-jf-text"
>
建议调整关键词或筛选条件,重新搜索!
</div>
</div>
<skeleton
style=
"margin-left:16px;"
v-if=
"isSkeleton"
></skeleton>
<div
class=
" table-item-jf table-item "
v-if=
"!isSkeleton&&tableData.length>0"
>
<el-table
:data=
"tableData"
:header-cell-style=
"
{ background:'#f0f3fa',color: 'rgba(35,35,35,0.8)'}" max-height="640" class="table-item1 fixed-table" border highlight-current-row>
<el-table-column
type=
"index"
label=
"序号"
fixed
width=
"60"
>
<template
slot-scope=
"scope"
>
<span>
{{
(
pageNum
-
1
)
*
20
+
scope
.
$index
+
1
}}
</span>
</
template
>
</el-table-column>
<el-table-column
label=
"公司名称"
fixed
width=
"380"
>
<
template
slot-scope=
"scope"
>
<div
class=
"renling"
>
<router-link
:to=
"`/enterprise/$
{encodeStr(scope.row.companyId)}`" tag="a" class="list-titel-a" v-html="scope.row.companyName" >
</router-link>
<div
class=
"renling-btn"
@
click=
"claimbtn(scope.row)"
>
<p
v-if=
"scope.row.claimStatus==0"
class=
"renling-img-true"
>
</p>
<p
v-else
class=
"renling-img-false"
>
</p>
<span
v-if=
"scope.row.claimStatus==0"
@
click=
"cancelClaim(scope.row.companyName,scope.$index)"
class=
"renling-hui"
>
已认领
</span>
<span
v-else
class=
"renling-hei"
>
认领
</span>
</div>
</div>
</
template
>
</el-table-column>
<el-table-column
label=
"区域"
width=
"160"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
province
}}
<template
v-if=
"scope.row.city"
>
-
</
template
>
{{scope.row.city}}
<
template
v-if=
"scope.row.area"
>
-
</
template
>
{{scope.row.area}}
</template>
</el-table-column>
<el-table-column
label=
"区域"
width=
"160"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
province
}}
<template
v-if=
"scope.row.city"
>
-
</
template
>
{{scope.row.city}}
<
template
v-if=
"scope.row.area"
>
-
</el-table-column>
<el-table-column
label=
"招标数量"
width=
"73"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
biddingCount
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"城投拿地"
width=
"73"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
landInfoCount
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"供应商"
width=
"73"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
supplierCount
||
"--"
}}
</
template
>
{{scope.row.area}}
</template>
</el-table-column>
<el-table-column
label=
"招标数量"
width=
"73"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
biddingCount
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"城投拿地"
width=
"73"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
landInfoCount
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"供应商"
width=
"73"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
supplierCount
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"主体评级"
width=
"73"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
bratingSubjectLevel
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"债券余额(亿元)"
width=
"124"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
bondBalance
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"行政级别"
width=
"73"
>
</el-table-column>
<el-table-column
label=
"主体评级"
width=
"73"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
uipExecutive
Level
||
"--"
}}
{{
scope
.
row
.
bratingSubject
Level
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"
股东背景"
width=
"8
4"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
shareholderBg
||
"--"
}}
</
template
>
<el-table-column
label=
"
债券余额(亿元)"
width=
"12
4"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
bondBalance
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"
股权关系"
width=
"84
"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
equityRelationship
||
"--"
}}
</
template
>
<el-table-column
label=
"
行政级别"
width=
"73
"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
uipExecutiveLevel
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"
平台重要性"
width=
"85
"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
platformImportance
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"
城投业务类型"
width=
"97
"
>
<el-table-column
label=
"
股东背景"
width=
"84
"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
shareholderBg
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"
股权关系"
width=
"84
"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
uipBusinessType
||
"--"
}}
{{
scope
.
row
.
equityRelationship
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"实控人"
width=
"290"
>
<
template
slot-scope=
"scope"
>
<!--
<router-link
v-if=
"scope.row.actualController"
:to=
"'/radar/bxprozbgg/details/'+ 1"
tag=
"a"
class=
"list-titel-a"
>
{{
scope
.
row
.
actualController
}}
</router-link>
-->
<template
>
{{
scope
.
row
.
actualController
||
"--"
}}
</
template
>
</template>
<el-table-column
label=
"平台重要性"
width=
"85"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
platformImportance
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"
最新报告期"
width=
"92
"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
latestReportPeriod
||
"--"
}}
</
template
>
<el-table-column
label=
"
城投业务类型"
width=
"97
"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
uipBusinessType
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"总资产(亿元)"
width=
"112"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
totalAssets
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"归母净资产(亿元)"
width=
"133"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
belongNetAssets
||
"--"
}}
</
template
>
<el-table-column
label=
"实控人"
width=
"290"
>
<
template
slot-scope=
"scope"
>
<!--
<router-link
v-if=
"scope.row.actualController"
:to=
"'/radar/bxprozbgg/details/'+ 1"
tag=
"a"
class=
"list-titel-a"
>
{{
scope
.
row
.
actualController
}}
</router-link>
-->
<template
>
{{
scope
.
row
.
actualController
||
"--"
}}
</
template
>
</template>
</el-table-column>
<el-table-column
label=
"最新报告期"
width=
"92"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
latestReportPeriod
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"
货币资金(亿元)"
width=
"121
"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
monetaryFund
s
||
"--"
}}
</
template
>
<el-table-column
label=
"
总资产(亿元)"
width=
"112
"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
totalAsset
s
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"
土地资产(亿元)"
width=
"121
"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
land
Assets
||
"--"
}}
</
template
>
<el-table-column
label=
"
归母净资产(亿元)"
width=
"133
"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
belongNet
Assets
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"
受限资产
(亿元)"
width=
"121"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
restrictedAsset
s
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"
应收账款
(亿元)"
width=
"121"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
accountsReceivable
||
"--"
}}
</
template
>
<el-table-column
label=
"
货币资金
(亿元)"
width=
"121"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
monetaryFund
s
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"
土地资产
(亿元)"
width=
"121"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
landAssets
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"
其他应收款(亿元)"
width=
"133
"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
otherReceivable
||
"--"
}}
</
template
>
<el-table-column
label=
"
受限资产(亿元)"
width=
"121
"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
restrictedAssets
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"公益性&准公益性主营占比(%)"
width=
"200"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
econData_001
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"政府补助(亿元)"
width=
"121"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
govSubsidy
||
"--"
}}
</
template
>
<el-table-column
label=
"应收账款(亿元)"
width=
"121"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
accountsReceivable
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"专项应付款(亿元)"
width=
"133"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
specialPayable
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"营业收入(亿元)"
width=
"121"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
operatingIncome
||
"--"
}}
</
template
>
<el-table-column
label=
"其他应收款(亿元)"
width=
"133"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
otherReceivable
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"公益性&准公益性主营占比(%)"
width=
"200"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
econData_001
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"政府补助(亿元)"
width=
"121"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
govSubsidy
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"
归母净利润
(亿元)"
width=
"133"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
belongNetProfit
||
"--"
}}
</
template
>
<el-table-column
label=
"
专项应付款
(亿元)"
width=
"133"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
specialPayable
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"
净资产收益率(%)"
width=
"136
"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
ro
e
||
"--"
}}
</
template
>
<el-table-column
label=
"
营业收入(亿元)"
width=
"121
"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
operatingIncom
e
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"经营现金流量净额(亿元)"
width=
"169"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
netOperatingCashFlow
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"筹资现金流量净额(亿元)"
width=
"169"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
netFinancingCashFlow
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"投资现金流量净额(亿元)"
width=
"169"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
netInvestmentCashFlow
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"总负债 (亿元)"
width=
"113"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
totalLiabilities
||
"--"
}}
</
template
>
<el-table-column
label=
"归母净利润(亿元)"
width=
"133"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
belongNetProfit
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"净资产收益率(%)"
width=
"136"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
roe
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"
有息债务 (亿元)"
width=
"125
"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
uipInterestBearingDebt
||
"--"
}}
</
template
>
<el-table-column
label=
"
经营现金流量净额(亿元)"
width=
"169
"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
netOperatingCashFlow
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"
有息债务/总负债(%)"
width=
"147
"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
econData_002
||
"--"
}}
</
template
>
<el-table-column
label=
"
筹资现金流量净额(亿元)"
width=
"169
"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
netFinancingCashFlow
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"综合融资成本(%)"
width=
"132"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
ofcb
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"现金比率(%)"
width=
"108"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
cashRatio
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"现金流量比率(%)"
width=
"132"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
cashFlowRatio
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"现金到期债务比(%)"
width=
"144"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
cashDebtRatio
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"授信余额(亿元)"
width=
"125"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
creditBalance
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"授信余额/全部债务(%)"
width=
"159"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
econData_003
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"EBITDA保障倍数"
width=
"117"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
ebitdaIcr
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"私募债余额占比(%)"
width=
"144"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
ppnBalanceProp
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"一年内到期债权占比(%)"
width=
"168"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
econData_004
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"债券余额/有息债务(%)"
width=
"159"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
econData_005
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"借款余额(亿元)"
width=
"124"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
loan
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"借款/有息债务(%)"
width=
"135"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
econData_006
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"非标余额(亿元)"
width=
"124"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
nonStandardBalance
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"非标余额/有息债务(%)"
width=
"159"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
nonStandardRatio
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"对外担保金额(亿元)"
width=
"145"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
guaranteeAmount
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"对外担保比例(%)"
width=
"132"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
guaranteeRatio
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"所属开发区"
width=
"85"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
developmentZone
||
"--"
}}
</
template
>
</el-table-column>
</el-table>
</div>
<div
class=
"pagination clearfix"
v-show=
"total>0"
>
<el-pagination
background
:page-size=
"pageSize"
:current-page=
"pageNum"
@
current-change=
"handleCurrentChange"
layout=
"prev, pager, next"
:total=
"total"
>
</el-pagination>
</div>
</div>
<el-dialog
title=
""
:visible
.
sync=
"dialogVisible"
:modal=
"false"
custom-class=
'dialog-renlin'
:show-close=
"false"
width=
"244px"
>
<span>
认领成功,是否完善客户信息?
</span>
<div
slot=
"footer"
class=
"dialog-footer"
>
<span
class=
"dialog-footer-btn1"
type=
"primary"
@
click=
"claimopen(companyId,customerId)"
>
立即完善
</span>
<span
class=
"dialog-footer-btn2"
@
click=
"search(pageNum, pageSize)"
>
稍后
</span>
</div>
</el-dialog>
<el-dialog
title=
"取消认领"
:visible
.
sync=
"dialogVisible1"
:modal=
"false"
custom-class=
'dialog-renlin'
:show-close=
"false"
width=
"344px"
>
<span>
是否取消认领客户?客户信息将放入“历史客户”。
</span>
<div
slot=
"footer"
class=
"dialog-footer"
>
<span
class=
"dialog-footer-btn1"
type=
"primary"
@
click=
"confirm()"
>
确认
</span>
<span
class=
"dialog-footer-btn2"
@
click=
"dialogVisible1 = false"
>
关闭
</span>
</div>
</el-dialog>
<el-dialog
:visible
.
sync=
"dialogVisible2"
custom-class=
'dialog-renlin'
title=
"重新认领"
width=
"260px"
:show-close=
"false"
>
<div>
再次认领将会恢复客户数据
</div>
<div
slot=
"footer"
class=
"dialog-footer"
>
<span
class=
"dialog-footer-btn1"
type=
"primary"
@
click=
"handleHistoryClaim()"
>
确认
</span>
<span
class=
"dialog-footer-btn2"
@
click=
"dialogVisible2 = false"
>
关闭
</span>
<el-table-column
label=
"投资现金流量净额(亿元)"
width=
"169"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
netInvestmentCashFlow
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"总负债 (亿元)"
width=
"113"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
totalLiabilities
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"有息债务 (亿元)"
width=
"125"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
uipInterestBearingDebt
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"有息债务/总负债(%)"
width=
"147"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
econData_002
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"综合融资成本(%)"
width=
"132"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
ofcb
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"现金比率(%)"
width=
"108"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
cashRatio
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"现金流量比率(%)"
width=
"132"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
cashFlowRatio
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"现金到期债务比(%)"
width=
"144"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
cashDebtRatio
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"授信余额(亿元)"
width=
"125"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
creditBalance
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"授信余额/全部债务(%)"
width=
"159"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
econData_003
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"EBITDA保障倍数"
width=
"117"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
ebitdaIcr
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"私募债余额占比(%)"
width=
"144"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
ppnBalanceProp
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"一年内到期债权占比(%)"
width=
"168"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
econData_004
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"债券余额/有息债务(%)"
width=
"159"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
econData_005
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"借款余额(亿元)"
width=
"124"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
loan
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"借款/有息债务(%)"
width=
"135"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
econData_006
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"非标余额(亿元)"
width=
"124"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
nonStandardBalance
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"非标余额/有息债务(%)"
width=
"159"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
nonStandardRatio
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"对外担保金额(亿元)"
width=
"145"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
guaranteeAmount
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"对外担保比例(%)"
width=
"132"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
guaranteeRatio
||
"--"
}}
</
template
>
</el-table-column>
<el-table-column
label=
"所属开发区"
width=
"85"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
developmentZone
||
"--"
}}
</
template
>
</el-table-column>
</el-table>
</div>
<div
class=
"pagination clearfix"
v-show=
"total>0"
>
<el-pagination
background
:page-size=
"pageSize"
:current-page=
"pageNum"
@
current-change=
"handleCurrentChange"
layout=
"prev, pager, next"
:total=
"total"
>
</el-pagination>
</div>
</div>
<el-dialog
title=
""
:visible
.
sync=
"dialogVisible"
:modal=
"false"
custom-class=
'dialog-renlin'
:show-close=
"false"
width=
"244px"
>
<span>
认领成功,是否完善客户信息?
</span>
<div
slot=
"footer"
class=
"dialog-footer"
>
<span
class=
"dialog-footer-btn1"
type=
"primary"
@
click=
"claimopen(companyId,customerId)"
>
立即完善
</span>
<span
class=
"dialog-footer-btn2"
@
click=
"search(pageNum, pageSize)"
>
稍后
</span>
</div>
</el-dialog>
</div>
</template>
<
script
>
import
{
encodeStr
}
from
"@/assets/js/common.js"
import
jsk_data
from
'../../../../../public/jsk.json'
;
import
skeleton
from
'@/views/project/projectList/component/skeleton'
import
api
from
'@/api/enterpriseData/enterpriseData.js'
;
import
"@/assets/styles/public.scss"
;
export
default
{
name
:
'Owner'
,
components
:{
skeleton
},
data
()
{
return
{
encodeStr
,
isSkeleton
:
true
,
keys
:
''
,
addressList
:
[],
addressType
:
[],
props
:
{
multiple
:
true
,
expandTrigger
:
"hover"
,
value
:
"id"
,
},
pageSize
:
20
,
dialogVisible2
:
false
,
jskBidQueryDto
:
{
provinceIds
:
[],
cityIds
:
[],
areaIds
:
[]
},
domicile
:
[],
// 行政等级
uipExecutiveLevel
:[],
uipExecutiveText
:[],
checkuipExecutive
:
true
,
// 城投业务类型
uipBusinessType
:[],
uipBusinessText
:[],
checkuipBusiness
:
true
,
// 主体信用等级
bratingSubjectLevel
:[],
bratingSubjectText
:[],
checkbratingSubject
:
true
,
// 股东背景
shareholderBg
:[],
shareholderText
:[],
checkshareholder
:
true
,
// 股权关系
equityRelationship
:[],
equityRelationshipText
:[],
checkequityRelationship
:
true
,
pageFlag
:
true
,
conditionsArr
:
[],
fieldshow
:
false
,
fieldText
:
'默认排序'
,
sort
:
'3'
,
//查询结果排序方式
fieldOptions
:
[{
key
:
"3"
,
value
:
"默认排序"
,
status
:
true
,
},
{
key
:
"5"
,
value
:
"招标数量从多到少"
,
status
:
false
,
<el-dialog
title=
"取消认领"
:visible
.
sync=
"dialogVisible1"
:modal=
"false"
custom-class=
'dialog-renlin'
:show-close=
"false"
width=
"344px"
>
<span>
是否取消认领客户?客户信息将放入“历史客户”。
</span>
<div
slot=
"footer"
class=
"dialog-footer"
>
<span
class=
"dialog-footer-btn1"
type=
"primary"
@
click=
"confirm()"
>
确认
</span>
<span
class=
"dialog-footer-btn2"
@
click=
"dialogVisible1 = false"
>
关闭
</span>
</div>
</el-dialog>
<el-dialog
:visible
.
sync=
"dialogVisible2"
custom-class=
'dialog-renlin'
title=
"重新认领"
width=
"260px"
:show-close=
"false"
>
<div>
再次认领将会恢复客户数据
</div>
<div
slot=
"footer"
class=
"dialog-footer"
>
<span
class=
"dialog-footer-btn1"
type=
"primary"
@
click=
"handleHistoryClaim()"
>
确认
</span>
<span
class=
"dialog-footer-btn2"
@
click=
"dialogVisible2 = false"
>
关闭
</span>
</div>
</el-dialog>
</div>
</template>
<
script
>
import
{
encodeStr
}
from
"@/assets/js/common.js"
import
jsk_data
from
'../../../../../public/jsk.json'
;
import
skeleton
from
'@/views/project/projectList/component/skeleton'
import
api
from
'@/api/enterpriseData/enterpriseData.js'
;
import
"@/assets/styles/public.scss"
;
export
default
{
name
:
'Owner'
,
components
:{
skeleton
},
data
()
{
return
{
encodeStr
,
isSkeleton
:
true
,
keys
:
''
,
addressList
:
[],
addressType
:
[],
props
:
{
multiple
:
true
,
expandTrigger
:
"hover"
,
value
:
"id"
,
},
{
key
:
"7"
,
value
:
"土地数量从多到少"
,
status
:
false
,
pageSize
:
20
,
dialogVisible2
:
false
,
jskBidQueryDto
:
{
provinceIds
:
[]
,
cityIds
:
[]
,
areaIds
:
[]
},
domicile
:
[],
// 行政等级
uipExecutiveLevel
:[],
uipExecutiveText
:[],
checkuipExecutive
:
true
,
// 城投业务类型
uipBusinessType
:[],
uipBusinessText
:[],
checkuipBusiness
:
true
,
// 主体信用等级
bratingSubjectLevel
:[],
bratingSubjectText
:[],
checkbratingSubject
:
true
,
// 股东背景
shareholderBg
:[],
shareholderText
:[],
checkshareholder
:
true
,
// 股权关系
equityRelationship
:[],
equityRelationshipText
:[],
checkequityRelationship
:
true
,
],
companyId
:
''
,
companyName
:
''
,
cancelIndex
:
''
,
customerId
:
''
,
dialogVisible
:
false
,
dialogVisible1
:
false
,
tableData
:[],
total
:
0
,
pageNum
:
1
,
pageSize
:
20
};
},
computed
:
{
checkJskBidQueryDto
()
{
let
arr
=
[];
let
flag
=
false
;
let
data
=
{};
if
(
this
.
domicile
.
length
>
0
)
{
data
=
{
title
:
"行政区划:"
,
keyid
:
"domicile"
,
value
:
this
.
domicile
.
join
(
","
),
key
:
"domicile"
}
flag
=
true
;
arr
.
push
(
data
)
}
this
.
conditionsArr
=
arr
return
flag
;
},
},
created
()
{
api
.
uipGroupData
().
then
(
res
=>
{
if
(
res
.
code
==
200
)
{
// 行政等级
this
.
uipExecutiveLevel
=
res
.
data
.
uipExecutiveLevel
,
// 城投业务类型
this
.
uipBusinessType
=
res
.
data
.
uipBusinessType
,
// 主体信用等级
this
.
bratingSubjectLevel
=
res
.
data
.
bratingSubjectLevel
,
// 股东背景
this
.
shareholderBg
=
res
.
data
.
shareholderBg
,
// 股权关系
this
.
equityRelationship
=
res
.
data
.
equityRelationship
;
if
(
this
.
shareholderBg
.
length
>
0
){
let
arr
=
[]
this
.
shareholderBg
.
map
(
item
=>
{
arr
.
push
({
value
:
item
,
checked
:
false
})
})
this
.
shareholderBg
=
arr
}
}
}).
catch
(
error
=>
{
});
},
mounted
()
{
this
.
init
();
},
methods
:
{
domicileChange
()
{
let
arr
=
this
.
$refs
.
address
.
getCheckedNodes
();
let
provinceIds
=
[],
cityIds
=
[],
areaIds
=
[];
this
.
domicile
=
[];
for
(
var
i
in
arr
)
{
if
(
arr
[
i
].
parent
)
{
if
(
!
arr
[
i
].
parent
.
checked
)
{
arr
[
i
].
hasChildren
&&
cityIds
.
push
(
arr
[
i
].
value
);
arr
[
i
].
hasChildren
&&
this
.
domicile
.
push
(
arr
[
i
].
label
);
!
arr
[
i
].
hasChildren
&&
areaIds
.
push
(
arr
[
i
].
value
);
!
arr
[
i
].
hasChildren
&&
this
.
domicile
.
push
(
arr
[
i
].
label
);
}
}
else
{
provinceIds
.
push
(
arr
[
i
].
value
);
this
.
domicile
.
push
(
arr
[
i
].
label
);
}
}
var
obj
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
jskBidQueryDto
));
obj
.
provinceIds
=
provinceIds
;
obj
.
cityIds
=
cityIds
;
obj
.
areaIds
=
areaIds
;
this
.
jskBidQueryDto
=
obj
;
this
.
search
();
},
addressListfn
()
{
var
str
=
[];
for
(
let
x
=
0
;
x
<
3
;
x
++
)
{
for
(
let
i
=
0
;
i
<
jsk_data
.
length
;
i
++
)
{
if
(
jsk_data
[
i
].
regionLevel
==
x
+
1
&&
x
+
1
==
1
)
{
str
.
push
({
id
:
jsk_data
[
i
].
id
,
label
:
jsk_data
[
i
].
regionName
,
short
:
jsk_data
[
i
].
short
,
value
:
jsk_data
[
i
].
parentId
,
children
:
jsk_data
[
i
].
id
==
900000
?
undefined
:[],
});
}
else
if
(
jsk_data
[
i
].
regionLevel
==
x
+
1
&&
x
+
1
==
2
&&
str
)
{
for
(
let
j
=
0
;
j
<
str
.
length
;
j
++
)
{
if
(
str
[
j
].
id
==
jsk_data
[
i
].
parentId
)
{
str
[
j
].
children
.
push
({
id
:
jsk_data
[
i
].
id
,
label
:
jsk_data
[
i
].
regionName
,
short
:
jsk_data
[
i
].
short
,
value
:
jsk_data
[
i
].
parentId
,
children
:
[],
});
}
}
}
else
if
(
jsk_data
[
i
].
regionLevel
==
x
+
1
&&
x
+
1
==
3
)
{
for
(
let
j
=
0
;
j
<
str
.
length
;
j
++
)
{
if
(
str
[
j
].
children
){
for
(
let
k
=
0
;
k
<
str
[
j
].
children
.
length
;
k
++
)
{
if
(
str
[
j
].
children
[
k
].
id
==
jsk_data
[
i
].
parentId
)
{
str
[
j
].
children
[
k
].
children
.
push
({
id
:
jsk_data
[
i
].
id
,
label
:
jsk_data
[
i
].
regionName
,
short
:
jsk_data
[
i
].
short
,
value
:
jsk_data
[
i
].
parentId
,
});
}
}
}
}
}
}
}
this
.
addressList
=
str
;
},
reset
()
{
Object
.
assign
(
this
.
$data
,
this
.
$options
.
data
.
call
(
this
));
//重置data
this
.
init
();
},
init
(){
this
.
search
();
this
.
addressListfn
();
},
checkuipExecutivebtn
(
val
){
this
.
uipExecutiveText
=
[];
this
.
checkuipExecutive
=
true
;
this
.
search
();
pageFlag
:
true
,
conditionsArr
:
[],
fieldshow
:
false
,
fieldText
:
'默认排序'
,
sort
:
'3'
,
//查询结果排序方式
fieldOptions
:
[{
key
:
"3"
,
value
:
"默认排序"
,
status
:
true
,
},
{
key
:
"5"
,
value
:
"招标数量从多到少"
,
status
:
false
,
},
{
key
:
"7"
,
value
:
"土地数量从多到少"
,
status
:
false
,
},
],
companyId
:
''
,
companyName
:
''
,
cancelIndex
:
''
,
customerId
:
''
,
dialogVisible
:
false
,
dialogVisible1
:
false
,
tableData
:[],
total
:
0
,
pageNum
:
1
,
pageSize
:
20
};
},
uipExecutiveLevelbtn
(
val
){
if
(
val
.
length
>
0
){
this
.
checkuipExecutive
=
false
;
}
else
if
(
val
.
length
==
0
){
this
.
checkuipExecutive
=
true
;
}
this
.
search
();
computed
:
{
checkJskBidQueryDto
()
{
let
arr
=
[];
let
flag
=
false
;
let
data
=
{};
},
checkuipBusinessbtn
(
val
){
this
.
uipBusinessText
=
[];
this
.
checkuipBusiness
=
true
;
this
.
search
();
},
uipBusinessTypebtn
(
val
){
if
(
val
.
length
>
0
){
this
.
checkuipBusiness
=
false
;
}
else
if
(
val
.
length
==
0
){
this
.
checkuipBusiness
=
true
;
}
this
.
search
();
},
checkbratingSubjectbtn
(
val
){
this
.
bratingSubjectText
=
[];
this
.
search
();
this
.
checkbratingSubject
=
true
;
},
bratingSubjectLevelbtn
(
val
){
if
(
val
.
length
>
0
){
this
.
checkbratingSubject
=
false
;
}
else
if
(
val
.
length
==
0
){
this
.
checkbratingSubject
=
true
;
}
this
.
search
();
},
checkshareholderbtn
(
val
){
this
.
shareholderText
=
[];
for
(
var
i
in
this
.
shareholderBg
){
this
.
shareholderBg
[
i
].
checked
=
false
}
this
.
checkshareholder
=
true
;
this
.
search
();
},
shareholderBgbtn
(
val
){
let
flag
=
false
this
.
shareholderText
=
[];
for
(
var
i
in
this
.
shareholderBg
){
if
(
this
.
shareholderBg
[
i
].
checked
){
if
(
this
.
shareholderText
.
indexOf
(
this
.
shareholderBg
[
i
].
value
)
==-
1
){
this
.
shareholderText
.
push
(
this
.
shareholderBg
[
i
].
value
)
}
flag
=
true
;
}
}
if
(
flag
){
this
.
checkshareholder
=
false
;
}
else
{
this
.
checkshareholder
=
true
;
}
this
.
search
();
},
checkequityRelationshipbtn
(
val
){
this
.
equityRelationshipText
=
[];
this
.
checkequityRelationship
=
true
;
this
.
search
();
},
equityRelationshipbtn
(
val
){
if
(
val
.
length
>
0
){
this
.
checkequityRelationship
=
false
;
}
else
if
(
val
.
length
==
0
){
this
.
checkequityRelationship
=
true
;
}
this
.
search
();
},
handsequencingList
(
index
)
{
this
.
fieldshow
=
false
;
this
.
sort
=
this
.
fieldOptions
[
index
].
key
;
for
(
let
i
=
0
;
i
<
this
.
fieldOptions
.
length
;
i
++
)
{
this
.
fieldOptions
[
i
].
status
=
false
;
if
(
this
.
domicile
.
length
>
0
)
{
data
=
{
title
:
"行政区划:"
,
keyid
:
"domicile"
,
value
:
this
.
domicile
.
join
(
","
),
key
:
"domicile"
}
flag
=
true
;
arr
.
push
(
data
)
}
this
.
fieldText
=
this
.
fieldOptions
[
index
].
value
;
this
.
fieldOptions
[
index
].
status
=
true
;
this
.
search
();
},
handleCurrentChange
(
pageNum
)
{
this
.
pageNum
=
pageNum
;
this
.
search
(
pageNum
,
this
.
pageSize
);
},
handleSizeChange
(
pageSize
)
{
this
.
pageSize
=
pageSize
;
this
.
search
(
this
.
pageNum
,
pageSize
);
},
reloadPage
()
{
this
.
pageFlag
=
false
;
this
.
$nextTick
(()
=>
{
this
.
pageFlag
=
true
;
});
this
.
conditionsArr
=
arr
return
flag
;
},
},
async
handleHistoryClaim
(){
let
res
=
await
api
.
historyClaim
(
this
.
companyName
)
if
(
res
.
code
==
200
){
this
.
dialogVisible2
=
false
;
this
.
search
();
}
else
{
this
.
$message
.
error
(
res
.
msg
)
}
},
claimbtn
(
item
){
if
(
item
.
claimStatus
==
1
){
return
this
.
dialogVisible2
=
true
;
}
this
.
companyId
=
item
.
companyId
;
var
info
=
{};
api
.
infoHeader
({
companyId
:
this
.
companyId
}).
then
(
res
=>
{
// console.log(res)
info
=
res
.
data
;
let
params
=
{
companyId
:
item
.
companyId
,
uipId
:
item
.
uipId
,
companyName
:
item
.
companyName
.
replace
(
/<font color='red'>/g
,
''
).
replace
(
/<
\/
font>/g
,
''
),
creditLevel
:
info
.
bratingSubjectLevel
,
legalPerson
:
info
.
corporatePerson
,
registerCapital
:
info
.
registeredCapital
,
provinceId
:
info
.
provinceId
,
cityId
:
info
.
cityId
,
districtId
:
info
.
districtCode
,
registerAddress
:
info
.
provinceName
+
'-'
+
info
.
cityName
+
'-'
+
info
.
districtName
,
creditCode
:
info
.
creditCode
,
}
api
.
claim
(
params
).
then
(
res1
=>
{
if
(
res1
.
code
==
200
)
{
this
.
dialogVisible
=
true
;
this
.
customerId
=
res1
.
data
.
customerId
;
}
}).
catch
(
error
=>
{
});
created
()
{
api
.
uipGroupData
().
then
(
res
=>
{
if
(
res
.
code
==
200
)
{
// 行政等级
this
.
uipExecutiveLevel
=
res
.
data
.
uipExecutiveLevel
,
// 城投业务类型
this
.
uipBusinessType
=
res
.
data
.
uipBusinessType
,
// 主体信用等级
this
.
bratingSubjectLevel
=
res
.
data
.
bratingSubjectLevel
,
// 股东背景
this
.
shareholderBg
=
res
.
data
.
shareholderBg
,
// 股权关系
this
.
equityRelationship
=
res
.
data
.
equityRelationship
;
if
(
this
.
shareholderBg
.
length
>
0
){
let
arr
=
[]
this
.
shareholderBg
.
map
(
item
=>
{
arr
.
push
({
value
:
item
,
checked
:
false
})
})
this
.
shareholderBg
=
arr
}
}
}).
catch
(
error
=>
{
});
},
cancelClaim
(
companyName
,
index
){
this
.
dialogVisible1
=
true
;
this
.
companyName
=
companyName
;
this
.
cancelIndex
=
index
;
},
confirm
(){
api
.
cancelClaim
(
this
.
companyName
).
then
(
res
=>
{
if
(
res
.
code
==
200
){
this
.
dialogVisible1
=
false
;
this
.
tableData
[
this
.
cancelIndex
].
claimStatus
=
1
}
else
{
this
.
$message
.
error
(
res
.
msg
)
}
})
mounted
()
{
this
.
init
();
},
claimopen
(
companyId
,
customerId
){
this
.
$router
.
push
({
path
:
'/enterprise/'
+
encodeStr
(
companyId
),
query
:
{
'customerId'
:
customerId
,
'path'
:
'business'
}
,
})
this
.
dialogVisible
=
false
;
this
.
search
();
},
search
(
pageNum
,
pageSize
,
exportFlag
)
{
this
.
dialogVisible
=
false
;
if
(
!
pageNum
)
{
this
.
pageNum
=
1
;
}
if
(
!
pageSize
)
{
this
.
pageSize
=
20
;
}
if
(
!
pageNum
&&
!
pageSize
)
{
this
.
reloadPage
();
}
let
params
=
{
pageNum
:
this
.
pageNum
,
pageSize
:
this
.
pageSize
,
sort
:
this
.
sort
,
};
var
data
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
jskBidQueryDto
));
if
(
this
.
keys
){
params
[
'keys'
]
=
this
.
keys
.
split
(
' '
);
}
else
{
delete
params
.
keys
}
methods
:
{
domicileChange
()
{
let
arr
=
this
.
$refs
.
address
.
getCheckedNodes
();
let
provinceIds
=
[],
cityIds
=
[],
areaIds
=
[];
this
.
domicile
=
[];
for
(
var
i
in
arr
)
{
if
(
arr
[
i
].
parent
)
{
if
(
!
arr
[
i
].
parent
.
checked
)
{
arr
[
i
].
hasChildren
&&
cityIds
.
push
(
arr
[
i
].
value
);
arr
[
i
].
hasChildren
&&
this
.
domicile
.
push
(
arr
[
i
].
label
);
!
arr
[
i
].
hasChildren
&&
areaIds
.
push
(
arr
[
i
].
value
);
!
arr
[
i
].
hasChildren
&&
this
.
domicile
.
push
(
arr
[
i
].
label
);
}
}
else
{
provinceIds
.
push
(
arr
[
i
].
value
);
this
.
domicile
.
push
(
arr
[
i
].
label
);
}
}
var
obj
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
jskBidQueryDto
));
obj
.
provinceIds
=
provinceIds
;
obj
.
cityIds
=
cityIds
;
obj
.
areaIds
=
areaIds
;
this
.
jskBidQueryDto
=
obj
;
this
.
search
();
},
if
(
data
.
provinceIds
.
length
>
0
){
params
[
'provinceIds'
]
=
data
.
provinceIds
;
}
else
{
delete
params
.
provinceIds
}
if
(
data
.
cityIds
.
length
>
0
){
params
[
'cityIds'
]
=
data
.
cityIds
;
}
else
{
delete
params
.
cityIds
}
if
(
data
.
areaIds
.
length
>
0
){
params
[
'areaIds'
]
=
data
.
areaIds
;
}
else
{
delete
params
.
areaIds
}
if
(
this
.
uipExecutiveText
.
length
>
0
){
params
[
'uipExecutiveLevel'
]
=
this
.
uipExecutiveText
;
}
else
{
delete
params
.
uipExecutiveLevel
}
if
(
this
.
uipBusinessText
.
length
>
0
){
params
[
'uipBusinessType'
]
=
this
.
uipBusinessText
;
}
else
{
delete
params
.
uipBusinessType
}
if
(
this
.
bratingSubjectText
.
length
>
0
){
params
[
'bratingSubjectLevel'
]
=
this
.
bratingSubjectText
;
}
else
{
delete
params
.
bratingSubjectLevel
}
if
(
this
.
shareholderText
.
length
>
0
){
params
[
'shareholderBg'
]
=
this
.
shareholderText
;
}
else
{
delete
params
.
shareholderBg
}
if
(
this
.
equityRelationshipText
.
length
>
0
){
params
[
'equityRelationship'
]
=
this
.
equityRelationshipText
;
}
else
{
delete
params
.
equityRelationship
}
this
.
isSkeleton
=
true
;
api
.
uipSerach
(
params
).
then
(
res
=>
{
this
.
isSkeleton
=
false
// console.log(res)
if
(
res
.
code
==
200
)
{
this
.
tableData
=
res
.
rows
;
this
.
total
=
res
.
total
;
}
}).
catch
(
error
=>
{
});
},
renlin
(){
this
.
dialogVisible
=
false
;
// this.$router.push({path:'/home',query: {id:'1'}})
// 跳转地址
},
},
};
</
script
>
<
style
lang=
"scss"
scoped
>
::v-deep
.dialog-renlin
{
margin-top
:
40vh
!
important
;
.el-dialog__body
{
padding
:
0
;
text-align
:
center
;
padding-bottom
:
24px
;
}
.el-dialog__footer
{
padding
:
0px
;
padding-bottom
:
24px
;
.dialog-footer
{
display
:
inline-flex
;
align-items
:
center
;
justify-content
:
center
;
width
:
100%
;
.dialog-footer-btn1
{
cursor
:
pointer
;
width
:
72px
;
height
:
28px
;
background
:
#0081FF
;
border-radius
:
2px
2px
2px
2px
;
font-size
:
12px
;
font-weight
:
400
;
color
:
#FFFFFF
;
line-height
:
28px
;
text-align
:
center
;
margin-right
:
8px
;
&
:hover
{
background
:
#006AD1
;
}
addressListfn
()
{
var
str
=
[];
for
(
let
x
=
0
;
x
<
3
;
x
++
)
{
for
(
let
i
=
0
;
i
<
jsk_data
.
length
;
i
++
)
{
if
(
jsk_data
[
i
].
regionLevel
==
x
+
1
&&
x
+
1
==
1
)
{
str
.
push
({
id
:
jsk_data
[
i
].
id
,
label
:
jsk_data
[
i
].
regionName
,
short
:
jsk_data
[
i
].
short
,
value
:
jsk_data
[
i
].
parentId
,
children
:
jsk_data
[
i
].
id
==
900000
?
undefined
:[],
});
}
else
if
(
jsk_data
[
i
].
regionLevel
==
x
+
1
&&
x
+
1
==
2
&&
str
)
{
for
(
let
j
=
0
;
j
<
str
.
length
;
j
++
)
{
if
(
str
[
j
].
id
==
jsk_data
[
i
].
parentId
)
{
str
[
j
].
children
.
push
({
id
:
jsk_data
[
i
].
id
,
label
:
jsk_data
[
i
].
regionName
,
short
:
jsk_data
[
i
].
short
,
value
:
jsk_data
[
i
].
parentId
,
children
:
[],
});
}
.dialog-footer-btn2
{
cursor
:
pointer
;
width
:
72px
;
height
:
28px
;
border-radius
:
2px
2px
2px
2px
;
border
:
1px
solid
#CCCCCC
;
line-height
:
28px
;
text-align
:
center
;
font-size
:
12px
;
font-weight
:
400
;
color
:
rgba
(
35
,
35
,
35
,
0
.8
);
&
:hover
{
background
:
#F3F4F5
;
}
}
else
if
(
jsk_data
[
i
].
regionLevel
==
x
+
1
&&
x
+
1
==
3
)
{
for
(
let
j
=
0
;
j
<
str
.
length
;
j
++
)
{
if
(
str
[
j
].
children
){
for
(
let
k
=
0
;
k
<
str
[
j
].
children
.
length
;
k
++
)
{
if
(
str
[
j
].
children
[
k
].
id
==
jsk_data
[
i
].
parentId
)
{
str
[
j
].
children
[
k
].
children
.
push
({
id
:
jsk_data
[
i
].
id
,
label
:
jsk_data
[
i
].
regionName
,
short
:
jsk_data
[
i
].
short
,
value
:
jsk_data
[
i
].
parentId
,
});
}
}
}
}
}
}
}
}
.content
{
padding
:
0px
16px
;
border-radius
:
4px
4px
4px
4px
;
background
:
#FFFFFF
;
.content_item
{
padding-top
:
20px
;
display
:
-
webkit-box
;
align-items
:
flex-start
;
.label
{
width
:
84px
;
font-size
:
14px
;
font-weight
:
400
;
color
:
rgba
(
35
,
35
,
35
,
0
.8
);
margin-right
:
28px
;
}
.content_right
{
width
:
calc
(
100%
-
112px
);
.ename_input
{
width
:
640px
;
margin-right
:
20px
;
}
.land_ipt_470
{
width
:
640px
;
}
}
.item_ckquery_list
{
display
:
flex
;
align-items
:
center
;
.qualifications-tab
{
margin-right
:
4px
;
border
:
1px
solid
#e0e0e0
;
padding
:
2px
3px
;
border-radius
:
2px
;
height
:
34px
;
margin-top
:
1px
;
span
{
background
:
#fff
;
display
:
inline-block
;
cursor
:
pointer
;
float
:
left
;
border-radius
:
2px
;
padding
:
3px
8px
;
margin-top
:
0
.5px
;
}
.action
{
color
:
#ffffff
;
background
:
#0081ff
;
}
}
.ckquery_list_right
{
width
:
670px
;
}
}
.item_ckquery_list
.el-input__icon
{
position
:
relative
;
top
:
1px
;
}
.ckquery_list_right
{
width
:
640px
;
}
.register_count_ipt
{
margin-left
:
0px
;
this
.
addressList
=
str
;
},
reset
()
{
Object
.
assign
(
this
.
$data
,
this
.
$options
.
data
.
call
(
this
));
//重置data
this
.
init
();
},
init
(){
this
.
search
();
this
.
addressListfn
();
},
checkuipExecutivebtn
(
val
){
this
.
uipExecutiveText
=
[];
this
.
checkuipExecutive
=
true
;
this
.
search
();
},
uipExecutiveLevelbtn
(
val
){
if
(
val
.
length
>
0
){
this
.
checkuipExecutive
=
false
;
}
else
if
(
val
.
length
==
0
){
this
.
checkuipExecutive
=
true
;
}
this
.
search
();
},
checkuipBusinessbtn
(
val
){
this
.
uipBusinessText
=
[];
this
.
checkuipBusiness
=
true
;
this
.
search
();
},
uipBusinessTypebtn
(
val
){
if
(
val
.
length
>
0
){
this
.
checkuipBusiness
=
false
;
}
else
if
(
val
.
length
==
0
){
this
.
checkuipBusiness
=
true
;
}
this
.
search
();
},
checkbratingSubjectbtn
(
val
){
this
.
bratingSubjectText
=
[];
this
.
search
();
this
.
checkbratingSubject
=
true
;
},
bratingSubjectLevelbtn
(
val
){
if
(
val
.
length
>
0
){
this
.
checkbratingSubject
=
false
;
}
else
if
(
val
.
length
==
0
){
this
.
checkbratingSubject
=
true
;
}
this
.
search
();
},
checkshareholderbtn
(
val
){
this
.
shareholderText
=
[];
for
(
var
i
in
this
.
shareholderBg
){
this
.
shareholderBg
[
i
].
checked
=
false
}
this
.
checkshareholder
=
true
;
this
.
search
();
},
shareholderBgbtn
(
val
){
let
flag
=
false
this
.
shareholderText
=
[];
for
(
var
i
in
this
.
shareholderBg
){
if
(
this
.
shareholderBg
[
i
].
checked
){
if
(
this
.
shareholderText
.
indexOf
(
this
.
shareholderBg
[
i
].
value
)
==-
1
){
this
.
shareholderText
.
push
(
this
.
shareholderBg
[
i
].
value
)
}
flag
=
true
;
}
}
if
(
flag
){
this
.
checkshareholder
=
false
;
}
else
{
this
.
checkshareholder
=
true
;
}
this
.
search
();
},
checkequityRelationshipbtn
(
val
){
this
.
equityRelationshipText
=
[];
this
.
checkequityRelationship
=
true
;
this
.
search
();
},
equityRelationshipbtn
(
val
){
if
(
val
.
length
>
0
){
this
.
checkequityRelationship
=
false
;
}
else
if
(
val
.
length
==
0
){
this
.
checkequityRelationship
=
true
;
}
this
.
search
();
},
handsequencingList
(
index
)
{
this
.
fieldshow
=
false
;
this
.
sort
=
this
.
fieldOptions
[
index
].
key
;
for
(
let
i
=
0
;
i
<
this
.
fieldOptions
.
length
;
i
++
)
{
this
.
fieldOptions
[
i
].
status
=
false
;
}
this
.
fieldText
=
this
.
fieldOptions
[
index
].
value
;
this
.
fieldOptions
[
index
].
status
=
true
;
this
.
search
();
},
handleCurrentChange
(
pageNum
)
{
this
.
pageNum
=
pageNum
;
this
.
search
(
pageNum
,
this
.
pageSize
);
},
handleSizeChange
(
pageSize
)
{
this
.
pageSize
=
pageSize
;
this
.
search
(
this
.
pageNum
,
pageSize
);
},
reloadPage
()
{
this
.
pageFlag
=
false
;
this
.
$nextTick
(()
=>
{
this
.
pageFlag
=
true
;
});
},
async
handleHistoryClaim
(){
let
res
=
await
api
.
historyClaim
(
this
.
companyName
)
if
(
res
.
code
==
200
){
this
.
dialogVisible2
=
false
;
this
.
search
();
}
else
{
this
.
$message
.
error
(
res
.
msg
)
}
},
claimbtn
(
item
){
if
(
item
.
claimStatus
==
1
){
return
this
.
dialogVisible2
=
true
;
}
this
.
companyId
=
item
.
companyId
;
var
info
=
{};
api
.
infoHeader
({
companyId
:
this
.
companyId
}).
then
(
res
=>
{
// console.log(res)
info
=
res
.
data
;
let
params
=
{
companyId
:
item
.
companyId
,
uipId
:
item
.
uipId
,
companyName
:
item
.
companyName
.
replace
(
/<font color='red'>/g
,
''
).
replace
(
/<
\/
font>/g
,
''
),
creditLevel
:
info
.
bratingSubjectLevel
,
legalPerson
:
info
.
corporatePerson
,
registerCapital
:
info
.
registeredCapital
,
provinceId
:
info
.
provinceId
,
cityId
:
info
.
cityId
,
districtId
:
info
.
districtCode
,
registerAddress
:
info
.
provinceName
+
'-'
+
info
.
cityName
+
'-'
+
info
.
districtName
,
creditCode
:
info
.
creditCode
,
}
api
.
claim
(
params
).
then
(
res1
=>
{
if
(
res1
.
code
==
200
)
{
this
.
dialogVisible
=
true
;
this
.
customerId
=
res1
.
data
.
customerId
;
}
}).
catch
(
error
=>
{
});
}).
catch
(
error
=>
{
});
},
cancelClaim
(
companyName
,
index
){
this
.
dialogVisible1
=
true
;
this
.
companyName
=
companyName
;
this
.
cancelIndex
=
index
;
},
confirm
(){
api
.
cancelClaim
(
this
.
companyName
).
then
(
res
=>
{
if
(
res
.
code
==
200
){
this
.
dialogVisible1
=
false
;
this
.
tableData
[
this
.
cancelIndex
].
claimStatus
=
1
}
else
{
this
.
$message
.
error
(
res
.
msg
)
}
})
},
claimopen
(
companyId
,
customerId
){
this
.
$router
.
push
({
path
:
'/enterprise/'
+
encodeStr
(
companyId
),
query
:
{
'customerId'
:
customerId
,
'path'
:
'business'
}
,
})
this
.
dialogVisible
=
false
;
this
.
search
();
},
search
(
pageNum
,
pageSize
,
exportFlag
)
{
this
.
dialogVisible
=
false
;
if
(
!
pageNum
)
{
this
.
pageNum
=
1
;
}
.register_count_ipt
.el-input__inner
{
width
:
174px
;
if
(
!
pageSize
)
{
this
.
pageSize
=
20
;
}
::v-deep
.el-input-group__prepend
{
padding
:
0
8px
;
if
(
!
pageNum
&&
!
pageSize
)
{
this
.
reloadPage
()
;
}
.content-projecttype
{
display
:
flex
;
align-items
:
center
;
justify-content
:
center
;
.projecttype
{
font-weight
:
400
;
color
:
#232323
;
padding
:
1px
5px
;
margin-right
:
4px
;
cursor
:
pointer
;
border-radius
:
3px
3px
3px
3px
;
font-size
:
14px
;
}
.projecttype
:first-child
{
padding-left
:
0px
;
}
.projecttype
:hover
{
background
:
#F3F4F5
;
padding
:
1px
5px
;
}
.activetype
{
background
:
#F3F4F5
;
padding
:
1px
5px
!
important
;
}
let
params
=
{
pageNum
:
this
.
pageNum
,
pageSize
:
this
.
pageSize
,
sort
:
this
.
sort
,
};
var
data
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
jskBidQueryDto
));
if
(
this
.
keys
){
params
[
'keys'
]
=
this
.
keys
.
split
(
' '
);
}
else
{
delete
params
.
keys
}
}
.content_item1
{
.checkbox-content
{
display
:
block
;
.el-checkbox
{
margin-bottom
:
20px
;
}
}
}
.content_item_padding0
{
padding
:
0
;
}
}
.bottomlist
{
width
:
100%
;
background-color
:
#FFFFFF
;
border-radius
:
4px
4px
4px
4px
;
.bottomlist-title
{
display
:
flex
;
justify-content
:
space-between
;
align-items
:
center
;
margin-top
:
12px
;
padding
:
16px
;
.title-right
{
display
:
flex
;
align-items
:
center
;
p
:first-child
{
font-size
:
12px
;
font-weight
:
400
;
color
:
#3D3D3D
;
margin-right
:
10px
;
}
p
:last-child
{
display
:
flex
;
align-items
:
center
;
font-size
:
14px
;
font-weight
:
400
;
color
:
rgba
(
35
,
35
,
35
,
0
.8
);
}
img
{
width
:
18px
;
height
:
18px
;
}
.excel
{
cursor
:
pointer
;
}
}
if
(
data
.
provinceIds
.
length
>
0
){
params
[
'provinceIds'
]
=
data
.
provinceIds
;
}
else
{
delete
params
.
provinceIds
}
.bottomlist-title-left
{
display
:
inline-flex
;;
align-items
:
center
;
.title-left
{
border-left
:
2px
solid
#445781
;
padding-left
:
8px
;
padding-right
:
32px
;
font-size
:
16px
;
height
:
16px
;
line-height
:
16px
;
font-weight
:
bold
;
color
:
#232323
;
}
if
(
data
.
cityIds
.
length
>
0
){
params
[
'cityIds'
]
=
data
.
cityIds
;
}
else
{
delete
params
.
cityIds
}
.bottomlist-content
{
padding-bottom
:
0px
;
if
(
data
.
areaIds
.
length
>
0
){
params
[
'areaIds'
]
=
data
.
areaIds
;
}
else
{
delete
params
.
areaIds
}
.table-item-jf
{
padding
:
0px
16px
;
.list-titel-a
{
color
:
#0081FF
;
}
::v-deep
.el-table--border
.el-table__cell
:first-child
.cell
{
padding
:
0px
8px
;
padding-left
:
12px
;
font-size
:
12px
;
font-weight
:
400
;
}
::v-deep
.el-table
th
.el-table__cell
>
.cell
{
padding
:
0px
8px
;
padding-left
:
12px
;
font-size
:
12px
;
font-weight
:
400
;
}
::v-deep
.el-table
th
.el-table__cell.is-leaf
,
::v-deep
.el-table
td
.el-table__cell
{
border-bottom
:
1px
solid
#E6EAF1
;
}
::v-deep
.el-table--border
.el-table__cell
{
border-right
:
1px
solid
#E6EAF1
;
}
::v-deep
.el-table__fixed
::before
{
height
:
0
;
}
.renling
{
display
:
flex
;
align-items
:
center
;
.list-titel-a
{
width
:
264px
;
margin-right
:
12px
;
}
.renling-btn
{
display
:
flex
;
align-items
:
center
;
cursor
:
pointer
;
.renling-img-true
{
width
:
16px
;
height
:
16px
;
margin-right
:
8px
;
background-image
:
url('../../../../assets/images/owner/renling1.png')
;
background-size
:
100%
100%
;
background-repeat
:
no-repeat
;
}
.renling-img-false
{
width
:
16px
;
height
:
16px
;
margin-right
:
8px
;
background-image
:
url('../../../../assets/images/owner/renling2.png')
;
background-size
:
100%
100%
;
background-repeat
:
no-repeat
;
}
.renling-hui
{
font-size
:
13px
;
font-weight
:
400
;
color
:
rgba
(
35
,
35
,
35
,
0
.4
);
}
.renling-hei
{
font-size
:
13px
;
font-weight
:
400
;
color
:
#3D3D3D
;
}
}
.renling-btn
:hover
{
.renling-hei
{
color
:
#0081FF
;
}
}
}
if
(
this
.
uipExecutiveText
.
length
>
0
){
params
[
'uipExecutiveLevel'
]
=
this
.
uipExecutiveText
;
}
else
{
delete
params
.
uipExecutiveLevel
}
.table-item1
{
::v-deep
.el-table__body-wrapper
{
color
:
#232323
;
}
if
(
this
.
uipBusinessText
.
length
>
0
)
{
params
[
'uipBusinessType'
]
=
this
.
uipBusinessText
;
}
else
{
delete
params
.
uipBusinessType
}
.fixed-table
{
overflow
:initial
;
::v-deep
.el-table__header-wrapper
{
position
:
sticky
;
top
:
56px
;
z-index
:
9
;
}
::v-deep
.el-table__fixed-header-wrapper
{
position
:
sticky
;
z-index
:
9
;
top
:
56px
;
}
::v-deep
.el-table__fixed
{
overflow-x
:
clip
;
overflow-y
:
clip
;
}
if
(
this
.
bratingSubjectText
.
length
>
0
){
params
[
'bratingSubjectLevel'
]
=
this
.
bratingSubjectText
;
}
else
{
delete
params
.
bratingSubjectLevel
}
.table-item-jf1
{
border-top
:
1px
solid
#EFEFEF
;
if
(
this
.
shareholderText
.
length
>
0
){
params
[
'shareholderBg'
]
=
this
.
shareholderText
;
}
else
{
delete
params
.
shareholderBg
}
.pagination
{
padding
:
14px
;
.el-pagination
{
float
:
right
;
}
if
(
this
.
equityRelationshipText
.
length
>
0
){
params
[
'equityRelationship'
]
=
this
.
equityRelationshipText
;
}
else
{
delete
params
.
equityRelationship
}
}
</
style
>
this
.
isSkeleton
=
true
;
api
.
uipSerach
(
params
).
then
(
res
=>
{
this
.
isSkeleton
=
false
// console.log(res)
if
(
res
.
code
==
200
)
{
this
.
tableData
=
res
.
rows
;
this
.
total
=
res
.
total
;
}
}).
catch
(
error
=>
{
});
},
renlin
(){
this
.
dialogVisible
=
false
;
// this.$router.push({path:'/home',query: {id:'1'}})
// 跳转地址
},
},
};
</
script
>
<
style
lang=
"scss"
scoped
>
::v-deep
.dialog-renlin
{
margin-top
:
40vh
!
important
;
.el-dialog__body
{
padding
:
0
;
text-align
:
center
;
padding-bottom
:
24px
;
}
.el-dialog__footer
{
padding
:
0px
;
padding-bottom
:
24px
;
.dialog-footer
{
display
:
inline-flex
;
align-items
:
center
;
justify-content
:
center
;
width
:
100%
;
.dialog-footer-btn1
{
cursor
:
pointer
;
width
:
72px
;
height
:
28px
;
background
:
#0081FF
;
border-radius
:
2px
2px
2px
2px
;
font-size
:
12px
;
font-weight
:
400
;
color
:
#FFFFFF
;
line-height
:
28px
;
text-align
:
center
;
margin-right
:
8px
;
&
:hover
{
background
:
#006AD1
;
}
}
.dialog-footer-btn2
{
cursor
:
pointer
;
width
:
72px
;
height
:
28px
;
border-radius
:
2px
2px
2px
2px
;
border
:
1px
solid
#CCCCCC
;
line-height
:
28px
;
text-align
:
center
;
font-size
:
12px
;
font-weight
:
400
;
color
:
rgba
(
35
,
35
,
35
,
0
.8
);
&
:hover
{
background
:
#F3F4F5
;
}
}
}
}
}
.content
{
padding
:
0px
16px
;
border-radius
:
4px
4px
4px
4px
;
background
:
#FFFFFF
;
.content_item
{
padding-top
:
20px
;
display
:
-
webkit-box
;
align-items
:
flex-start
;
.label
{
width
:
84px
;
font-size
:
14px
;
font-weight
:
400
;
color
:
rgba
(
35
,
35
,
35
,
0
.8
);
margin-right
:
28px
;
}
.content_right
{
width
:
calc
(
100%
-
112px
);
.ename_input
{
width
:
640px
;
margin-right
:
20px
;
}
.land_ipt_470
{
width
:
640px
;
}
}
.item_ckquery_list
{
display
:
flex
;
align-items
:
center
;
.qualifications-tab
{
margin-right
:
4px
;
border
:
1px
solid
#e0e0e0
;
padding
:
2px
3px
;
border-radius
:
2px
;
height
:
34px
;
margin-top
:
1px
;
span
{
background
:
#fff
;
display
:
inline-block
;
cursor
:
pointer
;
float
:
left
;
border-radius
:
2px
;
padding
:
3px
8px
;
margin-top
:
0
.5px
;
}
.action
{
color
:
#ffffff
;
background
:
#0081ff
;
}
}
.ckquery_list_right
{
width
:
670px
;
}
}
.item_ckquery_list
.el-input__icon
{
position
:
relative
;
top
:
1px
;
}
.ckquery_list_right
{
width
:
640px
;
}
.register_count_ipt
{
margin-left
:
0px
;
}
.register_count_ipt
.el-input__inner
{
width
:
174px
;
}
::v-deep
.el-input-group__prepend
{
padding
:
0
8px
;
}
.content-projecttype
{
display
:
flex
;
align-items
:
center
;
justify-content
:
center
;
.projecttype
{
font-weight
:
400
;
color
:
#232323
;
padding
:
1px
5px
;
margin-right
:
4px
;
cursor
:
pointer
;
border-radius
:
3px
3px
3px
3px
;
font-size
:
14px
;
}
.projecttype
:first-child
{
padding-left
:
0px
;
}
.projecttype
:hover
{
background
:
#F3F4F5
;
padding
:
1px
5px
;
}
.activetype
{
background
:
#F3F4F5
;
padding
:
1px
5px
!
important
;
}
}
}
.content_item1
{
.checkbox-content
{
display
:
block
;
.el-checkbox
{
margin-bottom
:
20px
;
}
}
}
.content_item_padding0
{
padding
:
0
;
}
}
.bottomlist
{
width
:
100%
;
background-color
:
#FFFFFF
;
border-radius
:
4px
4px
4px
4px
;
.bottomlist-title
{
display
:
flex
;
justify-content
:
space-between
;
align-items
:
center
;
margin-top
:
12px
;
padding
:
16px
;
.title-right
{
display
:
flex
;
align-items
:
center
;
p
:first-child
{
font-size
:
12px
;
font-weight
:
400
;
color
:
#3D3D3D
;
margin-right
:
10px
;
}
p
:last-child
{
display
:
flex
;
align-items
:
center
;
font-size
:
14px
;
font-weight
:
400
;
color
:
rgba
(
35
,
35
,
35
,
0
.8
);
}
img
{
width
:
18px
;
height
:
18px
;
}
.excel
{
cursor
:
pointer
;
}
}
}
.bottomlist-title-left
{
display
:
inline-flex
;;
align-items
:
center
;
.title-left
{
border-left
:
2px
solid
#445781
;
padding-left
:
8px
;
padding-right
:
32px
;
font-size
:
16px
;
height
:
16px
;
line-height
:
16px
;
font-weight
:
bold
;
color
:
#232323
;
}
}
.bottomlist-content
{
padding-bottom
:
0px
;
}
.table-item-jf
{
padding
:
0px
16px
;
.list-titel-a
{
color
:
#0081FF
;
}
::v-deep
.el-table--border
.el-table__cell
:first-child
.cell
{
padding
:
0px
8px
;
padding-left
:
12px
;
font-size
:
12px
;
font-weight
:
400
;
}
::v-deep
.el-table
th
.el-table__cell
>
.cell
{
padding
:
0px
8px
;
padding-left
:
12px
;
font-size
:
12px
;
font-weight
:
400
;
}
::v-deep
.el-table
th
.el-table__cell.is-leaf
,
::v-deep
.el-table
td
.el-table__cell
{
border-bottom
:
1px
solid
#E6EAF1
;
}
::v-deep
.el-table--border
.el-table__cell
{
border-right
:
1px
solid
#E6EAF1
;
}
::v-deep
.el-table__fixed
::before
{
height
:
0
;
}
.renling
{
display
:
flex
;
align-items
:
center
;
.list-titel-a
{
width
:
264px
;
margin-right
:
12px
;
}
.renling-btn
{
display
:
flex
;
align-items
:
center
;
cursor
:
pointer
;
.renling-img-true
{
width
:
16px
;
height
:
16px
;
margin-right
:
8px
;
background-image
:
url('../../../../assets/images/owner/renling1.png')
;
background-size
:
100%
100%
;
background-repeat
:
no-repeat
;
}
.renling-img-false
{
width
:
16px
;
height
:
16px
;
margin-right
:
8px
;
background-image
:
url('../../../../assets/images/owner/renling2.png')
;
background-size
:
100%
100%
;
background-repeat
:
no-repeat
;
}
.renling-hui
{
font-size
:
13px
;
font-weight
:
400
;
color
:
rgba
(
35
,
35
,
35
,
0
.4
);
}
.renling-hei
{
font-size
:
13px
;
font-weight
:
400
;
color
:
#3D3D3D
;
}
}
.renling-btn
:hover
{
.renling-hei
{
color
:
#0081FF
;
}
}
}
}
.table-item1
{
::v-deep
.el-table__body-wrapper
{
color
:
#232323
;
}
}
.fixed-table
{
overflow
:initial
;
::v-deep
.el-table__header-wrapper
{
position
:
sticky
;
top
:
56px
;
z-index
:
9
;
}
::v-deep
.el-table__fixed-header-wrapper
{
position
:
sticky
;
z-index
:
9
;
top
:
56px
;
}
::v-deep
.el-table__fixed
{
overflow-x
:
clip
;
overflow-y
:
clip
;
}
}
.table-item-jf1
{
border-top
:
1px
solid
#EFEFEF
;
}
.pagination
{
padding
:
14px
;
.el-pagination
{
float
:
right
;
}
}
}
</
style
>
\ No newline at end of file
dsk-operate-ui/src/views/index.vue
View file @
fb16a235
...
...
@@ -981,12 +981,15 @@ export default {
},
initChart1
(
list
){
let
data
=
[]
if
(
list
.
length
>
10
){
let
arr
=
list
.
sort
(
function
(
a
,
b
)
{
return
b
.
count
-
a
.
count
;
});
if
(
arr
.
length
>
10
){
for
(
var
i
=
0
;
i
<
10
;
i
++
){
data
.
push
(
list
[
i
])
data
.
push
(
arr
[
i
])
}
}
else
{
data
=
list
;
data
=
arr
;
}
var
rankPic
=
[
...
...
dsk-operate-ui/src/views/macro/economies/component/industrialStructure.vue
View file @
fb16a235
...
...
@@ -376,7 +376,7 @@ export default {
top
:
46px
;
}
th
{
font-size
:
1
2
px
!
important
;
font-size
:
1
3
px
!
important
;
font-weight
:
400
!
important
;
}
.el-table__fixed-header-wrapper
th
{
...
...
dsk-operate-ui/src/views/macro/economies/component/localEconomy.vue
View file @
fb16a235
...
...
@@ -22,6 +22,7 @@
v-loading=
"tableLoading"
:data=
"tableData"
border
v-horizontal-scroll=
"'always'"
highlight-current-row
@
sort-change=
"sortChange"
:default-sort =
"
{prop: 'gdp', order: 'descending'}"
...
...
@@ -36,7 +37,7 @@
</el-table-column>
<el-table-column
prop=
"gdp"
label=
"GDP(亿元)"
sortable
width=
"120"
:formatter=
"formatStatus"
/>
<el-table-column
prop=
"gdpGrowth"
label=
"GDP增速(%)"
sortable
width=
"1
2
0"
:formatter=
"formatStatus"
/>
<el-table-column
prop=
"gdpGrowth"
label=
"GDP增速(%)"
sortable
width=
"1
3
0"
:formatter=
"formatStatus"
/>
<el-table-column
prop=
"gdpPerCapita"
label=
"人均GDP(元)"
sortable
width=
"130"
:formatter=
"formatStatus"
/>
<el-table-column
prop=
"population"
label=
"人口(万人)"
sortable
width=
"120"
:formatter=
"formatStatus"
/>
<el-table-column
prop=
"fixedInvestment"
label=
"固定资产投资 (亿元) "
sortable
width=
"200"
:formatter=
"formatStatus"
/>
...
...
@@ -226,7 +227,6 @@ export default {
overflow-y
:
clip
;
}
th
{
font-size
:
12px
!
important
;
font-weight
:
400
!
important
;
}
.el-table__fixed-header-wrapper
th
{
...
...
dsk-operate-ui/src/views/macro/economies/component/regionalEconomy.vue
View file @
fb16a235
...
...
@@ -873,7 +873,7 @@ export default {
::v-deep
.el-table
{
overflow
:visible
;
th
{
font-size
:
1
2
px
!
important
;
font-size
:
1
3
px
!
important
;
font-weight
:
400
!
important
;
}
.el-table__fixed-header-wrapper
th
{
...
...
dsk-operate-ui/src/views/macro/enterprises/index.vue
View file @
fb16a235
...
...
@@ -20,6 +20,7 @@
collapse-tags
clearable
></el-cascader>
<el-input
placeholder=
"输入关键词查询"
v-model=
"queryParams.ename"
clearable
@
clear=
"handleSearch()"
>
<i
slot=
"prefix"
class=
"el-icon-search"
></i>
<el-button
slot=
"append"
@
click=
"handleSearch()"
>
搜索
</el-button>
</el-input>
<span
class=
"total"
>
共
{{
tableDataTotal
}}
条
</span>
...
...
@@ -31,7 +32,7 @@
v-loading=
"tableLoading"
border
fit
max-height=
"640
"
v-horizontal-scroll=
"'always'
"
@
sort-change=
"sortChange"
highlight-current-row
v-if=
"tableDataTotal > 0 && !isSkeleton"
...
...
@@ -353,11 +354,13 @@ export default {
width
:
180px
;
margin-right
:
12px
;
height
:
32px
;
line-height
:
32px
!
important
;
.el-input
{
width
:
100%
;
height
:
32px
;
.el-input__inner
{
height
:
32px
!
important
;
line-height
:
32px
!
important
;
}
}
.el-cascader__tags
{
...
...
@@ -378,8 +381,20 @@ export default {
.el-input__suffix
{
margin-top
:
-1px
;
}
.el-icon-search
{
font-size
:
14px
;
line-height
:
32px
;
color
:
#0081FF
;
margin-left
:
6px
;
margin-right
:
4px
;
}
.el-input__inner
:focus
{
border-color
:
#e0e0e0
;
border-color
:
#0081FF
;
}
.el-input__inner
:focus
~
.el-input-group__append
{
border
:
1px
solid
#0081FF
;
color
:
#ffffff
;
background
:
#0081FF
;
}
.el-input-group__append
{
width
:
60px
;
...
...
@@ -388,8 +403,7 @@ export default {
background
:
#F5F5F5
;
color
:
#0081FF
;
border-left
:
0
;
border-radius
:
0
;
border-right
:
0
;
border-radius
:
2px
;
}
}
.total
{
...
...
@@ -439,7 +453,7 @@ export default {
overflow-y
:
clip
;
}
th
{
font-size
:
1
2
px
!
important
;
font-size
:
1
3
px
!
important
;
font-weight
:
400
!
important
;
}
.el-table__fixed-header-wrapper
th
{
...
...
dsk-operate-ui/src/views/macro/financing/index.vue
View file @
fb16a235
...
...
@@ -437,7 +437,6 @@ export default {
.content
{
background
:
#ffffff
;
padding
:
16px
;
margin-bottom
:
16px
;
border-radius
:
4px
;
}
.common-title
{
...
...
dsk-operate-ui/src/views/macro/nationalEconomies/component/jzqyfx.vue
View file @
fb16a235
...
...
@@ -866,7 +866,7 @@
}
}
th
{
font-size
:
1
2
px
!
important
;
font-size
:
1
3
px
!
important
;
font-weight
:
400
!
important
;
}
.el-table__fixed-header-wrapper
th
{
...
...
dsk-operate-ui/src/views/macro/nationalEconomies/component/qgjjdq.vue
View file @
fb16a235
...
...
@@ -29,14 +29,13 @@
</div>
</div>
<skeleton
v-if=
"isSkeleton"
style=
"padding: 16px"
></skeleton>
<!--v-horizontal-scroll="'always'"-->
<div
class=
"table-item"
>
<el-table
class=
"fixed-table"
:data=
"tableData"
element-loading-text=
"Loading"
@
sort-change=
"sortChange"
max-height=
"640
"
v-horizontal-scroll=
"'always'
"
border
highlight-current-row
v-if=
"tableDataTotal > 0 && !isSkeleton"
...
...
@@ -45,7 +44,7 @@
<el-table-column
label=
"序号"
width=
"60"
align=
"left"
fixed
>
<template
slot-scope=
"scope"
>
{{
pageIndex
*
pageSize
-
pageSize
+
scope
.
$index
+
1
}}
</
template
>
</el-table-column>
<el-table-column
label=
"地区"
min-
width=
"150"
align=
"left"
fixed
>
<el-table-column
label=
"地区"
width=
"150"
align=
"left"
fixed
>
<
template
slot-scope=
"scope"
>
<span
@
click=
"clickTo(scope.row)"
style=
"cursor: pointer;"
class=
"a-link"
>
{{
scope
.
row
.
province
}}{{
scope
.
row
.
city
?
'-'
:
''
}}{{
scope
.
row
.
city
}}{{
scope
.
row
.
area
?
'-'
:
''
}}{{
scope
.
row
.
area
}}
</span>
</
template
>
...
...
@@ -55,26 +54,26 @@
<img
src=
"@/assets/images/icon_detailed.png"
class=
"icon-detailed"
@
click=
"handleDetail(scope.row)"
>
</
template
>
</el-table-column>
<el-table-column
label=
"GDP(亿元)"
prop=
"gdp"
:formatter=
"formatStatus"
sortable=
"custom"
min-width=
"115
"
align=
"right"
></el-table-column>
<el-table-column
label=
"GDP增速(%)"
prop=
"gdpGrowth"
:formatter=
"formatStatus"
sortable=
"custom"
min-width=
"12
0"
align=
"right"
></el-table-column>
<el-table-column
label=
"人均GDP(元)"
prop=
"gdpPerCapita"
:formatter=
"formatStatus"
sortable=
"custom"
width=
"1
25
"
align=
"right"
></el-table-column>
<el-table-column
label=
"GDP(亿元)"
prop=
"gdp"
:formatter=
"formatStatus"
sortable=
"custom"
width=
"120
"
align=
"right"
></el-table-column>
<el-table-column
label=
"GDP增速(%)"
prop=
"gdpGrowth"
:formatter=
"formatStatus"
sortable=
"custom"
width=
"13
0"
align=
"right"
></el-table-column>
<el-table-column
label=
"人均GDP(元)"
prop=
"gdpPerCapita"
:formatter=
"formatStatus"
sortable=
"custom"
width=
"1
30
"
align=
"right"
></el-table-column>
<el-table-column
label=
"人口(万人)"
prop=
"population"
:formatter=
"formatStatus"
sortable=
"custom"
width=
"120"
align=
"right"
></el-table-column>
<el-table-column
label=
"一般公共预算收入(亿元)"
prop=
"gbr"
sortable=
"custom"
:formatter=
"formatStatus"
width=
"
180
"
align=
"right"
></el-table-column>
<el-table-column
label=
"一般公共预算收入增速(%)"
prop=
"gbrGrowth"
:formatter=
"formatStatus"
sortable=
"custom"
min-width=
"150
"
align=
"right"
></el-table-column>
<el-table-column
label=
"一般公共预算收入:税收收入(亿元)"
prop=
"taxIncome"
:formatter=
"formatStatus"
sortable=
"custom"
min-width=
"15
0"
align=
"right"
></el-table-column>
<el-table-column
label=
"一般公共预算支出(亿元)"
prop=
"gbe"
:formatter=
"formatStatus"
sortable=
"custom"
width=
"1
40
"
align=
"right"
></el-table-column>
<el-table-column
label=
"政府性基金收入(亿元)"
width=
"1
4
0"
prop=
"govFundIncome"
:formatter=
"formatStatus"
sortable=
"custom"
align=
"right"
></el-table-column>
<el-table-column
label=
"政府性基金收入:土地出让收入(亿元)"
prop=
"landTransferIncome"
sortable=
"custom"
:formatter=
"formatStatus"
width=
"
150
"
align=
"right"
></el-table-column>
<el-table-column
label=
"政府性基金支出(亿元)"
prop=
"govFundExpenditure"
:formatter=
"formatStatus"
width=
"1
7
0"
sortable=
"custom"
align=
"right"
></el-table-column>
<el-table-column
label=
"国有资本经营收入(亿元)"
prop=
"soecoi"
width=
"1
6
0"
:formatter=
"formatStatus"
align=
"right"
></el-table-column>
<el-table-column
label=
"国有资本经营支出(亿元)"
prop=
"soecoe"
width=
"1
6
0"
:formatter=
"formatStatus"
align=
"right"
></el-table-column>
<el-table-column
label=
"固定资产投资(亿元)"
prop=
"fixedInvestment"
:formatter=
"formatStatus"
width=
"1
6
0"
align=
"right"
></el-table-column>
<el-table-column
label=
"一般公共预算收入(亿元)"
prop=
"gbr"
sortable=
"custom"
:formatter=
"formatStatus"
width=
"
205
"
align=
"right"
></el-table-column>
<el-table-column
label=
"一般公共预算收入增速(%)"
prop=
"gbrGrowth"
:formatter=
"formatStatus"
sortable=
"custom"
width=
"205
"
align=
"right"
></el-table-column>
<el-table-column
label=
"一般公共预算收入:税收收入(亿元)"
prop=
"taxIncome"
:formatter=
"formatStatus"
sortable=
"custom"
width=
"26
0"
align=
"right"
></el-table-column>
<el-table-column
label=
"一般公共预算支出(亿元)"
prop=
"gbe"
:formatter=
"formatStatus"
sortable=
"custom"
width=
"1
95
"
align=
"right"
></el-table-column>
<el-table-column
label=
"政府性基金收入(亿元)"
width=
"1
8
0"
prop=
"govFundIncome"
:formatter=
"formatStatus"
sortable=
"custom"
align=
"right"
></el-table-column>
<el-table-column
label=
"政府性基金收入:土地出让收入(亿元)"
prop=
"landTransferIncome"
sortable=
"custom"
:formatter=
"formatStatus"
width=
"
275
"
align=
"right"
></el-table-column>
<el-table-column
label=
"政府性基金支出(亿元)"
prop=
"govFundExpenditure"
:formatter=
"formatStatus"
width=
"1
8
0"
sortable=
"custom"
align=
"right"
></el-table-column>
<el-table-column
label=
"国有资本经营收入(亿元)"
prop=
"soecoi"
width=
"1
9
0"
:formatter=
"formatStatus"
align=
"right"
></el-table-column>
<el-table-column
label=
"国有资本经营支出(亿元)"
prop=
"soecoe"
width=
"1
9
0"
:formatter=
"formatStatus"
align=
"right"
></el-table-column>
<el-table-column
label=
"固定资产投资(亿元)"
prop=
"fixedInvestment"
:formatter=
"formatStatus"
width=
"1
9
0"
align=
"right"
></el-table-column>
<el-table-column
label=
"财政自给率(%)"
prop=
"fiscalSelfSufficiencyRate"
:formatter=
"formatStatus"
width=
"160"
align=
"right"
></el-table-column>
<el-table-column
label=
"地方政府债务余额(亿元)"
prop=
"govDebtBalance"
:formatter=
"formatStatus"
width=
"1
6
0"
align=
"right"
></el-table-column>
<el-table-column
label=
"地方政府债务余额(亿元)"
prop=
"govDebtBalance"
:formatter=
"formatStatus"
width=
"1
9
0"
align=
"right"
></el-table-column>
<el-table-column
label=
"一般债余额(亿元)"
prop=
"generalDebtBalance"
:formatter=
"formatStatus"
width=
"160"
align=
"right"
></el-table-column>
<el-table-column
label=
"专项债余额(亿元)"
prop=
"specialDebtBalance"
:formatter=
"formatStatus"
width=
"1
6
0"
align=
"right"
></el-table-column>
<el-table-column
label=
"地方政府债务限额(亿元)"
prop=
"govDebtLimit"
:formatter=
"formatStatus"
width=
"1
6
0"
align=
"right"
></el-table-column>
<el-table-column
label=
"城投平台有息债务(亿元)"
prop=
"uipInterestBearingDebt"
:formatter=
"formatStatus"
width=
"
16
0"
align=
"right"
>
<el-table-column
label=
"专项债余额(亿元)"
prop=
"specialDebtBalance"
:formatter=
"formatStatus"
width=
"1
8
0"
align=
"right"
></el-table-column>
<el-table-column
label=
"地方政府债务限额(亿元)"
prop=
"govDebtLimit"
:formatter=
"formatStatus"
width=
"1
9
0"
align=
"right"
></el-table-column>
<el-table-column
label=
"城投平台有息债务(亿元)"
prop=
"uipInterestBearingDebt"
:formatter=
"formatStatus"
width=
"
20
0"
align=
"right"
>
<
template
slot=
"header"
slot-scope=
"scope"
>
<span>
城投平台有息债务(亿元)
<el-tooltip
popper-class=
"tips"
effect=
"light"
content=
"城投平台有息债务是该地区行政区划下所有的城投公司的短期债务与长期债务合计。其中,短期债务=短期借款+一年内到期的非流动负债+应付短期债券,长期债务=长期借款+应付长期债券。"
placement=
"top"
>
...
...
@@ -84,19 +83,19 @@
</
template
>
</el-table-column>
<el-table-column
label=
"负债率(%)"
prop=
"govDebtToGdpRate"
:formatter=
"formatStatus"
width=
"160"
align=
"right"
></el-table-column>
<el-table-column
label=
"负债率(宽口径)(%)"
prop=
"govDebtToGdpRateWild"
:formatter=
"formatStatus"
width=
"1
6
0"
align=
"right"
></el-table-column>
<el-table-column
label=
"负债率(宽口径)(%)"
prop=
"govDebtToGdpRateWild"
:formatter=
"formatStatus"
width=
"1
8
0"
align=
"right"
></el-table-column>
<el-table-column
label=
"债务率(%)"
prop=
"govDebtRate"
:formatter=
"formatStatus"
width=
"160"
align=
"right"
></el-table-column>
<el-table-column
label=
"债务率(宽口径)(%)"
prop=
"govDebtRateWild"
:formatter=
"formatStatus"
width=
"1
6
0"
align=
"right"
></el-table-column>
<el-table-column
label=
"债务率(宽口径)(%)"
prop=
"govDebtRateWild"
:formatter=
"formatStatus"
width=
"1
8
0"
align=
"right"
></el-table-column>
<!--<el-table-column label="金融机构存款余额(本外币)(亿元)" prop="cgfs" width="160" align="left" />-->
<!--<el-table-column label="金融机构贷款余额(本外币)(亿元)" prop="cgfs" width="160" align="left" />-->
<el-table-column
label=
"第一产业增加值(亿元)"
prop=
"piAddValue"
:formatter=
"formatStatus"
width=
"1
6
0"
align=
"right"
></el-table-column>
<el-table-column
label=
"第二产业增加值(亿元)"
prop=
"siAddValue"
:formatter=
"formatStatus"
width=
"1
6
0"
align=
"right"
></el-table-column>
<el-table-column
label=
"第三产业增加值(亿元)"
prop=
"tiAddValue"
:formatter=
"formatStatus"
width=
"1
6
0"
align=
"right"
></el-table-column>
<el-table-column
label=
"第一产业增加值(亿元)"
prop=
"piAddValue"
:formatter=
"formatStatus"
width=
"1
8
0"
align=
"right"
></el-table-column>
<el-table-column
label=
"第二产业增加值(亿元)"
prop=
"siAddValue"
:formatter=
"formatStatus"
width=
"1
8
0"
align=
"right"
></el-table-column>
<el-table-column
label=
"第三产业增加值(亿元)"
prop=
"tiAddValue"
:formatter=
"formatStatus"
width=
"1
8
0"
align=
"right"
></el-table-column>
<el-table-column
label=
"工业增加值(亿元)"
prop=
"industryAddValue"
:formatter=
"formatStatus"
width=
"160"
align=
"right"
></el-table-column>
<el-table-column
label=
"工业总产值(亿元)"
prop=
"industryTotalValue"
:formatter=
"formatStatus"
width=
"160"
align=
"right"
></el-table-column>
<el-table-column
label=
"进出口总额(亿美元)"
prop=
"eximTotalValue"
:formatter=
"formatStatus"
width=
"160"
align=
"right"
></el-table-column>
<el-table-column
label=
"社会消费品零售总额(亿元)"
prop=
"trscg"
:formatter=
"formatStatus"
width=
"
16
0"
align=
"right"
></el-table-column>
<el-table-column
label=
"城镇居民人均可支配收入(元)"
prop=
"urbanPcdi"
:formatter=
"formatStatus"
width=
"
16
0"
align=
"right"
></el-table-column>
<el-table-column
label=
"社会消费品零售总额(亿元)"
prop=
"trscg"
:formatter=
"formatStatus"
width=
"
20
0"
align=
"right"
></el-table-column>
<el-table-column
label=
"城镇居民人均可支配收入(元)"
prop=
"urbanPcdi"
:formatter=
"formatStatus"
width=
"
21
0"
align=
"right"
></el-table-column>
</el-table>
<div
class=
"empty"
v-if=
"tableDataTotal === 0 && !isSkeleton"
>
<img
class=
"img"
src=
"@/assets/images/project/empty.png"
>
...
...
@@ -366,7 +365,7 @@
width
:
110px
;
}
::v-deep
.el-cascader
{
width
:
2
2
0px
;
width
:
2
0
0px
;
.el-cascader__tags
{
flex-wrap
:
inherit
;
.el-tag
{
...
...
@@ -377,13 +376,14 @@
}
}
::v-deep
.el-select-dropdown
{
left
:
0
!
important
;
.el-select-dropdown__item.hover
{
color
:
#0081FF
;
}
}
.content
{
background
:
#ffffff
;
padding
:
16px
;
padding
:
16px
16px
0
;
margin-top
:
12px
;
/*height: calc(100vh - 300px);*/
.table-item
{
...
...
@@ -426,7 +426,6 @@
overflow-y
:
clip
;
}
th
{
font-size
:
12px
!
important
;
font-weight
:
400
!
important
;
}
.el-table__fixed-header-wrapper
th
{
...
...
dsk-operate-ui/src/views/macro/urban/index.vue
View file @
fb16a235
...
...
@@ -92,8 +92,8 @@
</div>
</div>
<el-input
class=
"search-input"
placeholder=
"输入企业名称查询"
v-model=
"queryParams.keyword"
clearable
@
clear=
"handleKeyword()"
>
<
template
slot=
"prepend"
><i
class=
"el-icon-search"
></i></
template
>
<el-button
slot=
"append"
@
click=
"handleKeyword"
>
搜索
</el-button>
<
i
slot=
"prefix"
class=
"el-icon-search"
></i
>
<el-button
slot=
"append"
@
click=
"handleKeyword
()
"
>
搜索
</el-button>
</el-input>
</div>
<div
class=
"list-box"
>
...
...
@@ -152,7 +152,7 @@
element-loading-text=
"Loading"
@
sort-change=
"sortChange"
border
max-height=
"640
"
v-horizontal-scroll=
"'always'
"
fit
highlight-current-row
>
...
...
@@ -202,34 +202,34 @@
<el-table-column
prop=
"restrictedAssets"
label=
"受限资产(亿元)"
:formatter=
"formatStatus"
sortable=
"custom"
width=
"150"
align=
"right"
/>
<el-table-column
prop=
"accountsReceivable"
label=
"应收账款(亿元)"
:formatter=
"formatStatus"
sortable=
"custom"
width=
"150"
align=
"right"
/>
<el-table-column
prop=
"otherReceivable"
label=
"其他应收款(亿元)"
:formatter=
"formatStatus"
sortable=
"custom"
width=
"160"
align=
"right"
/>
<el-table-column
prop=
"econData001"
label=
"公益性&准公益性主营占比(%)"
:formatter=
"formatStatus"
width=
"
16
0"
align=
"right"
/>
<el-table-column
prop=
"receivableFromGovRatio"
label=
"应收类款项来自政府占比(%)"
:formatter=
"formatStatus"
width=
"
16
0"
align=
"right"
/>
<el-table-column
prop=
"econData001"
label=
"公益性&准公益性主营占比(%)"
:formatter=
"formatStatus"
width=
"
22
0"
align=
"right"
/>
<el-table-column
prop=
"receivableFromGovRatio"
label=
"应收类款项来自政府占比(%)"
:formatter=
"formatStatus"
width=
"
22
0"
align=
"right"
/>
<el-table-column
prop=
"govSubsidy"
label=
"政府补助(亿元)"
:formatter=
"formatStatus"
width=
"130"
align=
"right"
/>
<el-table-column
prop=
"specialPayable"
label=
"专项应付款(亿元)"
:formatter=
"formatStatus"
width=
"1
4
0"
align=
"right"
/>
<el-table-column
prop=
"specialPayable"
label=
"专项应付款(亿元)"
:formatter=
"formatStatus"
width=
"1
6
0"
align=
"right"
/>
<el-table-column
prop=
"operatingIncome"
label=
"营业收入(亿元)"
:formatter=
"formatStatus"
width=
"130"
align=
"right"
/>
<el-table-column
prop=
"belongNetProfit"
label=
"归母净利润(亿元)"
:formatter=
"formatStatus"
width=
"1
4
0"
align=
"right"
/>
<el-table-column
prop=
"roe"
label=
"净资产收益率(%)"
:formatter=
"formatStatus"
width=
"1
4
0"
align=
"right"
/>
<el-table-column
prop=
"netOperatingCashFlow"
label=
"经营现金流量净额(亿元)"
:formatter=
"formatStatus"
width=
"1
6
0"
align=
"right"
/>
<el-table-column
prop=
"netFinancingCashFlow"
label=
"筹资现金流量净额(亿元)"
:formatter=
"formatStatus"
width=
"1
6
0"
align=
"right"
/>
<el-table-column
prop=
"netInvestmentCashFlow"
label=
"投资现金流量净额(亿元)"
:formatter=
"formatStatus"
width=
"1
6
0"
align=
"right"
/>
<el-table-column
prop=
"belongNetProfit"
label=
"归母净利润(亿元)"
:formatter=
"formatStatus"
width=
"1
6
0"
align=
"right"
/>
<el-table-column
prop=
"roe"
label=
"净资产收益率(%)"
:formatter=
"formatStatus"
width=
"1
6
0"
align=
"right"
/>
<el-table-column
prop=
"netOperatingCashFlow"
label=
"经营现金流量净额(亿元)"
:formatter=
"formatStatus"
width=
"1
9
0"
align=
"right"
/>
<el-table-column
prop=
"netFinancingCashFlow"
label=
"筹资现金流量净额(亿元)"
:formatter=
"formatStatus"
width=
"1
9
0"
align=
"right"
/>
<el-table-column
prop=
"netInvestmentCashFlow"
label=
"投资现金流量净额(亿元)"
:formatter=
"formatStatus"
width=
"1
9
0"
align=
"right"
/>
<el-table-column
prop=
"totalLiabilities"
label=
"总负债(亿元)"
:formatter=
"formatStatus"
width=
"120"
align=
"right"
/>
<el-table-column
prop=
"uipInterestBearingDebt"
label=
"有息债务(亿元)"
:formatter=
"formatStatus"
width=
"140"
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=
"ofcb"
label=
"综合融资成本(%)"
:formatter=
"formatStatus"
width=
"150"
align=
"right"
/>
<el-table-column
prop=
"cashRatio"
label=
"现金比率(%)"
:formatter=
"formatStatus"
width=
"1
1
0"
align=
"right"
/>
<el-table-column
prop=
"cashFlowRatio"
label=
"现金流量比率(%)"
:formatter=
"formatStatus"
width=
"1
2
0"
align=
"right"
/>
<el-table-column
prop=
"cashDebtRatio"
label=
"现金到期债务比(%)"
:formatter=
"formatStatus"
width=
"1
2
0"
align=
"right"
/>
<el-table-column
prop=
"cashRatio"
label=
"现金比率(%)"
:formatter=
"formatStatus"
width=
"1
4
0"
align=
"right"
/>
<el-table-column
prop=
"cashFlowRatio"
label=
"现金流量比率(%)"
:formatter=
"formatStatus"
width=
"1
6
0"
align=
"right"
/>
<el-table-column
prop=
"cashDebtRatio"
label=
"现金到期债务比(%)"
:formatter=
"formatStatus"
width=
"1
6
0"
align=
"right"
/>
<el-table-column
prop=
"creditBalance"
label=
"授信余额(亿元)"
:formatter=
"formatStatus"
width=
"130"
align=
"right"
/>
<el-table-column
prop=
"econData003"
label=
"授信余额/全部债务(%)"
:formatter=
"formatStatus"
width=
"1
6
0"
align=
"right"
/>
<el-table-column
prop=
"econData003"
label=
"授信余额/全部债务(%)"
:formatter=
"formatStatus"
width=
"1
8
0"
align=
"right"
/>
<el-table-column
prop=
"ebitdaIcr"
label=
"EBITDA保障倍数"
:formatter=
"formatStatus"
width=
"150"
align=
"right"
/>
<el-table-column
prop=
"ppnBalanceProp"
label=
"私募债余额占比(%)"
:formatter=
"formatStatus"
width=
"160"
align=
"right"
/>
<el-table-column
prop=
"econData004"
label=
"一年内到期债权占比(%)"
:formatter=
"formatStatus"
width=
"1
6
0"
align=
"right"
/>
<el-table-column
prop=
"econData005"
label=
"债券余额/有息债务(%)"
:formatter=
"formatStatus"
width=
"1
6
0"
align=
"right"
/>
<el-table-column
prop=
"econData004"
label=
"一年内到期债权占比(%)"
:formatter=
"formatStatus"
width=
"1
8
0"
align=
"right"
/>
<el-table-column
prop=
"econData005"
label=
"债券余额/有息债务(%)"
:formatter=
"formatStatus"
width=
"1
8
0"
align=
"right"
/>
<el-table-column
prop=
"loan"
label=
"借款余额(亿元)"
:formatter=
"formatStatus"
width=
"140"
align=
"right"
/>
<el-table-column
prop=
"econData006"
label=
"借款/有息债务(%)"
:formatter=
"formatStatus"
width=
"160"
align=
"right"
/>
<el-table-column
prop=
"nonStandardBalance"
label=
"非标余额(亿元)"
:formatter=
"formatStatus"
width=
"140"
align=
"right"
/>
<el-table-column
prop=
"nonStandardRatio"
label=
"非标余额/有息债务(%)"
:formatter=
"formatStatus"
width=
"1
6
0"
align=
"right"
/>
<el-table-column
prop=
"nonStandardRatio"
label=
"非标余额/有息债务(%)"
:formatter=
"formatStatus"
width=
"1
8
0"
align=
"right"
/>
<el-table-column
prop=
"guaranteeAmount"
label=
"对外担保金额(亿元)"
:formatter=
"formatStatus"
width=
"160"
align=
"right"
/>
<el-table-column
prop=
"guaranteeRatio"
label=
"对外担保比例(%)"
:formatter=
"formatStatus"
width=
"160"
align=
"right"
/>
<el-table-column
prop=
"developmentZone"
label=
"所属开发区"
:formatter=
"formatStatus"
width=
"160"
/>
...
...
@@ -830,7 +830,6 @@ export default {
.content
{
background
:
#ffffff
;
padding
:
16px
;
margin-bottom
:
16px
;
border-radius
:
4px
;
.search
{
margin-top
:
22px
;
...
...
@@ -859,8 +858,8 @@ export default {
left
:
0
;
z-index
:
999
;
.item
{
margin-bottom
:
5px
;
/*display: flex;*/
/*margin-bottom: 5px;*/
display
:
flex
;
/*align-items: center;*/
font-size
:
14px
;
.wrap_label
{
...
...
@@ -868,12 +867,16 @@ export default {
margin-right
:
12px
;
line-height
:
30px
;
float
:
left
;
width
:
85px
;
text-align
:
right
;
}
.item_ckquery
{
position
:
relative
;
width
:
700px
;
span
{
color
:
#232323
;
padding
:
5px
12px
;
padding
:
2px
10px
;
margin-bottom
:
4px
;
display
:
inline-block
;
cursor
:
pointer
;
margin-right
:
8px
;
...
...
@@ -907,29 +910,30 @@ export default {
/*::v-deep .el-input{*/
width
:
235px
;
height
:
32px
;
.el-input__inner
:focus
{
border-color
:
#e0e0e0
;
}
.el-input-group__prepend
:first-child
{
padding
:
0
;
background-color
:
#ffffff
;
border-right
:
0
;
padding-left
:
8px
;
i
{
color
:
#0081FF
;
}
}
.el-input__inner
{
border-left
:
0
;
height
:
32px
;
line-height
:
32px
;
font-size
:
12px
;
padding-left
:
8px
;
border-right
:
0
;
}
.el-input__suffix
{
margin-top
:
-1px
;
}
.el-icon-search
{
font-size
:
14px
;
line-height
:
32px
;
color
:
#0081FF
;
margin-left
:
6px
;
margin-right
:
4px
;
}
.el-input__inner
:focus
{
border-color
:
#0081FF
;
}
.el-input__inner
:focus
~
.el-input-group__append
{
border
:
1px
solid
#0081FF
;
color
:
#ffffff
;
background
:
#0081FF
;
}
.el-input-group__append
:last-child
{
width
:
60px
;
padding
:
0
;
...
...
@@ -937,8 +941,7 @@ export default {
background
:
#F5F5F5
;
color
:
#0081FF
;
border-left
:
0
;
border-radius
:
0
;
border-right
:
0
;
border-radius
:
2px
;
}
/*}*/
}
...
...
@@ -984,7 +987,6 @@ export default {
overflow-y
:
clip
;
}
th
{
font-size
:
12px
!
important
;
font-weight
:
400
!
important
;
}
.el-table__fixed-header-wrapper
th
{
...
...
dsk-operate-ui/src/views/radar/index.vue
View file @
fb16a235
...
...
@@ -53,15 +53,15 @@
return
{
// tablist
personnelList
:
[
{
key
:
'MajorProject'
,
status
:
true
,
value
:
'重点项目清单'
,
//
{
//
key: 'MajorProject',
//
status: true,
//
value: '重点项目清单',
},
//
},
{
key
:
'debtProject'
,
status
:
fals
e
,
status
:
tru
e
,
value
:
'政府专项债项目'
,
},
...
...
@@ -103,7 +103,7 @@
},
],
personnelHerf
:
'
Major
Project'
personnelHerf
:
'
debt
Project'
}
},
created
()
{
...
...
@@ -129,8 +129,8 @@
}
.content
{
padding
:
0px
16px
;
background
:
#FFFFFF
;
border-radius
:
4px
4px
0
0
;
background
:
#FFFFFF
;
}
.app-container
.combined-title
{
...
...
dsk-system/src/main/java/com/dsk/system/dskService/EnterpriseBussinessService.java
View file @
fb16a235
...
...
@@ -192,6 +192,36 @@ public class EnterpriseBussinessService {
return
new
TableDataInfo
(
new
ArrayList
<>(),
0
);
}
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/operate/enterpriseBussiness/supplierPage2"
,
BeanUtil
.
beanToMap
(
body
,
false
,
false
));
Map
data
=
MapUtils
.
getMap
(
map
,
"data"
,
null
);
List
<
Object
>
list
=
CommonUtils
.
assertAsArray
(
MapUtils
.
getObject
(
data
,
"list"
,
""
));
if
(
CollectionUtils
.
isEmpty
(
list
))
{
return
new
TableDataInfo
(
list
,
0
);
}
ArrayList
<
Long
>
cIds
=
new
ArrayList
<>();
for
(
Object
dataMap
:
list
)
{
cIds
.
add
(
MapUtils
.
getLong
(
CommonUtils
.
assertAsMap
(
dataMap
),
"companyId"
));
}
HashMap
<
String
,
Object
>
paramMap
=
new
HashMap
<>();
paramMap
.
put
(
"ids"
,
cIds
);
Map
<
String
,
Object
>
uipIdMap
=
dskOpenApiUtil
.
requestBody
(
"/operate/enterprise/getUipIdByCid"
,
paramMap
);
Object
uipIdData
=
uipIdMap
.
get
(
"data"
);
List
<
Map
<
String
,
Object
>>
mapList
=
new
ArrayList
<>();
if
(
ObjectUtil
.
isNotEmpty
(
uipIdData
))
{
mapList
=
(
List
<
Map
<
String
,
Object
>>)
uipIdData
;
}
for
(
Object
dataMap
:
list
)
{
Map
<
String
,
Object
>
companyMap
=
CommonUtils
.
assertAsMap
(
dataMap
);
Long
cusCompanyId
=
MapUtils
.
getLong
(
companyMap
,
"companyId"
,
0L
);
companyMap
.
put
(
"uipId"
,
null
);
for
(
Map
<
String
,
Object
>
m
:
mapList
)
{
String
uipId
=
MapUtils
.
getString
(
m
,
"uipId"
,
null
);
Long
companyId
=
MapUtils
.
getLong
(
m
,
"companyId"
,
0L
);
if
(
cusCompanyId
.
equals
(
companyId
))
{
companyMap
.
put
(
"uipId"
,
uipId
);
}
}
}
return
dskOpenApiUtil
.
responsePage
(
map
);
}
...
...
dsk-system/src/main/java/com/dsk/system/dskService/IndexService.java
View file @
fb16a235
package
com
.
dsk
.
system
.
dskService
;
import
cn.hutool.core.bean.BeanUtil
;
import
cn.hutool.core.date.DateUtil
;
import
cn.hutool.core.map.MapUtil
;
import
cn.hutool.core.util.ObjectUtil
;
import
cn.hutool.extra.mail.MailUtil
;
import
cn.hutool.json.JSONUtil
;
import
com.alibaba.fastjson2.JSONObject
;
import
com.dsk.common.core.domain.AjaxResult
;
import
com.dsk.common.core.redis.RedisCache
;
import
com.dsk.common.utils.DateUtils
;
import
com.dsk.common.utils.DskOpenApiUtil
;
import
org.apache.commons.collections4.MapUtils
;
...
...
@@ -30,6 +34,9 @@ public class IndexService {
@Autowired
private
DskOpenApiUtil
dskOpenApiUtil
;
@Autowired
private
RedisCache
redisCache
;
public
AjaxResult
bigWinningBidsPage
(
JSONObject
object
)
{
ArrayList
recentlyBidQueryDtoList
=
object
.
getJSONArray
(
"recentlyBidQueryDto"
);
Map
<
String
,
Object
>
objectMap
=
new
HashMap
<>();
...
...
@@ -91,6 +98,26 @@ public class IndexService {
}
public
AjaxResult
countByCompany
(
JSONObject
object
)
{
Date
startDate
=
object
.
getDate
(
"startDate"
);
Date
endDate
=
object
.
getDate
(
"endDate"
);
long
l
=
0
;
long
i
=
0
;
if
(
startDate
!=
null
&&
endDate
!=
null
){
l
=
DateUtil
.
betweenDay
(
startDate
,
endDate
,
false
);
i
=
DateUtil
.
betweenDay
(
endDate
,
new
Date
(),
false
);
}
if
(
null
!=
object
&&
null
==
object
.
get
(
"provinceId"
)&&
null
==
object
.
get
(
"type"
)&&
l
==
3
&&
i
==
0
){
Map
<
String
,
Object
>
countByCompany
=
redisCache
.
getCacheMap
(
"index_countByCompany"
);
if
(
null
==
countByCompany
||
MapUtil
.
isEmpty
(
countByCompany
)){
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/nationzj/marketAnalysis/centralEnterprse/countByCompany"
,
object
);
redisCache
.
setCacheMap
(
"index_countByCompany"
,
map
);
redisCache
.
expire
(
"index_countByCompany"
,
7200
);
return
BeanUtil
.
toBean
(
countByCompany
,
AjaxResult
.
class
);
}
else
{
log
.
info
(
"首页集团中标业绩从缓存中取"
);
return
BeanUtil
.
toBean
(
countByCompany
,
AjaxResult
.
class
);
}
}
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/nationzj/marketAnalysis/centralEnterprse/countByCompany"
,
object
);
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
...
...
dsk-system/src/main/java/com/dsk/system/dskService/JskCombineInfoService.java
View file @
fb16a235
...
...
@@ -60,7 +60,7 @@ public class JskCombineInfoService {
}
public
TableDataInfo
businessList
(
JskCombineSearchDto
dto
)
throws
Exception
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/
operate/combine/business
List"
,
BeanUtil
.
beanToMap
(
dto
,
false
,
false
));
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/
nationzj/project/combine/project
List"
,
BeanUtil
.
beanToMap
(
dto
,
false
,
false
));
if
(!
ObjectUtils
.
isEmpty
(
map
.
get
(
"data"
)))
{
Map
<
String
,
Object
>
data
=
BeanUtil
.
beanToMap
(
map
.
get
(
"data"
));
if
(!
ObjectUtils
.
isEmpty
(
data
.
get
(
"list"
)))
{
...
...
@@ -147,8 +147,8 @@ public class JskCombineInfoService {
public
List
<
JskCombineWinBidProjectExportVo
>
exportWinBid
(
JskCombineSearchDto
dto
)
{
if
(
ObjectUtils
.
isEmpty
(
dto
.
getPageSize
()))
throw
new
ServiceException
(
"导出条数不能为空!"
);
if
(
dto
.
getPageSize
()
>
2000
)
dto
.
setPageSize
(
2000
);
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/
operate/combine/business
List"
,
BeanUtil
.
beanToMap
(
dto
,
false
,
false
));
dto
.
setPageNum
(
1
);
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/
nationzj/project/combine/project
List"
,
BeanUtil
.
beanToMap
(
dto
,
false
,
false
));
if
(
ObjectUtils
.
isEmpty
(
map
.
get
(
"data"
)))
throw
new
ServiceException
(
"导出失败,系统错误!"
);
Map
<
String
,
Object
>
data
=
BeanUtil
.
beanToMap
(
map
.
get
(
"data"
));
if
(
ObjectUtils
.
isEmpty
(
data
.
get
(
"list"
)))
throw
new
ServiceException
(
"导出失败,系统错误!"
);
...
...
@@ -178,7 +178,7 @@ public class JskCombineInfoService {
public
List
<
JskCombineBidProjectExportVo
>
exportBid
(
JskCombineBidPageDto
dto
)
{
if
(
ObjectUtils
.
isEmpty
(
dto
.
getPageSize
()))
throw
new
ServiceException
(
"导出条数不能为空!"
);
if
(
dto
.
getPageSize
()
>
2000
)
dto
.
setPageSize
(
2000
);
dto
.
setPageNum
(
1
);
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/operate/combine/bidPage"
,
BeanUtil
.
beanToMap
(
dto
,
false
,
false
));
if
(
ObjectUtils
.
isEmpty
(
map
.
get
(
"data"
)))
throw
new
ServiceException
(
"导出失败,系统错误!"
);
Map
<
String
,
Object
>
data
=
BeanUtil
.
beanToMap
(
map
.
get
(
"data"
));
...
...
dsk-system/src/main/java/com/dsk/system/searchService/BusinessOpportunityRadarService.java
View file @
fb16a235
...
...
@@ -92,4 +92,10 @@ public class BusinessOpportunityRadarService {
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/nationzj/jskBid/source"
,
object
);
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
public
AjaxResult
importantPage
(
JSONObject
object
)
{
Map
<
String
,
Object
>
map
=
dskOpenApiUtil
.
requestBody
(
"/nationzj/bondProject/importantPage"
,
object
);
return
BeanUtil
.
toBean
(
map
,
AjaxResult
.
class
);
}
}
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