Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
S
SuperMan
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
1
Issues
1
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
罗超
SuperMan
Commits
763a48a8
Commit
763a48a8
authored
Jun 17, 2019
by
黄奎
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of
http://gitlab.oytour.com/luochao/superman
parents
664433a0
3eb2f16f
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
694 additions
and
203 deletions
+694
-203
BasicDocuments.vue
src/components/FinancialModule/BasicDocuments.vue
+471
-104
FinancialDocumentsDetail.vue
src/components/FinancialModule/FinancialDocumentsDetail.vue
+34
-0
VisaProduct.vue
src/components/SalesVisa/VisaProduct.vue
+11
-11
TeamBalancePayment.vue
...omponents/TravelManager/TravelList/TeamBalancePayment.vue
+83
-88
ChongDiPage.vue
src/components/commonPage/ChongDiPage.vue
+95
-0
No files found.
src/components/FinancialModule/BasicDocuments.vue
View file @
763a48a8
<
style
scoped
>
.page_bdm
{
padding
:
20px
0
;}
._tit
{
padding-left
:
10px
;
border-left
:
3px
solid
#E95252
;
font-size
:
14px
}
._conten
,
._process
{
margin-top
:
20px
;
width
:
890px
;}
._conten
{
position
:
relative
}
._explain
{
padding
:
20px
15px
;
border-top
:
1px
dashed
#BFBFBF
;
background-color
:
white
;}
._explain
>
p
{
color
:
#1273BC
;
font-size
:
12px
;}
._explain
>
div
{
display
:
flex
;
justify-content
:
space-between
;
font-size
:
12px
;
color
:
#333333
;
margin-top
:
10px
;
align-items
:
center
;}
._tit2
{
<
style
>
.page_bdm
.page_bdm
{
padding
:
20px
0
;}
.page_bdm
._tit
{
padding-left
:
10px
;
border-left
:
3px
solid
#E95252
;
font-size
:
14px
}
.page_bdm
._conten
,
._process
{
margin-top
:
20px
;
width
:
890px
;}
.page_bdm
._conten
{
position
:
relative
}
.page_bdm
._explain
{
padding
:
20px
15px
;
border-top
:
1px
dashed
#BFBFBF
;
background-color
:
white
;}
.page_bdm
._explain
>
p
{
color
:
#1273BC
;
font-size
:
12px
;}
.page_bdm
._explain
>
div
{
display
:
flex
;
justify-content
:
space-between
;
font-size
:
12px
;
color
:
#333333
;
margin-top
:
10px
;
align-items
:
center
;}
.page_bdm
._tit2
{
border
:
none
;
background-color
:
white
;
border
:
1px
solid
#DDDDDD
;
}
._tit._tit2
>
p
{
.page_bdm
._tit._tit2
>
p
{
padding-left
:
10px
;
font-size
:
14px
;
color
:
#000
;
...
...
@@ -19,117 +19,117 @@
display
:
flex
;
justify-content
:
space-between
;
}
._tit._tit2
._rotate
{
.page_bdm
._tit._tit2
._rotate
{
transform
:
rotate
(
180deg
);
}
._tit._tit2
._btn
{
.page_bdm
._tit._tit2
._btn
{
font-size
:
12px
;
color
:
#333333
;
cursor
:
pointer
;
}
._tit._tit2
._btn
:hover
{
.page_bdm
._tit._tit2
._btn
:hover
{
color
:
#E95252
;
}
._tit._tit2
._btn
.iconfont
{
.page_bdm
._tit._tit2
._btn
.iconfont
{
font-size
:
12px
;
display
:
inline-block
;
margin-left
:
10px
;
}
._tit._tit2
._text
{
.page_bdm
._tit._tit2
._text
{
border-left
:
3px
solid
#e95252
;
padding-left
:
10px
;
}
._process
{
background-color
:
white
;
padding
:
20px
15px
;
position
:
relative
;}
._process_box
{
border-top
:
1px
dashed
#BFBFBF
;
padding-top
:
30px
;
padding-bottom
:
40px
;}
._flow_chart
{
position
:
absolute
;
display
:
inline-block
;
right
:
15px
;
top
:
7px
;
padding
:
5px
25px
;
font-size
:
12px
;
color
:
#FFFFFF
;
background-color
:
#E95252
;
border-radius
:
14px
;
cursor
:
pointer
;}
._pb_son
{
position
:
relative
;
padding-left
:
65px
;
min-height
:
100px
;
margin-bottom
:
30px
}
._left_radius
{
width
:
40px
;
height
:
40px
;
border-radius
:
50%
;
text-align
:
center
;
line-height
:
40px
;
background-color
:
#2BBB7E
;
color
:
white
;
font-size
:
12px
;
position
:
absolute
;
left
:
0
}
._left_radius_err
{
background-color
:
#E95252
;}
._left_radius_sus
{
background-color
:
#1273BC
;}
._right_content
{
padding-left
:
0
}
._right_content
._name
._n
{
font-size
:
14px
;
color
:
#333333
;
font-weight
:
bold
;}
._right_content
._name
._m
{
color
:
#FFFFFF
;
font-size
:
12px
;
display
:
inline-block
;
padding
:
2px
5px
;
background-color
:
#E95252
;
margin-left
:
5px
;
border-radius
:
4px
;}
._right_content
._name
._sm
,
._huoqian
{
color
:
#FFFFFF
;
font-size
:
12px
;
display
:
inline-block
;
padding
:
2px
5px
;
background-color
:
#FF9600
;
margin-left
:
5px
;
border-radius
:
4px
;
font-weight
:
100
;}
._right_content
._name
._sn
{
color
:
#FFFFFF
;
font-size
:
12px
;
display
:
inline-block
;
padding
:
2px
5px
;
background-color
:
#2BBB7E
;
margin-left
:
5px
;
border-radius
:
4px
;}
._right_content
._time
{
font-size
:
12px
;
color
:
#666666
;
padding-top
:
5px
;}
._right_content
._pp_info
,
._textarea
{
border-radius
:
4px
;
border
:
1px
solid
#E5E5E5
;
background
:
rgba
(
245
,
245
,
245
,
1
);
font-size
:
12px
;
color
:
#333333
;
padding
:
12px
14px
;
margin-top
:
13px
;
position
:
relative
;}
._right_content
._pp_info
:before
{
display
:
block
;
content
:
''
;
border-width
:
8px
8px
8px
8px
;
border-style
:
solid
;
border-color
:
transparent
transparent
#dedede
transparent
;
position
:
absolute
;
left
:
10px
;
top
:
-16px
;}
._more
{
margin-top
:
15px
;}
.page_bdm
._process
{
background-color
:
white
;
padding
:
20px
15px
;
position
:
relative
;}
.page_bdm
._process_box
{
border-top
:
1px
dashed
#BFBFBF
;
padding-top
:
30px
;
padding-bottom
:
40px
;}
.page_bdm
._flow_chart
{
position
:
absolute
;
display
:
inline-block
;
right
:
15px
;
top
:
7px
;
padding
:
5px
25px
;
font-size
:
12px
;
color
:
#FFFFFF
;
background-color
:
#E95252
;
border-radius
:
14px
;
cursor
:
pointer
;}
.page_bdm
._pb_son
{
position
:
relative
;
padding-left
:
65px
;
min-height
:
100px
;
margin-bottom
:
30px
}
.page_bdm
._left_radius
{
width
:
40px
;
height
:
40px
;
border-radius
:
50%
;
text-align
:
center
;
line-height
:
40px
;
background-color
:
#2BBB7E
;
color
:
white
;
font-size
:
12px
;
position
:
absolute
;
left
:
0
}
.page_bdm
._left_radius_err
{
background-color
:
#E95252
;}
.page_bdm
._left_radius_sus
{
background-color
:
#1273BC
;}
.page_bdm
._right_content
{
padding-left
:
0
}
.page_bdm
._right_content
._name
._n
{
font-size
:
14px
;
color
:
#333333
;
font-weight
:
bold
;}
.page_bdm
._right_content
._name
._m
{
color
:
#FFFFFF
;
font-size
:
12px
;
display
:
inline-block
;
padding
:
2px
5px
;
background-color
:
#E95252
;
margin-left
:
5px
;
border-radius
:
4px
;}
.page_bdm
._right_content
._name
._sm
,
._huoqian
{
color
:
#FFFFFF
;
font-size
:
12px
;
display
:
inline-block
;
padding
:
2px
5px
;
background-color
:
#FF9600
;
margin-left
:
5px
;
border-radius
:
4px
;
font-weight
:
100
;}
.page_bdm
._right_content
._name
._sn
{
color
:
#FFFFFF
;
font-size
:
12px
;
display
:
inline-block
;
padding
:
2px
5px
;
background-color
:
#2BBB7E
;
margin-left
:
5px
;
border-radius
:
4px
;}
.page_bdm
._right_content
._time
{
font-size
:
12px
;
color
:
#666666
;
padding-top
:
5px
;}
.page_bdm
._right_content
._pp_info
,
._textarea
{
border-radius
:
4px
;
border
:
1px
solid
#E5E5E5
;
background
:
rgba
(
245
,
245
,
245
,
1
);
font-size
:
12px
;
color
:
#333333
;
padding
:
12px
14px
;
margin-top
:
13px
;
position
:
relative
;}
.page_bdm
._right_content
._pp_info
:before
{
display
:
block
;
content
:
''
;
border-width
:
8px
8px
8px
8px
;
border-style
:
solid
;
border-color
:
transparent
transparent
#dedede
transparent
;
position
:
absolute
;
left
:
10px
;
top
:
-16px
;}
.page_bdm
._more
{
margin-top
:
15px
;}
/* ._more ._right_content{padding: 0 0 0 10px;} */
._more
._right_content
.iconfont
{
color
:
#AAAAAA
}
._more
._right_content
._name
._n
{
font-size
:
14px
;
color
:
#333333
;
font-weight
:
bold
;
padding-left
:
3px
;}
._right_content
._name
{
padding
:
2px
0
}
._name
.icon-img-ren
{
color
:
#AAAAAA
}
._info_img
ul
{
padding
:
10px
0
}
._info_img
ul
li
{
float
:
left
;
position
:
relative
;
cursor
:
pointer
}
._info_img
ul
li
:hover
._see_img
{
opacity
:
1
;}
._info_img
ul
li
img
{
width
:
88px
;
height
:
59px
;}
._see_img
{
position
:
absolute
;
top
:
0
;
width
:
100%
;
height
:
59px
;
padding-top
:
16px
;
line-height
:
34px
;
text-align
:
center
;
background-color
:
rgba
(
2
,
2
,
2
,
0.3
);
display
:
inherit
;
opacity
:
0
;
transition
:
all
linear
.5s
}
._see_img
i
.iconfont
{
display
:
inline-block
;
width
:
32px
;
height
:
32px
;
border-radius
:
50%
;
color
:
#FFFFFF
!important
;
background-color
:
rgba
(
255
,
255
,
255
,
0.5
);}
._show_img_box
{
position
:
fixed
;
background
:
rgba
(
0
,
0
,
0
,
.6
);
left
:
0
;
top
:
0
;
width
:
100%
;
height
:
100%
;
z-index
:
999
;
text-align
:
center
;
overflow
:
auto
;}
._textarea
{
width
:
685px
;
height
:
50px
;
background-color
:
white
}
._textarea._mini
{
width
:
95%
;}
._upload_box
ul
li
{
float
:
left
;
height
:
82px
;
width
:
143px
;
padding
:
20px
20px
20px
0
;
text-align
:
center
;
position
:
relative
;
cursor
:
pointer
;
margin-right
:
10px
;}
._upload_box
ul
li
img
{
height
:
82px
;
width
:
143px
;}
._upload_box
ul
li
:hover
._delete_img
{
opacity
:
1
;}
._delete_img
{
position
:
absolute
;
top
:
20px
;
height
:
82px
;
width
:
143px
;
line-height
:
34px
;
text-align
:
center
;
background-color
:
rgba
(
2
,
2
,
2
,
0.6
);
display
:
inherit
;
opacity
:
0
;
transition
:
all
linear
.5s
}
._delete_img
i
.iconfont
{
display
:
inline-block
;
width
:
32px
;
height
:
32px
;
border-radius
:
50%
;
color
:
#E95252
!important
;
background-color
:
rgba
(
251
,
251
,
251
,
0.9
);
margin-top
:
26px
;}
._radio_lsit
{
padding-top
:
15px
}
._upload_tips
{
font-size
:
12px
;
position
:
absolute
;
top
:
66%
;
width
:
100%
;
left
:
0
;
text-align
:
center
;
color
:
#949494
;}
._log_t
{
padding
:
10px
;}
._pay_box
{
padding
:
20px
0
}
._pay_box
table
{
width
:
100%
;
border-top-left-radius
:
4px
;
border-top-right-radius
:
4px
;
text-align
:
center
;}
._pay_box
th
{
border
:
none
;
background-color
:
#DCDCDC
}
._pay_box
th
,
._pay_box
td
{
padding
:
7px
;
font-size
:
12px
;}
.page_bdm
._more
._right_content
.iconfont
{
color
:
#AAAAAA
}
.page_bdm
._more
._right_content
._name
._n
{
font-size
:
14px
;
color
:
#333333
;
font-weight
:
bold
;
padding-left
:
3px
;}
.page_bdm
._right_content
._name
{
padding
:
2px
0
}
.page_bdm
._name
.icon-img-ren
{
color
:
#AAAAAA
}
.page_bdm
._info_img
ul
{
padding
:
10px
0
}
.page_bdm
._info_img
ul
li
{
float
:
left
;
position
:
relative
;
cursor
:
pointer
}
.page_bdm
._info_img
ul
li
:hover
._see_img
{
opacity
:
1
;}
.page_bdm
._info_img
ul
li
img
{
width
:
88px
;
height
:
59px
;}
.page_bdm
._see_img
{
position
:
absolute
;
top
:
0
;
width
:
100%
;
height
:
59px
;
padding-top
:
16px
;
line-height
:
34px
;
text-align
:
center
;
background-color
:
rgba
(
2
,
2
,
2
,
0.3
);
display
:
inherit
;
opacity
:
0
;
transition
:
all
linear
.5s
}
.page_bdm
._see_img
i
.iconfont
{
display
:
inline-block
;
width
:
32px
;
height
:
32px
;
border-radius
:
50%
;
color
:
#FFFFFF
!important
;
background-color
:
rgba
(
255
,
255
,
255
,
0.5
);}
.page_bdm
._show_img_box
{
position
:
fixed
;
background
:
rgba
(
0
,
0
,
0
,
.6
);
left
:
0
;
top
:
0
;
width
:
100%
;
height
:
100%
;
z-index
:
999
;
text-align
:
center
;
overflow
:
auto
;}
.page_bdm
._textarea
{
width
:
685px
;
height
:
50px
;
background-color
:
white
}
.page_bdm
._textarea._mini
{
width
:
95%
;}
.page_bdm
._upload_box
ul
li
{
float
:
left
;
height
:
82px
;
width
:
143px
;
padding
:
20px
20px
20px
0
;
text-align
:
center
;
position
:
relative
;
cursor
:
pointer
;
margin-right
:
10px
;}
.page_bdm
._upload_box
ul
li
img
{
height
:
82px
;
width
:
143px
;}
.page_bdm
._upload_box
ul
li
:hover
._delete_img
{
opacity
:
1
;}
.page_bdm
._delete_img
{
position
:
absolute
;
top
:
20px
;
height
:
82px
;
width
:
143px
;
line-height
:
34px
;
text-align
:
center
;
background-color
:
rgba
(
2
,
2
,
2
,
0.6
);
display
:
inherit
;
opacity
:
0
;
transition
:
all
linear
.5s
}
.page_bdm
._delete_img
i
.iconfont
{
display
:
inline-block
;
width
:
32px
;
height
:
32px
;
border-radius
:
50%
;
color
:
#E95252
!important
;
background-color
:
rgba
(
251
,
251
,
251
,
0.9
);
margin-top
:
26px
;}
.page_bdm
._radio_lsit
{
padding-top
:
15px
}
.page_bdm
._upload_tips
{
font-size
:
12px
;
position
:
absolute
;
top
:
66%
;
width
:
100%
;
left
:
0
;
text-align
:
center
;
color
:
#949494
;}
.page_bdm
._log_t
{
padding
:
10px
;}
.page_bdm
._pay_box
{
padding
:
20px
0
}
.page_bdm
._pay_box
table
{
width
:
100%
;
border-top-left-radius
:
4px
;
border-top-right-radius
:
4px
;
text-align
:
center
;}
.page_bdm
._pay_box
th
{
border
:
none
;
background-color
:
#DCDCDC
}
.page_bdm
._pay_box
th
,
._pay_box
td
{
padding
:
7px
;
font-size
:
12px
;}
/* ._border_b_1{border-bottom: 1px solid #afafaf !important;} */
._now_pay
{
padding
:
4px
10px
;
border-radius
:
11px
;
color
:
white
;
font-size
:
12px
;
background-color
:
#E95252
;
cursor
:
pointer
;}
._allMoney
{
text-align
:
left
!important
}
._time_n
{
float
:
right
;}
._mgt_15
{
margin-top
:
15px
;}
._padd_left_10
{
padding-left
:
10px
;}
._margin_b15
{
margin-bottom
:
15px
;}
._pay_box
table
tr
td
{
text-align
:
center
}
.w890px
{
width
:
890px
;
padding
:
0
;
margin
:
0
;}
.page_bdm
._now_pay
{
padding
:
4px
10px
;
border-radius
:
11px
;
color
:
white
;
font-size
:
12px
;
background-color
:
#E95252
;
cursor
:
pointer
;}
.page_bdm
._allMoney
{
text-align
:
left
!important
}
.page_bdm
._time_n
{
float
:
right
;}
.page_bdm
._mgt_15
{
margin-top
:
15px
;}
.page_bdm
._padd_left_10
{
padding-left
:
10px
;}
.page_bdm
._margin_b15
{
margin-bottom
:
15px
;}
.page_bdm
._pay_box
table
tr
td
{
text-align
:
center
}
.page_bdm
.w890px
{
width
:
890px
;
padding
:
0
;
margin
:
0
;}
.w600px
{
.page_bdm
.w600px
{
width
:
600px
;
padding
:
15px
;
margin
:
0
auto
;
}
._explain
._addUpload_box
{
.page_bdm
._explain
._addUpload_box
{
display
:
block
;
padding-bottom
:
14px
;
}
._explain2
>
div
{
.page_bdm
._explain2
>
div
{
margin-top
:
0
;
}
._explain2
{
.page_bdm
._explain2
{
border
:
none
;
padding
:
20px
0
0
14px
;
background-color
:
aliceblue
;
}
._addUpload_box
>
div
:hover
{
.page_bdm
._addUpload_box
>
div
:hover
{
background-color
:
#f5f5f5
;
}
._submit
{
height
:
50px
;
padding
:
10px
20px
;
width
:
890px
;
position
:
absolute
;
bottom
:
0
;
left
:
0
;
display
:
flex
;
border-top
:
1px
dotted
#eee
;}
._submit
.btn-box
{
width
:
216px
;}
._submit
.chosenNextBox
{
flex
:
1
;
font-size
:
12px
;
height
:
30px
;
line-height
:
30px
;}
._submit
.chosenNextBox
.red
{
color
:
#C94052
;
margin-right
:
15px
;}
._submit
.el-input__inner
{
width
:
300px
!important
;}
._addFile_name
{
.page_bdm
._submit
{
height
:
50px
;
padding
:
10px
20px
;
width
:
890px
;
position
:
absolute
;
bottom
:
0
;
left
:
0
;
display
:
flex
;
border-top
:
1px
dotted
#eee
;}
.page_bdm
._submit
.btn-box
{
width
:
216px
;}
.page_bdm
._submit
.chosenNextBox
{
flex
:
1
;
font-size
:
12px
;
height
:
30px
;
line-height
:
30px
;}
.page_bdm
._submit
.chosenNextBox
.red
{
color
:
#C94052
;
margin-right
:
15px
;}
.page_bdm
._submit
.el-input__inner
{
width
:
300px
!important
;}
.page_bdm
._addFile_name
{
overflow
:
hidden
;
display
:
-webkit-box
;
-webkit-line-clamp
:
2
;
-webkit-box-orient
:
vertical
;
font-size
:
12px
;
}
._fujian_box
{
.page_bdm
._fujian_box
{
position
:
fixed
;
left
:
961px
;
top
:
148px
;
width
:
440px
;
}
._wenjian
{
.page_bdm
._wenjian
{
padding
:
15px
;
width
:
91px
;
height
:
80px
;
...
...
@@ -139,20 +139,20 @@
margin-right
:
10px
;
margin-top
:
10px
;
}
._wenjian_P
{
.page_bdm
._wenjian_P
{
font-size
:
30px
;
text-align
:
center
;
color
:
#41D2A1
;
}
.el-carousel__item
{
.page_bdm
.el-carousel__item
{
align-items
:
center
;
justify-content
:
center
;
display
:
flex
;
}
._pay_box
table
tr
td
:last-child
{
.page_bdm
._pay_box
table
tr
td
:last-child
{
text-align
:
left
;
}
._splic
{
.page_bdm
._splic
{
width
:
890px
;
overflow
:
hidden
;
font-size
:
12px
;
...
...
@@ -160,38 +160,38 @@
margin-top
:
15px
;
line-height
:
10px
;
}
._zhuanjiao_tips
{
.page_bdm
._zhuanjiao_tips
{
font-size
:
12px
;
color
:
#C94052
;
display
:
inline-block
;
margin-left
:
20px
;
}
._jump_page
{
.page_bdm
._jump_page
{
cursor
:
pointer
;
text-decoration
:
underline
;
}
._jump_page
:hover
{
.page_bdm
._jump_page
:hover
{
color
:
#c94052
;
}
._fujian_box_tit
{
.page_bdm
._fujian_box_tit
{
display
:
flex
;
justify-content
:
space-between
;
font-size
:
14px
;
color
:
#333333
;
}
._fujian_box_tit
.iconfont
{
.page_bdm
._fujian_box_tit
.iconfont
{
font-size
:
14px
;
display
:
inline-block
;
margin-right
:
8px
;
}
._fujian_box_tit
.iconfont.icon-bangdingzhagnhuxinxi
{
.page_bdm
._fujian_box_tit
.iconfont.icon-bangdingzhagnhuxinxi
{
color
:
#E95252
;
}
._fujian_box_tit
.iconfont.icon-gengduo
{
.page_bdm
._fujian_box_tit
.iconfont.icon-gengduo
{
transform
:
rotate
(
90deg
);
font-size
:
12px
;
}
._fujian_zhankai
{
.page_bdm
._fujian_zhankai
{
color
:
white
;
width
:
64px
;
height
:
0
;
...
...
@@ -205,7 +205,7 @@
left
:
-19px
;
bottom
:
-21px
;
}
._fujian_zhankai
>
span
{
.page_bdm
._fujian_zhankai
>
span
{
display
:
inline-block
;
height
:
100%
;
width
:
50%
;
...
...
@@ -215,47 +215,80 @@
-webkit-transform
:
rotate
(
90deg
);
transform
:
rotate
(
90deg
);
}
._fujian_zhankai
>
span
:nth-child
(
2
)
{
.page_bdm
._fujian_zhankai
>
span
:nth-child
(
2
)
{
left
:
18px
;
bottom
:
3px
;
}
._TCIDAndTCNUMList
{
.page_bdm
._TCIDAndTCNUMList
{
display
:
flex
;
}
._TCIDAndTCNUMList
._TCIDAndTCNUMList_item
span
{
.page_bdm
._TCIDAndTCNUMList
._TCIDAndTCNUMList_item
span
{
display
:
inline-block
;
padding-bottom
:
5px
;
}
._font_bold
{
.page_bdm
._font_bold
{
font-weight
:
bold
;
}
._TCIDAndTCNUMList_item
{
.page_bdm
._TCIDAndTCNUMList_item
{
max-width
:
160px
;
}
._fujiashuoming_tr
td
{
.page_bdm
._fujiashuoming_tr
td
{
font-size
:
12px
;
color
:
#696969
;
padding
:
5px
10px
;
}
._zhuan_msg
{
.page_bdm
._zhuan_msg
{
font-size
:
12px
;
margin-top
:
10px
;
padding-bottom
:
10px
;
}
._zhuan_msg
span
{
.page_bdm
._zhuan_msg
span
{
display
:
inline-block
;
margin-right
:
5px
;
color
:
#696969
;
}
._zhuan_msg
span
:last-child
{
.page_bdm
._zhuan_msg
span
:last-child
{
margin-left
:
10px
;
}
._zhuan_msg
p
:nth-child
(
2
)
{
.page_bdm
._zhuan_msg
p
:nth-child
(
2
)
{
color
:
#696969
;
}
._zhuan_msg
._color_green
{
.page_bdm
._zhuan_msg
._color_green
{
color
:
#2BBB7E
}
.page_bdm
.chongdi_box
table
{
width
:
100%
;
}
.page_bdm
.chongdi_box
table
th
{
border
:
none
;
background-color
:
#DCDCDC
;
}
.page_bdm
.chongdi_box
table
th
,
.page_bdm
.chongdi_box
table
td
{
font-size
:
12px
;
padding
:
7px
;
}
.page_bdm
.chongdi_list
{
background-color
:
white
;
padding
:
15px
;
border
:
1px
solid
#e0e0e0
;
}
.page_bdm
.chongdi_list
em
{
font-size
:
14px
;
}
.page_bdm
.chongdi_list
._kehu
input
{
border
:
1px
solid
#dcdfe6
!important
;
background-color
:
#fff
!important
;
padding
:
0
15px
!important
;
}
.page_bdm
.chongdi_list
._kehu
.normalBtn
{
float
:
right
;
}
.page_bdm
.chongdi_list
>
div
{
margin-bottom
:
10px
;
}
.page_bdm
.yixuanze_money
{
float
:
right
;
}
</
style
>
<
template
>
...
...
@@ -419,6 +452,7 @@
<SaleOrderModule
v-if=
"OrderSource==10&&SourceID&&OrderID"
:SourceID=
'SourceID'
:orderID=
'OrderID'
/>
<TicketFinace
v-if=
"OrderSource==4&&SourceID&&Callback&&ID"
:SourceID=
'SourceID'
:Callback=
'Callback'
:id=
'ID'
/>
<TicketingModule
v-if=
"OrderSource==9&&FrID&&ID"
:FrID=
'FrID'
:id=
'ID'
/>
<ChongDiPage
v-if=
"GetDetail.Type === 7 || isChongDi"
:dataList=
"ChongDiList"
:type=
"danjuType"
/>
</div>
<div
class=
"_tit _tit2 w890px"
>
<p>
...
...
@@ -545,6 +579,80 @@
<el-radio
v-model=
"choiceMsg.Status"
label=
"2"
>
原路退款
</el-radio>
</div>
</div>
<div
v-if=
"chongDiShow && AuditOrRefundMsg.Status === '5'"
class=
"chongdi_box"
>
<div
style=
"padding: 10px 0;font-size: 14px;"
>
是否挂账冲抵:
<el-switch
v-model=
"shifouChongDi"
:disabled=
"HangingAccountList.length < 1 ? true : false"
active-color=
"#13ce66"
inactive-color=
"#ff4949"
>
</el-switch>
<em
v-if=
"HangingAccountList.length < 1"
>
暂无可用冲抵挂账
</em>
<span
v-else
class=
"yixuanze_money"
>
已选择金额:{{ChongDiMoney}}
</span>
</div>
<div
v-if=
"shifouChongDi"
class=
"chongdi_list"
>
<!-- <div>
<em>发团时间:</em>
<el-date-picker class="h34"
@change="timeAdd(1)"
v-model="productionDate"
type="daterange"
value-format="yyyy-MM-dd"
range-separator="-">
</el-date-picker>
</div> -->
<div
class=
"_kehu"
>
<em>
{{$t('fnc.khleixing')}}:
</em>
<el-select
filterable
v-model=
'ChongDiMsg.ClientType'
:placeholder=
"$t('fnc.khleixing')"
@
change=
"financeinfo_post_GetClientAccountList(ChongDiMsg.ClientType, '1')"
class=
"w135 _border_b_1"
>
<el-option
v-for=
'item in ClientTypeList'
:label=
'item.Name'
:value=
'item.ID'
:key=
'item.ID'
>
</el-option>
</el-select>
<el-select
v-if=
"ChongDiMsg.ClientType==7"
filterable
v-model=
'ChongDiMsg.IsLeader'
:placeholder=
"$t('fnc.khmingcheng')"
class=
"w135 _border_b_1"
>
<el-option
:label=
'$t("fnc.zslingdui")'
:value=
'1'
:key=
'1'
>
</el-option>
</el-select>
<el-select
filterable
v-model=
'ChongDiMsg.ClientID'
:placeholder=
"$t('fnc.khmingcheng')"
class=
"w135 _border_b_1"
>
<el-option
v-for=
'item in ClientAccountList'
:label=
'item.Name'
:value=
'item.ID'
:key=
'item.ID'
>
</el-option>
</el-select>
<em>
收支类型:
</em>
<el-select
filterable
v-model=
'ChongDiMsg.Types'
:placeholder=
"$t('fnc.khleixing')"
class=
"w135 _border_b_1"
>
<el-option
label=
'不限'
value=
''
key=
'0'
></el-option>
<el-option
label=
'收'
value=
'1'
key=
'1'
></el-option>
<el-option
label=
'支'
value=
'2'
key=
'2'
></el-option>
</el-select>
<button
class=
"normalBtn"
@
click=
"GetHangingAccountList()"
>
查询
</button>
</div>
<table
border=
"1"
bordercolor=
"#D2D2D2"
style=
"border-collapse:collapse;"
>
<tr>
<th><input
type=
"checkbox"
v-model=
"checkedAll"
@
change=
"changeCheckedAll()"
>
费用类型
</th>
<th>
团号
</th>
<th>
财务单据
</th>
<th>
收支类型
</th>
<th>
金额
</th>
<th>
对象名称
</th>
<th>
备注
</th>
<th>
制单时间
</th>
<th>
制单人
</th>
</tr>
<tr
v-for=
"(item, index) in HangingAccountList"
>
<td
style=
"text-align: left"
><label><input
type=
"checkbox"
v-model=
"item.checked"
>
{{item.CostTypeName}}
</label></td>
<td>
{{item.TCNUM}}
</td>
<td>
{{item.FrID}}
</td>
<td>
{{item.HangingAccountsTypeStr}}
</td>
<td>
{{item.Money}}
</td>
<td>
{{item.RemitterName}}
</td>
<td>
{{item.Remark}}
</td>
<td>
{{item.CreateDateStr}}
</td>
<td>
{{item.createByStr}}
</td>
</tr>
</table>
</div>
</div>
<!--<div class="_pay_box" v-if="AuditOrRefundMsg.Status=='5'&&item.SpecialNode==2">-->
<div
class=
"_pay_box"
v-if=
"choiceMsg.Status=='2'"
>
<table
border=
"1"
bordercolor=
"#D2D2D2"
style=
"border-collapse:collapse;"
v-if=
"GetDetail.TradeDetailList&&GetDetail.TradeDetailList.length>0"
>
...
...
@@ -571,6 +679,7 @@
</tr>
</table>
</div>
<!-- 111 -->
<div
class=
"_pay_box"
v-if=
"AuditOrRefundMsg.Status=='5'&&item.SpecialNode==2"
>
<table
border=
"1"
bordercolor=
"#D2D2D2"
style=
"border-collapse:collapse;"
v-if=
"GetDetail.CashierDetail&&GetDetail.CashierDetail.length<1"
>
<tr>
...
...
@@ -780,6 +889,80 @@
<el-radio
v-model=
"choiceMsg.Status"
label=
"2"
>
原路退款
</el-radio>
</div>
</div>
<div
v-if=
"chongDiShow && AuditOrRefundMsg.Status === '5'"
class=
"chongdi_box"
>
<div
style=
"padding: 10px 0;font-size: 14px;"
>
是否挂账冲抵:
<el-switch
v-model=
"shifouChongDi"
:disabled=
"HangingAccountList.length < 1 ? true : false"
active-color=
"#13ce66"
inactive-color=
"#ff4949"
>
</el-switch>
<em
v-if=
"HangingAccountList.length < 1"
>
暂无可用冲抵挂账
</em>
<span
v-else
class=
"yixuanze_money"
>
已选择金额:{{ChongDiMoney}}
</span>
</div>
<div
v-if=
"shifouChongDi"
class=
"chongdi_list"
>
<!-- <div>
<em>发团时间:</em>
<el-date-picker class="h34"
@change="timeAdd(1)"
v-model="productionDate"
type="daterange"
value-format="yyyy-MM-dd"
range-separator="-">
</el-date-picker>
</div> -->
<div
class=
"_kehu"
>
<em>
{{$t('fnc.khleixing')}}:
</em>
<el-select
filterable
v-model=
'ChongDiMsg.ClientType'
:placeholder=
"$t('fnc.khleixing')"
@
change=
"financeinfo_post_GetClientAccountList(ChongDiMsg.ClientType, '1')"
class=
"w135 _border_b_1"
>
<el-option
v-for=
'item in ClientTypeList'
:label=
'item.Name'
:value=
'item.ID'
:key=
'item.ID'
>
</el-option>
</el-select>
<el-select
v-if=
"ChongDiMsg.ClientType==7"
filterable
v-model=
'ChongDiMsg.IsLeader'
:placeholder=
"$t('fnc.khmingcheng')"
class=
"w135 _border_b_1"
>
<el-option
:label=
'$t("fnc.zslingdui")'
:value=
'1'
:key=
'1'
>
</el-option>
</el-select>
<el-select
filterable
v-model=
'ChongDiMsg.ClientID'
:placeholder=
"$t('fnc.khmingcheng')"
class=
"w135 _border_b_1"
>
<el-option
v-for=
'item in ClientAccountList'
:label=
'item.Name'
:value=
'item.ID'
:key=
'item.ID'
>
</el-option>
</el-select>
<em>
收支类型:
</em>
<el-select
filterable
v-model=
'ChongDiMsg.Types'
:placeholder=
"$t('fnc.khleixing')"
class=
"w135 _border_b_1"
>
<el-option
label=
'不限'
value=
''
key=
'0'
></el-option>
<el-option
label=
'收'
value=
'1'
key=
'1'
></el-option>
<el-option
label=
'支'
value=
'2'
key=
'2'
></el-option>
</el-select>
<button
class=
"normalBtn"
@
click=
"GetHangingAccountList()"
>
查询
</button>
</div>
<table
border=
"1"
bordercolor=
"#D2D2D2"
style=
"border-collapse:collapse;"
>
<tr>
<th><input
type=
"checkbox"
v-model=
"checkedAll"
@
change=
"changeCheckedAll()"
>
费用类型
</th>
<th>
团号
</th>
<th>
财务单据
</th>
<th>
收支类型
</th>
<th>
金额
</th>
<th>
对象名称
</th>
<th>
备注
</th>
<th>
制单时间
</th>
<th>
制单人
</th>
</tr>
<tr
v-for=
"(item, index) in HangingAccountList"
>
<td
style=
"text-align: left"
><label><input
type=
"checkbox"
v-model=
"item.checked"
@
change=
"checkdIteam(item)"
>
{{item.CostTypeName}}
</label></td>
<td>
{{item.TCNUM}}
</td>
<td>
{{item.FrID}}
</td>
<td>
{{item.HangingAccountsTypeStr}}
</td>
<td>
{{item.Money}}
</td>
<td>
{{item.RemitterName}}
</td>
<td>
{{item.Remark}}
</td>
<td>
{{item.CreateDateStr}}
</td>
<td>
{{item.createByStr}}
</td>
</tr>
</table>
</div>
</div>
<div
class=
"_pay_box"
v-if=
"choiceMsg.Status=='2'"
>
<table
border=
"1"
bordercolor=
"#D2D2D2"
style=
"border-collapse:collapse;"
v-if=
"GetDetail.TradeDetailList&&GetDetail.TradeDetailList.length>0"
>
<tr>
...
...
@@ -805,11 +988,13 @@
</tr>
</table>
</div>
<!-- 111 -->
<div
class=
"_pay_box"
v-if=
"AuditOrRefundMsg.Status=='5'&&item.SpecialNode==2"
>
<!-- <div class="_pay_box"> -->
<table
border=
"1"
bordercolor=
"#D2D2D2"
style=
"border-collapse:collapse;"
>
<tr>
<th>
账户分类
</th>
<th>
账户分类
收支冲抵
</th>
<th>
付款方式
</th>
<th>
账户
</th>
<!-- <th width="100px">账户余额</th> -->
...
...
@@ -1116,6 +1301,7 @@ import teamProductModule from "../commonPage/teamProductModule.vue";
import
TicketFinace
from
"../commonPage/TicketFinace.vue"
;
import
SaleOrderModule
from
"../commonPage/SaleOrderModule.vue"
;
import
TicketingModule
from
"../commonPage/TicketingModule.vue"
;
import
ChongDiPage
from
"../commonPage/ChongDiPage.vue"
;
import
{
truncate
}
from
'fs'
;
// import MsgBus from '../../assets/utils/msgBus.js';
...
...
@@ -1242,6 +1428,28 @@ export default {
currentMoney
:
0
,
benMoney
:
0
,
Ststus
:
0
,
chongDiShow
:
false
,
productionDate
:
[],
ChongDiMsg
:
{
QStartDate
:
''
,
QEndDate
:
''
,
TCID
:
''
,
ClientType
:
''
,
ClientID
:
''
,
sTradeDate
:
''
,
eTradeDate
:
''
,
Types
:
''
,
IsLeader
:
''
,
},
shifouChongDi
:
false
,
ClientTypeList
:[],
ClientAccountList
:
[],
HangingAccountList
:
[],
checkedAll
:
false
,
ChongDiMoney
:
0
,
ChongDiList
:
[],
isChongDi
:
false
,
danjuType
:
''
}
},
components
:{
"my-FlowChartModule"
:
myFlowChartModule
,
...
...
@@ -1255,8 +1463,110 @@ export default {
'SaleOrderModule'
:
SaleOrderModule
,
'TicketFinace'
:
TicketFinace
,
'my-HB-Bill'
:
myhrBill
,
'ChongDiPage'
:
ChongDiPage
,
},
methods
:{
// 单选计算
checkdIteam
(
item
){
console
.
log
(
item
.
checked
)
if
(
item
.
checked
)
{
if
(
item
.
HangingAccountsTypeStr
===
'收'
)
{
this
.
ChongDiMoney
+=
item
.
Money
}
else
{
this
.
ChongDiMoney
-=
item
.
Money
}
}
else
{
if
(
item
.
HangingAccountsTypeStr
===
'收'
)
{
this
.
ChongDiMoney
-=
item
.
Money
}
else
{
this
.
ChongDiMoney
+=
item
.
Money
}
}
},
// 全选
changeCheckedAll
(){
if
(
this
.
checkedAll
)
{
let
money
=
0
this
.
HangingAccountList
.
map
(
item
=>
{
item
.
checked
=
true
if
(
item
.
HangingAccountsTypeStr
===
'收'
)
{
money
+=
item
.
Money
}
else
{
money
-=
item
.
Money
}
})
this
.
ChongDiMoney
=
money
}
else
{
this
.
HangingAccountList
.
map
(
item
=>
{
item
.
checked
=
false
})
this
.
ChongDiMoney
=
0
}
},
GetHangingAccountList
(){
if
(
this
.
GetDetail
.
Type
===
1
&&
this
.
ChongDiMsg
.
ClientType
===
''
&&
this
.
ChongDiMsg
.
ClientID
===
''
)
{
this
.
$message
.
error
(
'请选择付款对象'
)
return
}
this
.
apipost
(
'Financial_post_GetHangingAccountList'
,
this
.
ChongDiMsg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
let
data
=
res
.
data
.
data
;
console
.
log
(
data
)
data
.
map
(
item
=>
{
item
.
checked
=
false
})
this
.
HangingAccountList
=
data
}
},
null
)
},
financeinfo_post_GetClientAccountList
(
t
,
sel
){
//获取付款 对象类型 新增用
let
msg
=
{
ID
:
0
,
Type
:
t
,
ObjID
:
0
,
CardNum
:
''
}
if
(
sel
)
{
this
.
ChongDiMsg
.
ClientID
=
''
;
}
this
.
apipost
(
'financeinfo_post_GetClientAccountList'
,
msg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
let
data
=
res
.
data
.
data
;
let
ClientAccountList
=
[];
data
.
forEach
(
x
=>
{
let
obj
=
{
ID
:
x
.
ID
,
Name
:
x
.
AccountHolder
+
`(
${
x
.
AccountAlias
}
)`
,
Nom
:
x
.
CardNum
,
OpenBankName
:
x
.
OpenBankName
,
ObjID
:
x
.
ObjID
,
}
ClientAccountList
.
push
(
obj
)
})
this
.
ClientAccountList
=
ClientAccountList
;
}
},
err
=>
{})
},
financeinfo_post_GetClientTypeList
(){
// 获取对象类型
this
.
apipost
(
'financeinfo_post_GetClientTypeList'
,{},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
ClientTypeList
=
res
.
data
.
data
;
}
},
err
=>
{})
},
timeAdd
(
t
){
// 日期格式
if
(
t
==
1
){
//制单日期
if
(
!
this
.
productionDate
){
this
.
ChongDiMsg
.
QStartDate
=
''
;
this
.
ChongDiMsg
.
QEndDate
=
''
;
return
}
this
.
ChongDiMsg
.
QStartDate
=
this
.
productionDate
[
0
];
this
.
ChongDiMsg
.
QEndDate
=
this
.
productionDate
[
1
];
}
},
payMsgListShow
:
function
(
type
,
index
)
{
if
(
this
.
choiceMsg
.
Status
==
1
){
this
.
payMsgList
.
forEach
(
x
=>
{
...
...
@@ -1794,6 +2104,15 @@ export default {
// return;
// }
this
.
loading
=
true
;
if
(
this
.
shifouChongDi
)
{
let
idList
=
[]
this
.
HangingAccountList
.
map
(
item
=>
{
if
(
item
.
checked
)
{
idList
.
push
(
item
.
FdID
)
}
})
this
.
AuditOrRefundMsg
.
FdIdList
=
idList
}
this
.
apipost
(
'Financial_post_AuditOrRefund'
,
this
.
AuditOrRefundMsg
,
res
=>
{
this
.
loading
=
false
;
if
(
res
.
data
.
resultCode
==
1
){
...
...
@@ -1854,6 +2173,47 @@ export default {
}
this
.
$viewer
.
show
()
},
// 获取冲抵列表
getChongDiList
(
data
){
this
.
danjuType
=
data
.
Type
let
cmd
=
'Financial_post_GetHangingAccountList'
if
(
data
.
Type
===
7
){
cmd
=
'Financial_post_GetHangingMatchFinanceList'
}
this
.
apipost
(
cmd
,{
FrID
:
data
.
FrID
},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
let
data
=
res
.
data
.
data
;
this
.
ChongDiList
=
data
;
}
},
err
=>
{})
},
chongJudge
(
data
){
// 收支冲抵显示
let
p1
=
false
,
p2
=
false
;
data
.
AuditSteps
.
map
(
item
=>
{
if
(
item
.
NextStep
==
1
&&
item
.
AuditType
===
6
&&
item
.
Status
==
1
)
{
item
.
AuditRecordList
.
map
(
y
=>
{
if
(
y
.
AuditStatus
===
1
)
{
p1
=
true
}
else
{
p1
=
false
}
})
}
})
data
.
DetailList
.
map
(
item
=>
{
if
(
item
.
CostTypeName
===
'挂账单冲抵'
)
{
p2
=
true
}
})
if
(
p1
&&
p2
)
{
this
.
chongDiShow
=
true
;
}
if
(
p2
||
data
.
Type
===
7
)
{
this
.
isChongDi
=
true
;
this
.
getChongDiList
(
data
)
}
},
Financial_post_GetDetail
(
id
,
t
){
//获取单据详情
this
.
apipost
(
'Financial_post_GetDetail'
,{
ID
:
id
,
Type
:
2
},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
...
...
@@ -1875,8 +2235,15 @@ export default {
}
})
}
this
.
chongJudge
(
data
)
this
.
GetDetail
=
data
;
this
.
ChongDiMsg
.
Types
=
''
this
.
ChongDiMsg
.
ClientType
=
data
.
Type
===
2
?
data
.
ClientType
:
''
this
.
ChongDiMsg
.
ClientID
=
data
.
Type
===
2
?
data
.
ClientID
:
''
if
(
data
.
Type
===
2
)
{
this
.
financeinfo_post_GetClientAccountList
(
this
.
ChongDiMsg
.
ClientType
)
this
.
GetHangingAccountList
()
}
let
AuditSteps
=
this
.
GetDetail
.
AuditSteps
;
let
ChuNaShenHe
=
false
for
(
let
i
=
0
;
i
<
AuditSteps
.
length
;
i
++
)
{
...
...
@@ -1917,7 +2284,6 @@ export default {
this
.
OrderSource
=
this
.
GetDetail
.
OrderSource
;
this
.
SourceID
=
this
.
GetDetail
.
SourceID
;
this
.
Callback
=
this
.
GetDetail
.
Callback
;
this
.
FrID
=
this
.
GetDetail
.
FrID
;
let
lastSpecialNode
=
this
.
GetDetail
.
AuditSteps
[
this
.
GetDetail
.
AuditSteps
.
length
-
1
].
SpecialNode
;
let
lastStatus
=
this
.
GetDetail
.
AuditSteps
[
this
.
GetDetail
.
AuditSteps
.
length
-
1
].
Status
;
if
(
lastSpecialNode
==
2
&&
lastStatus
==
1
&&
this
.
GetDetail
.
TradeDetailList
.
length
>
0
){
...
...
@@ -2060,6 +2426,7 @@ export default {
this
.
RB_Post_Id
=
userInfo
.
RB_Post_Id
;
this
.
ID
=
this
.
$route
.
query
.
id
;
this
.
queryMsg
.
FinanceId
=
this
.
$route
.
query
.
id
;
this
.
financeinfo_post_GetClientTypeList
();
this
.
Financial_post_GetDetail
(
this
.
ID
);
this
.
financeinfo_post_GetList
();
this
.
BankAccount_post_GetAccountType
();
...
...
src/components/FinancialModule/FinancialDocumentsDetail.vue
View file @
763a48a8
...
...
@@ -528,6 +528,7 @@
<SaleOrderModule
v-if=
"OrderSource==10&&SourceID&&OrderID"
:SourceID=
'SourceID'
:OrderID=
'OrderID'
/>
<TicketFinace
v-if=
"OrderSource==4&&SourceID&&Callback&&ID"
:SourceID=
'SourceID'
:Callback=
'Callback'
:id=
'ID'
/>
<TicketingModule
v-if=
"OrderSource==9&&FrID&&ID"
:FrID=
'FrID'
:id=
'ID'
/>
<ChongDiPage
v-if=
"GetDetail.Type === 7 || isChongDi"
:dataList=
"ChongDiList"
:type=
"danjuType"
/>
</div>
<div
class=
"_tit _tit2 w890px"
>
...
...
@@ -784,6 +785,7 @@ import teamProductModule from "../commonPage/teamProductModule.vue";
import
TicketFinace
from
"../commonPage/TicketFinace.vue"
;
import
SaleOrderModule
from
"../commonPage/SaleOrderModule.vue"
;
import
TicketingModule
from
"../commonPage/TicketingModule.vue"
;
import
ChongDiPage
from
"../commonPage/ChongDiPage.vue"
;
import
myDJieBill
from
"./FinancialSubmodule/DjieMergeBillModule.vue"
;
export
default
{
data
(){
...
...
@@ -847,6 +849,9 @@ export default {
currentPage
:
1
,
total
:
0
,
},
isChongDi
:
false
,
ChongDiList
:
[],
danjuType
:
''
}
},
components
:{
'my-FlowChartModule'
:
myFlowChartModule
,
...
...
@@ -860,6 +865,7 @@ export default {
'SaleOrderModule'
:
SaleOrderModule
,
'TicketFinace'
:
TicketFinace
,
'myDJieBill'
:
myDJieBill
,
'ChongDiPage'
:
ChongDiPage
,
},
created
(){
this
.
ID
=
this
.
$route
.
query
.
id
;
...
...
@@ -867,6 +873,33 @@ export default {
let
userinfo
=
this
.
getLocalStorage
();
this
.
bossID
=
userinfo
.
EmployeeId
;
},
methods
:{
// 获取冲抵列表
getChongDiList
(
data
){
this
.
danjuType
=
data
.
Type
let
cmd
=
'Financial_post_GetHangingAccountList'
if
(
data
.
Type
===
7
){
cmd
=
'Financial_post_GetHangingMatchFinanceList'
}
this
.
apipost
(
cmd
,{
FrID
:
data
.
FrID
},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
let
data
=
res
.
data
.
data
;
this
.
ChongDiList
=
data
;
}
},
err
=>
{})
},
chongJudge
(
data
){
// 收支冲抵显示
let
p1
=
false
;
data
.
DetailList
.
map
(
item
=>
{
if
(
item
.
CostTypeName
===
'挂账单冲抵'
)
{
p1
=
true
}
})
if
(
p1
||
data
.
Type
===
7
)
{
this
.
isChongDi
=
true
;
this
.
getChongDiList
(
data
)
}
},
goUrl
(
path
,
id
)
{
this
.
$router
.
push
({
name
:
path
,
...
...
@@ -1193,6 +1226,7 @@ export default {
}
})
}
this
.
chongJudge
(
data
)
this
.
GetDetail
=
data
;
// 截取掉驳回后面的审核步骤
this
.
ZhiDanRen
=
this
.
GetDetail
.
CreatBy
;
...
...
src/components/SalesVisa/VisaProduct.vue
View file @
763a48a8
...
...
@@ -291,8 +291,8 @@
</li>
<li>
<button
class=
"hollowFixedBtn"
@
click=
"getList()"
>
查询
</button>
<
button
class=
"normalBtn"
v-show=
"!buttonshow"
@
click=
"cancelEdit(),addShow=true"
v-if=
"msg.isFinacial==1"
>
添加
</button
>
<button
class=
"normalBtn"
v-show=
"buttonshow"
@
click=
"AddVisaProduct"
v-if=
"msg.isFinacial==1"
>
添加(新)
</button>
<
!--
<button
class=
"normalBtn"
v-show=
"!buttonshow"
@
click=
"cancelEdit(),addShow=true"
v-if=
"msg.isFinacial==1"
>
添加
</button>
--
>
<button
class=
"normalBtn"
@
click=
"AddVisaProduct"
v-if=
"msg.isFinacial==1"
>
添加
</button>
</li>
</ul>
</div>
...
...
@@ -395,7 +395,7 @@
</td>
<td
class=
"groupTourOrderIcon"
>
<el-button-group>
<el-tooltip
<
!--
<
el-tooltip
class=
"item"
effect=
"dark"
content=
"修改"
...
...
@@ -408,15 +408,15 @@
icon=
"iconfont icon-img_bianji_small"
@
click=
"getDetail(item)"
></el-button>
</el-tooltip>
</el-tooltip>
-->
<el-tooltip
class=
"item"
effect=
"dark"
content=
"修改
(新)
"
content=
"修改"
placement=
"top-start"
v-if=
"item.SendVisaStatus==1&&msg.isFinacial==1"
>
<el-button
v-show=
"buttonshow"
<el-button
type=
"primary"
style=
"background:#409EFF; border-color:#409EFF"
icon=
"iconfont icon-img_bianji_small"
...
...
@@ -665,15 +665,15 @@ export default {
addShow
:
false
,
currentPage
:
1
,
VisaManagementList
:
[],
buttonshow
:
false
,
//
buttonshow:false,
Type
:
0
,
};
},
created
(){
let
locationName
=
window
.
location
.
hostname
;
if
(
locationName
.
indexOf
(
'viitto'
)
!==
-
1
||
locationName
.
indexOf
(
'www'
)
!==
-
1
){
this
.
buttonshow
=
true
;
}
//
let locationName = window.location.hostname;
//
if (locationName.indexOf('viitto') !== -1 || locationName.indexOf('www') !== -1){
//
this.buttonshow=true;
//
}
},
methods
:
{
...
...
src/components/TravelManager/TravelList/TeamBalancePayment.vue
View file @
763a48a8
...
...
@@ -193,7 +193,6 @@
<div>
应收:
<span>
¥
{{
moneyFormat
(
moneyAll
.
otheryTotalyf
)
}}
</span></div>
<div>
实收:
<span
class=
"Team_Coins"
>
¥
{{
moneyFormat
(
moneyAll
.
otheryTotalsf
)
}}
</span></div>
<div>
待收:
<span
class=
"Team_Coins"
>
¥
{{
moneyFormat
(
moneyAll
.
otheryTotalyf
-
moneyAll
.
otheryTotalsf
)
}}
</span></div>
<div>
挂账总收入:
<span>
¥
{{
moneyFormat
(
AllCont
.
Income
)
}}
</span></div>
<!--
<div>
注:应收=订单应收总额,实收=订单实收总额
</div>
-->
...
...
@@ -211,7 +210,6 @@
<div>
应付:
<span>
¥
{{
DataList
.
TeamBalance
.
ShouldPay
}}
</span></div>
<div>
实付:
<span
class=
"Team_Coins"
>
¥
{{
DataList
.
TeamBalance
.
ActualPay
}}
</span></div>
<div>
待付:
<span
class=
"Team_Coins"
>
¥
{{
DataList
.
TeamBalance
.
WaitPay
}}
</span></div>
<div>
挂账总支出:
<span>
¥
{{
moneyFormat
(
AllCont
.
Expend
)
}}
</span></div>
<div>
注:成本单据总额(包含退款)+提成-小费收入-地接收入
</div>
...
...
@@ -229,7 +227,7 @@
<div>
实际利润:
<span>
¥
{{
DataList
.
TeamBalance
.
ExpectedProfit
}}
</span></div>
<div>
当前利润:
<span
class=
"Team_Coins"
>
¥
{{
DataList
.
TeamBalance
.
ActualProfit
}}
</span></div>
<div>
注:实收-(应付/实付)+佣金收入+自费收入-联运成本
注:实收-(应付/实付)+佣金收入+自费收入-联运成本
+挂账总收入-挂账总支出+冲抵总收入-冲抵总支出
</div>
</div>
</div>
...
...
@@ -251,20 +249,21 @@
<div>
联运成本:
<span>
¥{{DataList.LYCB}}
</span></div>
</div>
</el-col>
<
!-- <
el-col :span="4">
<el-col
:span=
"4"
>
<div
class=
"Team_DList"
>
<div
class=
"Team_firstTitle"
>
<span
class=
"Team_comCoinType Team_lirun"
>
<i
class=
"iconfont icon-qian"
></i>
</span>
挂账信息
</div>
<div class="Team_Incontent">
<div>挂账总金额:<span>¥{{moneyFormat(AllCont.Income - AllCont.Expend)}}</span></div>
<div>挂账总支出:<span>¥{{moneyFormat(AllCont.Expend)}}</span></div>
<div>挂账总收入:<span>¥{{moneyFormat(AllCont.Income)}}</span></div>
<div
class=
"Team_Incontent"
>
<div>
挂账总收入:
<span>
¥{{moneyFormat(DataList.TeamBalance.GZIncome)}}
</span></div>
<div>
挂账总支出:
<span>
¥{{moneyFormat(DataList.TeamBalance.GZExpend)}}
</span></div>
<div>
冲抵总收入:
<span>
¥{{moneyFormat(DataList.TeamBalance.CDIncome)}}
</span></div>
<div>
冲抵总支出:
<span>
¥{{moneyFormat(DataList.TeamBalance.CDExpend)}}
</span></div>
</div>
</div>
</el-col>
-->
</el-col>
<el-col
:span=
"4"
>
<div
class=
"Team_DList"
>
<div
class=
"Team_firstTitle"
>
...
...
@@ -1079,6 +1078,81 @@
</
template
>
</table>
</div>
<div
class=
"Team_collection"
v-loading=
"loading"
>
<div
class=
"clearfix TB_PrintDiv"
>
<div
class=
"TB_comtitle TB-Title"
>
挂账冲抵
</div>
</div>
<div
class=
"clearfix TB_PrintDiv"
>
<div
class=
"TB_comtitle TB-Title"
>
冲抵单据:
</div>
</div>
<table
class=
"singeRowTable"
border=
"0"
cellspacing=
"0"
cellpadding=
"0"
>
<tr>
<th
width=
"180"
>
单号
</th>
<th
width=
"200"
>
挂账金额
</th>
<th
width=
"500"
>
挂账类型
</th>
<th
width=
"500"
>
挂账对象
</th>
<th
width=
"500"
>
单据状态
</th>
<th
width=
"300"
>
创建时间
</th>
<th
width=
"200"
>
创建人
</th>
</tr>
<tr
v-for=
"item in DataList.CDList"
>
<td><span
class=
"Team_income"
@
click=
"goUrl('FinancialDocumentsDetail',item.FrID)"
>
{{item.FrID}}
</span></td>
<td>
<span>
{{item.Money}}
</span>
</td>
<td>
<span>
{{item.HangingAccountsTypeStr}}
</span>
</td>
<td>
<span>
{{item.RemitterName}}:{{item.AccountNumber}}
</span>
</td>
<td>
<span>
{{item.StatusStr}}
</span>
</td>
<td>
<span>
{{item.CreateDateStr}}
</span>
</td>
<td>
<span>
{{item.createByStr}}
</span>
</td>
</tr>
</table>
<div
class=
"clearfix TB_PrintDiv"
>
<div
class=
"TB_comtitle TB-Title"
>
挂账单据:
</div>
</div>
<table
class=
"singeRowTable"
border=
"0"
cellspacing=
"0"
cellpadding=
"0"
>
<tr>
<th
width=
"180"
>
单号
</th>
<th
width=
"200"
>
挂账金额
</th>
<th
width=
"500"
>
挂账类型
</th>
<th
width=
"500"
>
挂账对象
</th>
<th
width=
"500"
>
单据状态
</th>
<th
width=
"300"
>
创建时间
</th>
<th
width=
"200"
>
创建人
</th>
</tr>
<tr
v-for=
"item in DataList.GuaZhangList"
>
<td><span
class=
"Team_income"
@
click=
"goUrl('FinancialDocumentsDetail',item.FrID)"
>
{{item.FrID}}
</span></td>
<td>
<span>
{{item.Money}}
</span>
</td>
<td>
<span>
{{item.HangingAccountsTypeStr}}
</span>
</td>
<td>
<span>
{{item.RemitterName}}:{{item.AccountNumber}}
</span>
</td>
<td>
<span>
{{item.StatusStr}}
</span>
</td>
<td>
<span>
{{item.CreateDateStr}}
</span>
</td>
<td>
<span>
{{item.createByStr}}
</span>
</td>
</tr>
</table>
</div>
<div
class=
"Team_collection"
v-loading=
"loading"
>
<div
class=
"clearfix TB_PrintDiv"
>
<div
class=
"TB_comtitle TB-Title"
>
非成本
</div>
...
...
@@ -1250,43 +1324,6 @@
</tr>
</
template
>
</table>
<div
class=
"clearfix TB_PrintDiv"
>
<div
class=
"TB_comtitle TB-Title"
>
挂账单据:
</div>
</div>
<table
class=
"singeRowTable"
border=
"0"
cellspacing=
"0"
cellpadding=
"0"
>
<tr>
<th
width=
"180"
>
单号
</th>
<th
width=
"200"
>
挂账金额
</th>
<th
width=
"500"
>
挂账类型
</th>
<th
width=
"500"
>
挂账对象
</th>
<th
width=
"500"
>
单据状态
</th>
<th
width=
"300"
>
创建时间
</th>
<th
width=
"200"
>
创建人
</th>
</tr>
<tr
v-for=
"item in HangingList"
>
<td>
<span>
{{item.FrID}}
</span>
</td>
<td>
<span>
{{item.Money}}
</span>
</td>
<td>
<span>
{{item.HangingAccountsTypeStr}}
</span>
</td>
<td>
<span>
{{item.RemitterName}}:{{item.AccountNumber}}
</span>
</td>
<td>
<span>
{{item.StatusStr}}
</span>
</td>
<td>
<span>
{{item.CreateDateStr}}
</span>
</td>
<td>
<span>
{{item.createByStr}}
</span>
</td>
</tr>
</table>
</div>
</div>
<div
class=
"Team_BtnList"
v-if=
"IsHaveAuth"
>
...
...
@@ -1389,37 +1426,10 @@
otheryTotalyf
:
0
,
otheryTotalsf
:
0
,
},
AllCont
:
{
Income
:
0
,
Expend
:
0
,
},
HangingList
:
[],
};
},
methods
:
{
getAllCont
:
function
()
{
let
msg
=
{
TCID
:
this
.
TCID
,
// FrID: 0,
// UpdateBy: '-1',
// RB_Branch_Id: -1,
// RB_Depart_Id: -2,
// sDate: '',
// eDate: '',
// Status: '-1',
// sTradeDate: '',
// eTradeDate: '',
// EmployeeId: 0,
// ClientType: 0,
}
this
.
apipost
(
'Financial_post_GetHangingAccountTotalPrice'
,
msg
,
res
=>
{
if
(
res
.
data
.
resultCode
===
1
)
{
this
.
AllCont
=
res
.
data
.
data
;
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
)
}
},
null
)
},
//判断数组包含字符串
isExists
(
array
,
str
)
{
var
flag
=
false
;
...
...
@@ -1758,19 +1768,6 @@ this.moneyAll.otheryTotalsf+=item.PayMoney;
}
});
},
getHangingAccountByTCIDList
:
function
()
{
this
.
apipost
(
'Financial_post_GetHangingAccountByTCIDList'
,
{
TCID
:
this
.
TCID
},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
HangingList
=
res
.
data
.
data
}
},
err
=>
{}
)
},
//权限验证
checkHasAuth
()
{
// this.apipost(
...
...
@@ -1801,8 +1798,6 @@ this.moneyAll.otheryTotalsf+=item.PayMoney;
}
this
.
checkHasAuth
();
this
.
getList
();
this
.
getAllCont
();
this
.
getHangingAccountByTCIDList
();
}
};
...
...
src/components/commonPage/ChongDiPage.vue
0 → 100644
View file @
763a48a8
<
style
>
@import
url('../../assets/css/domestic/TicketingModule.css')
;
</
style
>
<
template
>
<div
v-if=
"dataList.length
<
1
"
>
</div>
<div
v-else
>
<div
class=
"m_TicketingModule"
v-if=
"type !== 7"
>
<div
class=
"_tit"
>
<span
class=
"_text"
>
挂账冲抵列表
</span>
<div>
<span
class=
"_btn"
v-if=
"tableShow"
@
click=
"tableShow=false"
>
收起
<i
class=
"iconfont icon-gengduo _rotate"
></i>
</span>
<span
class=
"_btn"
v-else
@
click=
"tableShow=true"
>
展开
<i
class=
"iconfont icon-gengduo"
></i>
</span>
</div>
</div>
<div
v-show=
"tableShow"
class=
"_padding_20_15"
>
<table
class=
"singeRowTable"
style=
"border:1px solid #E6E6E6;"
cellspacing=
"0"
cellpadding=
"0"
>
<tr>
<th>
费用类型
</th>
<th>
团号
</th>
<th>
财务单据
</th>
<th>
收支类型
</th>
<th>
冲抵金额
</th>
<th>
对象名称
</th>
<th>
备注
</th>
<th>
制单时间
</th>
<th>
制单人
</th>
</tr>
<tr
v-for=
"(item, index) in dataList"
:key=
"index"
>
<td>
{{
item
.
CostTypeName
}}
</td>
<td>
{{
item
.
TCNUM
}}
</td>
<td>
{{
item
.
FrID
}}
</td>
<td>
{{
item
.
HangingAccountsTypeStr
}}
</td>
<td>
{{
item
.
fmrMoney
}}
</td>
<td>
{{
item
.
RemitterName
}}
</td>
<td>
{{
item
.
Remark
}}
</td>
<td>
{{
item
.
CreateDateStr
}}
</td>
<td>
{{
item
.
createByStr
}}
</td>
</tr>
</table>
</div>
</div>
<div
v-else
class=
"m_TicketingModule"
>
<div
class=
"_tit"
>
<span
class=
"_text"
>
挂账冲抵列表
</span>
<div>
<span
class=
"_btn"
v-if=
"tableShow"
@
click=
"tableShow=false"
>
收起
<i
class=
"iconfont icon-gengduo _rotate"
></i>
</span>
<span
class=
"_btn"
v-else
@
click=
"tableShow=true"
>
展开
<i
class=
"iconfont icon-gengduo"
></i>
</span>
</div>
</div>
<div
v-show=
"tableShow"
class=
"_padding_20_15"
>
<table
class=
"singeRowTable"
style=
"border:1px solid #E6E6E6;"
cellspacing=
"0"
cellpadding=
"0"
>
<tr>
<th>
财务单据
</th>
<th>
费用类型
</th>
<th>
收支类型
</th>
<th>
金额
</th>
<th>
备注
</th>
<th>
制单时间
</th>
<th>
制单人
</th>
</tr>
<tr
v-for=
"(item, index) in dataList"
:key=
"index"
>
<td>
{{
item
.
FrID
}}
</td>
<td>
<span
v-for=
"(t, index) in item.DetailList"
>
{{
t
.
CostTypeName
}}
<span
v-if=
"index!==item.DetailList.length-1"
>
,
</span>
</span>
</td>
<td>
{{
item
.
Type
===
1
?
'收'
:
'支'
}}
</td>
<td>
{{
item
.
Money
}}
</td>
<td>
{{
item
.
Remark
}}
</td>
<td>
{{
item
.
CreateDateStr
}}
</td>
<td>
{{
item
.
createByStr
}}
</td>
</tr>
</table>
</div>
</div>
</div>
</
template
>
<
script
>
export
default
{
props
:[
"dataList"
,
'type'
],
data
(){
return
{
tableShow
:
false
,
}
},
watch
:{
},
created
(){
},
mounted
(){
},
methods
:{
}
}
</
script
>
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