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
4ef1e612
Commit
4ef1e612
authored
Mar 14, 2019
by
zhengke
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
s
parent
8e443d2f
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
989 additions
and
521 deletions
+989
-521
VisaProduct.vue
src/components/SalesVisa/VisaProduct.vue
+875
-492
leaderPay2.vue
src/components/leaderPay2.vue
+114
-29
No files found.
src/components/SalesVisa/VisaProduct.vue
View file @
4ef1e612
<
style
>
.page_MyCustomer
._mc_addbox
{
height
:
52px
;
width
:
100%
;
margin-top
:
20px
;}
.page_MyCustomer
._mc_addbox
>
li
{
float
:
left
;
width
:
116px
;
font-size
:
14px
;
height
:
52px
;
color
:
#666
;
text-align
:
center
;
line-height
:
52px
;
background
:
#E9E9E9
;
cursor
:
pointer
;}
.page_MyCustomer
._mc_addbox
>
li
.active
{
background
:
#fff
;
color
:
#333
;}
.page_MyCustomer
._mc_addbox
.divActive
{
margin
:
-3px
auto
;
width
:
26px
;
height
:
3px
;
background
:
#E95252
;}
.page_MyCustomer
._mc_edit
{
overflow
:
auto
;
display
:
none
;
position
:
absolute
;
z-index
:
50
;
bottom
:
0
;
left
:
0
;
border-top
:
3px
solid
#38425d
;
background-color
:
#f9f9f9
;
padding
:
10px
;
width
:
100%
;
min-width
:
1146px
;}
.page_MyCustomer
.edHeight
{
display
:
block
;
height
:
191px
;}
.page_MyCustomer
._mc_list
{
overflow-x
:
auto
;
background
:
#fff
;
padding-top
:
20px
;
padding-left
:
15px
;}
.page_MyCustomer
._scrollbar
::-webkit-scrollbar
{
width
:
4px
;
height
:
8px
;}
.page_MyCustomer
._scrollbar
::-webkit-scrollbar-thumb
{
border-radius
:
4px
;
-webkit-box-shadow
:
inset
0
0
2px
rgba
(
0
,
0
,
0
,
0.2
);
background
:
#c9c9c9
;}
.page_MyCustomer
._scrollbar
::-webkit-scrollbar-track
{
-webkit-box-shadow
:
inset
0
0
2px
rgba
(
0
,
0
,
0
,
0.2
);
border-radius
:
4px
;
background
:
#EDEDED
;}
.page_MyCustomer
._mc_edit
._tit
{
padding-left
:
10px
;
border-left
:
3px
solid
#E95252
;
font-size
:
16px
;
font-family
:
'PingFangSc-Fine'
;
color
:
#000000
}
.page_MyCustomer
._mc_edit
._info_box
ul
._form
li
{
float
:
left
;}
.page_MyCustomer
._check_list
{
padding-left
:
120px
;
margin-bottom
:
20px
;}
.page_MyCustomer
._check_box
.el-form-item
{
margin-bottom
:
0
}
.page_MyCustomer
._info_box
.el-form-item__label
{
font-size
:
12px
;
color
:
#666
;}
._remark
textarea
{
resize
:
none
;
width
:
646px
;
height
:
100px
}
.page_MyCustomer
.avatar
{
.page_MyCustomer
._mc_addbox
{
height
:
52px
;
width
:
100%
;
margin-top
:
20px
;
}
.page_MyCustomer
._mc_addbox
>
li
{
float
:
left
;
width
:
116px
;
font-size
:
14px
;
height
:
52px
;
color
:
#666
;
text-align
:
center
;
line-height
:
52px
;
background
:
#e9e9e9
;
cursor
:
pointer
;
}
.page_MyCustomer
._mc_addbox
>
li
.active
{
background
:
#fff
;
color
:
#333
;
}
.page_MyCustomer
._mc_addbox
.divActive
{
margin
:
-3px
auto
;
width
:
26px
;
height
:
3px
;
background
:
#e95252
;
}
.page_MyCustomer
._mc_edit
{
overflow
:
auto
;
display
:
none
;
position
:
absolute
;
z-index
:
50
;
bottom
:
0
;
left
:
0
;
border-top
:
3px
solid
#38425d
;
background-color
:
#f9f9f9
;
padding
:
10px
;
width
:
100%
;
min-width
:
1146px
;
}
.page_MyCustomer
.edHeight
{
display
:
block
;
height
:
191px
;
}
.page_MyCustomer
._mc_list
{
overflow-x
:
auto
;
background
:
#fff
;
padding-top
:
20px
;
padding-left
:
15px
;
}
.page_MyCustomer
._scrollbar
::-webkit-scrollbar
{
width
:
4px
;
height
:
8px
;
}
.page_MyCustomer
._scrollbar
::-webkit-scrollbar-thumb
{
border-radius
:
4px
;
-webkit-box-shadow
:
inset
0
0
2px
rgba
(
0
,
0
,
0
,
0.2
);
background
:
#c9c9c9
;
}
.page_MyCustomer
._scrollbar
::-webkit-scrollbar-track
{
-webkit-box-shadow
:
inset
0
0
2px
rgba
(
0
,
0
,
0
,
0.2
);
border-radius
:
4px
;
background
:
#ededed
;
}
.page_MyCustomer
._mc_edit
._tit
{
padding-left
:
10px
;
border-left
:
3px
solid
#e95252
;
font-size
:
16px
;
font-family
:
"PingFangSc-Fine"
;
color
:
#000000
;
}
.page_MyCustomer
._mc_edit
._info_box
ul
._form
li
{
float
:
left
;
}
.page_MyCustomer
._check_list
{
padding-left
:
120px
;
margin-bottom
:
20px
;
}
.page_MyCustomer
._check_box
.el-form-item
{
margin-bottom
:
0
;
}
.page_MyCustomer
._info_box
.el-form-item__label
{
font-size
:
12px
;
color
:
#666
;
}
._remark
textarea
{
resize
:
none
;
width
:
646px
;
height
:
100px
;
}
.page_MyCustomer
.avatar
{
width
:
148px
;
height
:
148px
;
display
:
block
;
}
.page_MyCustomerSearch
{
width
:
100%
;
min-height
:
auto
;
overflow
:
hidden
;
padding
:
0
0
20px
0
;}
.page_MyCustomerSearch
li
{
float
:
left
;
font-size
:
12px
;
color
:
#666
;
margin
:
20px
0
0px
0
;}
.page_MyCustomerSearch
li
>
span
{
display
:
inline-block
;
}
.page_MyCustomerSearch
li
span
>
em
{
display
:
inline-block
;
min-width
:
60px
;
text-align
:
right
;
font-style
:
normal
;
margin
:
0
12px
0
0
;}
.page_MyCustomerSearch
li
:last-child
{
float
:
right
;}
.VisaProductTable
{
width
:
100%
;
font-size
:
14px
;
color
:
#333
;
}
.VisaProductTable
tr
th
{
background
:
#E6E6E6
;
height
:
30px
;
font-size
:
12px
;
text-align
:
left
;
text-indent
:
25px
;}
.VisaProductTable
tr
{
background
:
#fff
;
text-align
:
left
;}
.VisaProductTable
tr
td
{
height
:
60px
;
padding-left
:
25px
;
border
:
1px
solid
#cccccc
;
font-size
:
14px
;
color
:
#333
;}
.VisaProductTable
tr
td
>
img
{
width
:
24px
;
height
:
24px
;
border-radius
:
50%
;
float
:
left
;
margin-right
:
5px
;}
.VisaProductTable
tr
td
.tuanqian
{
vertical-align
:
middle
;
font-weight
:
400
;
display
:
table-cell
;
text-align
:
center
;
width
:
44px
;
font-size
:
12px
;
height
:
19px
;
color
:
#FFFFFF
;
background
:
#2AAEF2
;}
.VisaProductTable
tr
td
.geqian
{
vertical-align
:
middle
;
font-weight
:
400
;
display
:
table-cell
;
text-align
:
center
;
width
:
44px
;
font-size
:
12px
;
height
:
19px
;
color
:
#FFFFFF
;
background
:
#FF9000
;}
.page_MyCustomer
._edHeight
{
height
:
340px
;}
.dateClass
{
width
:
171px
!important
;}
.surplusNum
{
color
:
#E95252
!important
;}
.peopleNum
{
height
:
15px
;
font-size
:
16px
;
font-weight
:
400
;
color
:
rgba
(
51
,
51
,
51
,
1
);
line-height
:
24px
;}
.orderNum
{
cursor
:
pointer
;
text-decoration
:
underline
;
width
:
18px
;
height
:
16px
;
font-size
:
16px
;
font-weight
:
400
;
color
:
rgba
(
51
,
51
,
51
,
1
);
line-height
:
24px
;}
.VisaProductTable
tr
td
.createName
{
vertical-align
:
middle
;
display
:
table-cell
;
text-align
:
left
;
padding-left
:
3px
;
height
:
21px
;}
.groupTourOrderIcon
button
{
width
:
28px
;
height
:
28px
;
border-radius
:
4px
;}
.groupTourOrderIcon
.el-button--primary
{
padding
:
5px
;
margin
:
0
;
font-size
:
14px
!important
;}
}
.page_MyCustomerSearch
{
width
:
100%
;
min-height
:
auto
;
overflow
:
hidden
;
padding
:
0
0
20px
0
;
}
.page_MyCustomerSearch
li
{
float
:
left
;
font-size
:
12px
;
color
:
#666
;
margin
:
20px
0
0px
0
;
}
.page_MyCustomerSearch
li
>
span
{
display
:
inline-block
;
}
.page_MyCustomerSearch
li
span
>
em
{
display
:
inline-block
;
min-width
:
60px
;
text-align
:
right
;
font-style
:
normal
;
margin
:
0
12px
0
0
;
}
.page_MyCustomerSearch
li
:last-child
{
float
:
right
;
}
.VisaProductTable
{
width
:
100%
;
font-size
:
14px
;
color
:
#333
;
}
.VisaProductTable
tr
th
{
background
:
#e6e6e6
;
height
:
30px
;
font-size
:
12px
;
text-align
:
left
;
text-indent
:
25px
;
}
.VisaProductTable
tr
{
background
:
#fff
;
text-align
:
left
;
}
.VisaProductTable
tr
td
{
height
:
60px
;
padding-left
:
25px
;
border
:
1px
solid
#cccccc
;
font-size
:
14px
;
color
:
#333
;
}
.VisaProductTable
tr
td
>
img
{
width
:
24px
;
height
:
24px
;
border-radius
:
50%
;
float
:
left
;
margin-right
:
5px
;
}
.VisaProductTable
tr
td
.tuanqian
{
vertical-align
:
middle
;
font-weight
:
400
;
display
:
table-cell
;
text-align
:
center
;
width
:
44px
;
font-size
:
12px
;
height
:
19px
;
color
:
#ffffff
;
background
:
#2aaef2
;
}
.VisaProductTable
tr
td
.geqian
{
vertical-align
:
middle
;
font-weight
:
400
;
display
:
table-cell
;
text-align
:
center
;
width
:
44px
;
font-size
:
12px
;
height
:
19px
;
color
:
#ffffff
;
background
:
#ff9000
;
}
.page_MyCustomer
._edHeight
{
height
:
340px
;
}
.dateClass
{
width
:
171px
!important
;
}
.surplusNum
{
color
:
#e95252
!important
;
}
.peopleNum
{
height
:
15px
;
font-size
:
16px
;
font-weight
:
400
;
color
:
rgba
(
51
,
51
,
51
,
1
);
line-height
:
24px
;
}
.orderNum
{
cursor
:
pointer
;
text-decoration
:
underline
;
width
:
18px
;
height
:
16px
;
font-size
:
16px
;
font-weight
:
400
;
color
:
rgba
(
51
,
51
,
51
,
1
);
line-height
:
24px
;
}
.VisaProductTable
tr
td
.createName
{
vertical-align
:
middle
;
display
:
table-cell
;
text-align
:
left
;
padding-left
:
3px
;
height
:
21px
;
}
.groupTourOrderIcon
button
{
width
:
28px
;
height
:
28px
;
border-radius
:
4px
;
}
.groupTourOrderIcon
.el-button--primary
{
padding
:
5px
;
margin
:
0
;
font-size
:
14px
!important
;
}
</
style
>
<
template
>
<div
class=
"page_MyCustomer"
>
...
...
@@ -48,39 +220,73 @@
<ul>
<li>
<span>
<em>
出团公司
</em><el-select
class=
'w210'
v-model=
"msg.BranchId"
filterable
:placeholder=
"$t('pub.pleaseSel')"
>
<el-option
v-for=
"item in companyList"
:label=
'item.BName'
:value=
'item.Id'
:key=
'item.Id'
></el-option>
<em>
出团公司
</em>
<el-select
class=
"w210"
v-model=
"msg.BranchId"
filterable
:placeholder=
"$t('pub.pleaseSel')"
>
<el-option
v-for=
"item in companyList"
:label=
"item.BName"
:value=
"item.Id"
:key=
"item.Id"
></el-option>
</el-select>
</span>
</li>
<li>
<span>
<em>
产品ID
</em><el-input
class=
'w210'
v-model=
'msg.ProductID'
placeholder=
"请输入"
></el-input>
<em>
产品ID
</em>
<el-input
class=
"w210"
v-model=
"msg.ProductID"
placeholder=
"请输入"
></el-input>
</span>
</li>
<li>
<span>
<em>
产品名称
</em><el-input
class=
'w210'
v-model=
'msg.ProductName'
placeholder=
"请输入"
></el-input>
<em>
产品名称
</em>
<el-input
class=
"w210"
v-model=
"msg.ProductName"
placeholder=
"请输入"
></el-input>
</span>
</li>
<li>
<span>
<em>
创建人
</em><el-select
v-model=
'msg.EmId'
>
<el-option
label=
"不限"
value=
"-1"
key=
'-1'
></el-option>
<el-option
v-for=
"item in EmployeeList"
:label=
'item.EmName'
:value=
'item.EmployeeId'
:key=
'item.EmployeeId'
>
</el-option>
<li>
<span>
<em>
创建人
</em>
<el-select
v-model=
"msg.EmId"
>
<el-option
label=
"不限"
value=
"-1"
key=
"-1"
></el-option>
<el-option
v-for=
"item in EmployeeList"
:label=
"item.EmName"
:value=
"item.EmployeeId"
:key=
"item.EmployeeId"
></el-option>
</el-select>
</span></li>
<li><span><em>
状态
</em></span><el-select
v-model=
'msg.VisaStatus'
>
<el-option
label=
'不限'
value=
'-1'
key=
'-1'
></el-option>
<el-option
label=
'上架'
value=
'1'
key=
'1'
></el-option>
<el-option
label=
'下架'
value=
'2'
key=
'2'
></el-option>
</span>
</li>
<li>
<span>
<em>
状态
</em>
</span>
<el-select
v-model=
"msg.VisaStatus"
>
<el-option
label=
"不限"
value=
"-1"
key=
"-1"
></el-option>
<el-option
label=
"上架"
value=
"1"
key=
"1"
></el-option>
<el-option
label=
"下架"
value=
"2"
key=
"2"
></el-option>
</el-select>
</li>
<li><span><em>
价格有效日期
</em><el-date-picker
v-model=
'msg.StartTime'
class=
'w135'
value-format=
"yyyy-MM-dd"
type=
"date"
></el-date-picker>
-
<el-date-picker
v-model=
'msg.EndTime'
class=
'w135'
value-format=
"yyyy-MM-dd"
type=
"date"
></el-date-picker>
<li>
<span>
<em>
价格有效日期
</em>
<el-date-picker
v-model=
"msg.StartTime"
class=
"w135"
value-format=
"yyyy-MM-dd"
type=
"date"
></el-date-picker>
-
<el-date-picker
v-model=
"msg.EndTime"
class=
"w135"
value-format=
"yyyy-MM-dd"
type=
"date"
></el-date-picker>
</span>
</li>
<li>
...
...
@@ -90,7 +296,7 @@
</ul>
</div>
<table
class=
"VisaProductTable"
border=
"0"
cellspacing=
"0"
cellpadding=
"0"
v-loading=
'loading'
>
<table
class=
"VisaProductTable"
border=
"0"
cellspacing=
"0"
cellpadding=
"0"
v-loading=
"loading"
>
<tr>
<th
width=
"10%"
>
产品名称
</th>
<th
width=
"8%"
>
签证类型
</th>
...
...
@@ -105,7 +311,7 @@
<th
width=
"10%"
>
广告图
</th>
<th
width=
"14%"
>
操作
</th>
</tr>
<tr
v-for=
'item in dataList'
>
<tr
v-for=
"item in dataList"
>
<td>
{{
item
.
Name
}}
</td>
<td>
<span
v-if=
"item.VisaType==1"
class=
"geqian"
>
个签
</span>
...
...
@@ -129,43 +335,114 @@
{{
item
.
VisaStatus
==
1
?
"上架"
:
"下架"
}}
</td>
<td>
<span
class=
"orderNum"
@
click=
"goUrl(item)"
>
{{
item
.
OrderNum
}}
</span>
<span
class=
"orderNum"
@
click=
"goUrl(item)"
>
{{
item
.
OrderNum
}}
</span>
</td>
<!--
<td>
<span
class=
"peopleNum"
>
{{
item
.
PeopleNum
}}
(
<span
class=
"surplusNum"
>
{{
item
.
SurplusNum
}}
</span>
)
</span>
</td>
-->
</td>
-->
<td>
<img
v-if=
'!item.CreatePhoto'
src=
"../../assets/img/litheader.png"
/
>
<img
v-if=
'item.CreatePhoto'
:onerror=
"defaultImg"
:src=
'item.CreatePhoto'
/
>
<img
v-if=
"!item.CreatePhoto"
src=
"../../assets/img/litheader.png"
>
<img
v-if=
"item.CreatePhoto"
:onerror=
"defaultImg"
:src=
"item.CreatePhoto"
>
<span
class=
"createName"
>
{{
item
.
CreateName
}}
</span>
</td>
<td>
<p
v-for=
"(item2, index2) in item.AdvertisingFileList"
:key=
"index2"
>
<span
style=
"cursor:pointer;text-decoration: underline;"
@
click=
"downloadFile(item2)"
>
{{
item2
.
Name
}}
</span><i
class=
"iconfont icon-Close"
style=
"font-size:12px;cursor:pointer;"
@
click=
"delUnpload(item.Id,item2)"
></i>
<span
style=
"cursor:pointer;text-decoration: underline;"
@
click=
"downloadFile(item2)"
>
{{
item2
.
Name
}}
</span>
<i
class=
"iconfont icon-Close"
style=
"font-size:12px;cursor:pointer;"
@
click=
"delUnpload(item.Id,item2)"
></i>
</p>
<el-upload
:http-request=
"uploadImg"
:data=
'item'
ref=
"upload"
:multiple=
"false"
:show-file-list=
'false'
action=
""
>
<span
style=
"color:#00C6FF;cursor:pointer;"
@
click=
'saveitem(item.Id)'
>
上传广告图
</span>
<el-upload
:http-request=
"uploadImg"
:data=
"item"
ref=
"upload"
:multiple=
"false"
:show-file-list=
"false"
action
>
<span
style=
"color:#00C6FF;cursor:pointer;"
@
click=
"saveitem(item.Id)"
>
上传广告图
</span>
</el-upload>
</td>
<td
class=
"groupTourOrderIcon"
>
<el-button-group>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"修改"
placement=
"top-start"
v-if=
"item.SendVisaStatus==1&&msg.isFinacial==1"
>
<el-button
type=
"primary"
style=
'background:#409EFF; border-color:#409EFF'
icon=
"iconfont icon-img_bianji_small"
@
click=
'getDetail(item)'
></el-button>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"修改"
placement=
"top-start"
v-if=
"item.SendVisaStatus==1&&msg.isFinacial==1"
>
<el-button
type=
"primary"
style=
"background:#409EFF; border-color:#409EFF"
icon=
"iconfont icon-img_bianji_small"
@
click=
"getDetail(item)"
></el-button>
</el-tooltip>
<el-tooltip
effect=
"dark"
content=
"查看"
placement=
"top-start"
v-if=
"msg.isFinacial==1"
>
<el-button
type=
"primary"
style=
'background:#25C1C3; border-color:#25C1C3'
@
click=
"goUrl(item)"
icon=
"iconfont icon-img_cz"
></el-button>
<el-button
type=
"primary"
style=
"background:#25C1C3; border-color:#25C1C3"
@
click=
"goUrl(item)"
icon=
"iconfont icon-img_cz"
></el-button>
</el-tooltip>
<el-tooltip
effect=
"dark"
content=
"签证列表"
placement=
"top-start"
v-if=
"item.VisaManagementId>0"
>
<el-button
type=
"primary"
@
click=
"goUrlVisaList(item)"
style=
'background:#47BF8C; border-color:#47BF8C'
icon=
"iconfont icon-biaoge"
></el-button>
<el-tooltip
effect=
"dark"
content=
"签证列表"
placement=
"top-start"
v-if=
"item.VisaManagementId>0"
>
<el-button
type=
"primary"
@
click=
"goUrlVisaList(item)"
style=
"background:#47BF8C; border-color:#47BF8C"
icon=
"iconfont icon-biaoge"
></el-button>
</el-tooltip>
<el-tooltip
v-if=
"item.OrderNum>0&&msg.isFinacial==1"
effect=
"dark"
content=
"结算"
placement=
"top-start"
>
<el-button
type=
"primary"
@
click=
"goUrlJS(item)"
style=
'background:#5EBB64; border-color:#5EBB64'
icon=
"iconfont icon-qian"
></el-button>
<el-tooltip
v-if=
"item.OrderNum>0&&msg.isFinacial==1"
effect=
"dark"
content=
"结算"
placement=
"top-start"
>
<el-button
type=
"primary"
@
click=
"goUrlJS(item)"
style=
"background:#5EBB64; border-color:#5EBB64"
icon=
"iconfont icon-qian"
></el-button>
</el-tooltip>
<el-tooltip
v-if=
"item.VisaStatus==1&&msg.isFinacial==1"
effect=
"dark"
content=
"下架"
placement=
"top-start"
>
<el-button
type=
"primary"
style=
'background:#F0A748; border-color:#F0A748'
icon=
"iconfont icon-xiajia1"
@
click=
'updateVisaStatus(item)'
></el-button>
<el-tooltip
v-if=
"item.VisaStatus==1&&msg.isFinacial==1"
effect=
"dark"
content=
"下架"
placement=
"top-start"
>
<el-button
type=
"primary"
style=
"background:#F0A748; border-color:#F0A748"
icon=
"iconfont icon-xiajia1"
@
click=
"updateVisaStatus(item)"
></el-button>
</el-tooltip>
<el-tooltip
v-if=
"item.VisaStatus==2&&item.SendVisaStatus==1&&msg.isFinacial==1"
effect=
"dark"
content=
"上架"
placement=
"top-start"
>
<el-button
type=
"primary"
style=
'background:#F0A748; border-color:#F0A748'
icon=
"iconfont icon-shangjia1"
@
click=
'updateVisaStatus(item)'
></el-button>
<el-tooltip
v-if=
"item.VisaStatus==2&&item.SendVisaStatus==1&&msg.isFinacial==1"
effect=
"dark"
content=
"上架"
placement=
"top-start"
>
<el-button
type=
"primary"
style=
"background:#F0A748; border-color:#F0A748"
icon=
"iconfont icon-shangjia1"
@
click=
"updateVisaStatus(item)"
></el-button>
</el-tooltip>
</el-button-group>
</td>
...
...
@@ -181,29 +458,36 @@
:current-page
.
sync=
"currentPage"
layout=
"total,prev, pager, next, jumper"
:page-size=
"this.msg.pageSize"
:total=
"total"
>
</el-pagination>
:total=
"total"
>
</el-pagination>
<div
class=
"_mc_edit _scrollbar"
:class=
"addShow==true?'edHeight':''"
>
<p
class=
"_tit"
>
签证产品
<p
class=
"_tit"
>
签证产品
<span
class=
"fr"
>
<button
class=
"hollowFixedBtn"
type=
"button"
@
click=
"cancelEdit()"
>
{{
$t
(
'pub.cancelBtn'
)
}}
</button>
<button
type=
"button"
class=
"normalBtn"
@
click=
"saveVisa()"
>
{{
$t
(
'pub.saveBtn'
)
}}
</button>
</span>
</p>
<el-form
class=
"_info_box clearfix"
:model=
"addMsg"
:rules=
"rules"
ref=
"addMsg"
label-width=
"120px"
>
<el-form
class=
"_info_box clearfix"
:model=
"addMsg"
:rules=
"rules"
ref=
"addMsg"
label-width=
"120px"
>
<el-row
:gutter=
"20"
>
<el-col
:span=
"5"
>
<el-form-item
label=
"产品名称"
prop=
"Name"
>
<el-form-item
label=
"产品名称"
prop=
"Name"
>
<el-input
v-model=
"addMsg.Name"
placeholder=
"请输入"
class=
"dateClass"
></el-input>
</el-form-item>
</el-col>
<el-col
:span=
"5"
>
<el-form-item
label=
"类型"
prop=
"VisaType"
>
<el-select
v-model=
'addMsg.VisaType'
@
change=
'getVisaManagementList'
>
<el-select
v-model=
"addMsg.VisaType"
@
change=
"getVisaManagementList"
>
<!--
<el-option
label=
'不限'
value=
'-1'
key=
'-1'
></el-option>
-->
<el-option
label=
'个签'
value=
'1'
key=
'1'
></el-option>
<el-option
label=
'团签'
value=
'2'
key=
'2'
></el-option>
<el-option
label=
"个签"
value=
"1"
key=
"1"
></el-option>
<el-option
label=
"团签"
value=
"2"
key=
"2"
></el-option>
</el-select>
</el-form-item>
</el-col>
...
...
@@ -211,7 +495,7 @@
<el-form-item
label=
"人数"
prop=
"PeopleNum"
>
<el-input
@
keyup
.
native=
"checkInteger(addMsg,'PeopleNum')"
v-model=
"addMsg.PeopleNum"
placeholder=
"请输入"
maxlength=
"20"
></el-input>
</el-form-item>
</el-col>
-->
</el-col>
-->
<el-col
:span=
"5"
>
<el-form-item
label=
"成本价"
prop=
"CostPrice"
>
<el-input
v-model=
"addMsg.CostPrice"
placeholder=
"请输入"
maxlength=
"20"
></el-input>
...
...
@@ -219,13 +503,13 @@
</el-col>
<el-col
:span=
"5"
>
<el-form-item
label=
"签证国家"
prop=
"VisaManagementId"
>
<el-select
v-model=
'addMsg.VisaManagementId'
class=
"dateClass"
>
<el-option
v-for=
'item in VisaManagementList'
:label=
'item.Name'
:value=
'item.Id'
:key=
'item.Id'
>
</el-option>
<el-select
v-model=
"addMsg.VisaManagementId"
class=
"dateClass"
>
<el-option
v-for=
"item in VisaManagementList"
:label=
"item.Name"
:value=
"item.Id"
:key=
"item.Id"
></el-option>
</el-select>
</el-form-item>
</el-col>
...
...
@@ -242,13 +526,19 @@
</el-form-item>
</el-col>
<el-col
:span=
"5"
>
<el-form-item
label=
"提成金额"
prop=
"CommissionPrice"
>
<el-form-item
label=
"提成金额"
prop=
"CommissionPrice"
>
<el-input
v-model=
"addMsg.CommissionPrice"
placeholder=
"请输入"
></el-input>
</el-form-item>
</el-col>
<el-col
:span=
"5"
>
<el-form-item
label=
"价格有效日期"
prop=
"SendVisaDate"
>
<el-date-picker
v-model=
'addMsg.SendVisaDate'
class=
"dateClass"
value-format=
"yyyy-MM-dd"
type=
"date"
placeholder=
"请选择"
></el-date-picker>
<el-date-picker
v-model=
"addMsg.SendVisaDate"
class=
"dateClass"
value-format=
"yyyy-MM-dd"
type=
"date"
placeholder=
"请选择"
></el-date-picker>
</el-form-item>
</el-col>
</el-row>
...
...
@@ -258,76 +548,96 @@
</
template
>
<
script
>
export
default
{
data
(){
return
{
uploadTCID
:
0
,
defaultImg
:
'this.src="'
+
require
(
"../../assets/img/litheader.png"
)
+
'"'
,
data
()
{
return
{
uploadTCID
:
0
,
defaultImg
:
'this.src="'
+
require
(
"../../assets/img/litheader.png"
)
+
'"'
,
companyList
:
[],
msg
:
{
pageIndex
:
1
,
pageSize
:
12
,
ProductName
:
''
,
StartTime
:
''
,
EndTime
:
''
,
EmId
:
'-1'
,
ProductID
:
0
,
VisaStatus
:
'-1'
,
isFinacial
:
1
,
BranchId
:
'-1'
msg
:
{
pageIndex
:
1
,
pageSize
:
12
,
ProductName
:
""
,
StartTime
:
""
,
EndTime
:
""
,
EmId
:
"-1"
,
ProductID
:
0
,
VisaStatus
:
"-1"
,
isFinacial
:
1
,
BranchId
:
"-1"
},
addMsg
:
{
Id
:
0
,
Name
:
''
,
VisaType
:
''
,
SendVisaDate
:
''
,
VisaPrice
:
''
,
PeopleNum
:
'0'
,
CostPrice
:
''
,
CommissionPrice
:
''
,
VisaManagementId
:
''
,
VisaB2CPrice
:
''
addMsg
:
{
Id
:
0
,
Name
:
""
,
VisaType
:
""
,
SendVisaDate
:
""
,
VisaPrice
:
""
,
PeopleNum
:
"0"
,
CostPrice
:
""
,
CommissionPrice
:
""
,
VisaManagementId
:
""
,
VisaB2CPrice
:
""
},
rules
:{
Name
:[{
required
:
true
,
message
:
"请输入产品名称"
,
trigger
:
"blur"
}],
customerName
:[{
required
:
true
,
message
:
"请输入客户名"
,
trigger
:
"blur"
}],
VisaPrice
:[
{
required
:
true
,
message
:
"请输入同业价"
,
trigger
:
"blur"
},
{
pattern
:
this
.
$commonUtils
.
Regex
.
el_Isdecimal
,
message
:
"请输入同业价"
}
rules
:
{
Name
:
[{
required
:
true
,
message
:
"请输入产品名称"
,
trigger
:
"blur"
}],
customerName
:
[
{
required
:
true
,
message
:
"请输入客户名"
,
trigger
:
"blur"
}
],
VisaB2CPrice
:[
{
required
:
true
,
message
:
"请输入直客价"
,
trigger
:
"blur"
},
{
pattern
:
this
.
$commonUtils
.
Regex
.
el_Isdecimal
,
message
:
"请输入直客价"
}
VisaPrice
:
[
{
required
:
true
,
message
:
"请输入同业价"
,
trigger
:
"blur"
},
{
pattern
:
this
.
$commonUtils
.
Regex
.
el_Isdecimal
,
message
:
"请输入同业价"
}
],
CostPrice
:[
{
required
:
true
,
message
:
"请输入成本价"
,
trigger
:
"blur"
},
{
pattern
:
this
.
$commonUtils
.
Regex
.
el_Isdecimal
,
message
:
"请输入成本价"
}
VisaB2CPrice
:
[
{
required
:
true
,
message
:
"请输入直客价"
,
trigger
:
"blur"
},
{
pattern
:
this
.
$commonUtils
.
Regex
.
el_Isdecimal
,
message
:
"请输入直客价"
}
],
VisaType
:[{
required
:
true
,
message
:
"请选择类型"
,
trigger
:
"change"
}],
PeopleNum
:[{
required
:
true
,
message
:
"请输入人数"
,
trigger
:
"blur"
}],
CommissionPrice
:[
{
required
:
true
,
message
:
"请输入提成金额"
,
trigger
:
"blur"
},
{
pattern
:
this
.
$commonUtils
.
Regex
.
el_Isdecimal
,
message
:
"请输入提成金额"
}
CostPrice
:
[
{
required
:
true
,
message
:
"请输入成本价"
,
trigger
:
"blur"
},
{
pattern
:
this
.
$commonUtils
.
Regex
.
el_Isdecimal
,
message
:
"请输入成本价"
}
],
SendVisaDate
:[{
required
:
true
,
message
:
"请输入价格有效期"
,
trigger
:
"blur"
}],
VisaType
:
[
{
required
:
true
,
message
:
"请选择类型"
,
trigger
:
"change"
}
],
PeopleNum
:
[{
required
:
true
,
message
:
"请输入人数"
,
trigger
:
"blur"
}],
CommissionPrice
:
[
{
required
:
true
,
message
:
"请输入提成金额"
,
trigger
:
"blur"
},
{
pattern
:
this
.
$commonUtils
.
Regex
.
el_Isdecimal
,
message
:
"请输入提成金额"
}
],
SendVisaDate
:
[
{
required
:
true
,
message
:
"请输入价格有效期"
,
trigger
:
"blur"
}
]
},
dataList
:
[],
EmployeeList
:
[],
loading
:
true
,
dataList
:
[],
EmployeeList
:
[],
loading
:
true
,
total
:
0
,
addShow
:
false
,
addShow
:
false
,
currentPage
:
1
,
VisaManagementList
:[],
}
},
methods
:{
VisaManagementList
:
[]
};
},
methods
:
{
saveitem
(
tcid
)
{
this
.
uploadTCID
=
tcid
this
.
uploadTCID
=
tcid
;
},
//上传
uploadImg
(
file
)
{
let
newArr
=
[];
newArr
.
push
(
file
.
file
);
let
path
=
"/Upload/Temporary/"
;
this
.
UploadSelfFile
T
(
path
,
newArr
,
x
=>
{
this
.
UploadSelfFile
(
path
,
newArr
,
x
=>
{
this
.
apipost
(
"dmc_get_visa_UploadVisaAdvertisingImage"
,
{
...
...
@@ -344,33 +654,37 @@ export default {
this
.
$message
.
error
(
"上传失败"
);
}
}
})
);
});
},
delUnpload
:
function
(
tcid
,
item
)
{
this
.
$confirm
(
'是否删除该广告图?'
,
'提示'
,
{
confirmButtonText
:
'确定'
,
cancelButtonText
:
'取消'
,
type
:
'warning'
}).
then
(()
=>
{
this
.
apipost
(
'dmc_get_visa_UploadVisaAdvertisingImage'
,
{
delUnpload
:
function
(
tcid
,
item
)
{
this
.
$confirm
(
"是否删除该广告图?"
,
"提示"
,
{
confirmButtonText
:
"确定"
,
cancelButtonText
:
"取消"
,
type
:
"warning"
}).
then
(()
=>
{
this
.
apipost
(
"dmc_get_visa_UploadVisaAdvertisingImage"
,
{
Path
:
item
.
FullUrl
,
FileName
:
item
.
Name
,
Status
:
2
,
VId
:
tcid
},
res
=>
{
if
(
res
.
data
.
resultCode
===
1
)
{
this
.
$message
.
success
(
'删除成功'
)
},
res
=>
{
if
(
res
.
data
.
resultCode
===
1
)
{
this
.
$message
.
success
(
"删除成功"
);
this
.
getList
();
}
else
{
this
.
$message
.
error
(
'删除失败'
)
this
.
$message
.
error
(
"删除失败"
);
}
}
})
})
);
})
;
},
downloadFile
:
function
(
item
)
{
let
reg
=
/^http
(
s
)?
:
\/\/(
.*
?)\/
/
this
.
downloadFileRename
(
item
.
FullUrl
.
replace
(
reg
,
''
),
item
.
Name
);
downloadFile
:
function
(
item
)
{
let
reg
=
/^http
(
s
)?
:
\/\/(
.*
?)\/
/
;
this
.
downloadFileRename
(
item
.
FullUrl
.
replace
(
reg
,
""
),
item
.
Name
);
},
getCompanyList
()
{
let
userInfo
=
this
.
getLocalStorage
();
...
...
@@ -379,164 +693,233 @@ export default {
Status
:
0
,
is_show
:
0
,
RB_Group_Id
:
RB_Group_id
};
this
.
apipost
(
"admin_get_BranchGetList"
,
msg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
companyList
=
[
{
Id
:
"-1"
,
BName
:
"不限"
}
this
.
apipost
(
'admin_get_BranchGetList'
,
msg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
companyList
=
[{
Id
:
'-1'
,
BName
:
'不限'
}];
];
res
.
data
.
data
.
forEach
(
x
=>
{
var
obj
=
{
Id
:
''
,
BName
:
''
}
Id
:
""
,
BName
:
""
};
obj
.
Id
=
x
.
Id
.
toString
();
obj
.
BName
=
x
.
BName
;
this
.
companyList
.
push
(
obj
);
})
});
}
},
err
=>
{})
},
getVisaManagementList
(){
// 获取签证管理
this
.
VisaManagementList
=
[]
this
.
addMsg
.
VisaManagementId
=
''
this
.
apipost
(
'dmc_get_visa_GetVisaManagementList'
,{
Status
:
-
1
,
BranchId
:
-
1
,
SignStatus
:
this
.
addMsg
.
VisaType
},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
){
this
.
VisaManagementList
=
res
.
data
.
data
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
)
err
=>
{}
);
},
getVisaManagementList
()
{
// 获取签证管理
this
.
VisaManagementList
=
[];
this
.
addMsg
.
VisaManagementId
=
""
;
this
.
apipost
(
"dmc_get_visa_GetVisaManagementList"
,
{
Status
:
-
1
,
BranchId
:
-
1
,
SignStatus
:
this
.
addMsg
.
VisaType
},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
VisaManagementList
=
res
.
data
.
data
;
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
);
}
},
err
=>
{})
},
err
=>
{}
);
},
goUrl
(
obj
){
this
.
$router
.
push
({
name
:
'VisaProductOrder'
,
query
:{
"id"
:
obj
.
Id
,
"name"
:
obj
.
Name
,
"sendDate"
:
obj
.
SendVisaDate
,
"isShow"
:
0
,
"EmId"
:
"-1"
,
blank
:
'y'
,
tab
:
'详情'
}
})
goUrl
(
obj
)
{
this
.
$router
.
push
({
name
:
"VisaProductOrder"
,
query
:
{
id
:
obj
.
Id
,
name
:
obj
.
Name
,
sendDate
:
obj
.
SendVisaDate
,
isShow
:
0
,
EmId
:
"-1"
,
blank
:
"y"
,
tab
:
"详情"
}
});
},
goUrlVisaList
(
obj
){
this
.
$router
.
push
({
name
:
'visaList2'
,
query
:{
"id"
:
obj
.
Id
,
blank
:
'y'
,
tab
:
'签证列表'
}
})
goUrlVisaList
(
obj
)
{
this
.
$router
.
push
({
name
:
"visaList2"
,
query
:
{
id
:
obj
.
Id
,
blank
:
"y"
,
tab
:
"签证列表"
}
});
},
goUrlJS
(
obj
){
this
.
$router
.
push
({
name
:
'saleOrderSettlement'
,
query
:{
"id"
:
obj
.
Id
,
"branchId"
:
obj
.
RB_Branch_Id
,
blank
:
'y'
,
tab
:
'结算列表'
}
})
goUrlJS
(
obj
)
{
this
.
$router
.
push
({
name
:
"saleOrderSettlement"
,
query
:
{
id
:
obj
.
Id
,
branchId
:
obj
.
RB_Branch_Id
,
blank
:
"y"
,
tab
:
"结算列表"
}
});
},
getList
(){
// 获取列表数据
this
.
apipost
(
'dmc_get_visa_GetVisaProductList'
,
this
.
msg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
0
){
getList
()
{
// 获取列表数据
this
.
apipost
(
"dmc_get_visa_GetVisaProductList"
,
this
.
msg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
0
)
{
this
.
loading
=
false
;
this
.
dataList
=
[]
}
else
{
this
.
dataList
=
[];
}
else
{
this
.
dataList
=
res
.
data
.
data
.
pageData
;
this
.
total
=
res
.
data
.
data
.
count
;
this
.
loading
=
false
;
}
},
err
=>
{})
},
getDetail
(
obj
){
this
.
addMsg
.
Id
=
obj
.
Id
this
.
apipost
(
'dmc_get_visa_GetVisaProductInfo'
,{
Pid
:
obj
.
Id
},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
addMsg
.
VisaType
=
res
.
data
.
data
.
VisaType
.
toString
()
this
.
getVisaManagementList
()
this
.
addMsg
.
VisaManagementId
=
res
.
data
.
data
.
VisaManagementId
this
.
addMsg
.
Name
=
res
.
data
.
data
.
Name
err
=>
{}
);
},
getDetail
(
obj
)
{
this
.
addMsg
.
Id
=
obj
.
Id
;
this
.
apipost
(
"dmc_get_visa_GetVisaProductInfo"
,
{
Pid
:
obj
.
Id
},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
addMsg
.
VisaType
=
res
.
data
.
data
.
VisaType
.
toString
();
this
.
getVisaManagementList
();
this
.
addMsg
.
VisaManagementId
=
res
.
data
.
data
.
VisaManagementId
;
this
.
addMsg
.
Name
=
res
.
data
.
data
.
Name
;
this
.
addMsg
.
SendVisaDate
=
res
.
data
.
data
.
SendVisaDate
if
(
res
.
data
.
data
.
CostPrice
){
this
.
addMsg
.
CostPrice
=
res
.
data
.
data
.
CostPrice
.
toString
()
}
else
{
this
.
addMsg
.
CostPrice
=
''
this
.
addMsg
.
SendVisaDate
=
res
.
data
.
data
.
SendVisaDate
;
if
(
res
.
data
.
data
.
CostPrice
)
{
this
.
addMsg
.
CostPrice
=
res
.
data
.
data
.
CostPrice
.
toString
();
}
else
{
this
.
addMsg
.
CostPrice
=
""
;
}
this
.
addMsg
.
VisaPrice
=
res
.
data
.
data
.
VisaPrice
.
toString
()
this
.
addMsg
.
VisaB2CPrice
=
res
.
data
.
data
.
VisaB2CPrice
.
toString
()
this
.
addMsg
.
VisaPrice
=
res
.
data
.
data
.
VisaPrice
.
toString
();
this
.
addMsg
.
VisaB2CPrice
=
res
.
data
.
data
.
VisaB2CPrice
.
toString
();
// this.addMsg.PeopleNum=res.data.data.PeopleNum.toString()
this
.
addMsg
.
CommissionPrice
=
res
.
data
.
data
.
CommissionPrice
.
toString
()
this
.
addShow
=
true
;
}
else
{
console
.
log
(
res
.
data
.
message
)
this
.
addMsg
.
CommissionPrice
=
res
.
data
.
data
.
CommissionPrice
.
toString
();
this
.
addShow
=
true
;
}
else
{
console
.
log
(
res
.
data
.
message
);
}
},
err
=>
{})
},
updateVisaStatus
(
obj
){
this
.
addMsg
.
Id
=
obj
.
Id
this
.
apipost
(
'dmc_post_visa_SetVisaProductStatus'
,{
Pid
:
obj
.
Id
},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
addShow
=
false
this
.
getList
()
this
.
$message
.
success
(
res
.
data
.
message
)
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
)
err
=>
{}
);
},
updateVisaStatus
(
obj
)
{
this
.
addMsg
.
Id
=
obj
.
Id
;
this
.
apipost
(
"dmc_post_visa_SetVisaProductStatus"
,
{
Pid
:
obj
.
Id
},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
addShow
=
false
;
this
.
getList
();
this
.
$message
.
success
(
res
.
data
.
message
);
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
);
}
},
err
=>
{})
},
getEmployeeList
(){
// 获取人
this
.
apipost
(
'admin_get_GetEmployeeByUserDepartmentId'
,{},
res
=>
{
err
=>
{}
);
},
getEmployeeList
()
{
// 获取人
this
.
apipost
(
"admin_get_GetEmployeeByUserDepartmentId"
,
{},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
EmployeeList
=
res
.
data
.
data
;
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
)
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
);
}
},
err
=>
{})
},
saveVisa
(){
// 保存
this
.
$refs
[
'addMsg'
].
validate
((
valid
)
=>
{
err
=>
{}
);
},
saveVisa
()
{
// 保存
this
.
$refs
[
"addMsg"
].
validate
(
valid
=>
{
if
(
valid
)
{
this
.
addMsg
.
VisaManagementId
==
''
?
'0'
:
this
.
addMsg
.
VisaManagementId
this
.
apipost
(
'dmc_post_visa_SetVisaProduct'
,
this
.
addMsg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
){
this
.
addMsg
=
{
Id
:
0
,
Name
:
''
,
VisaType
:
''
,
SendVisaDate
:
''
,
VisaPrice
:
''
,
PeopleNum
:
'0'
,
CostPrice
:
''
,
CommissionPrice
:
''
,
}
this
.
$message
.
success
(
res
.
data
.
message
)
this
.
addShow
=
false
this
.
getList
()
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
)
this
.
addMsg
.
VisaManagementId
==
""
?
"0"
:
this
.
addMsg
.
VisaManagementId
;
this
.
apipost
(
"dmc_post_visa_SetVisaProduct"
,
this
.
addMsg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
addMsg
=
{
Id
:
0
,
Name
:
""
,
VisaType
:
""
,
SendVisaDate
:
""
,
VisaPrice
:
""
,
PeopleNum
:
"0"
,
CostPrice
:
""
,
CommissionPrice
:
""
};
this
.
$message
.
success
(
res
.
data
.
message
);
this
.
addShow
=
false
;
this
.
getList
();
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
);
}
},
err
=>
{})
},
err
=>
{}
);
}
else
{
return
false
;
}
});
},
cancelEdit
(){
// 取消新增
this
.
addShow
=
false
this
.
addMsg
=
{
Id
:
0
,
Name
:
''
,
VisaType
:
''
,
SendVisaDate
:
''
,
VisaPrice
:
''
,
PeopleNum
:
'0'
,
CostPrice
:
''
,
CommissionPrice
:
''
,
VisaManagementId
:
''
}
this
.
resetForm
(
'addMsg'
)
cancelEdit
()
{
// 取消新增
this
.
addShow
=
false
;
this
.
addMsg
=
{
Id
:
0
,
Name
:
""
,
VisaType
:
""
,
SendVisaDate
:
""
,
VisaPrice
:
""
,
PeopleNum
:
"0"
,
CostPrice
:
""
,
CommissionPrice
:
""
,
VisaManagementId
:
""
};
this
.
resetForm
(
"addMsg"
);
},
resetForm
(
formName
)
{
// 重置表单
resetForm
(
formName
)
{
// 重置表单
this
.
$refs
[
formName
].
resetFields
();
},
handleCurrentChange
(
val
)
{
this
.
msg
.
pageIndex
=
val
;
this
.
getList
();
}
},
},
mounted
(){
this
.
userId
=
this
.
getLocalStorage
().
EmployeeId
this
.
msg
.
BranchId
=
this
.
getLocalStorage
().
RB_Branch_id
.
toString
()
this
.
msg
.
ProductID
=
this
.
$route
.
query
.
VisaID
this
.
msg
.
isFinacial
=
this
.
$route
.
query
.
isFinacial
!=
undefined
?
this
.
$route
.
query
.
isFinacial
:
1
this
.
getList
()
this
.
getCompanyList
()
mounted
()
{
this
.
userId
=
this
.
getLocalStorage
().
EmployeeId
;
this
.
msg
.
BranchId
=
this
.
getLocalStorage
().
RB_Branch_id
.
toString
();
this
.
msg
.
ProductID
=
this
.
$route
.
query
.
VisaID
;
this
.
msg
.
isFinacial
=
this
.
$route
.
query
.
isFinacial
!=
undefined
?
this
.
$route
.
query
.
isFinacial
:
1
;
this
.
getList
();
this
.
getCompanyList
();
this
.
getEmployeeList
();
}
}
}
;
</
script
>
src/components/leaderPay2.vue
View file @
4ef1e612
...
...
@@ -31,20 +31,8 @@
text-align
:
left
;
padding
:
0
10px
;
}
.LeaderPrintDiv
.printBtn
{
color
:
#fff
;
padding
:
0
15px
;
height
:
30px
;
background
:
#E95252
;
border
:
1px
solid
#E95252
;
cursor
:
pointer
;
border-radius
:
15px
;
position
:
fixed
;
right
:
50px
;
top
:
30px
;
}
@media
print
{
.LeaderPrintDiv
.
printBtn
{
display
:
none
}
.LeaderPrintDiv
.
btnListDiv
{
display
:
none
}
}
.comTotal
{
text-align
:
left
;
...
...
@@ -58,6 +46,22 @@
width
:
1000px
;
margin
:
0
auto
;
}
.wLeader2
.el-textarea__inner
{
height
:
130px
;
}
.LeaderPrintDiv
.btnListDiv
{
margin
:
20px
auto
;
text-align
:
center
;
}
.LeaderPrintDiv
.leader2Btn
{
color
:
#fff
;
padding
:
0
15px
;
height
:
30px
;
background
:
#E95252
;
border
:
1px
solid
#E95252
;
cursor
:
pointer
;
border-radius
:
15px
;
}
</
style
>
<
template
>
...
...
@@ -65,10 +69,10 @@
<div
class=
"childDiv"
>
<table
border=
"0"
cellspacing=
'1'
class=
"leaderPayTable"
>
<tr>
<th
width=
"
8%
"
>
出发地
</th>
<th
width=
"
30%
"
>
行程名称
</th>
<th
width=
"1
5
%"
>
团号
</th>
<th
width=
"1
5
%"
>
出发时间
</th>
<th
width=
"
110
"
>
出发地
</th>
<th
width=
"
290
"
>
行程名称
</th>
<th
width=
"1
3
%"
>
团号
</th>
<th
width=
"1
3
%"
>
出发时间
</th>
<th
width=
"8%"
>
天数
</th>
<th
width=
"8%"
>
出团人数
</th>
<th
width=
"8%"
>
领队
</th>
...
...
@@ -115,15 +119,16 @@
</td>
</tr>
</template>
<tr
v-if=
"dataList.ScenicList.length>0"
>
<
!-- <
tr v-if="dataList.ScenicList.length>0">
<td class="comTotal" colspan="4">合计:{{totalScenicPrice}}</td>
</tr>
</tr>
-->
<tr
v-for=
"(item,index) in dataList.BusList"
>
<td
v-if=
"index==0"
:rowspan=
"dataList.BusList.length"
>
交通
</td>
<td>
<span
v-if=
'index==0'
>
接机
</span>
{{item.ParkExplain}}
<!-- <span v-if='index==0'>接机</span>
<span v-if='index!=0&&index!=dataList.BusList.length-1'>{{item.AirportPickUpStr}}</span>
<span
v-if=
'index==dataList.BusList.length-1'
>
送机
</span>
<span v-if='index==dataList.BusList.length-1'>送机</span>
-->
</td>
<td>
{{item.TotalPrice}} {{item.CurrencyStr}}
...
...
@@ -132,9 +137,9 @@
{{item.Remarks}}
</td>
</tr>
<tr
v-if=
"dataList.BusList.length>0"
>
<
!-- <
tr v-if="dataList.BusList.length>0">
<td class="comTotal" colspan="4">合计:{{totalTrafficPrice}}</td>
</tr>
</tr>
-->
<
template
v-for=
'(item,index) in dataList.DiningList'
>
<tr
class=
"splitP ScenicTr"
>
<td
v-if=
"index==0"
:rowspan=
"dataList.DiningList.length"
>
餐饮
</td>
...
...
@@ -155,9 +160,9 @@
</td>
</tr>
</template>
<tr
v-if=
"dataList.DiningList.length>0"
>
<
!-- <
tr v-if="dataList.DiningList.length>0">
<td class="comTotal" colspan="4">合计:{{totalDinnerPrice}}</td>
</tr>
</tr>
-->
<
template
v-for=
'(item,index) in dataList.HotelList'
>
<tr>
<td
v-if=
"index==0"
:rowspan=
"dataList.HotelList.length"
>
酒店
</td>
...
...
@@ -168,15 +173,62 @@
<td>
{{
item
.
Remarks
}}
</td>
</tr>
</
template
>
<tr
v-if=
"dataList.HotelList.length>0"
>
<
!-- <
tr v-if="dataList.HotelList.length>0">
<td class="comTotal" colspan="4">合计:{{totalHotelPrice}}</td>
</tr>
<tr>
<td colspan="4">总计:{{allTotal}}</td>
</tr>
</tr>
-->
</tbody>
</table>
<input
type=
"button"
class=
"printBtn"
value=
"打印"
@
click=
"printTable()"
>
<table
border=
"0"
cellspacing=
'1'
class=
"leaderPayTable"
>
<tr>
<th>
类型
</th>
<th>
金额
</th>
</tr>
<tr
v-show=
"totalList.PlanTotalPrice>0"
>
<td>
领取团款
</td>
<td>
{{totalList.PlanTotalPrice}}
</td>
</tr>
<tr
v-show=
"totalList.SelfPayingExpendTotalPrice>0"
>
<td>
自费支出
</td>
<td>
{{totalList.SelfPayingExpendTotalPrice}}
</td>
</tr>
<tr
v-show=
"totalList.SelfPayingIncomeTotalPrice>0"
>
<td>
自费收入
</td>
<td>
{{totalList.SelfPayingIncomeTotalPrice}}
</td>
</tr>
<tr
v-show=
"totalList.IncomeTotalPrice>0"
>
<td>
消费收入
</td>
<td>
{{totalList.IncomeTotalPrice}}
</td>
</tr>
<tr
v-show=
"(totalList.ExpendTotalPrice-totalScenicPrice-totalTrafficPrice-totalDinnerPrice-totalHotelPrice)>0"
>
<td>
其他费用
</td>
<td>
{{totalList.ExpendTotalPrice-totalScenicPrice-totalTrafficPrice-totalDinnerPrice-totalHotelPrice}}
</td>
</tr>
<tr
v-show=
"totalScenicPrice>0"
>
<td>
景点门票
</td>
<td>
{{totalScenicPrice}}
</td>
</tr>
<tr
v-show=
"totalTrafficPrice>0"
>
<td>
交通
</td>
<td>
{{totalTrafficPrice}}
</td>
</tr>
<tr
v-show=
"totalDinnerPrice>0"
>
<td>
餐饮
</td>
<td>
{{totalDinnerPrice}}
</td>
</tr>
<tr
v-show=
"totalHotelPrice>0"
>
<td>
酒店
</td>
<td>
{{totalHotelPrice}}
</td>
</tr>
</table>
<el-input
type=
"textarea"
v-if=
"isShowRemark"
placeholder=
"请输入备注信息"
v-model=
"dataList.LeaderApply.AccountForReason"
class=
"wLeader2"
/>
<div
class=
"btnListDiv"
>
<input
type=
"button"
class=
"leader2Btn"
@
click=
"AuditOrder(2)"
value=
"审核通过"
/>
<input
type=
"button"
class=
"leader2Btn"
@
click=
"AuditOrder(1)"
value=
"审核不通过"
/>
<input
type=
"button"
class=
"leader2Btn"
value=
"打印"
@
click=
"printTable()"
>
</div>
</div>
</div>
</template>
...
...
@@ -200,8 +252,10 @@ export default {
totalHotelPrice
:
0
,
//合计交通
totalTrafficPrice
:
0
,
allTotal
:
0
,
totalList
:[],
isShowRemark
:
false
,
}
},
methods
:
{
...
...
@@ -225,6 +279,7 @@ export default {
this
.
totalDinnerPrice
+=
parseFloat
(
x
.
DiningSummaryList
[
0
].
TotalPrice
);
})
this
.
allTotal
=
(
this
.
totalHotelPrice
+
this
.
totalTrafficPrice
+
this
.
totalScenicPrice
+
this
.
totalDinnerPrice
).
toFixed
(
2
);
this
.
isShowRemark
=
true
;
}
else
{
this
.
Error
(
res
.
data
.
message
)
}
...
...
@@ -253,6 +308,35 @@ export default {
//打印
printTable
(){
window
.
print
();
},
//获取总额
getTotalMoney
(){
this
.
apipost
(
'dmcstatistics_post_GetTotalPrice'
,
{
TCIDs
:
this
.
$route
.
query
.
id
},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
totalList
=
res
.
data
.
data
;
}
else
{
this
.
Error
(
res
.
data
.
message
)
}
},
err
=>
{})
},
//审核
AuditOrder
(
type
){
if
(
type
==
1
&&
(
this
.
dataList
.
LeaderApply
.
AccountForReason
==
null
||
this
.
dataList
.
LeaderApply
.
AccountForReason
==
''
)){
this
.
Error
(
'请填写备注信息'
);
return
;
}
this
.
dataList
.
LeaderApply
.
Status
=
type
;
let
msg
=
this
.
dataList
.
LeaderApply
;
this
.
apipost
(
'dmcstatistics_post_AuditLeaderapply'
,
msg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
Success
(
res
.
data
.
message
);
}
else
{
this
.
Error
(
res
.
data
.
message
);
}
},
err
=>
{})
}
},
created
()
{
...
...
@@ -263,6 +347,7 @@ export default {
this
.
msg
.
TCIDs
=
this
.
$route
.
query
.
id
;
this
.
getNav
();
this
.
getList
();
this
.
getTotalMoney
();
},
}
</
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