Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
C
confucius
Project
Project
Details
Activity
Releases
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
罗超
confucius
Commits
f73fc33c
Commit
f73fc33c
authored
Nov 18, 2020
by
zhengke
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
1
parent
3e8c1c32
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
904 additions
and
504 deletions
+904
-504
FProcessManagement.vue
src/pages/financial/FProcessManagement.vue
+833
-408
addFinancialProcess.vue
src/pages/financial/addFinancialProcess.vue
+71
-96
No files found.
src/pages/financial/FProcessManagement.vue
View file @
f73fc33c
<
style
scoped
>
<
style
scoped
>
@import
"css/cssReset.css"
;
@import
"css/cssReset.css"
;
.query-box
{
border
:
none
;
padding-left
:
0
}
._nav
li
{
float
:
left
;
font-size
:
14px
;
color
:
#666666
;
padding
:
15px
10px
;
background-color
:
#F1F1F1
;
cursor
:
pointer
;
position
:
relative
;}
.query-box
{
._nav
li
._active
{
background-color
:
#FFFFFF
;
color
:
#333333
}
border
:
none
;
._nav
li
._active
::after
{
content
:
""
;
width
:
20px
;
height
:
3px
;
background-color
:
#E95252
;
display
:
inline-block
;
position
:
absolute
;
bottom
:
0
;
left
:
38%
;}
padding-left
:
0
._content
li
{
display
:
flex
;
padding
:
0
30px
;
margin-top
:
20px
;
border
:
1px
solid
#ebebeb
;
background-color
:
white
;}
}
._content
li
:hover
{
box-shadow
:
0px
0px
20px
rgba
(
191
,
191
,
191
,
1
);
transition
:
all
linear
0.5s
;}
._content
li
>
div
{
padding
:
9px
0
}
._nav
li
{
._left
{
display
:
flex
;
flex
:
2
;
align-items
:
center
;
border-right
:
1px
dashed
#DCDFE6
;
padding-right
:
20px
!important
;}
float
:
left
;
._left
>
div
{
padding-left
:
14px
}
font-size
:
14px
;
._Icon
{
width
:
50px
;
height
:
50px
;
line-height
:
50px
;
text-align
:
center
;
color
:
white
;
font-weight
:
bold
;
background-color
:
#2AAEF2
;
border-radius
:
50%
;
font-size
:
22px
;
display
:
block
;}
color
:
#666666
;
._t
{
color
:
#333333
;
font-size
:
14px
;
padding-bottom
:
7px
;
font-weight
:
bold
}
padding
:
15px
10px
;
._s
{
color
:
#666666
;
font-size
:
12px
;}
background-color
:
#F1F1F1
;
._cent
{
flex
:
3
;
display
:
flex
;
align-items
:
center
;}
cursor
:
pointer
;
._cent
>
div
{
width
:
50%
;
padding-left
:
80px
;}
position
:
relative
;
._right
{
flex
:
1
;
align-items
:
center
;
display
:
flex
;
padding-left
:
20px
!important
;
border-left
:
1px
dashed
#DCDFE6
;}
}
.icon-liuchengsheji
{
background-color
:
#B552E9
;}
.icon-liuchengsheji
:hover
{
background-color
:
#c57dea
}
._nav
li
._active
{
.eicon-liuchengshejidit
:active
{
background-color
:
#8741ab
}
background-color
:
#FFFFFF
;
._red
{
color
:
#E95252
}
color
:
#333333
._dt
{
text-decoration
:
underline
}
}
._cu
{
cursor
:
pointer
;}
._none
{
opacity
:
0
;}
._nav
li
._active
::after
{
._block
{
opacity
:
1
}
content
:
""
;
.InfoChangeLog
{
height
:
auto
;
background-color
:
#FFFFFF
;}
width
:
20px
;
.changLogList
{
padding-left
:
20px
;
max-height
:
180px
;
overflow
:
auto
;}
height
:
3px
;
.changLogList_l
{
border-left
:
1px
solid
#E9E9E9
;
position
:
relative
;
padding-bottom
:
10px
;
padding-left
:
20px
;
padding-top
:
10px
;}
background-color
:
#E95252
;
._radius_green
{
background-color
:
#47BF8C
;
width
:
7px
;
height
:
7px
;
border-radius
:
50%
;
display
:
inline-block
;
position
:
absolute
;
left
:
-4px
;
top
:
19px
;}
display
:
inline-block
;
.changLog_time
{
color
:
#666666
;
font-size
:
12px
;
display
:
inline-block
;
padding-right
:
10px
}
position
:
absolute
;
.el-button
{
border-radius
:
inherit
!important
}
bottom
:
0
;
._log_t
{
padding
:
10px
;}
left
:
38%
;
._bdrd
{
border-radius
:
17px
;}
}
._tp
{
padding
:
10px
20px
0
20px
;
font-size
:
12px
;
display
:
flex
;
align-items
:
center
;
align-items
:
flex-end
}
._bg_blue
{
background-color
:
#297BEF
}
._content
li
{
._bg_org
{
background-color
:
#F16C3C
!important
}
display
:
flex
;
._bg_greend
{
background-color
:
#32B37C
}
padding
:
0
30px
;
._bg_greendS
{
background-color
:
#1C9A65
}
margin-top
:
20px
;
._bg_gray
{
background-color
:
#666666
}
border
:
1px
solid
#ebebeb
;
._color_blue
{
color
:
#005CAA
}
background-color
:
white
;
._yewu
{
color
:
white
;
padding
:
3px
13px
;}
}
._qian
{
padding
:
6px
15px
;}
._array
{
display
:
inline-block
;
background-color
:
#999999
}
._content
li
:hover
{
._array_h
{
width
:
35px
;
height
:
3px
;}
box-shadow
:
0px
0px
20px
rgba
(
191
,
191
,
191
,
1
);
._array_h_left
{
top
:
14px
;
left
:
-40px
;
position
:
absolute
;}
transition
:
all
linear
0.5s
;
._array_h_right
{
top
:
14px
;
right
:
-40px
;
position
:
absolute
;}
}
._array_w
{
width
:
3px
;
height
:
35px
;}
.tri_left
{
width
:
0
;
height
:
0
;
border-top
:
6px
solid
transparent
;
border-bottom
:
6px
solid
transparent
;
border-left
:
6px
solid
#999999
;}
._content
li
>
div
{
.tri_down
{
width
:
0
;
height
:
0
;
border-left
:
6px
solid
transparent
;
border-right
:
6px
solid
transparent
;
border-top
:
6px
solid
#999999
;
}
padding
:
9px
0
.tri_right
{
width
:
0
;
height
:
0
;
border-top
:
6px
solid
transparent
;
border-bottom
:
6px
solid
transparent
;
border-right
:
6px
solid
#999999
;}
}
._tag
{
display
:
inline-block
;
border-radius
:
4px
;
padding
:
2px
4px
;
margin-bottom
:
4px
;
font-size
:
12px
}
._inlineblock_cen
{
display
:
inline-block
;
text-align
:
center
}
._left
{
._text_right
{
text-align
:
right
;
padding-right
:
50px
}
display
:
flex
;
._tp_b
{
padding
:
0
20px
}
flex
:
2
;
.height40
{
height
:
40px
;}
align-items
:
center
;
._feiyong
{
padding
:
10px
;
flex-wrap
:
wrap
;
/*justify-content: space-between;*/
display
:
flex
;}
border-right
:
1px
dashed
#DCDFE6
;
._feiyong
>
span
{
display
:
inline-block
;
padding
:
4px
20px
;
color
:
white
;
font-size
:
14px
;
border-radius
:
4px
;
margin
:
0
10px
10px
0
;}
padding-right
:
20px
!important
;
._log_t_s
{
font-size
:
12px
;
color
:
#666666
}
}
.el-popover
{
text-align
:
inherit
}
._dtel
{
padding-top
:
10px
;}
._left
>
div
{
._no_liucheng
{
padding
:
20px
;
text-align
:
center
}
padding-left
:
14px
._liu_block
{
display
:
inline-block
;
width
:
auto
;
margin-bottom
:
20px
;
position
:
relative
;}
}
.icon-xiaotuziCduan_
,
.icon-xiaotuziCduan_2
{
position
:
absolute
;
right
:
-10px
;
top
:
-10px
;
color
:
#999999
;}
._array_h_left
.icon-xiaotuziCduan_2
{
position
:
absolute
;
left
:
-10px
;
top
:
-10px
;
right
:
initial
;}
._Icon
{
.text_l
{
text-align
:
left
;
margin-right
:
50px
}
width
:
50px
;
.text_r
{
text-align
:
right
;
margin-left
:
50px
}
height
:
50px
;
._miaoshu
{
display
:
inline-block
;
overflow
:
hidden
;
text-overflow
:
ellipsis
;
white-space
:
nowrap
;
padding
:
6px
15px
;
border-radius
:
4px
;
background-color
:
#297BEF
;
color
:
white
;
font-size
:
14px
;
min-width
:
120px
;
text-align
:
center
;
max-width
:
130px
;}
line-height
:
50px
;
._last_ml0
{
margin-right
:
0
}
text-align
:
center
;
._last_mr0
{
margin-left
:
0
}
color
:
white
;
._array_h_dbox
{
position
:
absolute
;
top
:
14px
;
right
:
-5px
;}
font-weight
:
bold
;
._array_h_dbox_l
{
right
:
inherit
;
left
:
-40px
}
background-color
:
#2AAEF2
;
._array_h_down
{
width
:
35px
;
height
:
3px
;
position
:
absolute
;
background-color
:
#999999
}
border-radius
:
50%
;
._array_h_down_
{
width
:
3px
;
height
:
20px
;
position
:
absolute
;
background-color
:
#999999
}
font-size
:
22px
;
._array_h_down_l
{
left
:
35px
}
display
:
block
;
.icon-xiaotuziCduan_1
{
position
:
absolute
;
left
:
28px
;
top
:
10px
;
color
:
#999999
;}
}
.xiaotuziCduan_1_l
{
left
:
inherit
;
right
:
-9px
;}
._right
i
{
width
:
30px
;
height
:
30px
;
display
:
inline-block
;
color
:
white
!important
;
border-radius
:
50%
;
text-align
:
center
;
line-height
:
30px
;
margin-right
:
10px
;
cursor
:
pointer
;
outline
:
none
;}
._t
{
._right
i
.icon-rizhi1
{
background-color
:
#67c23a
}
color
:
#333333
;
._right
i
.icon-rizhi1
:hover
{
background-color
:
#85ce61
}
font-size
:
14px
;
._right
i
.icon-rizhi1
:active
{
background-color
:
#5daf34
}
padding-bottom
:
7px
;
._right
i
.icon-liucheng1
{
background-color
:
#409EFF
}
font-weight
:
bold
._right
i
.icon-liucheng1
:hover
{
background-color
:
#66b1ff
}
}
._right
i
.icon-liucheng1
:active
{
background-color
:
#3a8ee6
}
._right
i
.icon-bofang
{
background-color
:
#ebb563
}
._s
{
._right
i
.icon-bofang
:hover
{
background-color
:
#ebb563
}
color
:
#666666
;
._right
i
.icon-bofang
:active
{
background-color
:
#cf9236
}
font-size
:
12px
;
._right
i
.icon-zanting1
{
background-color
:
#ebb563
}
}
._right
i
.icon-zanting1
:hover
{
background-color
:
#ebb563
}
._right
i
.icon-zanting1
:active
{
background-color
:
#cf9236
}
._cent
{
._right
i
.el-icon-delete
{
background-color
:
#f56c6c
}
flex
:
3
;
._right
i
.el-icon-delete
:hover
{
background-color
:
#f78989
}
display
:
flex
;
._right
i
.el-icon-delete
:active
{
background-color
:
#dd6161
}
align-items
:
center
;
._left
._Icon_box
{
width
:
50px
;
padding
:
0
}
}
.page_FProcessManagement
.query-box
li
:last-child
{
top
:
100px
;
._cent
>
div
{
}
width
:
50%
;
padding-left
:
80px
;
}
._right
{
flex
:
1
;
align-items
:
center
;
display
:
flex
;
padding-left
:
20px
!important
;
border-left
:
1px
dashed
#DCDFE6
;
}
.icon-liuchengsheji
{
background-color
:
#B552E9
;
}
.icon-liuchengsheji
:hover
{
background-color
:
#c57dea
}
.eicon-liuchengshejidit
:active
{
background-color
:
#8741ab
}
._red
{
color
:
#E95252
}
._dt
{
text-decoration
:
underline
}
._cu
{
cursor
:
pointer
;
}
._none
{
opacity
:
0
;
}
._block
{
opacity
:
1
}
.InfoChangeLog
{
height
:
auto
;
background-color
:
#FFFFFF
;
}
.changLogList
{
padding-left
:
20px
;
max-height
:
180px
;
overflow
:
auto
;
}
.changLogList_l
{
border-left
:
1px
solid
#E9E9E9
;
position
:
relative
;
padding-bottom
:
10px
;
padding-left
:
20px
;
padding-top
:
10px
;
}
._radius_green
{
background-color
:
#47BF8C
;
width
:
7px
;
height
:
7px
;
border-radius
:
50%
;
display
:
inline-block
;
position
:
absolute
;
left
:
-4px
;
top
:
19px
;
}
.changLog_time
{
color
:
#666666
;
font-size
:
12px
;
display
:
inline-block
;
padding-right
:
10px
}
.el-button
{
border-radius
:
inherit
!important
}
._log_t
{
padding
:
10px
;
}
._bdrd
{
border-radius
:
17px
;
}
._tp
{
padding
:
10px
20px
0
20px
;
font-size
:
12px
;
display
:
flex
;
align-items
:
center
;
align-items
:
flex-end
}
._bg_blue
{
background-color
:
#297BEF
}
._bg_org
{
background-color
:
#F16C3C
!important
}
._bg_greend
{
background-color
:
#32B37C
}
._bg_greendS
{
background-color
:
#1C9A65
}
._bg_gray
{
background-color
:
#666666
}
._color_blue
{
color
:
#005CAA
}
._yewu
{
color
:
white
;
padding
:
3px
13px
;
}
._qian
{
padding
:
6px
15px
;
}
._array
{
display
:
inline-block
;
background-color
:
#999999
}
._array_h
{
width
:
35px
;
height
:
3px
;
}
._array_h_left
{
top
:
14px
;
left
:
-40px
;
position
:
absolute
;
}
._array_h_right
{
top
:
14px
;
right
:
-40px
;
position
:
absolute
;
}
._array_w
{
width
:
3px
;
height
:
35px
;
}
.tri_left
{
width
:
0
;
height
:
0
;
border-top
:
6px
solid
transparent
;
border-bottom
:
6px
solid
transparent
;
border-left
:
6px
solid
#999999
;
}
.tri_down
{
width
:
0
;
height
:
0
;
border-left
:
6px
solid
transparent
;
border-right
:
6px
solid
transparent
;
border-top
:
6px
solid
#999999
;
}
.tri_right
{
width
:
0
;
height
:
0
;
border-top
:
6px
solid
transparent
;
border-bottom
:
6px
solid
transparent
;
border-right
:
6px
solid
#999999
;
}
._tag
{
display
:
inline-block
;
border-radius
:
4px
;
padding
:
2px
4px
;
margin-bottom
:
4px
;
font-size
:
12px
}
._inlineblock_cen
{
display
:
inline-block
;
text-align
:
center
}
._text_right
{
text-align
:
right
;
padding-right
:
50px
}
._tp_b
{
padding
:
0
20px
}
.height40
{
height
:
40px
;
}
._feiyong
{
padding
:
10px
;
flex-wrap
:
wrap
;
display
:
flex
;
}
._feiyong
>
span
{
display
:
inline-block
;
padding
:
4px
20px
;
color
:
white
;
font-size
:
14px
;
border-radius
:
4px
;
margin
:
0
10px
10px
0
;
}
._log_t_s
{
font-size
:
12px
;
color
:
#666666
}
.el-popover
{
text-align
:
inherit
}
._dtel
{
padding-top
:
10px
;
}
._no_liucheng
{
padding
:
20px
;
text-align
:
center
}
._liu_block
{
display
:
inline-block
;
width
:
auto
;
margin-bottom
:
20px
;
position
:
relative
;
}
.icon-xiaotuziCduan_
,
.icon-xiaotuziCduan_2
{
position
:
absolute
;
right
:
-10px
;
top
:
-10px
;
color
:
#999999
;
}
._array_h_left
.icon-xiaotuziCduan_2
{
position
:
absolute
;
left
:
-10px
;
top
:
-10px
;
right
:
initial
;
}
.text_l
{
text-align
:
left
;
margin-right
:
50px
}
.text_r
{
text-align
:
right
;
margin-left
:
50px
}
._miaoshu
{
display
:
inline-block
;
overflow
:
hidden
;
text-overflow
:
ellipsis
;
white-space
:
nowrap
;
padding
:
6px
15px
;
border-radius
:
4px
;
background-color
:
#297BEF
;
color
:
white
;
font-size
:
14px
;
min-width
:
120px
;
text-align
:
center
;
max-width
:
130px
;
}
._last_ml0
{
margin-right
:
0
}
._last_mr0
{
margin-left
:
0
}
._array_h_dbox
{
position
:
absolute
;
top
:
14px
;
right
:
-5px
;
}
._array_h_dbox_l
{
right
:
inherit
;
left
:
-40px
}
._array_h_down
{
width
:
35px
;
height
:
3px
;
position
:
absolute
;
background-color
:
#999999
}
._array_h_down_
{
width
:
3px
;
height
:
20px
;
position
:
absolute
;
background-color
:
#999999
}
._array_h_down_l
{
left
:
35px
}
.icon-xiaotuziCduan_1
{
position
:
absolute
;
left
:
28px
;
top
:
10px
;
color
:
#999999
;
}
.xiaotuziCduan_1_l
{
left
:
inherit
;
right
:
-9px
;
}
._right
i
{
width
:
30px
;
height
:
30px
;
display
:
inline-block
;
color
:
white
!important
;
border-radius
:
50%
;
text-align
:
center
;
line-height
:
30px
;
margin-right
:
10px
;
cursor
:
pointer
;
outline
:
none
;
}
._right
i
.icon-rizhi1
{
background-color
:
#67c23a
}
._right
i
.icon-rizhi1
:hover
{
background-color
:
#85ce61
}
._right
i
.icon-rizhi1
:active
{
background-color
:
#5daf34
}
._right
i
.icon-liucheng1
{
background-color
:
#409EFF
}
._right
i
.icon-liucheng1
:hover
{
background-color
:
#66b1ff
}
._right
i
.icon-liucheng1
:active
{
background-color
:
#3a8ee6
}
._right
i
.icon-bofang
{
background-color
:
#ebb563
}
._right
i
.icon-bofang
:hover
{
background-color
:
#ebb563
}
._right
i
.icon-bofang
:active
{
background-color
:
#cf9236
}
._right
i
.icon-zanting1
{
background-color
:
#ebb563
}
._right
i
.icon-zanting1
:hover
{
background-color
:
#ebb563
}
._right
i
.icon-zanting1
:active
{
background-color
:
#cf9236
}
._right
i
.el-icon-delete
{
background-color
:
#f56c6c
}
._right
i
.el-icon-delete
:hover
{
background-color
:
#f78989
}
._right
i
.el-icon-delete
:active
{
background-color
:
#dd6161
}
._left
._Icon_box
{
width
:
50px
;
padding
:
0
}
.page_FProcessManagement
.query-box
li
:last-child
{
top
:
100px
;
}
</
style
>
</
style
>
<
template
>
<
template
>
<div
class=
"page_FProcessManagement"
>
<div
class=
"page_FProcessManagement"
>
<div
class=
'query-box'
>
<div
class=
'query-box'
>
<ul>
<ul>
<!--
<li>
<li><input
type=
"button"
class=
"normalBtn"
value=
"新增流程"
@
click=
"gotoSub('addFinancialProcess',0,8)"
/>
<span>
注:财务基本流程包括(收款流程,付款流程,发票流程),如果需要其他的流程,比如退款流程等请在自定义流程下新增流程设置
</span>
<input
type=
"button"
class=
"hollowFixedBtn"
:value=
"$t('pub.searchBtn')"
</li>
-->
@
click=
"resetPageIndex();getTemplateList();"
/>
<li><input
type=
"button"
class=
"normalBtn"
value=
"新增流程"
@
click=
"gotoSub('addFinancialProcess',0,8)"
/>
</li>
<input
type=
"button"
class=
"hollowFixedBtn"
:value=
"$t('pub.searchBtn')"
@
click=
"resetPageIndex();getTemplateList();"
/>
</ul>
</li>
</div>
</ul>
<ul
class=
"_nav clearfix"
>
</div>
<li
class=
"_active"
@
click=
"getTemplateList()"
>
流程列表
</li>
<ul
class=
"_nav clearfix"
>
</ul>
<li
class=
"_active"
@
click=
"getTemplateList()"
>
流程列表
</li>
<ul>
<!--
<li
:class=
"active==1?'_active':''"
@
click=
"active=1,msg.TempLateWay=8,getTemplateList()"
>
自定义流程
</li>
-->
<el-form
class=
"_info_box clearfix"
label-width=
"110px"
>
</ul>
<el-row>
<ul>
<el-col
:span=
"4"
:gutter=
"35"
>
<el-form
class=
"_info_box clearfix"
label-width=
"110px"
>
<el-form-item
label=
"流程名称"
>
<el-row>
<el-input
v-model=
"msg.Name"
></el-input>
<el-col
:span=
"4"
:gutter=
"35"
>
</el-form-item>
<el-form-item
label=
"流程名称"
>
</el-col>
<el-input
v-model=
"msg.Name"
></el-input>
<el-col
:span=
"4"
:gutter=
"35"
>
</el-form-item>
<el-form-item
label=
"费用类型"
>
</el-col>
<el-select
filterable
v-model=
'msg.CostTypeID'
>
<el-col
:span=
"4"
:gutter=
"35"
>
<el-option
:value=
"0"
label=
"不限"
></el-option>
<el-form-item
label=
"费用类型"
>
<el-option
v-for=
"item in GetCostTypeList"
:key=
"item.ID"
:value=
"item.ID"
:label=
"item.Name"
>
<el-select
filterable
v-model=
'msg.CostTypeID'
>
</el-option>
<el-option
:value=
"0"
label=
"不限"
></el-option>
</el-select>
<el-option
v-for=
"item in GetCostTypeList"
:key=
"item.ID"
:value=
"item.ID"
:label=
"item.Name"
></el-option>
</el-form-item>
</el-select>
</el-col>
</el-form-item>
</el-row>
</el-col>
</el-form>
</el-row>
</ul>
</el-form>
<ul
class=
"_content"
v-loading=
"loading"
>
</ul>
<li
v-for=
"(item,index) in CTemplateList"
>
<ul
class=
"_content"
v-loading=
"loading"
>
<div
class=
"_left"
>
<li
v-for=
"(item,index) in CTemplateList"
>
<div
class=
"_Icon_box"
>
<div
class=
"_left"
>
<span
class=
"_Icon"
>
{{
item
.
Name
.
substring
(
0
,
1
)
}}
</span>
<div
class=
"_Icon_box"
>
</div>
<span
class=
"_Icon"
>
{{
item
.
Name
.
substring
(
0
,
1
)
}}
</span>
<div>
</div>
<p
class=
"_t"
>
{{
item
.
Name
}}
</p>
<div>
<p
class=
"_s"
>
{{
item
.
DescribeInfo
}}
</p>
<p
class=
"_t"
>
{{
item
.
Name
}}
</p>
</div>
<p
class=
"_s"
>
{{
item
.
DescribeInfo
}}
</p>
</div>
<div
class=
"_cent _cent_zidingyi"
>
<div>
<p
class=
"_t _red"
>
<el-popover
popper-class=
"detailsIT_Journal"
width=
"420"
trigger=
"click"
>
<div
class=
"InfoChangeLog"
v-if=
"item.CoseTypeList"
>
<div
class=
"changLog"
>
<p
class=
"_log_t"
>
适用费用
</p>
<div
class=
"_feiyong"
>
<span
class=
"_bg_greend"
v-for=
"Cose in item.CoseTypeList"
>
{{
Cose
}}
</span>
</div>
</div>
<p
class=
"_log_t _log_t_s"
>
注:以上费用类型将会被执行你设定的流程
</p>
</div>
</div>
</div>
<div
class=
"_cent _cent_zidingyi"
>
<div
v-else
>
<div>
<p
class=
"_no_liucheng"
>
暂无适用费用!
</p>
<p
class=
"_t _red"
>
</div>
<el-popover
<span
slot=
"reference"
class=
"_dt _cu"
type=
"success"
popper-class=
"detailsIT_Journal"
icon=
"iconfont icon-rizhi1"
>
{{
item
.
CoseTypeListLength
}}
个费用类型
</span>
width=
"420"
trigger=
"click"
>
</el-popover>
<div
class=
"InfoChangeLog"
v-if=
"item.CoseTypeList"
>
</p>
<div
class=
"changLog"
>
<p
class=
"_s"
>
适用费用
</p>
<p
class=
"_log_t"
>
适用费用
</p>
</div>
<div
class=
"_feiyong"
>
<div>
<span
class=
"_bg_greend"
v-for=
"Cose in item.CoseTypeList"
>
{{
Cose
}}
</span>
<p
class=
"_t _cu"
v-if=
"item.FinanceFlowConnectType!=3"
>
</div>
<el-popover
popper-class=
"detailsIT_Journal"
width=
"420"
trigger=
"click"
>
<p
class=
"_log_t _log_t_s"
>
注:以上费用类型将会被执行你设定的流程
</p>
<div
class=
"InfoChangeLog"
v-if=
"item.SuitableObjectNameList"
>
</div>
<div
class=
"changLog"
>
</div>
<p
class=
"_log_t"
>
适用公司
</p>
<div
v-else
>
<div
class=
"_feiyong"
>
<p
class=
"_no_liucheng"
>
暂无适用费用!
</p>
<span
class=
"_bg_greend"
v-for=
"Cose in item.SuitableObjectNameList"
>
{{
Cose
}}
</span>
</div>
<span
slot=
"reference"
class=
"_dt _cu"
type=
"success"
icon=
"iconfont icon-rizhi1"
>
{{
item
.
CoseTypeListLength
}}
个费用类型
</span>
</el-popover>
</p>
<p
class=
"_s"
>
适用费用
</p>
</div>
<div>
<p
class=
"_t _cu"
v-if=
"item.FinanceFlowConnectType!=3"
>
<!--
<template
v-for=
"(cp,ci) in item.SuitableObjectNameList"
>
<span
>
{{
cp
}}
<span
v-if=
"ci!=item.SuitableObjectNameList.length-1"
>
,
</span>
</span>
</
template
>
-->
<el-popover
popper-class=
"detailsIT_Journal"
width=
"420"
trigger=
"click"
>
<div
class=
"InfoChangeLog"
v-if=
"item.SuitableObjectNameList"
>
<div
class=
"changLog"
>
<p
class=
"_log_t"
>
适用公司
</p>
<div
class=
"_feiyong"
>
<span
class=
"_bg_greend"
v-for=
"Cose in item.SuitableObjectNameList"
>
{{Cose}}
</span>
</div>
<p
class=
"_log_t _log_t_s"
>
注:以上公司将会被执行你设定的流程
</p>
</div>
</div>
<div
v-else
>
<p
class=
"_no_liucheng"
>
暂无适用公司!
</p>
</div>
<span
slot=
"reference"
class=
"_dt _cu"
type=
"success"
icon=
"iconfont icon-rizhi1"
v-if=
"item.FinanceFlowConnectType!=3"
>
{{item.SuitableObjectNameListlength}}个适用公司
</span>
</el-popover>
</p>
<P
v-if=
"item.FinanceFlowConnectType==3"
>
<span
slot=
"reference"
class=
"_t"
type=
"success"
icon=
"iconfont icon-rizhi1"
>
集团通用
</span></P>
<p
class=
"_s"
>
适用公司
</p>
</div>
<div>
<p
class=
"_t"
v-if=
"item.Status==1"
>
{{item.FlowNum==null?'无':item.FlowNum}}
</p>
<p
class=
"_t"
v-else
>
暂未开启流程
</p>
<p
class=
"_s"
>
子流程数量
</p>
</div>
</div>
<p
class=
"_log_t _log_t_s"
>
注:以上公司将会被执行你设定的流程
</p>
</div>
</div>
</div>
<div
class=
"_right"
>
<div
v-else
>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"日志"
placement=
"top"
>
<p
class=
"_no_liucheng"
>
暂无适用公司!
</p>
<el-popover
popper-class=
"detailsIT_Journal"
width=
"250"
trigger=
"click"
>
<div
class=
"InfoChangeLog"
>
<div
class=
"changLog"
>
<p
class=
"_log_t"
>
流程日志
</p>
<ul
class=
"changLogList"
v-if=
"FinanceInfoChangeLog"
>
<li
class=
"changLogList_l"
v-for=
"(log,li) in FinanceInfoChangeLog"
>
<span
style=
"background-color: #47BF8C"
class=
"_radius_green"
></span>
<p>
<span
class=
"_color_blue"
>
{{log.emName}}
</span>
<span
class=
"fr changLog_time"
>
{{log.Time}}
</span>
</p>
<p
class=
"_dtel"
>
{{log.StartValue}}
</p>
</li>
</ul>
<ul
v-else
>
<li>
暂无修改日志
</li>
</ul>
</div>
</div>
<i
slot=
"reference"
v-show=
"item.Status==1"
class=
"iconfont icon-rizhi1"
@
click=
"FinanceInfoChangeLog = item.FinanceInfoChangeLog"
></i>
</el-popover>
</el-tooltip>
<el-tooltip
popper-class=
"item _process"
effect=
"dark"
content=
"流程"
placement=
"top"
>
<el-popover
popper-class=
"detailsIT_Journal"
width=
"600"
trigger=
"click"
>
<div
class=
"InfoChangeLog"
>
<div
class=
"changLog"
>
<p
class=
"_log_t"
>
收款流程
</p>
<my-FlowChartModule
:data=
"item.Workflow_Condition"
></my-FlowChartModule>
</div>
</div>
<i
slot=
"reference"
v-show=
"item.Status==1"
class=
"iconfont icon-liucheng1"
></i>
</el-popover>
</el-tooltip>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"启用"
placement=
"top"
>
<i
class=
"iconfont icon-bofang"
v-show=
"item.Status==2"
@
click=
"UpdateStatus(item.Id,item.TemplateType)"
></i>
</el-tooltip>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"停用"
placement=
"top"
>
<i
class=
"iconfont icon-zanting1"
v-show=
"item.Status==1"
@
click=
"UpdateStatus(item.Id,item.TemplateType)"
></i>
</el-tooltip>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"修改"
placement=
"top"
>
<i
class=
"iconfont icon-liuchengsheji"
v-show=
"item.Status==1"
@
click=
"goUrl('addFinancialProcess',item.Id,8)"
></i>
</el-tooltip>
<!-- <el-tooltip class="item" effect="dark" content="删除" placement="top">
<i class="edit el-icon-delete" v-show="item.Status==1" @click="deletTemplate(item.Id,item.Name)"></i>
</el-tooltip> -->
</div>
</div>
</li>
<span
slot=
"reference"
class=
"_dt _cu"
type=
"success"
icon=
"iconfont icon-rizhi1"
</ul>
v-if=
"item.FinanceFlowConnectType!=3"
>
{{
item
.
SuitableObjectNameListlength
}}
个适用公司
</span>
<div
class=
"noData"
v-if=
"noData"
>
</el-popover>
{{$t('system.content_noData')}}
</p>
<P
v-if=
"item.FinanceFlowConnectType==3"
>
<span
slot=
"reference"
class=
"_t"
type=
"success"
icon=
"iconfont icon-rizhi1"
>
集团通用
</span></P>
<p
class=
"_s"
>
适用公司
</p>
</div>
<div>
<p
class=
"_t"
v-if=
"item.Status==1"
>
{{
item
.
FlowNum
==
null
?
'无'
:
item
.
FlowNum
}}
</p>
<p
class=
"_t"
v-else
>
暂未开启流程
</p>
<p
class=
"_s"
>
子流程数量
</p>
</div>
</div>
</div>
<div>
<div
class=
"_right"
>
<el-pagination
<el-tooltip
class=
"item"
effect=
"dark"
content=
"日志"
placement=
"top"
>
background
<el-popover
popper-class=
"detailsIT_Journal"
width=
"250"
trigger=
"click"
>
@
current-change=
"handleCurrentChange"
<div
class=
"InfoChangeLog"
>
:current-page
.
sync=
"currentPage"
<div
class=
"changLog"
>
layout=
"total,prev, pager, next, jumper"
<p
class=
"_log_t"
>
流程日志
</p>
:page-size=
msg.pageSize
<ul
class=
"changLogList"
v-if=
"FinanceInfoChangeLog"
>
:total=
total
>
<li
class=
"changLogList_l"
v-for=
"(log,li) in FinanceInfoChangeLog"
>
</el-pagination>
<span
style=
"background-color: #47BF8C"
class=
"_radius_green"
></span>
<p>
<span
class=
"_color_blue"
>
{{
log
.
emName
}}
</span>
<span
class=
"fr changLog_time"
>
{{
log
.
Time
}}
</span>
</p>
<p
class=
"_dtel"
>
{{
log
.
StartValue
}}
</p>
</li>
</ul>
<ul
v-else
>
<li>
暂无修改日志
</li>
</ul>
</div>
</div>
<i
slot=
"reference"
v-show=
"item.Status==1"
class=
"iconfont icon-rizhi1"
@
click=
"FinanceInfoChangeLog = item.FinanceInfoChangeLog"
></i>
</el-popover>
</el-tooltip>
<el-tooltip
popper-class=
"item _process"
effect=
"dark"
content=
"流程"
placement=
"top"
>
<el-popover
popper-class=
"detailsIT_Journal"
width=
"600"
trigger=
"click"
>
<div
class=
"InfoChangeLog"
>
<div
class=
"changLog"
>
<p
class=
"_log_t"
>
收款流程
</p>
<my-FlowChartModule
:data=
"item.Workflow_Condition"
></my-FlowChartModule>
</div>
</div>
<i
slot=
"reference"
v-show=
"item.Status==1"
class=
"iconfont icon-liucheng1"
></i>
</el-popover>
</el-tooltip>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"启用"
placement=
"top"
>
<i
class=
"iconfont icon-bofang"
v-show=
"item.Status==2"
@
click=
"UpdateStatus(item.Id,item.TemplateType)"
></i>
</el-tooltip>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"停用"
placement=
"top"
>
<i
class=
"iconfont icon-zanting1"
v-show=
"item.Status==1"
@
click=
"UpdateStatus(item.Id,item.TemplateType)"
></i>
</el-tooltip>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"修改"
placement=
"top"
>
<i
class=
"iconfont icon-liuchengsheji"
v-show=
"item.Status==1"
@
click=
"goUrl('addFinancialProcess',item.Id,8)"
></i>
</el-tooltip>
</div>
</div>
</li>
</ul>
<div
class=
"noData"
v-if=
"noData"
>
{{
$t
(
'system.content_noData'
)
}}
</div>
</div>
<div>
<el-pagination
background
@
current-change=
"handleCurrentChange"
:current-page
.
sync=
"currentPage"
layout=
"total,prev, pager, next, jumper"
:page-size=
msg.pageSize
:total=
total
>
</el-pagination>
</div>
</div>
</
template
>
</
template
>
<
script
>
<
script
>
import
myFlowChartModule
from
"../financial/components/FlowChartModule.vue"
;
import
myFlowChartModule
from
"../financial/components/FlowChartModule.vue"
;
export
default
{
export
default
{
data
(){
data
()
{
return
{
return
{
sendData
:{},
sendData
:
{},
//TemplateList:[],
//TemplateList:[],
CTemplateList
:[],
CTemplateList
:
[],
FinanceInfoChangeLog
:[],
FinanceInfoChangeLog
:
[],
GetCostTypeList
:[],
GetCostTypeList
:
[],
total
:
0
,
total
:
0
,
currentPage
:
1
,
currentPage
:
1
,
noData
:
true
,
noData
:
true
,
loading
:
false
,
loading
:
false
,
msg
:{
msg
:
{
pageIndex
:
1
,
pageIndex
:
1
,
pageSize
:
6
,
pageSize
:
6
,
RB_BranchId
:
-
1
,
RB_BranchId
:
-
1
,
Name
:
''
,
Name
:
''
,
CostTypeID
:
0
CostTypeID
:
0
}
}
}
},
created
(){
}
let
type
=
this
.
$route
.
query
.
type
;
if
(
this
.
$route
.
query
.
Branch_Id
>=
0
){
this
.
msg
.
RB_BranchId
=
this
.
$route
.
query
.
Branch_Id
;
};
},
components
:
{
"my-FlowChartModule"
:
myFlowChartModule
},
methods
:{
handleCurrentChange
(
val
)
{
//翻页功能按钮
this
.
msg
.
pageIndex
=
val
;
this
.
getTemplateList
();
},
tips
(
msg
,
type
)
{
this
.
$message
({
message
:
msg
,
duration
:
2000
,
type
:
type
});
},
addTemplate
(
obj
){
obj
.
RB_BranchId
=
this
.
msg
.
RB_BranchId
;
this
.
apipost
(
'FinancialFlowTemplate_post_Set'
,
obj
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
){
this
.
$message
.
success
(
'启用成功!'
)
this
.
getTemplateList
()
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
)
}
},
err
=>
{})
},
deletTemplate
(
id
,
text
){
//删除
this
.
$confirm
(
'确定删除'
+
'“'
+
text
+
'”'
+
'流程吗?删除后不可恢复!'
,
'提示'
,
{
confirmButtonText
:
'确定'
,
cancelButtonText
:
'取消'
,
type
:
'warning'
}).
then
(()
=>
{
this
.
apipost
(
'FinancialFlowTemplate_post_Remove'
,{
ID
:
id
},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
){
this
.
$message
.
success
(
res
.
data
.
message
)
this
.
getTemplateList
()
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
)
}
},
err
=>
{})
}).
catch
(()
=>
{
this
.
$message
({
type
:
'info'
,
message
:
'已取消删除'
});
});
},
financeinfo_post_GetCostTypeList
(){
// 费用类型
this
.
apipost
(
'financeinfo_post_GetCostTypeList'
,{
Name
:
''
,
type
:
0
,
DepartIDs
:
this
.
DepartIDs
},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
){
this
.
GetCostTypeList
=
res
.
data
.
data
;
}
else
{
}
},
err
=>
{})
},
},
UpdateStatus
(
id
,
type
){
//启停用
created
()
{
this
.
apipost
(
'FinancialFlowTemplate_post_UpdateStatus'
,{
ID
:
id
,
TemplateType
:
type
,
RB_Branch_id
:
this
.
msg
.
RB_BranchId
},
res
=>
{
let
type
=
this
.
$route
.
query
.
type
;
if
(
res
.
data
.
resultCode
==
1
){
if
(
this
.
$route
.
query
.
Branch_Id
>=
0
)
{
this
.
$message
.
success
(
res
.
data
.
message
)
this
.
msg
.
RB_BranchId
=
this
.
$route
.
query
.
Branch_Id
;
this
.
getTemplateList
()
};
}
else
{
},
this
.
$message
.
error
(
res
.
data
.
message
)
components
:
{
}
"my-FlowChartModule"
:
myFlowChartModule
},
err
=>
{})
},
},
methods
:
{
getTemplateList
(){
handleCurrentChange
(
val
)
{
//翻页功能按钮
this
.
loading
=
true
;
this
.
msg
.
pageIndex
=
val
;
let
url
=
'FinancialFlowTemplate_post_GetPageList'
// if(this.active==0){
// url = 'FinancialFlowTemplate_post_GetTemplateList'
// }
this
.
apipost
(
url
,
this
.
msg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
){
this
.
total
=
res
.
data
.
data
.
count
;
let
data
=
res
.
data
.
data
.
pageData
;
data
.
forEach
(
x
=>
{
if
(
x
.
CoseTypeList
==
null
){
x
.
CoseTypeListLength
=
0
}
else
{
x
.
CoseTypeListLength
=
x
.
CoseTypeList
.
length
;
}
if
(
x
.
SuitableObjectNameList
==
null
){
x
.
SuitableObjectNameListlength
=
0
}
else
{
x
.
SuitableObjectNameListlength
=
x
.
SuitableObjectNameList
.
length
}
if
(
x
.
Workflow_Condition
.
AuditList
!=
null
){
// v-if="lc.AuditWay!=1">({{lc.AuditWay=="2"?'会签':'或签'}})
x
.
Workflow_Condition
.
AuditList
.
forEach
(
y
=>
{
if
(
y
.
AuditWay
==
1
){
y
.
contentTips
=
y
.
AuditDescription
}
else
{
y
.
contentTips
=
y
.
AuditWay
==
2
?
y
.
AuditDescription
+
'(会签)'
:
y
.
AuditDescription
+
'(或签)'
}
})
}
x
.
FinanceInfoChangeLog
.
forEach
(
y
=>
{
y
.
Time
=
this
.
$commonUtils
.
formatMsgTime
(
y
.
UpdateDate
)
})
});
this
.
CTemplateList
=
data
;
this
.
loading
=
false
;
if
(
data
.
length
>
0
){
this
.
noData
=
false
;
}
else
{
this
.
noData
=
true
;
}
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
);
this
.
loading
=
false
;
}
},
err
=>
{})
},
resetPageIndex
()
{
this
.
msg
.
pageIndex
=
1
this
.
currentPage
=
1
},
gotoSub
(
path
,
id
,
isZ
,
Branch_Id
)
{
var
tempStr
=
'/financial/'
+
path
+
'?id='
+
id
+
'&isZ='
+
isZ
;
this
.
$router
.
push
({
path
:
tempStr
});
},
// goUrl(path,id,isZ,Branch_Id) {
// this.$router.push({ name: path,query:{"id":id,"isZ":isZ,"blank":'y',tab:"修改流程"} })
// },
},
mounted
(){
this
.
getTemplateList
();
this
.
getTemplateList
();
this
.
financeinfo_post_GetCostTypeList
();
},
tips
(
msg
,
type
)
{
this
.
$message
({
message
:
msg
,
duration
:
2000
,
type
:
type
});
},
addTemplate
(
obj
)
{
obj
.
RB_BranchId
=
this
.
msg
.
RB_BranchId
;
this
.
apipost
(
'FinancialFlowTemplate_post_Set'
,
obj
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
$message
.
success
(
'启用成功!'
)
this
.
getTemplateList
()
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
)
}
},
err
=>
{})
},
deletTemplate
(
id
,
text
)
{
//删除
this
.
$confirm
(
'确定删除'
+
'“'
+
text
+
'”'
+
'流程吗?删除后不可恢复!'
,
'提示'
,
{
confirmButtonText
:
'确定'
,
cancelButtonText
:
'取消'
,
type
:
'warning'
}).
then
(()
=>
{
this
.
apipost
(
'FinancialFlowTemplate_post_Remove'
,
{
ID
:
id
},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
$message
.
success
(
res
.
data
.
message
)
this
.
getTemplateList
()
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
)
}
},
err
=>
{})
}).
catch
(()
=>
{
this
.
$message
({
type
:
'info'
,
message
:
'已取消删除'
});
});
},
financeinfo_post_GetCostTypeList
()
{
// 费用类型
this
.
apipost
(
'financeinfo_post_GetCostTypeList'
,
{
Name
:
''
,
type
:
0
,
DepartIDs
:
this
.
DepartIDs
},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
GetCostTypeList
=
res
.
data
.
data
;
}
else
{
}
},
err
=>
{})
},
UpdateStatus
(
id
,
type
)
{
//启停用
this
.
apipost
(
'FinancialFlowTemplate_post_UpdateStatus'
,
{
ID
:
id
,
TemplateType
:
type
,
RB_Branch_id
:
this
.
msg
.
RB_BranchId
},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
$message
.
success
(
res
.
data
.
message
)
this
.
getTemplateList
()
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
)
}
},
err
=>
{})
},
getTemplateList
()
{
this
.
loading
=
true
;
let
url
=
'FinancialFlowTemplate_post_GetPageList'
// if(this.active==0){
// url = 'FinancialFlowTemplate_post_GetTemplateList'
// }
this
.
apipost
(
url
,
this
.
msg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
total
=
res
.
data
.
data
.
count
;
let
data
=
res
.
data
.
data
.
pageData
;
data
.
forEach
(
x
=>
{
if
(
x
.
CoseTypeList
==
null
)
{
x
.
CoseTypeListLength
=
0
}
else
{
x
.
CoseTypeListLength
=
x
.
CoseTypeList
.
length
;
}
if
(
x
.
SuitableObjectNameList
==
null
)
{
x
.
SuitableObjectNameListlength
=
0
}
else
{
x
.
SuitableObjectNameListlength
=
x
.
SuitableObjectNameList
.
length
}
if
(
x
.
Workflow_Condition
.
AuditList
!=
null
)
{
// v-if="lc.AuditWay!=1">({{lc.AuditWay=="2"?'会签':'或签'}})
x
.
Workflow_Condition
.
AuditList
.
forEach
(
y
=>
{
if
(
y
.
AuditWay
==
1
)
{
y
.
contentTips
=
y
.
AuditDescription
}
else
{
y
.
contentTips
=
y
.
AuditWay
==
2
?
y
.
AuditDescription
+
'(会签)'
:
y
.
AuditDescription
+
'(或签)'
}
})
}
x
.
FinanceInfoChangeLog
.
forEach
(
y
=>
{
y
.
Time
=
this
.
$commonUtils
.
formatMsgTime
(
y
.
UpdateDate
)
})
});
this
.
CTemplateList
=
data
;
this
.
loading
=
false
;
if
(
data
.
length
>
0
)
{
this
.
noData
=
false
;
}
else
{
this
.
noData
=
true
;
}
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
);
this
.
loading
=
false
;
}
},
err
=>
{})
},
resetPageIndex
()
{
this
.
msg
.
pageIndex
=
1
this
.
currentPage
=
1
},
gotoSub
(
path
,
id
,
isZ
,
Branch_Id
)
{
var
tempStr
=
'/financial/'
+
path
+
'?id='
+
id
+
'&isZ='
+
isZ
;
this
.
$router
.
push
({
path
:
tempStr
});
},
goUrl
(
path
,
id
,
isZ
,
Branch_Id
)
{
this
.
$router
.
push
({
path
:
path
,
query
:{
"id"
:
id
,
"isZ"
:
isZ
,
"blank"
:
'y'
,
tab
:
"修改流程"
}
})
},
},
mounted
()
{
this
.
getTemplateList
();
this
.
financeinfo_post_GetCostTypeList
();
}
}
}
}
</
script
>
</
script
>
src/pages/financial/addFinancialProcess.vue
View file @
f73fc33c
...
@@ -420,7 +420,7 @@
...
@@ -420,7 +420,7 @@
<i
class=
"iconfont icon-user11"
></i>
<i
class=
"iconfont icon-user11"
></i>
{{
item
.
emName
}}
{{
item
.
emName
}}
<em
v-if=
'index==itemIndex1'
class=
"iconfont icon-guanbi approval_process_item_delete"
<em
v-if=
'index==itemIndex1'
class=
"iconfont icon-guanbi approval_process_item_delete"
@
click
.
stop=
'deleteUser
(item.EmployeeId
)'
></em>
@
click
.
stop=
'deleteUser
2(index
)'
></em>
</span>
</span>
<i
class=
"iconfont icon-jiantouyou"
></i>
<i
class=
"iconfont icon-jiantouyou"
></i>
</div>
</div>
...
@@ -490,15 +490,15 @@
...
@@ -490,15 +490,15 @@
</el-input>
</el-input>
</p>
</p>
<el-tree
class=
'ApprovalProcessBg'
:data=
"userList"
show-checkbox
:filter-node-method=
"filterNode2"
<el-tree
class=
'ApprovalProcessBg'
:data=
"userList"
show-checkbox
:filter-node-method=
"filterNode2"
ref=
"treeUser"
:props=
"defaultProps2"
:render-after-expand=
"false"
node-key=
"Department
Id"
ref=
"treeUser"
:props=
"defaultProps2"
:render-after-expand=
"false"
:check-on-click-node=
"true"
node-key=
"
Id"
@
check-change=
"handleNodeChange1"
>
@
check-change=
"handleNodeChange1"
>
</el-tree>
</el-tree>
</div>
</div>
<div
class=
"fl"
>
<div
class=
"fl"
>
<p
style=
"margin: 0 0 20px 0;"
>
{{
$t
(
'fnc.yixuan'
)
}}
:
</p>
<p
style=
"margin: 0 0 20px 0;"
>
{{
$t
(
'fnc.yixuan'
)
}}
:
</p>
<div
class=
"Approval_yxList"
>
<div
class=
"Approval_yxList"
>
<li
v-for=
"
item
in myAuditUserList1"
>
{{
item
.
emName
}}
<li
v-for=
"
(item,index)
in myAuditUserList1"
>
{{
item
.
emName
}}
<i
@
click=
"deleteUser(i
tem.EmployeeId
)"
class=
"el-icon-circle-close showMemberIcon"
></i>
<i
@
click=
"deleteUser(i
ndex
)"
class=
"el-icon-circle-close showMemberIcon"
></i>
</li>
</li>
</div>
</div>
</div>
</div>
...
@@ -570,14 +570,10 @@
...
@@ -570,14 +570,10 @@
PropertyType
:
''
,
PropertyType
:
''
,
},
},
AuditUserList
:
{
AuditUserList
:
{
EmName
:
''
,
Em
ployeeId
Name
:
''
,
EmployeeId
:
''
,
EmployeeId
:
''
,
Sort
:
''
Sort
:
''
},
},
getCompanyMsg
:
{
RB_Group_Id
:
'0'
,
Status
:
'0'
,
},
getPostMsg
:
{
getPostMsg
:
{
RB_Group_Id
:
'0'
RB_Group_Id
:
'0'
},
},
...
@@ -669,7 +665,7 @@
...
@@ -669,7 +665,7 @@
},
},
defaultProps2
:
{
defaultProps2
:
{
children
:
'ChildList'
,
children
:
'ChildList'
,
label
:
'
Department
Name'
,
label
:
'
Employee
Name'
,
},
},
rules
:
{
rules
:
{
Name
:
[{
Name
:
[{
...
@@ -731,10 +727,9 @@
...
@@ -731,10 +727,9 @@
created
()
{
created
()
{
let
userInfo
=
this
.
getLocalStorage
();
let
userInfo
=
this
.
getLocalStorage
();
this
.
TemplateId
=
this
.
$route
.
query
.
id
;
this
.
TemplateId
=
this
.
$route
.
query
.
id
;
this
.
getCompanyMsg
.
RB_Group_Id
=
userInfo
.
RB_Group_id
;
//集团ID
this
.
getPostMsg
.
RB_Group_Id
=
userInfo
.
Group_Id
;
this
.
getPostMsg
.
RB_Group_Id
=
userInfo
.
RB_Group_id
;
this
.
addMsg
.
TemplateType
=
this
.
$route
.
query
.
isZ
;
this
.
addMsg
.
TemplateType
=
this
.
$route
.
query
.
isZ
;
this
.
DepartIDs
=
userInfo
.
RB_Department_
Id
;
this
.
DepartIDs
=
userInfo
.
Dept
Id
;
if
(
this
.
$route
.
query
.
id
===
0
)
{
if
(
this
.
$route
.
query
.
id
===
0
)
{
if
(
this
.
$route
.
query
.
Branch_Id
>=
0
)
{
if
(
this
.
$route
.
query
.
Branch_Id
>=
0
)
{
this
.
BranchIdS
.
push
(
this
.
$route
.
query
.
Branch_Id
);
this
.
BranchIdS
.
push
(
this
.
$route
.
query
.
Branch_Id
);
...
@@ -751,7 +746,6 @@
...
@@ -751,7 +746,6 @@
// this.addMsg.PropertyType="";
// this.addMsg.PropertyType="";
this
.
getPropertyType
();
this
.
getPropertyType
();
}
}
this
.
getCompanyList
();
this
.
getMaxDepartmentTierList
();
this
.
getMaxDepartmentTierList
();
if
(
this
.
TemplateId
!=
0
)
{
if
(
this
.
TemplateId
!=
0
)
{
this
.
getList
();
this
.
getList
();
...
@@ -838,9 +832,6 @@
...
@@ -838,9 +832,6 @@
this
.
$commonUtils
.
createComprisonFunction
(
"Sort"
)
this
.
$commonUtils
.
createComprisonFunction
(
"Sort"
)
);
);
this
.
Auditshow
=
false
;
this
.
Auditshow
=
false
;
},
EditAudit
()
{
},
},
handleCheckAllChangeAcc
(
val
)
{
handleCheckAllChangeAcc
(
val
)
{
this
.
accListMsg
=
val
?
[
1
,
2
,
3
,
4
]
:
[];
this
.
accListMsg
=
val
?
[
1
,
2
,
3
,
4
]
:
[];
...
@@ -882,6 +873,7 @@
...
@@ -882,6 +873,7 @@
this
.
addMsg
.
ShowDepartmentList
=
data
.
ShowDepartmentList
;
this
.
addMsg
.
ShowDepartmentList
=
data
.
ShowDepartmentList
;
this
.
addMsg
.
PropertyType
=
data
.
PropertyType
;
this
.
addMsg
.
PropertyType
=
data
.
PropertyType
;
console
.
log
(
res
,
'数据回来了'
);
if
(
data
.
list
&&
data
.
list
[
0
]
!==
-
1
)
{
if
(
data
.
list
&&
data
.
list
[
0
]
!==
-
1
)
{
this
.
accListMsg
=
data
.
list
;
this
.
accListMsg
=
data
.
list
;
...
@@ -910,7 +902,7 @@
...
@@ -910,7 +902,7 @@
this
.
BranchIdS
.
push
(
-
1
);
this
.
BranchIdS
.
push
(
-
1
);
}
else
{
}
else
{
data
.
SuitableObjectNameList
.
forEach
(
x
=>
{
data
.
SuitableObjectNameList
.
forEach
(
x
=>
{
this
.
BranchIdS
.
push
(
x
);
this
.
BranchIdS
.
push
(
parseInt
(
x
)
);
})
})
}
}
let
CostIdS
=
data
.
CoseTypeList
.
length
==
0
?
[]
:
JSON
.
parse
(
JSON
.
stringify
(
data
.
CoseTypeList
));
let
CostIdS
=
data
.
CoseTypeList
.
length
==
0
?
[]
:
JSON
.
parse
(
JSON
.
stringify
(
data
.
CoseTypeList
));
...
@@ -1038,9 +1030,14 @@
...
@@ -1038,9 +1030,14 @@
this
.
$message
.
error
(
this
.
$t
(
'tips.qxzspiren'
))
this
.
$message
.
error
(
this
.
$t
(
'tips.qxzspiren'
))
return
return
}
}
console
.
log
(
this
.
myAuditList
,
'myAuditList'
);
console
.
log
(
this
.
myAuditUserList
,
'myAuditUserList'
);
if
(
this
.
myAuditUserList
.
length
!=
0
)
{
if
(
this
.
myAuditUserList
.
length
!=
0
)
{
this
.
addMsg
.
Workflow_Condition
.
AuditUserList
=
this
.
myAuditUserList
this
.
addMsg
.
Workflow_Condition
.
AuditUserList
=
this
.
myAuditUserList
}
}
//暂时为空
// this.addMsg.Workflow_Condition.AuditUserList = []
if
(
this
.
TemplateId
!=
0
)
{
if
(
this
.
TemplateId
!=
0
)
{
this
.
addMsg
.
Workflow_Condition
.
Id
=
this
.
getMsg
.
Workflow_Condition
.
Id
this
.
addMsg
.
Workflow_Condition
.
Id
=
this
.
getMsg
.
Workflow_Condition
.
Id
}
}
...
@@ -1050,14 +1047,16 @@
...
@@ -1050,14 +1047,16 @@
this
.
$message
.
error
(
this
.
$t
(
'tips.qxzliucehng'
))
this
.
$message
.
error
(
this
.
$t
(
'tips.qxzliucehng'
))
return
return
}
}
this
.
loading
=
true
;
// this.loading = true;
this
.
addMsg
.
Workflow_Condition
.
AuditList
;
console
.
log
(
this
.
addMsg
,
'this.addMsg'
);
this
.
apipost
(
'FinancialFlowTemplate_post_Set'
,
this
.
addMsg
,
res
=>
{
this
.
apipost
(
'FinancialFlowTemplate_post_Set'
,
this
.
addMsg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
loading
=
false
;
this
.
loading
=
false
;
this
.
$message
.
success
(
this
.
$t
(
'tips.czchenggong'
))
this
.
$message
.
success
(
this
.
$t
(
'tips.czchenggong'
))
if
(
this
.
xingzhenState
)
{
if
(
this
.
xingzhenState
)
{
this
.
$router
.
push
({
this
.
$router
.
push
({
name
:
'XProcessmanagement'
,
path
:
'XProcessmanagement'
,
query
:
{
query
:
{
"type"
:
this
.
addMsg
.
TemplateType
,
"type"
:
this
.
addMsg
.
TemplateType
,
'Branch_Id'
:
this
.
$route
.
query
.
Branch_Id
'Branch_Id'
:
this
.
$route
.
query
.
Branch_Id
...
@@ -1066,7 +1065,7 @@
...
@@ -1066,7 +1065,7 @@
}
else
{
}
else
{
this
.
$router
.
push
({
this
.
$router
.
push
({
name
:
'FProcessManagement'
,
path
:
'FProcessManagement'
,
query
:
{
query
:
{
"type"
:
this
.
addMsg
.
TemplateType
,
"type"
:
this
.
addMsg
.
TemplateType
,
'Branch_Id'
:
this
.
$route
.
query
.
Branch_Id
'Branch_Id'
:
this
.
$route
.
query
.
Branch_Id
...
@@ -1100,17 +1099,19 @@
...
@@ -1100,17 +1099,19 @@
}
}
},
err
=>
{})
},
err
=>
{})
},
},
deleteUser
(
id
)
{
// 删除人员
deleteUser
(
index
)
{
// 删除人员
if
(
this
.
memberSetCheckedUserKeys
.
findIndex
(
item
=>
item
===
id
)
!=
-
1
)
{
var
arr
=
[];
this
.
memberSetCheckedUserKeys
.
splice
(
this
.
memberSetCheckedUserKeys
.
findIndex
(
item
=>
item
===
id
),
1
)
this
.
myAuditUserList1
.
splice
(
index
,
1
);
}
this
.
myAuditUserList1
.
forEach
(
x
=>
{
if
(
this
.
myAuditUserList
.
findIndex
(
item
=>
item
.
EmployeeId
===
id
)
!=
-
1
)
{
arr
.
push
(
x
.
EmployeeId
);
this
.
myAuditUserList
.
splice
(
this
.
myAuditUserList
.
findIndex
(
item
=>
item
.
EmployeeId
===
id
),
1
)
})
}
if
(
this
.
$refs
.
treeUser
){
if
(
this
.
myAuditUserList1
.
findIndex
(
item
=>
item
.
EmployeeId
===
id
)
!=
-
1
)
{
this
.
$refs
.
treeUser
.
setCheckedKeys
(
arr
);
this
.
myAuditUserList1
.
splice
(
this
.
myAuditUserList1
.
findIndex
(
item
=>
item
.
EmployeeId
===
id
),
1
)
}
}
},
},
deleteUser2
(
index
){
this
.
myAuditUserList
.
splice
(
index
,
1
);
},
saveAuditUser
()
{
// 抄送人保存
saveAuditUser
()
{
// 抄送人保存
if
(
this
.
myAuditUserList1
.
length
<=
10
)
{
if
(
this
.
myAuditUserList1
.
length
<=
10
)
{
this
.
myAuditUserList
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
myAuditUserList1
))
this
.
myAuditUserList
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
myAuditUserList1
))
...
@@ -1123,48 +1124,18 @@
...
@@ -1123,48 +1124,18 @@
},
},
handleNodeChange1
(
data
,
checked
)
{
//抄送人操作选中
handleNodeChange1
(
data
,
checked
)
{
//抄送人操作选中
data
.
IsCheck
=
checked
;
data
.
IsCheck
=
checked
;
if
(
data
.
Type
==
2
&&
data
.
IsCheck
)
{
//是员工且选中
let
res
=
this
.
$refs
.
treeUser
.
getCheckedNodes
(
true
,
true
);
let
isExsit
=
false
this
.
myAuditUserList1
=
[];
this
.
myAuditUserList1
.
forEach
(
x
=>
{
res
.
forEach
((
x
,
index
)
=>
{
if
(
x
.
EmployeeId
==
data
.
DepartmentId
)
{
var
obj
=
{
isExsit
=
true
sort
:
index
+
1
,
return
false
emName
:
x
.
EmployeeName
,
}
EmployeeId
:
x
.
Id
})
if
(
!
isExsit
)
{
this
.
myAuditUserList1
.
push
({
emName
:
data
.
DepartmentName
,
EmployeeId
:
data
.
DepartmentId
,
Sort
:
this
.
myAuditUserList1
.
length
+
1
})
this
.
memberSetCheckedUserKeys
.
push
(
data
.
DepartmentId
)
}
}
else
if
(
data
.
Type
==
2
&&
!
data
.
IsCheck
)
{
if
(
this
.
myAuditUserList1
.
findIndex
(
item
=>
item
.
EmployeeId
===
data
.
DepartmentId
)
!=
-
1
)
{
this
.
myAuditUserList1
.
splice
(
this
.
myAuditUserList1
.
findIndex
(
item
=>
item
.
EmployeeId
===
data
.
DepartmentId
),
1
)
this
.
memberSetCheckedUserKeys
.
splice
(
this
.
memberSetCheckedUserKeys
.
findIndex
(
item
=>
item
===
data
.
DepartmentId
),
1
)
if
(
this
.
myAuditUserList1
.
findIndex
(
item
=>
item
.
EmployeeId
===
data
.
ParentId
)
!=
-
1
)
{
this
.
memberSetCheckedUserKeys
.
splice
(
this
.
memberSetCheckedUserKeys
.
findIndex
(
item
=>
item
===
data
.
ParentId
),
1
)
}
}
}
if
(
data
.
Type
!=
2
&&
data
.
IsCheck
)
{
if
(
this
.
memberSetCheckedUserKeys
.
findIndex
(
item
=>
item
===
data
.
DepartmentId
)
==
-
1
)
{
this
.
memberSetCheckedUserKeys
.
push
(
data
.
DepartmentId
)
}
}
}
else
if
(
data
.
Type
==
2
&&
!
data
.
IsCheck
)
{
this
.
myAuditUserList1
.
push
(
obj
)
if
(
this
.
memberSetCheckedUserKeys
.
findIndex
(
item
=>
item
===
data
.
DepartmentId
)
!=
-
1
)
{
})
this
.
memberSetCheckedUserKeys
.
splice
(
this
.
memberSetCheckedUserKeys
.
findIndex
(
item
=>
item
===
data
console
.
log
(
this
.
myAuditUserList1
,
'this.myAuditUserList1'
);
.
DepartmentId
),
1
)
if
(
this
.
myAuditUserList1
.
findIndex
(
item
=>
item
.
EmployeeId
===
data
.
ParentId
)
!=
-
1
)
{
this
.
memberSetCheckedUserKeys
.
splice
(
this
.
memberSetCheckedUserKeys
.
findIndex
(
item
=>
item
===
data
.
ParentId
),
1
)
}
}
}
},
},
addAuditUser
()
{
// 抄送人
addAuditUser
()
{
// 抄送人
// let _arr = this.sysUserKeys.concat(this.memberSetCheckedUserKeys)
// let _arr = this.sysUserKeys.concat(this.memberSetCheckedUserKeys)
...
@@ -1176,9 +1147,12 @@
...
@@ -1176,9 +1147,12 @@
// this.userList = res.data.data
// this.userList = res.data.data
// }
// }
// }, err => {})
// }, err => {})
queryEmployee
(
msg
).
then
(
res
=>
{
this
.
dialogTitle
=
this
.
$t
(
'fnc.xzrenyuan'
);
this
.
outerVisible2
=
true
;
queryEmployee
({}).
then
(
res
=>
{
if
(
res
.
Code
==
1
){
if
(
res
.
Code
==
1
){
this
.
searchList
=
res
.
Data
;
console
.
log
(
res
,
'数据'
);
this
.
userList
=
res
.
Data
;
}
}
}).
catch
(()
=>
{
}).
catch
(()
=>
{
...
@@ -1254,8 +1228,8 @@
...
@@ -1254,8 +1228,8 @@
let
Auu
=
[];
let
Auu
=
[];
Au
.
forEach
((
item
,
index
)
=>
{
Au
.
forEach
((
item
,
index
)
=>
{
Auu
.
push
({
Auu
.
push
({
EmployeeId
:
item
.
Department
Id
,
EmployeeId
:
item
.
Id
,
emName
:
item
.
Department
Name
,
EmName
:
item
.
Employee
Name
,
Sort
:
index
+
1
Sort
:
index
+
1
})
})
})
})
...
@@ -1414,16 +1388,22 @@
...
@@ -1414,16 +1388,22 @@
this
.
directors
=
obj
.
RoleOrInitiator
this
.
directors
=
obj
.
RoleOrInitiator
}
}
if
(
obj
.
AuditType
==
2
)
{
if
(
obj
.
AuditType
==
2
)
{
console
.
log
(
obj
,
'objjj'
);
this
.
showMember
=
[];
this
.
showMember
=
[];
this
.
memberSetCheckedKeys
=
[];
this
.
memberSetCheckedKeys
=
[];
this
.
AuditWay
=
obj
.
AuditWay
;
this
.
AuditWay
=
obj
.
AuditWay
;
var
arr
=
[];
obj
.
AuditUserList
.
forEach
((
item
,
index
)
=>
{
obj
.
AuditUserList
.
forEach
((
item
,
index
)
=>
{
this
.
showMember
.
push
({
this
.
showMember
.
push
({
DepartmentName
:
item
.
EmName
?
item
.
EmName
:
item
.
e
mName
,
EmployeeName
:
item
.
E
mName
,
DepartmentId
:
item
.
Employee
Id
Id
:
item
.
Id
})
})
this
.
memberSetCheckedKeys
.
push
(
item
.
EmployeeId
)
arr
.
push
(
item
.
Id
);
if
(
this
.
$refs
.
tree
){
this
.
$refs
.
tree
.
setCheckedKeys
(
arr
);
}
})
})
console
.
log
(
this
.
showMember
,
'this.showMember'
);
}
}
if
(
obj
.
AuditType
==
3
)
{
if
(
obj
.
AuditType
==
3
)
{
this
.
AuditWay
=
obj
.
AuditWay
;
this
.
AuditWay
=
obj
.
AuditWay
;
...
@@ -1452,12 +1432,16 @@
...
@@ -1452,12 +1432,16 @@
},
},
handleNodeChange
(
data
,
checked
)
{
handleNodeChange
(
data
,
checked
)
{
data
.
IsCheck
=
checked
;
data
.
IsCheck
=
checked
;
var
obj
=
{
EmployeeName
:
data
.
EmployeeName
,
Id
:
data
.
Id
}
let
res
=
this
.
$refs
.
tree
.
getCheckedNodes
(
true
,
true
);
let
res
=
this
.
$refs
.
tree
.
getCheckedNodes
(
true
,
true
);
this
.
showMember
=
res
;
console
.
log
(
res
,
'选中'
);
this
.
showMember
=
[];
res
.
forEach
(
x
=>
{
var
obj
=
{
EmployeeName
:
x
.
EmployeeName
,
Id
:
x
.
Id
}
this
.
showMember
.
push
(
obj
)
})
},
},
mySetCheckedKeys
(
id
,
index
)
{
mySetCheckedKeys
(
id
,
index
)
{
var
arr
=
[];
var
arr
=
[];
...
@@ -1526,7 +1510,7 @@
...
@@ -1526,7 +1510,7 @@
Au
.
forEach
((
item
,
index
)
=>
{
Au
.
forEach
((
item
,
index
)
=>
{
Auu
.
push
({
Auu
.
push
({
EmployeeId
:
item
.
Id
,
EmployeeId
:
item
.
Id
,
e
mName
:
item
.
EmployeeName
,
E
mName
:
item
.
EmployeeName
,
Sort
:
index
+
1
Sort
:
index
+
1
})
})
})
})
...
@@ -1546,6 +1530,7 @@
...
@@ -1546,6 +1530,7 @@
return
return
}
}
this
.
myAuditList
.
push
(
AuditList
);
this
.
myAuditList
.
push
(
AuditList
);
console
.
log
(
this
.
myAuditList
,
'this.myAuditList'
);
}
}
if
(
type
==
3
)
{
if
(
type
==
3
)
{
AuditList
.
AuditType
=
type
;
AuditList
.
AuditType
=
type
;
...
@@ -1705,17 +1690,6 @@
...
@@ -1705,17 +1690,6 @@
}
else
{}
}
else
{}
},
err
=>
{})
},
err
=>
{})
},
},
getCompanyList
()
{
//获取公司列表
this
.
apipost
(
'admin_get_BranchGetList'
,
this
.
getCompanyMsg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
let
data
=
res
.
data
.
data
data
.
forEach
(
x
=>
{
x
.
Id
=
x
.
Id
.
toString
()
})
this
.
CompanyList
=
res
.
data
.
data
;
}
else
{}
},
err
=>
{})
},
addAppPerson
()
{
// 添加默认审批人按钮
addAppPerson
()
{
// 添加默认审批人按钮
this
.
approvalType
=
1
;
this
.
approvalType
=
1
;
this
.
addBtn
=
true
;
this
.
addBtn
=
true
;
...
@@ -1726,8 +1700,9 @@
...
@@ -1726,8 +1700,9 @@
this
.
GetNodeValue
=
0
;
this
.
GetNodeValue
=
0
;
},
},
goUrl
(
path
)
{
goUrl
(
path
)
{
console
.
log
(
path
,
'path'
);
this
.
$router
.
push
({
this
.
$router
.
push
({
name
:
path
,
path
:
'/financial/'
+
path
,
query
:
{
query
:
{
"type"
:
this
.
addMsg
.
TemplateType
,
"type"
:
this
.
addMsg
.
TemplateType
,
'Branch_Id'
:
this
.
$route
.
query
.
Branch_Id
'Branch_Id'
:
this
.
$route
.
query
.
Branch_Id
...
...
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