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
efe33787
Commit
efe33787
authored
Jun 21, 2019
by
黄奎
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of
http://gitlab.oytour.com/luochao/superman
parents
093944b0
c31ca7eb
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
1557 additions
and
316 deletions
+1557
-316
addPassenger.vue
src/components/SalesModule/addPassenger.vue
+1
-1
groupTourOrder.vue
src/components/SalesModule/groupTourOrder.vue
+1
-1
groupTourOrderByTuan.vue
src/components/SalesModule/groupTourOrderByTuan.vue
+2
-2
groupTourOrderByTuanOne.vue
src/components/SalesModule/groupTourOrderByTuanOne.vue
+2
-2
groupTourOrderOne.vue
src/components/SalesModule/groupTourOrderOne.vue
+1
-1
ConfirmationAdui.vue
src/components/administrative/ConfirmationAdui.vue
+972
-0
confirmationOrder.vue
src/components/confirmationOrder.vue
+569
-308
config.js
src/router/config.js
+9
-1
No files found.
src/components/SalesModule/addPassenger.vue
View file @
efe33787
...
@@ -1522,7 +1522,7 @@
...
@@ -1522,7 +1522,7 @@
}
}
},
},
savePassenger
(
type
)
{
savePassenger
(
type
)
{
if
((
this
.
LineId
===
14
||
this
.
LineId
===
2
)
&&
(
this
.
addMsg
.
IdCard
===
''
||
this
.
addMsg
.
IdCard
.
length
<
18
)
)
{
if
((
this
.
LineId
===
14
||
this
.
LineId
===
2
)
&&
this
.
addMsg
.
IdCard
===
''
)
{
return
this
.
$message
.
error
(
'请填写身份证号码!'
);
return
this
.
$message
.
error
(
'请填写身份证号码!'
);
}
}
this
.
addMsg
.
EconomicCapabilityList
=
[];
this
.
addMsg
.
EconomicCapabilityList
=
[];
...
...
src/components/SalesModule/groupTourOrder.vue
View file @
efe33787
...
@@ -1703,7 +1703,7 @@
...
@@ -1703,7 +1703,7 @@
<el-tooltip
effect=
"dark"
content=
"更多"
placement=
"top-start"
style=
"float:left"
>
<el-tooltip
effect=
"dark"
content=
"更多"
placement=
"top-start"
style=
"float:left"
>
<el-popover
width=
'100'
trigger=
"hover"
>
<el-popover
width=
'100'
trigger=
"hover"
>
<div
class=
"groupTourOrder_more"
>
<div
class=
"groupTourOrder_more"
>
<div
@
click=
"goUrlT('confirmationOrder',item.orderId)"
>
确认函
</div>
<div
@
click=
"goUrlT('confirmationOrder',item.orderId)"
>
确认函
{{
item
.
operationState
===
2
?
'(拒绝)'
:
item
.
operationState
===
1
?
'(通过)'
:
item
.
operationState
===
0
?
'(待审核)'
:
''
}}
</div>
<div
v-if=
"userId==1"
@
click=
"getSalerInfo(item)"
>
修改业务员
</div>
<div
v-if=
"userId==1"
@
click=
"getSalerInfo(item)"
>
修改业务员
</div>
<div
v-if=
"item.isGuestOk=='1'&&item.outNotice==1"
@
click=
"toTrip(item)"
>
出团通知书
<span
<div
v-if=
"item.isGuestOk=='1'&&item.outNotice==1"
@
click=
"toTrip(item)"
>
出团通知书
<span
v-if=
"item.outNotice==1"
>
(OK)
</span><span
v-else
>
(暂定)
</span></div>
v-if=
"item.outNotice==1"
>
(OK)
</span><span
v-else
>
(暂定)
</span></div>
...
...
src/components/SalesModule/groupTourOrderByTuan.vue
View file @
efe33787
...
@@ -1717,7 +1717,7 @@
...
@@ -1717,7 +1717,7 @@
<el-tooltip
effect=
"dark"
content=
"更多"
placement=
"top-start"
style=
"float:left"
>
<el-tooltip
effect=
"dark"
content=
"更多"
placement=
"top-start"
style=
"float:left"
>
<el-popover
width=
'100'
trigger=
"hover"
>
<el-popover
width=
'100'
trigger=
"hover"
>
<div
class=
"groupTourOrder_more"
>
<div
class=
"groupTourOrder_more"
>
<div
@
click=
"goUrlT('confirmationOrder',item.orderId)"
>
确认函
</div>
<div
@
click=
"goUrlT('confirmationOrder',item.orderId)"
>
确认函
{{item.operationState === 2 ? '(拒绝)' : item.operationState === 1 ? '(通过)' : item.operationState === 0 ? '(待审核)' : ''}}
</div>
<div
v-if=
"userId==1"
@
click=
"getSalerInfo(item)"
>
修改业务员
</div>
<div
v-if=
"userId==1"
@
click=
"getSalerInfo(item)"
>
修改业务员
</div>
<div
v-if=
"item.isGuestOk=='1'&&item.outNotice==1"
@
click=
"toTrip(item)"
>
出团通知书
<span
v-if=
"item.outNotice==1"
>
(OK)
</span><span
v-else
>
(暂定)
</span></div>
<div
v-if=
"item.isGuestOk=='1'&&item.outNotice==1"
@
click=
"toTrip(item)"
>
出团通知书
<span
v-if=
"item.outNotice==1"
>
(OK)
</span><span
v-else
>
(暂定)
</span></div>
<div
v-if=
"item.orderState!='4'"
@
click=
"goUrlP('旅客名单','passengerSaleList',item)"
>
旅客名单
</div>
<div
v-if=
"item.orderState!='4'"
@
click=
"goUrlP('旅客名单','passengerSaleList',item)"
>
旅客名单
</div>
...
@@ -2013,7 +2013,7 @@
...
@@ -2013,7 +2013,7 @@
<el-tooltip
effect=
"dark"
content=
"更多"
placement=
"top-start"
style=
"float:left"
>
<el-tooltip
effect=
"dark"
content=
"更多"
placement=
"top-start"
style=
"float:left"
>
<el-popover
width=
'100'
trigger=
"hover"
>
<el-popover
width=
'100'
trigger=
"hover"
>
<div
class=
"groupTourOrder_more"
>
<div
class=
"groupTourOrder_more"
>
<div
@
click=
"goUrlT('confirmationOrder',item.orderId)"
>
确
认函
</div>
<div
@
click=
"goUrlT('confirmationOrder',item.orderId)"
>
确
{{item.operationState}}认函{{item.operationState === 2 ? '(拒绝)' : item.operationState === 1 ? '(通过)' : '(待审核)'}}
</div>
<div
v-if=
"userId==1"
@
click=
"getSalerInfo(item)"
>
修改业务员
</div>
<div
v-if=
"userId==1"
@
click=
"getSalerInfo(item)"
>
修改业务员
</div>
<div
v-if=
"item.isGuestOk=='1'&&item.outNotice==1"
@
click=
"toTrip(item)"
>
出团通知书
<span
v-if=
"item.outNotice==1"
>
(OK)
</span><span
v-else
>
(暂定)
</span></div>
<div
v-if=
"item.isGuestOk=='1'&&item.outNotice==1"
@
click=
"toTrip(item)"
>
出团通知书
<span
v-if=
"item.outNotice==1"
>
(OK)
</span><span
v-else
>
(暂定)
</span></div>
<div
v-if=
"item.orderState!='4'"
@
click=
"goUrlP('旅客名单','passengerSaleList',item)"
>
旅客名单
</div>
<div
v-if=
"item.orderState!='4'"
@
click=
"goUrlP('旅客名单','passengerSaleList',item)"
>
旅客名单
</div>
...
...
src/components/SalesModule/groupTourOrderByTuanOne.vue
View file @
efe33787
...
@@ -1731,7 +1731,7 @@
...
@@ -1731,7 +1731,7 @@
<el-tooltip
effect=
"dark"
content=
"更多"
placement=
"top-start"
style=
"float:left"
>
<el-tooltip
effect=
"dark"
content=
"更多"
placement=
"top-start"
style=
"float:left"
>
<el-popover
width=
'100'
trigger=
"hover"
>
<el-popover
width=
'100'
trigger=
"hover"
>
<div
class=
"groupTourOrder_more"
>
<div
class=
"groupTourOrder_more"
>
<div
@
click=
"goUrlT('confirmationOrder',item.orderId)"
>
确认函
</div>
<div
@
click=
"goUrlT('confirmationOrder',item.orderId)"
>
确认函
{{item.operationState === 2 ? '(拒绝)' : item.operationState === 1 ? '(通过)' : item.operationState === 0 ? '(待审核)' : ''}}
</div>
<div
v-if=
"userId==1"
@
click=
"getSalerInfo(item)"
>
修改业务员
</div>
<div
v-if=
"userId==1"
@
click=
"getSalerInfo(item)"
>
修改业务员
</div>
<div
v-if=
"item.isGuestOk=='1'&&item.outNotice==1"
@
click=
"toTrip(item)"
>
出团通知书
<span
v-if=
"item.outNotice==1"
>
(OK)
</span><span
v-else
>
(暂定)
</span></div>
<div
v-if=
"item.isGuestOk=='1'&&item.outNotice==1"
@
click=
"toTrip(item)"
>
出团通知书
<span
v-if=
"item.outNotice==1"
>
(OK)
</span><span
v-else
>
(暂定)
</span></div>
<div
v-if=
"item.orderState!='4'"
@
click=
"goUrlP('旅客名单','passengerSaleList',item)"
>
旅客名单
</div>
<div
v-if=
"item.orderState!='4'"
@
click=
"goUrlP('旅客名单','passengerSaleList',item)"
>
旅客名单
</div>
...
@@ -2024,7 +2024,7 @@
...
@@ -2024,7 +2024,7 @@
<el-tooltip
effect=
"dark"
content=
"更多"
placement=
"top-start"
style=
"float:left"
>
<el-tooltip
effect=
"dark"
content=
"更多"
placement=
"top-start"
style=
"float:left"
>
<el-popover
width=
'100'
trigger=
"hover"
>
<el-popover
width=
'100'
trigger=
"hover"
>
<div
class=
"groupTourOrder_more"
>
<div
class=
"groupTourOrder_more"
>
<div
@
click=
"goUrlT('confirmationOrder',item.orderId)"
>
确认函
</div>
<div
@
click=
"goUrlT('confirmationOrder',item.orderId)"
>
确认函
{{item.operationState === 2 ? '(拒绝)' : item.operationState === 1 ? '(通过)' : item.operationState === 0 ? '(待审核)' : ''}}
</div>
<div
v-if=
"userId==1"
@
click=
"getSalerInfo(item)"
>
修改业务员
</div>
<div
v-if=
"userId==1"
@
click=
"getSalerInfo(item)"
>
修改业务员
</div>
<div
v-if=
"item.isGuestOk=='1'&&item.outNotice==1"
@
click=
"toTrip(item)"
>
出团通知书
<span
v-if=
"item.outNotice==1"
>
(OK)
</span><span
v-else
>
(暂定)
</span></div>
<div
v-if=
"item.isGuestOk=='1'&&item.outNotice==1"
@
click=
"toTrip(item)"
>
出团通知书
<span
v-if=
"item.outNotice==1"
>
(OK)
</span><span
v-else
>
(暂定)
</span></div>
<div
v-if=
"item.orderState!='4'"
@
click=
"goUrlP('旅客名单','passengerSaleList',item)"
>
旅客名单
</div>
<div
v-if=
"item.orderState!='4'"
@
click=
"goUrlP('旅客名单','passengerSaleList',item)"
>
旅客名单
</div>
...
...
src/components/SalesModule/groupTourOrderOne.vue
View file @
efe33787
...
@@ -1696,7 +1696,7 @@
...
@@ -1696,7 +1696,7 @@
<el-tooltip
effect=
"dark"
content=
"更多"
placement=
"top-start"
style=
"float:left"
>
<el-tooltip
effect=
"dark"
content=
"更多"
placement=
"top-start"
style=
"float:left"
>
<el-popover
width=
'100'
trigger=
"hover"
>
<el-popover
width=
'100'
trigger=
"hover"
>
<div
class=
"groupTourOrder_more"
>
<div
class=
"groupTourOrder_more"
>
<div
@
click=
"goUrlT('confirmationOrder',item.orderId)"
>
确认函
</div>
<div
@
click=
"goUrlT('confirmationOrder',item.orderId)"
>
确认函
{{
item
.
operationState
===
2
?
'(拒绝)'
:
item
.
operationState
===
1
?
'(通过)'
:
item
.
operationState
===
0
?
'(待审核)'
:
''
}}
</div>
<div
v-if=
"userId==1"
@
click=
"getSalerInfo(item)"
>
修改业务员
</div>
<div
v-if=
"userId==1"
@
click=
"getSalerInfo(item)"
>
修改业务员
</div>
<div
v-if=
"item.isGuestOk=='1'&&item.outNotice==1"
@
click=
"toTrip(item)"
>
出团通知书
<span
<div
v-if=
"item.isGuestOk=='1'&&item.outNotice==1"
@
click=
"toTrip(item)"
>
出团通知书
<span
v-if=
"item.outNotice==1"
>
(OK)
</span><span
v-else
>
(暂定)
</span></div>
v-if=
"item.outNotice==1"
>
(OK)
</span><span
v-else
>
(暂定)
</span></div>
...
...
src/components/administrative/ConfirmationAdui.vue
0 → 100644
View file @
efe33787
<
template
>
<div
class=
"flexOne groupts ConfirmationAdui"
>
<div
class=
"enrollTotalSearch"
>
<ul>
<li><span><em>
线路
</em>
<el-select
class=
'w200'
v-model=
"msg.LineId"
filterable
:placeholder=
"$t('pub.pleaseSel')"
>
<el-option
label=
"不限"
value=
'-1'
></el-option>
<el-option
v-for=
"item in LineList"
:label=
'item.LineName'
:value=
'item.LineID'
:key=
'item.LineID'
>
</el-option>
</el-select>
</span>
</li>
<li><span><em>
公司
</em>
<el-select
class=
'w200'
v-model=
"msg.BranchId"
filterable
:placeholder=
"$t('pub.pleaseSel')"
@
change=
'linkageDepartment()'
>
<el-option
label=
"不限"
value=
'-1'
></el-option>
<el-option
v-for=
"item in companyList"
:label=
'item.BName'
:value=
'item.Id'
:key=
'item.Id'
>
</el-option>
</el-select>
</span>
</li>
<li
v-show=
"!isOwn"
>
<span><em
class=
"fl"
style=
"margin-top: 10px!important;"
>
部门选择
</em>
<treeselect
class=
'w200 fl'
:options=
"departmentList"
v-model=
"msg.RB_Department_Id"
placeholder=
"不限"
:normalizer=
"normalizer"
@
select=
'linkageEmployeeMsg'
/>
</span>
</li>
<li><span><em>
参团类型
</em>
<el-select
class=
'w200'
v-model=
"msg.GroupType"
filterable
:placeholder=
"$t('pub.pleaseSel')"
>
<el-option
label=
"不限"
value=
'-1'
></el-option>
<el-option
v-for=
"item in ctlxList"
:key=
'item.Id'
:label=
'item.Name'
:value=
'item.Id'
></el-option>
</el-select>
</span>
</li>
<li>
<span><em>
团号
</em></span>
<el-input
class=
'w200'
v-model=
'msg.TCNUM'
></el-input>
</li>
<li
v-show=
"!isOwn"
>
<span><em>
人员选择
</em></span>
<el-select
class=
'w200'
v-model=
"msg.CreateBy"
filterable
:placeholder=
"$t('pub.pleaseSel')"
>
<el-option
label=
'不限'
value=
'-1'
></el-option>
<el-option
v-for=
'item in employeeList'
:label=
'item.name'
:value=
'item.empId'
:key=
'item.empId'
>
</el-option>
</el-select>
</li>
<li>
<span><em>
订单号
</em></span>
<el-input
class=
'w200'
v-model=
'msg.tempOrderId'
></el-input>
</li>
<li>
<span><em>
订单状态
</em></span>
<el-select
v-model=
'msg.OrderState'
filterable
:placeholder=
"$t('pub.pleaseSel')"
class=
'w200'
>
<el-option
label=
"不限"
value=
'-1'
></el-option>
<el-option
v-for=
"item in ddztList"
:label=
'item.Name'
:value=
'item.Id'
:key=
'item.Id'
>
</el-option>
</el-select>
</li>
<li>
<span><em>
订单类型
</em></span>
<el-select
v-model=
'msg.IsOneDay'
filterable
:placeholder=
"$t('pub.pleaseSel')"
class=
'w200'
>
<el-option
label=
"不限"
value=
'-1'
></el-option>
<el-option
label=
"跟团游订单"
:value=
'0'
></el-option>
<el-option
label=
"一日游订单"
:value=
'1'
></el-option>
</el-select>
</li>
<li><span><em>
发团日期
</em>
<el-date-picker
v-model=
'msg.QStartDate'
@
change=
"dataDuiQ()"
class=
'w135'
value-format=
"yyyy-MM-dd"
type=
"date"
></el-date-picker>
-
<el-date-picker
v-model=
'msg.QEndDate'
@
change=
"dataDuiQ()"
class=
'w135'
value-format=
"yyyy-MM-dd"
type=
"date"
></el-date-picker>
</span>
</li>
<li><span><em>
报名日期
</em>
<el-date-picker
v-model=
'msg.CStartDate'
@
change=
"dataDui()"
class=
'w135'
value-format=
"yyyy-MM-dd"
type=
"date"
></el-date-picker>
-
<el-date-picker
v-model=
'msg.CEndDate'
@
change=
"dataDui()"
class=
'w135'
value-format=
"yyyy-MM-dd"
type=
"date"
></el-date-picker>
</span>
</li>
<li>
<input
type=
"button"
class=
"hollowFixedBtn"
value=
"查询"
@
click=
"getList();resetPageIndex()"
/>
</li>
</ul>
</div>
<!-- 表格 -->
<div
style=
"clear: both; width: 100%;height: 20px;"
></div>
<table
class=
"enrollTotalSearchTable"
border=
"0"
cellspacing=
"0"
cellpadding=
"0"
v-loading=
'loading'
>
<tr>
<th
width=
"130"
>
单号
&
团号
</th>
<th
width=
"60"
>
客户信息
</th>
<th
width=
"70"
>
类型
</th>
<th
width=
"180"
>
系列
&
线路
</th>
<th
width=
"100"
>
人数/机位数
</th>
<th
width=
"80"
>
单价
</th>
<th
width=
"80"
>
成交单价
</th>
<th
width=
"80"
>
应收总额
</th>
<th
width=
"80"
>
实收
</th>
<th
width=
"80"
>
优惠
</th>
<th
width=
"60"
>
小费
</th>
<th
width=
"80"
>
退款
</th>
<th
width=
"80"
>
平台税金
</th>
<th
width=
"80"
>
平台在途
</th>
<th
width=
"80"
>
待收金额
</th>
<th
width=
"60"
>
状态
</th>
<th
width=
"140"
>
操作
</th>
</tr>
<tr>
<td
v-show=
"list.length==0"
colspan=
"17"
align=
"center"
>
暂无数据
</td>
</tr>
<tbody
v-for=
"(item,index) in list"
:key=
"index"
>
<tr>
<td
rowspan=
"3"
>
<p
v-if=
"item.isChargeLossOrders==1"
style=
"color:red"
>
损
</p>
<p
class=
"fbold over_ellipsis"
style=
"width: 100%;cursor:pointer;"
:title=
"item.orderId"
@
click=
"goUrlX('团报名清单', item.isOneDay === 1 ? 'groupTourOrderByTuanOne' : 'groupTourOrderByTuan',item.tcid,item.tcnum)"
>
{{
item
.
orderId
}}
<el-tooltip
class=
"item"
effect=
"dark"
content=
"通过小程序确认单报名"
placement=
"top"
v-show=
"item.orderForm==4"
>
<i
class=
"iconfont icon-xiaochengxu"
style=
"font-size:22px;color:red;"
></i></el-tooltip>
</p>
<p
class=
"fz12 over_ellipsis"
style=
"width: 100%;text-decoration:underline;cursor:pointer;"
:title=
"item.alName"
@
click=
"goUrlX('产品查询', item.isOneDay === 1 ? 'productQueryOne' : 'productQuery',item.tcid,item.tcnum)"
>
{{
item
.
tcnum
}}
</p>
<p
class=
"fz12 over_ellipsis"
style=
"width: 100%;"
>
{{
item
.
createBy
}}
<span
v-if=
"item.leaveStr!=''"
style=
"color:red"
>
(
{{
item
.
leaveStr
}}
)
</span></p>
<p
class=
"fz12 over_ellipsis"
style=
"width: 100%;"
>
{{
item
.
commissionSPeopleName
==
'无'
?
''
:
item
.
commissionSPeopleName
}}
</p>
<p>
发团:
{{
item
.
startDate
}}
</p>
<p
v-if=
"item.tradeWay ==1"
>
{{
item
.
platformOrder
}}
</p>
<p
v-if=
'item.commissionMoney'
style=
"color:red"
>
提成:
{{
item
.
commissionMoney
}}
</p>
<p
v-else-if=
"item.latestCommissionMoney"
style=
"color:red"
>
提成:
{{
item
.
latestCommissionMoney
}}
</p>
<div
v-if=
"item.extraRewardMoney!=null&&item.extraRewardMoney>0"
>
奖励金额:
<span
style=
"color:#e95252"
>
{{
item
.
extraRewardMoney
}}
</span></div>
<div
v-if=
"item.extraDeductMoney!=null&&item.extraDeductMoney>0"
>
扣除金额:
<span
style=
"color:#e95252"
>
{{
item
.
extraDeductMoney
}}
</span></div>
</td>
<td>
<p
class=
"over_ellipsis"
style=
"width: 150px;"
:title=
"item.contactName"
>
{{
item
.
contactName
}}
</p>
<p>
{{
item
.
contactMobile
}}
</p>
</td>
<td>
<p
class=
"fz12 over_ellipsis"
style=
"width: 100%;"
>
{{
item
.
orderTypeName
}}
</p>
</td>
<td
class=
"fz12"
>
<p
style=
"max-width: 160px;display: block;"
class=
"over_ellipsis"
:title=
"item.lineName"
>
<span>
{{
item
.
lineName
}}
</span>
</p>
<p
style=
"max-width: 160px;display: block;"
class=
"over_ellipsis"
:title=
"item.ltName"
>
{{
item
.
ltName
}}
</p>
</td>
<td>
{{
item
.
guestNum
}}
/
{{
item
.
ySeatNum
>
0
?
item
.
ySeatNum
+
'Y '
:
''
}}{{
item
.
eSeatNum
>
0
?
item
.
eSeatNum
+
'E '
:
''
}}{{
item
.
fSeatNum
>
0
?
item
.
fSeatNum
+
'F '
:
''
}}
<br/>
<span
v-if=
"item.refuseVisaNum>0"
style=
"color:red"
>
(拒签
{{
item
.
refuseVisaNum
}}
人)
</span>
</td>
<td
style=
"color:#FF9C00"
>
{{
item
.
tC_Price
}}
</td>
<td
style=
"color:#FF9C00"
>
¥
{{
item
.
unit_Price
}}
</td>
<td>
<p
style=
"color:#FF9C00"
>
¥
{{
item
.
preferPrice
}}
</p>
</td>
<td>
<span
v-if=
'item.isEnd==0'
style=
"cursor: pointer;"
>
{{
item
.
income
}}
</span>
<span
v-if=
'item.isEnd!=0'
style=
"cursor: pointer;color: #e95252;"
>
{{
item
.
income
}}
</span>
</td>
<!-- 优惠 -->
<td>
<el-popover
style=
'padding: 0;'
width=
"600"
trigger=
"click"
>
<div
class=
"personNolayer"
>
<table
border=
"0"
cellspacing=
"1"
cellpadding=
"1"
>
<tr>
<th>
优惠券名称
</th>
<th>
优惠券类型
</th>
<th>
抵扣金额/折扣
</th>
<th>
使用条件
</th>
<th>
获取方式
</th>
<th>
获取日期
</th>
</tr>
<tr
v-if=
'item.couponAllotList.length>0'
v-for=
"(item2,index2) in item.couponAllotList"
:key=
"index2"
>
<td>
{{
item2
.
couponsName
}}
</td>
<td>
<span
v-if=
"item2.couponsType==1"
>
抵用券
</span>
<span
v-if=
"item2.couponsType==2"
>
折扣卷
</span>
</td>
<td>
{{
item2
.
denomination
}}
</td>
<td>
满
{{
item2
.
useCondition
}}
可用
</td>
<td>
<span
v-if=
"item2.accessType==1"
>
抽奖
</span>
<span
v-else
></span>
</td>
<td>
{{
item2
.
acessDate
}}
</td>
</tr>
<tr
v-if=
'item.couponAllotList.length==0'
>
<td
colspan=
"6"
align=
"center"
>
暂无数据
</td>
</tr>
</table>
</div>
<span
style=
"cursor: pointer;color: #e95252;"
slot=
"reference"
>
{{
moneyFormat
(
item
.
discountMoney
)
}}
</span>
</el-popover>
</td>
<td
v-if=
"item.tipMoney"
>
{{
item
.
tipMoney
}}
</td>
<td
v-else
>
0.00
</td>
<td>
{{
item
.
refund
}}
</td>
<td>
{{
item
.
platformTax
}}
</td>
<td>
{{
item
.
zaiTuMoney
}}
</td>
<td><span
:class=
"
{color_red_order:item.dueInMoney!==item.preferPrice}">
{{
item
.
dueInMoney
}}
</span></td>
<td
v-if=
"item.isChargeLossOrders==1"
class=
"fz12"
style=
"color: #e95252"
>
收损
</td>
<td
v-else
class=
"fz12"
:style=
"item.orderState===3?'color: #e95252;':''"
>
{{
item
.
statsstr
}}
</td>
<td
class=
"_icon_btn"
style=
" border-bottom: 1px solid #cccccc;"
>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"通过"
placement=
"top"
>
<i
class=
"iconfont icon-duigou"
@
click=
"UpdateOrderConfirmation(1, item.orderId)"
></i>
</el-tooltip>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"拒绝"
placement=
"top"
>
<i
class=
"iconfont icon-quxiao1"
@
click=
"UpdateOrderConfirmation(2, item.orderId)"
></i>
</el-tooltip>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"查看"
placement=
"top"
>
<i
class=
"iconfont icon-sousuo"
@
click=
"goUrl('confirmationOrder', item.orderId)"
></i>
</el-tooltip>
</td>
</tr>
<tr
style=
"height:20px"
>
<td
colspan=
"15"
class=
"RL_Order"
style=
"height:20px"
>
<span
style=
"font-size: 14px;color: #333333"
>
名单:
</span>
<span
v-for=
"(childItem) in item.guestList"
style=
"font-size: 14px;color: blue"
>
{{
childItem
.
userName
}}
</span>
<!--
<span
v-else
>
暂无名单
</span>
-->
<span
style=
"display: block;font-size: 14px;color: #333333"
>
房间信息:
{{
item
.
orderGuestHouseStr
}}
</span>
</td>
</tr>
<tr>
<td
colspan=
"3"
class=
"groupTourOrder_remarks"
style=
"height: 40px;"
>
<div>
<div><span>
备注:
</span>
<span
v-if=
"item.tsIdList.length>0"
>
投诉单号:
<a
class=
"underline"
v-for=
"ts in item.tsIdList"
href=
"javascript:void(0);"
@
click=
"goUrlTS('ComplaintsDetail',ts,item.orderId,'投诉详情')"
>
{{
ts
}}
</a>
;
</span>
<p><span
v-if=
'item.clientSource==1&&item.brandName!=""'
>
{{
item
.
brandName
}}
订单
{{
item
.
platformOrder
}}
;
</span>
{{
item
.
remarks
}}
</p>
</div>
<div>
<span>
{{
item
.
remarksName
}}
 
{{
item
.
rematksTime
}}
</span>
<el-popover
width=
"600"
placement=
"bottom-end"
trigger=
"click"
>
<div
class=
"groupTourOrder_remarks_popover"
>
<div>
历史备注
</div>
<p
v-if=
"item.remarksList.length !== 0"
v-for=
"(item2, index2) in item.remarksList"
:key=
"index2"
>
<span>
{{
item2
.
remarks
}}
</span>
<span>
{{
item2
.
createByName
}}
<span
style=
"color: #666666;"
>
{{
item2
.
createDate
}}
</span></span>
</p>
<span
v-if=
"item.remarksList.length === 0"
>
暂无数据
</span>
</div>
<el-button
slot=
"reference"
icon=
"iconfont icon-gengduo"
style=
"padding:0px;border:none;background-color:transparent;"
class=
"groupTourOrder_remarks_btn"
></el-button>
</el-popover>
</div>
</div>
</td>
<td
colspan=
"4"
class=
"groupTourOrder_remarks"
style=
"height: 40px;"
>
<div>
<div>
<span>
OP备注:
</span>
<p>
{{
item
.
oP_Remarks
?
item
.
oP_Remarks
:
'无'
}}
</p>
</div>
</div>
</td>
<td
colspan=
"9"
class=
"groupTourOrder_tickets"
style=
"height: 40px;cursor: pointer;"
>
<div
@
click=
"goUrlSFD('SalesFinancialDetail', '销售财务单据', item)"
>
<div>
收款单据:
</div>
<div>
<span
v-for=
"(item2,index2) in item.financeList"
:key=
"index2"
>
<span
v-if=
"item2.colorState===1"
class=
"groupTourOrder_tickets_blue"
>
{{
item2
.
frID
}}
</span>
<span
v-else-if=
"item2.colorState===2"
class=
"groupTourOrder_tickets_green"
>
{{
item2
.
frID
}}
</span>
<span
v-else-if=
"item2.colorState===3"
class=
"groupTourOrder_tickets_red"
>
{{
item2
.
frID
}}
</span>
<span
v-else-if=
"item2.colorState===4"
class=
"groupTourOrder_tickets_black"
>
{{
item2
.
frID
}}
</span>
</span>
<span
v-if=
"item.financeList.length===0"
style=
"cursor: default;"
>
暂无数据
</span>
</div>
</div>
<div
@
click=
"goUrlSFD('SalesFinancialDetail', '销售财务单据', item)"
>
<div>
付款单据:
</div>
<div>
<span
v-for=
"(item2,index2) in item.refundFinanceList"
:key=
"index2"
>
<span
v-if=
"item2.colorState===1"
class=
"groupTourOrder_tickets_blue"
>
{{
item2
.
frID
}}
</span>
<span
v-else-if=
"item2.colorState===2"
class=
"groupTourOrder_tickets_green"
>
{{
item2
.
frID
}}
</span>
<span
v-else-if=
"item2.colorState===3"
class=
"groupTourOrder_tickets_red"
>
{{
item2
.
frID
}}
</span>
<span
v-else-if=
"item2.colorState===4"
class=
"groupTourOrder_tickets_black"
>
{{
item2
.
frID
}}
</span>
</span>
<span
v-if=
"item.financeList.length===0"
style=
"cursor: default;"
>
暂无数据
</span>
</div>
</div>
<div>
<div>
发票单据:
</div>
<div>
<span
v-for=
"(item2,index2) in item.invoiceApplyList"
:key=
"index2"
>
<span
v-if=
"item2.invoiceApplyState === 6"
class=
"groupTourOrder_tickets_blue"
@
click=
"goIisDetail(item2.id)"
>
{{
item2
.
id
}}
</span>
<span
v-else-if=
"item2.invoiceApplyState === 1 || item2.invoiceApplyState === 3 || item2.invoiceApplyState === 6"
class=
"groupTourOrder_tickets_green"
@
click=
"goIisDetail(item2.id)"
>
{{
item2
.
id
}}
</span>
<span
v-else-if=
"item2.invoiceApplyState === 5 || item2.invoiceApplyState === 4 "
class=
"groupTourOrder_tickets_red"
@
click=
"goIisDetail(item2.id)"
>
{{
item2
.
id
}}
</span>
<span
v-else-if=
"item2.invoiceApplyState === 2"
class=
"groupTourOrder_tickets_black"
@
click=
"goIisDetail(item2.id)"
>
{{
item2
.
id
}}
</span>
</span>
<span
v-if=
"item.invoiceApplyList.length===0"
style=
"cursor: default;"
>
暂无数据
</span>
</div>
</div>
</td>
</tr>
</tbody>
</table>
<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
class=
"combottomDiv"
v-if=
"showChangeSales"
style=
"height:200px;"
>
<updateSalesMan
@
closeUpdiv=
"closeSalseDiv"
@
getList=
"getList"
:subInfo=
"subInfo"
></updateSalesMan>
</div>
</div>
</
template
>
<
script
>
import
Treeselect
from
"@riophae/vue-treeselect"
;
import
updateSalesMan
from
"../commonPage/updateSalesMan.vue"
;
import
"@riophae/vue-treeselect/dist/vue-treeselect.css"
;
export
default
{
components
:
{
Treeselect
,
updateSalesMan
},
data
()
{
return
{
normalizer
(
node
)
{
var
obj
=
{
id
:
node
.
DepartmentId
,
label
:
node
.
DepartmentName
,
};
if
(
node
.
ChildList
!=
null
&&
node
.
ChildList
.
length
>
0
)
{
obj
.
children
=
node
.
ChildList
;
}
return
obj
;
},
defaultImg
:
'this.src="'
+
require
(
"../../assets/img/litheader.png"
)
+
'"'
,
currentPage
:
1
,
total
:
0
,
loading
:
false
,
msg
:
{
LineId
:
"-1"
,
RB_Department_Id
:
null
,
CreateBy
:
"-1"
,
OrderState
:
"-1"
,
CStartDate
:
""
,
CEndDate
:
""
,
QStartDate
:
""
,
QEndDate
:
""
,
pageIndex
:
1
,
pageSize
:
10
,
tempOrderId
:
""
,
SellFormEmp
:
0
,
GroupType
:
'-1'
,
TCNUM
:
''
,
BranchId
:
'-1'
,
IsOneDay
:
'-1'
},
employeeMsg
:
{
RB_Group_id
:
"0"
,
RB_Branch_id
:
"-1"
,
departmentId
:
"0"
,
IsLeave
:
"-1"
},
getCompanyMsg
:
{
RB_Group_Id
:
'0'
,
Status
:
'0'
,
},
getDepartmentMsg
:
{
RB_Group_Id
:
'0'
,
RB_Branch_Id
:
'-1'
,
Status
:
'0'
,
},
isOwn
:
false
,
list
:
[],
LineList
:
[],
LineTeamList
:
[],
departmentList
:
[],
employeeList
:
[],
companyList
:
[],
ddztList
:
[],
ctlxList
:
[],
showChangeSales
:
false
,
//订单编号及业务员信息
subInfo
:{
CreateBy
:
''
,
OrderId
:
0
},
userId
:
0
,
};
},
methods
:
{
UpdateOrderConfirmation
:
function
(
type
,
id
)
{
this
.
apipost
(
'sellorder_post_UpdateOrderConfirmation'
,
{
OrderId
:
id
,
OperationState
:
type
},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
$message
.
success
(
res
.
data
.
message
)
this
.
getList
()
}
},
null
)
},
//跳转
goUrlTS
(
path
,
id
,
orderId
,
title
)
{
this
.
$router
.
push
({
name
:
path
,
query
:
{
'id'
:
id
,
'orderId'
:
orderId
,
blank
:
'y'
,
tab
:
title
}
})
},
goUrlSFD
:
function
(
path
,
name
,
item
)
{
let
obj
=
JSON
.
parse
(
JSON
.
stringify
(
item
))
obj
.
oP_Remarks
=
''
obj
.
remarksList
=
[]
obj
.
refundFinanceList
=
[]
obj
.
remarks
=
[]
obj
.
ltName
=
[]
obj
.
lineName
=
[]
obj
.
financeList
=
[]
obj
.
guestList
=
[]
obj
.
description
=
[]
this
.
$router
.
push
({
name
:
path
,
query
:
{
blank
:
'y'
,
tab
:
name
,
item
:
JSON
.
stringify
(
obj
)}
});
},
// 结束日期不能大于开始日期
dataDui
()
{
if
(
this
.
msg
.
CStartDate
>
this
.
msg
.
CEndDate
&&
this
.
msg
.
CEndDate
!==
""
)
{
this
.
$message
.
error
(
"结束日期不能大于开始日期"
);
this
.
msg
.
CEndDate
=
""
;
}
},
dataDuiQ
()
{
if
(
this
.
msg
.
QStartDate
>
this
.
msg
.
QEndDate
&&
this
.
msg
.
QEndDate
!==
""
)
{
this
.
$message
.
error
(
"结束日期不能大于开始日期"
);
this
.
msg
.
QEndDate
=
""
;
}
},
goUrl
(
path
,
id
)
{
this
.
$router
.
push
({
name
:
path
,
query
:
{
id
:
id
,
isShen
:
1
,
blank
:
'y'
,
}
});
},
goUrlX
(
name
,
path
,
id
,
tcmun
)
{
this
.
$router
.
push
({
name
:
path
,
query
:
{
id
:
id
,
tcmun
:
tcmun
,
blank
:
'y'
,
tab
:
name
}
});
},
linkageEmployeeMsg
(
node
,
instanceId
)
{
this
.
employeeMsg
.
departmentId
=
node
.
DepartmentId
;
this
.
msg
.
CreateBy
=
"-1"
;
this
.
getEmployee
();
},
getDdztList
()
{
this
.
apipost
(
"sellorder_post_GetSellOrderStatusEnumList"
,
{},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
ddztList
=
res
.
data
.
data
;
}
},
err
=>
{}
);
},
getEmployee
()
{
this
.
apipost
(
"app_get_company_employee"
,
this
.
employeeMsg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
employeeList
=
res
.
data
.
data
;
}
},
err
=>
{}
);
},
getLineList
()
{
this
.
apipost
(
"line_post_GetAllList"
,
{},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
LineList
=
res
.
data
.
data
;
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
);
}
});
},
//获取公司
getCompany
()
{
this
.
apipost
(
'admin_get_BranchGetList'
,
this
.
getCompanyMsg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
companyList
=
res
.
data
.
data
;
}
else
{}
},
err
=>
{})
},
linkageDepartment
()
{
//联动部门
this
.
msg
.
RB_Department_Id
=
null
;
if
(
this
.
msg
.
BranchId
!=
0
){
this
.
getDepartmentMsg
.
RB_Branch_Id
=
this
.
msg
.
BranchId
;
}
this
.
getDepartment
();
},
getDepartment
()
{
this
.
apipost
(
"admin_Get_GetDepartmentTreeForReceiveQuery"
,
this
.
getDepartmentMsg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
departmentList
=
res
.
data
.
data
;
}
else
{
this
.
Error
(
res
.
data
.
message
);
}
},
err
=>
{}
);
},
getList
()
{
this
.
loading
=
true
;
this
.
apipost
(
"sellorder_post_GetOrderConfirmationList"
,
this
.
msg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
loading
=
false
;
this
.
total
=
res
.
data
.
data
.
count
;
this
.
list
=
res
.
data
.
data
.
pageData
;
}
else
{
this
.
loading
=
false
;
this
.
$message
.
error
(
res
.
data
.
message
);
}
},
err
=>
{}
);
},
handleCurrentChange
(
val
)
{
this
.
msg
.
pageIndex
=
val
;
this
.
getList
();
},
resetPageIndex
()
{
this
.
msg
.
pageIndex
=
1
;
this
.
currentPage
=
1
;
},
// 获取参团类型
getCtlxList
()
{
this
.
apipost
(
'sellorder_get_GetOrderJoinEnumList'
,
{},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
ctlxList
=
res
.
data
.
data
}
},
err
=>
{})
},
//点击修改业务员
getSalerInfo
(
item
){
this
.
subInfo
.
CreateBy
=
item
.
createBy
;
this
.
subInfo
.
OrderId
=
item
.
orderId
;
this
.
showChangeSales
=
true
;
},
//关闭修改业务员
closeSalseDiv
(){
this
.
showChangeSales
=
false
;
},
goIisDetail
:
function
(
id
)
{
// 跳转发票详情页面
this
.
$router
.
push
({
name
:
'invoicesManagerDetail'
,
query
:
{
id
:
id
,
noDetail
:
1
,
blank
:
"y"
,}
});
},
},
mounted
()
{
let
userInfo
=
this
.
getLocalStorage
();
this
.
userId
=
userInfo
.
EmployeeId
;
this
.
getCompanyMsg
.
RB_Group_Id
=
this
.
getDepartmentMsg
.
RB_Group_Id
=
userInfo
.
RB_Group_id
;
//集团
this
.
getCompany
();
this
.
getCtlxList
()
this
.
getEmployee
();
this
.
getLineList
();
this
.
getDepartment
();
this
.
getDdztList
();
if
(
this
.
$route
.
query
.
id
)
{
this
.
msg
.
tempOrderId
=
this
.
$route
.
query
.
id
;
}
if
(
this
.
$route
.
query
.
isOwn
)
{
this
.
isOwn
=
true
;
this
.
msg
.
SellFormEmp
=
1
;
}
this
.
msg
.
CreateBy
=
this
.
$route
.
query
.
EmployeeId
===
undefined
?
"-1"
:
this
.
$route
.
query
.
EmployeeId
;
this
.
msg
.
QStartDate
=
this
.
$route
.
query
.
starTime
===
undefined
?
""
:
this
.
$route
.
query
.
starTime
;
this
.
msg
.
QEndDate
=
this
.
$route
.
query
.
endTime
===
undefined
?
""
:
this
.
$route
.
query
.
endTime
;
if
(
this
.
msg
.
QStartDate
===
""
&&
this
.
msg
.
QEndDate
===
""
&&
!
this
.
msg
.
tempOrderId
)
{
let
nowDay
=
new
Date
().
toLocaleDateString
();
this
.
msg
.
QStartDate
=
nowDay
;
this
.
msg
.
QEndDate
=
nowDay
;
}
if
(
this
.
$route
.
query
.
orderId
)
{
this
.
msg
.
tempOrderId
=
this
.
$route
.
query
.
orderId
;
this
.
msg
.
QStartDate
=
""
;
this
.
msg
.
QEndDate
=
""
;
}
this
.
getList
();
}
};
</
script
>
<
style
>
.groupts
.underline
{
text-decoration
:
underline
;
margin
:
5px
;
text-align
:
center
;
}
.color_red_order
{
color
:
#e95252
!important
;
}
.enrollTotalSearch
{
width
:
100%
;
min-height
:
auto
;
padding
:
0
0
20px
0
;
}
.enrollTotalSearch
::after
{
display
:
block
;
clear
:
both
;
content
:
""
;
visibility
:
hidden
;
height
:
0
;
}
.enrollTotalSearch
li
{
float
:
left
;
font-size
:
12px
;
height
:
40px
;
color
:
#666
;
margin
:
20px
10px
10px
0
;
}
.enrollTotalSearch
li
>
span
{
display
:
inline-block
;
}
.enrollTotalSearch
li
span
>
em
{
display
:
inline-block
;
min-width
:
60px
;
text-align
:
right
;
font-style
:
normal
;
margin
:
0
12px
0
0
;
}
.enrollTotalSearch
li
:last-child
{
float
:
right
;
position
:
fixed
;
top
:
36px
;
right
:
20px
;
text-align
:
right
;
z-index
:
50
;
}
.enrollTotalSearchTable
{
width
:
100%
;
font-size
:
14px
;
color
:
#333
;
border-bottom
:
1px
solid
#cccccc
;
border-right
:
1px
solid
#cccccc
;
border-collapse
:
collapse
;
}
.enrollTotalSearchTable
tr
{
/* border-bottom: 2px solid #333; */
}
.enrollTotalSearchTable
tr
th
{
background
:
#bdbdbd
;
height
:
30px
;
font-size
:
12px
;
text-align
:
center
;
border-top
:
1px
solid
#cccccc
;
border-left
:
1px
solid
#cccccc
;
}
.enrollTotalSearchTable
tr
{
background
:
#fff
;
text-align
:
left
;
}
.enrollTotalSearchTable
tbody
tr
:last-child
{
border-bottom
:
2px
solid
#333
;
}
.enrollTotalSearchTable
tr
:first-child
td
:first-child
{
border-bottom
:
2px
solid
#333
;
}
.enrollTotalSearchTable
tr
td
{
height
:
80px
;
padding
:
10px
;
border-top
:
1px
solid
#cccccc
;
border-left
:
1px
solid
#cccccc
;
}
.enrollTotalSearchTable
tr
td
>
img
{
width
:
32px
;
height
:
32px
;
border-radius
:
16px
;
vertical-align
:
middle
;
margin-right
:
5px
;
}
.enrollTotalSearchTable
tr
td
p
{
line-height
:
20px
;
}
.groupTourOrder_count_green
{
color
:
#1BC594
;
}
.groupTourOrder_count_blue
{
color
:
#4D7AFD
;
}
.groupTourOrder_count_yellow
{
color
:
#FF9C00
;
}
.groupTourOrder_count_gray
{
color
:
#999999
;
}
.groupTourOrder_count
{
margin
:
0
0
20px
0
;
width
:
100%
;
height
:
auto
;
}
.groupTourOrder_count_col
{
height
:
80px
;
}
.groupTourOrder_count_item
{
font-weight
:
400
;
padding
:
10px
;
height
:
100%
;
border
:
1px
solid
#E6E6E6
;
background-color
:
#FFFFFF
;
color
:
#333333
;
}
.groupTourOrder_count_item
>
div
>
i
{
font-size
:
12px
;
vertical-align
:
bottom
;
}
.groupTourOrder_count_item
>
div
>
span
:nth-child
(
2
)
{
font-size
:
14px
;
vertical-align
:
bottom
;
}
.groupTourOrder_count_item
>
div
>
span
:nth-child
(
3
)
{
font-weight
:
bold
;
font-size
:
16px
;
vertical-align
:
bottom
;
}
.groupTourOrder_count_item
>
p
{
font-size
:
12px
;
line-height
:
18px
;
}
.groupTourOrder_count_item
>
p
>
span
{
margin
:
0
5px
0
0
;
white-space
:
nowrap
;
}
.groupTourOrder_more
{
margin
:
0
-12px
;
}
.groupTourOrder_more
>
div
{
width
:
100%
;
height
:
30px
;
line-height
:
30px
;
text-align
:
center
;
font-size
:
12px
;
color
:
#333333
;
background-color
:
#FFFFFF
;
cursor
:
pointer
;
}
.groupTourOrder_more
>
div
:hover
{
color
:
#297BEF
;
background-color
:
#DCEBFF
;
}
.groupTourOrder_remarks
{
font-size
:
0px
;
}
.groupTourOrder_remarks
>
div
{}
.groupTourOrder_remarks
>
div
>
div
:nth-child
(
1
)
{
float
:
left
;
display
:
flex
;
align-items
:
flex-start
;
}
.groupTourOrder_remarks
>
div
>
div
:nth-child
(
1
)>
span
{
line-height
:
20px
;
font-size
:
12px
;
color
:
#e95252
;
white-space
:
nowrap
;
}
.groupTourOrder_remarks
>
div
>
div
:nth-child
(
1
)>
p
{
line-height
:
20px
;
font-size
:
12px
;
color
:
#e95252
;
}
.groupTourOrder_remarks
>
div
>
div
:nth-child
(
2
)
{
float
:
right
;
text-align
:
right
;
font-size
:
12px
;
color
:
#e95252
;
}
.groupTourOrder_remarks
>
div
>
div
:nth-child
(
2
)>
i
{
font-size
:
10px
;
cursor
:
pointer
;
}
.groupTourOrder_remarks
>
div
::after
{
display
:
block
;
clear
:
both
;
content
:
""
;
visibility
:
hidden
;
height
:
0
;
}
.groupTourOrder_remarks_btn
{
padding
:
0px
;
width
:
12px
;
height
:
12px
;
border
:
none
;
background-color
:
transparent
;
}
.groupTourOrder_remarks_btn
>
i
{
color
:
#e95252
;
font-size
:
12px
;
}
.groupTourOrder_remarks_popover
>
div
{
display
:
inline-block
;
font-size
:
14px
;
color
:
#000000
;
}
.groupTourOrder_remarks_popover
>
div
::before
{
content
:
''
;
display
:
inline-block
;
margin
:
0
5px
0
0
;
width
:
2px
;
height
:
12px
;
background-color
:
#e95252
;
}
.groupTourOrder_remarks_popover
>
span
{
display
:
block
;
margin
:
0
0
0
0
;
width
:
100%
;
text-align
:
center
;
font-size
:
12px
;
color
:
#000000
;
}
.groupTourOrder_remarks_popover
>
p
{
margin
:
5px
0
0
0
;
padding
:
3px
;
width
:
100%
;
max-height
:
300px
;
overflow-y
:
auto
;
font-size
:
12px
;
color
:
#000000
;
}
.groupTourOrder_remarks_popover
>
p
:nth-child
(
even
)
{
background-color
:
#E6E6E6
;
}
.groupTourOrder_remarks_popover
>
p
>
span
:nth-child
(
1
)
{
float
:
left
;
}
.groupTourOrder_remarks_popover
>
p
>
span
:nth-child
(
2
)
{
margin
:
0
10px
0
0
;
float
:
right
;
}
.groupTourOrder_remarks_popover
>
p
::after
{
display
:
block
;
clear
:
both
;
content
:
""
;
visibility
:
hidden
;
height
:
0
;
}
/* .groupTourOrder_tickets>div>span{
margin: 0 5px 0 0;
cursor: pointer;
} */
.groupTourOrder_tickets
>
div
>
div
>
span
{
display
:
inline-block
;
margin
:
0
10px
0
0
;
}
.groupTourOrder_tickets_red
{
color
:
#FF0000
;
text-decoration
:
underline
;
}
.groupTourOrder_tickets_blue
{
color
:
#0000FF
;
text-decoration
:
underline
;
}
.groupTourOrder_tickets_green
{
color
:
#008000
;
text-decoration
:
underline
;
}
.groupTourOrder_tickets_black
{
color
:
#000000
;
text-decoration
:
underline
;
}
.groupTourOrderByTuan_ico
{
margin
:
0
10px
0
0
;
}
.groupTourOrderByTuan_ico
>
i
{
display
:
inline-block
;
margin
:
0
2px
0
0
;
width
:
8px
;
height
:
8px
;
border-radius
:
2px
;
vertical-align
:
middle
;
}
.groupTourOrderByTuan_ico
>
span
{
vertical-align
:
middle
;
}
.groupTourOrder_tickets
>
div
>
div
{
display
:
table-cell
;
cursor
:
pointer
;
}
.groupTourOrder_tickets
>
div
>
div
:nth-child
(
1
)
{
width
:
80px
;
}
.groupTourOrder_tickets
>
div
>
div
>
span
{
display
:
inline-block
;
margin
:
0
10px
0
0
;
}
.ConfirmationAdui
._icon_btn
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
;}
.ConfirmationAdui
._icon_btn
i
.icon-sousuo
{
background-color
:
#00C6FF
;
font-size
:
16px
;}
.ConfirmationAdui
._icon_btn
i
.icon-sousuo
:hover
{
background-color
:
#59daff
}
.ConfirmationAdui
._icon_btn
i
.icon-sousuo
:active
{
background-color
:
#00b8ec
}
.ConfirmationAdui
._icon_btn
i
.icon-duigou
{
background-color
:
#47BF8C
;}
.ConfirmationAdui
._icon_btn
i
.icon-duigou
:hover
{
background-color
:
#66bb97
}
.ConfirmationAdui
._icon_btn
i
.icon-duigou
:active
{
background-color
:
#35ab79
}
.ConfirmationAdui
._icon_btn
i
.icon-quxiao1
{
background-color
:
#F16C3C
;}
.ConfirmationAdui
._icon_btn
i
.icon-quxiao1
:hover
{
background-color
:
#e87c54
}
.ConfirmationAdui
._icon_btn
i
.icon-quxiao1
:active
{
background-color
:
#f76630
}
</
style
>
src/components/confirmationOrder.vue
View file @
efe33787
<
template
>
<
template
>
<div>
<div>
<span
class=
"confirmationOrderNormalBtn"
@
click=
"toPDF('旅游行程确认件')"
>
保存PDF
</span>
<template>
<div
style=
"width: 800px; margin: 10px auto 0;"
id=
'pdfDom'
>
<span
<div
class=
"confirmationOrder"
>
v-if=
"ConfirmationDetails.OperationState === -1 || ConfirmationDetails.OperationState === 2"
<p
class=
"f22 center"
style=
"margin: 20px 0 0 0;"
>
{{
GroupName
}}
</p>
class=
"confirmationOrderNormalBtn"
<p
class=
"f22 center"
>
旅游行程确认件
</p>
@
click=
"SetOrderConfirmation()"
<p
class=
"f14"
style=
"text-indent: 36px;"
>
>
申请
</span>
经甲乙双方友好协商,现甲方委托乙方承办甲方所组旅游团队/散客的游览事宜,达成如下协议,烦请仔细审核,核实无误后烦请签字盖章回传确认件(本确认件现为业务合同,传真件具有同等法律效力)。
<span
</p>
v-if=
"ConfirmationDetails.OperationState === 1"
<table
class=
"confirmationOrderTable"
border=
"0"
cellspacing=
"0"
cellpadding=
"0"
>
class=
"confirmationOrderNormalBtn"
<tr>
@
click=
"toPDF('旅游行程确认件')"
<td
width=
"20"
rowspan=
"3"
>
甲方
</td>
>
下载PDF
</span>
<td
width=
"125"
rowspan=
"3"
>
委托社名称及许可证号
</td>
<span
class=
"confirmationOrderNormalBtn confirmationOrderNormalBtn2"
v-if=
"ConfirmationDetails.OperationState === 2"
@
click=
"outerVisible = true"
>
修改账户
</span>
<td
width=
"260"
rowspan=
"3"
>
</
template
>
<!--
<input
v-if=
'!isPrint'
class=
"wp100"
v-model=
"list.CustomerName"
type=
"text"
>
<div
style=
"width: 800px; margin: 10px auto 0;"
id=
"pdfDom"
>
<span
v-if=
'isPrint'
>
{{
list
.
CustomerName
}}
</span>
-->
<div
<span
contenteditable=
"true"
>
{{
list
.
CustomerName
}}
</span>
v-if=
"ConfirmationDetails.ConfirmationContent"
</td>
v-html=
"ConfirmationDetails.ConfirmationContent"
<td
width=
"80"
rowspan=
"3"
>
经办人
</td>
></div>
<td
width=
"80"
rowspan=
"3"
>
<div
class=
"confirmationOrder"
v-else
>
<input
v-if=
'!isPrint'
style=
"width: 50px;"
v-model=
"list.Contact"
type=
"text"
>
<p
class=
"f22 center"
style=
"margin: 20px 0 0 0;"
>
{{list.CompanyTitle}}
</p>
<span
v-if=
'isPrint'
>
{{
list
.
Contact
}}
</span>
<p
class=
"f22 center"
>
旅游行程确认件
</p>
</td>
<p
<td
width=
"60"
>
电话
</td>
class=
"f14"
<td>
style=
"text-indent: 36px;"
<input
v-if=
'!isPrint'
v-model=
"list.ContactNumber"
type=
"text"
>
>
经甲乙双方友好协商,现甲方委托乙方承办甲方所组旅游团队/散客的游览事宜,达成如下协议,烦请仔细审核,核实无误后烦请签字盖章回传确认件(本确认件现为业务合同,传真件具有同等法律效力)。
</p>
<span
v-if=
'isPrint'
>
{{
list
.
ContactNumber
}}
</span>
<table
class=
"confirmationOrderTable"
border=
"0"
cellspacing=
"0"
cellpadding=
"0"
>
</td>
<tr>
</tr>
<td
width=
"20"
rowspan=
"3"
>
甲方
</td>
<tr>
<td
width=
"125"
rowspan=
"3"
>
委托社名称及许可证号
</td>
<td
width=
"260"
rowspan=
"3"
>
<td>
传真
</td>
<!-- <input v-if='!isPrint' class="wp100" v-model="list.CustomerName" type="text">
<td>
<span v-if='isPrint'>{{list.CustomerName}}</span>-->
<input
v-if=
'!isPrint'
type=
"text"
v-model=
"cz"
>
<span
class=
"__input"
:contenteditable=
"true"
>
{{list.CustomerName}}
</span>
<span
v-if=
'isPrint'
>
{{
cz
}}
</span>
</td>
</td>
<td
width=
"80"
rowspan=
"3"
>
经办人
</td>
</tr>
<td
width=
"80"
rowspan=
"3"
>
<tr>
<span
class=
"__input"
:contenteditable=
"true"
>
{{list.Contact}}
</span>
<td>
邮箱
</td>
</td>
<td>
<td
width=
"60"
>
电话
</td>
<input
v-if=
'!isPrint'
type=
"text"
v-model=
"yx"
>
<td>
<span
v-if=
'isPrint'
>
{{
yx
}}
</span>
<span
class=
"__input"
:contenteditable=
"true"
>
{{list.ContactNumber}}
</span>
</td>
</td>
</tr>
</tr>
<tr>
<tr>
<td
rowspan=
"3"
>
乙方
</td>
<td>
传真
</td>
<td
rowspan=
"3"
>
受托社名称及许可证号
</td>
<td>
<td
rowspan=
"3"
>
<span
class=
"__input"
:contenteditable=
"true"
>
{{cz}}
</span>
{{
list
.
GroupName
}}
(
{{
list
.
BranchName
}}
)
</td>
</td>
</tr>
<td
rowspan=
"3"
>
经办人
</td>
<tr>
<td
rowspan=
"3"
>
<td>
邮箱
</td>
<input
v-if=
'!isPrint'
style=
"width: 50px;"
v-model=
"list.EmName"
type=
"text"
>
<td>
<span
v-if=
'isPrint'
>
{{
list
.
EmName
}}
</span>
<span
class=
"__input"
:contenteditable=
"true"
>
{{yx}}
</span>
</td>
</td>
</tr>
<td>
电话
</td>
<tr>
<td>
<td
rowspan=
"3"
>
乙方
</td>
<input
v-if=
'!isPrint'
v-model=
"list.EmMobile"
type=
"text"
>
<td
rowspan=
"3"
>
受托社名称及许可证号
</td>
<span
v-if=
'isPrint'
>
{{
list
.
EmMobile
}}
</span>
<td
rowspan=
"3"
>
{{list.CompanyTitle}}
</td>
</td>
<td
rowspan=
"3"
>
经办人
</td>
</tr>
<td
rowspan=
"3"
>
<tr>
<span
class=
"__input"
:contenteditable=
"true"
>
{{list.EmName}}
</span>
<td>
传真
</td>
</td>
<td>
<td>
电话
</td>
<input
v-if=
'!isPrint'
type=
"text"
v-model=
"cz1"
>
<td>
<span
v-if=
'isPrint'
>
{{
cz1
}}
</span>
<span
class=
"__input"
:contenteditable=
"true"
>
{{list.EmMobile}}
</span>
</td>
</td>
</tr>
</tr>
<tr>
<tr>
<td>
邮箱
</td>
<td>
传真
</td>
<td>
<td>
<input
v-if=
'!isPrint'
type=
"text"
v-model=
"yx1"
>
<span
class=
"__input"
:contenteditable=
"true"
>
{{cz1}}
</span>
<span
v-if=
'isPrint'
>
{{
yx1
}}
</span>
</td>
</td>
</tr>
</tr>
<tr>
<tr>
<td>
邮箱
</td>
<td
colspan=
"3"
>
旅游线路:
{{
list
.
LineName
}}
</td>
<td>
<td
colspan=
"4"
>
团号:
{{
list
.
TCNUM
}}
</td>
<span
class=
"__input"
:contenteditable=
"true"
>
{{yx1}}
</span>
</tr>
</td>
<tr>
</tr>
<td
colspan=
"7"
>
时间:
{{
list
.
StartDate
}}
-
{{
list
.
EndDate
}}
{{
list
.
DayNum
}}
天
{{
list
.
NightNum
}}
晚
</td>
<tr>
</tr>
<td
colspan=
"3"
>
旅游线路:{{list.LineName}}
</td>
<tr>
<td
colspan=
"4"
>
团号:{{list.TCNUM}}
</td>
<td
colspan=
"3"
>
出境地:
{{
list
.
StartCity
}}
</td>
</tr>
<td
colspan=
"4"
>
入境地:
{{
list
.
ReturnCity
}}
</td>
<tr>
</tr>
<td
<tr>
colspan=
"7"
<td
colspan=
"3"
>
参团人数:
>
时间:{{list.StartDate}}-{{list.EndDate}}
{{list.DayNum}}天{{list.NightNum}}晚
</td>
<input
v-if=
'!isPrint'
class=
"w40"
v-model=
"list.GuestNum"
type=
"text"
>
</tr>
<span
v-if=
'isPrint'
>
{{
list
.
GuestNum
}}
</span>
<tr>
大:
<input
v-if=
'!isPrint'
class=
"w40"
v-model=
"list.ManNum"
type=
"text"
>
<td
colspan=
"3"
>
出境地:{{list.StartCity}}
</td>
<span
v-if=
'isPrint'
>
{{
list
.
ManNum
}}
</span>
<td
colspan=
"4"
>
入境地:{{list.ReturnCity}}
</td>
小:
<input
v-if=
'!isPrint'
class=
"w40"
v-model=
"list.ChildNum"
type=
"text"
>
</tr>
<span
v-if=
'isPrint'
>
{{
list
.
ChildNum
}}
</span>
<tr>
</td>
<td
colspan=
"3"
>
<td
colspan=
"4"
>
客户姓名:
参团人数:
<input
v-if=
'!isPrint'
type=
"text"
style=
"width:280px;"
v-model=
"list.ClientName"
/>
<span
class=
"__input"
:contenteditable=
"true"
>
{{list.GuestNum}}
</span>
<span
v-if=
'isPrint'
>
{{
list
.
ClientName
}}
</span>
大:
<!--
<textarea
class=
"wp100"
v-model=
"list.ClientName"
@
input=
"MaxMe($event)"
style=
"overflow: hidden"
></textarea>
-->
<span
class=
"__input"
:contenteditable=
"true"
>
{{list.ManNum}}
</span>
</td>
小:
</tr>
<span
class=
"__input"
:contenteditable=
"true"
>
{{list.ChildNum}}
</span>
<tr>
</td>
<td
colspan=
"2"
>
费用包含:
</td>
<td
colspan=
"4"
>
<td
colspan=
"5"
><input
class=
"wp100"
v-if=
'!isPrint'
v-model=
"list.CostInclude"
type=
"text"
><span
v-if=
'isPrint'
>
{{
list
.
CostInclude
}}
</span></td>
客户姓名:
</tr>
<span
class=
"__input"
:contenteditable=
"true"
>
{{list.ClientName}}
</span>
<tr>
</td>
<td
colspan=
"2"
>
行程:
</td>
</tr>
<td
colspan=
"5"
>
在不影响行程标准的情况下,具体行程安排以出团通知为准。
</td>
<tr>
</tr>
<td
colspan=
"2"
>
费用包含:
</td>
<tr>
<td
colspan=
"5"
>
<td
colspan=
"3"
>
<span
class=
"__input"
:contenteditable=
"true"
>
{{list.CostInclude}}
</span>
结算价格:
<input
v-if=
'!isPrint'
style=
"width: 200px;"
v-model=
"list.SettlePrice"
type=
"text"
>
</td>
<span
v-if=
'isPrint'
>
{{
list
.
SettlePrice
}}
</span>
</tr>
<br
/>
<tr>
合计:
<input
v-if=
'!isPrint'
style=
"width: 200px;"
v-model=
"list.PreferPrice"
type=
"text"
>
<td
colspan=
"2"
>
行程:
</td>
<span
v-if=
'isPrint'
>
{{
list
.
PreferPrice
}}
</span>
<td
colspan=
"5"
>
在不影响行程标准的情况下,具体行程安排以出团通知为准。
</td>
</td>
</tr>
<td
colspan=
"4"
>
结算方式:
<input
v-if=
'!isPrint'
style=
"width: 280px;"
v-model=
"list.PayType"
type=
"text"
>
<tr>
<span
v-if=
'isPrint'
>
{{
list
.
PayType
}}
</span>
<td
colspan=
"3"
>
</td>
结算价格:
</tr>
<span
class=
"__input"
:contenteditable=
"true"
>
{{list.SettlePrice}}
</span>
<tr>
<br>
合计:
<td
colspan=
"3"
>
预付款金额:
<span
class=
"__input"
:contenteditable=
"true"
>
{{list.PreferPrice}}
</span>
<input
v-if=
'!isPrint'
style=
"width: 280px;"
v-model=
"list.PrepaidMoney"
type=
"text"
>
</td>
<span
v-if=
'isPrint'
>
{{
list
.
PrepaidMoney
}}
</span>
<td
colspan=
"4"
>
</td>
结算方式:
<td
colspan=
"4"
>
<span
class=
"__input"
:contenteditable=
"true"
>
{{list.PayType}}
</span>
<div
style=
"float: left; margin-bottom:30px;"
>
支付时间:
</div>
</td>
<div>
</tr>
确认件双方签字栏生效时间后三个工作日完成预付款的支付。(预付款包含:机位舱位预定费、签证/签注费、公证费等)
<tr>
</div>
<td
colspan=
"3"
>
</td>
预付款金额:
</tr>
<span
class=
"__input"
:contenteditable=
"true"
>
{{list.PrepaidMoney}}
</span>
<tr>
</td>
<td
colspan=
"3"
>
尾款金额:
<td
colspan=
"4"
>
<input
v-if=
'!isPrint'
style=
"width: 280px;"
v-model=
"list.RetainageMoney"
type=
"text"
>
<div
style=
"float: left; margin-bottom:30px;"
>
支付时间:
</div>
<span
v-if=
'isPrint'
>
{{
list
.
RetainageMoney
}}
</span>
<div>
确认件双方签字栏生效时间后三个工作日完成预付款的支付。(预付款包含:机位舱位预定费、签证/签注费、公证费等)
</div>
</td>
</td>
<td
colspan=
"4"
>
</tr>
<div
style=
"float: left; margin-bottom: 30px;"
>
支付时间:
</div>
<tr>
<div>
<td
colspan=
"3"
>
出团前七个工作日完成尾款支付。(甲方未及时付清尾款,造成乙方无法接待,甲方已付订金不予退回)
尾款金额:
</div>
<span
class=
"__input"
:contenteditable=
"true"
>
{{list.RetainageMoney}}
</span>
</td>
</td>
</tr>
<td
colspan=
"4"
>
<tr>
<div
style=
"float: left; margin-bottom: 30px;"
>
支付时间:
</div>
<td
colspan=
"7"
>
<div>
出团前七个工作日完成尾款支付。(甲方未及时付清尾款,造成乙方无法接待,甲方已付订金不予退回)
</div>
<p>
</td>
<span>
甲方同意本订单所有费用在出发前支付到乙方指定账户:
</span>
</tr>
<el-select
v-if=
"printShow===true&&!isPrint"
class=
"wp40 accountList"
v-model=
"accountNum"
@
change=
"accountChange"
placeholder=
"请选择"
>
<tr>
<el-option
<td
colspan=
"7"
>
<p>
<span>
甲方同意本订单所有费用在出发前支付到乙方指定账户:
</span>
<!-- && !isSave -->
<select
v-if=
"printShow===true&&!isPrint "
class=
"wp40 accountList"
v-model=
"accountNum"
@
change=
"accountChange"
placeholder=
"请选择"
>
<option
v-for=
"(item,index) in accountList"
:key=
"index"
:label=
"item.BankSubName"
:value=
"index"
></option>
</select>
</p>
<p
class=
"fnormal"
>
户名:
<span
class=
"__input"
:contenteditable=
"true"
>
{{accountInfo.BankName}}
</span>
</p>
<p
class=
"fnormal"
>
开户行名称:
<span
class=
"__input"
:contenteditable=
"true"
>
{{accountInfo.BankSubName}}
</span>
</p>
<p
class=
"fnormal"
>
帐号:
<span
class=
"__input"
:contenteditable=
"true"
>
{{accountInfo.BankNum}}
</span>
</p>
</td>
</tr>
<tr>
<td
colspan=
"3"
>
提交资料内容:
</td>
<td
colspan=
"4"
>
提交资料时间:{{list.SendVisaTime}}
</td>
</tr>
<tr
height=
"120"
>
<td
colspan=
"2"
align=
"center"
>
甲方
<br>
确认章并签字:
</td>
<td
valign=
"bottom"
>
时间:
</td>
<td
colspan=
"2"
align=
"center"
>
乙方
<br>
确认章并签字:
</td>
<td
valign=
"bottom"
colspan=
"2"
style=
"position: relative;"
>
<img
:src=
"'data:image/jpeg;base64,'+list.ImagePath"
style=
"position: absolute; left: 10px; top: 10px;"
>
时间:{{list.Date}}
</td>
</tr>
<tr>
<td
colspan=
"7"
>
<p>
备注:以上确认件需完成双方确认章和签字视为生效!
</p>
<p
style=
"text-indent: 43px;"
>
如因同行未按照约定时间结清费用导致的任何问题有由同行全权负责!
</p>
<p
style=
"text-indent: 43px;"
>
如在此期间有任何纠纷,处理依据均参照《旅游合同》或《旅游法》相关规定执行!
</p>
<p
style=
"text-indent: 43px;"
>
以上表格中浅色字体区域可根据情况进行修改。
</p>
</td>
</tr>
</table>
</div>
</div>
<el-dialog
custom-class=
"w450"
title=
"修改账户"
:visible
.
sync=
"outerVisible"
center
:before-close=
"closeChangeMachie"
>
<p
style=
"margin-bottom: 10px;"
>
<span>
账户:
</span>
<!-- && !isSave -->
<el-select
v-if=
"printShow===true&&!isPrint "
class=
"wp40 accountList"
v-model=
"accountNum"
@
change=
"accountChange()"
placeholder=
"请选择"
>
<el-option
v-for=
"(item,index) in accountList"
v-for=
"(item,index) in accountList"
:key=
"index"
:key=
"index"
:label=
"item.BankSubName"
:label=
"item.BankSubName"
:value=
"index"
>
:value=
"index"
</el-option>
></el-option>
</el-select>
</el-select>
</p>
</p>
<p
class=
"fnormal"
>
户名:
<input
class=
"wp80"
v-if=
'!isPrint'
v-model=
"accountInfo.BankName"
type=
"text"
><span
v-if=
'isPrint'
>
{{
accountInfo
.
BankName
}}
</span></p>
<p
class=
"fnormal"
style=
"margin-bottom: 10px;"
>
<p
class=
"fnormal"
>
开户行名称:
<input
class=
"wp80"
v-if=
'!isPrint'
v-model=
"accountInfo.BankSubName"
type=
"text"
><span
v-if=
'isPrint'
>
{{
accountInfo
.
BankSubName
}}
</span></p>
户名:
<p
class=
"fnormal"
>
帐号:
<input
class=
"wp80"
v-if=
'!isPrint'
v-model=
"accountInfo.BankNum"
type=
"text"
><span
v-if=
'isPrint'
>
{{
accountInfo
.
BankNum
}}
</span>
</p>
<span
class=
"__input"
:contenteditable=
"true"
>
{{accountInfo.BankName}}
</span>
</td>
</p>
</tr>
<p
class=
"fnormal"
style=
"margin-bottom: 10px;"
>
<tr>
开户行名称:
<td
colspan=
"3"
>
提交资料内容:
</td>
<span
class=
"__input"
:contenteditable=
"true"
>
{{accountInfo.BankSubName}}
</span>
<td
colspan=
"4"
>
提交资料时间:
{{
list
.
SendVisaTime
}}
</td>
</p>
</tr>
<p
class=
"fnormal"
style=
"margin-bottom: 10px;"
>
<tr
height=
"120"
>
帐号:
<td
colspan=
"2"
align=
"center"
>
甲方
<span
class=
"__input"
:contenteditable=
"true"
>
{{accountInfo.BankNum}}
</span>
<br/>
确认章并签字:
</td>
</p>
<td
valign=
"bottom"
>
时间:
</td>
<div
slot=
"footer"
class=
"dialog-footer"
>
<td
colspan=
"2"
align=
"center"
>
乙方
<button
class=
"hollowFixedBtn"
@
click=
"outerVisible=false"
>
取消
</button>
<br/>
确认章并签字:
</td>
<button
class=
"normalBtn"
@
click=
"outerVisible = false"
>
确定
</button>
<td
valign=
"bottom"
colspan=
"2"
style=
"position: relative;"
>
</div>
<img
:src=
"'data:image/jpeg;base64,'+list.ImagePath"
style=
"position: absolute; left: 10px; top: 10px;"
/>
</el-dialog>
时间:
{{
list
.
Date
}}
</div>
</td>
</div>
</tr>
<tr>
<td
colspan=
"7"
>
<p>
备注:以上确认件需完成双方确认章和签字视为生效!
</p>
<p
style=
"text-indent: 43px;"
>
如因同行未按照约定时间结清费用导致的任何问题有由同行全权负责!
</p>
<p
style=
"text-indent: 43px;"
>
如在此期间有任何纠纷,处理依据均参照《旅游合同》或《旅游法》相关规定执行!
</p>
<p
style=
"text-indent: 43px;"
>
以上表格中浅色字体区域可根据情况进行修改。
</p>
</td>
</tr>
</table>
</div>
</div>
</div>
</template>
</template>
<
script
>
<
script
>
export
default
{
export
default
{
data
(){
data
()
{
return
{
return
{
cz
:
''
,
cz
:
""
,
cz1
:
''
,
cz1
:
""
,
yx
:
''
,
yx
:
""
,
yx1
:
''
,
yx1
:
""
,
isPrint
:
false
,
isPrint
:
false
,
printShow
:
true
,
printShow
:
true
,
list
:{},
list
:
{},
bank
:{},
bank
:
{},
GroupName
:
''
,
accountNum
:
0
,
accountNum
:
0
,
accountList
:
[],
accountList
:
[],
accountInfo
:
{
accountInfo
:
{
BankName
:
"111"
,
BankName
:
''
,
BankSubName
:
"222"
,
BankSubName
:
''
,
BankNum
:
"333"
BankNum
:
''
},
}
ConfirmationDetails
:
{},
BankSubName
:
""
,
isSave
:
false
,
outerVisible
:
false
,
};
},
mounted
()
{
this
.
apipost
(
"sellorder_get_GetConfirmationInfoForFinance"
,
{
OrderId
:
this
.
$route
.
query
.
id
},
res
=>
{
if
(
res
.
data
.
resultCode
===
1
)
{
this
.
accountList
=
res
.
data
.
data
;
this
.
accountChange
(
0
);
// 获取确认函状态等信息
this
.
getConfifmationDetails
();
}
else
{
this
.
$message
.
error
(
"账户信息获取失败"
);
}
},
err
=>
{}
);
this
.
apipost
(
"sellorder_get_GetOrderConfirmationInfo"
,
{
OrderId
:
this
.
$route
.
query
.
id
},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
list
=
res
.
data
.
data
;
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
);
}
}
},
},
mounted
(){
err
=>
{}
// 获取当前公司名称
);
this
.
GroupName
=
this
.
getLocalStorage
().
GroupName
this
.
apipost
(
this
.
apipost
(
'sellorder_get_GetConfirmationInfoForFinance'
,{
OrderId
:
this
.
$route
.
query
.
id
},
res
=>
{
"OnlinePay_post_GetPayConfigList"
,
if
(
res
.
data
.
resultCode
===
1
)
{
{
OrderId
:
this
.
$route
.
query
.
id
},
this
.
accountList
=
res
.
data
.
data
res
=>
{
this
.
accountChange
(
0
)
this
.
bank
=
res
.
data
.
data
;
}
else
{
},
this
.
$message
.
error
(
'账户信息获取失败'
)
err
=>
{}
}
);
},
err
=>
{})
},
this
.
apipost
(
'sellorder_get_GetOrderConfirmationInfo'
,{
OrderId
:
this
.
$route
.
query
.
id
},
res
=>
{
methods
:
{
if
(
res
.
data
.
resultCode
==
1
)
{
setHtml
:
function
()
{
this
.
list
=
res
.
data
.
data
let
dom
=
document
.
getElementById
(
"selectBox"
)
}
else
{
if
(
!
dom
)
return
this
.
$message
.
error
(
res
.
data
.
message
)
let
str
=
`<p>
}
<span>甲方同意本订单所有费用在出发前支付到乙方指定账户:</span>
},
err
=>
{})
<!-- && !isSave -->
this
.
apipost
(
'OnlinePay_post_GetPayConfigList'
,{
OrderId
:
this
.
$route
.
query
.
id
},
res
=>
{
</p>
this
.
bank
=
res
.
data
.
data
<p class="fnormal">
},
err
=>
{})
户名:
<span class="__input" :contenteditable="true">
${
this
.
accountInfo
.
BankName
}
</span>
</p>
<p class="fnormal">
开户行名称:
<span class="__input" :contenteditable="true">
${
this
.
accountInfo
.
BankSubName
}
</span>
</p>
<p class="fnormal">
帐号:
<span class="__input" :contenteditable="true">
${
this
.
accountInfo
.
BankNum
}
</span>
</p>`
;
document
.
getElementById
(
"selectBox"
).
innerHTML
=
str
;
},
getConfifmationDetails
:
function
()
{
this
.
apipost
(
"sellorder_post_GetOrderConfirmationDetails"
,
{
orderId
:
this
.
$route
.
query
.
id
},
res
=>
{
if
(
res
.
data
.
resultCode
===
1
)
{
let
data
=
res
.
data
.
data
;
data
.
ConfirmationContent
=
data
.
ConfirmationContent
?
JSON
.
parse
(
data
.
ConfirmationContent
)
:
null
;
this
.
accountNum
=
data
.
BankIndexNum
;
this
.
ConfirmationDetails
=
data
;
this
.
accountChange
();
setTimeout
(()
=>
{
this
.
setHtml
();
if
(
data
.
OperationState
===
0
&&
this
.
$route
.
query
.
isShen
)
{
let
ele
=
document
.
getElementsByClassName
(
'__input'
)
for
(
var
i
=
0
;
i
<
ele
.
length
;
i
++
){
ele
[
i
].
contentEditable
=
false
}
}
},
1000
);
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
);
}
},
null
);
},
// 保存确认函
SetOrderConfirmation
:
function
()
{
this
.
isSave
=
true
;
setTimeout
(()
=>
{
let
msg
=
{
ID
:
this
.
ConfirmationDetails
.
ID
,
OrderId
:
this
.
$route
.
query
.
id
,
ConfirmationContent
:
JSON
.
stringify
(
document
.
getElementById
(
"pdfDom"
).
innerHTML
),
OperationState
:
0
,
BankIndexNum
:
this
.
accountNum
};
this
.
apipost
(
"sellorder_post_SetOrderConfirmation"
,
msg
,
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
getConfifmationDetails
();
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
);
}
},
null
);
},
500
);
},
},
methods
:{
// toPDF: function (title) {
// toPDF: function (title) {
// this.printShow = false
// this.printShow = false
// setTimeout(() => {
// setTimeout(() => {
// this.getPdf(title,() => {
// this.getPdf(title,() => {
// this.printShow = true
// this.printShow = true
// })
// })
// }, 0)
// }, 0)
// },
// },
toPDF
:
function
(
title
)
{
toPDF
:
function
(
title
)
{
this
.
isPrint
=
true
;
this
.
isPrint
=
true
this
.
$forceUpdate
();
this
.
$forceUpdate
()
setTimeout
(()
=>
{
setTimeout
(()
=>
{
let
pageData
=
document
.
getElementById
(
"pdfDom"
).
innerHTML
;
let
pageData
=
document
.
getElementById
(
'pdfDom'
).
innerHTML
let
urlObj
=
this
.
domainManager
();
let
urlObj
=
this
.
domainManager
()
this
.
$http
({
this
.
$http
({
headers
:
{
"Content-Type"
:
"application/json"
},
headers
:
{
'Content-Type'
:
'application/json'
},
method
:
"post"
,
method
:
'post'
,
url
:
urlObj
.
DomainUrl
+
"/api/file/GetWebHtmlTwo"
,
url
:
urlObj
.
DomainUrl
+
'/api/file/GetWebHtmlTwo'
,
data
:
{
msg
:
pageData
,
sign
:
"new_file"
}
data
:
{
"msg"
:
pageData
,
sign
:
"new_file"
}
})
}).
then
(
res
=>
{
.
then
(
res
=>
{
if
(
res
.
data
.
resultCode
===
1
)
{
if
(
res
.
data
.
resultCode
===
1
)
{
setTimeout
(()
=>
{
setTimeout
(()
=>
{
// let sign = title+parseInt(Math.random()*1000)
// let sign = title+parseInt(Math.random()*1000)
let
sign
=
title
let
sign
=
title
;
const
a
=
document
.
createElement
(
'a'
);
const
a
=
document
.
createElement
(
"a"
);
a
.
setAttribute
(
'download'
,
''
);
a
.
setAttribute
(
"download"
,
""
);
a
.
setAttribute
(
'href'
,
urlObj
.
DomainUrl
+
'/api/file/DownloadFileForPdf?fileName='
+
sign
+
'.pdf&&fPath='
+
res
.
data
.
data
);
a
.
setAttribute
(
a
.
click
();
"href"
,
this
.
isPrint
=
false
urlObj
.
DomainUrl
+
},
1000
)
"/api/file/DownloadFileForPdf?fileName="
+
}
else
{
sign
+
this
.
$message
.
error
(
'PDF获取失败'
);
".pdf&&fPath="
+
}
res
.
data
.
data
this
.
pdfLoading
=
false
);
}).
catch
(
err
=>
{
a
.
click
();
console
.
log
(
err
)
this
.
isPrint
=
false
;
})
},
1000
);
},
500
)
}
else
{
},
this
.
$message
.
error
(
"PDF获取失败"
);
accountChange
:
function
(
index
)
{
}
this
.
accountNum
=
index
this
.
pdfLoading
=
false
;
this
.
accountInfo
.
BankName
=
this
.
accountList
[
index
].
BankName
})
this
.
accountInfo
.
BankSubName
=
this
.
accountList
[
index
].
BankSubName
.
catch
(
err
=>
{
this
.
accountInfo
.
BankNum
=
this
.
accountList
[
index
].
BankNum
console
.
log
(
err
);
});
},
500
);
},
accountChange
:
function
()
{
this
.
accountInfo
.
BankName
=
this
.
accountList
[
this
.
accountNum
].
BankName
;
this
.
accountInfo
.
BankSubName
=
this
.
BankSubName
=
this
.
accountList
[
this
.
accountNum
].
BankSubName
;
this
.
accountInfo
.
BankNum
=
this
.
accountList
[
this
.
accountNum
].
BankNum
;
this
.
setHtml
()
},
MaxMe
(
o
)
{
if
(
window
.
navigator
.
userAgent
.
indexOf
(
"Firefox"
)
>
-
1
)
{
o
.
style
.
height
=
o
.
scrollTop
+
o
.
scrollHeight
+
"px"
;
}
else
{
if
(
o
.
scrollTop
>
0
)
o
.
style
.
height
=
o
.
scrollTop
+
o
.
scrollHeight
+
"px"
;
}
},
},
MaxMe
(
o
)
{
closeChangeMachie
(
done
)
{
if
(
window
.
navigator
.
userAgent
.
indexOf
(
"Firefox"
)
>
-
1
)
{
//弹出框关闭初始化弹框内表单
o
.
style
.
height
=
o
.
scrollTop
+
o
.
scrollHeight
+
"px"
;
done
();
}
else
{
},
if
(
o
.
scrollTop
>
0
)
o
.
style
.
height
=
o
.
scrollTop
+
o
.
scrollHeight
+
"px"
;
}
}
};
}
}
}
</
script
>
</
script
>
<
style
>
<
style
>
@import
"../assets/css/cssReset.css"
;
@import
"../assets/css/cssReset.css"
;
.confirmationOrder
{
line-height
:
18px
;
}
.confirmationOrder
{
.confirmationOrderNormalBtn
{
color
:
#fff
;
float
:
right
;
width
:
60px
;
line-height
:
18px
;
font-size
:
14px
;
box-sizing
:
content-box
;
top
:
10px
;
}
text-align
:
center
;
line-height
:
30px
;
padding
:
0
10px
;
display
:
block
;
.confirmationOrderNormalBtn
{
height
:
30px
;
background
:
#E95252
;
border
:
1px
solid
#E95252
;
cursor
:
pointer
;
color
:
#fff
;
border-radius
:
15px
;
position
:
absolute
;
left
:
70%
;
margin-left
:
-30px
;}
float
:
right
;
.confirmationOrder
{
width
:
800px
;
font-weight
:
bold
;
margin
:
auto
;
font-family
:
"宋体"
;
letter-spacing
:
1px
;}
width
:
60px
;
.confirmationOrder
>
p
{
line-height
:
26px
;}
font-size
:
14px
;
.confirmationOrder
.center
{
text-align
:
center
;}
box-sizing
:
content-box
;
.confirmationOrder
.fnormal
{
font-weight
:
normal
!important
;}
top
:
10px
;
.confirmationOrder
.f22
{
font-size
:
22px
;}
text-align
:
center
;
.confirmationOrder
.f20
{
font-size
:
20px
;}
line-height
:
30px
;
.confirmationOrder
.f18
{
font-size
:
18px
;}
padding
:
0
10px
;
.confirmationOrder
.f16
{
font-size
:
16px
;}
display
:
block
;
.confirmationOrder
.f14
{
font-size
:
14px
;}
height
:
30px
;
.confirmationOrder
.w40
{
width
:
40px
!important
;}
background
:
#e95252
;
.confirmationOrder
.wp40
{
width
:
40%
}
border
:
1px
solid
#e95252
;
.confirmationOrder
.wp80
{
width
:
80%
}
cursor
:
pointer
;
.confirmationOrder
.wp100
{
width
:
100%
}
border-radius
:
15px
;
.confirmationOrderTable
{
width
:
800px
;
border
:
1px
solid
#000
}
position
:
absolute
;
.confirmationOrderTable
tr
td
{
background
:
#fff
;
font-size
:
14px
;
padding
:
3px
10px
;
border-bottom
:
1px
solid
#000
;
border-right
:
1px
solid
#000
;}
left
:
70%
;
.confirmationOrderTable
tr
:last-child
td
{
border-bottom
:
none
;}
margin-left
:
-30px
;
.confirmationOrderTable
tr
td
:last-child
{
border-right
:
none
;}
}
.confirmationOrder
input
{
display
:
inline-block
;
border
:
none
;
outline
:
none
;
font-size
:
14px
;
font-weight
:
bold
;
color
:
#333
;
font-family
:
"宋体"
;
letter-spacing
:
1px
;}
.confirmationOrderNormalBtn2
{
.accountList
input
{
border-bottom
:
1px
solid
#dcdfe6
;}
left
:
78%
;
}
.confirmationOrder
{
width
:
800px
;
font-weight
:
bold
;
margin
:
auto
;
font-family
:
"宋体"
;
letter-spacing
:
1px
;
}
.confirmationOrder
>
p
{
line-height
:
26px
;
}
.confirmationOrder
.center
{
text-align
:
center
;
}
.confirmationOrder
.fnormal
{
font-weight
:
normal
!important
;
}
.confirmationOrder
.f22
{
font-size
:
22px
;
}
.confirmationOrder
.f20
{
font-size
:
20px
;
}
.confirmationOrder
.f18
{
font-size
:
18px
;
}
.confirmationOrder
.f16
{
font-size
:
16px
;
}
.confirmationOrder
.f14
{
font-size
:
14px
;
}
.confirmationOrder
.w40
{
width
:
40px
!important
;
}
.confirmationOrder
.wp40
{
width
:
40%
;
}
.confirmationOrder
.wp80
{
width
:
80%
;
}
.confirmationOrder
.wp100
{
width
:
100%
;
}
.confirmationOrderTable
{
width
:
800px
;
border
:
1px
solid
#000
;
}
.confirmationOrderTable
tr
td
{
background
:
#fff
;
font-size
:
14px
;
padding
:
3px
10px
;
border-bottom
:
1px
solid
#000
;
border-right
:
1px
solid
#000
;
}
.confirmationOrderTable
tr
:last-child
td
{
border-bottom
:
none
;
}
.confirmationOrderTable
tr
td
:last-child
{
border-right
:
none
;
}
.confirmationOrder
input
{
display
:
inline-block
;
border
:
none
;
outline
:
none
;
font-size
:
14px
;
font-weight
:
bold
;
color
:
#333
;
font-family
:
"宋体"
;
letter-spacing
:
1px
;
}
.accountList
input
{
border-bottom
:
1px
solid
#dcdfe6
;
}
.__input
{
display
:
inline-block
;
min-width
:
60px
;
}
</
style
>
</
style
>
\ No newline at end of file
src/router/config.js
View file @
efe33787
...
@@ -3019,6 +3019,14 @@ export default {
...
@@ -3019,6 +3019,14 @@ export default {
title
:
'工作委托'
title
:
'工作委托'
},
},
},
},
{
path
:
'/ConfirmationAdui'
,
name
:
'ConfirmationAdui'
,
component
:
resolve
=>
require
([
'@/components/administrative/ConfirmationAdui'
],
resolve
),
meta
:
{
title
:
'确认函审核'
},
},
{
{
path
:
'/WorkEntrustment'
,
path
:
'/WorkEntrustment'
,
name
:
'WorkEntrustment'
,
name
:
'WorkEntrustment'
,
...
@@ -3511,7 +3519,7 @@ export default {
...
@@ -3511,7 +3519,7 @@ export default {
meta
:
{
meta
:
{
title
:
'供应商投诉'
title
:
'供应商投诉'
},
},
}
}
,
]
]
},
},
]
]
...
...
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