Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in / Register
Toggle navigation
D
dsk-operate-sys-cscec
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
fulixin
dsk-operate-sys-cscec
Commits
f0035f76
Commit
f0035f76
authored
Oct 08, 2023
by
liuChang
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'V20230915' of 192.168.60.201:root/dsk-operate-sys into V20230915
parents
2bed64b5
c8dc1c63
Changes
43
Show whitespace changes
Inline
Side-by-side
Showing
43 changed files
with
1398 additions
and
1129 deletions
+1398
-1129
index.scss
dsk-operate-ui/src/assets/styles/index.scss
+45
-1
project.scss
dsk-operate-ui/src/assets/styles/project.scss
+27
-10
public.scss
dsk-operate-ui/src/assets/styles/public.scss
+3
-2
index.vue
dsk-operate-ui/src/layout/index.vue
+1
-4
CustomMoneySelect.vue
dsk-operate-ui/src/views/component/CustomMoneySelect.vue
+9
-3
CustomTimeSelect.vue
dsk-operate-ui/src/views/component/CustomTimeSelect.vue
+9
-2
index.vue
dsk-operate-ui/src/views/custom/customList/index.vue
+6
-8
index.vue
...operate-ui/src/views/custom/historicalCustomers/index.vue
+4
-3
index.vue
dsk-operate-ui/src/views/custom/overview/index.vue
+4
-1
members.vue
...te-ui/src/views/detail/groupAccount/component/members.vue
+5
-8
performance.vue
...i/src/views/detail/groupAccount/component/performance.vue
+2
-1
zbxmfx.vue
...ate-ui/src/views/detail/groupAccount/component/zbxmfx.vue
+113
-0
zbxmmx.vue
...ate-ui/src/views/detail/groupAccount/component/zbxmmx.vue
+631
-0
zhaobiao.vue
...e-ui/src/views/detail/groupAccount/component/zhaobiao.vue
+40
-716
index.vue
dsk-operate-ui/src/views/detail/groupAccount/index.vue
+3
-0
CustomMoneySelect.vue
.../src/views/detail/party-a/component/CustomMoneySelect.vue
+14
-3
CustomTimeSelect.vue
...i/src/views/detail/party-a/component/CustomTimeSelect.vue
+12
-4
HeadForm.vue
...perate-ui/src/views/detail/party-a/component/HeadForm.vue
+65
-129
Header.vue
dsk-operate-ui/src/views/detail/party-a/component/Header.vue
+1
-1
index.vue
dsk-operate-ui/src/views/detail/party-a/cooperate/index.vue
+3
-3
announcement.vue
...erate-ui/src/views/detail/party-a/opport/announcement.vue
+2
-2
index.vue
...te-ui/src/views/enterpriseData/components/Group/index.vue
+10
-10
index.vue
...te-ui/src/views/enterpriseData/components/Owner/index.vue
+5
-15
index.vue
...iews/enterpriseData/components/SearchEnterprise/index.vue
+10
-8
index.vue
dsk-operate-ui/src/views/index.vue
+27
-5
CustomTimeSelect.vue
...operate-ui/src/views/macro/component/CustomTimeSelect.vue
+9
-2
industrialStructure.vue
...c/views/macro/economies/component/industrialStructure.vue
+6
-6
tdjy.vue
...e-ui/src/views/macro/nationalEconomies/component/tdjy.vue
+8
-8
lxr.vue
...perate-ui/src/views/project/projectList/component/lxr.vue
+10
-6
xgqy.vue
...erate-ui/src/views/project/projectList/component/xgqy.vue
+3
-3
zlwd.vue
...erate-ui/src/views/project/projectList/component/zlwd.vue
+2
-2
detail.vue
dsk-operate-ui/src/views/project/projectList/detail.vue
+1
-1
index.vue
dsk-operate-ui/src/views/project/projectList/index.vue
+14
-6
index.vue
...operate-ui/src/views/radar/components/BidRecord/index.vue
+8
-17
index.vue
dsk-operate-ui/src/views/radar/components/Bidding/index.vue
+7
-17
index.vue
...ate-ui/src/views/radar/components/Establishment/index.vue
+8
-17
index.vue
dsk-operate-ui/src/views/radar/components/Land/index.vue
+9
-18
index.vue
...rate-ui/src/views/radar/components/MajorProject/index.vue
+221
-33
index.vue
dsk-operate-ui/src/views/radar/components/Tender/index.vue
+8
-17
index.vue
...operate-ui/src/views/radar/components/bxprozbgg/index.vue
+8
-17
index.vue
...erate-ui/src/views/radar/components/debtProject/index.vue
+8
-17
index.vue
dsk-operate-ui/src/views/system/user/index.vue
+13
-0
SysUserServiceImpl.java
.../java/com/dsk/system/service/impl/SysUserServiceImpl.java
+4
-3
No files found.
dsk-operate-ui/src/assets/styles/index.scss
View file @
f0035f76
...
@@ -345,7 +345,10 @@ ul, li {
...
@@ -345,7 +345,10 @@ ul, li {
}
}
}
}
.is-scrolling-left
+
.el-table__fixed
,
.is-scrolling-middle
+
.el-table__fixed
,
.is-scrolling-right
+
.el-table__fixed
{
.is-scrolling-left
+
.el-table__fixed
,
.is-scrolling-middle
+
.el-table__fixed
,
.is-scrolling-right
+
.el-table__fixed
{
box-shadow
:none
;
//box-shadow:none;
//-webkit-box-shadow: 2px 0px 1px -2px #C3CBD5;
box-shadow
:
2px
0
8px
-7px
#202020
;
border-right
:
1px
solid
#C3CBD5
;
height
:
auto
!
important
;
height
:
auto
!
important
;
bottom
:
16px
!
important
;
bottom
:
16px
!
important
;
}
}
...
@@ -721,6 +724,29 @@ ul, li {
...
@@ -721,6 +724,29 @@ ul, li {
}
}
}
}
}
}
//无边框搜索框
.newSearch
{
width
:
238px
;
height
:
32px
;
border-radius
:
4px
;
.el_input
{
height
:
32px
!
important
;
}
.el-input__prefix
{
left
:
12px
;
.el-input__icon
{
img
{
float
:
left
;
margin-top
:
7px
;
}
}
}
.el-input__inner
{
padding-left
:
36px
;
border-color
:
#fff
!
important
;
height
:
32px
!
important
;
}
}
//导出EXCEL
//导出EXCEL
.btn-export
{
.btn-export
{
display
:
inline-block
;
display
:
inline-block
;
...
@@ -766,3 +792,21 @@ ul, li {
...
@@ -766,3 +792,21 @@ ul, li {
box-shadow
:
4px
0
9px
-5px
rgba
(
0
,
0
,
0
,
0
.12
);
box-shadow
:
4px
0
9px
-5px
rgba
(
0
,
0
,
0
,
0
.12
);
-webkit-box-shadow
:
4px
0
9px
-5px
rgba
(
0
,
0
,
0
,
0
.12
);
-webkit-box-shadow
:
4px
0
9px
-5px
rgba
(
0
,
0
,
0
,
0
.12
);
}
}
//下拉选项样式
.el-select-dropdown
{
box-shadow
:
0px
0px
4px
0px
rgba
(
0
,
0
,
0
,
0
.08
);
border
:
0
;
.el-select-dropdown__list
{
padding
:
0
;
.el-select-dropdown__item
{
padding
:
0
16px
;
}
}
}
.min1370
{
min-width
:
1370px
;
}
dsk-operate-ui/src/assets/styles/project.scss
View file @
f0035f76
...
@@ -836,19 +836,27 @@
...
@@ -836,19 +836,27 @@
}
}
//资料文档、相关企业
//资料文档、相关企业
.searchbtns
{
.searchbtns
{
display
:
flex
;
position
:
absolute
;
position
:
absolute
;
right
:
16
px
;
left
:
100
px
;
top
:
17px
;
top
:
17px
;
width
:
calc
(
100%
-
116px
);
.searchInput
,
.el-select
{
float
:
left
;
}
.btn
{
float
:
right
;
}
.searchInput
{
.searchInput
{
position
:
relative
;
&
.small
{
&
.small
{
border
:
1px
solid
#
d9d9d9
;
border
:
1px
solid
#
fff
;
width
:
240px
;
width
:
240px
;
.el-input
{
.el-input
{
width
:
180px
;
//
width: 180px;
}
}
.el-input__inner
{
.el-input__inner
{
padding-right
:
32px
;
//
padding-right: 32px;
}
}
.el-input__prefix
{
.el-input__prefix
{
left
:
8px
;
left
:
8px
;
...
@@ -868,19 +876,25 @@
...
@@ -868,19 +876,25 @@
border-radius
:
2px
;
border-radius
:
2px
;
}
}
.select
{
.select
{
width
:
110
px
;
width
:
94
px
;
.el-input__inner
{
.el-input__inner
{
width
:
110px
;
//
width: 110px;
height
:
32px
;
height
:
32px
;
background
:
#FFFFFF
;
background
:
#FFFFFF
;
border-radius
:
2
px
;
border-radius
:
4
px
;
border
:
1px
solid
#D9D9D9
;
border
:
0
;
padding
:
5px
28px
5px
8px
;
}
}
.el-input--medium
.el-input__icon
{
.el-input--medium
.el-input__icon
{
line-height
:
32px
;
line-height
:
32px
;
}
}
margin-right
:
10px
;
margin-right
:
10px
;
.is-focus
{
.el-input__inner
{
background
:
#F4F6F9
;
}
}
}
}
}
}
.document
{
.document
{
...
@@ -1273,3 +1287,6 @@
...
@@ -1273,3 +1287,6 @@
}
}
}
}
}
}
.top12
{
margin-top
:
12px
;
}
dsk-operate-ui/src/assets/styles/public.scss
View file @
f0035f76
...
@@ -441,14 +441,15 @@ select {
...
@@ -441,14 +441,15 @@ select {
.toolbar-right-download
{
.toolbar-right-download
{
padding
:
6px
18px
;
padding
:
6px
16px
;
position
:
relative
;
top
:
1px
;
margin
:
0px
;
margin
:
0px
;
cursor
:
pointer
;
cursor
:
pointer
;
font-weight
:
400
;
font-weight
:
400
;
color
:
#232323
;
color
:
#232323
;
background
:
#FFFFFF
;
background
:
#FFFFFF
;
border-radius
:
2px
;
border-radius
:
2px
;
border
:
1px
solid
#D9D9D9
;
text-align
:
center
;
text-align
:
center
;
font-size
:
14px
;
font-size
:
14px
;
font-weight
:
400
;
font-weight
:
400
;
...
...
dsk-operate-ui/src/layout/index.vue
View file @
f0035f76
...
@@ -2,7 +2,7 @@
...
@@ -2,7 +2,7 @@
<div
:class=
"classObj"
class=
"app-wrapper"
:style=
"
{'--current-color': theme}">
<div
:class=
"classObj"
class=
"app-wrapper"
:style=
"
{'--current-color': theme}">
<div
v-if=
"device==='mobile'&&sidebar.opened"
class=
"drawer-bg"
@
click=
"handleClickOutside"
/>
<div
v-if=
"device==='mobile'&&sidebar.opened"
class=
"drawer-bg"
@
click=
"handleClickOutside"
/>
<sidebar
v-if=
"!sidebar.hide"
class=
"sidebar-container"
@
handleBar=
"handleSideBar"
id=
"sidebar"
/>
<sidebar
v-if=
"!sidebar.hide"
class=
"sidebar-container"
@
handleBar=
"handleSideBar"
id=
"sidebar"
/>
<div
:class=
"
{hasTagsView:needTagsView,sidebarHide:sidebar.hide,
EnterpriseData:$route.name=='Group',width1350:$route.name=='Radar
',width1240:$route.name=='Overview'}" class="main-container">
<div
:class=
"
{hasTagsView:needTagsView,sidebarHide:sidebar.hide,
width1350:$route.name=='Radar'||$route.name=='Group
',width1240:$route.name=='Overview'}" class="main-container">
<div
:class=
"
{'fixed-header':fixedHeader}" style="position: relative;z-index: 1000;">
<div
:class=
"
{'fixed-header':fixedHeader}" style="position: relative;z-index: 1000;">
<navbar
:offsetWidth=
"offsetWidth"
/>
<navbar
:offsetWidth=
"offsetWidth"
/>
</div>
</div>
...
@@ -133,9 +133,6 @@ export default {
...
@@ -133,9 +133,6 @@ export default {
.mobile
.fixed-header
{
.mobile
.fixed-header
{
width
:
100%
;
width
:
100%
;
}
}
.EnterpriseData
{
min-width
:
1710px
;
}
.width1350
{
.width1350
{
min-width
:
1350px
;
min-width
:
1350px
;
}
}
...
...
dsk-operate-ui/src/views/component/CustomMoneySelect.vue
View file @
f0035f76
...
@@ -242,7 +242,11 @@ export default {
...
@@ -242,7 +242,11 @@ export default {
width
:
120px
;
width
:
120px
;
height
:
34px
;
height
:
34px
;
position
:
relative
;
position
:
relative
;
.rote
{
.el-input__inner
{
background
:
#F4F6F9
;
}
}
.input-block
{
.input-block
{
margin
:
0
;
margin
:
0
;
width
:
100%
;
width
:
100%
;
...
@@ -256,6 +260,9 @@ export default {
...
@@ -256,6 +260,9 @@ export default {
>
.custom-money-input.el-input
{
>
.custom-money-input.el-input
{
width
:
100%
;
width
:
100%
;
height
:
100%
;
height
:
100%
;
.el-input__inner
{
border
:
0
;
}
>
input
{
>
input
{
width
:
100%
;
width
:
100%
;
height
:
100%
;
height
:
100%
;
...
@@ -290,10 +297,9 @@ export default {
...
@@ -290,10 +297,9 @@ export default {
font-size
:
14px
;
font-size
:
14px
;
color
:
#666666
;
color
:
#666666
;
background-color
:
#fff
;
background-color
:
#fff
;
border
:
1px
solid
#E4E7ED
;
padding
:
6px
0
;
border-radius
:
4px
;
border-radius
:
4px
;
z-index
:
10
;
z-index
:
10
;
box-shadow
:
0px
0px
4px
0px
rgba
(
0
,
0
,
0
,
0
.08
);
// .arrow {
// .arrow {
...
...
dsk-operate-ui/src/views/component/CustomTimeSelect.vue
View file @
f0035f76
...
@@ -248,6 +248,11 @@ export default {
...
@@ -248,6 +248,11 @@ export default {
width
:
120px
;
width
:
120px
;
height
:
34px
;
height
:
34px
;
.rote
{
.el-input__inner
{
background
:
#F4F6F9
;
}
}
.input-block
{
.input-block
{
width
:
100%
;
width
:
100%
;
height
:
100%
;
height
:
100%
;
...
@@ -261,6 +266,9 @@ export default {
...
@@ -261,6 +266,9 @@ export default {
>
.custom-time-input.el-input
{
>
.custom-time-input.el-input
{
width
:
100%
;
width
:
100%
;
height
:
100%
;
height
:
100%
;
.el-input__inner
{
border
:
0
;
}
>
input
{
>
input
{
width
:
100%
;
width
:
100%
;
height
:
100%
;
height
:
100%
;
...
@@ -295,10 +303,9 @@ export default {
...
@@ -295,10 +303,9 @@ export default {
font-size
:
14px
;
font-size
:
14px
;
color
:
#666666
;
color
:
#666666
;
background-color
:
#fff
;
background-color
:
#fff
;
border
:
1px
solid
#E4E7ED
;
padding
:
6px
0
;
border-radius
:
4px
;
border-radius
:
4px
;
z-index
:
10
;
z-index
:
10
;
box-shadow
:
0px
0px
4px
0px
rgba
(
0
,
0
,
0
,
0
.08
);
.option
{
.option
{
padding
:
0
24px
0
16px
;
padding
:
0
24px
0
16px
;
...
...
dsk-operate-ui/src/views/custom/customList/index.vue
View file @
f0035f76
...
@@ -5,7 +5,7 @@
...
@@ -5,7 +5,7 @@
<span>
/ 客户列表
</span>
<span>
/ 客户列表
</span>
</div>
</div>
<div
class=
"app-container"
>
<div
class=
"app-container"
>
<el-card
class=
"box-card noborder"
>
<el-card
class=
"box-card noborder
min1370
"
>
<div
class=
"tables "
>
<div
class=
"tables "
>
<div
class=
"empty"
v-if=
"tableData.total==0 && !isSkeleton"
>
<div
class=
"empty"
v-if=
"tableData.total==0 && !isSkeleton"
>
<img
src=
"@/assets/images/project/empty.png"
>
<img
src=
"@/assets/images/project/empty.png"
>
...
@@ -18,9 +18,10 @@
...
@@ -18,9 +18,10 @@
<div>
<div>
<el-form
ref=
"queryForm"
:model=
"searchParam"
:inline=
"true"
size=
"small"
>
<el-form
ref=
"queryForm"
:model=
"searchParam"
:inline=
"true"
size=
"small"
>
<el-form-item
prop=
"companyName"
>
<el-form-item
prop=
"companyName"
>
<div
class=
"searchInput"
>
<div
class=
"newSearch"
>
<el-input
type=
"text"
clearable
v-model=
"searchParam.companyName"
@
change=
"clearname"
placeholder=
"输入企业名称查询"
></el-input>
<el-input
type=
"text"
v-model=
"searchParam.companyName"
clearable
placeholder=
"输入企业名称查询"
@
change=
"clearname"
>
<div
class=
"btn"
@
click=
"handleCurrentChange(1)"
>
搜索
</div>
<i
slot=
"prefix"
class=
"el-input__icon"
><img
src=
"@/assets/images/project/sousuo.png"
width=
"16px"
@
click=
"handleCurrentChange(1)"
></i>
</el-input>
</div>
</div>
</el-form-item>
</el-form-item>
<el-form-item>
<el-form-item>
...
@@ -839,8 +840,5 @@
...
@@ -839,8 +840,5 @@
}
}
.searchInput
{
.searchInput
{
width
:
240px
;
width
:
240px
;
.el-input
{
/*width: 260px;*/
}
}
}
</
style
>
</
style
>
dsk-operate-ui/src/views/custom/historicalCustomers/index.vue
View file @
f0035f76
...
@@ -9,9 +9,10 @@
...
@@ -9,9 +9,10 @@
<div
class=
"p2"
>
建议调整关键词或筛选条件,重新搜索
</div>
<div
class=
"p2"
>
建议调整关键词或筛选条件,重新搜索
</div>
</div>
</div>
<div
class=
"table_search"
>
<div
class=
"table_search"
>
<div
class=
"searchInput"
>
<div
class=
"newSearch"
>
<el-input
type=
"text"
clearable
v-model=
"searchParam.companyName"
@
change=
"clearname"
placeholder=
"输入企业名称查询"
></el-input>
<el-input
type=
"text"
v-model=
"searchParam.companyName"
clearable
placeholder=
"输入企业名称查询"
@
change=
"clearname"
>
<div
class=
"btn"
@
click=
"handleCurrentChange(1)"
>
搜索
</div>
<i
slot=
"prefix"
class=
"el-input__icon"
><img
src=
"@/assets/images/project/sousuo.png"
width=
"16px"
@
click=
"handleCurrentChange(1)"
></i>
</el-input>
</div>
</div>
<div
class=
"dc"
>
<div
class=
"dc"
>
<div
class=
"total"
>
共
{{
tableData
.
total
}}
条
</div>
<div
class=
"total"
>
共
{{
tableData
.
total
}}
条
</div>
...
...
dsk-operate-ui/src/views/custom/overview/index.vue
View file @
f0035f76
...
@@ -601,7 +601,7 @@
...
@@ -601,7 +601,7 @@
padding
:
16px
;
padding
:
16px
;
background
:
#ffffff
;
background
:
#ffffff
;
height
:
152px
;
height
:
152px
;
margin-bottom
:
2
2px
;
margin-bottom
:
1
2px
;
.item
{
.item
{
display
:
flex
;
display
:
flex
;
.icons
{
.icons
{
...
@@ -680,6 +680,9 @@
...
@@ -680,6 +680,9 @@
.el-input-group__append
{
.el-input-group__append
{
background
:
#F5F5F5
;
background
:
#F5F5F5
;
color
:
#0081FF
;
color
:
#0081FF
;
padding
:
0
;
width
:
70px
;
text-align
:
center
;
}
}
.el-input__inner
:focus
{
.el-input__inner
:focus
{
border-color
:
#3181fa
;
border-color
:
#3181fa
;
...
...
dsk-operate-ui/src/views/detail/groupAccount/component/members.vue
View file @
f0035f76
...
@@ -395,9 +395,6 @@
...
@@ -395,9 +395,6 @@
provinceIds
.
length
>
0
?
params
.
provinceIds
=
provinceIds
:
''
provinceIds
.
length
>
0
?
params
.
provinceIds
=
provinceIds
:
''
cityIds
.
length
>
0
?
params
.
cityIds
=
cityIds
:
''
cityIds
.
length
>
0
?
params
.
cityIds
=
cityIds
:
''
districtIds
.
length
>
0
?
params
.
districtIds
=
districtIds
:
''
districtIds
.
length
>
0
?
params
.
districtIds
=
districtIds
:
''
// provinceIds.length>0?this.queryParams.provinceIds = provinceIds:''
// cityIds.length>0?this.queryParams.cityIds = cityIds:''
// districtIds.length>0?this.queryParams.districtIds = districtIds:''
}
}
return
params
return
params
},
},
...
@@ -450,8 +447,8 @@
...
@@ -450,8 +447,8 @@
.search-box
{
.search-box
{
display
:
inline-block
;
display
:
inline-block
;
border-radius
:
4px
;
border-radius
:
4px
;
border
:
1px
solid
#D9D9D9
;
/*border: 1px solid #D9D9D9;*/
width
:
82
px
;
width
:
70
px
;
/*cursor: pointer;*/
/*cursor: pointer;*/
position
:
relative
;
position
:
relative
;
.search-box-t
{
.search-box-t
{
...
@@ -461,7 +458,7 @@
...
@@ -461,7 +458,7 @@
color
:
#999999
;
color
:
#999999
;
margin-right
:
8px
;
margin-right
:
8px
;
text-align
:
center
;
text-align
:
center
;
width
:
82
px
;
width
:
70
px
;
display
:
inline-block
;
display
:
inline-block
;
cursor
:
pointer
;
cursor
:
pointer
;
i
{
i
{
...
@@ -479,7 +476,7 @@
...
@@ -479,7 +476,7 @@
background
:
#ffffff
;
background
:
#ffffff
;
box-shadow
:
0px
4px
10px
0px
rgba
(
0
,
0
,
0
,
0
.1
);
box-shadow
:
0px
4px
10px
0px
rgba
(
0
,
0
,
0
,
0
.1
);
border-radius
:
4px
;
border-radius
:
4px
;
width
:
64
0px
;
width
:
50
0px
;
//height: 337px;
//height: 337px;
padding
:
16px
;
padding
:
16px
;
position
:
absolute
;
position
:
absolute
;
...
@@ -501,7 +498,7 @@
...
@@ -501,7 +498,7 @@
}
}
.item_ckquery
{
.item_ckquery
{
position
:
relative
;
position
:
relative
;
width
:
52
0px
;
width
:
40
0px
;
/*float: left;*/
/*float: left;*/
/*flex: 1;*/
/*flex: 1;*/
span
{
span
{
...
...
dsk-operate-ui/src/views/detail/groupAccount/component/performance.vue
View file @
f0035f76
...
@@ -139,7 +139,8 @@
...
@@ -139,7 +139,8 @@
{
type
:
4
,
fieldName
:
'boundTypes'
,
value
:
''
,
placeholder
:
'业绩类型'
,
options
:
[],
width
:
150
},
{
type
:
4
,
fieldName
:
'boundTypes'
,
value
:
''
,
placeholder
:
'业绩类型'
,
options
:
[],
width
:
150
},
{
type
:
4
,
fieldName
:
'projectTypes'
,
value
:
''
,
placeholder
:
'项目类型'
,
options
:
[],
width
:
150
},
{
type
:
4
,
fieldName
:
'projectTypes'
,
value
:
''
,
placeholder
:
'项目类型'
,
options
:
[],
width
:
150
},
{
type
:
1
,
fieldName
:
'cgbl'
,
value
:
''
,
placeholder
:
'持股比例'
,
options
:
[],
width
:
100
},
{
type
:
1
,
fieldName
:
'cgbl'
,
value
:
''
,
placeholder
:
'持股比例'
,
options
:
[],
width
:
100
},
{
type
:
3
,
fieldName
:
'searchValue'
,
value
:
''
,
placeholder
:
'搜索中标成员名称/项目名称'
},
// { type: 3, fieldName: 'searchValue', value: '', placeholder: '搜索中标成员名称/项目名称'},
{
type
:
3
,
fieldName
:
'searchValue'
,
value
:
''
,
placeholder
:
'查询'
},
],
],
tableData
:[],
tableData
:[],
tableDataTotal
:
0
,
tableDataTotal
:
0
,
...
...
dsk-operate-ui/src/views/detail/groupAccount/component/zbxmfx.vue
0 → 100644
View file @
f0035f76
<
template
>
<div
class=
"performance"
>
<div
class=
"content"
>
<head-form
title=
"集团施工项目最新招标"
:form-data=
"formData"
:query-params=
"queryParams"
:slots=
"true"
:isExcel=
"false"
></head-form>
</div>
<div
class=
"content"
>
<head-form
title=
"集团年度发包统计"
:slots=
"true"
:isExcel=
"false"
></head-form>
</div>
<div
class=
"content"
>
<head-form
title=
"集团施工项目发包金额区间"
:slots=
"true"
:isExcel=
"false"
></head-form>
</div>
<div
class=
"content"
>
<head-form
title=
"集团施工项目发包类型统计"
:slots=
"true"
:isExcel=
"false"
></head-form>
</div>
<div
class=
"content"
>
<head-form
title=
"施工项目下浮率统计"
:slots=
"true"
:isExcel=
"false"
></head-form>
</div>
<div
class=
"content"
>
<head-form
title=
"历史发包项目金额TOP10"
:form-data=
"formData"
:query-params=
"queryParams1"
:slots=
"true"
:isExcel=
"false"
></head-form>
</div>
</div>
</
template
>
<
script
>
import
mixin
from
'../../party-a/mixins/mixin'
import
{
getDictType
}
from
'@/api/main'
export
default
{
name
:
'qualifications'
,
props
:
[
'customerId'
,
'combineName'
],
mixins
:
[
mixin
],
components
:{},
data
(){
return
{
queryParams
:
{},
queryParams1
:
{},
forData
:
[
{
label
:
'项目类型'
,
prop
:
'projectType'
,
minWidth
:
'80'
,
slot
:
true
},
{
label
:
'持股比例'
,
prop
:
'stockPercent'
,
slot
:
true
,
minWidth
:
'80'
},
],
formData
:
[
{
type
:
4
,
fieldName
:
'projectTypes'
,
value
:
''
,
placeholder
:
'项目类型'
,
options
:
[],
width
:
150
},
{
type
:
1
,
fieldName
:
'cgbl'
,
value
:
''
,
placeholder
:
'持股比例'
,
options
:
[],
width
:
110
},
],
cgblList
:
[
{
name
:
'100%'
,
value
:
'100%'
},
{
name
:
'50%以上'
,
value
:
'50%以上'
},
{
name
:
'20%以上'
,
value
:
'20%以上'
},
{
name
:
'5%以上'
,
value
:
'5%以上'
},
{
name
:
'1%-5%'
,
value
:
'1%-5%'
},
],
}
},
created
()
{
this
.
formData
[
1
].
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
[
0
].
options
.
push
({
name
:
data
[
i
].
dictLabel
,
value
:
data
[
i
].
dictValue
,
})
}
}
})
},
methods
:
{
}
}
</
script
>
<
style
lang=
"scss"
scoped
>
.performance
{
height
:
calc
(
100%
-
64px
);
.content
{
background
:
#ffffff
;
border-radius
:
4px
;
padding
:
16px
;
margin-bottom
:
16px
;
}
}
</
style
>
dsk-operate-ui/src/views/detail/groupAccount/component/zbxmmx.vue
0 → 100644
View file @
f0035f76
<
template
>
<div
class=
"performance"
>
<head-form
title=
""
:form-data=
"formData"
:query-params=
"queryParams"
:total=
"tableDataTotal"
:isExcel=
"false"
@
handle-search=
"handleSearch"
></head-form>
<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=
"projectType"
slot-scope=
"scope"
>
<div
v-if=
"scope.row.projectType === '空白'"
>
--
</div>
<div
v-else
>
{{
scope
.
row
.
projectType
||
'--'
}}
</div>
</
template
>
<
template
slot=
"bidAmount"
slot-scope=
"scope"
>
<div>
{{
scope
.
row
.
bidAmount
||
'--'
}}{{
scope
.
row
.
bidAmount
?
'万元'
:
''
}}
</div>
</
template
>
</tables>
<el-dialog
:visible
.
sync=
"dialogExportVisible"
width=
"640px"
append-to-body
class=
"dialogExport"
>
<
template
slot=
"title"
>
<img
class=
"tip-img"
src=
"@/assets/images/icon.png"
/>
数据导出
</
template
>
<div
class=
"table-item"
>
<el-table
:data=
"exportTableData"
>
<el-table-column
prop=
"issueTime"
label=
"招标发布时间"
width=
"110"
></el-table-column>
<el-table-column
prop=
"tenderee"
label=
"招标成员"
width=
"200"
></el-table-column>
<el-table-column
prop=
"stockPercent"
label=
"持股比例"
min-width=
"100"
></el-table-column>
<el-table-column
prop=
"projectName"
label=
"项目名称"
min-width=
"220"
></el-table-column>
<el-table-column
prop=
"bidAmount"
label=
"预算金额"
min-width=
"100"
></el-table-column>
<el-table-column
prop=
"address"
label=
"项目地区"
min-width=
"110"
></el-table-column>
<el-table-column
prop=
"subjectMatter"
label=
"招标采购分类"
min-width=
"130"
></el-table-column>
<el-table-column
prop=
"projectType"
label=
"项目类型"
min-width=
"100"
></el-table-column>
<el-table-column
prop=
"agency"
label=
"代理单位"
min-width=
"160"
></el-table-column>
</el-table>
</div>
<div
class=
"input"
>
导出数量:
<el-input
placeholder=
""
v-model=
"value"
oninput=
"value=value.replace(/[^\d]/g,'')"
>
<
template
slot=
"append"
>
条
</
template
>
</el-input>
<p
v-if=
"value > 2000"
><i
class=
"el-icon-error"
></i>
最多支持导出2000条,如需更多联系大司空客服人员
</p>
</div>
<div
slot=
"footer"
class=
"dialog-footer"
>
<el-button
type=
"primary"
@
click=
"clickEXCEL"
>
确认导出
</el-button>
<el-button
@
click=
"cancel"
>
取消
</el-button>
</div>
</el-dialog>
<el-dialog
:visible
.
sync=
"dialogExportVisible1"
width=
"640px"
append-to-body
class=
"dialogExport"
>
<
template
slot=
"title"
>
<img
class=
"tip-img"
src=
"@/assets/images/icon.png"
/>
数据导出
</
template
>
<div
class=
"content"
>
<img
class=
"success"
src=
"@/assets/images/success.png"
/>
<p
class=
"p1"
>
导出成功
</p>
<p
class=
"p2"
>
可在个人中心查看导出表格
<span
@
click=
"toUrl"
>
前往个人中心
</span>
</p>
</div>
<div
slot=
"footer"
class=
"dialog-footer"
>
<el-button
type=
"primary"
@
click=
"downloadFile(exportData.url,exportData.originalName)"
>
下载表格
</el-button>
<el-button
@
click=
"dialogExportVisible1 = false"
>
取消
</el-button>
</div>
</el-dialog>
</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
,
},
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'
,
slot
:
true
},
{
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
:
125
},
{
type
:
4
,
fieldName
:
'projectTypes'
,
value
:
''
,
placeholder
:
'项目类型'
,
options
:
[],
width
:
150
},
{
type
:
1
,
fieldName
:
'cgbl'
,
value
:
''
,
placeholder
:
'持股比例'
,
options
:
[],
width
:
110
},
{
type
:
3
,
fieldName
:
'keys'
,
value
:
''
,
placeholder
:
'查询'
},
],
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
:{},
dialogExportVisible
:
false
,
dialogExportVisible1
:
false
,
exportTableData
:[
{
"address"
:
"四川省-成都市"
,
"stockPercent"
:
"18.43%"
,
"agency"
:
'鞍钢股份有限公司'
,
"issueTime"
:
"2023-09-22"
,
"subjectMatter"
:
"其他"
,
"memberLevel"
:
"二级企业"
,
"tenderee"
:
"鞍钢冷轧钢板(莆田)有限公司综合部"
,
"projectType"
:
"其他"
,
"bidAmount"
:
"202万元"
,
"projectName"
:
"2023年中铁一局集团第二工程有限公司江浙区域项目自购物资集中招标采购文件(一)(钢材)招标公告"
,
},
{
"address"
:
"四川省-成都市"
,
"stockPercent"
:
"18.43%"
,
"agency"
:
'鞍钢股份有限公司'
,
"issueTime"
:
"2023-09-22"
,
"subjectMatter"
:
"其他"
,
"memberLevel"
:
"二级企业"
,
"tenderee"
:
"鞍钢股份有限公司"
,
"projectType"
:
"其他"
,
"bidAmount"
:
"202万元"
,
"projectName"
:
"太极集团四川太极制药有限公司转让持有的成都市4套住宅-高新区玉虹巷2号1栋6单元7层13号"
,
},
],
value
:
''
,
exportData
:{}
}
},
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
=
JSON
.
parse
(
JSON
.
stringify
(
data
));
bidPage
(
data
).
then
(
res
=>
{
this
.
tableData
=
res
.
code
==
200
?
res
.
rows
:[];
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"
:
[]
});
}
}
}
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
.
$children
[
0
].
$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
)
this
.
$emit
(
'handle-scroll'
)
},
changeSelect
(){
this
.
handleSearch
()
},
clickFocus
(
e
){
document
.
getElementById
(
e
).
classList
.
toggle
(
'span-ba'
)
},
clickDialog
(){
this
.
dialogExportVisible
=
true
;
},
clickEXCEL
()
{
if
(
this
.
value
>
2000
){
return
}
this
.
dialogExportVisible
=
false
;
this
.
dataEXCEL
.
combineName
=
this
.
combineName
;
if
(
this
.
value
){
this
.
dataEXCEL
.
pageSize
=
this
.
value
}
else
{
this
.
dataEXCEL
.
pageSize
=
this
.
tableDataTotal
>
2000
?
2000
:
this
.
tableDataTotal
;
}
delete
this
.
dataEXCEL
.
pageNum
exportBid
(
this
.
dataEXCEL
).
then
(
res
=>
{
if
(
res
.
code
===
200
){
this
.
dialogExportVisible1
=
true
;
this
.
value
=
''
this
.
exportData
=
res
.
data
;
}
})
},
cancel
(){
this
.
dialogExportVisible
=
false
this
.
value
=
''
},
downloadFile
(
url
,
fileName
)
{
const
x
=
new
XMLHttpRequest
()
x
.
open
(
"GET"
,
url
,
true
)
x
.
responseType
=
'blob'
x
.
onload
=
function
(
e
)
{
const
url
=
window
.
URL
.
createObjectURL
(
x
.
response
)
const
a
=
document
.
createElement
(
'a'
)
a
.
href
=
url
a
.
download
=
fileName
a
.
click
()
a
.
remove
()
}
x
.
send
()
},
toUrl
(){
this
.
dialogExportVisible1
=
false
;
this
.
$router
.
push
({
path
:
'/user/profile'
,
})
},
}
}
</
script
>
<
style
lang=
"scss"
scoped
>
.performance
{
background
:
#ffffff
;
border-radius
:
4px
;
padding
:
16px
;
height
:
calc
(
100%
-
64px
);
.headForm
{
margin-bottom
:
14px
;
.common-title
{
margin-right
:
24px
;
}
::v-deep
.el-input__inner
{
padding-right
:
27px
;
}
::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
;
}
}
.dialogExport
{
::v-deep
.el-dialog
{
.el-dialog__header
{
height
:
48px
;
line-height
:
48px
;
padding
:
0
16px
;
border-bottom
:
1px
solid
#E1E1E1
;
font-weight
:
bold
;
color
:
#1D2129
;
font-size
:
16px
;
.tip-img
{
width
:
18px
;
height
:
18px
;
margin-right
:
7px
;
margin-bottom
:
-3px
;
}
.el-dialog__headerbtn
{
font-size
:
20px
;
font-weight
:
bold
;
top
:
15px
;
.el-dialog__close
{
color
:
#999999
;
}
}
}
.el-dialog__body
{
padding
:
16px
;
.input
{
margin-top
:
16px
;
.el-input
{
width
:
160px
;
border-radius
:
2px
;
height
:
32px
;
.el-input__inner
{
height
:
32px
;
line-height
:
32px
;
}
}
.el-input-group__append
{
padding
:
0
14px
;
}
p
{
color
:
#FF3C3C
;
font-size
:
12px
;
margin-left
:
12px
;
display
:
inline-block
;
i
{
font-size
:
14px
;
margin-right
:
4px
;
}
}
}
.content
{
text-align
:
center
;
margin-top
:
36px
;
.success
{
width
:
64px
;
height
:
64px
;
margin-bottom
:
16px
;
}
p
{
padding
:
0
;
margin
:
0
;
}
.p1
{
color
:
#232323
;
font-size
:
16px
;
margin-bottom
:
8px
;
}
.p2
{
color
:
rgba
(
35
,
35
,
35
,
0
.4
);
font-size
:
14px
;
span
{
color
:
#0081FF
;
cursor
:
pointer
;
}
}
}
}
.el-dialog__footer
{
text-align
:
center
;
padding-bottom
:
24px
;
}
}
}
</
style
>
dsk-operate-ui/src/views/detail/groupAccount/component/zhaobiao.vue
View file @
f0035f76
<
template
>
<
template
>
<div
class=
"performance"
>
<div
class=
"zhaobiao"
>
<div
class=
"headForm"
>
<div
class=
"header"
>
<div
class=
"flex-box query-box"
style=
"margin-bottom: 12px;"
>
<div
class=
"header-tab"
>
<div
class=
"flex-box query-params"
>
<el-tabs
v-model=
"activeName"
@
tab-click=
"handleClick"
>
<span
class=
"common-title"
>
集团招标
</span>
<el-tab-pane
label=
"招标项目分析"
name=
"first"
></el-tab-pane>
<div
class=
"cooperate-name"
id=
"focus00"
>
<el-tab-pane
label=
"招标项目明细"
name=
"second"
></el-tab-pane>
<el-input
clearable
@
clear=
"changeSelect"
style=
"width: 300px;"
@
focus=
"clickFocus('focus00')"
@
blur=
"clickFocus('focus00')"
v-model=
"queryParams.keys"
placeholder=
"搜索招标成员名称/项目名称/代理单位"
></el-input>
</el-tabs>
<span
@
click=
"changeSelect"
>
搜索
</span>
</div>
</div>
</div>
</div>
</div>
<Zbxmfx
v-if=
"activeName === 'first'"
></Zbxmfx>
<div
class=
"flex-box query-box"
>
<Zbxmmx
v-if=
"activeName === 'second'"
></Zbxmmx>
<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=
"clickDialog"
><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=
"projectType"
slot-scope=
"scope"
>
<div
v-if=
"scope.row.projectType === '空白'"
>
--
</div>
<div
v-else
>
{{
scope
.
row
.
projectType
||
'--'
}}
</div>
</
template
>
<
template
slot=
"bidAmount"
slot-scope=
"scope"
>
<div>
{{
scope
.
row
.
bidAmount
||
'--'
}}{{
scope
.
row
.
bidAmount
?
'万元'
:
''
}}
</div>
</
template
>
</tables>
<el-dialog
:visible
.
sync=
"dialogExportVisible"
width=
"640px"
append-to-body
class=
"dialogExport"
>
<
template
slot=
"title"
>
<img
class=
"tip-img"
src=
"@/assets/images/icon.png"
/>
数据导出
</
template
>
<div
class=
"table-item"
>
<el-table
:data=
"exportTableData"
>
<el-table-column
prop=
"issueTime"
label=
"招标发布时间"
width=
"110"
></el-table-column>
<el-table-column
prop=
"tenderee"
label=
"招标成员"
width=
"200"
></el-table-column>
<el-table-column
prop=
"stockPercent"
label=
"持股比例"
min-width=
"100"
></el-table-column>
<el-table-column
prop=
"projectName"
label=
"项目名称"
min-width=
"220"
></el-table-column>
<el-table-column
prop=
"bidAmount"
label=
"预算金额"
min-width=
"100"
></el-table-column>
<el-table-column
prop=
"address"
label=
"项目地区"
min-width=
"110"
></el-table-column>
<el-table-column
prop=
"subjectMatter"
label=
"招标采购分类"
min-width=
"130"
></el-table-column>
<el-table-column
prop=
"projectType"
label=
"项目类型"
min-width=
"100"
></el-table-column>
<el-table-column
prop=
"agency"
label=
"代理单位"
min-width=
"160"
></el-table-column>
</el-table>
</div>
<div
class=
"input"
>
导出数量:
<el-input
placeholder=
""
v-model=
"value"
oninput=
"value=value.replace(/[^\d]/g,'')"
>
<
template
slot=
"append"
>
条
</
template
>
</el-input>
<p
v-if=
"value > 2000"
><i
class=
"el-icon-error"
></i>
最多支持导出2000条,如需更多联系大司空客服人员
</p>
</div>
<div
slot=
"footer"
class=
"dialog-footer"
>
<el-button
type=
"primary"
@
click=
"clickEXCEL"
>
确认导出
</el-button>
<el-button
@
click=
"cancel"
>
取消
</el-button>
</div>
</el-dialog>
<el-dialog
:visible
.
sync=
"dialogExportVisible1"
width=
"640px"
append-to-body
class=
"dialogExport"
>
<
template
slot=
"title"
>
<img
class=
"tip-img"
src=
"@/assets/images/icon.png"
/>
数据导出
</
template
>
<div
class=
"content"
>
<img
class=
"success"
src=
"@/assets/images/success.png"
/>
<p
class=
"p1"
>
导出成功
</p>
<p
class=
"p2"
>
可在个人中心查看导出表格
<span
@
click=
"toUrl"
>
前往个人中心
</span>
</p>
</div>
<div
slot=
"footer"
class=
"dialog-footer"
>
<el-button
type=
"primary"
@
click=
"downloadFile(exportData.url,exportData.originalName)"
>
下载表格
</el-button>
<el-button
@
click=
"dialogExportVisible1 = false"
>
取消
</el-button>
</div>
</el-dialog>
</div>
</div>
</
template
>
</
template
>
<
script
>
<
script
>
import
mixin
from
'../../party-a/mixins/mixin'
import
Zbxmfx
from
'./zbxmfx'
import
CustomTimeSelect
from
'../../party-a/component/CustomTimeSelect'
import
Zbxmmx
from
'./zbxmmx'
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
{
export
default
{
name
:
'qualifications'
,
name
:
'qualifications'
,
props
:
[
'customerId'
,
'combineName'
],
components
:{
Zbxmfx
,
Zbxmmx
},
mixins
:
[
mixin
],
components
:{
CustomTimeSelect
,
CustomMoneySelect
},
data
(){
data
(){
return
{
return
{
isSkeleton
:
true
,
activeName
:
'first'
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'
,
slot
:
true
},
{
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
:{},
dialogExportVisible
:
false
,
dialogExportVisible1
:
false
,
exportTableData
:[
{
"address"
:
"四川省-成都市"
,
"stockPercent"
:
"18.43%"
,
"agency"
:
'鞍钢股份有限公司'
,
"issueTime"
:
"2023-09-22"
,
"subjectMatter"
:
"其他"
,
"memberLevel"
:
"二级企业"
,
"tenderee"
:
"鞍钢冷轧钢板(莆田)有限公司综合部"
,
"projectType"
:
"其他"
,
"bidAmount"
:
"202万元"
,
"projectName"
:
"2023年中铁一局集团第二工程有限公司江浙区域项目自购物资集中招标采购文件(一)(钢材)招标公告"
,
},
{
"address"
:
"四川省-成都市"
,
"stockPercent"
:
"18.43%"
,
"agency"
:
'鞍钢股份有限公司'
,
"issueTime"
:
"2023-09-22"
,
"subjectMatter"
:
"其他"
,
"memberLevel"
:
"二级企业"
,
"tenderee"
:
"鞍钢股份有限公司"
,
"projectType"
:
"其他"
,
"bidAmount"
:
"202万元"
,
"projectName"
:
"太极集团四川太极制药有限公司转让持有的成都市4套住宅-高新区玉虹巷2号1栋6单元7层13号"
,
},
],
value
:
''
,
exportData
:{}
}
}
},
},
created
()
{
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
:
{
methods
:
{
handleQuery
(
params
){
handleClick
()
{
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
=
JSON
.
parse
(
JSON
.
stringify
(
data
));
bidPage
(
data
).
then
(
res
=>
{
this
.
tableData
=
res
.
code
==
200
?
res
.
rows
:[];
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
)
this
.
$emit
(
'handle-scroll'
)
},
changeSelect
(){
this
.
handleSearch
()
},
clickFocus
(
e
){
document
.
getElementById
(
e
).
classList
.
toggle
(
'span-ba'
)
},
clickDialog
(){
this
.
dialogExportVisible
=
true
;
},
clickEXCEL
()
{
if
(
this
.
value
>
2000
){
return
}
this
.
dialogExportVisible
=
false
;
this
.
dataEXCEL
.
combineName
=
this
.
combineName
;
if
(
this
.
value
){
this
.
dataEXCEL
.
pageSize
=
this
.
value
}
else
{
this
.
dataEXCEL
.
pageSize
=
this
.
tableDataTotal
>
2000
?
2000
:
this
.
tableDataTotal
;
}
delete
this
.
dataEXCEL
.
pageNum
exportBid
(
this
.
dataEXCEL
).
then
(
res
=>
{
if
(
res
.
code
===
200
){
this
.
dialogExportVisible1
=
true
;
this
.
value
=
''
this
.
exportData
=
res
.
data
;
}
})
},
cancel
(){
this
.
dialogExportVisible
=
false
this
.
value
=
''
},
downloadFile
(
url
,
fileName
)
{
const
x
=
new
XMLHttpRequest
()
x
.
open
(
"GET"
,
url
,
true
)
x
.
responseType
=
'blob'
x
.
onload
=
function
(
e
)
{
const
url
=
window
.
URL
.
createObjectURL
(
x
.
response
)
const
a
=
document
.
createElement
(
'a'
)
a
.
href
=
url
a
.
download
=
fileName
a
.
click
()
a
.
remove
()
}
x
.
send
()
},
toUrl
(){
this
.
dialogExportVisible1
=
false
;
this
.
$router
.
push
({
path
:
'/user/profile'
,
})
},
}
}
}
</
script
>
</
script
>
<
style
lang=
"scss"
scoped
>
<
style
lang=
"scss"
scoped
>
.performance
{
.zhaobiao
{
background
:
#ffffff
;
height
:
100%
;
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
;
background
:
#F5F5F5
;
text-align
:
center
;
.header
{
color
:
#0081FF
;
justify-content
:
space-between
;
border
:
1px
solid
#EFEFEF
;
background
:
#F5F5F5
;
border-left
:
0
;
color
:
#232323
;
cursor
:
pointer
;
height
:
64px
;
}
position
:
sticky
;
&
.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
;
top
:
0
;
padding-right
:
22px
;
z-index
:
999
;
font-size
:
12px
;
.header-tab
{
padding-left
:
8px
;
background
:
#ffffff
;
}
border-radius
:
4px
;
}
.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
;
}
}
}
.dialogExport
{
::v-deep
.el-tabs
{
::v-deep
.el-dialog
{
.el-dialog__header
{
height
:
48px
;
height
:
48px
;
line-height
:
48px
;
line-height
:
48px
;
padding
:
0
16px
;
.
el-tabs__nav-wrap
:
:
after
{
border-bottom
:
1px
solid
#E1E1E1
;
position
:
static
!
important
;
font-weight
:
bold
;
color
:
#1D2129
;
font-size
:
16px
;
.tip-img
{
width
:
18px
;
height
:
18px
;
margin-right
:
7px
;
margin-bottom
:
-3px
;
}
.el-dialog__headerbtn
{
font-size
:
20px
;
font-weight
:
bold
;
top
:
15px
;
.el-dialog__close
{
color
:
#999999
;
}
}
}
.el-tabs__header
{
}
.el-dialog__body
{
padding
:
16px
;
.input
{
margin-top
:
16px
;
.el-input
{
width
:
160px
;
border-radius
:
2px
;
height
:
32px
;
.el-input__inner
{
height
:
32px
;
line-height
:
32px
;
}
}
.el-input-group__append
{
padding
:
0
14px
;
}
p
{
color
:
#FF3C3C
;
font-size
:
12px
;
margin-left
:
12px
;
display
:
inline-block
;
i
{
font-size
:
14px
;
margin-right
:
4px
;
}
}
}
.content
{
text-align
:
center
;
margin-top
:
36px
;
.success
{
width
:
64px
;
height
:
64px
;
margin-bottom
:
16px
;
}
p
{
padding
:
0
;
margin
:
0
;
margin
:
0
;
}
.el-tabs__item
{
.p1
{
padding
:
0
16px
;
color
:
#232323
;
font-size
:
16px
;
font-size
:
16px
;
margin-bottom
:
8px
;
}
.p2
{
color
:
rgba
(
35
,
35
,
35
,
0
.4
);
font-size
:
14px
;
span
{
color
:
#0081FF
;
cursor
:
pointer
;
}
}
.is-active
{
font-weight
:
bold
;
}
}
}
}
.el-tabs__content
{
width
:
100%
;
}
}
.el-dialog__footer
{
text-align
:
center
;
padding-bottom
:
24px
;
}
}
}
}
}
}
...
...
dsk-operate-ui/src/views/detail/groupAccount/index.vue
View file @
f0035f76
...
@@ -115,6 +115,9 @@
...
@@ -115,6 +115,9 @@
top
:
0
;
top
:
0
;
z-index
:
9
;
z-index
:
9
;
}
}
#groupBox
{
height
:
100%
;
}
}
}
.part-header
{
.part-header
{
font-size
:
16px
;
font-size
:
16px
;
...
...
dsk-operate-ui/src/views/detail/party-a/component/CustomMoneySelect.vue
View file @
f0035f76
...
@@ -229,7 +229,15 @@ export default {
...
@@ -229,7 +229,15 @@ export default {
width
:
120px
;
width
:
120px
;
height
:
34px
;
height
:
34px
;
position
:
relative
;
position
:
relative
;
.el-input__inner
{
width
:
100px
!
important
;
}
.rote
{
background
:
#F4F6F9
;
.el-input__inner
{
background
:
#F4F6F9
;
}
}
.input-block
{
.input-block
{
margin
:
0
;
margin
:
0
;
width
:
100%
;
width
:
100%
;
...
@@ -243,6 +251,9 @@ export default {
...
@@ -243,6 +251,9 @@ export default {
>
.custom-money-input.el-input
{
>
.custom-money-input.el-input
{
width
:
100%
;
width
:
100%
;
height
:
100%
;
height
:
100%
;
.el-input__inner
{
border
:
0
;
}
>
input
{
>
input
{
width
:
100%
;
width
:
100%
;
height
:
100%
;
height
:
100%
;
...
@@ -277,10 +288,10 @@ export default {
...
@@ -277,10 +288,10 @@ export default {
font-size
:
14px
;
font-size
:
14px
;
color
:
#666666
;
color
:
#666666
;
background-color
:
#fff
;
background-color
:
#fff
;
border
:
1px
solid
#E4E7ED
;
/*padding: 6px 0;*/
padding
:
6px
0
;
border-radius
:
4px
;
border-radius
:
4px
;
z-index
:
10
;
z-index
:
10
;
box-shadow
:
0px
0px
4px
0px
rgba
(
0
,
0
,
0
,
0
.08
);
// .arrow {
// .arrow {
...
...
dsk-operate-ui/src/views/detail/party-a/component/CustomTimeSelect.vue
View file @
f0035f76
...
@@ -241,6 +241,11 @@ export default {
...
@@ -241,6 +241,11 @@ export default {
width
:
120px
;
width
:
120px
;
height
:
34px
;
height
:
34px
;
.rote
{
.el-input__inner
{
background
:
#F4F6F9
;
}
}
.input-block
{
.input-block
{
width
:
100%
;
width
:
100%
;
height
:
100%
;
height
:
100%
;
...
@@ -254,13 +259,16 @@ export default {
...
@@ -254,13 +259,16 @@ export default {
>
.custom-time-input.el-input
{
>
.custom-time-input.el-input
{
width
:
100%
;
width
:
100%
;
height
:
100%
;
height
:
100%
;
.el-input__inner
{
border
:
0
;
}
>
input
{
>
input
{
width
:
100%
;
width
:
100%
;
height
:
100%
;
height
:
100%
;
overflow
:
hidden
;
overflow
:
hidden
;
white-space
:
nowrap
;
white-space
:
nowrap
;
text-overflow
:
ellipsis
;
text-overflow
:
ellipsis
;
border-radius
:
2
px
;
border-radius
:
4
px
;
}
}
}
}
}
}
...
@@ -283,15 +291,15 @@ export default {
...
@@ -283,15 +291,15 @@ export default {
.options-block
{
.options-block
{
position
:
absolute
;
position
:
absolute
;
margin-top
:
12
px
;
margin-top
:
6
px
;
min-width
:
120px
;
min-width
:
120px
;
font-size
:
14px
;
font-size
:
14px
;
color
:
#666666
;
color
:
#666666
;
background-color
:
#fff
;
background-color
:
#fff
;
border
:
1px
solid
#E4E7ED
;
padding
:
6px
0
;
border-radius
:
4px
;
border-radius
:
4px
;
z-index
:
10
;
z-index
:
10
;
overflow
:
hidden
;
box-shadow
:
0px
0px
4px
0px
rgba
(
0
,
0
,
0
,
0
.08
);
.option
{
.option
{
padding
:
0
24px
0
16px
;
padding
:
0
24px
0
16px
;
...
...
dsk-operate-ui/src/views/detail/party-a/component/HeadForm.vue
View file @
f0035f76
<
template
>
<
template
>
<div>
<div>
<div
class=
"headForm"
>
<div
class=
"headForm"
>
<div
class=
"flex-box query-box"
style=
"margin-bottom: 12px;"
>
<div
class=
"flex-box query-box"
v-if=
"title"
style=
"margin-bottom: 12px;"
>
<div
class=
"flex-box query-params"
>
<div
class=
"flex-box query-params"
>
<span
class=
"common-title"
v-if=
"title"
>
{{
title
}}
</span>
<span
class=
"common-title"
v-if=
"title"
>
{{
title
}}
</span>
</div>
</div>
...
@@ -10,11 +10,11 @@
...
@@ -10,11 +10,11 @@
</
template
>
</
template
>
<div
v-else
class=
"flex-box"
>
<div
v-else
class=
"flex-box"
>
<span
class=
"flex-box ability-total"
v-if=
"isTotal"
>
共{{ total }}条
</span>
<span
class=
"flex-box ability-total"
v-if=
"isTotal"
>
共{{ total }}条
</span>
<span
class=
"flex-box ability-excel"
v-hasPermi=
"['combine:info:export:win:bid']"
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'
,'combine:info:export:bid'
]"
v-if=
"isExcel"
@
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>
<span
class=
"flex-box ability-excel"
v-else
@
click=
"clickEXCEL"
><img
src=
"@/assets/images/ability_excel.png"
>
导出EXCEL
</span>
</div>
</div>
</div>
</div>
<div
class=
"flex-box query-box"
>
<div
class=
"flex-box query-box"
v-if=
"formData.length > 0"
>
<div
class=
"flex-box query-params"
>
<div
class=
"flex-box query-params"
>
<div
class=
"headForm-from"
>
<div
class=
"headForm-from"
>
<div
class=
"from-item"
:key=
"i"
v-for=
"(form, i) in formData"
>
<div
class=
"from-item"
:key=
"i"
v-for=
"(form, i) in formData"
>
...
@@ -48,8 +48,9 @@
...
@@ -48,8 +48,9 @@
<!-- 输入框 -->
<!-- 输入框 -->
<
template
v-if=
"form.type==3"
>
<
template
v-if=
"form.type==3"
>
<div
class=
"cooperate-name"
:id=
"'focus'+i"
>
<div
class=
"cooperate-name"
:id=
"'focus'+i"
>
<el-input
clearable
@
clear=
"changeSelect"
@
focus=
"clickFocus('focus'+i)"
@
blur=
"clickFocus('focus'+i)"
v-model=
"form.value"
:placeholder=
"form.placeholder"
:style=
"form.width?'width:'+form.width+'px':'width:180px'"
></el-input>
<el-input
clearable
@
clear=
"changeSelect"
@
focus=
"clickFocus('focus'+i)"
@
blur=
"clickFocus('focus'+i)"
v-model=
"form.value"
:placeholder=
"form.placeholder"
:style=
"form.width?'width:'+form.width+'px':'width:200px'"
>
<span
@
click=
"changeSelect"
>
搜索
</span>
<i
slot=
"prefix"
class=
"el-input__icon"
><img
src=
"@/assets/images/project/sousuo.png"
width=
"16px"
@
click=
"changeSelect"
></i>
</el-input>
</div>
</div>
</
template
>
</
template
>
<!-- 多选 -->
<!-- 多选 -->
...
@@ -61,7 +62,7 @@
...
@@ -61,7 +62,7 @@
multiple
multiple
collapse-tags
collapse-tags
clearable
clearable
:style=
"form.width?'width:'+form.width+'px':'max-width: 1
7
0px'"
:style=
"form.width?'width:'+form.width+'px':'max-width: 1
5
0px'"
:placeholder=
"form.placeholder"
:placeholder=
"form.placeholder"
@
change=
"changeSelect"
>
@
change=
"changeSelect"
>
<el-option
v-for=
"(item, index) in form.options"
:key=
"index"
:label=
"item.name"
:value=
"item.value"
/>
<el-option
v-for=
"(item, index) in form.options"
:key=
"index"
:label=
"item.name"
:value=
"item.value"
/>
...
@@ -101,118 +102,16 @@
...
@@ -101,118 +102,16 @@
<
template
v-if=
"form.type==0"
>
<
template
v-if=
"form.type==0"
>
<slot
name=
"slot"
></slot>
<slot
name=
"slot"
></slot>
</
template
>
</
template
>
</div>
</div>
</div>
</div>
</div>
</div>
<div
v-if=
"!title"
class=
"flex-box"
>
<span
class=
"flex-box ability-total"
v-if=
"isTotal"
>
共{{ total }}条
</span>
<span
class=
"flex-box ability-excel"
v-hasPermi=
"['combine:info:export:win:bid','combine:info:export:bid']"
v-if=
"isExcel"
@
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>
</div>
</div>
<!--<div class="headForm" v-else>-->
<!--<div class="flex-box query-box">-->
<!--<div class="flex-box query-params">-->
<!--<span class="common-title" v-if="title">{{ title }}</span>-->
<!--<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==3">-->
<!--<div class="cooperate-name" :id="'focus'+i">-->
<!--<el-input clearable @clear="changeSelect" @focus="clickFocus('focus'+i)" @blur="clickFocus('focus'+i)" v-model="form.value" :placeholder="form.placeholder" :style="form.width?'width:'+form.width+'px':'width:180px'"></el-input>-->
<!--<span @click="changeSelect">搜索</span>-->
<!--</div>-->
<!--</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>-->
<!--<!– 自定义 –>-->
<!--<template v-if="form.type==0">-->
<!--<slot name="slot"></slot>-->
<!--</template>-->
<!--</div>-->
<!--</div>-->
<!--</div>-->
<!--<template v-if="slots">-->
<!--<slot name="slot"></slot>-->
<!--</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-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>-->
</div>
</div>
</template>
</template>
...
@@ -299,14 +198,15 @@ export default {
...
@@ -299,14 +198,15 @@ export default {
margin-right
:
24px
;
margin-right
:
24px
;
}
}
::v-deep
.el-input__inner
{
::v-deep
.el-input__inner
{
border
:
1px
solid
#D9D9D9
;
border
:
0
;
height
:
3
4
px
;
height
:
3
2
px
;
line-height
:
3
4
px
;
line-height
:
3
2
px
;
padding-right
:
27px
;
/*padding-right: 27px;*/
overflow
:
hidden
;
overflow
:
hidden
;
text-overflow
:
ellipsis
;
text-overflow
:
ellipsis
;
white-space
:
nowrap
;
white-space
:
nowrap
;
border-radius
:
4px
;
border-radius
:
4px
;
padding
:
0
8px
;
}
}
::v-deep
.el-form-item
{
::v-deep
.el-form-item
{
margin-right
:
8px
!
important
;
margin-right
:
8px
!
important
;
...
@@ -317,7 +217,14 @@ export default {
...
@@ -317,7 +217,14 @@ export default {
::v-deep
.el-cascader
{
::v-deep
.el-cascader
{
height
:
34px
;
height
:
34px
;
line-height
:
34px
;
line-height
:
34px
;
width
:
190px
;
width
:
150px
;
.is-focus
{
.el-input
{
input
{
background
:
#F4F6F9
;
}
}
}
.el-input
{
.el-input
{
input
{
input
{
height
:
34px
!
important
;
height
:
34px
!
important
;
...
@@ -327,7 +234,10 @@ export default {
...
@@ -327,7 +234,10 @@ export default {
flex-wrap
:
inherit
;
flex-wrap
:
inherit
;
margin-top
:
1px
;
margin-top
:
1px
;
.el-tag
{
.el-tag
{
max-width
:
100px
;
max-width
:
70px
;
}
.el-tag
:nth-child
(
2
)
{
padding
:
0
3px
;
}
}
}
}
.el-input__suffix
{
.el-input__suffix
{
...
@@ -343,10 +253,18 @@ export default {
...
@@ -343,10 +253,18 @@ export default {
}
}
.cooperate-name
{
.cooperate-name
{
display
:
flex
;
display
:
flex
;
border-radius
:
2px
;
border-radius
:
4px
;
border
:
1px
solid
#D9D9D9
;
border
:
0
;
line-height
:
34px
;
line-height
:
32px
;
height
:
34px
;
height
:
32px
;
width
:
238px
;
.el-input__icon
{
>
img
{
position
:
absolute
;
top
:
7px
;
left
:
5px
;
}
}
span
{
span
{
width
:
60px
;
width
:
60px
;
height
:
32px
;
height
:
32px
;
...
@@ -360,7 +278,7 @@ export default {
...
@@ -360,7 +278,7 @@ export default {
cursor
:
pointer
;
cursor
:
pointer
;
}
}
&
.span-ba
{
&
.span-ba
{
border
:
1px
solid
#0081FF
;
border
-color
:
#0081FF
;
span
{
span
{
color
:
#ffffff
;
color
:
#ffffff
;
background
:
#0081FF
;
background
:
#0081FF
;
...
@@ -368,7 +286,7 @@ export default {
...
@@ -368,7 +286,7 @@ export default {
}
}
}
}
::v-deep
.el-input
{
::v-deep
.el-input
{
flex
:
1
;
width
:
100%
;
}
}
::v-deep
.el-input__inner
{
::v-deep
.el-input__inner
{
border
:
0
;
border
:
0
;
...
@@ -376,9 +294,8 @@ export default {
...
@@ -376,9 +294,8 @@ export default {
height
:
32px
;
height
:
32px
;
position
:
absolute
;
position
:
absolute
;
top
:
0
;
top
:
0
;
padding-right
:
22px
;
padding-left
:
36px
;
font-size
:
12px
;
padding-right
:
25px
;
padding-left
:
8px
;
}
}
}
}
.fromTime
{
.fromTime
{
...
@@ -400,7 +317,26 @@ export default {
...
@@ -400,7 +317,26 @@ export default {
}
}
}
}
::v-deep
.form-content-width
{
::v-deep
.form-content-width
{
width
:
170px
;
width
:
150px
;
.el_input
{
background
:
#fff
;
}
.el-input__inner
{
border-color
:
#fff
;
padding
:
5px
28px
5px
8px
;
border-radius
:
4px
!
important
;
}
.el-input__suffix
{
height
:
32px
;
.el-input__icon
{
line-height
:
32px
;
}
}
.is-focus
{
.el-input__inner
{
background
:
#F4F6F9
;
}
}
}
}
::v-deep
.selectTag
{
::v-deep
.selectTag
{
.el-select__tags
{
.el-select__tags
{
...
...
dsk-operate-ui/src/views/detail/party-a/component/Header.vue
View file @
f0035f76
...
@@ -9,7 +9,7 @@
...
@@ -9,7 +9,7 @@
<el-breadcrumb-item>
{{
companyInfo
.
simpleName
||
companyInfo
.
companyName
||
'--'
}}
</el-breadcrumb-item>
<el-breadcrumb-item>
{{
companyInfo
.
simpleName
||
companyInfo
.
companyName
||
'--'
}}
</el-breadcrumb-item>
</el-breadcrumb>
</el-breadcrumb>
</div>
-->
</div>
-->
<div
class=
"flex-box part-header"
>
<div
class=
"flex-box part-header"
style=
"min-width:1248px;"
>
<img
class=
"header-logo"
:src=
"companyInfo && companyInfo.logoUrl || require('@/assets/images/detail/company_logo.png')"
>
<img
class=
"header-logo"
:src=
"companyInfo && companyInfo.logoUrl || require('@/assets/images/detail/company_logo.png')"
>
{{
companyInfo
&&
companyInfo
.
companyName
||
'--'
}}
{{
companyInfo
&&
companyInfo
.
companyName
||
'--'
}}
</div>
</div>
...
...
dsk-operate-ui/src/views/detail/party-a/cooperate/index.vue
View file @
f0035f76
...
@@ -158,9 +158,9 @@ export default {
...
@@ -158,9 +158,9 @@ export default {
{
label
:
'项目状态'
,
prop
:
'status'
,
width
:
'90'
,
slot
:
true
}
{
label
:
'项目状态'
,
prop
:
'status'
,
width
:
'90'
,
slot
:
true
}
],
],
formData
:
[
formData
:
[
{
type
:
1
,
fieldName
:
'projectStage'
,
value
:
''
,
placeholder
:
'项目阶段'
,
options
:
[]},
{
type
:
1
,
fieldName
:
'projectStage'
,
width
:
'94'
,
value
:
''
,
placeholder
:
'项目阶段'
,
options
:
[]},
{
type
:
1
,
fieldName
:
'status'
,
value
:
''
,
placeholder
:
'项目状态'
,
options
:
[]},
{
type
:
1
,
fieldName
:
'status'
,
width
:
'94'
,
value
:
''
,
placeholder
:
'项目状态'
,
options
:
[]},
{
type
:
3
,
fieldName
:
'projectName'
,
width
:
'2
0
0'
,
value
:
''
,
placeholder
:
'输入项目名称关键字搜索'
},
{
type
:
3
,
fieldName
:
'projectName'
,
width
:
'2
4
0'
,
value
:
''
,
placeholder
:
'输入项目名称关键字搜索'
},
],
],
stageOptions
:[],
stageOptions
:[],
statusOptions
:[],
statusOptions
:[],
...
...
dsk-operate-ui/src/views/detail/party-a/opport/announcement.vue
View file @
f0035f76
...
@@ -56,11 +56,11 @@ export default {
...
@@ -56,11 +56,11 @@ export default {
}
,
}
,
defaultSort
:
{
prop
:
'issueTime'
,
order
:
'descending'
}
,
defaultSort
:
{
prop
:
'issueTime'
,
order
:
'descending'
}
,
forData
:
[
forData
:
[
{
label
:
'项目名称'
,
prop
:
'projectName'
,
minWidth
:
'300'
,
slot
:
true
}
,
{
label
:
'项目名称'
,
prop
:
'projectName'
,
minWidth
:
'300'
,
slot
:
true
,
fixed
:
true
}
,
{
label
:
'发布日期'
,
prop
:
'issueTime'
,
sortable
:
'custom'
,
descending
:
'3'
,
ascending
:
'4'
,
width
:
'120'
}
,
{
label
:
'发布日期'
,
prop
:
'issueTime'
,
sortable
:
'custom'
,
descending
:
'3'
,
ascending
:
'4'
,
width
:
'120'
}
,
{
label
:
'预算金额(万元)'
,
prop
:
'projectAmount'
,
sortable
:
'custom'
,
descending
:
'1'
,
ascending
:
'2'
,
width
:
'140'
}
,
{
label
:
'预算金额(万元)'
,
prop
:
'projectAmount'
,
sortable
:
'custom'
,
descending
:
'1'
,
ascending
:
'2'
,
width
:
'140'
}
,
{
label
:
'项目地区'
,
prop
:
'province'
,
width
:
'120'
,
slot
:
true
}
,
{
label
:
'项目地区'
,
prop
:
'province'
,
width
:
'120'
,
slot
:
true
}
,
{
label
:
'
项目类别
'
,
prop
:
'tenderStage'
,
width
:
'90'
}
,
{
label
:
'
招标阶段
'
,
prop
:
'tenderStage'
,
width
:
'90'
}
,
{
label
:
'招采单位联系人'
,
prop
:
'contact'
,
width
:
'120'
}
,
{
label
:
'招采单位联系人'
,
prop
:
'contact'
,
width
:
'120'
}
,
{
label
:
'招采单位联系方式'
,
prop
:
'contactTel'
,
width
:
'130'
}
,
{
label
:
'招采单位联系方式'
,
prop
:
'contactTel'
,
width
:
'130'
}
,
{
label
:
'代理单位'
,
prop
:
'agency'
,
minWidth
:
'170'
}
,
{
label
:
'代理单位'
,
prop
:
'agency'
,
minWidth
:
'170'
}
,
...
...
dsk-operate-ui/src/views/enterpriseData/components/Group/index.vue
View file @
f0035f76
...
@@ -23,7 +23,7 @@
...
@@ -23,7 +23,7 @@
<div>
<div>
<span
style=
"font-size: 14px;color: #0384FA;"
v-html=
"item.combineName"
></span>
<span
style=
"font-size: 14px;color: #0384FA;"
v-html=
"item.combineName"
></span>
<div
style=
"height:22px;line-height: 22px;"
><span
class=
"infinite-label"
>
集团成员:
</span>
{{
item
.
combineMemberNum
}}
</div>
<div
style=
"height:22px;line-height: 22px;"
><span
class=
"infinite-label"
>
集团成员:
</span>
{{
item
.
combineMemberNum
}}
</div>
<div
><span
class=
"infinite-label"
>
集团本身:
</span>
{{
item
.
combineMemberName
}}
</div>
<div
><span
class=
"infinite-label"
>
集团本身:
</span>
<el-tooltip
class=
"item"
effect=
"dark"
:content=
"item.combineMemberName"
placement=
"bottom-start"
><span>
{{
item
.
combineMemberName
}}
</span></el-tooltip>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
...
@@ -45,7 +45,7 @@
...
@@ -45,7 +45,7 @@
<div
style=
"float: left;"
>
<div
style=
"float: left;"
>
<span
class=
"name"
v-html=
"item.combineName"
></span>
<span
class=
"name"
v-html=
"item.combineName"
></span>
<div
style=
"height:28px;line-height: 28px;"
><span
class=
"infinite-label"
>
集团成员:
</span>
{{
item
.
combineMemberNum
}}
</div>
<div
style=
"height:28px;line-height: 28px;"
><span
class=
"infinite-label"
>
集团成员:
</span>
{{
item
.
combineMemberNum
}}
</div>
<div
class=
"name1"
><span
class=
"infinite-label"
>
集团本身:
</span>
{{
item
.
combineMemberName
}}
</div>
<div
class=
"name1"
><span
class=
"infinite-label"
>
集团本身:
</span>
<el-tooltip
class=
"item"
effect=
"dark"
:content=
"item.combineMemberName"
placement=
"bottom-start"
><span>
{{
item
.
combineMemberName
}}
</span></el-tooltip>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
...
@@ -57,7 +57,7 @@
...
@@ -57,7 +57,7 @@
<div
style=
"float: left;"
>
<div
style=
"float: left;"
>
<span
class=
"name"
v-html=
"item.combineName"
></span>
<span
class=
"name"
v-html=
"item.combineName"
></span>
<div
style=
"height:28px;line-height: 28px;"
><span
class=
"infinite-label"
>
集团成员:
</span>
{{
item
.
combineMemberNum
}}
</div>
<div
style=
"height:28px;line-height: 28px;"
><span
class=
"infinite-label"
>
集团成员:
</span>
{{
item
.
combineMemberNum
}}
</div>
<div
class=
"name1"
><span
class=
"infinite-label"
>
集团本身:
</span>
{{
item
.
combineMemberName
}}
</div>
<div
class=
"name1"
><span
class=
"infinite-label"
>
集团本身:
</span>
<el-tooltip
class=
"item"
effect=
"dark"
:content=
"item.combineMemberName"
placement=
"bottom-start"
><span>
{{
item
.
combineMemberName
}}
</span></el-tooltip>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
...
@@ -101,7 +101,7 @@
...
@@ -101,7 +101,7 @@
<div
style=
"float: left;"
>
<div
style=
"float: left;"
>
<span
class=
"name"
v-html=
"item.combineName"
></span>
<span
class=
"name"
v-html=
"item.combineName"
></span>
<div
style=
"height:28px;line-height: 28px;"
><span
class=
"infinite-label"
>
集团成员:
</span>
{{
item
.
combineMemberNum
}}
</div>
<div
style=
"height:28px;line-height: 28px;"
><span
class=
"infinite-label"
>
集团成员:
</span>
{{
item
.
combineMemberNum
}}
</div>
<div
class=
"name1"
><span
class=
"infinite-label"
>
集团本身:
</span>
{{
item
.
combineMemberName
}}
</div>
<div
class=
"name1"
><span
class=
"infinite-label"
>
集团本身:
</span>
<el-tooltip
class=
"item"
effect=
"dark"
:content=
"item.combineMemberName"
placement=
"bottom-start"
><span>
{{
item
.
combineMemberName
}}
</span></el-tooltip>
</div>
</div>
</div>
</div>
</div>
</
template
>
</
template
>
...
@@ -395,7 +395,7 @@ export default {
...
@@ -395,7 +395,7 @@ export default {
border-radius
:
4px
4px
4px
4px
;
border-radius
:
4px
4px
4px
4px
;
background
:
#FFFFFF
;
background
:
#FFFFFF
;
font-size
:
14px
;
font-size
:
14px
;
min-width
:
1
5
80px
;
min-width
:
1
2
80px
;
.content_item
{
.content_item
{
.content_right
{
.content_right
{
...
@@ -506,11 +506,11 @@ export default {
...
@@ -506,11 +506,11 @@ export default {
}
}
.contetn_wrap
{
.contetn_wrap
{
position
:
relative
;
position
:
relative
;
min-width
:
1
668
px
;
min-width
:
1
280
px
;
.wrap
{
.wrap
{
margin-top
:
12px
;
margin-top
:
12px
;
min-width
:
1
6
28px
;
min-width
:
1
2
28px
;
overflow
:
auto
;
overflow
:
auto
;
background
:
#FFFFFF
;
background
:
#FFFFFF
;
border-radius
:
4px
4px
4px
4px
;
border-radius
:
4px
4px
4px
4px
;
...
@@ -532,7 +532,7 @@ export default {
...
@@ -532,7 +532,7 @@ export default {
.infinite-list-item
{
.infinite-list-item
{
margin-right
:
16px
;
margin-right
:
16px
;
margin-top
:
16px
;
margin-top
:
16px
;
width
:
3
83px
;
width
:
2
83px
;
height
:
90px
;
height
:
90px
;
background
:
#FFFFFF
;
background
:
#FFFFFF
;
border-radius
:
0px
0px
0px
0px
;
border-radius
:
0px
0px
0px
0px
;
...
@@ -555,7 +555,7 @@ export default {
...
@@ -555,7 +555,7 @@ export default {
float
:
left
;
float
:
left
;
}
}
.name
{
.name
{
width
:
283
px
;
width
:
178
px
;
overflow
:
hidden
;
overflow
:
hidden
;
text-overflow
:
ellipsis
;
text-overflow
:
ellipsis
;
white-space
:
nowrap
;
white-space
:
nowrap
;
...
@@ -566,7 +566,7 @@ export default {
...
@@ -566,7 +566,7 @@ export default {
display
:
inline-block
;
display
:
inline-block
;
}
}
.name1
{
.name1
{
width
:
283
px
;
width
:
178
px
;
overflow
:
hidden
;
overflow
:
hidden
;
text-overflow
:
ellipsis
;
text-overflow
:
ellipsis
;
white-space
:
nowrap
;
white-space
:
nowrap
;
...
...
dsk-operate-ui/src/views/enterpriseData/components/Owner/index.vue
View file @
f0035f76
...
@@ -113,7 +113,7 @@
...
@@ -113,7 +113,7 @@
<div
class=
"bottomlist-title"
>
<div
class=
"bottomlist-title"
>
<div
class=
"bottomlist-title-left"
>
<div
class=
"bottomlist-title-left"
>
<p
class=
"title-left"
>
<p
class=
"title-left"
>
查询结果列表
<span
style=
"margin-right:4;color:rgba(35, 35, 35, 0.40);font-size: 18px;position: relative;top:2px;"
>
·
</span>
共有
{{
total
}}
条
</p>
</p>
<el-popover
v-model=
"fieldshow"
placement=
"bottom-start"
trigger=
"click"
<el-popover
v-model=
"fieldshow"
placement=
"bottom-start"
trigger=
"click"
popper-class=
"viewlist-el-popover"
>
popper-class=
"viewlist-el-popover"
>
...
@@ -132,7 +132,6 @@
...
@@ -132,7 +132,6 @@
<div
class=
"title-right"
>
<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>
<p>
<img
src=
"@/assets/images/EXCEL.png"
alt=
""
>
<img
src=
"@/assets/images/EXCEL.png"
alt=
""
>
<span
class=
"excel"
@
click=
"$message(
{message: '功能正在开发中',type: 'warning'})">导出EXCEL
</span>
<span
class=
"excel"
@
click=
"$message(
{message: '功能正在开发中',type: 'warning'})">导出EXCEL
</span>
...
@@ -1159,12 +1158,6 @@
...
@@ -1159,12 +1158,6 @@
.title-right
{
.title-right
{
display
:
flex
;
display
:
flex
;
align-items
:
center
;
align-items
:
center
;
p
:first-child
{
font-size
:
12px
;
font-weight
:
400
;
color
:
#3D3D3D
;
margin-right
:
10px
;
}
p
:last-child
{
p
:last-child
{
display
:
flex
;
display
:
flex
;
align-items
:
center
;
align-items
:
center
;
...
@@ -1186,14 +1179,11 @@
...
@@ -1186,14 +1179,11 @@
display
:
inline-flex
;;
display
:
inline-flex
;;
align-items
:
center
;
align-items
:
center
;
.title-left
{
.title-left
{
border-left
:
2px
solid
#445781
;
padding-left
:
8px
;
padding-right
:
32px
;
font-size
:
16px
;
height
:
16px
;
height
:
16px
;
line-height
:
16px
;
line-height
:
16px
;
font-weight
:
bold
;
font-size
:
12px
;
color
:
#232323
;
font-weight
:
400
;
color
:
#3D3D3D
;
}
}
}
}
.bottomlist-content
{
.bottomlist-content
{
...
...
dsk-operate-ui/src/views/enterpriseData/components/SearchEnterprise/index.vue
View file @
f0035f76
...
@@ -432,6 +432,9 @@
...
@@ -432,6 +432,9 @@
<div
class=
"bottomlist"
>
<div
class=
"bottomlist"
>
<div
class=
"bottomlist-title"
>
<div
class=
"bottomlist-title"
>
<div
class=
"bottomlist-title-left"
>
<div
class=
"bottomlist-title-left"
>
<p
class=
"title-left"
>
<span
style=
"margin-right:4;color:rgba(35, 35, 35, 0.40);font-size: 18px;position: relative;top:2px;"
>
·
</span>
共有{{total}}条
</p>
<el-popover
v-model=
"fieldshow"
placement=
"bottom-start"
trigger=
"click"
<el-popover
v-model=
"fieldshow"
placement=
"bottom-start"
trigger=
"click"
popper-class=
"viewlist-el-popover"
>
popper-class=
"viewlist-el-popover"
>
<ul
class=
"pup_list"
>
<ul
class=
"pup_list"
>
...
@@ -452,7 +455,6 @@
...
@@ -452,7 +455,6 @@
</div>
</div>
</div>
</div>
<div
class=
"title-right"
>
<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>
<p>
<img
src=
"@/assets/images/EXCEL.png"
alt=
""
>
<img
src=
"@/assets/images/EXCEL.png"
alt=
""
>
<span
class=
"excel"
@
click=
"$message({message: '功能正在开发中',type: 'warning'})"
>
导出EXCEL
</span>
<span
class=
"excel"
@
click=
"$message({message: '功能正在开发中',type: 'warning'})"
>
导出EXCEL
</span>
...
@@ -2989,16 +2991,16 @@
...
@@ -2989,16 +2991,16 @@
margin-top
:
12px
;
margin-top
:
12px
;
padding
:
16px
0px
;
padding
:
16px
0px
;
border-bottom
:
1px
solid
#EFEFEF
;
border-bottom
:
1px
solid
#EFEFEF
;
.title-left
{
.title-right
{
height
:
16px
;
display
:
flex
;
line-height
:
16px
;
align-items
:
center
;
p
:first-child
{
font-size
:
12px
;
font-size
:
12px
;
font-weight
:
400
;
font-weight
:
400
;
color
:
#3D3D3D
;
color
:
#3D3D3D
;
margin-right
:
10px
;
}
}
.title-right
{
display
:
flex
;
align-items
:
center
;
p
:last-child
{
p
:last-child
{
display
:
flex
;
display
:
flex
;
align-items
:
center
;
align-items
:
center
;
...
...
dsk-operate-ui/src/views/index.vue
View file @
f0035f76
...
@@ -71,8 +71,16 @@
...
@@ -71,8 +71,16 @@
<router-link
:to=
"`/groupAccount/$
{scope.row.combineId}?name=${scope.row.combineName}`" tag="a" class="a-link">
{{
scope
.
row
.
combineName
}}
</router-link>
<router-link
:to=
"`/groupAccount/$
{scope.row.combineId}?name=${scope.row.combineName}`" tag="a" class="a-link">
{{
scope
.
row
.
combineName
}}
</router-link>
</
template
>
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
prop=
"count"
label=
"中标数量(个)"
align=
"right"
sortable
width=
"150"
/>
<el-table-column
prop=
"count"
label=
"中标数量"
align=
"right"
sortable
width=
"150"
>
<el-table-column
prop=
"money"
label=
"中标金额(万元)"
align=
"right"
:sort-method=
"(a,b)=>{return a.money - b.money}"
sortable
/>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
count
}}
个
</
template
>
</el-table-column>
<el-table-column
prop=
"money"
label=
"中标金额"
align=
"right"
:sort-method=
"(a,b)=>{return a.money - b.money}"
sortable
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
money
}}
万元
</
template
>
</el-table-column>
</el-table>
</el-table>
</div>
</div>
</el-col>
</el-col>
...
@@ -140,8 +148,16 @@
...
@@ -140,8 +148,16 @@
<span
style=
"cursor: pointer;"
class=
"a-link companyName"
@
click=
"getUipIdByCid(scope.row.companyId)"
>
{{
scope
.
row
.
companyName
}}
</span>
<span
style=
"cursor: pointer;"
class=
"a-link companyName"
@
click=
"getUipIdByCid(scope.row.companyId)"
>
{{
scope
.
row
.
companyName
}}
</span>
</
template
>
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
prop=
"count"
label=
"中标数量(个)"
align=
"right"
sortable
width=
"150"
/>
<el-table-column
prop=
"count"
label=
"中标数量"
align=
"right"
sortable
width=
"150"
>
<el-table-column
prop=
"money"
label=
"中标金额(万元)"
align=
"right"
:sort-method=
"(a,b)=>{return a.money - b.money}"
sortable
/>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
count
}}
个
</
template
>
</el-table-column>
<el-table-column
prop=
"money"
label=
"中标金额"
align=
"right"
:sort-method=
"(a,b)=>{return a.money - b.money}"
sortable
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
money
}}
万元
</
template
>
</el-table-column>
</el-table>
</el-table>
</div>
</div>
</el-col>
</el-col>
...
@@ -1578,7 +1594,13 @@ export default {
...
@@ -1578,7 +1594,13 @@ export default {
.el-input__inner
{
.el-input__inner
{
height
:
32px
;
height
:
32px
;
line-height
:
32px
;
line-height
:
32px
;
border-radius
:
4px
border-radius
:
4px
;
border
:
0
;
}
}
.is-focus
{
.el-input__inner
{
background
:
#F4F6F9
;
}
}
}
}
...
...
dsk-operate-ui/src/views/macro/component/CustomTimeSelect.vue
View file @
f0035f76
...
@@ -256,6 +256,11 @@ export default {
...
@@ -256,6 +256,11 @@ export default {
width
:
120px
;
width
:
120px
;
height
:
34px
;
height
:
34px
;
.rote
{
.el-input__inner
{
background
:
#F4F6F9
;
}
}
.input-block
{
.input-block
{
width
:
100%
;
width
:
100%
;
height
:
100%
;
height
:
100%
;
...
@@ -269,6 +274,9 @@ export default {
...
@@ -269,6 +274,9 @@ export default {
>
.custom-time-input.el-input
{
>
.custom-time-input.el-input
{
width
:
100%
;
width
:
100%
;
height
:
100%
;
height
:
100%
;
.el-input__inner
{
border
:
0
;
}
>
input
{
>
input
{
width
:
100%
;
width
:
100%
;
height
:
100%
;
height
:
100%
;
...
@@ -303,10 +311,9 @@ export default {
...
@@ -303,10 +311,9 @@ export default {
font-size
:
14px
;
font-size
:
14px
;
color
:
#666666
;
color
:
#666666
;
background-color
:
#fff
;
background-color
:
#fff
;
border
:
1px
solid
#E4E7ED
;
padding
:
6px
0
;
border-radius
:
4px
;
border-radius
:
4px
;
z-index
:
10
;
z-index
:
10
;
box-shadow
:
0px
0px
4px
0px
rgba
(
0
,
0
,
0
,
0
.08
);
.option
{
.option
{
padding
:
0
24px
0
16px
;
padding
:
0
24px
0
16px
;
...
...
dsk-operate-ui/src/views/macro/economies/component/industrialStructure.vue
View file @
f0035f76
...
@@ -32,17 +32,17 @@
...
@@ -32,17 +32,17 @@
show-summary
show-summary
@
sort-change=
"sortChange"
@
sort-change=
"sortChange"
>
>
<el-table-column
label=
"序号"
width=
"
60
"
align=
"left"
>
<el-table-column
label=
"序号"
width=
"
55
"
align=
"left"
>
<template
slot-scope=
"scope"
>
{{
scope
.
$index
+
2
}}
</
template
>
<template
slot-scope=
"scope"
>
{{
scope
.
$index
+
2
}}
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
label=
"产业类型"
prop=
"projectType"
></el-table-column>
<el-table-column
label=
"产业类型"
prop=
"projectType"
></el-table-column>
<el-table-column
:label=
"oneYear"
>
<el-table-column
:label=
"oneYear"
>
<el-table-column
prop=
"money"
label=
"金额(亿元)"
sortable=
"custom"
:formatter=
"formatStatus"
></el-table-column>
<el-table-column
prop=
"money"
label=
"金额(亿元)"
sortable=
"custom"
:formatter=
"formatStatus"
min-width=
"115"
></el-table-column>
<el-table-column
prop=
"rate"
label=
"占比(%)"
:sort-method=
"(a,b)=>{return a.rate - b.rate}"
sortable
>
</el-table-column>
<el-table-column
prop=
"rate"
label=
"占比(%)"
:sort-method=
"(a,b)=>{return a.rate - b.rate}"
sortable
min-width=
"100"
>
</el-table-column>
</el-table-column>
</el-table-column>
<el-table-column
:label=
"twoYear"
>
<el-table-column
:label=
"twoYear"
>
<el-table-column
prop=
"lastMoney"
label=
"金额(亿元)"
sortable=
"custom"
:formatter=
"formatStatus"
>
</el-table-column>
<el-table-column
prop=
"lastMoney"
label=
"金额(亿元)"
sortable=
"custom"
:formatter=
"formatStatus"
min-width=
"115"
>
</el-table-column>
<el-table-column
prop=
"lastRate"
label=
"占比(%)"
:sort-method=
"(a,b)=>{return a.lastRate - b.lastRate}"
sortable
>
</el-table-column>
<el-table-column
prop=
"lastRate"
label=
"占比(%)"
:sort-method=
"(a,b)=>{return a.lastRate - b.lastRate}"
sortable
min-width=
"100"
>
</el-table-column>
</el-table-column>
</el-table-column>
</el-table>
</el-table>
</div>
</div>
...
@@ -393,7 +393,7 @@ export default {
...
@@ -393,7 +393,7 @@ export default {
th
:nth-child
(
4
)
{
th
:nth-child
(
4
)
{
border-right
:
0
;
border-right
:
0
;
.cell
{
.cell
{
padding-right
:
24px
!
important
;
/*padding-right: 24px !important;*/
}
}
}
}
td
:nth-child
(
6
)
{
td
:nth-child
(
6
)
{
...
...
dsk-operate-ui/src/views/macro/nationalEconomies/component/tdjy.vue
View file @
f0035f76
...
@@ -31,10 +31,10 @@
...
@@ -31,10 +31,10 @@
<template
slot-scope=
"scope"
>
{{
scope
.
$index
+
1
}}
</
template
>
<template
slot-scope=
"scope"
>
{{
scope
.
$index
+
1
}}
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
prop=
"type"
label=
"供应方式"
:formatter=
"formatStatus"
/>
<el-table-column
prop=
"type"
label=
"供应方式"
:formatter=
"formatStatus"
/>
<el-table-column
prop=
"count"
label=
"土地交易项目"
align=
"right"
:formatter=
"formatStatus"
sortable
>
<el-table-column
prop=
"count"
label=
"土地交易项目"
align=
"right"
:formatter=
"formatStatus"
sortable
min-width=
"120"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
count
}}
个
</
template
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
count
}}
个
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
prop=
"rate"
label=
"占比"
align=
"right"
:formatter=
"formatStatus"
width=
"
9
0"
>
<el-table-column
prop=
"rate"
label=
"占比"
align=
"right"
:formatter=
"formatStatus"
width=
"
8
0"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
rate
}}
%
</
template
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
rate
}}
%
</
template
>
</el-table-column>
</el-table-column>
</el-table>
</el-table>
...
@@ -74,10 +74,10 @@
...
@@ -74,10 +74,10 @@
<
template
slot-scope=
"scope"
>
{{
scope
.
$index
+
1
}}
</
template
>
<
template
slot-scope=
"scope"
>
{{
scope
.
$index
+
1
}}
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
prop=
"type"
label=
"供应方式"
:formatter=
"formatStatus"
/>
<el-table-column
prop=
"type"
label=
"供应方式"
:formatter=
"formatStatus"
/>
<el-table-column
prop=
"count"
label=
"土地交易项目"
align=
"right"
:formatter=
"formatStatus"
sortable
>
<el-table-column
prop=
"count"
label=
"土地交易项目"
align=
"right"
:formatter=
"formatStatus"
sortable
min-width=
"120"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
count
}}
个
</
template
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
count
}}
个
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
prop=
"rate"
label=
"占比"
align=
"right"
:formatter=
"formatStatus"
width=
"
9
0"
>
<el-table-column
prop=
"rate"
label=
"占比"
align=
"right"
:formatter=
"formatStatus"
width=
"
8
0"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
rate
}}
%
</
template
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
rate
}}
%
</
template
>
</el-table-column>
</el-table-column>
</el-table>
</el-table>
...
@@ -120,10 +120,10 @@
...
@@ -120,10 +120,10 @@
<
template
slot-scope=
"scope"
>
{{
scope
.
$index
+
1
}}
</
template
>
<
template
slot-scope=
"scope"
>
{{
scope
.
$index
+
1
}}
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
prop=
"province"
label=
"地区"
:formatter=
"formatStatus"
/>
<el-table-column
prop=
"province"
label=
"地区"
:formatter=
"formatStatus"
/>
<el-table-column
prop=
"count"
label=
"土地交易项目"
align=
"right"
:formatter=
"formatStatus"
sortable
>
<el-table-column
prop=
"count"
label=
"土地交易项目"
align=
"right"
:formatter=
"formatStatus"
sortable
min-width=
"120"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
count
}}
个
</
template
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
count
}}
个
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
prop=
"rate"
label=
"占比"
align=
"right"
:formatter=
"formatStatus"
width=
"
9
0"
>
<el-table-column
prop=
"rate"
label=
"占比"
align=
"right"
:formatter=
"formatStatus"
width=
"
8
0"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
rate
}}
%
</
template
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
rate
}}
%
</
template
>
</el-table-column>
</el-table-column>
</el-table>
</el-table>
...
@@ -159,10 +159,10 @@
...
@@ -159,10 +159,10 @@
<
template
slot-scope=
"scope"
>
{{
scope
.
$index
+
1
}}
</
template
>
<
template
slot-scope=
"scope"
>
{{
scope
.
$index
+
1
}}
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
prop=
"type"
label=
"年份"
:formatter=
"formatStatus"
/>
<el-table-column
prop=
"type"
label=
"年份"
:formatter=
"formatStatus"
/>
<el-table-column
prop=
"count"
label=
"土地交易项目"
align=
"right"
:formatter=
"formatStatus"
sortable
>
<el-table-column
prop=
"count"
label=
"土地交易项目"
align=
"right"
:formatter=
"formatStatus"
sortable
min-width=
"120"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
count
}}
个
</
template
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
count
}}
个
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
prop=
"rate"
label=
"占比"
align=
"right"
:formatter=
"formatStatus"
width=
"
9
0"
>
<el-table-column
prop=
"rate"
label=
"占比"
align=
"right"
:formatter=
"formatStatus"
width=
"
8
0"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
rate
}}
%
</
template
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
rate
}}
%
</
template
>
</el-table-column>
</el-table-column>
</el-table>
</el-table>
...
...
dsk-operate-ui/src/views/project/projectList/component/lxr.vue
View file @
f0035f76
...
@@ -143,21 +143,22 @@
...
@@ -143,21 +143,22 @@
<el-radio
label=
0
>
女
</el-radio>
<el-radio
label=
0
>
女
</el-radio>
</el-radio-group>
</el-radio-group>
</el-form-item>
</el-form-item>
<el-form-item
label=
"联系
人角色
:"
class=
"row"
>
<el-form-item
label=
"联系
方式
:"
class=
"row"
>
<el-input
type=
"text"
v-model=
"queryParam.role
"
placeholder=
"请输入"
></el-input>
<el-input
type=
"text"
maxlength=
"11"
@
input=
"inputphone"
v-model=
"queryParam.contactInformation
"
placeholder=
"请输入"
></el-input>
</el-form-item>
</el-form-item>
<el-form-item
label=
"关联企业:"
class=
"row"
v-if=
"thistype == 'project'"
>
<!--<el-form-item label="关联企业:" class="row" v-if="thistype == 'project'">-->
<el-form-item
label=
"关联企业:"
class=
"row"
>
<el-input
type=
"text"
v-model=
"queryParam.companyName"
placeholder=
"请输入"
></el-input>
<el-input
type=
"text"
v-model=
"queryParam.companyName"
placeholder=
"请输入"
></el-input>
</el-form-item>
</el-form-item>
<el-form-item
label=
"联系人角色:"
class=
"row"
>
<el-input
type=
"text"
v-model=
"queryParam.role"
placeholder=
"请输入"
></el-input>
</el-form-item>
<el-form-item
label=
"联系人职位:"
class=
"row"
>
<el-form-item
label=
"联系人职位:"
class=
"row"
>
<el-input
type=
"text"
v-model=
"queryParam.position"
placeholder=
"请输入"
></el-input>
<el-input
type=
"text"
v-model=
"queryParam.position"
placeholder=
"请输入"
></el-input>
</el-form-item>
</el-form-item>
<!--<el-form-item label="内部维护人:" class="row">-->
<!--<el-form-item label="内部维护人:" class="row">-->
<!--<el-input type="text" v-model="queryParam.accendant" placeholder="请输入"></el-input>-->
<!--<el-input type="text" v-model="queryParam.accendant" placeholder="请输入"></el-input>-->
<!--</el-form-item>-->
<!--</el-form-item>-->
<el-form-item
label=
"联系方式:"
class=
"row"
>
<el-input
type=
"text"
maxlength=
"11"
@
input=
"inputphone"
v-model=
"queryParam.contactInformation"
placeholder=
"请输入"
></el-input>
</el-form-item>
<el-form-item
label=
"备注:"
class=
"row"
>
<el-form-item
label=
"备注:"
class=
"row"
>
<el-input
<el-input
type=
"textarea"
type=
"textarea"
...
@@ -339,14 +340,17 @@
...
@@ -339,14 +340,17 @@
position
:
""
,
position
:
""
,
contactInformation
:
""
,
contactInformation
:
""
,
remark
:
""
,
remark
:
""
,
companyName
:
""
,
// accendant:"",
// accendant:"",
}
}
if
(
this
.
thistype
==
'project'
){
if
(
this
.
thistype
==
'project'
){
this
.
queryParam
.
businessId
=
this
.
searchParam
.
businessId
this
.
queryParam
.
businessId
=
this
.
searchParam
.
businessId
this
.
companyName
=
""
this
.
companyName
=
""
this
.
queryParam
.
companyName
=
this
.
$route
.
query
.
projectname
}
}
if
(
this
.
thistype
==
'custom'
){
if
(
this
.
thistype
==
'custom'
){
this
.
queryParam
.
customerId
=
this
.
searchParam
.
customerId
this
.
queryParam
.
customerId
=
this
.
searchParam
.
customerId
this
.
queryParam
.
companyName
=
this
.
customname
}
}
},
},
}
}
...
...
dsk-operate-ui/src/views/project/projectList/component/xgqy.vue
View file @
f0035f76
<
template
>
<
template
>
<div>
<div>
<el-card
class=
"box-card noborder"
>
<el-card
class=
"box-card noborder"
>
<div
class=
"cardtitles"
>
相关企业
</div>
<div
class=
"cardtitles"
>
相关企业
</div>
<div
class=
"searchbtns"
>
<div
class=
"searchbtns"
>
<el-select
class=
"select"
placeholder=
"企业类型"
clearable
v-model=
"searchParam.companyRole"
@
change=
"handleCurrentChange(1)"
>
<el-select
class=
"select"
placeholder=
"企业类型"
clearable
v-model=
"searchParam.companyRole"
@
change=
"handleCurrentChange(1)"
>
...
@@ -9,8 +9,8 @@
...
@@ -9,8 +9,8 @@
</el-select>
</el-select>
<div
class=
"searchInput small"
>
<div
class=
"searchInput small"
>
<el-input
type=
"text"
placeholder=
"输入关键词查询"
clearable
v-model=
"searchParam.companyName"
>
<el-input
type=
"text"
placeholder=
"输入关键词查询"
clearable
v-model=
"searchParam.companyName"
>
<i
slot=
"prefix"
class=
"el-input__icon"
><img
src=
"@/assets/images/project/sousuo.png"
></i></el-input>
<i
slot=
"prefix"
class=
"el-input__icon"
><img
src=
"@/assets/images/project/sousuo.png"
@
click=
"handleCurrentChange(1)"
></i></el-input>
<
div
class=
"btn"
@
click=
"handleCurrentChange(1)"
>
搜索
</div
>
<
!--
<div
class=
"btn"
@
click=
"handleCurrentChange(1)"
>
搜索
</div>
--
>
</div>
</div>
<div
class=
"btn btn_primary h32 b3"
@
click=
"opennew"
v-if=
"isDisableds == false"
><div
class=
"img img1"
></div>
添加相关企业
</div>
<div
class=
"btn btn_primary h32 b3"
@
click=
"opennew"
v-if=
"isDisableds == false"
><div
class=
"img img1"
></div>
添加相关企业
</div>
</div>
</div>
...
...
dsk-operate-ui/src/views/project/projectList/component/zlwd.vue
View file @
f0035f76
...
@@ -7,9 +7,9 @@
...
@@ -7,9 +7,9 @@
<!--
<div
class=
"searchbtns"
v-if=
"fileDatas.rows != null && fileDatas.rows.length>0"
>
-->
<!--
<div
class=
"searchbtns"
v-if=
"fileDatas.rows != null && fileDatas.rows.length>0"
>
-->
<div
class=
"searchInput small"
>
<div
class=
"searchInput small"
>
<el-input
type=
"text"
v-model=
"param.keyword"
clearable
placeholder=
"输入关键词查询"
>
<el-input
type=
"text"
v-model=
"param.keyword"
clearable
placeholder=
"输入关键词查询"
>
<i
slot=
"prefix"
class=
"el-input__icon"
><img
src=
"@/assets/images/project/sousuo.png"
></i>
<i
slot=
"prefix"
class=
"el-input__icon"
><img
src=
"@/assets/images/project/sousuo.png"
@
click=
"handleCurrentChange(1)"
></i>
</el-input>
</el-input>
<
div
class=
"btn"
@
click=
"handleCurrentChange(1)"
>
搜索
</div
>
<
!--
<div
class=
"btn"
@
click=
"handleCurrentChange(1)"
>
搜索
</div>
--
>
</div>
</div>
<!--
<div
class=
"btn btn_primary h32 b2"
@
click=
"getUP"
v-if=
"fileDatas.total>0"
><div
class=
"img img2"
></div>
上传
</div>
-->
<!--
<div
class=
"btn btn_primary h32 b2"
@
click=
"getUP"
v-if=
"fileDatas.total>0"
><div
class=
"img img2"
></div>
上传
</div>
-->
...
...
dsk-operate-ui/src/views/project/projectList/detail.vue
View file @
f0035f76
...
@@ -105,7 +105,7 @@
...
@@ -105,7 +105,7 @@
</div>
</div>
</el-card>
</el-card>
<el-card
class=
"box-card noborder"
>
<el-card
class=
"box-card noborder
top12"
style=
"margin-bottom: 12px
"
>
<div
class=
"tabslist"
>
<div
class=
"tabslist"
>
<div
class=
"tab"
v-for=
"(item,index) in tabslist"
:class=
"{'on':thistag == item.tag}"
@
click=
"getCom(item.tag)"
>
<div
class=
"tab"
v-for=
"(item,index) in tabslist"
:class=
"{'on':thistag == item.tag}"
@
click=
"getCom(item.tag)"
>
<span>
{{item.name}}
</span>
<span>
{{item.name}}
</span>
...
...
dsk-operate-ui/src/views/project/projectList/index.vue
View file @
f0035f76
...
@@ -110,8 +110,8 @@
...
@@ -110,8 +110,8 @@
</el-tabs>
</el-tabs>
</el-card>
</el-card>
<el-card
class=
"box-card noborder overflows"
>
<el-card
class=
"box-card noborder overflows
top12
"
>
<div
class=
"titles"
>
项目明细
<div
class=
"titles"
>
<!--项目明细-->
<div
class=
"dc"
>
<div
class=
"dc"
>
<div
class=
"total"
>
共
{{
total
}}
条
</div>
<div
class=
"total"
>
共
{{
total
}}
条
</div>
<!--
<el-tooltip
class=
"item"
effect=
"dark"
content=
"功能正在开发中"
placement=
"top"
>
-->
<!--
<el-tooltip
class=
"item"
effect=
"dark"
content=
"功能正在开发中"
placement=
"top"
>
-->
...
@@ -573,8 +573,9 @@ export default {
...
@@ -573,8 +573,9 @@ export default {
height
:
60px
;
height
:
60px
;
line-height
:
64px
;
line-height
:
64px
;
border-bottom
:
1px
solid
#EFEFEF
;
border-bottom
:
1px
solid
#EFEFEF
;
padding-left
:
26px
;
padding-left
:
2px
;
&
:
:
after
{
padding-right
:
24px
;
/*&::after{
content: " ";
content: " ";
width: 2px;
width: 2px;
height: 14px;
height: 14px;
...
@@ -582,13 +583,13 @@ export default {
...
@@ -582,13 +583,13 @@ export default {
float: left;
float: left;
margin-left: -10px;
margin-left: -10px;
margin-top: 24px;
margin-top: 24px;
}
}
*/
.dc
{
.dc
{
width
:
100%
;
float
:
right
;
float
:
right
;
font-size
:
12px
;
font-size
:
12px
;
color
:
#3D3D3D
;
color
:
#3D3D3D
;
font-weight
:
400
;
font-weight
:
400
;
padding-right
:
24px
;
position
:
relative
;
position
:
relative
;
&
:
:
after
{
&
:
:
after
{
content
:
' '
;
content
:
' '
;
...
@@ -604,6 +605,10 @@ export default {
...
@@ -604,6 +605,10 @@ export default {
display
:
inline-block
;
display
:
inline-block
;
margin-left
:
20px
;
margin-left
:
20px
;
}
}
.btn-export
{
float
:
right
;
margin-top
:
18px
;
}
}
}
}
}
.datalist
{
.datalist
{
...
@@ -641,6 +646,9 @@ export default {
...
@@ -641,6 +646,9 @@ export default {
.delform
{
.delform
{
right
:
16px
;
right
:
16px
;
top
:
-94px
;
top
:
-94px
;
.btnsmall
{
margin-top
:
0
;
}
}
}
&
:hover
{
&
:hover
{
background-color
:
#F6F9FC
;
background-color
:
#F6F9FC
;
...
...
dsk-operate-ui/src/views/radar/components/BidRecord/index.vue
View file @
f0035f76
...
@@ -121,11 +121,10 @@
...
@@ -121,11 +121,10 @@
<div
class=
"bottomlist-title"
>
<div
class=
"bottomlist-title"
>
<div
class=
"bottomlist-title-left"
>
<div
class=
"bottomlist-title-left"
>
<p
class=
"title-left"
>
<p
class=
"title-left"
>
查询结果
<span
style=
"margin-right:4;color:rgba(35, 35, 35, 0.40);font-size: 18px;position: relative;top:2px;"
>
·
</span>
共有
{{
total
}}
条
</p>
</p>
</div>
</div>
<div
class=
"title-right"
>
<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>
<p>
<img
src=
"@/assets/images/EXCEL.png"
alt=
""
>
<img
src=
"@/assets/images/EXCEL.png"
alt=
""
>
<span
class=
"excel"
@
click=
"$message(
{message: '功能正在开发中',type: 'warning'})">导出EXCEL
</span>
<span
class=
"excel"
@
click=
"$message(
{message: '功能正在开发中',type: 'warning'})">导出EXCEL
</span>
...
@@ -964,12 +963,7 @@ export default {
...
@@ -964,12 +963,7 @@ export default {
.title-right
{
.title-right
{
display
:
flex
;
display
:
flex
;
align-items
:
center
;
align-items
:
center
;
p
:first-child
{
font-size
:
12px
;
font-weight
:
400
;
color
:
#3D3D3D
;
margin-right
:
10px
;
}
p
:last-child
{
p
:last-child
{
display
:
flex
;
display
:
flex
;
align-items
:
center
;
align-items
:
center
;
...
@@ -989,14 +983,11 @@ export default {
...
@@ -989,14 +983,11 @@ export default {
display
:
inline-flex
;;
display
:
inline-flex
;;
align-items
:
center
;
align-items
:
center
;
.title-left
{
.title-left
{
border-left
:
2px
solid
#445781
;
padding-left
:
8px
;
padding-right
:
32px
;
font-size
:
16px
;
height
:
16px
;
height
:
16px
;
line-height
:
16px
;
line-height
:
16px
;
font-weight
:
bold
;
font-size
:
12px
;
color
:
#232323
;
font-weight
:
400
;
color
:
#3D3D3D
;
}
}
}
}
}
}
...
...
dsk-operate-ui/src/views/radar/components/Bidding/index.vue
View file @
f0035f76
...
@@ -206,11 +206,10 @@
...
@@ -206,11 +206,10 @@
<div
class=
"bottomlist-title"
>
<div
class=
"bottomlist-title"
>
<div
class=
"bottomlist-title-left"
>
<div
class=
"bottomlist-title-left"
>
<p
class=
"title-left"
>
<p
class=
"title-left"
>
查询结果
<span
style=
"margin-right:4;color:rgba(35, 35, 35, 0.40);font-size: 18px;position: relative;top:2px;"
>
·
</span>
共有
{{
total
}}
条
</p>
</p>
</div>
</div>
<div
class=
"title-right"
>
<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>
<p>
<img
src=
"@/assets/images/EXCEL.png"
alt=
""
>
<img
src=
"@/assets/images/EXCEL.png"
alt=
""
>
<span
class=
"excel"
@
click=
"$message(
{message: '功能正在开发中',type: 'warning'})">导出EXCEL
</span>
<span
class=
"excel"
@
click=
"$message(
{message: '功能正在开发中',type: 'warning'})">导出EXCEL
</span>
...
@@ -1163,25 +1162,16 @@ export default {
...
@@ -1163,25 +1162,16 @@ export default {
display
:
inline-flex
;;
display
:
inline-flex
;;
align-items
:
center
;
align-items
:
center
;
.title-left
{
.title-left
{
border-left
:
2px
solid
#445781
;
padding-left
:
8px
;
padding-right
:
32px
;
font-size
:
16px
;
height
:
16px
;
height
:
16px
;
line-height
:
16px
;
line-height
:
16px
;
font-weight
:
bold
;
font-size
:
12px
;
color
:
#232323
;
font-weight
:
400
;
color
:
#3D3D3D
;
}
}
}
}
.title-right
{
.title-right
{
display
:
flex
;
display
:
flex
;
align-items
:
center
;
align-items
:
center
;
p
:first-child
{
font-size
:
12px
;
font-weight
:
400
;
color
:
#3D3D3D
;
margin-right
:
10px
;
}
p
:last-child
{
p
:last-child
{
display
:
flex
;
display
:
flex
;
align-items
:
center
;
align-items
:
center
;
...
...
dsk-operate-ui/src/views/radar/components/Establishment/index.vue
View file @
f0035f76
...
@@ -177,11 +177,10 @@
...
@@ -177,11 +177,10 @@
<div
class=
"bottomlist-title"
>
<div
class=
"bottomlist-title"
>
<div
class=
"bottomlist-title-left"
>
<div
class=
"bottomlist-title-left"
>
<p
class=
"title-left"
>
<p
class=
"title-left"
>
查询结果
<span
style=
"margin-right:4;color:rgba(35, 35, 35, 0.40);font-size: 18px;position: relative;top:2px;"
>
·
</span>
共有
{{
total
}}
条
</p>
</p>
</div>
</div>
<div
class=
"title-right"
>
<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>
<p>
<img
src=
"@/assets/images/EXCEL.png"
alt=
""
>
<img
src=
"@/assets/images/EXCEL.png"
alt=
""
>
<span
class=
"excel"
@
click=
"$message(
{message: '功能正在开发中',type: 'warning'})">导出EXCEL
</span>
<span
class=
"excel"
@
click=
"$message(
{message: '功能正在开发中',type: 'warning'})">导出EXCEL
</span>
...
@@ -1256,12 +1255,7 @@
...
@@ -1256,12 +1255,7 @@
.title-right
{
.title-right
{
display
:
flex
;
display
:
flex
;
align-items
:
center
;
align-items
:
center
;
p
:first-child
{
font-size
:
12px
;
font-weight
:
400
;
color
:
#3D3D3D
;
margin-right
:
10px
;
}
p
:last-child
{
p
:last-child
{
display
:
flex
;
display
:
flex
;
align-items
:
center
;
align-items
:
center
;
...
@@ -1281,14 +1275,11 @@
...
@@ -1281,14 +1275,11 @@
display
:
inline-flex
;;
display
:
inline-flex
;;
align-items
:
center
;
align-items
:
center
;
.title-left
{
.title-left
{
border-left
:
2px
solid
#445781
;
padding-left
:
8px
;
padding-right
:
32px
;
font-size
:
16px
;
height
:
16px
;
height
:
16px
;
line-height
:
16px
;
line-height
:
16px
;
font-weight
:
bold
;
font-size
:
12px
;
color
:
#232323
;
font-weight
:
400
;
color
:
#3D3D3D
;
}
}
}
}
}
}
...
...
dsk-operate-ui/src/views/radar/components/Land/index.vue
View file @
f0035f76
...
@@ -204,7 +204,7 @@
...
@@ -204,7 +204,7 @@
<div
class=
"bottomlist-title"
>
<div
class=
"bottomlist-title"
>
<div
class=
"bottomlist-title-left"
>
<div
class=
"bottomlist-title-left"
>
<p
class=
"title-left"
>
<p
class=
"title-left"
>
查询结果
<span
style=
"margin-right:4;color:rgba(35, 35, 35, 0.40);font-size: 18px;position: relative;top:2px;"
>
·
</span>
共有
{{
total
}}
条
</p>
</p>
<el-popover
v-model=
"fieldshow"
placement=
"bottom-start"
trigger=
"click"
<el-popover
v-model=
"fieldshow"
placement=
"bottom-start"
trigger=
"click"
popper-class=
"viewlist-el-popover"
>
popper-class=
"viewlist-el-popover"
>
...
@@ -221,7 +221,6 @@
...
@@ -221,7 +221,6 @@
</el-popover>
</el-popover>
</div>
</div>
<div
class=
"title-right"
>
<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>
<p>
<img
src=
"@/assets/images/EXCEL.png"
alt=
""
>
<img
src=
"@/assets/images/EXCEL.png"
alt=
""
>
<span
class=
"excel"
@
click=
"$message(
{message: '功能正在开发中',type: 'warning'})">导出EXCEL
</span>
<span
class=
"excel"
@
click=
"$message(
{message: '功能正在开发中',type: 'warning'})">导出EXCEL
</span>
...
@@ -1053,25 +1052,17 @@
...
@@ -1053,25 +1052,17 @@
display
:
inline-flex
;;
display
:
inline-flex
;;
align-items
:
center
;
align-items
:
center
;
.title-left
{
.title-left
{
border-left
:
2px
solid
#445781
;
padding-left
:
8px
;
padding-right
:
32px
;
font-size
:
16px
;
height
:
16px
;
height
:
16px
;
line-height
:
16px
;
line-height
:
16px
;
font-weight
:
bold
;
font-size
:
12px
;
color
:
#232323
;
font-weight
:
400
;
color
:
#3D3D3D
;
}
}
}
}
.title-right
{
.title-right
{
display
:
flex
;
display
:
flex
;
align-items
:
center
;
align-items
:
center
;
p
:first-child
{
font-size
:
12px
;
font-weight
:
400
;
color
:
#3D3D3D
;
margin-right
:
10px
;
}
p
:last-child
{
p
:last-child
{
display
:
flex
;
display
:
flex
;
align-items
:
center
;
align-items
:
center
;
...
...
dsk-operate-ui/src/views/radar/components/MajorProject/index.vue
View file @
f0035f76
...
@@ -123,7 +123,7 @@
...
@@ -123,7 +123,7 @@
<div
class=
"bottomlist-title"
>
<div
class=
"bottomlist-title"
>
<div
class=
"bottomlist-title-left"
>
<div
class=
"bottomlist-title-left"
>
<p
class=
"title-left"
>
<p
class=
"title-left"
>
查询结果
<span
style=
"margin-right:4;color:rgba(35, 35, 35, 0.40);font-size: 18px;position: relative;top:2px;"
>
·
</span>
共有{{total}}条
</p>
</p>
<el-popover
v-model=
"fieldshow"
placement=
"bottom-start"
trigger=
"click"
popper-class=
"viewlist-el-popover"
>
<el-popover
v-model=
"fieldshow"
placement=
"bottom-start"
trigger=
"click"
popper-class=
"viewlist-el-popover"
>
<ul
class=
"pup_list pup_zhclist"
>
<ul
class=
"pup_list pup_zhclist"
>
...
@@ -137,10 +137,9 @@
...
@@ -137,10 +137,9 @@
</el-popover>
</el-popover>
</div>
</div>
<div
class=
"title-right"
>
<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
v-hasPermi=
"['radar:export:important']"
>
<p
v-hasPermi=
"['radar:export:important']"
>
<img
src=
"@/assets/images/EXCEL.png"
alt=
""
>
<img
src=
"@/assets/images/EXCEL.png"
alt=
""
>
<span
class=
"excel"
@
click=
"
search('','','export')
"
>
导出EXCEL
</span>
<span
class=
"excel"
@
click=
"
clickDialog
"
>
导出EXCEL
</span>
</p>
</p>
</div>
</div>
...
@@ -232,8 +231,54 @@
...
@@ -232,8 +231,54 @@
:total=
"total>limit*500?501*limit:total"
>
:total=
"total>limit*500?501*limit:total"
>
</el-pagination>
</el-pagination>
</div>
</div>
</div>
</div>
<el-dialog
:visible
.
sync=
"dialogExportVisible"
width=
"640px"
append-to-body
class=
"dialogExport"
>
<
template
slot=
"title"
>
<img
class=
"tip-img"
src=
"@/assets/images/icon.png"
/>
数据导出
</
template
>
<div
class=
"table-item"
>
<el-table
:data=
"exportTableData"
>
<el-table-column
prop=
"buildingProjectType"
label=
"项目类型"
width=
"80"
></el-table-column>
<el-table-column
prop=
"projectName"
label=
"项目名称"
width=
"220"
></el-table-column>
<el-table-column
prop=
"chargeDepartment"
label=
"主管部门"
min-width=
"170"
></el-table-column>
<el-table-column
prop=
"constructUnit"
label=
"项目法人"
min-width=
"170"
></el-table-column>
<el-table-column
prop=
"projectTotalInvestment"
label=
"项目投资额"
min-width=
"100"
></el-table-column>
<el-table-column
prop=
"domicile"
label=
"项目地区"
min-width=
"80"
></el-table-column>
<el-table-column
prop=
"projectScale"
label=
"建设规模"
min-width=
"430"
></el-table-column>
<el-table-column
prop=
"fileTitle"
label=
"附件名称"
min-width=
"200"
></el-table-column>
<el-table-column
prop=
"fileUrl"
label=
"附件链接"
min-width=
"360"
></el-table-column>
</el-table>
</div>
<div
class=
"input"
>
导出数量:
<el-input
placeholder=
""
v-model=
"value"
oninput=
"value=value.replace(/[^\d]/g,'')"
>
<
template
slot=
"append"
>
条
</
template
>
</el-input>
<p
v-if=
"value > 2000"
><i
class=
"el-icon-error"
></i>
最多支持导出2000条,如需更多联系大司空客服人员
</p>
</div>
<div
slot=
"footer"
class=
"dialog-footer"
>
<el-button
type=
"primary"
@
click=
"clickEXCEL"
>
确认导出
</el-button>
<el-button
@
click=
"cancel"
>
取消
</el-button>
</div>
</el-dialog>
<el-dialog
:visible
.
sync=
"dialogExportVisible1"
width=
"640px"
append-to-body
class=
"dialogExport"
>
<
template
slot=
"title"
>
<img
class=
"tip-img"
src=
"@/assets/images/icon.png"
/>
数据导出
</
template
>
<div
class=
"content"
>
<img
class=
"success"
src=
"@/assets/images/success.png"
/>
<p
class=
"p1"
>
导出成功
</p>
<p
class=
"p2"
>
可在个人中心查看导出表格
<span
@
click=
"toUrl"
>
前往个人中心
</span>
</p>
</div>
<div
slot=
"footer"
class=
"dialog-footer"
>
<el-button
type=
"primary"
@
click=
"downloadFile(exportData.url,exportData.originalName)"
>
下载表格
</el-button>
<el-button
@
click=
"dialogExportVisible1 = false"
>
取消
</el-button>
</div>
</el-dialog>
</div>
</div>
</template>
</template>
...
@@ -243,11 +288,36 @@ import {encodeStr} from "@/assets/js/common.js"
...
@@ -243,11 +288,36 @@ import {encodeStr} from "@/assets/js/common.js"
import
skeleton
from
'@/views/project/projectList/component/skeleton'
import
skeleton
from
'@/views/project/projectList/component/skeleton'
import
api
from
'@/api/radar/radar.js'
;
import
api
from
'@/api/radar/radar.js'
;
export
default
{
export
default
{
name
:
'
BidRecord
'
,
name
:
'
MajorProject
'
,
components
:{
skeleton
},
components
:{
skeleton
},
data
()
{
data
()
{
return
{
return
{
encodeStr
,
encodeStr
,
dialogExportVisible1
:
false
,
exportTableData
:[
{
"domicile"
:
"江津区"
,
"chargeDepartment"
:
"兴庆区商合局"
,
"constructUnit"
:
'鞍钢股份有限公司'
,
"projectScale"
:
"项目建设规划总面积约3000亩,其中商住用地面积2000亩,文化旅游综合用地约1000亩,打造集“市井民俗文化体验、休闲度假、亲子研学等”为一体的复合型文化旅游目的地,企业已完成项目规划方案。"
,
"fileTitle"
:
"宁夏回族自治区银川市2023年度重点项目清单.pdf"
,
"fileUrl"
:
"http://file.jiansheku.com/key_project/b9e22fbf2e409642aa97f8238e934272.pdf"
,
"buildingProjectType"
:
"房建工程"
,
"projectTotalInvestment"
:
"70000万元"
,
"projectName"
:
"'上河堡'文旅综合体项目"
,
},
{
"domicile"
:
"江津区"
,
"chargeDepartment"
:
"国网重庆江津区供电公司"
,
"constructUnit"
:
'国网重庆江津区供电公司'
,
"projectScale"
:
"新建110kV变电站1座,主变容量2*50MVA,新建110kV线路20km"
,
"fileTitle"
:
"重庆市江津区2023年度重点项目清单.xlsx"
,
"fileUrl"
:
"http://file.jiansheku.com/key_project/4080bef69da03056d1db953698f4d807.xlsx"
,
"buildingProjectType"
:
"电力工程"
,
"projectTotalInvestment"
:
"5500万元"
,
"projectName"
:
"重庆江津李市110kV输变电工程"
,
}],
exportData
:{},
fieldshow
:
false
,
fieldshow
:
false
,
fieldText
:
'默认排序'
,
fieldText
:
'默认排序'
,
field
:
'year'
,
//查询结果排序方式
field
:
'year'
,
//查询结果排序方式
...
@@ -371,7 +441,9 @@ export default {
...
@@ -371,7 +441,9 @@ export default {
total
:
0
,
total
:
0
,
page
:
1
,
page
:
1
,
limit
:
20
,
limit
:
20
,
dataEXCEL
:{}
dataEXCEL
:{},
dialogExportVisible
:
false
,
value
:
''
};
};
},
},
mounted
()
{
mounted
()
{
...
@@ -446,15 +518,7 @@ export default {
...
@@ -446,15 +518,7 @@ export default {
},
},
importantProjectDto
:
data
,
importantProjectDto
:
data
,
};
};
if
(
exportFlag
){
this
.
dataEXCEL
=
params
this
.
dataEXCEL
=
params
if
(
this
.
total
>
2000
){
this
.
dataEXCEL
.
page
.
limit
=
2000
;
}
else
{
this
.
dataEXCEL
.
page
.
limit
=
this
.
total
;
}
this
.
$download
.
exportByPost
(
'/radar/export/important'
,
this
.
dataEXCEL
,
'重点项目清单.xlsx'
);
}
else
{
api
.
getImportantPage
(
params
).
then
(
res
=>
{
api
.
getImportantPage
(
params
).
then
(
res
=>
{
this
.
isSkeleton
=
false
;
this
.
isSkeleton
=
false
;
if
(
res
.
code
==
200
)
{
if
(
res
.
code
==
200
)
{
...
@@ -467,7 +531,7 @@ export default {
...
@@ -467,7 +531,7 @@ export default {
});
});
}
},
},
getUipIdByCid
(
companyId
){
getUipIdByCid
(
companyId
){
...
@@ -673,6 +737,52 @@ export default {
...
@@ -673,6 +737,52 @@ export default {
this
.
fieldOptions
[
index
].
status
=
true
;
this
.
fieldOptions
[
index
].
status
=
true
;
this
.
search
();
this
.
search
();
},
},
clickDialog
(){
this
.
dialogExportVisible
=
true
;
},
clickEXCEL
()
{
if
(
this
.
value
>
2000
){
return
}
this
.
dialogExportVisible
=
false
;
if
(
this
.
value
){
this
.
dataEXCEL
.
page
.
limit
=
this
.
value
}
else
{
this
.
dataEXCEL
.
page
.
limit
=
this
.
total
>
2000
?
2000
:
this
.
total
;
}
delete
this
.
dataEXCEL
.
page
.
page
api
.
radarExport
(
this
.
dataEXCEL
).
then
(
res
=>
{
if
(
res
.
code
===
200
){
this
.
dialogExportVisible1
=
true
;
this
.
value
=
''
this
.
exportData
=
res
.
data
;
}
})
},
cancel
(){
this
.
dialogExportVisible
=
false
this
.
value
=
''
},
downloadFile
(
url
,
fileName
)
{
const
x
=
new
XMLHttpRequest
()
x
.
open
(
"GET"
,
url
,
true
)
x
.
responseType
=
'blob'
x
.
onload
=
function
(
e
)
{
const
url
=
window
.
URL
.
createObjectURL
(
x
.
response
)
const
a
=
document
.
createElement
(
'a'
)
a
.
href
=
url
a
.
download
=
fileName
a
.
click
()
a
.
remove
()
}
x
.
send
()
},
toUrl
(){
this
.
dialogExportVisible1
=
false
;
this
.
$router
.
push
({
path
:
'/user/profile'
,
})
},
},
},
};
};
</
script
>
</
script
>
...
@@ -807,12 +917,7 @@ export default {
...
@@ -807,12 +917,7 @@ export default {
.title-right
{
.title-right
{
display
:
flex
;
display
:
flex
;
align-items
:
center
;
align-items
:
center
;
p
:first-child
{
font-size
:
12px
;
font-weight
:
400
;
color
:
#3D3D3D
;
margin-right
:
10px
;
}
p
:last-child
{
p
:last-child
{
display
:
flex
;
display
:
flex
;
align-items
:
center
;
align-items
:
center
;
...
@@ -832,14 +937,11 @@ export default {
...
@@ -832,14 +937,11 @@ export default {
display
:
inline-flex
;;
display
:
inline-flex
;;
align-items
:
center
;
align-items
:
center
;
.title-left
{
.title-left
{
border-left
:
2px
solid
#445781
;
padding-left
:
8px
;
padding-right
:
32px
;
font-size
:
16px
;
height
:
16px
;
height
:
16px
;
line-height
:
16px
;
line-height
:
16px
;
font-weight
:
bold
;
font-size
:
12px
;
color
:
#232323
;
font-weight
:
400
;
color
:
#3D3D3D
;
}
}
}
}
}
}
...
@@ -948,6 +1050,92 @@ export default {
...
@@ -948,6 +1050,92 @@ export default {
.jabph_popper_box
{
.jabph_popper_box
{
left
:
101px
;
left
:
101px
;
}
}
.dialogExport
{
::v-deep
.el-dialog
{
.el-dialog__header
{
height
:
48px
;
line-height
:
48px
;
padding
:
0
16px
;
border-bottom
:
1px
solid
#E1E1E1
;
font-weight
:
bold
;
color
:
#1D2129
;
font-size
:
16px
;
.tip-img
{
width
:
18px
;
height
:
18px
;
margin-right
:
7px
;
margin-bottom
:
-3px
;
}
.el-dialog__headerbtn
{
font-size
:
20px
;
font-weight
:
bold
;
top
:
15px
;
.el-dialog__close
{
color
:
#999999
;
}
}
}
.el-dialog__body
{
padding
:
16px
;
.input
{
margin-top
:
16px
;
.el-input
{
width
:
160px
;
border-radius
:
2px
;
height
:
32px
;
.el-input__inner
{
height
:
32px
;
line-height
:
32px
;
}
}
.el-input-group__append
{
padding
:
0
14px
;
}
p
{
color
:
#FF3C3C
;
font-size
:
12px
;
margin-left
:
12px
;
display
:
inline-block
;
i
{
font-size
:
14px
;
margin-right
:
4px
;
}
}
}
.content
{
text-align
:
center
;
margin-top
:
36px
;
.success
{
width
:
64px
;
height
:
64px
;
margin-bottom
:
16px
;
}
p
{
padding
:
0
;
margin
:
0
;
}
.p1
{
color
:
#232323
;
font-size
:
16px
;
margin-bottom
:
8px
;
}
.p2
{
color
:
rgba
(
35
,
35
,
35
,
0
.4
);
font-size
:
14px
;
span
{
color
:
#0081FF
;
cursor
:
pointer
;
}
}
}
}
.el-dialog__footer
{
text-align
:
center
;
padding-bottom
:
24px
;
}
}
}
</
style
>
</
style
>
dsk-operate-ui/src/views/radar/components/Tender/index.vue
View file @
f0035f76
...
@@ -179,11 +179,10 @@
...
@@ -179,11 +179,10 @@
<div
class=
"bottomlist-title"
>
<div
class=
"bottomlist-title"
>
<div
class=
"bottomlist-title-left"
>
<div
class=
"bottomlist-title-left"
>
<p
class=
"title-left"
>
<p
class=
"title-left"
>
查询结果
<span
style=
"margin-right:4;color:rgba(35, 35, 35, 0.40);font-size: 18px;position: relative;top:2px;"
>
·
</span>
共有
{{
total
}}
条
</p>
</p>
</div>
</div>
<div
class=
"title-right"
>
<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>
<p>
<img
src=
"@/assets/images/EXCEL.png"
alt=
""
>
<img
src=
"@/assets/images/EXCEL.png"
alt=
""
>
<span
class=
"excel"
@
click=
"$message(
{message: '功能正在开发中',type: 'warning'})">导出EXCEL
</span>
<span
class=
"excel"
@
click=
"$message(
{message: '功能正在开发中',type: 'warning'})">导出EXCEL
</span>
...
@@ -1257,25 +1256,17 @@
...
@@ -1257,25 +1256,17 @@
display
:
inline-flex
;;
display
:
inline-flex
;;
align-items
:
center
;
align-items
:
center
;
.title-left
{
.title-left
{
border-left
:
2px
solid
#445781
;
padding-left
:
8px
;
padding-right
:
32px
;
font-size
:
16px
;
height
:
16px
;
height
:
16px
;
line-height
:
16px
;
line-height
:
16px
;
font-weight
:
bold
;
font-size
:
12px
;
color
:
#232323
;
font-weight
:
400
;
color
:
#3D3D3D
;
}
}
}
}
.title-right
{
.title-right
{
display
:
flex
;
display
:
flex
;
align-items
:
center
;
align-items
:
center
;
p
:first-child
{
font-size
:
12px
;
font-weight
:
400
;
color
:
#3D3D3D
;
margin-right
:
10px
;
}
p
:last-child
{
p
:last-child
{
display
:
flex
;
display
:
flex
;
align-items
:
center
;
align-items
:
center
;
...
...
dsk-operate-ui/src/views/radar/components/bxprozbgg/index.vue
View file @
f0035f76
...
@@ -333,11 +333,10 @@
...
@@ -333,11 +333,10 @@
<div
class=
"bottomlist-title"
>
<div
class=
"bottomlist-title"
>
<div
class=
"bottomlist-title-left"
>
<div
class=
"bottomlist-title-left"
>
<p
class=
"title-left"
>
<p
class=
"title-left"
>
查询结果
<span
style=
"margin-right:4;color:rgba(35, 35, 35, 0.40);font-size: 18px;position: relative;top:2px;"
>
·
</span>
共有{{total}}条
</p>
</p>
</div>
</div>
<div
class=
"title-right"
>
<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>
<p>
<img
src=
"@/assets/images/EXCEL.png"
alt=
""
>
<img
src=
"@/assets/images/EXCEL.png"
alt=
""
>
<span
class=
"excel"
@
click=
"$message({message: '功能正在开发中',type: 'warning'})"
>
导出EXCEL
</span>
<span
class=
"excel"
@
click=
"$message({message: '功能正在开发中',type: 'warning'})"
>
导出EXCEL
</span>
...
@@ -2009,25 +2008,17 @@
...
@@ -2009,25 +2008,17 @@
display
:
inline-flex
;;
display
:
inline-flex
;;
align-items
:
center
;
align-items
:
center
;
.title-left
{
.title-left
{
border-left
:
2px
solid
#445781
;
padding-left
:
8px
;
padding-right
:
32px
;
font-size
:
16px
;
height
:
16px
;
height
:
16px
;
line-height
:
16px
;
line-height
:
16px
;
font-weight
:
bold
;
font-size
:
12px
;
color
:
#232323
;
font-weight
:
400
;
color
:
#3D3D3D
;
}
}
}
}
.title-right
{
.title-right
{
display
:
flex
;
display
:
flex
;
align-items
:
center
;
align-items
:
center
;
p
:first-child
{
font-size
:
12px
;
font-weight
:
400
;
color
:
#3D3D3D
;
margin-right
:
10px
;
}
p
:last-child
{
p
:last-child
{
display
:
flex
;
display
:
flex
;
align-items
:
center
;
align-items
:
center
;
...
...
dsk-operate-ui/src/views/radar/components/debtProject/index.vue
View file @
f0035f76
...
@@ -93,11 +93,10 @@
...
@@ -93,11 +93,10 @@
<div
class=
"bottomlist-title"
>
<div
class=
"bottomlist-title"
>
<div
class=
"bottomlist-title-left"
>
<div
class=
"bottomlist-title-left"
>
<p
class=
"title-left"
>
<p
class=
"title-left"
>
查询结果
<span
style=
"margin-right:4;color:rgba(35, 35, 35, 0.40);font-size: 18px;position: relative;top:2px;"
>
·
</span>
共有{{total}}条
</p>
</p>
</div>
</div>
<div
class=
"title-right"
>
<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>
<p>
<img
src=
"@/assets/images/EXCEL.png"
alt=
""
>
<img
src=
"@/assets/images/EXCEL.png"
alt=
""
>
<span
class=
"excel"
@
click=
"$message({message: '功能正在开发中',type: 'warning'})"
>
导出EXCEL
</span>
<span
class=
"excel"
@
click=
"$message({message: '功能正在开发中',type: 'warning'})"
>
导出EXCEL
</span>
...
@@ -697,25 +696,17 @@
...
@@ -697,25 +696,17 @@
display
:
inline-flex
;;
display
:
inline-flex
;;
align-items
:
center
;
align-items
:
center
;
.title-left
{
.title-left
{
border-left
:
2px
solid
#445781
;
padding-left
:
8px
;
padding-right
:
32px
;
font-size
:
16px
;
height
:
16px
;
height
:
16px
;
line-height
:
16px
;
line-height
:
16px
;
font-weight
:
bold
;
font-size
:
12px
;
color
:
#232323
;
font-weight
:
400
;
color
:
#3D3D3D
;
}
}
}
}
.title-right
{
.title-right
{
display
:
flex
;
display
:
flex
;
align-items
:
center
;
align-items
:
center
;
p
:first-child
{
font-size
:
12px
;
font-weight
:
400
;
color
:
#3D3D3D
;
margin-right
:
10px
;
}
p
:last-child
{
p
:last-child
{
display
:
flex
;
display
:
flex
;
align-items
:
center
;
align-items
:
center
;
...
...
dsk-operate-ui/src/views/system/user/index.vue
View file @
f0035f76
...
@@ -767,3 +767,16 @@ export default {
...
@@ -767,3 +767,16 @@ export default {
}
}
};
};
</
script
>
</
script
>
<
style
lang=
"scss"
scoped
>
.head-container
{
::v-deep
.el-tree-node__content
{
white-space
:
normal
!
important
;
height
:
auto
;
padding
:
2px
0
;
.el-tree-node__expand-icon
{
padding
:
2px
6px
;
align-self
:
flex-start
;
}
}
}
</
style
>
dsk-system/src/main/java/com/dsk/system/service/impl/SysUserServiceImpl.java
View file @
f0035f76
...
@@ -79,7 +79,7 @@ public class SysUserServiceImpl implements ISysUserService, UserService {
...
@@ -79,7 +79,7 @@ public class SysUserServiceImpl implements ISysUserService, UserService {
QueryWrapper
<
SysUser
>
wrapper
=
Wrappers
.
query
();
QueryWrapper
<
SysUser
>
wrapper
=
Wrappers
.
query
();
wrapper
.
eq
(
"u.del_flag"
,
UserConstants
.
USER_NORMAL
)
wrapper
.
eq
(
"u.del_flag"
,
UserConstants
.
USER_NORMAL
)
.
eq
(
ObjectUtil
.
isNotNull
(
user
.
getUserId
()),
"u.user_id"
,
user
.
getUserId
())
.
eq
(
ObjectUtil
.
isNotNull
(
user
.
getUserId
()),
"u.user_id"
,
user
.
getUserId
())
.
like
(
StringUtils
.
isNotBlank
(
user
.
getUserName
()),
"u.
user
_name"
,
user
.
getUserName
())
.
like
(
StringUtils
.
isNotBlank
(
user
.
getUserName
()),
"u.
nick
_name"
,
user
.
getUserName
())
.
eq
(
StringUtils
.
isNotBlank
(
user
.
getStatus
()),
"u.status"
,
user
.
getStatus
())
.
eq
(
StringUtils
.
isNotBlank
(
user
.
getStatus
()),
"u.status"
,
user
.
getStatus
())
.
like
(
StringUtils
.
isNotBlank
(
user
.
getPhonenumber
()),
"u.phonenumber"
,
user
.
getPhonenumber
())
.
like
(
StringUtils
.
isNotBlank
(
user
.
getPhonenumber
()),
"u.phonenumber"
,
user
.
getPhonenumber
())
.
between
(
params
.
get
(
"beginTime"
)
!=
null
&&
params
.
get
(
"endTime"
)
!=
null
,
.
between
(
params
.
get
(
"beginTime"
)
!=
null
&&
params
.
get
(
"endTime"
)
!=
null
,
...
@@ -91,7 +91,8 @@ public class SysUserServiceImpl implements ISysUserService, UserService {
...
@@ -91,7 +91,8 @@ public class SysUserServiceImpl implements ISysUserService, UserService {
List
<
Long
>
ids
=
StreamUtils
.
toList
(
deptList
,
SysDept:
:
getDeptId
);
List
<
Long
>
ids
=
StreamUtils
.
toList
(
deptList
,
SysDept:
:
getDeptId
);
ids
.
add
(
user
.
getDeptId
());
ids
.
add
(
user
.
getDeptId
());
w
.
in
(
"u.dept_id"
,
ids
);
w
.
in
(
"u.dept_id"
,
ids
);
}).
orderByDesc
(
"u.create_time"
);
})
.
orderByDesc
(
"u.create_time"
);
return
wrapper
;
return
wrapper
;
}
}
...
@@ -290,7 +291,7 @@ public class SysUserServiceImpl implements ISysUserService, UserService {
...
@@ -290,7 +291,7 @@ public class SysUserServiceImpl implements ISysUserService, UserService {
//租户新增成功,发送短信通知租户
//租户新增成功,发送短信通知租户
LinkedHashMap
<
String
,
String
>
map
=
new
LinkedHashMap
<>(
1
);
LinkedHashMap
<
String
,
String
>
map
=
new
LinkedHashMap
<>(
1
);
map
.
put
(
"company"
,
user
.
getNickName
());
map
.
put
(
"company"
,
user
.
getNickName
());
map
.
put
(
"pwd"
,
password
);
map
.
put
(
"pwd"
,
password
);
SmsBlend
smsBlend
=
SmsFactory
.
createSmsBlend
(
SupplierType
.
ALIBABA
);
SmsBlend
smsBlend
=
SmsFactory
.
createSmsBlend
(
SupplierType
.
ALIBABA
);
SmsResponse
smsResponse
=
smsBlend
.
sendMessage
(
user
.
getPhonenumber
(),
"SMS_463175230"
,
map
);
SmsResponse
smsResponse
=
smsBlend
.
sendMessage
(
user
.
getPhonenumber
(),
"SMS_463175230"
,
map
);
if
(!
"OK"
.
equals
(
smsResponse
.
getCode
()))
{
if
(!
"OK"
.
equals
(
smsResponse
.
getCode
()))
{
...
...
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