Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in / Register
Toggle navigation
D
dsk-cr20g
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Administrator
dsk-cr20g
Commits
9c20c3b7
Commit
9c20c3b7
authored
May 26, 2023
by
远方不远
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
hy
parent
cb271d59
Changes
8
Show whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
2484 additions
and
19 deletions
+2484
-19
public.css
dsk-operate-ui/src/assets/styles/public.css
+112
-11
index.js
dsk-operate-ui/src/directive/index.js
+3
-0
limitNum.js
dsk-operate-ui/src/directive/limitNum/limitNum.js
+13
-0
main.js
dsk-operate-ui/src/main.js
+1
-0
index.vue
...operate-ui/src/views/radar/components/BidRecord/index.vue
+1063
-0
index.vue
dsk-operate-ui/src/views/radar/components/Land/index.vue
+1282
-0
index.vue
...erate-ui/src/views/radar/components/debtProject/index.vue
+2
-2
index.vue
dsk-operate-ui/src/views/radar/index.vue
+8
-6
No files found.
dsk-operate-ui/src/assets/styles/public.css
View file @
9c20c3b7
...
...
@@ -37,6 +37,7 @@ input {
background
:
none
;
outline
:
none
;
}
html
{
height
:
100%
;
box-sizing
:
border-box
;
...
...
@@ -112,6 +113,7 @@ select {
.float_right
{
float
:
right
;
}
.el-input
{
width
:
100%
;
}
...
...
@@ -129,7 +131,10 @@ select {
.el-input__icon
{
line-height
:
34px
;
}
.el-dropdown-link
{
cursor
:
pointer
;
color
:
#333333
;
}
.el-dropdown-link
.el-input
{
width
:
100%
;
}
...
...
@@ -141,6 +146,7 @@ select {
.el-input--suffix
.el-input__inner
{
padding-right
:
15px
;
}
.el-select
.el-input.is-focus
.el-input__inner
,
.el-input.is-active
.el-input__inner
,
.el-input__inner
:focus
,
...
...
@@ -148,9 +154,13 @@ select {
.el-range-editor.is-active
:focus-within
{
border-color
:
#3181fa
;
}
.el-popper
[
x-placement
^=
top
]
{
margin-bottom
:
12px
;
}
.el-popper
[
x-placement
^=
bottom
]
{
margin-top
:
12px
;
}
.el-select-dropdown
.popper__arrow
{
display
:
none
;
}
...
...
@@ -158,6 +168,7 @@ select {
.el-popper
.popper__arrow
{
display
:
none
;
}
.select-popper
{
text-align
:
center
;
display
:
inline-block
;
...
...
@@ -217,6 +228,7 @@ select {
.select-popper
::-webkit-scrollbar-corner
{
background
:
#fff
;
}
.select-popper
.el-select
{
width
:
100%
;
}
...
...
@@ -255,11 +267,100 @@ select {
.content_item
.select-popper
:hover
.select-caret
{
color
:
#0074E5
;
}
.content_item
.select-caret
:focus
{
border
:
none
;
outline
:
none
;
}
.content_item
.geduan
{
.select-multiple
{
position
:
absolute
;
left
:
0
;
top
:
0px
;
opacity
:
0
;
line-height
:
16px
;
}
.select-multiple
.el-input
{
width
:
100%
;
line-height
:
16px
;
}
.select-multiple
.el-input
.el-input__inner
{
width
:
100%
;
height
:
16px
!important
;
}
.select-multiple
.el-tag__close.el-icon-close
{
display
:
none
;
}
.el-dropdown-land
{
margin-right
:
24px
;
}
.el-dropdown-land
.el-icon-caret-bottom
{
color
:
#333333
;
margin-left
:
4px
;
}
.land_date_picker
{
position
:
absolute
!important
;
visibility
:
hidden
;
left
:
100px
;
top
:
206px
;
}
.jabph_popper_box
{
position
:
absolute
;
left
:
146px
;
bottom
:
-1px
;
background
:
#ffffff
;
width
:
186px
;
color
:
#606266
;
text-indent
:
0
;
padding
:
16px
;
padding-top
:
0px
;
border
:
1px
solid
#e0e0e0
;
}
.jabph_popper_box
.jabph_popper_wrap
{
margin-top
:
16px
;
display
:
inline-block
;
}
.jabph_popper_box
.jabph_popper_wrap
.jabph_popper_input
{
width
:
100px
;
display
:
inline-block
;
margin
:
0px
8px
;
.el-input__inner
{
width
:
100px
;
}
}
.jabph_popper_box
div
:last-child
{
display
:
flex
;
justify-content
:
center
;
margin-top
:
16px
;
}
.jabph_popper_box1
{
left
:
0
;
border
:
none
;
}
.jabph_popper_box2
{
left
:
101px
;
}
.jabph_popper_box3
{
left
:
115px
;
}
.content_item
.geduan
{
width
:
100%
;
height
:
0px
;
opacity
:
1
;
...
...
dsk-operate-ui/src/directive/index.js
View file @
9c20c3b7
...
...
@@ -4,6 +4,8 @@ import dialogDrag from './dialog/drag'
import
dialogDragWidth
from
'./dialog/dragWidth'
import
dialogDragHeight
from
'./dialog/dragHeight'
import
clipboard
from
'./module/clipboard'
import
limitNum
from
'./limitNum/limitNum'
const
install
=
function
(
Vue
)
{
Vue
.
directive
(
'hasRole'
,
hasRole
)
...
...
@@ -12,6 +14,7 @@ const install = function(Vue) {
Vue
.
directive
(
'dialogDrag'
,
dialogDrag
)
Vue
.
directive
(
'dialogDragWidth'
,
dialogDragWidth
)
Vue
.
directive
(
'dialogDragHeight'
,
dialogDragHeight
)
Vue
.
directive
(
'limitNum'
,
limitNum
)
}
if
(
window
.
Vue
)
{
...
...
dsk-operate-ui/src/directive/limitNum/limitNum.js
0 → 100644
View file @
9c20c3b7
export
default
{
bind
(
el
)
{
el
.
oninput
=
()
=>
{
el
.
children
[
0
].
value
=
el
.
children
[
0
].
value
.
replace
(
/
[^\d
.
]
/g
,
""
);
//清除“数字”和“.”以外的字符
el
.
children
[
0
].
value
=
el
.
children
[
0
].
value
.
replace
(
/
\.{2,}
/g
,
"."
);
//只保留第一个. 清除多余的
el
.
children
[
0
].
value
=
el
.
children
[
0
].
value
.
replace
(
/^
\.
/g
,
""
);
//必须保证第一个为数字而不是.
el
.
children
[
0
].
value
=
el
.
children
[
0
].
value
.
replace
(
"."
,
"$#$"
).
replace
(
/
\.
/g
,
""
).
replace
(
"$#$"
,
"."
);
if
(
el
.
children
[
0
].
value
.
indexOf
(
"."
)
<
0
&&
el
.
children
[
0
].
value
!=
""
){
//以上已经过滤,此处控制的是如果没有小数点,首位不能为类似于 01、02的金额
el
.
children
[
0
].
value
=
parseFloat
(
el
.
children
[
0
].
value
);
}
};
},
}
\ No newline at end of file
dsk-operate-ui/src/main.js
View file @
9c20c3b7
...
...
@@ -14,6 +14,7 @@ import directive from './directive' // directive
import
plugins
from
'./plugins'
// plugins
import
{
download
}
from
'@/utils/request'
import
'./assets/icons'
// icon
import
'./permission'
// permission control
import
{
getDicts
}
from
"@/api/system/dict/data"
;
...
...
dsk-operate-ui/src/views/radar/components/BidRecord/index.vue
0 → 100644
View file @
9c20c3b7
<
template
>
<div>
<div
id=
"bidRecord_wrap"
>
<div>
<div
class=
"content_li"
>
<div
class=
"content_item content_item_nopadding"
>
<div
class=
"include-keywords"
>
<span
class=
"lefttltel"
style=
" border-radius: 1px 0px 0px 1px;"
>
项目包含
</span>
<el-input
class=
"commonly-input"
v-model=
"keyword"
style=
"width: 607px;"
placeholder=
"请输入项目名称、文章关键词,多关键词用空格隔开,如:房建 地基"
></el-input>
</div>
</div>
</div>
<div
class=
"land_content_wrap "
style=
"margin-bottom:8px;"
>
<div
class=
"land_content_wrap_label"
>
投标报价
</div>
<el-input
class=
"other_ipt"
placeholder=
"请输入最低金额"
style=
"margin-left:12px;"
@
change=
"changeMoney('start')"
clearable
v-model=
"jskBidQueryDto.startBidMoney"
></el-input>
<span
style=
"margin:0 8px;"
>
至
</span>
<el-input
style=
"position:relative;top:2px;"
placeholder=
"请输入最高金额"
@
change=
"changeMoney('end')"
v-model=
"jskBidQueryDto.endBidMoney"
clearable
class=
"other_ipt other_ipt1"
>
<el-button
slot=
"append"
type=
"primary"
>
万元
</el-button>
</el-input>
<el-checkbox
style=
"margin-left:24px;"
v-model=
"jskBidQueryDto.hasMoney"
true-label=
"yes"
false-label=
""
>
包含投标报价未公示
</el-checkbox>
</div>
<div
class=
"land_content_wrap"
>
<span
class=
"land_content_wrap_label"
>
相关条件
</span>
<div
class=
"select-popper"
style=
"margin-bottom:8px;"
>
<span
:class=
"
{color_text:jskBidQueryDto.province.length ||jskBidQueryDto.city.length ||jskBidQueryDto.county.length,}">
行政区划
{{
jskBidQueryDto
.
province
.
length
||
jskBidQueryDto
.
city
.
length
||
jskBidQueryDto
.
county
.
length
?
jskBidQueryDto
.
province
.
length
+
jskBidQueryDto
.
city
.
length
+
jskBidQueryDto
.
county
.
length
+
"项"
:
""
}}
<i
class=
"el-icon-caret-bottom"
></i>
</span>
<el-cascader
ref=
"address"
class=
"cascader-region"
v-model=
"addressType"
:options=
"addressList"
:props=
"props"
@
change=
"domicileChange"
collapse-tags
clearable
></el-cascader>
</div>
<el-dropdown
@
command=
"punishDatehandleCommand"
trigger=
"click"
ref=
"punishDateShowPopper"
:hide-on-click=
"false"
>
<span
class=
"el-dropdown-link"
:class=
"punishDateValue ? 'color_text' : ''"
>
发布时间
{{
punishDateValue
?
" 1项"
:
""
}}
<i
class=
"el-icon-caret-bottom"
></i>
</span>
<div>
<el-dropdown-menu
slot=
"dropdown"
>
<el-dropdown-item
v-for=
"(item, i) in punishDateOptions"
:class=
" punishDateValue && punishDateValue == item.value ? 'color_text': '' "
:key=
"i"
:command=
"item.value"
>
<div
@
mouseenter=
"hidePoper"
>
{{
item
.
label
}}
</div>
</el-dropdown-item>
<el-dropdown-item
command=
"自定义"
style=
"padding: 0; text-indent: 20px"
>
<div
@
mouseenter=
"mouseenter"
>
<span
:class=
"punishDateValue == '自定义' ? 'color_text' : ''"
>
自定义
<i
class=
"el-icon-arrow-right"
></i>
</span>
<el-date-picker
v-if=
"punishDateShowPopper"
@
change=
"changepunishDate"
class=
"land_date_picker"
v-model=
"punishDate"
ref=
"datePicker"
value-format=
"yyyy-MM-dd"
type=
"daterange"
range-separator=
"至"
start-placeholder=
"开始日期"
end-placeholder=
"结束日期"
>
</el-date-picker>
</div>
</el-dropdown-item>
</el-dropdown-menu>
</div>
</el-dropdown>
<el-dropdown
@
command=
"tenderDatehandleCommand"
trigger=
"click"
ref=
"tenderDateShowPopper"
:hide-on-click=
"false"
>
<span
class=
"el-dropdown-link"
:class=
"tenderDateValue ? 'color_text' : ''"
>
开标时间
{{
tenderDateValue
?
" 1项"
:
""
}}
<i
class=
"el-icon-caret-bottom"
></i>
</span>
<div>
<el-dropdown-menu
slot=
"dropdown"
>
<el-dropdown-item
v-for=
"(item, i) in punishDateOptions"
:class=
" tenderDateValue && tenderDateValue == item.value ? 'color_text' : ''"
:key=
"i"
:command=
"item.value"
>
<div
@
mouseenter=
"hidePoper('bid')"
>
{{
item
.
label
}}
</div>
</el-dropdown-item>
<el-dropdown-item
command=
"自定义"
style=
"padding: 0; text-indent: 20px"
>
<div
@
mouseenter=
"mouseenter('bid')"
>
<span
:class=
"tenderDateValue == '自定义' ? 'color_text' : ''"
>
自定义
<i
class=
"el-icon-arrow-right"
></i></span>
<el-date-picker
v-if=
"tenderDateShowPopper"
@
change=
"changepunishDate('bid')"
class=
"land_date_picker"
v-model=
"tenderDate"
ref=
"tenderDatePicker"
value-format=
"yyyy-MM-dd"
type=
"daterange"
range-separator=
"至"
start-placeholder=
"开始日期"
end-placeholder=
"结束日期"
>
</el-date-picker>
</div>
</el-dropdown-item>
</el-dropdown-menu>
</div>
</el-dropdown>
</div>
<div
class=
"land_content_wrap"
>
<span
class=
"land_content_wrap_label"
style=
"line-height:34px;"
>
参投单位
</span>
<el-input
style=
"margin-left:12px;"
v-model=
"jskBidQueryDto.companyName"
clearable
placeholder=
"请输入参投单位名称关键词"
>
</el-input>
</div>
<div
class=
"search-new"
style=
"padding: 16px 0px 16px 76px"
>
<span
@
click=
"search()"
>
查询
</span>
<span
@
click=
"reset"
>
重置
</span>
</div>
<div
class=
"data_list"
v-if=
"showList"
>
<div
style=
"height: 16px;width: 1200px;background: #F7F9FC;margin-left: -16px;"
></div>
<div
class=
"data_list_head"
>
共为您找到
<span
class=
"data_list_count"
>
{{
total
}}
</span>
条相关结果
<div
class=
"bottom-toolbar-right float_right"
style=
"padding-top: 1px;"
>
<el-popover
v-model=
"fieldshow"
placement=
"bottom-end"
trigger=
"click"
popper-class=
"viewlist-el-popover"
>
<ul
class=
"pup_list"
>
<li
v-for=
"(itme,i) in fieldOptions"
:class=
"itme.status?'active':''"
@
click=
"handsequencingList(i)"
:key=
"i"
>
{{
itme
.
value
}}
</li>
</ul>
<span
slot=
"reference"
class=
"toolbar-right-download"
style=
"width: auto;padding: 0px 8px;margin-right:4px;"
>
{{
fieldText
}}
<i
class=
"el-icon-caret-bottom"
:style=
"
{transform:fieldshow?'rotate(180deg)':''}">
</i>
</span>
</el-popover>
<span
size=
"small"
class=
"toolbar-right-download toolbar-right-download1"
@
click=
"search('','','isExport')"
>
导出数据
</span>
</div>
</div>
<div
style=
"border-top:1px solid #efefef;padding-bottom:1px;width: 1200px;margin-left: -16px;"
v-if=
"total
<1
"
>
<div
class=
"search_empty_wrap"
>
<ul>
<li
class=
"search_empty_wrap_li search_empty_wrap_li1"
>
没有找到相关数据,您可尝试:
</li>
<li
class=
"search_empty_wrap_li"
><i
class=
"disc"
></i>
输入更准确的关键词,重新搜索
</li>
<li
class=
"search_empty_wrap_li"
><i
class=
"disc"
></i>
尝试减少输入的关键词,增加搜索范围
</li>
<li
class=
"search_empty_wrap_li"
><i
class=
"disc"
></i>
更换筛选条件,重新搜索
</li>
<li
class=
"search_empty_wrap_li"
><i
class=
"disc"
></i>
联系客服进行反馈
<span>
400-023-5755
</span>
(工作日09:00-18:00)或
<span><nuxt-link
title=
"意见反馈"
:to=
"`/feedback/`"
target=
"_blank"
>
意见反馈
</nuxt-link></span></li>
</ul>
</div>
</div>
<div
v-else
>
<div
v-for=
"(item, index) in tableData"
class=
"data_list_item"
:key=
"index"
>
<nuxt-link
class=
"data_list_h1 data_list_h1_1"
:to=
"`/biz/tbjl/$
{item.id}.html`" target="_blank" :title="item.projectName.replace(/
<font
color=
'#FF204E'
>
/g,'').replace(/
<
\/
font
>
/g,'')" v-if="item.id" v-html="item.projectName">
</nuxt-link>
<div
class=
"data_list_h1"
v-else
v-html=
"item.projectName"
></div>
<div
class=
"label_box"
v-if=
"item.domicile"
>
<span
class=
"label_span label_span2"
>
{{
item
.
domicile
}}
</span>
</div>
<div
class=
"label_wrap"
>
<template
v-if=
"item.source"
>
<span
class=
"label_item"
>
来源网站:
</span>
<span
class=
"label_con"
v-html=
"item.source"
></span>
</
template
>
<
template
v-if=
"item.tenderTime"
>
<span
class=
"label_item"
>
开标时间:
</span><span
class=
"label_con"
>
{{
item
.
tenderTime
}}
</span>
</
template
>
<
template
v-if=
"item.punishDate"
>
<span
class=
"label_item"
>
发布时间:
</span>
<span
class=
"label_con"
>
{{
item
.
punishDate
}}
</span>
</
template
>
</div>
</div>
</div>
</div>
</div>
<div
class=
"performance_pagination_wrap"
v-if=
"showList&&total>0"
>
<Pagination
v-if=
"pageFlag"
ref=
"page"
:page=
'permissions.page'
@
handle-current-change=
"handleCurrentChange"
@
handle-size-change=
"handleSizeChange"
:total=
"total"
/>
</div>
</div>
</div>
</template>
<
script
>
import
jsk_data
from
'../../../../../public/jsk.json'
;
export
default
{
name
:
'BidRecord'
,
data
()
{
return
{
addressList
:
[],
addressType
:
[],
props
:
{
multiple
:
true
,
expandTrigger
:
"hover"
,
value
:
"id"
,
},
keyword
:
""
,
keywordNot
:
""
,
fieldshow
:
false
,
fieldText
:
'默认排序'
,
field
:
''
,
//查询结果排序方式
fieldOptions
:
[
{
key
:
""
,
value
:
"默认排序"
,
status
:
true
,
},
{
key
:
"publishDate"
,
value
:
"发布日期从晚到早"
,
status
:
false
,
},
],
page
:
1
,
limit
:
20
,
punishDateOptions
:
[
{
label
:
"不限"
,
value
:
""
,
},
{
label
:
"今天"
,
value
:
"今天"
,
},
{
label
:
"近3日"
,
value
:
"近3日"
,
},
{
label
:
"近7日"
,
value
:
"近7日"
,
},
{
label
:
"近1个月"
,
value
:
"近1个月"
,
},
{
label
:
"近3个月"
,
value
:
"近3个月"
,
},
{
label
:
"近半年"
,
value
:
"近半年"
,
},
{
label
:
"近1年"
,
value
:
"近1年"
,
},
],
punishDateValue
:
""
,
jskBidQueryDto
:
{
hasMoney
:
""
,
province
:
[],
city
:
[],
county
:
[]
},
domicile
:
[],
provinceText
:[],
provinceList
:[],
punishDate
:
""
,
punishDateShowPopper
:
false
,
tenderDateValue
:
""
,
tenderDate
:
""
,
tenderDateShowPopper
:
false
,
pageFlag
:
true
,
conditionsArr
:
[],
showList
:
true
,
total
:
0
,
tableData
:[],
};
},
computed
:
{
checkJskBidQueryDto
()
{
let
arr
=
[];
let
flag
=
false
;
let
data
=
{};
if
(
this
.
keyword
){
data
=
{
title
:
"项目包含:"
,
keyid
:
"keyword"
,
value
:
this
.
keyword
,
key
:
"keyword"
}
flag
=
true
;
arr
.
push
(
data
)
}
if
(
this
.
keywordNot
){
data
=
{
title
:
"项目排除:"
,
keyid
:
"keywordNot"
,
value
:
this
.
keywordNot
,
key
:
"keywordNot"
}
flag
=
true
;
arr
.
push
(
data
)
}
if
(
this
.
jskBidQueryDto
.
companyName
){
data
=
{
title
:
"参投单位:"
,
keyid
:
"companyName"
,
value
:
this
.
jskBidQueryDto
.
companyName
,
key
:
"companyName"
}
flag
=
true
;
arr
.
push
(
data
)
}
if
(
this
.
jskBidQueryDto
.
startBidMoney
){
data
=
{
title
:
"最低金额:"
,
keyid
:
"startBidMoney"
,
value
:
this
.
jskBidQueryDto
.
startBidMoney
,
key
:
"startBidMoney"
}
flag
=
true
;
arr
.
push
(
data
)
}
if
(
this
.
jskBidQueryDto
.
endBidMoney
){
data
=
{
title
:
"最高金额:"
,
keyid
:
"endBidMoney"
,
value
:
this
.
jskBidQueryDto
.
endBidMoney
,
key
:
"endBidMoney"
}
flag
=
true
;
arr
.
push
(
data
)
}
if
(
this
.
jskBidQueryDto
.
hasMoney
){
data
=
{
title
:
"包含投标报价未公示"
,
keyid
:
"hasMoney"
,
value
:
this
.
jskBidQueryDto
.
hasMoney
,
key
:
"hasMoney"
}
flag
=
true
;
arr
.
push
(
data
)
}
if
(
this
.
domicile
.
length
>
0
)
{
data
=
{
title
:
"行政区划:"
,
keyid
:
"domicile"
,
value
:
this
.
domicile
.
join
(
","
),
key
:
"domicile"
}
flag
=
true
;
arr
.
push
(
data
)
}
if
(
this
.
punishDateValue
==
"自定义"
){
data
=
{
title
:
"发布时间:"
,
keyid
:
"punishDate"
,
value
:
this
.
jskBidQueryDto
.
startPunishDate
+
"~"
+
this
.
jskBidQueryDto
.
endPunishDate
,
key
:
"punishDate"
}
flag
=
true
;
arr
.
push
(
data
)
}
if
(
this
.
punishDateValue
&&
this
.
punishDateValue
!=
"自定义"
){
data
=
{
title
:
"发布时间:"
,
keyid
:
"punishDate"
,
value
:
this
.
punishDateValue
,
key
:
"punishDate"
}
flag
=
true
;
arr
.
push
(
data
)
}
if
(
this
.
tenderDateValue
==
"自定义"
){
data
=
{
title
:
"开标时间:"
,
keyid
:
"tenderDate"
,
value
:
this
.
jskBidQueryDto
.
startTenderTime
+
"~"
+
this
.
jskBidQueryDto
.
endTenderTime
,
key
:
"tenderDate"
}
flag
=
true
;
arr
.
push
(
data
)
}
if
(
this
.
tenderDateValue
&&
this
.
tenderDateValue
!=
"自定义"
){
data
=
{
title
:
"开标时间:"
,
keyid
:
"tenderDate"
,
value
:
this
.
tenderDateValue
,
key
:
"tenderDate"
}
flag
=
true
;
arr
.
push
(
data
)
}
this
.
conditionsArr
=
arr
return
flag
;
},
},
mounted
()
{
if
(
this
.
$route
.
query
.
keyword
)
{
this
.
keyword
=
this
.
$route
.
query
.
keyword
;
}
this
.
addressListfn
();
},
methods
:
{
// 关键词推荐
cliclikeywoder
()
{
this
.
$refs
.
keyword
.
show
();
},
keywordClick
(
val
)
{
this
.
keyword
=
val
},
refresh
(
value
)
{
if
(
value
)
{
this
.
$router
.
go
(
0
)
}
},
search
(
page
,
limit
,
exportFlag
)
{
if
(
!
page
)
{
this
.
page
=
1
;
}
if
(
!
limit
)
{
this
.
limit
=
20
;
}
if
(
!
page
&&
!
limit
)
{
this
.
reloadPage
();
}
var
data
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
jskBidQueryDto
));
data
.
province
=
data
.
province
.
join
(
","
);
data
.
city
=
data
.
city
.
join
(
","
);
data
.
county
=
data
.
county
.
join
(
","
);
let
params
=
{
page
:
{
page
:
this
.
page
,
limit
:
this
.
limit
,
field
:
this
.
field
,
},
jskBidQueryDto
:
data
,
};
if
(
this
.
keyword
){
params
.
keyword
=
this
.
keyword
}
else
{
delete
params
.
keyword
}
if
(
this
.
keywordNot
){
params
.
keywordNot
=
this
.
keywordNot
}
else
{
delete
params
.
keywordNot
}
this
.
$emit
(
"search"
,
params
)
},
//关闭支付弹窗
resolve
(
value
)
{
if
(
value
)
{
this
.
$router
.
go
(
0
)
}
},
provinceChange
(
arr
){
this
.
provinceText
=
[];
if
(
arr
.
length
>
0
){
arr
.
map
(
item
=>
{
this
.
provinceText
.
push
(
item
.
label
);
})
}
},
changeMoney
(
text
)
{
if
(
this
.
jskBidQueryDto
.
startBidMoney
&&
this
.
jskBidQueryDto
.
endBidMoney
&&
Number
(
this
.
jskBidQueryDto
.
startBidMoney
)
>
Number
(
this
.
jskBidQueryDto
.
endBidMoney
)
)
{
this
.
$message
.
warning
(
"最低金额不能大于最高金额!"
);
text
==
"start"
?
(
this
.
jskBidQueryDto
.
startBidMoney
=
""
)
:
(
this
.
jskBidQueryDto
.
endBidMoney
=
""
);
}
},
reloadPage
()
{
this
.
pageFlag
=
false
;
this
.
$nextTick
(()
=>
{
this
.
pageFlag
=
true
;
});
},
handleCurrentChange
(
page
)
{
this
.
page
=
page
;
this
.
search
(
page
,
this
.
limit
);
},
handleSizeChange
(
limit
)
{
this
.
limit
=
limit
;
this
.
search
(
this
.
page
,
limit
);
},
deleteDomicile
()
{
this
.
$refs
.
address
.
handleClear
();
},
domicileChange
()
{
let
arr
=
this
.
$refs
.
address
.
getCheckedNodes
();
let
province
=
[],
city
=
[],
county
=
[];
this
.
domicile
=
[];
for
(
var
i
in
arr
)
{
if
(
arr
[
i
].
parent
)
{
if
(
!
arr
[
i
].
parent
.
checked
)
{
arr
[
i
].
hasChildren
&&
city
.
push
(
arr
[
i
].
value
);
arr
[
i
].
hasChildren
&&
this
.
domicile
.
push
(
arr
[
i
].
label
);
!
arr
[
i
].
hasChildren
&&
county
.
push
(
arr
[
i
].
value
);
!
arr
[
i
].
hasChildren
&&
this
.
domicile
.
push
(
arr
[
i
].
label
);
}
}
else
{
province
.
push
(
arr
[
i
].
value
);
this
.
domicile
.
push
(
arr
[
i
].
label
);
}
}
var
obj
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
jskBidQueryDto
));
obj
.
province
=
province
;
obj
.
city
=
city
;
obj
.
county
=
county
;
this
.
jskBidQueryDto
=
obj
;
},
punishDatehandleCommand
(
command
)
{
var
obj
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
jskBidQueryDto
));
if
(
command
&&
command
!=
"自定义"
)
{
this
.
punishDateValue
=
command
;
this
.
$refs
.
punishDateShowPopper
.
hide
();
const
datetime
=
new
Date
();
var
startTime
,
endTime
,
Year
,
Month
,
Day
;
Year
=
datetime
.
getFullYear
();
Month
=
datetime
.
getMonth
()
+
1
;
Day
=
datetime
.
getDate
();
switch
(
command
)
{
case
"今天"
:
startTime
=
Year
+
"-"
+
Month
+
"-"
+
Day
;
endTime
=
Year
+
"-"
+
Month
+
"-"
+
Day
;
break
;
case
"近3日"
:
endTime
=
Year
+
"-"
+
Month
+
"-"
+
Day
;
if
(
Day
>
3
)
{
startTime
=
Year
+
"-"
+
Month
+
"-"
+
(
Day
-
3
);
}
else
{
let
newTime
=
datetime
.
getTime
()
-
3
*
24
*
60
*
60
*
1000
Year
=
new
Date
(
newTime
).
getFullYear
();
Month
=
new
Date
(
newTime
).
getMonth
()
+
1
;
Day
=
new
Date
(
newTime
).
getDate
();
startTime
=
Year
+
"-"
+
Month
+
"-"
+
Day
;
}
break
;
case
"近7日"
:
endTime
=
Year
+
"-"
+
Month
+
"-"
+
Day
;
if
(
Day
>
7
)
{
startTime
=
Year
+
"-"
+
Month
+
"-"
+
(
Day
-
7
);
}
else
{
let
newTime
=
datetime
.
getTime
()
-
7
*
24
*
60
*
60
*
1000
Year
=
new
Date
(
newTime
).
getFullYear
();
Month
=
new
Date
(
newTime
).
getMonth
()
+
1
;
Day
=
new
Date
(
newTime
).
getDate
();
startTime
=
Year
+
"-"
+
Month
+
"-"
+
Day
;
}
break
;
case
"近1个月"
:
endTime
=
Year
+
"-"
+
Month
+
"-"
+
Day
;
if
(
Month
>
1
)
{
startTime
=
Year
+
"-"
+
(
Month
-
1
)
+
"-1"
;
}
else
{
startTime
=
Year
-
1
+
"-"
+
(
12
+
Month
-
1
)
+
"-1"
;
}
break
;
case
"近3个月"
:
endTime
=
Year
+
"-"
+
Month
+
"-"
+
Day
;
if
(
Month
>
3
)
{
startTime
=
Year
+
"-"
+
(
Month
-
3
)
+
"-1"
;
}
else
{
startTime
=
Year
-
1
+
"-"
+
(
12
+
Month
-
3
)
+
"-1"
;
}
break
;
case
"近半年"
:
endTime
=
Year
+
"-"
+
Month
+
"-"
+
Day
;
if
(
Month
>
6
)
{
startTime
=
Year
+
"-"
+
(
Month
-
6
)
+
"-1"
;
}
else
{
startTime
=
Year
-
1
+
"-"
+
(
12
+
Month
-
6
)
+
"-1"
;
}
break
;
case
"近1年"
:
startTime
=
Year
-
1
+
"-"
+
Month
+
"-"
+
Day
;
endTime
=
Year
+
"-"
+
Month
+
"-"
+
Day
;
break
;
case
"自定义"
:
if
(
!
this
.
punishDate
)
{
this
.
punishDateValue
=
""
;
}
break
;
}
if
(
startTime
){
var
start
=
startTime
.
split
(
'-'
);
startTime
=
start
.
map
((
item
)
=>
{
if
(
item
.
length
==
1
){
return
'0'
+
item
}
else
{
return
item
}
})
startTime
=
startTime
.
join
(
'-'
)
}
if
(
endTime
){
var
end
=
endTime
.
split
(
'-'
);
endTime
=
end
.
map
((
item
)
=>
{
if
(
item
.
length
==
1
){
return
'0'
+
item
}
else
{
return
item
}
})
endTime
=
endTime
.
join
(
'-'
)
}
obj
.
startPunishDate
=
startTime
;
obj
.
endPunishDate
=
endTime
;
}
else
if
(
command
==
"自定义"
)
{
this
.
$refs
.
datePicker
.
pickerVisible
=
true
;
}
else
{
this
.
$refs
.
punishDateShowPopper
.
hide
();
this
.
punishDateValue
=
""
;
this
.
punishDate
=
""
;
obj
.
startPunishDate
=
""
;
obj
.
endPunishDate
=
""
;
}
this
.
jskBidQueryDto
=
obj
;
},
tenderDatehandleCommand
(
command
)
{
var
obj
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
jskBidQueryDto
));
if
(
command
&&
command
!=
"自定义"
)
{
this
.
tenderDateValue
=
command
;
this
.
$refs
.
tenderDateShowPopper
.
hide
();
const
datetime
=
new
Date
();
var
startTime
,
endTime
,
Year
,
Month
,
Day
;
Year
=
datetime
.
getFullYear
();
Month
=
datetime
.
getMonth
()
+
1
;
Day
=
datetime
.
getDate
();
switch
(
command
)
{
case
"今天"
:
startTime
=
Year
+
"-"
+
Month
+
"-"
+
Day
;
endTime
=
Year
+
"-"
+
Month
+
"-"
+
Day
;
break
;
case
"近3日"
:
endTime
=
Year
+
"-"
+
Month
+
"-"
+
Day
;
if
(
Day
>
3
)
{
startTime
=
Year
+
"-"
+
Month
+
"-"
+
(
Day
-
3
);
}
else
{
let
newTime
=
datetime
.
getTime
()
-
3
*
24
*
60
*
60
*
1000
Year
=
new
Date
(
newTime
).
getFullYear
();
Month
=
new
Date
(
newTime
).
getMonth
()
+
1
;
Day
=
new
Date
(
newTime
).
getDate
();
startTime
=
Year
+
"-"
+
Month
+
"-"
+
Day
;
}
break
;
case
"近7日"
:
endTime
=
Year
+
"-"
+
Month
+
"-"
+
Day
;
if
(
Day
>
7
)
{
startTime
=
Year
+
"-"
+
Month
+
"-"
+
(
Day
-
7
);
}
else
{
let
newTime
=
datetime
.
getTime
()
-
7
*
24
*
60
*
60
*
1000
Year
=
new
Date
(
newTime
).
getFullYear
();
Month
=
new
Date
(
newTime
).
getMonth
()
+
1
;
Day
=
new
Date
(
newTime
).
getDate
();
startTime
=
Year
+
"-"
+
Month
+
"-"
+
Day
;
}
break
;
case
"近1个月"
:
endTime
=
Year
+
"-"
+
Month
+
"-"
+
Day
;
if
(
Month
>
1
)
{
startTime
=
Year
+
"-"
+
(
Month
-
1
)
+
"-1"
;
}
else
{
startTime
=
Year
-
1
+
"-"
+
(
12
+
Month
-
1
)
+
"-1"
;
}
break
;
case
"近3个月"
:
endTime
=
Year
+
"-"
+
Month
+
"-"
+
Day
;
if
(
Month
>
3
)
{
startTime
=
Year
+
"-"
+
(
Month
-
3
)
+
"-1"
;
}
else
{
startTime
=
Year
-
1
+
"-"
+
(
12
+
Month
-
3
)
+
"-1"
;
}
break
;
case
"近半年"
:
endTime
=
Year
+
"-"
+
Month
+
"-"
+
Day
;
if
(
Month
>
6
)
{
startTime
=
Year
+
"-"
+
(
Month
-
6
)
+
"-1"
;
}
else
{
startTime
=
Year
-
1
+
"-"
+
(
12
+
Month
-
6
)
+
"-1"
;
}
break
;
case
"近1年"
:
startTime
=
Year
-
1
+
"-"
+
Month
+
"-"
+
Day
;
endTime
=
Year
+
"-"
+
Month
+
"-"
+
Day
;
break
;
case
"自定义"
:
if
(
!
this
.
tenderDate
)
{
this
.
tenderDateValue
=
""
;
}
break
;
}
if
(
startTime
){
var
start
=
startTime
.
split
(
'-'
);
startTime
=
start
.
map
((
item
)
=>
{
if
(
item
.
length
==
1
){
return
'0'
+
item
}
else
{
return
item
}
})
startTime
=
startTime
.
join
(
'-'
)
}
if
(
endTime
){
var
end
=
endTime
.
split
(
'-'
);
endTime
=
end
.
map
((
item
)
=>
{
if
(
item
.
length
==
1
){
return
'0'
+
item
}
else
{
return
item
}
})
endTime
=
endTime
.
join
(
'-'
)
}
obj
.
startTenderTime
=
startTime
;
obj
.
endTenderTime
=
endTime
;
}
else
if
(
command
==
"自定义"
)
{
this
.
$refs
.
tenderDatePicker
.
pickerVisible
=
true
;
}
else
{
this
.
$refs
.
tenderDateShowPopper
.
hide
();
this
.
tenderDateValue
=
""
;
this
.
tenderDate
=
""
;
obj
.
startTenderTime
=
""
;
obj
.
endTenderTime
=
""
;
}
this
.
jskBidQueryDto
=
obj
;
},
changepunishDate
(
type
)
{
if
(
type
==
'bid'
&&
this
.
tenderDate
){
this
.
tenderDateValue
=
"自定义"
;
var
obj
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
jskBidQueryDto
));
obj
.
startTenderTime
=
this
.
tenderDate
[
0
];
obj
.
endTenderTime
=
this
.
tenderDate
[
1
];
this
.
jskBidQueryDto
=
obj
;
}
else
if
(
this
.
punishDate
)
{
this
.
punishDateValue
=
"自定义"
;
var
obj
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
jskBidQueryDto
));
obj
.
startPunishDate
=
this
.
punishDate
[
0
];
obj
.
endPunishDate
=
this
.
punishDate
[
1
];
this
.
jskBidQueryDto
=
obj
;
}
},
addressListfn
()
{
var
str
=
[];
for
(
let
x
=
0
;
x
<
3
;
x
++
)
{
for
(
let
i
=
0
;
i
<
jsk_data
.
length
;
i
++
)
{
if
(
jsk_data
[
i
].
regionLevel
==
x
+
1
&&
x
+
1
==
1
)
{
str
.
push
({
id
:
jsk_data
[
i
].
id
,
label
:
jsk_data
[
i
].
regionName
,
short
:
jsk_data
[
i
].
short
,
value
:
jsk_data
[
i
].
parentId
,
children
:
jsk_data
[
i
].
id
==
900000
?
undefined
:[],
});
}
else
if
(
jsk_data
[
i
].
regionLevel
==
x
+
1
&&
x
+
1
==
2
&&
str
)
{
for
(
let
j
=
0
;
j
<
str
.
length
;
j
++
)
{
if
(
str
[
j
].
id
==
jsk_data
[
i
].
parentId
)
{
str
[
j
].
children
.
push
({
id
:
jsk_data
[
i
].
id
,
label
:
jsk_data
[
i
].
regionName
,
short
:
jsk_data
[
i
].
short
,
value
:
jsk_data
[
i
].
parentId
,
children
:
[],
});
}
}
}
else
if
(
jsk_data
[
i
].
regionLevel
==
x
+
1
&&
x
+
1
==
3
)
{
for
(
let
j
=
0
;
j
<
str
.
length
;
j
++
)
{
if
(
str
[
j
].
children
){
for
(
let
k
=
0
;
k
<
str
[
j
].
children
.
length
;
k
++
)
{
if
(
str
[
j
].
children
[
k
].
id
==
jsk_data
[
i
].
parentId
)
{
str
[
j
].
children
[
k
].
children
.
push
({
id
:
jsk_data
[
i
].
id
,
label
:
jsk_data
[
i
].
regionName
,
short
:
jsk_data
[
i
].
short
,
value
:
jsk_data
[
i
].
parentId
,
});
}
}
}
}
}
}
}
this
.
addressList
=
str
;
},
hidePoper
(
type
)
{
if
(
type
==
'bid'
&&
this
.
$refs
.
tenderDatePicker
){
this
.
$refs
.
tenderDatePicker
.
pickerVisible
=
false
;
}
else
if
(
this
.
$refs
.
datePicker
){
this
.
$refs
.
datePicker
.
pickerVisible
=
false
;
}
},
mouseenter
(
type
)
{
if
(
type
==
'bid'
){
this
.
tenderDateShowPopper
=
true
;
if
(
this
.
tenderDateValue
==
"自定义"
){
this
.
$nextTick
(()
=>
{
this
.
$refs
.
tenderDatePicker
.
pickerVisible
=
true
;
});
}
}
else
{
this
.
punishDateShowPopper
=
true
;
if
(
this
.
punishDateValue
==
"自定义"
){
this
.
$nextTick
(()
=>
{
this
.
$refs
.
datePicker
.
pickerVisible
=
true
;
});
}
}
},
clearpunishDate
(
type
)
{
var
obj
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
jskBidQueryDto
));
if
(
type
==
'bid'
){
this
.
tenderDate
=
""
;
this
.
tenderDateValue
=
""
;
obj
.
startTenderTime
=
""
;
obj
.
endTenderTime
=
""
;
}
else
{
this
.
punishDate
=
""
;
this
.
punishDateValue
=
""
;
obj
.
startPunishDate
=
""
;
obj
.
endPunishDate
=
""
;
}
this
.
jskBidQueryDto
=
obj
;
},
reset
()
{
Object
.
assign
(
this
.
$data
,
this
.
$options
.
data
.
call
(
this
));
//重置data
this
.
init
();
this
.
$emit
(
"reset"
);
},
init
(){
this
.
search
();
this
.
addressListfn
();
},
handsequencingList
(
index
)
{
this
.
fieldshow
=
false
;
this
.
field
=
this
.
fieldOptions
[
index
].
key
;
for
(
let
i
=
0
;
i
<
this
.
fieldOptions
.
length
;
i
++
)
{
this
.
fieldOptions
[
i
].
status
=
false
;
}
this
.
fieldText
=
this
.
fieldOptions
[
index
].
value
;
this
.
fieldOptions
[
index
].
status
=
true
;
this
.
search
();
},
},
};
</
script
>
<
style
lang=
"scss"
>
#bidRecord_wrap
{
.other_ipt
{
width
:
174px
;
height
:
34px
;
.el-input__inner
{
width
:
174px
;
}
}
.other_ipt1
{
width
:
187px
;
.el-input-group__append
{
padding
:
0
8px
;
}
}
}
</
style
>
<
style
lang=
"scss"
scoped
>
#bidRecord_wrap
{
padding
:
0
16px
;
font-size
:
14px
;
.land_content_wrap
{
display
:
flex
;
line-height
:
34px
;
.land_content_wrap_label
{
color
:
#666666
;
margin-right
:
4px
;
}
}
.data_list
{
width
:
1184px
;
margin
:
0
auto
;
.data_list_head
{
height
:
50px
;
line-height
:
50px
;
color
:
#666666
;
.data_list_count
{
color
:
#ff2a00
;
font-weight
:
bold
;
}
}
.data_list_item
{
border-top
:
1px
solid
#efefef
;
padding
:
24px
16px
;
padding-left
:
16px
;
margin-left
:
-16px
;
&
:hover
{
background
:
#f5faff
;
}
.data_list_h1
{
width
:
1168px
;
font-size
:
18px
;
font-weight
:
bold
;
color
:
#333333
;
line-height
:
24px
;
margin-bottom
:
10px
;
text-decoration
:none
;
word-break
:
break-all
;
display
:
inline-block
;
}
.data_list_h1_1
{
cursor
:
pointer
;
}
.label_box
{
padding-bottom
:
6px
;
display
:
flex
;
.label_span
{
padding
:
0
8px
;
display
:
inline-block
;
height
:
22px
;
line-height
:
22px
;
border-radius
:
2px
2px
2px
2px
;
margin-right
:
8px
;
font-size
:
12px
;
}
.label_span1
{
background
:
#e4f3fd
;
color
:
#0081ff
;
}
.label_span2
{
background
:
#f3f3ff
;
color
:
#8491e8
;
}
.label_span3
{
background
:
#e3f6f8
;
color
:
#44bcc4
;
}
.label_span4
{
background
:
#e3f6f8
;
color
:
#44bcc4
;
}
}
.label_wrap
{
font-size
:
14px
;
margin-top
:
10px
;
line-height
:
18px
;
display
:
flex
;
.label_item
{
color
:
#999999
;
}
.label_item1
{
position
:
relative
;
top
:
-3px
;
}
.company
{
color
:
#0081ff
;
cursor
:
pointer
;
margin-right
:
20px
;
}
.label_con
{
color
:
#333333
;
margin-right
:
20px
;
max-width
:
900px
;
overflow
:
hidden
;
text-overflow
:
ellipsis
;
white-space
:
nowrap
;
}
.label_con1
{
width
:
1042px
;
display
:
inline-block
;
margin
:
0
;
white-space
:
nowrap
;
overflow
:
hidden
;
text-overflow
:
ellipsis
;
}
}
}
}
.content_li
{
padding
:
16px
0
;
display
:
flex
;
align-items
:
center
;
position
:
relative
;
.content_item
{
.include-keywords
{
display
:
flex
;
align-items
:
center
;
position
:
relative
;
.lefttltel
{
display
:
inline-block
;
background
:
#f5f5f5
;
color
:
#333
;
border
:
1px
solid
#efefef
;
border-right
:
none
;
opacity
:
1
;
width
:
71px
;
height
:
40px
;
text-align
:
center
;
line-height
:
40px
;
}
.el-input
{
line-height
:
40px
;
border-radius
:
0
;
::v-deep
.el-input__inner
{
width
:
100%
;
height
:
40px
;
line-height
:
40px
;
border-radius
:
0
;
}
}
.commonly-input
{
::v-deep
.el-input__inner
{
padding-right
:
100px
;
}
}
.commonly
{
position
:
absolute
;
top
:
10px
;
right
:
16px
;
font-size
:
14px
;
font-weight
:
400
;
color
:
#0081ff
;
cursor
:
pointer
;
}
}
}
}
}
</
style
>
dsk-operate-ui/src/views/radar/components/Land/index.vue
0 → 100644
View file @
9c20c3b7
<
template
>
<div>
<div
class=
"content"
>
<div
class=
"content_item"
>
<div
class=
"label"
>
项目名称
</div>
<div
class=
"content_right"
>
<el-input
class=
"ename_input"
placeholder=
"请输入项目名称关键字"
v-model=
"landMarketDto.keyword"
></el-input>
</div>
</div>
<div
class=
"content_item"
>
<div
class=
"label"
>
土地信息
</div>
<div
class=
"content_right"
>
<div
class=
"select-popper"
>
<span
:class=
"
{ color_text:landMarketDto.province.length ||landMarketDto.city.length ||landMarketDto.area.length,}">
行政区划
{{
landMarketDto
.
province
.
length
||
landMarketDto
.
city
.
length
||
landMarketDto
.
area
.
length
?
landMarketDto
.
province
.
length
+
landMarketDto
.
city
.
length
+
landMarketDto
.
area
.
length
+
"项"
:
""
}}
<i
class=
"el-icon-caret-bottom"
></i>
</span>
<el-cascader
ref=
"address"
class=
"cascader-region select-location"
@
change=
"domicileChange"
v-model=
"addressType"
:options=
"addressList"
:props=
"props"
collapse-tags
clearable
></el-cascader>
</div>
<div
class=
"select-popper"
>
<span
:class=
"
{ color_text: landMarketDto.landUse.length }">
土地用途
{{
landMarketDto
.
landUse
.
length
?
landMarketDto
.
landUse
.
length
+
"项"
:
""
}}
<i
class=
"el-icon-caret-bottom"
></i>
</span>
<el-select
v-model=
"landMarketDto.landUse"
class=
"select-multiple"
multiple
placeholder=
"请选择"
>
<el-option
v-for=
"(item, i) in landUseOptions"
:key=
"i"
:label=
"item"
:value=
"item"
>
</el-option>
</el-select>
</div>
<div
class=
"select-popper"
>
<span
:class=
"
{ color_text: landMarketDto.industry.length }">
土地行业分类
{{
landMarketDto
.
industry
.
length
?
landMarketDto
.
industry
.
length
+
"项"
:
""
}}
<i
class=
"el-icon-caret-bottom"
></i>
</span>
<el-select
v-model=
"landMarketDto.industry"
class=
"select-multiple"
multiple
placeholder=
"请选择"
>
<el-option
v-for=
"(item, i) in landMarketIndustryList"
:key=
"i"
:label=
"item"
:value=
"item"
>
</el-option>
</el-select>
</div>
<div
class=
"select-popper"
>
<span
:class=
"
{ color_text: landMarketDto.supplyLandWay.length }">
供应方式
{{
landMarketDto
.
supplyLandWay
.
length
?
landMarketDto
.
supplyLandWay
.
length
+
"项"
:
""
}}
<i
class=
"el-icon-caret-bottom"
></i>
</span>
<el-select
v-model=
"landMarketDto.supplyLandWay"
class=
"select-multiple"
multiple
placeholder=
"请选择"
>
<el-option
v-for=
"(item, i) in supplyLandWayOptions"
:key=
"i"
:label=
"item"
:value=
"item"
>
</el-option>
</el-select>
</div>
<el-dropdown
@
command=
"handleCommand"
class=
"el-dropdown-land"
trigger=
"click"
ref=
"popper"
:hide-on-click=
"false"
>
<span
class=
"el-dropdown-link"
:class=
"landMarketDto.startAcreage || landMarketDto.endAcreage? 'color_text': ''"
>
出让面积
{{
landMarketDto
.
startAcreage
||
landMarketDto
.
endAcreage
?
" 1项"
:
""
}}
<i
class=
"el-icon-caret-bottom"
></i>
</span>
<el-dropdown-menu
slot=
"dropdown"
>
<el-dropdown-item
v-for=
"(item, i) in acreageOptions"
:class=
"landMarketDto.startAcreage == item.value[0] &&landMarketDto.endAcreage == item.value[1] &&
!startAcreage && !endAcreage? 'color_text': ''"
:key=
"i"
:command=
"item.value"
>
{{
item
.
label
}}
</el-dropdown-item>
<el-dropdown-item
command=
""
style=
"padding: 0; text-indent: 20px"
>
<div
@
mouseenter=
"showPopper = true"
@
mouseleave=
"showPopper = false"
>
<span
:class=
"(startAcreage || endAcreage) &&landMarketDto.startAcreage == startAcreage &&landMarketDto.endAcreage == endAcreage
? 'color_text': '' "
>
自定义
<i
class=
"el-icon-arrow-right"
></i>
</span>
<div
class=
"jabph_popper_box jabph_popper_box3"
style=
"position: absolute"
v-if=
"showPopper"
>
<div
class=
"jabph_popper_wrap"
>
从
<el-input
class=
"jabph_popper_input"
v-limit-num
clearable
v-model=
"startAcreage"
></el-input>
平
</div>
<div
class=
"jabph_popper_wrap"
>
到
<el-input
class=
"jabph_popper_input"
v-limit-num
clearable
v-model=
"endAcreage"
></el-input>
平
</div>
<div
style=
""
>
<el-button
size=
"mini"
@
click=
"cancel"
>
取消
</el-button>
<el-button
type=
"primary"
size=
"mini"
@
click=
"popperConfirm"
>
确定
</el-button>
</div>
</div>
</div>
</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
<div
class=
"select-popper"
>
<el-popover
placement=
"bottom"
v-model=
"showIpt"
trigger=
"click"
>
<div
class=
"jabph_popper_box jabph_popper_box1"
style=
"position: relative"
>
<div
class=
"jabph_popper_wrap"
>
最小
<el-input
class=
"jabph_popper_input"
v-limit-num
clearable
v-model=
"volumeRateLow"
>
</el-input>
</div>
<div
class=
"jabph_popper_wrap"
>
最大
<el-input
class=
"jabph_popper_input"
v-limit-num
clearable
v-model=
"volumeRateHigh"
>
</el-input>
</div>
<div
style=
""
>
<el-button
size=
"mini"
@
click=
"showIpt = false"
>
取消
</el-button>
<el-button
type=
"primary"
size=
"mini"
@
click=
"volumeRateConfirm"
>
确定
</el-button>
</div>
</div>
<span
slot=
"reference"
:class=
"
{color_text:landMarketDto.volumeRateHigh || landMarketDto.volumeRateLow,}">
约定容积率
{{
landMarketDto
.
volumeRateHigh
||
landMarketDto
.
volumeRateLow
?
"1项"
:
""
}}
<i
class=
"el-icon-caret-bottom"
></i>
</span>
</el-popover>
</div>
</div>
</div>
<div
class=
"content_item"
>
<div
class=
"label"
>
成交信息
</div>
<div
class=
"content_right"
>
<el-dropdown
@
command=
"transactionPricehandleCommand"
class=
"el-dropdown-land"
trigger=
"click"
ref=
"transactionPriceShowPopper"
:hide-on-click=
"false"
>
<span
class=
"el-dropdown-link"
:class=
"landMarketDto.startTransactionPrice ||landMarketDto.endTransactionPrice ? 'color_text': ''"
>
成交金额
{{
landMarketDto
.
startTransactionPrice
||
landMarketDto
.
endTransactionPrice
?
" 1项"
:
""
}}
<i
class=
"el-icon-caret-bottom"
></i>
</span>
<el-dropdown-menu
slot=
"dropdown"
>
<el-dropdown-item
v-for=
"(item, i) in transactionPriceOptions"
:class=
"landMarketDto.startTransactionPrice == item.value[0] &&landMarketDto.endTransactionPrice == item.value[1] &&
!startTransactionPrice &&!endTransactionPrice? 'color_text': '' "
:key=
"i"
:command=
"item.value"
>
{{
item
.
label
}}
</el-dropdown-item>
<el-dropdown-item
command=
""
style=
"padding: 0; text-indent: 20px"
>
<div
@
mouseenter=
"transactionPriceShowPopper = true"
@
mouseleave=
"transactionPriceShowPopper = false"
>
<span
:class=
"(startTransactionPrice || endTransactionPrice) &&landMarketDto.startTransactionPrice ==startTransactionPrice &&
landMarketDto.endTransactionPrice == endTransactionPrice? 'color_text': '' "
>
自定义
<i
class=
"el-icon-arrow-right"
></i>
</span>
<div
class=
"jabph_popper_box"
style=
"position: absolute"
v-if=
"transactionPriceShowPopper"
>
<div
class=
"jabph_popper_wrap"
>
从
<el-input
class=
"jabph_popper_input"
v-limit-num
clearable
v-model=
"startTransactionPrice"
></el-input>
万
</div>
<div
class=
"jabph_popper_wrap"
>
到
<el-input
class=
"jabph_popper_input"
v-limit-num
clearable
v-model=
"endTransactionPrice"
></el-input>
万
</div>
<div
style=
""
>
<el-button
size=
"mini"
@
click=
"transactionPriceCancel"
>
取消
</el-button>
<el-button
type=
"primary"
size=
"mini"
@
click=
"transactionPricePopperConfirm"
>
确定
</el-button>
</div>
</div>
</div>
</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
<el-dropdown
@
command=
"contractSignTimehandleCommand"
class=
"el-dropdown-land"
trigger=
"click"
ref=
"contractSignTimeShowPopper"
:hide-on-click=
"false"
>
<span
class=
"el-dropdown-link"
:class=
"contractSignTimeValue ? 'color_text' : ''"
>
签订日期
{{
contractSignTimeValue
?
" 1项"
:
""
}}
<i
class=
"el-icon-caret-bottom"
></i>
</span>
<div>
<el-dropdown-menu
slot=
"dropdown"
>
<el-dropdown-item
v-for=
"(item, i) in contractSignTimeOptions"
:class=
"contractSignTimeValue && contractSignTimeValue == item.value? 'color_text': ''"
:key=
"i"
:command=
"item.value"
>
<div
@
mouseenter=
"hidePoper"
>
{{
item
.
label
}}
</div>
</el-dropdown-item>
<el-dropdown-item
command=
"自定义"
style=
"padding: 0; text-indent: 20px"
>
<div
@
mouseenter=
"mouseenter"
>
<span
:class=
" contractSignTimeValue == '自定义' ? 'color_text' : ''"
>
自定义
<i
class=
"el-icon-arrow-right"
></i>
</span>
<el-date-picker
v-if=
"contractSignTimeShowPopper"
@
change=
"changeContractSignTime"
class=
"land_date_picker"
v-model=
"contractSignTime"
ref=
"datePicker"
value-format=
"yyyy-MM-dd"
type=
"daterange"
range-separator=
"至"
start-placeholder=
"开始日期"
end-placeholder=
"结束日期"
>
</el-date-picker>
</div>
</el-dropdown-item>
</el-dropdown-menu>
</div>
</el-dropdown>
</div>
</div>
<div
class=
"content_item"
>
<div
class=
"label"
>
土地坐落
</div>
<div
class=
"content_right"
>
<el-input
v-model=
"landMarketDto.landAddr"
clearable
class=
"land_ipt_470"
placeholder=
"请输入土地坐落位置,如两江新区"
></el-input>
</div>
</div>
<div
class=
"content_item"
>
<div
class=
"label"
>
受让人
</div>
<div
class=
"content_right"
>
<el-input
v-model=
"landMarketDto.companyName"
clearable
class=
"land_ipt_470"
placeholder=
"请输入受让人或土地使用权人名称,如重庆城投"
></el-input>
</div>
</div>
<div
class=
"content_item content_item_padding0"
>
<div
class=
"geduan"
>
</div>
</div>
<div
class=
"content_item content_item_padding0"
>
<div
class=
"search-new"
>
<span
@
click=
"search()"
>
查询
</span>
<span
@
click=
"reset"
>
重置
</span>
</div>
</div>
</div>
<div
id=
"landInfo_wrap"
>
<div
class=
"data_list"
v-if=
"showList"
>
<div
style=
"height: 16px;width: 1200px;background: #F7F9FC;margin-left: -16px;"
></div>
<div
class=
"data_list_head"
>
共为您找到
<span
class=
"data_list_count"
>
{{
total
}}
</span>
条相关结果
<div
class=
"bottom-toolbar-right float_right"
>
<el-popover
v-model=
"fieldshow"
placement=
"bottom-end"
trigger=
"click"
popper-class=
"viewlist-el-popover"
>
<ul
class=
"pup_list"
>
<li
v-for=
"(itme,i) in fieldOptions"
:class=
"itme.status?'active':''"
@
click=
"handsequencingList(i)"
:key=
"i"
>
{{
itme
.
value
}}
</li>
</ul>
<span
slot=
"reference"
class=
"toolbar-right-download"
style=
"width: auto;padding: 0px 8px;margin-right:4px;"
>
{{
fieldText
}}
<i
class=
"el-icon-caret-bottom"
:style=
"
{transform:fieldshow?'rotate(180deg)':''}">
</i>
</span>
</el-popover>
<span
size=
"small"
class=
"toolbar-right-download toolbar-right-download1"
@
click=
"search('','','isExport')"
>
导出数据
</span>
</div>
</div>
<div
v-if=
"total>0"
>
<div
v-for=
"(item, index) in tableData"
class=
"data_list_item"
:key=
"index"
>
<router-link
class=
"data_list_h1 data_list_h1_1"
:to=
"`/biz/tdjy/$
{encodeStr(item.id)}.html`"
target="_blank"
:title="item.projectName.replace(/
<font
color=
'#FF204E'
>
/g,'').replace(/
<
\/
font
>
/g,'')"
v-if="item.id
&&
item.projectName" v-html="item.projectName">
</router-link>
<div
class=
"data_list_h1"
v-else-if=
"item.projectName"
v-html=
"item.projectName"
></div>
<div
class=
"label_wrap"
>
<template
v-if=
"item.companyName"
>
<span
class=
"label_item"
>
受让人:
</span>
<router-link
class=
"company"
:to=
"`/enterprise/$
{encodeStr(item.companyId)}/`"
target="_blank"
:title="item.companyName.replace(/
<font
color=
'#FF204E'
>
/g,'').replace(/
<
\/
font
>
/g,'')"
v-if="item.companyId" v-html="item.companyName">
</router-link>
<div
class=
"label_con"
v-else
v-html=
"item.companyName"
></div>
</
template
>
<
template
v-if=
"item.transactionPrice"
>
<span
class=
"label_item"
>
成交金额:
</span><span
class=
"label_con"
>
{{
item
.
transactionPrice
+
"万元"
}}
</span>
</
template
>
<
template
v-if=
"item.acreage"
>
<span
class=
"label_item"
>
出让面积:
</span><span
class=
"label_con"
>
{{
item
.
acreage
+
"m²"
}}
</span>
</
template
>
<
template
v-if=
"item.contractSignTime"
>
<span
class=
"label_item"
>
合同签订:
</span><span
class=
"label_con"
>
{{
item
.
contractSignTime
}}
</span>
</
template
>
</div>
<div
class=
"label_wrap"
>
<
template
v-if=
"item.landUse"
>
<span
class=
"label_item"
>
土地用途:
</span><span
class=
"label_con"
>
{{
item
.
landUse
}}
</span>
</
template
>
<
template
v-if=
"item.industry"
>
<span
class=
"label_item"
v-if=
"item.industry"
>
行业分类:
</span><span
class=
"label_con"
>
{{
item
.
industry
}}
</span>
</
template
>
<
template
v-if=
"item.supplyLandWay"
>
<span
class=
"label_item"
v-if=
"item.supplyLandWay"
>
供应方式:
</span><span
class=
"label_con"
>
{{
item
.
supplyLandWay
}}
</span>
</
template
>
</div>
<div
class=
"label_wrap"
>
<!-- <img class="landArea_img" v-if="item.domicile" src="~/assets/img/landArea.png" alt="" /> -->
<
template
v-if=
"item.domicile"
>
<span
class=
"label_item"
v-if=
"item.domicile"
>
行政区划:
</span><span
class=
"label_con"
>
{{
item
.
domicile
}}
</span>
</
template
>
<
template
v-if=
"item.landAddr"
>
<span
class=
"label_item"
v-if=
"item.landAddr"
>
土地坐落:
</span><span
class=
"label_con"
v-html=
"item.landAddr"
></span>
</
template
>
</div>
</div>
</div>
</div>
</div>
<!-- <div class="performance_pagination_wrap" v-if="showList&&total>0">
<Pagination
v-if="pageFlag"
ref="page"
:page='permissions.page'
@handle-current-change="handleCurrentChange"
@handle-size-change="handleSizeChange"
:total="total"
/>
</div> -->
</div>
</template>
<
script
>
import
jsk_data
from
'../../../../../public/jsk.json'
;
export
default
{
name
:
'Land'
,
data
()
{
return
{
conditionTitles
:
{
keyword
:
"关键词:"
,
landAddr
:
"土地坐落:"
,
companyName
:
"受让人:"
,
},
conditionsArr
:
[],
addressList
:
[],
addressType
:
[],
props
:
{
multiple
:
true
,
expandTrigger
:
"hover"
,
value
:
"id"
,
},
fieldshow
:
false
,
fieldText
:
'默认排序'
,
field
:
''
,
//查询结果排序方式
fieldOptions
:
[{
key
:
"contractSignTime"
,
value
:
"默认排序"
,
status
:
true
,
},
{
key
:
"transactionPrice"
,
value
:
"成交金额从大到小"
,
status
:
false
,
},
{
key
:
"acreage"
,
value
:
"出让面积从大到小"
,
status
:
false
,
},
],
page
:
1
,
limit
:
20
,
acreageOptions
:
[{
value
:
"不限"
,
label
:
"不限"
,
},
{
value
:
[
0
,
500
],
label
:
"500平以下"
,
},
{
value
:
[
500
,
1000
],
label
:
"500-1000平"
,
},
{
value
:
[
1000
,
5000
],
label
:
"1000-5000平"
,
},
{
value
:
[
5000
,
20000
],
label
:
"5000-2万平"
,
},
{
value
:
[
20000
,
50000
],
label
:
"2万-5万平"
,
},
{
value
:
[
50000
,
100000
],
label
:
"5万-10万平"
,
},
{
value
:
[
100000
,
""
],
label
:
"10万平以上"
,
},
],
transactionPriceOptions
:
[{
value
:
"不限"
,
label
:
"不限"
,
},
{
value
:
[
0
,
100
],
label
:
"100万元以下"
,
},
{
value
:
[
100
,
1000
],
label
:
"100万-1000万元"
,
},
{
value
:
[
1000
,
5000
],
label
:
"1000万-5000万元"
,
},
{
value
:
[
5000
,
20000
],
label
:
"5000万-2亿元"
,
},
{
value
:
[
20000
,
""
],
label
:
"2亿元以上"
,
},
],
contractSignTimeOptions
:
[{
label
:
"不限"
,
value
:
""
,
},
{
label
:
"近1个月"
,
value
:
"近1个月"
,
},
{
label
:
"近半年"
,
value
:
"近半年"
,
},
{
label
:
"近1年"
,
value
:
"近1年"
,
},
{
label
:
"近3年"
,
value
:
"近3年"
,
},
],
contractSignTimeValue
:
""
,
landUseOptions
:
[],
landMarketIndustryList
:
[],
supplyLandWayOptions
:
[
"划拨供地"
,
"协议出让"
,
"国有租赁"
,
"拍卖出让"
,
"招标出让"
,
"挂牌出让"
,
],
landMarketDto
:
{
landUse
:
[],
province
:
[],
city
:
[],
area
:
[],
supplyLandWay
:
[],
industry
:
[],
},
domicile
:
[],
startAcreage
:
""
,
endAcreage
:
""
,
showPopper
:
false
,
showIpt
:
false
,
volumeRateHigh
:
""
,
volumeRateLow
:
""
,
startTransactionPrice
:
""
,
endTransactionPrice
:
""
,
transactionPriceShowPopper
:
false
,
contractSignTime
:
""
,
contractSignTimeShowPopper
:
false
,
pageFlag
:
true
,
showList
:
true
,
total
:
0
,
tableData
:[],
};
},
computed
:
{
checkLandMarketDto
()
{
let
arr
=
[];
let
flag
=
false
;
let
data
=
{};
let
keyid
,
value
,
title
;
if
(
this
.
domicile
.
length
>
0
)
{
data
=
{
title
:
"行政区划:"
,
keyid
:
"domicile"
,
value
:
this
.
domicile
.
join
(
","
),
key
:
"domicile"
}
arr
.
push
(
data
)
}
if
(
this
.
contractSignTimeValue
==
"自定义"
)
{
data
=
{
title
:
"签订日期:"
,
value
:
this
.
landMarketDto
.
contractSignTimeStart
+
"~"
+
this
.
landMarketDto
.
contractSignTimeEnd
,
}
arr
.
push
(
data
)
}
if
(
this
.
contractSignTimeValue
&&
this
.
contractSignTimeValue
!=
"自定义"
)
{
data
=
{
title
:
"签订日期:"
,
value
:
this
.
contractSignTimeValue
,
}
arr
.
push
(
data
)
}
for
(
var
i
in
this
.
landMarketDto
)
{
if
(
this
.
landMarketDto
[
i
])
{
keyid
=
i
;
value
=
this
.
landMarketDto
[
i
];
if
(
Object
.
prototype
.
toString
.
call
(
this
.
landMarketDto
[
i
])
===
"[object Array]"
)
{
if
(
this
.
landMarketDto
[
i
].
length
>
0
)
{
flag
=
true
;
switch
(
i
)
{
case
'landUse'
:
title
=
"土地用途:"
;
break
;
case
'supplyLandWay'
:
title
=
"供应方式:"
;
break
;
case
'industry'
:
title
=
"行业分类:"
;
break
;
default
:
title
=
""
;
break
;
}
}
else
{
title
=
""
}
}
else
{
title
=
this
.
conditionTitles
[
i
];
flag
=
true
;
}
if
(
title
)
{
data
=
{
keyid
:
keyid
,
value
:
value
,
title
:
title
,
key
:
value
}
arr
.
push
(
data
)
}
}
}
this
.
conditionsArr
=
arr
return
flag
;
},
},
mounted
()
{
if
(
this
.
$route
.
query
.
keyword
)
{
var
obj
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
landMarketDto
));
obj
.
keyword
=
this
.
$route
.
query
.
keyword
;
this
.
landMarketDto
=
obj
;
}
this
.
addressListfn
();
// this.$axios.get('https://files.jiansheku.com/file/json/common/searchDic.json').then(res => {
// if (res && res.status == 200) {
// this.landMarketIndustryList = res.data.landMarketIndustry;
// this.landUseOptions = res.data.landUse
// }
// }).catch(error => {
// });
// if (this.landUseOptions.length == 0 || this.landMarketIndustryList.length == 0) {
// this.$axios.post("/nationzj/project/recently/typeList", {
// timeout: "49999",
// headers: {
// "Content-Type": "application/json;charset=UTF-8",
// },
// })
// .then((res) => {
// if (res.data.code == 200) {
// this.landUseOptions = res.data.data.landUseList;
// this.landMarketIndustryList = res.data.data.landMarketIndustryList;
// }
// })
// .catch((err) => {});
// }
},
methods
:
{
refresh
(
value
)
{
if
(
value
)
{
this
.
$router
.
go
(
0
)
}
},
search
(
page
,
limit
,
exportFlag
)
{
if
(
!
page
)
{
this
.
page
=
1
;
}
if
(
!
limit
)
{
this
.
limit
=
20
;
}
if
(
!
page
&&
!
limit
)
{
this
.
reloadPage
();
}
var
data
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
landMarketDto
));
data
.
landUse
=
data
.
landUse
.
join
(
","
);
data
.
province
=
data
.
province
.
join
(
","
);
data
.
city
=
data
.
city
.
join
(
","
);
data
.
area
=
data
.
area
.
join
(
","
);
data
.
supplyLandWay
=
data
.
supplyLandWay
.
join
(
","
);
data
.
industry
=
data
.
industry
.
join
(
","
);
let
params
=
{
page
:
{
page
:
this
.
page
,
limit
:
this
.
limit
,
field
:
this
.
field
,
},
landMarketDto
:
data
,
};
this
.
$emit
(
"search"
,
params
)
},
//关闭支付弹窗
resolve
(
value
)
{
if
(
value
)
{
this
.
$router
.
go
(
0
)
}
},
reloadPage
()
{
this
.
pageFlag
=
false
;
this
.
$nextTick
(()
=>
{
this
.
pageFlag
=
true
;
});
},
handleCurrentChange
(
page
)
{
this
.
page
=
page
;
this
.
search
(
page
,
this
.
limit
);
},
handleSizeChange
(
limit
)
{
this
.
limit
=
limit
;
this
.
search
(
this
.
page
,
limit
);
},
deleteDomicile
()
{
this
.
$refs
.
address
.
handleClear
();
},
domicileChange
()
{
let
arr
=
this
.
$refs
.
address
.
getCheckedNodes
();
let
province
=
[],
city
=
[],
area
=
[];
this
.
domicile
=
[];
for
(
var
i
in
arr
)
{
if
(
arr
[
i
].
parent
)
{
if
(
!
arr
[
i
].
parent
.
checked
)
{
arr
[
i
].
hasChildren
&&
city
.
push
(
arr
[
i
].
value
);
arr
[
i
].
hasChildren
&&
this
.
domicile
.
push
(
arr
[
i
].
label
);
!
arr
[
i
].
hasChildren
&&
area
.
push
(
arr
[
i
].
value
);
!
arr
[
i
].
hasChildren
&&
this
.
domicile
.
push
(
arr
[
i
].
label
);
}
}
else
{
province
.
push
(
arr
[
i
].
value
);
this
.
domicile
.
push
(
arr
[
i
].
label
);
}
}
var
obj
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
landMarketDto
));
obj
.
province
=
province
;
obj
.
city
=
city
;
obj
.
area
=
area
;
this
.
landMarketDto
=
obj
;
},
popperConfirm
()
{
if
(
this
.
startAcreage
&&
this
.
endAcreage
&&
!
(
Number
(
this
.
endAcreage
)
>
Number
(
this
.
startAcreage
))
)
{
return
this
.
$message
.
warning
(
"最小值必须小于最大值,请重新输入!"
);
}
this
.
showPopper
=
false
;
var
obj
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
landMarketDto
));
obj
.
startAcreage
=
this
.
startAcreage
;
obj
.
endAcreage
=
this
.
endAcreage
;
this
.
landMarketDto
=
obj
;
this
.
$refs
.
popper
.
hide
();
},
cancel
()
{
this
.
showPopper
=
false
;
this
.
$refs
.
popper
.
hide
();
},
transactionPricePopperConfirm
()
{
if
(
this
.
startTransactionPrice
&&
this
.
endTransactionPrice
&&
!
(
Number
(
this
.
endTransactionPrice
)
>
Number
(
this
.
startTransactionPrice
))
)
{
return
this
.
$message
.
warning
(
"最小值必须小于最大值,请重新输入!"
);
}
this
.
transactionPriceShowPopper
=
false
;
var
obj
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
landMarketDto
));
obj
.
startTransactionPrice
=
this
.
startTransactionPrice
;
obj
.
endTransactionPrice
=
this
.
endTransactionPrice
;
this
.
landMarketDto
=
obj
;
this
.
$refs
.
transactionPriceShowPopper
.
hide
();
},
transactionPriceCancel
()
{
this
.
transactionPriceShowPopper
=
false
;
this
.
$refs
.
transactionPriceShowPopper
.
hide
();
},
handleCommand
(
command
)
{
if
(
command
)
{
this
.
$refs
.
popper
.
hide
();
var
obj
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
landMarketDto
));
this
.
startAcreage
=
""
;
this
.
endAcreage
=
""
;
if
(
command
==
"不限"
)
{
obj
.
startAcreage
=
""
;
obj
.
endAcreage
=
""
;
}
else
{
obj
.
startAcreage
=
command
[
0
];
obj
.
endAcreage
=
command
[
1
];
}
this
.
landMarketDto
=
obj
;
}
},
transactionPricehandleCommand
(
command
)
{
if
(
command
)
{
this
.
$refs
.
transactionPriceShowPopper
.
hide
();
var
obj
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
landMarketDto
));
this
.
startTransactionPrice
=
""
;
this
.
endTransactionPrice
=
""
;
if
(
command
==
"不限"
)
{
obj
.
startTransactionPrice
=
""
;
obj
.
endTransactionPrice
=
""
;
}
else
{
obj
.
startTransactionPrice
=
command
[
0
];
obj
.
endTransactionPrice
=
command
[
1
];
}
this
.
landMarketDto
=
obj
;
}
},
contractSignTimehandleCommand
(
command
)
{
var
obj
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
landMarketDto
));
if
(
command
&&
command
!=
"自定义"
)
{
this
.
contractSignTimeValue
=
command
;
this
.
$refs
.
contractSignTimeShowPopper
.
hide
();
const
datetime
=
new
Date
();
var
startTime
,
endTime
,
Year
,
Month
,
Day
;
Year
=
datetime
.
getFullYear
();
Month
=
datetime
.
getMonth
()
+
1
;
Day
=
datetime
.
getDate
();
switch
(
command
)
{
case
"近1个月"
:
if
(
Month
>
1
)
{
startTime
=
Year
+
"-"
+
(
Month
-
1
)
+
"-1"
;
}
else
{
startTime
=
Year
-
1
+
"-"
+
(
12
+
Month
-
1
)
+
"-1"
;
}
endTime
=
Year
+
"-"
+
Month
+
"-"
+
Day
;
break
;
case
"近半年"
:
if
(
Month
>
6
)
{
startTime
=
Year
+
"-"
+
(
Month
-
6
)
+
"-1"
;
}
else
{
startTime
=
Year
-
1
+
"-"
+
(
12
+
Month
-
6
)
+
"-1"
;
}
endTime
=
Year
+
"-"
+
Month
+
"-"
+
Day
;
break
;
case
"近1年"
:
startTime
=
Year
-
1
+
"-"
+
Month
+
"-"
+
Day
;
endTime
=
Year
+
"-"
+
Month
+
"-"
+
Day
;
break
;
case
"近3年"
:
startTime
=
Year
-
3
+
"-"
+
Month
+
"-"
+
Day
;
endTime
=
Year
+
"-"
+
Month
+
"-"
+
Day
;
break
;
case
"自定义"
:
if
(
!
this
.
contractSignTime
)
{
this
.
contractSignTimeValue
=
""
;
}
break
;
}
if
(
startTime
)
{
var
start
=
startTime
.
split
(
'-'
);
startTime
=
start
.
map
((
item
)
=>
{
if
(
item
.
length
==
1
)
{
return
'0'
+
item
}
else
{
return
item
}
})
startTime
=
startTime
.
join
(
'-'
)
}
if
(
endTime
)
{
var
end
=
endTime
.
split
(
'-'
);
endTime
=
end
.
map
((
item
)
=>
{
if
(
item
.
length
==
1
)
{
return
'0'
+
item
}
else
{
return
item
}
})
endTime
=
endTime
.
join
(
'-'
)
}
obj
.
contractSignTimeStart
=
startTime
;
obj
.
contractSignTimeEnd
=
endTime
;
}
else
if
(
command
==
"自定义"
)
{
this
.
$refs
.
datePicker
.
pickerVisible
=
true
;
}
else
{
this
.
$refs
.
contractSignTimeShowPopper
.
hide
();
this
.
contractSignTimeValue
=
""
;
this
.
contractSignTime
=
""
;
obj
.
contractSignTimeStart
=
""
;
obj
.
contractSignTimeEnd
=
""
;
}
this
.
landMarketDto
=
obj
;
},
changeContractSignTime
()
{
if
(
this
.
contractSignTime
)
{
this
.
contractSignTimeValue
=
"自定义"
;
var
obj
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
landMarketDto
));
obj
.
contractSignTimeStart
=
this
.
contractSignTime
[
0
];
obj
.
contractSignTimeEnd
=
this
.
contractSignTime
[
1
];
this
.
landMarketDto
=
obj
;
}
},
addressListfn
()
{
var
str
=
[];
for
(
let
x
=
0
;
x
<
3
;
x
++
)
{
for
(
let
i
=
0
;
i
<
jsk_data
.
length
;
i
++
)
{
if
(
jsk_data
[
i
].
regionLevel
==
x
+
1
&&
x
+
1
==
1
)
{
str
.
push
({
id
:
jsk_data
[
i
].
id
,
label
:
jsk_data
[
i
].
regionName
,
short
:
jsk_data
[
i
].
short
,
value
:
jsk_data
[
i
].
parentId
,
children
:
jsk_data
[
i
].
id
==
900000
?
undefined
:
[],
});
}
else
if
(
jsk_data
[
i
].
regionLevel
==
x
+
1
&&
x
+
1
==
2
&&
str
)
{
for
(
let
j
=
0
;
j
<
str
.
length
;
j
++
)
{
if
(
str
[
j
].
id
==
jsk_data
[
i
].
parentId
)
{
str
[
j
].
children
.
push
({
id
:
jsk_data
[
i
].
id
,
label
:
jsk_data
[
i
].
regionName
,
short
:
jsk_data
[
i
].
short
,
value
:
jsk_data
[
i
].
parentId
,
children
:
[],
});
}
}
}
else
if
(
jsk_data
[
i
].
regionLevel
==
x
+
1
&&
x
+
1
==
3
)
{
for
(
let
j
=
0
;
j
<
str
.
length
;
j
++
)
{
if
(
str
[
j
].
children
)
{
for
(
let
k
=
0
;
k
<
str
[
j
].
children
.
length
;
k
++
)
{
if
(
str
[
j
].
children
[
k
].
id
==
jsk_data
[
i
].
parentId
)
{
str
[
j
].
children
[
k
].
children
.
push
({
id
:
jsk_data
[
i
].
id
,
label
:
jsk_data
[
i
].
regionName
,
short
:
jsk_data
[
i
].
short
,
value
:
jsk_data
[
i
].
parentId
,
});
}
}
}
}
}
}
}
this
.
addressList
=
str
;
},
hidePoper
()
{
if
(
this
.
$refs
.
datePicker
)
{
this
.
$refs
.
datePicker
.
pickerVisible
=
false
;
}
},
mouseenter
()
{
this
.
contractSignTimeShowPopper
=
true
;
if
(
this
.
contractSignTimeValue
==
"自定义"
)
{
this
.
$nextTick
(()
=>
{
this
.
$refs
.
datePicker
.
pickerVisible
=
true
;
});
}
},
handsequencingList
(
index
)
{
this
.
fieldshow
=
false
;
this
.
field
=
this
.
fieldOptions
[
index
].
key
;
for
(
let
i
=
0
;
i
<
this
.
fieldOptions
.
length
;
i
++
)
{
this
.
fieldOptions
[
i
].
status
=
false
;
}
this
.
fieldText
=
this
.
fieldOptions
[
index
].
value
;
this
.
fieldOptions
[
index
].
status
=
true
;
this
.
search
();
},
volumeRateConfirm
()
{
if
(
this
.
volumeRateLow
&&
this
.
volumeRateHigh
&&
!
(
Number
(
this
.
volumeRateHigh
)
>
Number
(
this
.
volumeRateLow
))
)
{
return
this
.
$message
.
warning
(
"最小值必须小于最大值,请重新输入!"
);
}
var
obj
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
landMarketDto
));
obj
.
volumeRateHigh
=
this
.
volumeRateHigh
;
obj
.
volumeRateLow
=
this
.
volumeRateLow
;
this
.
landMarketDto
=
obj
;
this
.
showIpt
=
false
;
},
clearContractSignTime
()
{
this
.
contractSignTime
=
""
;
this
.
contractSignTimeValue
=
""
;
var
obj
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
landMarketDto
));
obj
.
contractSignTimeStart
=
""
;
obj
.
contractSignTimeEnd
=
""
;
this
.
landMarketDto
=
obj
;
},
reset
()
{
Object
.
assign
(
this
.
$data
,
this
.
$options
.
data
.
call
(
this
));
//重置data
this
.
init
();
this
.
$emit
(
"reset"
);
},
init
()
{
this
.
search
();
this
.
addressListfn
();
this
.
$axios
.
get
(
'https://files.jiansheku.com/file/json/common/searchDic.json'
).
then
(
res
=>
{
if
(
res
&&
res
.
status
==
200
)
{
this
.
landMarketIndustryList
=
res
.
data
.
landMarketIndustry
;
this
.
landUseOptions
=
res
.
data
.
landUse
}
}).
catch
(
error
=>
{
});
if
(
this
.
landUseOptions
.
length
==
0
||
this
.
landMarketIndustryList
.
length
==
0
)
{
this
.
$axios
.
post
(
"/nationzj/project/recently/typeList"
,
{
timeout
:
"49999"
,
headers
:
{
"Content-Type"
:
"application/json;charset=UTF-8"
,
},
})
.
then
((
res
)
=>
{
if
(
res
.
data
.
code
==
200
)
{
this
.
landUseOptions
=
res
.
data
.
data
.
landUseList
;
this
.
landMarketIndustryList
=
res
.
data
.
data
.
landMarketIndustryList
;
}
})
.
catch
((
err
)
=>
{});
}
},
},
};
</
script
>
<
style
lang=
"scss"
>
#landInfo_wrap
{
}
</
style
>
<
style
lang=
"scss"
scoped
>
.content
{
padding
:
0px
16px
;
border-radius
:
4px
4px
4px
4px
;
background
:
#FFFFFF
;
.content_item
{
padding-top
:
12px
;
display
:
flex
;
align-items
:
center
;
.label
{
width
:
84px
;
font-size
:
14px
;
font-weight
:
400
;
color
:
rgba
(
35
,
35
,
35
,
0
.8
);
}
.content_right
{
.ename_input
{
width
:
640px
;
margin-right
:
20px
;
}
.land_ipt_470
{
width
:
640px
;
}
}
.item_ckquery_list
{
display
:
flex
;
}
.item_ckquery_list
.el-input__icon
{
position
:
relative
;
top
:
1px
;
}
.ckquery_list_right
{
width
:
640px
;
}
.register_count_ipt
{
margin-left
:
0px
;
}
.register_count_ipt
.el-input__inner
{
width
:
174px
;
}
::v-deep
.el-input-group__prepend
{
padding
:
0
8px
;
}
.content-projecttype
{
display
:
flex
;
align-items
:
center
;
justify-content
:
center
;
.projecttype
{
font-weight
:
400
;
color
:
#232323
;
padding
:
1px
5px
;
margin-right
:
4px
;
cursor
:
pointer
;
border-radius
:
3px
3px
3px
3px
;
font-size
:
14px
;
}
.projecttype
:first-child
{
padding-left
:
0px
;
}
.projecttype
:hover
{
background
:
#F3F4F5
;
padding
:
1px
5px
;
}
.activetype
{
background
:
#F3F4F5
;
padding
:
1px
5px
!
important
;
}
}
}
.content_item_padding0
{
padding
:
0
;
}
}
.bottomlist
{
width
:
100%
;
background-color
:
#FFFFFF
;
border-radius
:
4px
4px
4px
4px
;
.bottomlist-title
{
display
:
flex
;
justify-content
:
end
;
align-items
:
center
;
margin-top
:
12px
;
padding
:
24px
;
border-bottom
:
1px
solid
#EFEFEF
;
p
:first-child
{
font-size
:
12px
;
font-weight
:
400
;
color
:
#3D3D3D
;
margin-right
:
10px
;
}
p
:last-child
{
font-size
:
14px
;
font-weight
:
400
;
color
:
rgba
(
35
,
35
,
35
,
0
.8
);
}
img
{
width
:
18px
;
height
:
18px
;
}
}
.bottomlist-content
{
padding-bottom
:
0px
;
}
.bottomlist-list
{
padding
:
14px
;
font-size
:
14px
;
border-bottom
:
1px
solid
#EFEFEF
;
padding-bottom
:
14px
;
.list-titel
{
font-size
:
16px
;
font-weight
:
700
;
color
:
#3D3D3D
;
line-height
:
19px
;
.list-titel-a
{
text-decoration
:
none
;
color
:
#3D3D3D
;
}
a
:hover
,
a
:visited
,
a
:link
,
a
:active
{
color
:
#3D3D3D
;
}
}
.content-label
{
margin-top
:
7px
;
.list-label
{
background
:
#F3F3FF
;
color
:
#8491E8
;
border-radius
:
1px
1px
1px
1px
;
padding
:
3px
7px
;
font-size
:
12px
;
}
}
.list-content
{
margin-top
:
3px
;
display
:
flex
;
justify-content
:
start
;
align-items
:
center
;
.list-content-text
{
margin-top
:
7px
;
display
:
flex
;
justify-content
:
start
;
align-items
:
center
;
margin-right
:
27px
;
font-size
:
14px
;
span
:first-child
{
font-weight
:
400
;
color
:
rgba
(
35
,
35
,
35
,
0
.4
);
line-height
:
15px
}
span
:last-child
{
font-weight
:
400
;
color
:
rgba
(
35
,
35
,
35
,
0
.8
);
line-height
:
15px
}
.blue
{
color
:
#0081FF
!
important
;
cursor
:
pointer
;
}
}
}
}
.bottomlist-list
:hover
{
background
:
#F6F9FC
;
cursor
:
pointer
;
}
.pagination
{
padding
:
14px
;
.el-pagination
{
float
:
right
;
}
}
}
#landInfo_wrap
{
padding
:
0
16px
;
font-size
:
14px
;
.land_content_wrap
{
display
:
flex
;
.land_content_wrap_label
{
color
:
#666666
;
margin-right
:
4px
;
}
}
.data_list
{
width
:
1184px
;
margin
:
0
auto
;
.data_list_head
{
height
:
50px
;
line-height
:
50px
;
color
:
#666666
;
.data_list_count
{
color
:
#ff2a00
;
font-weight
:
bold
;
}
}
.data_list_item
{
border-top
:
1px
solid
#efefef
;
padding
:
24px
16px
;
padding-left
:
16px
;
margin-left
:
-16px
;
&
:hover
{
background
:
#f5faff
;
}
.data_list_h1
{
width
:
1168px
;
font-size
:
18px
;
font-weight
:
bold
;
color
:
#333333
;
line-height
:
24px
;
margin-bottom
:
6px
;
word-break
:
break-all
;
display
:
inline-block
;
}
.data_list_h1_1
{
cursor
:
pointer
;
}
.label_wrap
{
font-size
:
14px
;
margin-top
:
10px
;
line-height
:
18px
;
display
:
flex
;
.landArea_img
{
width
:
18px
;
height
:
17px
;
margin-right
:
4px
;
position
:
relative
;
top
:
-3px
;
}
.label_item
{
color
:
#999999
;
}
.company
{
color
:
#0081ff
;
cursor
:
pointer
;
margin-right
:
20px
;
}
.label_con
{
color
:
#333333
;
margin-right
:
20px
;
}
}
}
}
.content_li
{
padding
:
16px
0
;
display
:
flex
;
align-items
:
center
;
position
:
relative
;
.content_item
{
.include-keywords
{
display
:
flex
;
align-items
:
center
;
position
:
relative
;
.lefttltel
{
display
:
inline-block
;
background
:
#f5f5f5
;
color
:
#333
;
border
:
1px
solid
#efefef
;
border-right
:
none
;
opacity
:
1
;
width
:
71px
;
height
:
40px
;
text-align
:
center
;
line-height
:
40px
;
}
.el-input
{
line-height
:
40px
;
border-radius
:
0
;
::v-deep
.el-input__inner
{
width
:
100%
;
height
:
40px
;
line-height
:
40px
;
border-radius
:
0
;
}
}
.commonly-input
{
::v-deep
.el-input__inner
{
padding-right
:
100px
;
}
}
.commonly
{
position
:
absolute
;
top
:
10px
;
right
:
16px
;
font-size
:
14px
;
font-weight
:
400
;
color
:
#0081ff
;
cursor
:
pointer
;
}
}
}
}
}
</
style
>
\ No newline at end of file
dsk-operate-ui/src/views/radar/components/debtProject/index.vue
View file @
9c20c3b7
...
...
@@ -455,7 +455,6 @@
<
style
lang=
"scss"
scoped
>
.content
{
padding
:
0px
16px
;
border-radius
:
4px
4px
4px
4px
;
background
:
#FFFFFF
;
.content_item
{
...
...
@@ -563,10 +562,11 @@
}
}
.bottomlist-content
{
padding
:
14px
;
padding-bottom
:
0px
;
}
.bottomlist-list
{
padding
:
14px
;
font-size
:
14px
;
border-bottom
:
1px
solid
#EFEFEF
;
padding-bottom
:
14px
;
...
...
dsk-operate-ui/src/views/radar/index.vue
View file @
9c20c3b7
...
...
@@ -14,28 +14,30 @@
</div>
</div>
<debtProject
v-if=
"personnelHerf=='debtProject'"
/>
<Land
v-if=
"personnelHerf=='Land'"
/>
</div>
</
template
>
<
script
>
import
debtProject
from
"./components/debtProject/index.vue"
;
import
Land
from
"./components/Land/index.vue"
;
import
"@/assets/styles/public.css"
;
export
default
{
name
:
'radar'
,
components
:
{
debtProject
},
components
:
{
debtProject
,
Land
},
data
()
{
return
{
// tablist
personnelList
:
[{
key
:
'debtProject'
,
status
:
tru
e
,
status
:
fals
e
,
value
:
'企业专项债项目'
,
},
{
key
:
'
Builder
'
,
status
:
fals
e
,
key
:
'
Land
'
,
status
:
tru
e
,
value
:
'土地交易'
,
},
...
...
@@ -71,7 +73,7 @@
},
],
personnelHerf
:
'
debtProject
'
personnelHerf
:
'
Land
'
}
},
created
()
{},
...
...
@@ -81,7 +83,7 @@
this
.
personnelList
[
i
].
status
=
false
;
}
this
.
personnelList
[
index
].
status
=
true
;
this
.
personnelHerf
=
this
.
personnelList
[
index
].
key
;
},
}
}
...
...
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