Skip to content
Toggle navigation
Toggle navigation
This project
Loading...
Sign in
bdc
/
bdcdj-web
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
ff6711fb
authored
2022-11-30 10:16:48 +0800
by
任超
Browse Files
Options
Browse Files
Tag
Download
Email Patches
Plain Diff
style:业务申请
1 parent
457e9f87
Show whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
158 additions
and
130 deletions
src/components/LbTable/lb-column.vue
src/components/LbTable/radio.js
src/components/lbTable/lb-column.vue
src/views/ywbl/ywsq/guidePage.vue
src/views/ywbl/ywsq/javascript/jsydsyq100.js
src/views/ywbl/ywsq/selectBdc.vue
src/components/LbTable/lb-column.vue
View file @
ff6711f
...
...
@@ -9,54 +9,30 @@
*/
<
template
>
<el-table-column
v-bind=
"$attrs"
v-on=
"$listeners"
:prop=
"column.prop"
:label=
"column.label"
:type=
"column.type"
:index=
"column.index"
:column-key=
"column.columnKey"
:width=
"column.width"
:min-width=
"column.minWidth"
:fixed=
"column.fixed"
:scoped-slot=
"column.renderHeader"
:sortable=
"column.sortable || false"
:sort-method=
"column.sortMethod"
:sort-by=
"column.sortBy"
:sort-orders=
"column.sortOrders"
:resizable=
"column.resizable || true"
:formatter=
"column.formatter"
:show-overflow-tooltip=
"column.showOverflowTooltip || false"
:align=
"column.align || align || 'center'"
<el-table-column
v-bind=
"$attrs"
v-on=
"$listeners"
:prop=
"column.prop"
:label=
"column.label"
:type=
"column.type"
:index=
"column.index"
:column-key=
"column.columnKey"
:width=
"column.width"
:min-width=
"column.minWidth"
:fixed=
"column.fixed"
:scoped-slot=
"column.renderHeader"
:sortable=
"column.sortable || false"
:sort-method=
"column.sortMethod"
:sort-by=
"column.sortBy"
:sort-orders=
"column.sortOrders"
:resizable=
"column.resizable || true"
:formatter=
"column.formatter"
:show-overflow-tooltip=
"column.showOverflowTooltip || false"
:align=
"column.align || align || 'center'"
:header-align=
"column.headerAlign || headerAlign || column.align || align || 'center'"
:class-name=
"column.className"
:label-class-name=
"column.labelClassName"
:selectable=
"column.selectable"
:reserve-selection=
"column.reserveSelection || false"
:filters=
"column.filters"
:filter-placement=
"column.filterPlacement"
:filter-multiple=
"column.filterMultiple"
:filter-method=
"column.filterMethod"
:filtered-value=
"column.filteredValue"
>
<template
slot=
"header"
slot-scope=
"scope"
>
<lb-render
v-if=
"column.renderHeader"
:scope=
"scope"
:render=
"column.renderHeader"
>
:class-name=
"column.className"
:label-class-name=
"column.labelClassName"
:selectable=
"column.selectable"
:reserve-selection=
"column.reserveSelection || false"
:filters=
"column.filters"
:filter-placement=
"column.filterPlacement"
:filter-multiple=
"column.filterMultiple"
:filter-method=
"column.filterMethod"
:filtered-value=
"column.filteredValue"
>
<template
slot=
"header"
slot-scope=
"scope"
>
<lb-render
v-if=
"column.renderHeader"
:scope=
"scope"
:render=
"column.renderHeader"
>
</lb-render>
<span
v-else
>
{{
scope
.
column
.
label
}}
</span>
</
template
>
<
template
slot-scope=
"scope"
>
<lb-render
:scope=
"scope"
:render=
"column.render"
>
<lb-render
:scope=
"scope"
:render=
"column.render"
>
</lb-render>
</
template
>
<
template
v-if=
"column.children"
>
<lb-column
v-for=
"(col, index) in column.children"
:key=
"index"
:column=
"col"
>
<lb-column
v-for=
"(col, index) in column.children"
:key=
"index"
:column=
"col"
>
</lb-column>
</
template
>
</el-table-column>
...
...
@@ -65,6 +41,7 @@
<
script
>
import
LbRender
from
'./lb-render'
import
forced
from
'./forced.js'
import
radio
from
'./radio.js'
export
default
{
name
:
'LbColumn'
,
props
:
{
...
...
@@ -77,18 +54,21 @@ export default {
},
methods
:
{
setColumn
()
{
if
(
this
.
column
.
type
)
{
if
(
this
.
column
.
type
&&
this
.
column
.
type
!=
'radio'
)
{
this
.
column
.
renderHeader
=
forced
[
this
.
column
.
type
].
renderHeader
this
.
column
.
render
=
this
.
column
.
render
||
forced
[
this
.
column
.
type
].
renderCell
}
if
(
this
.
column
.
type
==
'radio'
)
{
this
.
column
.
render
=
this
.
column
.
render
||
radio
[
this
.
column
.
type
].
renderCell
}
if
(
this
.
column
.
formatter
)
{
this
.
column
.
render
=
(
h
,
scope
)
=>
{
return
<
span
>
{
scope
.
column
.
formatter
(
scope
.
row
,
scope
.
column
,
scope
.
row
,
scope
.
$index
)
}
<
/span
>
return
<
span
>
{
scope
.
column
.
formatter
(
scope
.
row
,
scope
.
column
,
scope
.
row
,
scope
.
$index
)
}
<
/span
>
}
}
if
(
!
this
.
column
.
render
)
{
this
.
column
.
render
=
(
h
,
scope
)
=>
{
return
<
span
>
{
scope
.
row
[
scope
.
column
.
property
]
}
<
/span
>
return
<
span
>
{
scope
.
row
[
scope
.
column
.
property
]
}
<
/span
>
}
}
}
...
...
src/components/LbTable/radio.js
0 → 100644
View file @
ff6711f
export
default
{
radio
:
{
renderHeader
:
(
h
,
{
store
})
=>
{
return
'单选'
},
renderCell
:
(
h
,
{
row
,
column
,
store
,
$index
})
=>
{
return
(
<
el
-
radio
nativeOn
-
click
=
{
event
=>
event
.
stopPropagation
()}
value
=
{
store
.
isSelected
(
row
)}
disabled
=
{
column
.
selectable
?
!
column
.
selectable
.
call
(
null
,
row
,
$index
)
:
false
}
on
-
input
=
{()
=>
{
store
.
commit
(
'rowSelectedChanged'
,
row
)
}}
/
>
)
},
sortable
:
false
,
resizable
:
false
},
index
:
{
renderHeader
:
(
h
,
scope
)
=>
{
return
<
span
>
{
scope
.
column
.
label
||
'#'
}
<
/span
>
},
renderCell
:
(
h
,
{
$index
,
column
})
=>
{
let
i
=
$index
+
1
const
index
=
column
.
index
if
(
typeof
index
===
'number'
)
{
i
=
$index
+
index
}
else
if
(
typeof
index
===
'function'
)
{
i
=
index
(
$index
)
}
return
<
div
>
{
i
}
<
/div
>
},
sortable
:
false
},
expand
:
{
renderHeader
:
(
h
,
scope
)
=>
{
return
<
span
>
{
scope
.
column
.
label
||
''
}
<
/span
>
},
renderCell
:
(
h
,
{
row
,
store
},
proxy
)
=>
{
const
expanded
=
store
.
states
.
expandRows
.
indexOf
(
row
)
>
-
1
return
(
<
div
class
=
{
'el-table__expand-icon '
+
(
expanded
?
'el-table__expand-icon--expanded'
:
''
)
}
on
-
click
=
{
e
=>
proxy
.
handleExpandClick
(
row
,
e
)}
>
<
i
class
=
'el-icon el-icon-arrow-right'
/>
<
/div
>
)
},
sortable
:
false
,
resizable
:
false
,
className
:
'el-table__expand-column'
}
}
src/components/lbTable/lb-column.vue
View file @
ff6711f
...
...
@@ -9,54 +9,30 @@
*/
<
template
>
<el-table-column
v-bind=
"$attrs"
v-on=
"$listeners"
:prop=
"column.prop"
:label=
"column.label"
:type=
"column.type"
:index=
"column.index"
:column-key=
"column.columnKey"
:width=
"column.width"
:min-width=
"column.minWidth"
:fixed=
"column.fixed"
:scoped-slot=
"column.renderHeader"
:sortable=
"column.sortable || false"
:sort-method=
"column.sortMethod"
:sort-by=
"column.sortBy"
:sort-orders=
"column.sortOrders"
:resizable=
"column.resizable || true"
:formatter=
"column.formatter"
:show-overflow-tooltip=
"column.showOverflowTooltip || false"
:align=
"column.align || align || 'center'"
<el-table-column
v-bind=
"$attrs"
v-on=
"$listeners"
:prop=
"column.prop"
:label=
"column.label"
:type=
"column.type"
:index=
"column.index"
:column-key=
"column.columnKey"
:width=
"column.width"
:min-width=
"column.minWidth"
:fixed=
"column.fixed"
:scoped-slot=
"column.renderHeader"
:sortable=
"column.sortable || false"
:sort-method=
"column.sortMethod"
:sort-by=
"column.sortBy"
:sort-orders=
"column.sortOrders"
:resizable=
"column.resizable || true"
:formatter=
"column.formatter"
:show-overflow-tooltip=
"column.showOverflowTooltip || false"
:align=
"column.align || align || 'center'"
:header-align=
"column.headerAlign || headerAlign || column.align || align || 'center'"
:class-name=
"column.className"
:label-class-name=
"column.labelClassName"
:selectable=
"column.selectable"
:reserve-selection=
"column.reserveSelection || false"
:filters=
"column.filters"
:filter-placement=
"column.filterPlacement"
:filter-multiple=
"column.filterMultiple"
:filter-method=
"column.filterMethod"
:filtered-value=
"column.filteredValue"
>
<template
slot=
"header"
slot-scope=
"scope"
>
<lb-render
v-if=
"column.renderHeader"
:scope=
"scope"
:render=
"column.renderHeader"
>
:class-name=
"column.className"
:label-class-name=
"column.labelClassName"
:selectable=
"column.selectable"
:reserve-selection=
"column.reserveSelection || false"
:filters=
"column.filters"
:filter-placement=
"column.filterPlacement"
:filter-multiple=
"column.filterMultiple"
:filter-method=
"column.filterMethod"
:filtered-value=
"column.filteredValue"
>
<template
slot=
"header"
slot-scope=
"scope"
>
<lb-render
v-if=
"column.renderHeader"
:scope=
"scope"
:render=
"column.renderHeader"
>
</lb-render>
<span
v-else
>
{{
scope
.
column
.
label
}}
</span>
</
template
>
<
template
slot-scope=
"scope"
>
<lb-render
:scope=
"scope"
:render=
"column.render"
>
<lb-render
:scope=
"scope"
:render=
"column.render"
>
</lb-render>
</
template
>
<
template
v-if=
"column.children"
>
<lb-column
v-for=
"(col, index) in column.children"
:key=
"index"
:column=
"col"
>
<lb-column
v-for=
"(col, index) in column.children"
:key=
"index"
:column=
"col"
>
</lb-column>
</
template
>
</el-table-column>
...
...
@@ -65,6 +41,7 @@
<
script
>
import
LbRender
from
'./lb-render'
import
forced
from
'./forced.js'
import
radio
from
'./radio.js'
export
default
{
name
:
'LbColumn'
,
props
:
{
...
...
@@ -77,18 +54,21 @@ export default {
},
methods
:
{
setColumn
()
{
if
(
this
.
column
.
type
)
{
if
(
this
.
column
.
type
&&
this
.
column
.
type
!=
'radio'
)
{
this
.
column
.
renderHeader
=
forced
[
this
.
column
.
type
].
renderHeader
this
.
column
.
render
=
this
.
column
.
render
||
forced
[
this
.
column
.
type
].
renderCell
}
if
(
this
.
column
.
type
==
'radio'
)
{
this
.
column
.
render
=
this
.
column
.
render
||
radio
[
this
.
column
.
type
].
renderCell
}
if
(
this
.
column
.
formatter
)
{
this
.
column
.
render
=
(
h
,
scope
)
=>
{
return
<
span
>
{
scope
.
column
.
formatter
(
scope
.
row
,
scope
.
column
,
scope
.
row
,
scope
.
$index
)
}
<
/span
>
return
<
span
>
{
scope
.
column
.
formatter
(
scope
.
row
,
scope
.
column
,
scope
.
row
,
scope
.
$index
)
}
<
/span
>
}
}
if
(
!
this
.
column
.
render
)
{
this
.
column
.
render
=
(
h
,
scope
)
=>
{
return
<
span
>
{
scope
.
row
[
scope
.
column
.
property
]
}
<
/span
>
return
<
span
>
{
scope
.
row
[
scope
.
column
.
property
]
}
<
/span
>
}
}
}
...
...
src/views/ywbl/ywsq/guidePage.vue
View file @
ff6711f
...
...
@@ -6,7 +6,8 @@
<el-collapse
disabled
v-model=
"activeNames"
>
<el-collapse-item
title=
"业务申请"
name=
"1"
>
<ul
class=
"item-list"
>
<li
v-for=
"(item, index) in sqywQllxList"
:key=
"index"
@
click=
"qllxClick(index)"
:class=
"item.check ? 'active' : ''"
>
<li
v-for=
"(item, index) in sqywQllxList"
:key=
"index"
@
click=
"qllxClick(index)"
:class=
"item.check ? 'active' : ''"
>
{{
item
.
nodename
}}
</li>
</ul>
</el-collapse-item>
...
...
@@ -14,13 +15,13 @@
</div>
<div
class=
"ywsq-right"
>
<!-- 常办业务 -->
<div
v-
if=
"selectType=='collect'"
class=
"right-situation
"
>
<div
v-
show=
"selectType == 'collect'"
class=
"right-situation el-card
"
>
<div
class=
"right-title"
>
常办业务列表
</div>
<ul>
<li
:class=
"item.selected ? 'cactive' : ''"
v-for=
"(item, index) in collectList"
:key=
"index"
@
dblclick=
"dblclick(collectList,index)"
@
click=
"selectSqywClick(collectList,
index)"
>
<p
v-if=
"item.nodetype
=='djqx'"
>
{{
item
.
djywmc
}}
<br>
{{
item
.
nodename
}}
</p>
<dt
v-else
>
{{
item
.
djywmc
}}
</dt>
<li
:class=
"item.selected ? 'cactive' : ''"
v-for=
"(item, index) in collectList"
:key=
"index"
@
dblclick=
"dblclick(collectList, index)"
@
click=
"selectSqywClick(collectList,
index)"
>
<p
v-if=
"item.nodetype
== 'djqx'"
>
{{
item
.
djywmc
}}
<br>
{{
item
.
nodename
}}
</p>
<dt
v-else
>
{{
item
.
djywmc
}}
</dt>
<p
class=
"active"
@
click
.
stop=
"handleCollection(item)"
>
<i
class=
"el-icon-star-off"
></i>
</p>
...
...
@@ -28,16 +29,16 @@
</ul>
</div>
<!-- 一并申请 -->
<div
v-if=
"selectType
=='together'
"
>
一并申请
</div>
<div
v-if=
"selectType
== 'together'"
class=
"right-title
"
>
一并申请
</div>
<!-- 登记簿补录 -->
<div
v-if=
"selectType
=='amend'
"
>
登记簿补录
</div>
<div
v-if=
"selectType
== 'amend'"
class=
"right-title
"
>
登记簿补录
</div>
<!-- 业务申请 -->
<
div
v-if=
"selectType=='apply'"
>
<
template
v-if=
"selectType == 'apply'"
>
<div
class=
"right-type el-card box-card is-always-shadow"
>
<div
class=
"right-title"
>
登记类型
</div>
<ul
class=
"type-content"
>
<li
:class=
"item.selected ? 'cactive' : ''"
@
dblclick=
"item.sffqlc == 1 && dblclick(djlxList,index)"
@
click=
"selectSqywClick(djlxList,
index)"
v-for=
"(item, index) in djlxList"
:key=
"index"
>
<li
:class=
"item.selected ? 'cactive' : ''"
@
dblclick=
"item.sffqlc == 1 && dblclick(djlxList,
index)"
@
click=
"selectSqywClick(djlxList, index)"
v-for=
"(item, index) in djlxList"
:key=
"index"
>
<p>
{{
item
.
nodename
}}
</p>
...
...
@@ -51,8 +52,8 @@
<div
class=
"right-situation el-card box-card is-always-shadow"
>
<div
class=
"right-title"
>
登记情形
</div>
<ul>
<li
:class=
"item.selected ? 'cactive' : ''"
v-for=
"(item, index) in djqxList"
:key=
"index"
@
dblclick=
"dblclick(djqxList,index)
"
@
click=
"selectSqywClick(djqxList,index)"
>
<li
:class=
"item.selected ? 'cactive' : ''"
v-for=
"(item, index) in djqxList"
:key=
"index
"
@
dblclick=
"dblclick(djqxList, index)"
@
click=
"selectSqywClick(djqxList, index)"
>
<dt>
{{
item
.
nodename
}}
</dt>
<p
:class=
"item.userCollect == 1 ? 'active' : ''"
@
click
.
stop=
"handleCollection(item)"
>
<i
class=
"el-icon-star-off"
></i>
...
...
@@ -60,12 +61,12 @@
</li>
</ul>
</div>
</
div
>
</
template
>
<div
class=
"submit-button"
>
<el-button
type=
"primary"
:disabled=
"btnDisabled"
@
click=
"dialogClick"
>
选择不动产
</el-button>
</div>
</div>
<selectDialog
v-model=
"isDialog"
:sqywInfo=
"selectParam"
/>
<selectDialog
v-model=
"isDialog"
:sqywInfo=
"selectParam"
/>
</div>
</template>
<
script
>
...
...
@@ -76,24 +77,24 @@ export default {
return
{
//申请业务类型集合
sqywlxList
:
[
{
name
:
"常办业务"
,
type
:
"collect"
},
{
name
:
"一并申请"
,
type
:
"together"
},
{
name
:
"登记簿补录"
,
type
:
"amend"
}
{
name
:
"常办业务"
,
type
:
"collect"
},
{
name
:
"一并申请"
,
type
:
"together"
},
{
name
:
"登记簿补录"
,
type
:
"amend"
}
],
//类型默认选择常办业务
selectType
:
"collect"
,
//堆叠框选中第一个
activeNames
:
[
'1'
],
//收藏业务集合
collectList
:[],
collectList
:
[],
//申请权利类型集合
sqywQllxList
:
[],
sqywQllxList
:
[],
//登记类型集合
djlxList
:
[],
//申请权利类型集合
djqxList
:
[],
//选中业务的参数
selectParam
:
{},
selectParam
:
{},
//弹框框架显示或隐藏
isDialog
:
false
,
//选择按钮显示或隐藏
...
...
@@ -117,12 +118,12 @@ export default {
});
//获取申请权利信息集合
getleftMenu
().
then
(
res
=>
{
this
.
sqywQllxList
=
res
.
result
;
this
.
sqywQllxList
=
res
.
result
;
})
},
//申请业务类型菜单事件
sqywlxClick
(
item
)
{
this
.
btnDisabled
=
true
;
this
.
btnDisabled
=
true
;
this
.
selectType
=
item
.
type
;
this
.
sqywQllxList
.
forEach
(
item
=>
{
if
(
item
.
check
)
item
.
check
=
false
;
...
...
@@ -130,40 +131,40 @@ export default {
},
//权利类型菜单事件
qllxClick
(
index
)
{
this
.
btnDisabled
=
true
;
this
.
btnDisabled
=
true
;
this
.
sqywQllxList
.
forEach
(
item
=>
{
if
(
item
.
check
)
item
.
check
=
false
;
})
this
.
sqywQllxList
[
index
].
check
=
true
;
this
.
sqywQllxList
[
index
].
check
=
true
;
this
.
selectType
=
"apply"
;
this
.
djlxList
=
[];
this
.
djqxList
=
[];
this
.
djlxList
=
[];
this
.
djqxList
=
[];
this
.
getNextNode
(
this
.
sqywQllxList
[
index
].
bsmSqyw
);
},
//选择申请业务事件
selectSqywClick
(
data
,
index
)
{
data
.
forEach
(
item
=>
{
selectSqywClick
(
data
,
index
)
{
data
.
forEach
(
item
=>
{
item
.
selected
=
false
;
});
data
[
index
].
selected
=
true
;
if
(
data
[
index
].
sffqlc
==
"1"
)
{
this
.
selectParam
=
data
[
index
];
this
.
btnDisabled
=
false
;
}
else
{
this
.
btnDisabled
=
true
;
if
(
data
[
index
].
sffqlc
==
"1"
)
{
this
.
selectParam
=
data
[
index
];
this
.
btnDisabled
=
false
;
}
else
{
this
.
btnDisabled
=
true
;
this
.
getNextNode
(
data
[
index
].
bsmSqyw
);
}
},
//获取下个节点类型数据
getNextNode
(
bsmSqyw
)
{
getNextNode
(
bsmSqyw
).
then
(
res
=>
{
if
(
res
.
result
.
djqx
){
if
(
res
.
result
.
djqx
)
{
this
.
djqxList
=
res
.
result
.
djqx
;
this
.
djqxList
.
forEach
(
item
=>
{
this
.
$set
(
item
,
'selected'
,
false
);
});
}
if
(
res
.
result
.
djlx
){
if
(
res
.
result
.
djlx
)
{
this
.
djlxList
=
res
.
result
.
djlx
;
this
.
djlxList
.
forEach
(
item
=>
{
this
.
$set
(
item
,
'selected'
,
false
);
...
...
@@ -172,12 +173,12 @@ export default {
})
},
//双击事件
dblclick
(
data
,
index
)
{
this
.
selectSqywClick
(
data
,
index
);
dblclick
(
data
,
index
)
{
this
.
selectSqywClick
(
data
,
index
);
this
.
dialogClick
();
},
//打开弹框内容
dialogClick
()
{
dialogClick
()
{
this
.
isDialog
=
true
;
},
//收藏操作
...
...
src/views/ywbl/ywsq/javascript/jsydsyq100.js
View file @
ff6711f
...
...
@@ -11,8 +11,9 @@ class data extends filter {
columns
()
{
return
[
{
type
:
'selection'
,
label
:
'全选'
type
:
'radio'
,
label
:
'单选'
,
width
:
'50'
},
{
label
:
'序号'
,
...
...
src/views/ywbl/ywsq/selectBdc.vue
View file @
ff6711f
<
template
>
<dialogBox
:title=
"title"
width=
"85%"
@
closeDialog=
"closeDialog"
v-model=
"value"
:isButton=
"false"
>
<component
:is=
"router"
:sqywInfo=
"sqywInfo"
@
closeDialog=
"closeDialog"
@
updateDialog=
"updateDialog"
/>
<component
:is=
"router"
:sqywInfo=
"sqywInfo"
@
closeDialog=
"closeDialog"
@
updateDialog=
"updateDialog"
/>
</dialogBox>
</
template
>
<
script
>
...
...
@@ -8,16 +8,16 @@ import { queueDjywmc } from "./slectBdcdata.js";
export
default
{
props
:
{
value
:
{
type
:
Boolean
,
default
:
true
},
sqywInfo
:
{
type
:
Object
,
default
:
()
=>
{}
},
sqywInfo
:
{
type
:
Object
,
default
:
()
=>
{
}
},
},
data
()
{
data
()
{
return
{
title
:
""
,
router
:
""
,
};
},
watch
:
{
value
(
val
)
{
value
(
val
)
{
if
(
val
)
{
this
.
title
=
"申请业务:"
+
this
.
sqywInfo
.
djywmc
;
let
view
=
queueDjywmc
(
this
.
sqywInfo
.
djywbm
);
...
...
@@ -26,14 +26,15 @@ export default {
},
},
methods
:
{
loadView
(
view
)
{
loadView
(
view
)
{
console
.
log
(
view
,
'viewviewview'
);
return
(
r
)
=>
require
.
ensure
([],
()
=>
r
(
require
(
`./components/
${
view
}
.vue`
)));
},
closeDialog
()
{
closeDialog
()
{
this
.
$emit
(
"input"
,
false
);
},
updateDialog
()
{
updateDialog
()
{
this
.
$emit
(
"input"
,
false
);
this
.
$emit
(
"updateDialog"
,
true
);
},
...
...
Please
register
or
sign in
to post a comment