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
e204bc5c
authored
2024-03-07 11:14:36 +0800
by
renchao@pashanhoo.com
Browse Files
Options
Browse Files
Tag
Download
Plain Diff
Merge branch 'dev'
2 parents
e6293395
c428efca
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
711 additions
and
594 deletions
src/api/ywsq.js
src/image/bdclogo.png
src/layout/components/Navbar.vue
src/views/lpb/lpbContent/index.vue
src/views/workflow/components/batchDel.vue
src/views/workflow/components/leftmenu/ordinaryMenu.vue
src/views/workflow/main/slsqxx/fdcq2/slxx.vue
src/views/ywbl/ywsq/components/selectH.vue
src/api/ywsq.js
View file @
e204bc5
...
...
@@ -111,6 +111,18 @@ export function selectZdjbxx (data) {
})
}
/**
* @description: 业务办理-选择单元-查询宗地基本信息
* @param {*} data
* @author: renchao
*/
export
function
selectHQjdc
(
data
)
{
return
request
({
url
:
SERVER
.
SERVERAPI
+
'/rest/ywbl/ywsq/selectHQjdc'
,
method
:
'post'
,
data
})
}
/*
业务办理-选择单元-查询宗地基本信息
*/
...
...
src/image/bdclogo.png
0 → 100644
View file @
e204bc5
20.9 KB
src/layout/components/Navbar.vue
View file @
e204bc5
...
...
@@ -2,7 +2,8 @@
<div
class=
"navbar-con"
>
<div
class=
"navbar"
v-theme
.
background=
"mTheme"
>
<div
class=
"logo"
>
<img
v-if=
"logo"
:src=
"logo"
class=
"header-logo"
>
<img
v-if=
"logo"
:src=
"logo"
class=
"header-logo"
/>
<h4>
{{
userInfo
.
districtName
}}
不动产登记平台
</h4>
</div>
<!--
<div
class=
"backdrop"
>
<theme
style=
"float: right;height: 26px;width: 26px;margin-top: 26px;"
@
change=
"themeChange"
/>
...
...
@@ -10,274 +11,314 @@
<div
class=
"right-menu"
>
<!--
<svg-icon
class=
"function"
icon-class=
'function'
/>
-->
<div
class=
"avatar-wrapper"
>
<span
style=
"padding-right:10px"
>
{{
name
}}
</span>
<p>
<span
style=
"padding-right: 10px"
>
{{
userInfo
.
departmentName
}}
</span>
<span
style=
"padding-right: 10px"
>
{{
userInfo
.
name
}}
</span>
</p>
<img
:src=
"avatar + '?imageView2/1/w/80/h/80'"
class=
"user-avatar"
/>
</div>
<svg-icon
class=
"shutdown"
@
click
.
native=
"logout"
icon-class=
'shutdown'
/>
<svg-icon
class=
"shutdown"
@
click
.
native=
"logout"
icon-class=
"shutdown"
/>
</div>
</div>
<NoticeBar
class=
"NoticeBar"
:noticeList=
"noticeList"
v-if=
"noticeList.length > 0"
/>
<NoticeBar
class=
"NoticeBar"
:noticeList=
"noticeList"
v-if=
"noticeList.length > 0"
/>
</div>
</
template
>
<
script
>
import
axios
from
'axios'
import
Cookies
from
'js-cookie'
import
{
mapGetters
}
from
'vuex'
import
NoticeBar
from
'@/components/NoticeBar/index'
import
{
getHomeNoticeList
}
from
"@/api/home"
import
{
setToken
}
from
"@/utils/util"
;
export
default
{
components
:
{
NoticeBar
import
axios
from
"axios"
;
import
Cookies
from
"js-cookie"
;
import
{
mapGetters
}
from
"vuex"
;
import
NoticeBar
from
"@/components/NoticeBar/index"
;
import
{
getHomeNoticeList
}
from
"@/api/home"
;
import
{
setToken
}
from
"@/utils/util"
;
export
default
{
components
:
{
NoticeBar
,
},
computed
:
{
...
mapGetters
([
"sidebar"
,
"avatar"
,
"name"
,
"userInfo"
]),
baseUrl
()
{
return
window
.
_config
.
baseUrl
;
},
computed
:
{
...
mapGetters
([
'sidebar'
,
'avatar'
,
'name'
]),
baseUrl
()
{
return
window
.
_config
.
baseUrl
;
},
},
data
()
{
return
{
logo
:
require
(
'../../image/logo.png'
),
noticeList
:
[]
},
data
()
{
return
{
logo
:
require
(
"../../image/bdclogo.png"
),
noticeList
:
[],
};
},
created
()
{
this
.
queryNoticeList
();
},
mounted
()
{
let
that
=
this
;
window
.
addEventListener
(
"message"
,
function
(
messageEvent
)
{
if
(
messageEvent
.
data
.
update
)
{
that
.
queryNoticeList
();
}
},
created
()
{
this
.
queryNoticeList
()
},
mounted
()
{
let
that
=
this
window
.
addEventListener
(
'message'
,
function
(
messageEvent
)
{
if
(
messageEvent
.
data
.
update
)
{
that
.
queryNoticeList
()
});
},
destroyed
()
{
window
.
removeEventListener
(
"message"
);
},
methods
:
{
/**
* @description: queryNoticeList
* @author: renchao
*/
queryNoticeList
()
{
getHomeNoticeList
().
then
((
res
)
=>
{
if
(
res
.
result
)
{
this
.
noticeList
=
res
.
result
.
noticeList
;
}
})
})
;
},
destroyed
()
{
window
.
removeEventListener
(
'message'
)
/**
* @description: logout
* @author: renchao
*/
logout
()
{
axios
.
post
(
window
.
_config
.
services
.
management
+
"/management/logout"
)
.
then
(()
=>
{
setToken
(
undefined
);
sessionStorage
.
removeItem
(
"token"
);
localStorage
.
setItem
(
"dj-location"
,
window
.
location
.
href
);
window
.
location
.
href
=
window
.
_config
.
casBaseURL
+
"/logout?service="
+
encodeURIComponent
(
window
.
location
.
href
);
});
},
methods
:
{
/**
* @description: queryNoticeList
* @author: renchao
*/
queryNoticeList
()
{
getHomeNoticeList
().
then
(
res
=>
{
if
(
res
.
result
)
{
this
.
noticeList
=
res
.
result
.
noticeList
}
})
},
/**
* @description: logout
* @author: renchao
*/
logout
()
{
axios
.
post
(
window
.
_config
.
services
.
management
+
"/management/logout"
).
then
(()
=>
{
setToken
(
undefined
)
sessionStorage
.
removeItem
(
'token'
)
localStorage
.
setItem
(
'dj-location'
,
window
.
location
.
href
)
window
.
location
.
href
=
window
.
_config
.
casBaseURL
+
'/logout?service='
+
encodeURIComponent
(
window
.
location
.
href
);
})
},
/**
* @description: themeChange
* @param {*} val
* @author: renchao
*/
themeChange
(
val
)
{
this
.
$store
.
dispatch
(
'app/updateTheme'
,
val
)
},
searchMessageCenter
()
{
this
.
$router
.
push
({
name
:
'messagecenter'
})
},
/**
* @description: handleCommand
* @param {*} command
* @author: renchao
*/
handleCommand
(
command
)
{
if
(
command
==
'a'
)
{
//个人中心
this
.
$router
.
push
({
name
:
'personal'
})
}
/**
* @description: themeChange
* @param {*} val
* @author: renchao
*/
themeChange
(
val
)
{
this
.
$store
.
dispatch
(
"app/updateTheme"
,
val
);
},
searchMessageCenter
()
{
this
.
$router
.
push
({
name
:
"messagecenter"
});
},
/**
* @description: handleCommand
* @param {*} command
* @author: renchao
*/
handleCommand
(
command
)
{
if
(
command
==
"a"
)
{
//个人中心
this
.
$router
.
push
({
name
:
"personal"
});
}
}
}
},
},
};
</
script
>
<
style
lang=
"scss"
scoped
>
.navbar-con
{
position
:
relative
;
.navbar-con
{
position
:
relative
;
}
.NoticeBar
{
position
:
absolute
;
bottom
:
0
;
}
.el-dropdown-menu
{
padding
:
0
!important
;
border
:
1px
solid
#ebeef5
;
box-shadow
:
0
2px
10px
0
rgba
(
0
,
0
,
0
,
0.12
);
border-radius
:
4px
0
0
4px
4px
;
.el-dropdown-menu__item
{
text-align
:
center
;
margin-top
:
0
!important
;
font-size
:
14px
;
font-family
:
PingFangSC-Regular
,
PingFang
SC
;
font-weight
:
400
;
color
:
#4a4a4a
;
width
:
140px
;
height
:
36px
;
line-height
:
36px
;
}
.NoticeBar
{
position
:
absolute
;
bottom
:
0
;
.el-dropdown-menu__item
:nth-child
(
6
)
{
border-top
:
1px
solid
#ebeef5
;
}
.
el-dropdown-menu
{
padding
:
0
!important
;
border
:
1px
solid
#ebeef5
;
box-shadow
:
0
2px
10px
0
rgba
(
0
,
0
,
0
,
0.1
2
);
border-radius
:
4px
0
0
4px
4px
;
.
popper__arrow
{
top
:
-11px
!important
;
left
:
110px
!important
;
transform
:
rotate
(
0deg
)
scale
(
2
);
}
.el-dropdown-menu__item
{
text-align
:
center
;
margin-top
:
0
!important
;
font-size
:
14px
;
font-family
:
PingFangSC-Regular
,
PingFang
SC
;
font-weight
:
400
;
color
:
#4a4a4a
;
width
:
140px
;
height
:
36px
;
line-height
:
36px
;
}
.el-dropdown-menu__item
:not
(
.is-disabled
)
:hover
,
.el-dropdown-menu__item
:focus
{
background
:
#f6f7f9
;
color
:
#4a4a4a
;
}
}
.el-dropdown-menu__item
:nth-child
(
6
)
{
border-top
:
1px
solid
#ebeef5
;
}
.navbar
{
height
:
$
headerHeight
;
overflow
:
hidden
;
position
:
relative
;
background
:
#fff
;
//
background
:
linear-gradient
(
270deg
,
#148CEE
0%
,
#1870E3
100%
);
//默认颜色
box-shadow
:
0
1px
0px
rgba
(
0
,
21
,
41
,
0.08
);
display
:
flex
;
align-items
:
center
;
padding
:
0
20px
;
justify-content
:
space-between
;
.popper__arrow
{
top
:
-11px
!important
;
left
:
110px
!important
;
transform
:
rotate
(
0deg
)
scale
(
2
);
.logo
{
//
margin-top
:
-20px
;
.header-logo
{
width
:
40px
;
float
:
left
;
vertical-align
:
middle
;
}
.el-dropdown-menu__item
:not
(
.is-disabled
)
:hover
,
.el-dropdown-menu__item
:focus
{
background
:
#f6f7f9
;
color
:
#4a4a4a
;
h4
{
float
:
left
;
vertical-align
:
middle
;
line-height
:
40px
;
font-size
:
22px
;
color
:
#fff
;
text-indent
:
6px
;
letter-spacing
:
2px
;
}
}
.navbar
{
.backdrop
{
flex
:
1
;
width
:
60%
;
background
:
url("../../image/backdrop.png")
;
background-size
:
100%
100%
;
height
:
$
headerHeight
;
overflow
:
hidden
;
position
:
relative
;
background
:
#fff
;
//
background
:
linear-gradient
(
270deg
,
#148CEE
0%
,
#1870E3
100%
);
//默认颜色
box-shadow
:
0
1px
0px
rgba
(
0
,
21
,
41
,
0.08
);
display
:
flex
;
align-items
:
center
;
padding
:
0
20px
;
justify-content
:
space-between
;
}
.header-logo
{
width
:
300px
;
}
.hamburger-container
{
line-height
:
43px
;
height
:
100%
;
float
:
left
;
cursor
:
pointer
;
transition
:
background
0.3s
;
-webkit-tap-highlight-color
:
transparent
;
.backdrop
{
flex
:
1
;
width
:
60%
;
background
:
url("../../image/backdrop.png")
;
background-size
:
100%
100%
;
height
:
$
headerHeight
;
&:hover
{
background
:
rgba
(
0
,
0
,
0
,
0.025
);
}
}
.hamburger-container
{
line-height
:
43px
;
height
:
100%
;
float
:
left
;
.breadcrumb-container
{
float
:
left
;
}
.right-menu
{
float
:
right
;
height
:
100%
;
line-height
:
50px
;
display
:
flex
;
align-items
:
center
;
.function
{
margin
:
0
15px
;
cursor
:
pointer
;
transition
:
background
0.3s
;
-webkit-tap-highlight-color
:
transparent
;
}
&:hover
{
background
:
rgba
(
0
,
0
,
0
,
0.025
);
}
.shutdown
{
font-size
:
20px
;
margin-left
:
15px
;
cursor
:
pointer
;
}
.breadcrumb-container
{
float
:
left
;
.organization-item
{
margin-right
:
40px
;
margin-top
:
-40px
!important
;
}
.
right-menu
{
float
:
right
;
height
:
100%
;
line-height
:
50
px
;
display
:
flex
;
align-items
:
center
;
.
item
{
margin-right
:
40px
;
margin-top
:
-20px
;
line-height
:
18.4
px
;
cursor
:
pointer
;
position
:
relative
;
.function
{
margin
:
0
15px
;
.item-box
{
position
:
absolute
;
top
:
-5px
;
left
:
3px
;
width
:
100%
;
min-width
:
25px
;
height
:
25px
;
cursor
:
pointer
;
z-index
:
100
;
}
}
.shutdown
{
font-size
:
20px
;
margin-left
:
15px
;
cursor
:
pointer
;
}
&
:focus
{
outline
:
none
;
}
.organization-item
{
margin-right
:
40px
;
margin-top
:
-40px
!important
;
}
.right-menu-item
{
display
:
inline-block
;
font-size
:
18px
;
color
:
#fff
;
vertical-align
:
text-bottom
;
.item
{
margin-right
:
40px
;
margin-top
:
-20px
;
line-height
:
18.4px
;
&.hover-effect
{
cursor
:
pointer
;
position
:
relative
;
.item-box
{
position
:
absolute
;
top
:
-5px
;
left
:
3px
;
width
:
100%
;
min-width
:
25px
;
height
:
25px
;
cursor
:
pointer
;
z-index
:
100
;
}
}
&
:focus
{
outline
:
none
;
}
.right-menu-item
{
display
:
inline-block
;
font-size
:
18px
;
color
:
#fff
;
vertical-align
:
text-bottom
;
&.hover-effect
{
cursor
:
pointer
;
transition
:
background
0.3s
;
display
:
flex
;
align-items
:
center
;
transition
:
background
0.3s
;
display
:
flex
;
align-items
:
center
;
&:hover
{
background
:
rgba
(
0
,
0
,
0
,
0.025
);
}
&:hover
{
background
:
rgba
(
0
,
0
,
0
,
0.025
);
}
}
}
.avatar-wrapper
{
position
:
relative
;
display
:
flex
;
.avatar-wrapper
{
position
:
relative
;
display
:
flex
;
height
:
40px
;
align-items
:
center
;
color
:
#ffffff
;
p
{
font-size
:
14px
;
height
:
40px
;
align-items
:
center
;
color
:
#ffffff
;
.user-avatar
{
cursor
:
pointer
;
width
:
35px
;
height
:
35px
;
border-radius
:
50%
;
span
{
display
:
block
;
line-height
:
20px
;
text-align
:
right
;
}
}
.user-avatar
{
cursor
:
pointer
;
width
:
35px
;
height
:
35px
;
border-radius
:
50%
;
}
.el-icon-caret-bottom
{
cursor
:
pointer
;
position
:
absolute
;
right
:
-15px
;
top
:
17px
;
font-size
:
12px
;
}
.el-icon-caret-bottom
{
cursor
:
pointer
;
position
:
absolute
;
right
:
-15px
;
top
:
17px
;
font-size
:
12px
;
}
}
}
}
</
style
>
...
...
src/views/lpb/lpbContent/index.vue
View file @
e204bc5
<
template
>
<div
class=
"lpbContent-wrap"
ref=
"lpbContentWrap"
>
<div
class=
"lpbContent"
ref=
"lpbContent"
:style=
"
{ 'height': 'calc(100% - '+ lpbContentHeight +'px)'}">
<div
class=
"lpbContent"
ref=
"lpbContent"
:style=
"
{ height: 'calc(100% - ' + lpbContentHeight + 'px)' }"
>
<!-- 纵向倒序排列 逻辑幢位于独立幢单元和独立层户的上方 -->
<div
class=
"ch-zdy-wrap"
>
<!-- 幢单元 -->
<zdy-cpn
v-if=
"lpbData.zdys.length"
:zdys=
"lpbData.zdys"
:onlyShow=
"onlyShow"
/>
<zdy-cpn
v-if=
"lpbData.zdys.length"
:zdys=
"lpbData.zdys"
:onlyShow=
"onlyShow"
/>
<!-- 独立层户 -->
<ch-cpn
v-if=
"lpbData.cs.length"
:ch=
"lpbData.cs"
:onlyShow=
"onlyShow"
/>
<ch-cpn
v-if=
"lpbData.cs.length"
:ch=
"lpbData.cs"
:onlyShow=
"onlyShow"
/>
</div>
<!-- 逻辑幢 -->
<ljzs-cpn
v-if=
"lpbData.ljzs.length"
:ljzs=
"lpbData.ljzs"
:onlyShow=
"onlyShow"
/>
<ljzs-cpn
v-if=
"lpbData.ljzs.length"
:ljzs=
"lpbData.ljzs"
:onlyShow=
"onlyShow"
/>
</div>
<!-- 自然幢名称 -->
<p
class=
"lpb-xmmc"
v-if=
"onlyShow"
style=
"border-bottom: 1px solid #e6e6e6"
>
{{
lpbData
.
xmmc
}}
</p>
<p
class=
"lpb-xmmc"
v-else
:style=
"
{ 'border-bottom':'1px solid #e6e6e6'}">
<p
class=
"lpb-xmmc"
v-if=
"onlyShow"
style=
"border-bottom: 1px solid #e6e6e6"
>
{{
lpbData
.
xmmc
}}
</p>
<p
class=
"lpb-xmmc"
v-else
:style=
"
{ 'border-bottom': '1px solid #e6e6e6' }"
>
<el-checkbox
@
change=
"zdySelectAll($event)"
>
{{
lpbData
.
xmmc
}}
</el-checkbox>
</p>
<el-button
type=
"primary"
class=
"save-btn"
v-if=
"!onlyShow && showSave"
@
click=
"saveLpb"
>
选择确认
</el-button>
<el-button
type=
"primary"
class=
"save-btn"
v-if=
"!onlyShow && !showSave"
@
click=
"submitForm"
:loading=
"loading"
>
发起申请
</el-button>
<el-button
type=
"primary"
class=
"save-btn"
v-if=
"!onlyShow && showSave"
@
click=
"saveLpb"
>
选择确认
</el-button
>
<el-button
type=
"primary"
class=
"save-btn"
v-if=
"!onlyShow && !showSave"
@
click=
"submitForm"
:loading=
"loading"
>
发起申请
</el-button
>
<!-- 右键菜单 -->
<ul
v-show=
"lpbChVisible"
:style=
"
{ left: lpbChLeft + 'px', top: lpbChTop + 'px' }"
class="contextmenu">
class="contextmenu"
>
<li
@
click=
"menuClick"
>
菜单一
</li>
<li
@
click=
"menuClick"
>
菜单二
</li>
</ul>
</div>
</
template
>
<
script
>
import
{
getLpb
}
from
"@/api/lpcx.js"
;
import
chCpn
from
"./ch.vue"
;
import
zdyCpn
from
"./zdys.vue"
;
import
ljzsCpn
from
"./ljzs.vue"
;
import
{
startBusinessFlow
,
choiceBdcdy
,
againAddSldy
}
from
"@/api/workFlow.js"
;
import
jump
from
"../../ywbl/ywsq/components/mixin/jump"
;
import
store
from
'@/store/index.js'
import
{
ywPopupCacel
}
from
"@/utils/popup.js"
;
export
default
{
mixins
:
[
jump
],
provide
()
{
return
{
openMenu
:
this
.
openMenu
,
selectAll
:
this
.
selectAllObj
,
changeChoosedObj
:
this
.
changeChoosedObj
,
clearChangeChoosedObj
:
this
.
clearChangeChoosedObj
,
getBsmList
:
this
.
getBsmList
};
import
{
getLpb
}
from
"@/api/lpcx.js"
;
import
chCpn
from
"./ch.vue"
;
import
zdyCpn
from
"./zdys.vue"
;
import
ljzsCpn
from
"./ljzs.vue"
;
import
{
startBusinessFlow
,
choiceBdcdy
,
againAddSldy
,
}
from
"@/api/workFlow.js"
;
import
jump
from
"../../ywbl/ywsq/components/mixin/jump"
;
import
store
from
"@/store/index.js"
;
import
{
ywPopupCacel
}
from
"@/utils/popup.js"
;
export
default
{
mixins
:
[
jump
],
provide
()
{
return
{
openMenu
:
this
.
openMenu
,
selectAll
:
this
.
selectAllObj
,
changeChoosedObj
:
this
.
changeChoosedObj
,
clearChangeChoosedObj
:
this
.
clearChangeChoosedObj
,
getBsmList
:
this
.
getBsmList
,
};
},
name
:
""
,
components
:
{
chCpn
,
zdyCpn
,
ljzsCpn
},
props
:
{
zrzbsm
:
{
type
:
String
,
default
:
""
,
},
name
:
""
,
components
:
{
chCpn
,
zdyCpn
,
ljzsCpn
},
props
:
{
zrzbsm
:
{
type
:
String
,
default
:
""
,
},
lpbParent
:
{
type
:
String
,
default
:
"isLpb"
,
},
isHb
:
{
type
:
Boolean
,
default
:
true
,
},
onlyShow
:
{
type
:
Boolean
,
default
:
true
,
},
showSave
:
{
type
:
Boolean
,
default
:
false
,
},
scyclx
:
{
type
:
Number
,
default
:
0
,
},
sqywInfo
:
{
type
:
Object
,
default
:
()
=>
{
}
},
name
:
""
,
components
:
{
chCpn
,
zdyCpn
,
ljzsCpn
},
props
:
{
zrzbsm
:
{
type
:
String
,
default
:
""
,
},
lpbParent
:
{
type
:
String
,
default
:
"isLpb"
,
},
isHb
:
{
type
:
Boolean
,
default
:
true
,
},
onlyShow
:
{
type
:
Boolean
,
default
:
true
,
},
showSave
:
{
type
:
Boolean
,
default
:
false
,
},
scyclx
:
{
type
:
Number
,
default
:
0
,
},
sqywInfo
:
{
type
:
Object
,
default
:
()
=>
{
}
},
isJump
:
{
type
:
Boolean
,
default
:
false
},
lpbParent
:
{
type
:
String
,
default
:
"isLpb"
,
},
isHb
:
{
type
:
Boolean
,
default
:
true
,
},
onlyShow
:
{
type
:
Boolean
,
default
:
true
,
},
showSave
:
{
type
:
Boolean
,
default
:
false
,
},
scyclx
:
{
type
:
Number
,
default
:
0
,
},
sqywInfo
:
{
type
:
Object
,
default
:
()
=>
{},
},
},
data
()
{
return
{
lpbData
:
{
ljzs
:
[],
cs
:
[],
zdys
:
[],
},
data
()
{
return
{
lpbData
:
{
ljzs
:
[],
cs
:
[],
zdys
:
[],
},
//户全选标识 由于依赖注入的绑定并不是可响应的,所以传入可监听的对象以获取其属性的响应
selectAllObj
:
{
selectAll
:
false
,
},
//层户右键菜单显隐
lpbChVisible
:
false
,
//右键菜单定位位置
lpbChLeft
:
100
,
lpbChTop
:
100
,
// 改变户选中状态
changeChoosedObj
:
{
bsms
:
[],
color
:
''
},
// 选中户bsm合集
bsmList
:
[],
loading
:
false
,
};
//户全选标识 由于依赖注入的绑定并不是可响应的,所以传入可监听的对象以获取其属性的响应
selectAllObj
:
{
selectAll
:
false
,
},
mounted
()
{
this
.
scyclx
?
this
.
getLpb
(
this
.
zrzbsm
,
this
.
scyclx
)
:
this
.
getLpb
(
this
.
zrzbsm
);
window
.
lpbContent
=
this
;
//层户右键菜单显隐
lpbChVisible
:
false
,
//右键菜单定位位置
lpbChLeft
:
100
,
lpbChTop
:
100
,
// 改变户选中状态
changeChoosedObj
:
{
bsms
:
[],
color
:
""
,
},
/**
* @description: 保存当前楼盘表
* @author: renchao
*/
saveLpb
()
{
if
(
this
.
bsmList
.
length
==
0
)
{
this
.
$message
.
error
(
"请至少选择一条数据"
);
return
;
}
this
.
loading
=
true
;
againAddSldy
({
bsmSqyw
:
this
.
sqywInfo
.
bsmSqyw
,
bsmSlsq
:
this
.
sqywInfo
.
bsmSlsq
,
bdcdysz
:
this
.
bsmList
,
sjlx
:
"houses"
}).
then
((
res
)
=>
{
this
.
loading
=
false
// 选中户bsm合集
bsmList
:
[],
loading
:
false
,
};
},
mounted
()
{
this
.
scyclx
?
this
.
getLpb
(
this
.
zrzbsm
,
this
.
scyclx
)
:
this
.
getLpb
(
this
.
zrzbsm
);
window
.
lpbContent
=
this
;
},
methods
:
{
/**
* @description: 获取当前楼盘表选中户信息
* @param {Array} bsmList
* @author: renchao
*/
getBsmList
(
bsmList
,
compFlag
)
{
// 根据本次传入的组件标识删除之前对应组件标识存入hbsmList的数据
this
.
bsmList
=
this
.
bsmList
.
filter
((
i
)
=>
i
.
flag
!=
compFlag
);
// 合并本次数据
this
.
bsmList
=
this
.
bsmList
.
concat
([
...
new
Map
(
bsmList
.
map
((
item
)
=>
[
item
.
bdcdyh
,
item
])).
values
(),
]);
// })
},
/**
* @description: 保存当前楼盘表
* @author: renchao
*/
saveLpb
()
{
if
(
this
.
bsmList
.
length
==
0
)
{
this
.
$message
.
error
(
"请至少选择一条数据"
);
return
;
}
this
.
loading
=
true
;
store
.
dispatch
(
"user/reMenuRefresh"
,
false
);
againAddSldy
({
bsmSqyw
:
this
.
sqywInfo
.
bsmSqyw
,
bsmSlsq
:
this
.
sqywInfo
.
bsmSlsq
,
bdcdysz
:
this
.
bsmList
,
sjlx
:
"houses"
,
})
.
then
((
res
)
=>
{
this
.
loading
=
false
;
if
(
res
.
code
==
200
)
{
this
.
$message
({
showClose
:
true
,
message
:
'添加成功'
,
type
:
'success'
})
message
:
"添加成功"
,
type
:
"success"
,
})
;
if
(
!
this
.
isJump
)
{
this
.
jump
(
res
.
result
,
this
.
sqywInfo
.
djywbm
)
}
else
{
store
.
dispatch
(
'user/refreshPage'
,
true
);
this
.
jump
(
res
.
result
,
this
.
sqywInfo
.
djywbm
);
}
store
.
dispatch
(
"user/refreshPage"
,
true
);
//this.close();
this
.
$popupCacel
();
}
else
{
if
(
res
.
result
&&
res
.
result
.
length
>
0
)
{
this
.
$popup
(
"申请错误明细"
,
"components/ywdialog"
,
{
width
:
'36%'
,
formData
:
{
result
:
res
.
result
}
})
this
.
$popup
(
"申请错误明细"
,
"components/ywdialog"
,
{
width
:
"36%"
,
formData
:
{
result
:
res
.
result
},
});
}
else
{
if
(
res
.
result
&&
res
.
result
.
length
>
0
)
{
this
.
$popup
(
"申请错误明细"
,
"components/ywdialog"
,
{
width
:
'36%'
,
formData
:
{
result
:
res
.
result
}
})
this
.
$popup
(
"申请错误明细"
,
"components/ywdialog"
,
{
width
:
"36%"
,
formData
:
{
result
:
res
.
result
},
});
}
else
{
this
.
$popup
(
"申请错误明细"
,
"components/ywdialog"
,
{
width
:
'36%'
,
formData
:
{
message
:
res
.
message
}
})
this
.
$popup
(
"申请错误明细"
,
"components/ywdialog"
,
{
width
:
"36%"
,
formData
:
{
message
:
res
.
message
},
});
}
}
}
}).
catch
(()
=>
{
this
.
loading
=
false
})
// todo 调用保存接口 传入参数待定
//console.log(this.bsmList,'this.bsmList')
;
// 保存成功后关闭弹框
//this.$popupCacel()
},
//
改变户选中状态
/
**
* @description: 改变户选中状态
* @param {*} bsms
* @param {*} color
* @author: renchao
*/
changeChoosed
(
bsms
,
color
)
{
this
.
changeChoosedObj
.
bsms
=
bsms
;
this
.
changeChoosedObj
.
color
=
color
;
},
/**
* @description: clearChangeChoosedObj
* @author: renchao
*/
clearChangeChoosedObj
()
{
this
.
changeChoosedObj
.
bsms
=
[];
},
//全选户
/**
* @description: 全选户
* @param {*} val
* @author: renchao
*/
zdySelectAll
(
val
)
{
this
.
selectAllObj
.
selectAll
=
val
;
},
//获取楼盘表数据
/**
* @description: 获取楼盘表数据
* @param {*} zrzbsm
* @param {*} scyclx
* @param {*} actual
* @author: renchao
*/
getLpb
(
zrzbsm
,
scyclx
,
actual
)
{
if
(
!
zrzbsm
)
{
this
.
$message
({
message
:
"暂无楼盘表"
,
type
:
"warning"
,
});
}
else
{
getLpb
(
zrzbsm
,
scyclx
).
then
((
res
)
=>
{
if
(
res
.
code
==
200
)
{
if
(
scyclx
)
{
if
(
res
.
result
.
syclx
==
"1"
)
{
res
.
result
.
lpb
.
ljzs
=
res
.
result
.
lpb
.
ljzs
.
sort
(
this
.
compare
(
"place"
));
this
.
lpbData
=
res
.
result
.
lpb
==
null
?
this
.
lpbData
:
res
.
result
.
lpb
;
}
}
else
{
this
.
$message
({
message
:
res
.
message
,
type
:
"warning"
,
})
;
.
catch
(()
=>
{
this
.
loading
=
false
;
});
// todo 调用保存接口 传入参数待定
//console.log(this.bsmList,'this.bsmList');
//
保存成功后关闭弹框
/
/this.$popupCacel()
},
// 改变户选中状态
/**
* @description: 改变户选中状态
* @param {*} bsms
* @param {*} color
* @author: renchao
*/
changeChoosed
(
bsms
,
color
)
{
this
.
changeChoosedObj
.
bsms
=
bsms
;
this
.
changeChoosedObj
.
color
=
color
;
},
/**
* @description: clearChangeChoosedObj
* @author: renchao
*/
clearChangeChoosedObj
()
{
this
.
changeChoosedObj
.
bsms
=
[];
},
//全选户
/**
* @description: 全选户
* @param {*} val
* @author: renchao
*/
zdySelectAll
(
val
)
{
this
.
selectAllObj
.
selectAll
=
val
;
},
//获取楼盘表数据
/**
* @description: 获取楼盘表数据
* @param {*} zrzbsm
* @param {*} scyclx
* @param {*} actual
* @author: renchao
*/
getLpb
(
zrzbsm
,
scyclx
,
actual
)
{
if
(
!
zrzbsm
)
{
this
.
$message
({
message
:
"暂无楼盘表"
,
type
:
"warning"
,
});
}
else
{
getLpb
(
zrzbsm
,
scyclx
).
then
((
res
)
=>
{
if
(
res
.
code
==
200
)
{
if
(
scyclx
)
{
if
(
res
.
result
.
syclx
==
"1"
)
{
res
.
result
.
lpb
.
ljzs
=
res
.
result
.
lpb
.
ljzs
.
sort
(
this
.
compare
(
"place"
)
);
this
.
lpbData
=
res
.
result
.
lpb
==
null
?
this
.
lpbData
:
res
.
result
.
lpb
;
}
}
else
{
this
.
$message
({
...
...
@@ -254,188 +291,201 @@
type
:
"warning"
,
});
}
});
}
},
//户右键点击事件
/**
* @description: 户右键点击事件
* @param {*} e
* @param {*} item
* @param {*} type
* @author: renchao
*/
openMenu
(
e
,
item
,
type
)
{
this
.
lpbChLeft
=
e
.
pageX
-
96
;
this
.
lpbChTop
=
e
.
pageY
-
23
;
// this.lpbChVisible = true;
},
//关闭户右键菜单
/**
* @description: 关闭户右键菜单
* @author: renchao
*/
closeMenu
()
{
this
.
lpbChVisible
=
false
;
},
//右键菜单点击
/**
* @description: 右键菜单点击
* @author: renchao
*/
menuClick
()
{
this
.
closeMenu
();
},
/**
* @description: compare
* @param {*} property
* @author: renchao
*/
compare
(
property
)
{
return
function
(
a
,
b
)
{
var
value1
=
a
[
property
];
var
value2
=
b
[
property
];
return
value1
-
value2
;
};
},
/**
* @description: submitForm
* @author: renchao
*/
submitForm
()
{
if
(
this
.
bsmList
.
length
==
0
)
{
this
.
$message
.
error
(
"请至少选择一条数据"
);
return
;
}
this
.
loading
=
true
;
startBusinessFlow
({
bsmSqyw
:
this
.
sqywInfo
.
bsmSqyw
,
bdcdysz
:
this
.
bsmList
,
}).
then
((
res
)
=>
{
this
.
loading
=
false
}
else
{
this
.
$message
({
message
:
res
.
message
,
type
:
"warning"
,
});
}
});
}
},
//户右键点击事件
/**
* @description: 户右键点击事件
* @param {*} e
* @param {*} item
* @param {*} type
* @author: renchao
*/
openMenu
(
e
,
item
,
type
)
{
this
.
lpbChLeft
=
e
.
pageX
-
96
;
this
.
lpbChTop
=
e
.
pageY
-
23
;
// this.lpbChVisible = true;
},
//关闭户右键菜单
/**
* @description: 关闭户右键菜单
* @author: renchao
*/
closeMenu
()
{
this
.
lpbChVisible
=
false
;
},
//右键菜单点击
/**
* @description: 右键菜单点击
* @author: renchao
*/
menuClick
()
{
this
.
closeMenu
();
},
/**
* @description: compare
* @param {*} property
* @author: renchao
*/
compare
(
property
)
{
return
function
(
a
,
b
)
{
var
value1
=
a
[
property
];
var
value2
=
b
[
property
];
return
value1
-
value2
;
};
},
/**
* @description: submitForm
* @author: renchao
*/
submitForm
()
{
if
(
this
.
bsmList
.
length
==
0
)
{
this
.
$message
.
error
(
"请至少选择一条数据"
);
return
;
}
this
.
loading
=
true
;
startBusinessFlow
({
bsmSqyw
:
this
.
sqywInfo
.
bsmSqyw
,
bdcdysz
:
this
.
bsmList
,
})
.
then
((
res
)
=>
{
this
.
loading
=
false
;
if
(
res
.
code
==
200
)
{
this
.
$message
({
showClose
:
true
,
message
:
'发起申请成功'
,
type
:
'success'
})
message
:
"发起申请成功"
,
type
:
"success"
,
})
;
if
(
!
this
.
isJump
)
{
this
.
jump
(
res
.
result
,
this
.
sqywInfo
.
djywbm
)
this
.
jump
(
res
.
result
,
this
.
sqywInfo
.
djywbm
)
;
}
else
{
store
.
dispatch
(
'user/refreshPage'
,
true
);
store
.
dispatch
(
"user/refreshPage"
,
true
);
}
this
.
close
()
this
.
close
()
;
}
else
{
if
(
res
.
result
&&
res
.
result
.
length
>
0
)
{
this
.
$popup
(
"申请错误明细"
,
"components/ywdialog"
,
{
width
:
'36%'
,
formData
:
{
result
:
res
.
result
}
})
this
.
$popup
(
"申请错误明细"
,
"components/ywdialog"
,
{
width
:
"36%"
,
formData
:
{
result
:
res
.
result
},
});
}
else
{
this
.
$popup
(
"申请错误明细"
,
"components/ywdialog"
,
{
width
:
'36%'
,
formData
:
{
message
:
res
.
message
}
})
this
.
$popup
(
"申请错误明细"
,
"components/ywdialog"
,
{
width
:
"36%"
,
formData
:
{
message
:
res
.
message
},
});
}
}
}).
catch
(()
=>
{
this
.
loading
=
false
})
},
/**
* @description: close
* @param {*} val
* @author: renchao
*/
close
()
{
ywPopupCacel
()
},
.
catch
(()
=>
{
this
.
loading
=
false
;
});
},
computed
:
{
lpbContentHeight
()
{
return
this
.
onlyShow
?
32
:
76
// return 76
}
/**
* @description: close
* @param {*} val
* @author: renchao
*/
close
()
{
ywPopupCacel
();
},
watch
:
{
//户右键菜单显示时,监听到鼠标点击时关闭户右键菜单
lpbChVisible
(
value
)
{
if
(
value
)
{
document
.
body
.
addEventListener
(
"click"
,
this
.
closeMenu
);
}
else
{
document
.
body
.
removeEventListener
(
"click"
,
this
.
closeMenu
);
}
},
computed
:
{
lpbContentHeight
()
{
return
this
.
onlyShow
?
32
:
76
;
// return 76
},
},
watch
:
{
//户右键菜单显示时,监听到鼠标点击时关闭户右键菜单
lpbChVisible
(
value
)
{
if
(
value
)
{
document
.
body
.
addEventListener
(
"click"
,
this
.
closeMenu
);
}
else
{
document
.
body
.
removeEventListener
(
"click"
,
this
.
closeMenu
);
}
},
};
},
};
</
script
>
<
style
scoped
lang=
"scss"
>
.lpbContent-wrap
{
.lpbContent-wrap
{
width
:
100%
;
height
:
100%
;
overflow
:
hidden
;
.lpbContent
{
width
:
100%
;
height
:
100%
;
overflow
:
hidden
;
.lpbContent
{
width
:
100%
;
position
:
relative
;
overflow
:
scroll
;
-webkit-user-select
:
none
;
-moz-user-select
:
none
;
-ms-user-select
:
none
;
user-select
:
none
;
position
:
relative
;
overflow
:
scroll
;
-webkit-user-select
:
none
;
-moz-user-select
:
none
;
-ms-user-select
:
none
;
user-select
:
none
;
display
:
flex
;
flex-direction
:
column-reverse
;
box-sizing
:
border-box
;
padding-top
:
20px
;
.ch-zdy-wrap
{
display
:
flex
;
flex-direction
:
column-reverse
;
box-sizing
:
border-box
;
padding-top
:
20px
;
.ch-zdy-wrap
{
display
:
flex
;
flex-direction
:
row
;
}
flex-direction
:
row
;
}
.lpb-xmmc
{
border
:
0
;
border-top
:
1px
solid
#e6e6e6
;
}
.save-btn
{
display
:
block
;
margin
:
5px
auto
;
}
//
自定义右键菜单样式
.contextmenu
{
}
.lpb-xmmc
{
border
:
0
;
border-top
:
1px
solid
#e6e6e6
;
}
.save-btn
{
display
:
block
;
margin
:
5px
auto
;
}
//
自定义右键菜单样式
.contextmenu
{
margin
:
0
;
background
:
#fff
;
width
:
92px
;
z-index
:
3000
;
position
:
fixed
;
list-style-type
:
none
;
padding
:
5px
0
;
border-radius
:
4px
;
font-size
:
12px
;
font-weight
:
400
;
color
:
#333
;
box-shadow
:
2px
2px
3px
0
rgba
(
0
,
0
,
0
,
0.3
);
li
{
margin
:
0
;
background
:
#fff
;
width
:
92px
;
z-index
:
3000
;
position
:
fixed
;
list-style-type
:
none
;
padding
:
5px
0
;
border-radius
:
4px
;
font-size
:
12px
;
font-weight
:
400
;
color
:
#333
;
box-shadow
:
2px
2px
3px
0
rgba
(
0
,
0
,
0
,
0.3
);
li
{
margin
:
0
;
padding
:
7px
16px
;
cursor
:
pointer
;
position
:
relative
;
.childUl
{
display
:
none
;
position
:
absolute
;
left
:
92px
!important
;
top
:
0
!important
;
li
{
width
:
76px
;
}
}
}
li
:hover
{
background
:
#eee
;
>
.childUl
{
display
:
block
;
padding
:
7px
16px
;
cursor
:
pointer
;
position
:
relative
;
.childUl
{
display
:
none
;
position
:
absolute
;
left
:
92px
!important
;
top
:
0
!important
;
li
{
width
:
76px
;
}
}
.noEdit
{
color
:
#e6e6e6
;
cursor
:
not-allowed
;
}
.noEdit
:hover
{
background
:
#ffffff
;
}
li
:hover
{
background
:
#eee
;
>
.childUl
{
display
:
block
;
}
}
.noEdit
{
color
:
#e6e6e6
;
cursor
:
not-allowed
;
}
.noEdit
:hover
{
background
:
#ffffff
;
}
}
}
</
style
>
...
...
src/views/workflow/components/batchDel.vue
View file @
e204bc5
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2024-0
2-02 16:52:02
* @LastEditTime: 2024-0
3-07 09:52:35
-->
<!-- 批量删除弹框 -->
<
template
>
...
...
@@ -65,7 +65,6 @@
}
},
methods
:
{
// 批量删除确定按钮
/**
* @description: 批量删除确定按钮
* @author: renchao
...
...
@@ -74,6 +73,7 @@
var
formdata
=
new
FormData
();
formdata
.
append
(
"bsmSldyList"
,
this
.
selectBdcdy
);
formdata
.
append
(
"bsmSlsq"
,
this
.
formData
.
bsmSlsq
);
store
.
dispatch
(
'user/refreshPage'
,
false
);
deleteSlbdcdy
(
formdata
).
then
(
res
=>
{
if
(
res
.
code
==
200
)
{
this
.
$popupCacel
();
...
...
src/views/workflow/components/leftmenu/ordinaryMenu.vue
View file @
e204bc5
<!--
* @Description: workFrame左侧菜单列表-普通
* @Autor: renchao
* @LastEditTime: 2024-0
2-01 16:57:55
* @LastEditTime: 2024-0
3-07 09:54:56
-->
<
template
>
<div
class=
"leftmenu"
:class=
"
{ 'animation-map-drawer': isShowdrawer }">
...
...
@@ -84,7 +84,7 @@
isRefresh
:
{
handler
(
newVal
,
oldVal
)
{
if
(
newVal
)
{
this
.
loadBdcdylist
(
true
)
this
.
loadBdcdylist
()
}
},
immediate
:
true
...
...
src/views/workflow/main/slsqxx/fdcq2/slxx.vue
View file @
e204bc5
...
...
@@ -384,6 +384,19 @@
@
upDateQlrxxList=
"upDateQlrxxList"
:disabled=
"viewEdit"
:gyfs=
"ruleForm.sldy.gyfs"
/>
<div
v-if=
"ruleForm.ywrList && ruleForm.ywrList.length > 0 && ruleForm.qlxx.djlx==200"
>
<div
class=
"slxx_title title-block"
>
义务人信息
<div
class=
"triangle"
></div>
</div>
<ywrCommonTable
v-if=
"ruleForm.ywrList"
:disabled=
"viewEdit"
:tableData=
"ruleForm.ywrList"
:key=
"key"
@
upDateQlrxxList=
"upDateYwrxxList"
/>
</div>
<div
class=
"slxx_title title-block"
>
登记原因
<div
class=
"triangle"
></div>
...
...
@@ -414,6 +427,7 @@
<
script
>
import
ywmix
from
"@/views/ywbl/mixin/index"
;
import
qlrCommonTable
from
"@/views/workflow/components/qlrCommonTable"
;
import
ywrCommonTable
from
"@/views/workflow/components/ywrCommonTable"
;
import
tdytTable
from
"@/views/workflow/components/tdytTable"
;
import
{
Init
,
saveData
}
from
"@/api/workflow/fwsyqFlow.js"
;
import
{
mapGetters
}
from
"vuex"
;
...
...
@@ -460,7 +474,7 @@
this
.
isSave
=
false
})
},
components
:
{
qlrCommonTable
,
tdytTable
},
components
:
{
qlrCommonTable
,
tdytTable
,
ywrCommonTable
},
computed
:
{
...
mapGetters
([
"dictData"
,
"flag"
]),
},
...
...
src/views/ywbl/ywsq/components/selectH.vue
View file @
e204bc5
...
...
@@ -71,7 +71,7 @@
import
{
ywPopupDialog
}
from
"@/utils/popup.js"
;
import
{
datas
,
sendThis
}
from
"../javascript/selectH.js"
;
import
{
defaultParameters
}
from
"../javascript/publicDefaultPar.js"
;
//
import { selectHQjdc } from "@/api/ywsq.js";
import
{
selectHQjdc
}
from
"@/api/ywsq.js"
;
import
{
startBusinessFlow
,
againAddSldy
}
from
"@/api/workFlow.js"
;
export
default
{
mixins
:
[
ywsqTable
,
jump
],
...
...
@@ -123,16 +123,16 @@
* @author: renchao
*/
queryClick
()
{
//
this.$startLoading();
//
this.queryForm.sqywbm = this.sqywInfo.djywbm;
//
selectHQjdc({ ...this.queryForm, ...this.pageData }).then((res) => {
//
this.$endLoading();
//
if (res.code === 200) {
//
let { total, records } = res.result;
//
this.tableData.total = total;
//
this.tableData.data = records;
//
}
//
});
this
.
$startLoading
();
this
.
queryForm
.
sqywbm
=
this
.
sqywInfo
.
djywbm
;
selectHQjdc
({
...
this
.
queryForm
,
...
this
.
pageData
}).
then
((
res
)
=>
{
this
.
$endLoading
();
if
(
res
.
code
===
200
)
{
let
{
total
,
records
}
=
res
.
result
;
this
.
tableData
.
total
=
total
;
this
.
tableData
.
data
=
records
;
}
});
},
/**
* @description: submitForm
...
...
Please
register
or
sign in
to post a comment