Skip to content
Toggle navigation
Toggle navigation
This project
Loading...
Sign in
任超
/
js.CadastralSystem
Go to a project
Toggle navigation
Toggle navigation pinning
Projects
Groups
Snippets
Help
Project
Activity
Repository
Pipelines
Graphs
Issues
0
Merge Requests
0
Wiki
Network
Create a new issue
Builds
Commits
Issue Boards
Files
Commits
Network
Compare
Branches
Tags
281fa572
authored
2020-11-23 18:22:00 +0800
by
杨威
Browse Files
Options
Browse Files
Tag
Download
Email Patches
Plain Diff
查询左侧目录树所有权类型节点下的宗地和自然幢信息
1 parent
094877b4
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
103 additions
and
8 deletions
src/api/common.js
src/components/lineTree/lineItem.vue
src/components/lineTree/lineTree.vue
src/api/common.js
View file @
281fa57
...
...
@@ -47,6 +47,22 @@ export function getListByPbsm(pbsm) {
}
/**
* 跟据所有权类型及其所在行政区,地籍区,地籍子区查询宗地和自然幢信息
*/
export
function
getZdDetailList
(
data
)
{
return
request
({
url
:
'system/xzq/getZdDetailList'
,
method
:
'get'
,
params
:
{
xzqbsm
:
data
.
xzqbsm
,
djqbsm
:
data
.
djqbsm
,
djzqbsm
:
data
.
djzqbsm
,
syqlx
:
data
.
syqlx
}
})
}
/**
* 通过名称获取字典
*/
export
function
getDdicByMC
(
mc
)
{
...
...
src/components/lineTree/lineItem.vue
View file @
281fa57
<
template
>
<div
class=
"tree_item_box"
>
<div
class=
"tree_item_box"
:class=
"list.length>10 ? 'ofy_scroll':''"
:style=
"
{maxHeight:(list.length > 10 ? treeXzqHeight:'unset')+'px'}"
>
<div
class=
"column-start-start linkLine_default"
v-for=
"(item, s_index) in list"
...
...
@@ -34,6 +34,14 @@
}"
>
</div>
<div
v-if=
"item.children==null"
class=
"reTree_icon reTree_expand_icon"
:style=
"
{
height: (size || 14 * 1.2) + 'px',
width: (size || 14 * 1.2) + 'px',
}"
>
</div>
<div
class=
"layer_text nowrap"
@
contextmenu
.
prevent=
"openMenu($event, item,list)"
:class=
"
{
...
...
@@ -53,6 +61,7 @@
</div>
</
template
>
<
script
>
import
{
getZdDetailList
}
from
"../../api/common"
export
default
{
name
:
"line-item"
,
props
:
{
...
...
@@ -62,6 +71,12 @@ export default {
return
[];
},
},
formatData
:
{
type
:
Array
,
default
:
()
=>
{
return
[];
},
},
size
:
{
type
:
Number
,
default
:
14
,
...
...
@@ -77,20 +92,43 @@ export default {
},
data
()
{
return
{
time
:
null
time
:
null
,
treeXzqHeight
:
0
,
}
},
mounted
(){
this
.
$nextTick
(()
=>
{
this
.
treeXzqHeight
=
this
.
$parent
.
$el
.
clientHeight
-
(
this
.
formatData
.
length
-
1
)
*
26
+
60
;
})
},
methods
:
{
itemClick
(
item
)
{
let
self
=
this
;
// 开启延时器,300ms的间隔区分单击和双击,解决双击时执行两次单击事件
clearTimeout
(
self
.
time
);
self
.
time
=
setTimeout
(()
=>
{
item
.
expand
=
item
.
expand
==
undefined
?
true
:
!
item
.
expand
;
self
.
$emit
(
"itemClick"
,
item
);
//
self.$emit("itemClick", item);
if
(
!
item
.
children
)
{
self
.
$emit
(
"valClick"
,
item
);
let
data
=
{
xzqbsm
:
item
.
xzq
,
djqbsm
:
item
.
djq
,
djzqbsm
:
item
.
djzq
,
syqlx
:
item
.
dm
}
getZdDetailList
(
data
).
then
((
res
)
=>
{
if
(
res
.
result
.
length
>
0
)
{
res
.
result
.
forEach
(
i
=>
{
if
(
i
.
children
.
length
>
0
){
i
.
expand
=
false
;
}
})
self
.
$emit
(
"ownerMethod"
,
item
,
res
.
result
);
}
})
.
catch
((
error
)
=>
{
});
}
},
300
);
},
...
...
@@ -190,6 +228,10 @@ export default {
width
:
100%
;
cursor
:
pointer
;
}
.ofy_scroll
{
overflow-y
:
scroll
;
overflow-x
:
hidden
;
}
.basic_layer
{
width
:
100%
;
position
:
relative
;
...
...
@@ -222,7 +264,7 @@ export default {
position
:
relative
;
//
padding-bottom
:
15px
;
width
:
100%
;
padding-left
:
40
px
;
padding-left
:
25
px
;
}
.white_layer
{
color
:
black
!important
;
...
...
@@ -243,7 +285,7 @@ export default {
content
:
""
;
position
:
absolute
;
height
:
1px
;
width
:
22
px
;
width
:
16
px
;
left
:
8px
;
top
:
8px
;
opacity
:
.5
;
...
...
src/components/lineTree/lineTree.vue
View file @
281fa57
...
...
@@ -34,6 +34,7 @@
<lineItem
v-if=
"item.expand && item.children.length > 0"
v-on=
"$listeners"
@
ownerMethod=
"ownerMethod(arguments)"
@
changeTop=
"changeTop"
@
changeZdData=
"changeZdData"
@
changeLeft=
"changeLeft"
...
...
@@ -45,6 +46,7 @@
:visible=
"visible"
:size=
"size"
:islpb=
"islpb"
:formatData=
"formatData"
></lineItem>
</div>
...
...
@@ -212,8 +214,42 @@ export default {
},
itemClick
(
item
)
{
// item.expand = item.expand == undefined? true:!item.expand;
console
.
log
(
item
,
'item'
);
console
.
log
(
this
.
formatData
,
'this.formatData'
);
this
.
formatData
.
forEach
(
i
=>
{
if
(
i
.
bsm
!=
item
.
bsm
){
i
.
expand
=
false
}
else
{
// i.expand = !item.expand
}
})
item
.
expand
=
!
item
.
expand
;
this
.
$emit
(
"itemClick"
,
item
);
// this.$emit("itemClick", item);
},
//给所有权类型添加子节点
ownerMethod
(
arr
){
let
item
=
arr
[
0
];
let
list
=
arr
[
1
]
this
.
formatData
.
forEach
(
i
=>
{
if
(
i
.
bsm
==
item
.
xzq
){
i
.
children
.
forEach
(
j
=>
{
if
(
j
.
bsm
==
item
.
djq
)
{
j
.
children
.
forEach
(
k
=>
{
if
(
k
.
bsm
==
item
.
djzq
){
k
.
children
.
forEach
(
n
=>
{
if
(
n
.
dm
==
item
.
dm
){
this
.
$nextTick
(()
=>
{
n
.
children
=
list
;
})
}
})
}
})
}
})
}
})
console
.
log
(
this
.
formatData
,
'formatData'
);
},
//自然幢右键点击事件
openMenu
(
e
,
item
){
...
...
@@ -273,6 +309,7 @@ export default {
flex-direction
:
column
;
justify-content
:
flex-start
;
align-items
:
center
;
}
.row-flex-start
{
display
:
flex
;
...
...
Please
register
or
sign in
to post a comment