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
5b83e85b
Commit
5b83e85b
authored
Apr 10, 2023
by
黄奎
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
新增组件
parent
c55c25c5
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
2380 additions
and
0 deletions
+2380
-0
orderlist.vue
src/components/orderCommon/orderlist.vue
+2380
-0
No files found.
src/components/orderCommon/orderlist.vue
0 → 100644
View file @
5b83e85b
<
style
scoped
>
.groupTourOrderSearchTable
{
width
:
100%
;
min-width
:
1500px
;
font-size
:
14px
;
color
:
#333
;
border-bottom
:
1px
solid
#cccccc
;
border-right
:
1px
solid
#cccccc
;
border-collapse
:
collapse
;
}
.groupTourOrderSearchTable
tbody
tr
:last-child
{
border-bottom
:
2px
solid
#333
;
}
.groupTourOrderSearchTable
tr
:first-child
td
:first-child
{
border-bottom
:
2px
solid
#333
;
}
.groupTourOrderSearchTable
tr
th
{
background
:
#e6e6e6
;
height
:
30px
;
font-size
:
12px
;
text-align
:
left
;
text-indent
:
15px
;
border-top
:
1px
solid
#cccccc
;
border-left
:
1px
solid
#cccccc
;
}
.groupTourOrderSearchTable
tr
{
background
:
#fff
;
text-align
:
left
;
}
.groupTourOrderSearchTable
tr
td
{
height
:
60px
;
padding
:
10px
;
border-top
:
1px
solid
#cccccc
;
border-left
:
1px
solid
#cccccc
;
}
.groupTourOrderSearchTable
tr
td
p
{
line-height
:
20px
;
}
.groupTourOrderSearchTable
span
.personNo
{
text-decoration
:
underline
;
cursor
:
pointer
;
}
.groupTourOrderSearchTable
span
.personNo
:hover
{
font-weight
:
bold
;
color
:
#e95252
;
}
</
style
>
<
template
>
<div
style=
"width: 100%; height: auto; overflow-x: auto"
class=
"ownScrollbarStyle"
>
<!-- 表格 -->
<table
class=
"groupTourOrderSearchTable"
border=
"0"
cellspacing=
"0"
cellpadding=
"0"
>
<tr>
<th
width=
"230"
>
单号
</th>
<th
width=
"100"
>
客户信息
</th>
<th
width=
"100"
>
人数/机位数
</th>
<th
width=
"80"
>
单价
</th>
<th
width=
"80"
>
成交单价
</th>
<th
width=
"80"
>
应收总额
</th>
<th
width=
"80"
>
实收
</th>
<th
width=
"70"
>
优惠
</th>
<th
width=
"70"
>
幸福存折
</th>
<th
width=
"70"
>
退款
</th>
<th
width=
"70"
>
平台税金
</th>
<th
width=
"80"
>
平台在途
</th>
<th
width=
"80"
>
待收金额
</th>
<th
width=
"60"
>
状态
</th>
<th
width=
"80"
>
候补
</th>
<th
width=
"100"
>
确认函
</th>
<th
width=
"200"
>
操作
</th>
</tr>
<tr>
<td
v-show=
"orderDataList.length == 0"
colspan=
"17"
align=
"center"
>
暂无数据
</td>
</tr>
<template
v-for=
"(op,oIndex) in orderDataList"
>
<tbody
class=
"not_border"
:key=
"oIndex+10000"
>
<tr>
<td
colspan=
"17"
>
类型:
<span
style=
"color:#e95252"
>
{{
op
.
groupName
}}
</span>
</td>
</tr>
</tbody>
<tbody
v-for=
"(item, index) in op.list"
:key=
"index"
>
<tr>
<td
rowspan=
"3"
style=
"position: relative"
>
<span
class=
"TC_neibu"
style=
"float: inherit;margin-left: 5px;margin-right: 5px;position: absolute;top: 10px;left:3px"
v-if=
"item.standardCurrencyName"
:class=
"
{'TCneibu':item.standardCurrencyName=='人民币','TCb2b':item.standardCurrencyName=='日元',
'TCb2c':item.standardCurrencyName=='新台币','AppPlat':item.StandardCurrencyName=='',
'otherPlat':item.standardCurrencyName=='',}">
{{
item
.
standardCurrencyName
}}
结算
</span>
<p
v-if=
"item.isUnionOrder == 1"
class=
"GO_union"
>
联
</p>
<p
v-if=
"item.isChargeLossOrders == 1"
style=
"color: red"
>
损
</p>
<p
class=
"fbold over_ellipsis"
style=
"width: 100%"
:title=
"item.orderId"
>
<span>
{{
item
.
orderId
}}
</span>
<span
style=
"font-weight:100;text-decoration:underline;cursor:pointer;color:#e95252;
"
v-if=
"item.scoreNum >= 0"
@
click=
"goInvetig('investigationList', item.tcid, item.orderId)"
>
(评分
{{
item
.
scoreNum
}}
)
</span>
<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>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"通过B2B确认单报名"
placement=
"top"
v-show=
"item.isFormB2B == 1"
>
<i
class=
"iconfont icon-tiaozheng"
style=
"font-size: 22px; color: #297bef"
></i>
</el-tooltip>
</p>
<div>
{{
item
.
createBy
}}
<br
/>
<span
v-if=
"item.leaveStr != ''"
style=
"color:red"
>
(
{{
item
.
leaveStr
}}
)
</span>
</div>
<p
class=
"fz12 over_ellipsis"
style=
"width: 100%"
>
{{
item
.
commissionSPeopleName
==
"无"
?
""
:
item
.
commissionSPeopleName
}}
</p>
<p>
下单时间:
{{
item
.
createDate
}}
</p>
<p
v-if=
"item.tradeWay == 1"
>
{{
item
.
platformOrder
}}
</p>
<template
v-if=
"item.isOwn == 1 ||IsSupperOrderEdit|| IsLookOrder||isUpdateOrder"
>
<p
v-if=
"item.commissionMoney"
style=
"color: red"
>
提成:
{{
item
.
commissionMoney
}}
{{
item
.
commissionCurrency
}}
</p>
<p
v-else-if=
"item.latestCommissionMoney"
style=
"color: red"
>
提成:
{{
item
.
latestCommissionMoney
}}
</p>
</
template
>
<div>
<div
style=
"color: green"
v-if=
"item.commissionMoney == '' || item.commissionMoney == '-1' "
>
<p
v-if=
"item.extraRewardMoney > 0"
>
额外奖励金额:{{ item.extraRewardMoney }}
</p>
<p
v-if=
"item.extraDeductMoney > 0"
>
额外扣除金额:{{ item.extraDeductMoney }}
</p>
</div>
<div
style=
"color: red"
v-else
>
<p
v-if=
"item.extraRewardMoney > 0"
>
额外奖励金额:{{ item.extraRewardMoney }}
</p>
<p
v-if=
"item.extraDeductMoney > 0"
>
额外扣除金额:{{ item.extraDeductMoney }}
</p>
</div>
<div
style=
"color: red"
>
<p
v-if=
"item.unionExtraMoney != 0"
>
联运额外返佣:{{ item.unionExtraMoney }}
</p>
</div>
</div>
<div
v-if=
"op.groupName === '单团'"
style=
"color: red; cursor: pointer;"
@
click=
"seeBJD(item.quotationUrl)"
>
查看报价单
</div>
</td>
<td>
<!--客户信息-->
<
template
v-if=
"item.isOwn == 1 || IsSupperOrderEdit || IsLookOrder || isUpdateOrder"
>
<p
class=
"fz12 over_ellipsis"
style=
"width: 120px"
:title=
"item.contactName"
>
{{
item
.
contactName
}}
</p>
<p
class=
"fz12"
>
{{
item
.
contactMobile
}}
</p>
<p
class=
"fz12"
v-if=
"item.industryCategory !==''"
style=
"color: green"
>
行业类别:
{{
item
.
industryCategory
}}
</p>
</
template
>
<p
v-if=
"item.isOwn == 2 && !IsSupperOrderEdit && !IsLookOrder && isUpdateOrder == false "
>
*****
</p>
</td>
<td>
<!--人数/机位数-->
<span
v-if=
"item.guestNumStatus == 1"
style=
"color: #1aa86b"
class=
"personNo"
slot=
"reference"
>
{{ item.guestNum }}/{{ item.ySeatNum > 0 ? item.ySeatNum + "Y " : "" }}
{{ item.eSeatNum > 0 ? item.eSeatNum + "E " : ""}}
{{ item.fSeatNum > 0 ? item.fSeatNum + "F " : "" }}
</span>
<span
v-if=
"item.guestNumStatus == 2"
style=
"color: #e95252"
class=
"personNo"
slot=
"reference"
>
{{ item.guestNum }}/{{ item.ySeatNum > 0 ? item.ySeatNum + "Y " : ""}}
{{ item.eSeatNum > 0 ? item.eSeatNum + "E " : "" }}
{{ item.fSeatNum > 0 ? item.fSeatNum + "F " : "" }}
</span>
<span
v-if=
"item.guestNumStatus == 3"
style=
"color: #666"
class=
"personNo"
slot=
"reference"
>
{{ item.guestNum }}/{{ item.ySeatNum > 0 ? item.ySeatNum + "Y " : ""}}
{{ item.eSeatNum > 0 ? item.eSeatNum + "E " : "" }}
{{ item.fSeatNum > 0 ? item.fSeatNum + "F " : "" }}
</span>
</td>
<td
style=
"color: #ff9c00"
>
<!--单价-->
<span>
{{ item.tC_Price }}
</span>
</td>
<td
style=
"color: #ff9c00"
>
<!--成交单价-->
<span
v-if=
"item.isOwn == 1||IsSupperOrderEdit ||IsLookOrder||isUpdateOrder"
>
{{ item.unit_Price }}
</span>
<span
v-else
>
*****
</span>
</td>
<td>
<!--应收-->
<p
style=
"color: #ff9c00"
>
<span
v-if=
"item.isOwn == 1||IsSupperOrderEdit||IsLookOrder||isUpdateOrder"
>
{{item.preferPrice}}
</span>
<span
v-else
>
*****
</span>
</p>
</td>
<td>
<el-popover
style=
"padding: 0"
width=
"370"
trigger=
"click"
>
<div
class=
"personNolayer"
>
<table
border=
"0"
cellspacing=
"1"
cellpadding=
"1"
>
<tr>
<th>
单据号
</th>
<th>
金额
</th>
<th>
类型
</th>
<th>
状态
</th>
</tr>
<
template
v-if=
"orderList.length > 0"
>
<tr
v-for=
"(item2, index2) in orderList"
:key=
"index2"
>
<td>
{{
item2
.
FrID
}}
</td>
<td>
<span
v-if=
"item.isOwn == 1||IsSupperOrderEdit||isUpdateOrder"
>
{{
item2
.
PayMoney
}}
</span>
<span
v-else
>
******
</span>
</td>
<td>
{{
item2
.
TypeName
}}
</td>
<td>
{{
item2
.
StatusName
}}
</td>
</tr>
</
template
>
<tr
v-if=
"orderList.length == 0"
>
<td
colspan=
"4"
align=
"center"
>
暂无数据
</td>
</tr>
</table>
</div>
<span
v-if=
"item.isOwn == 1 || IsSupperOrderEdit || isUpdateOrder"
:style=
"{
cursor: 'pointer',
color: item.dueInMoney === 0 ? '' : '#e95252',
}"
@
click=
"getOrderDetail(item)"
slot=
"reference"
>
{{ item.income }}
</span>
<span
v-else
>
******
</span>
</el-popover>
</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>
<
template
v-if=
"item.couponAllotList.length > 0"
>
<tr
v-for=
"(item2, index2) in item.couponAllotList"
:key=
"index2+200000"
>
<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>
</
template
>
<tr
v-if=
"item.couponAllotList.length == 0"
>
<td
colspan=
"6"
align=
"center"
>
暂无数据
</td>
</tr>
</table>
</div>
<span
style=
"cursor:pointer;color:#e95252;text-decoration:underline;"
@
click=
"getOrderDetail(item)"
slot=
"reference"
>
{{ item.discountMoney }}
</span>
</el-popover>
</td>
<td>
<span
v-if=
"item.isOwn == 1 || IsSupperOrderEdit || isUpdateOrder"
>
<el-popover
v-if=
"item.customerId || item.customerId == 0"
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>
时间(
<span
@
click=
"goUrlHappy(item)"
style=
"cursor: pointer"
colspan=
"4"
align=
"center"
>
查看更多
</span>
)
</th>
</tr>
<tr
v-for=
"(item2, index2) in redBagList"
:key=
"index2"
>
<td>
{{ item2.Money }}
</td>
<td>
{{ item2.Type == 1 ? "收入" : "折扣" }}
</td>
<td>
{{ item2.Description }}
</td>
<td>
{{ item2.UpdateTime }}
</td>
</tr>
<tr
v-if=
"redBagList.length == 0"
>
<td
colspan=
"4"
align=
"center"
>
暂无数据
</td>
</tr>
<tr></tr>
</table>
</div>
<span
@
click=
"getRedBag(item)"
style=
"
cursor: pointer;
color: #e95252;
text-decoration: underline;
"
slot=
"reference"
>
{{ item.redEnvelopeMoney }}
</span>
</el-popover>
<span
v-else
style=
"
cursor: pointer;
color: #e95252;
text-decoration: underline;
"
>
{{ item.redEnvelopeMoney }}
</span>
</span>
<span
v-else
>
******
</span>
</td>
<td>
<span
v-if=
"item.isOwn == 1 || IsSupperOrderEdit || isUpdateOrder"
>
{{ item.refund }}
</span>
<span
v-else
>
******
</span>
</td>
<td>
<span
v-if=
"item.isOwn == 1 || IsSupperOrderEdit || isUpdateOrder"
>
{{ item.platformTax }}
</span>
<span
v-else
>
******
</span>
</td>
<td>
<span
v-if=
"item.isOwn == 1 || IsSupperOrderEdit || isUpdateOrder"
>
{{ item.zaiTuMoney }}
</span>
<span
v-else
>
******
</span>
</td>
<td>
<span
v-if=
"item.isOwn == 1 || IsSupperOrderEdit || isUpdateOrder"
:class=
"{
color_red_order: item.dueInMoney !== item.preferPrice,
}"
>
{{ item.dueInMoney }}
</span>
<span
v-else
>
******
</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=
"fz12"
>
<div
v-if=
"item.orderState === 3"
>
<span
v-if=
"item.waitYNum > 0"
style=
"margin: 0 5px 0 0"
>
{{ item.waitYNum }}(Y)
</span>
<span
v-if=
"item.waitENum > 0"
style=
"margin: 0 5px 0 0"
>
{{ item.waitENum }}(E)
</span>
<span
v-if=
"item.waitFNum > 0"
style=
"margin: 0 5px 0 0"
>
{{ item.waitFNum }}(F)
</span>
</div>
</td>
<td>
<span
v-if=
"item.confirmFileList.length > 0"
style=
"cursor: pointer"
class=
"fz12 dowloadSpan"
@
click=
"downLoadFile(item.confirmFileList)"
>
确认函下载
</span>
<i
v-if=
"
item.confirmFileList.length > 0 &&
item.commissionSharePeople !== userId
"
@
click=
"deleteFile(item)"
style=
"margin-left: 5px"
class=
"el-icon-error color999"
></i>
<
template
v-if=
"item.contractNum.length == 0"
>
<el-upload
v-if=
"
(item.confirmFileList.length == 0 && item.isOwn == 1) ||
IsSupperOrderEdit
"
:http-request=
"uploadFileBtn"
:multiple=
"false"
:show-file-list=
"false"
action=
""
>
<el-button
size=
"small"
type=
"danger"
@
click=
"getItem(item)"
>
上传
</el-button>
</el-upload>
</
template
>
</td>
<td
class=
"groupTourOrderIcon"
>
<el-button-group
v-if=
"item.isOwn == 1 || IsSupperOrderEdit || isUpdateOrder"
>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"修改"
placement=
"top-start"
>
<el-button
v-if=
"
IsSupperOrderEdit ||
isUpdateOrder ||
(item.isOwn == 1 &&
item.isOrder == '1' &&
item.isHaveFinance != '1' &&
item.orderState != '1' &&
item.orderState != '4')
"
type=
"primary"
style=
"background: #00c6ff; border-color: #00c6ff"
icon=
"iconfont icon-bianji-smal"
@
click=
"getDetail(item)"
></el-button>
</el-tooltip>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"修改备注"
placement=
"top-start"
>
<el-button
v-if=
"IsSupperOrderEdit || item.isOwn == 1"
type=
"primary"
style=
"background: #a55eea; border-color: #a55eea"
icon=
"iconfont icon-beizhu"
@
click=
"getRemarks(item)"
></el-button>
</el-tooltip>
<el-tooltip
effect=
"dark"
content=
"日志"
placement=
"top-start"
style=
"float: left"
>
<el-popover
width=
"230"
trigger=
"click"
>
<div
class=
"priceContentDiv"
>
<div
class=
"AuditLog"
>
日志
</div>
<div
class=
"logContact"
style=
"background: #f9f9f9; padding: 20px 10px 0"
>
<div
v-if=
"logList.length > 0"
v-for=
"(item, index) in logList"
:key=
"index"
>
<div
class=
"clearfix"
>
<div
class=
"Auditcircle"
style=
"left: 6px !important"
></div>
<div
class=
"operateName"
style=
"color: #005caa"
>
{{ item.emName }}
</div>
<div
class=
"operateDate fz12 color666"
>
{{ item.x }}
</div>
</div>
<div
class=
"fz12 color333"
>
{{ item.logInfo }}
</div>
</div>
<div
v-if=
"logList.length == 0"
>
暂无数据
</div>
</div>
</div>
<el-button
slot=
"reference"
@
click=
"getLogDetail(item)"
type=
"primary"
style=
"
background: #47bf8c;
border-color: #47bf8c;
border-top-right-radius: 0;
border-bottom-right-radius: 0;
"
icon=
"iconfont icon-rizhi1"
></el-button>
</el-popover>
</el-tooltip>
<el-tooltip
effect=
"dark"
content=
"更多"
placement=
"top-start"
style=
"float: left"
>
<el-popover
width=
"100"
trigger=
"hover"
>
<div
class=
"groupTourOrder_more"
>
<div
@
click=
"goUrlT('confirmationOrder', item.orderId)"
>
确认函
{{
item.operationState === 2
? "(拒绝)"
: item.operationState === 1
? "(通过)"
: item.operationState === 0
? "(待审核)"
: ""
}}
</div>
<div
v-if=
"isEditOrderCreate == 1 || IsSupperOrderEdit"
@
click=
"getSalerInfo(item)"
>
修改业务员
</div>
<
template
v-if=
"item.lineId==90"
>
<div
v-if=
"item.outNotice == 1"
@
click=
"toTrip(item)"
>
{{
$t
(
"Operation.Op_teamNotice"
)
}}
<span
v-if=
"item.outNotice == 1"
>
(OK)
</span><span
v-else
>
(
{{
$t
(
"visa.v_zanding"
)
}}
)
</span>
</div>
</
template
>
<
template
v-else
>
<div
v-if=
"item.isGuestOk == '1' && item.outNotice == 1"
@
click=
"toTrip(item)"
>
{{
$t
(
"Operation.Op_teamNotice"
)
}}
<span
v-if=
"item.outNotice == 1"
>
(OK)
</span><span
v-else
>
(
{{
$t
(
"visa.v_zanding"
)
}}
)
</span>
</div>
</
template
>
<div
v-if=
"item.orderState != '4'"
@
click=
"goUrlP('旅客名单', 'passengerSaleList', item)"
>
旅客名单
</div>
<div
v-if=
"item.isOrder == '1'&& (item.isHaveFinance == '1'||item.orderState == '1') "
@
click=
"getHouse(item)"
>
修改房型
</div>
<div
v-if=
"item.isOrder == '1' &&item.orderState != '4'&&TransferMission == true"
@
click=
"transfer(item)"
>
订单转团
</div>
<div
v-if=
"isUpdateOrder"
@
click=
"OPRemark(item),(zhuanLoading = true),(OPRemarkMsg.OrderId = item.orderId) "
>
OP备注
</div>
<div
v-if=
"isUpdateOrderCommission"
@
click=
"
(TCMsg.OrderId = item.orderId)
,(TCMsg.CommissionMinusRate = item.commissionMinusRate)
,(TCMsg.LatestCommissionMoney = item.latestCommissionMoney)
,(TiChengLoading = true)
"
>
修改提成
</div>
<div
v-if=
"isUpdateOrderCommission"
@
click=
"
(EwMsg.OrderId = item.orderId)
,(EwMsg.ExtraRewardMoney = item.extraRewardMoney)
,(EwMsg.ExtraDeductMoney = item.extraDeductMoney)
,(OrderMoneyDialog = true)
"
>
设置额外金额
</div>
<div
v-if=
"(item.confirmFileList.length > 0 || item.contractNum.length > 0) && item.receivableMoney - item.invoiceApplyTotal > 0 "
@
click=
" goUrlAdd('invoicesManagerAdd', item.orderId, item.tcid, item.customerId ) "
>
申请发票
</div>
<div
v-if=
"item.orderState == '1' || item.orderState == '2' "
@
click=
"setChargeLoss(item)"
>
<span
v-if=
"item.isChargeLossOrders == 1"
>
恢复收损单
</span>
<span
v-else
>
设为收损单
</span>
</div>
<div
v-if=
"item.orderState == 2"
@
click=
" Discount(item.tcid), (SOMsg.OrderId = item.orderId), (SOMsg.OrderUnitPrice = item.unit_Price) "
>
申请优惠
</div>
<div
v-if=
" qjGroupId == userInfo.RB_Group_id || F_Finance_Create "
@
click=
"ShenQingPhoto(item)"
>
申请照片
</div>
<div
v-if=
"item.isOrder == '1' && (item.orderState == '1' || item.orderState == '2' ||item.orderState == '3') && item.isCanClear == 0 "
@
click=
"deleteItem(item)"
>
取消
</div>
<div
v-if=
"item.isOrder == '1' && (item.orderState == '1' || item.orderState == '2' || item.orderState == '3') && item.isCanClear == 1"
title=
"如需取消订单清联系OP"
style=
"color: red"
>
订单已确认,取消请联系OP
</div>
<div
v-if=
"item.scoreNum >= 0"
@
click=
"goInvetig('investigationList',item.tcid,item.orderId )"
>
查看旅客调查
</div>
</div>
<el-button
slot=
"reference"
type=
"primary"
style=
"background:#297bef;border-color:#297bef;border-top-left-radius:0;border-bottom-left-radius: 0; "
icon=
"iconfont icon-more"
></el-button>
</el-popover>
</el-tooltip>
</el-button-group>
<payurlItem
v-if=
"item.isOwn == 1 && item.airConfirm != 2"
:item=
"item"
:showID=
"showID"
:photoF=
"item.photoNum > 0"
v-show=
"item.orderState != '4' && item.orderState != '3' &&
(qjGroupId == userInfo.RB_Group_id || F_Finance_Create)
"
v-on:childByValue=
"childByValue"
></payurlItem>
</td>
</tr>
<tr
style=
"height: 20px"
>
<td
colspan=
"16"
class=
"RL_Order"
style=
"height: 20px"
>
<span
class=
"RL-remarkTitle"
v-if=
"
item.guestList.length > 0 &&
(item.isOwn == 1 ||
IsSupperOrderEdit ||
IsLookOrder ||
isUpdateOrder)
"
>
名单:
</span>
<span
class=
"RL-redType RL-remarkCon"
v-if=
"
item.guestList.length > 0 &&
(item.isOwn == 1 ||
IsSupperOrderEdit ||
IsLookOrder ||
isUpdateOrder)
"
>
<span
v-for=
"childItem in item.guestList"
style=
"color: blue"
>
{{ childItem.userName
}}
<span
v-if=
"childItem.isApplyPhoto == 1"
style=
"color: red"
>
(照)
</span>
</span>
<span
v-if=
"item.photoNum > 0"
>
(照片一人 {{ item.photoNum }}份)
</span>
</span>
<p
v-if=
"item.cancelGuestList && item.cancelGuestList.length > 0"
>
<span
class=
""
>
取消名单:
</span>
<span
class=
"RL-redType RL-remarkCon"
>
<span
style=
"color: red"
n
v-for=
"(childItem, childIndex) in item.cancelGuestList"
:key=
"childIndex"
>
{{ childItem.userName }}
</span>
</span>
</p>
<span
style=
"display: block"
>
房间信息
<span
v-if=
"item.oneSex > 0"
style=
"color: #e95252"
>
({{ item.oneSex == 1 ? "单男" : "单女" }})
</span>
:
{{ item.orderGuestHouseStr }}
<el-popover
trigger=
"click"
popper-class=
"KT_Scenic"
>
<table
width=
"100%"
border=
"0"
cellspacing=
"0"
cellpadding=
"0"
>
<tr
class=
"_color_666"
style=
"text-align: center"
>
<th
width=
"150"
>
景点名称
</th>
<th
width=
"60"
>
人数
</th>
<th
width=
"60"
>
退款金额
</th>
</tr>
<tr
v-for=
"fItem in item.orderBackScenicList"
style=
"text-align: center"
>
<td
style=
"text-align: left"
>
{{ fItem.couponsName }}
</td>
<td>
{{ fItem.number }}
</td>
<td>
{{ fItem.backMoney }}
</td>
</tr>
</table>
<span
slot=
"reference"
v-if=
"
item.orderBackScenicList &&
item.orderBackScenicList.length > 0
"
style=
"color: #f56c6c; margin-left: 20px; cursor: pointer"
>
退景点
</span>
</el-popover>
</span>
<div>
<span
v-if=
"item.opTipMoney == '' && item.tipMoney != ''"
style=
"color: red"
>
(小费:{{ item.tipMoney }})
</span>
<span
v-if=
"item.opTipMoney != ''"
style=
"color: red"
>
(小费:{{ item.opTipMoney }})
<span>
单据:
</span>
<span
@
click=
"gourlTip('FinancialDocumentsDetail', id)"
style=
"
text-decoration: underline;
color: blue;
cursor: pointer;
"
v-for=
"(id, i) in item.tipFrId"
:key=
"i"
>
{{ id }}
</span>
</span>
<div
v-if=
"item.contractNum == ''"
class=
"GO_Contract"
@
click=
"goContract(item)"
style=
"display: none"
>
领取合同
</div>
<div
v-else
class=
"GO_Contract"
@
click=
"goContract(item)"
style=
"display: none"
>
{{ item.contractNum }}
</div>
<div>
<
template
v-if=
"item.contractNum && item.contractNum.length > 0"
>
<span
v-for=
"sItem in item.contractNum"
class=
"GO_Contract"
@
click=
"goContract(item, sItem)"
>
{{
sItem
.
client_Name
+
""
+
sItem
.
contractNum
}}
</span>
</
template
>
</div>
</div>
</td>
</tr>
<tr>
<td
colspan=
"4"
class=
"groupTourOrder_remarksBytuan"
style=
"height: 40px"
>
<div>
<div
style=
"width: 95%; display: inline-block"
>
<div
style=
"color: red"
>
<span>
备注时间:{{ item.rematksTime }}
</span>
</div>
<div
style=
"color: red"
>
<p>
备注:
<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>
<
template
>
<template
v-if=
"
item.isOwn == 1 ||
IsSupperOrderEdit ||
IsLookOrder ||
isUpdateOrder
"
>
<span
v-if=
"
item.clientSource == 1 && item.brandName != ''
"
>
{{
item
.
brandName
}}
订单
{{
item
.
platformOrder
}}
;
</span>
{{
item
.
remarks
}}
</
template
>
</template>
</p>
</div>
</div>
<div
style=
"
float: right;
text-align: right;
font-size: 12px;
color: #e95252;
"
>
<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
v-if=
"
item.isOwn == 1 ||
IsSupperOrderEdit ||
IsLookOrder ||
isUpdateOrder
"
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_remarksBytuan"
style=
"height: 40px"
>
<div>
<div
style=
"color: red"
>
<span>
OP备注:
</span>
<p>
{{ item.oP_Remarks ? item.oP_Remarks : "无" }}
</p>
</div>
</div>
</td>
<td
colspan=
"4"
class=
"groupTourOrder_SpecialAPP"
stysle=
"height: 40px;"
>
<div
v-if=
"item.isOwn == 1 || IsSupperOrderEdit || isUpdateOrder"
>
特价申请函:
<
template
v-if=
"item.orderspecialofferId === 0"
>
<span
class=
"font-color-blur"
>
未申请
</span>
</
template
>
<
template
v-else
>
<span
class=
"font-color-red"
v-if=
"item.orderspecialofferState === -1"
>
拒绝
</span>
<span
class=
"font-color-org"
v-if=
"item.orderspecialofferState === 0"
>
审批中
</span>
<span
class=
"font-color-green"
v-if=
"item.orderspecialofferState === 1"
>
通过
</span>
</
template
>
</div>
<div
class=
"font-color-red"
v-if=
"item.orderspecialofferId !== 0"
>
申请说明:
<span>
{{ item.orderspecialofferApplyReason }}
</span>
</div>
<div
class=
"font-color-red"
v-if=
"item.orderspecialofferId !== 0"
>
审批说明:
<span>
{{ item.orderspecialofferReason }}
</span>
</div>
<div
v-else
>
******
</div>
</td>
<td
colspan=
"4"
class=
"groupTourOrder_tickets"
style=
"height: 40px"
>
<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.refundFinanceList.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>
</template>
<tbody
v-show=
"orderDataList.length !== 0"
>
<tr>
<td></td>
<td
colspan=
"16"
class=
"groupTourOrderByTuan_seat"
>
<div>
<span>
本团机位:
</span>
<span>
{{
tuanInfo.config
&&
tuanInfo.config
&&
tuanInfo.config.YSeat
}}Y + {{ tuanInfo.config
&&
tuanInfo.config.CSeat }}E +
{{ tuanInfo.config
&&
tuanInfo.config.FSeat }}F
</span>
</div>
<div>
<span>
剩余机位:
</span>
<span>
<
template
v-if=
"tuanInfo && tuanInfo.config && seat"
>
{{
tuanInfo
.
config
.
YSeat
-
seat
.
YSeat
>
0
?
tuanInfo
.
config
.
YSeat
-
seat
.
YSeat
:
0
}}
Y +
{{
tuanInfo
.
config
.
CSeat
-
seat
.
CSeat
>
0
?
tuanInfo
.
config
.
CSeat
-
seat
.
CSeat
:
0
}}
E +
{{
tuanInfo
.
config
.
FSeat
-
seat
.
FSeat
>
0
?
tuanInfo
.
config
.
FSeat
-
seat
.
FSeat
:
0
}}
F
</
template
>
</span>
</div>
<div>
<span>
候补机位:
</span>
<span>
<
template
v-if=
"tuanInfo && tuanInfo.config && seat"
>
{{
tuanInfo
.
config
.
YSeat
-
seat
.
YSeat
>
0
?
0
:
seat
.
YSeat
-
tuanInfo
.
config
.
YSeat
}}
Y +
{{
tuanInfo
.
config
.
CSeat
-
seat
.
CSeat
>
0
?
0
:
seat
.
CSeat
-
tuanInfo
.
config
.
CSeat
}}
E +
{{
tuanInfo
.
config
.
FSeat
-
seat
.
FSeat
>
0
?
0
:
seat
.
FSeat
-
tuanInfo
.
config
.
FSeat
}}
F
</
template
>
</span>
</div>
<div>
<span>
参团:
</span>
<span>
{{ seat.joinGroupNum }}
</span>
</div>
<div>
<span>
自由行
</span>
<span>
{{ seat.IndependentTravelCount }}
</span>
</div>
<div>
<span>
单地接
</span>
<span>
{{ seat.NurseryGraftingCount }}
</span>
</div>
<div>
<span>
单机票
</span>
<span>
{{ seat.SingleAirTicketCount }}
</span>
</div>
<div>
<span>
领队:
</span>
<span>
{{ seat.leaderNum }}
</span>
</div>
<div>
<span>
自备签:
</span>
<span>
{{ seat.ownVisaNum }}
</span>
</div>
</td>
</tr>
</tbody>
<!-- 取消订单 -->
<tr
v-if=
"cancelRtData != null && cancelRtData.length > 0"
>
<td
colspan=
"17"
>
<span
class=
"RL-redType"
@
click=
"isShowCancelOrder = !isShowCancelOrder"
style=
"cursor: pointer"
title=
"点击查看"
>
取消订单(
<span
style=
"color: blue"
>
{{
!isShowCancelOrder ? "展开" : "收起"
}}
</span>
)
</span>
</td>
</tr>
<tbody
v-if=
"isShowCancelOrder"
v-for=
"(item, index) in cancelRtData"
:key=
"index + 1000"
>
<tr>
<td
rowspan=
"3"
style=
"position: relative"
>
<p
v-if=
"item.isUnionOrder == 1"
class=
"GO_union"
>
联
</p>
<p
v-if=
"item.isChargeLossOrders == 1"
style=
"color: red"
>
损
</p>
<p
class=
"fbold over_ellipsis"
style=
"width: 100%"
:title=
"item.orderId"
>
<span>
{{ item.orderId }}
</span>
<span
style=
"font-weight: 100; cursor: pointer"
v-if=
"item.scoreNum >= 0"
@
click=
"
goInvetig('investigationList', item.tcid, item.orderId)
"
>
(评分{{ item.scoreNum }})
</span>
<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>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"通过B2B确认单报名"
placement=
"top"
v-show=
"item.isFormB2B == 1"
>
<i
class=
"iconfont icon-tiaozheng"
style=
"font-size: 22px; color: #297bef"
></i></el-tooltip>
</p>
<div>
{{ item.createBy }}
<br
/><span
v-if=
"item.leaveStr != ''"
style=
"color: red"
>
({{ item.leaveStr }})
</span>
</div>
<p
class=
"fz12 over_ellipsis"
style=
"width: 100%"
>
{{
item.commissionSPeopleName == "无"
? ""
: item.commissionSPeopleName
}}
</p>
<p>
下单时间:{{ item.createDate }}
</p>
<p
v-if=
"item.tradeWay == 1"
>
{{ item.platformOrder }}
</p>
<
template
v-if=
"
item.isOwn == 1 ||
IsSupperOrderEdit ||
IsLookOrder ||
isUpdateOrder
"
>
<p
v-if=
"item.commissionMoney"
style=
"color: red"
>
提成:
{{
item
.
commissionMoney
}}
{{
item
.
CommissionCurrency
}}
</p>
<p
v-else-if=
"item.latestCommissionMoney"
style=
"color: red"
>
提成:
{{
item
.
latestCommissionMoney
}}
</p>
</
template
>
</td>
<td>
<p
v-if=
"
item.isOwn == 1 ||
IsSupperOrderEdit ||
IsLookOrder ||
isUpdateOrder
"
class=
"fz12 over_ellipsis"
style=
"width: 120px"
:title=
"item.contactName"
>
{{ item.contactName }}
</p>
<p
v-if=
"
item.isOwn == 1 ||
IsSupperOrderEdit ||
IsLookOrder ||
isUpdateOrder
"
class=
"fz12"
>
{{ item.contactMobile }}
</p>
<p
v-if=
"
item.isOwn == 2 &&
!IsSupperOrderEdit &&
!IsLookOrder &&
isUpdateOrder == false
"
>
*****
</p>
</td>
<td>
<span
v-if=
"item.guestNumStatus == 1"
style=
"color: #1aa86b"
class=
"personNo"
slot=
"reference"
>
{{ item.guestNum }}/{{
item.ySeatNum > 0 ? item.ySeatNum + "Y " : ""
}}{{ item.eSeatNum > 0 ? item.eSeatNum + "E " : ""
}}{{ item.fSeatNum > 0 ? item.fSeatNum + "F " : "" }}
</span>
<span
v-if=
"item.guestNumStatus == 2"
style=
"color: #e95252"
class=
"personNo"
slot=
"reference"
>
{{ item.guestNum }}/{{
item.ySeatNum > 0 ? item.ySeatNum + "Y " : ""
}}{{ item.eSeatNum > 0 ? item.eSeatNum + "E " : ""
}}{{ item.fSeatNum > 0 ? item.fSeatNum + "F " : "" }}
</span>
<span
v-if=
"item.guestNumStatus == 3"
style=
"color: #666"
class=
"personNo"
slot=
"reference"
>
{{ item.guestNum }}/{{
item.ySeatNum > 0 ? item.ySeatNum + "Y " : ""
}}{{ item.eSeatNum > 0 ? item.eSeatNum + "E " : ""
}}{{ item.fSeatNum > 0 ? item.fSeatNum + "F " : "" }}
</span>
</td>
<td
style=
"color: #ff9c00"
>
<span>
{{ item.tC_Price }}
</span>
</td>
<td
style=
"color: #ff9c00"
>
<span
v-if=
"
item.isOwn == 1 ||
IsSupperOrderEdit ||
IsLookOrder ||
isUpdateOrder
"
>
{{ item.unit_Price }}
</span>
<span
v-else
>
*****
</span>
</td>
<td>
<p
style=
"color: #ff9c00"
>
<span
v-if=
"
item.isOwn == 1 ||
IsSupperOrderEdit ||
IsLookOrder ||
isUpdateOrder
"
>
{{ item.preferPrice }}
</span>
<span
v-else
>
*****
</span>
</p>
</td>
<td>
<el-popover
style=
"padding: 0"
width=
"370"
trigger=
"click"
>
<div
class=
"personNolayer"
>
<table
border=
"0"
cellspacing=
"1"
cellpadding=
"1"
>
<tr>
<th>
单据号
</th>
<th>
金额
</th>
<th>
类型
</th>
<th>
状态
</th>
</tr>
<tr
v-if=
"orderList.length > 0"
v-for=
"(item2, index2) in orderList"
:key=
"index2"
>
<td>
{{ item2.FrID }}
</td>
<td>
<span
v-if=
"
item.isOwn == 1 ||
IsSupperOrderEdit ||
isUpdateOrder
"
>
{{ item2.PayMoney }}
</span>
<span
v-else
>
******
</span>
</td>
<td>
{{ item2.TypeName }}
</td>
<td>
{{ item2.StatusName }}
</td>
</tr>
<tr
v-if=
"orderList.length == 0"
>
<td
colspan=
"4"
align=
"center"
>
暂无数据
</td>
</tr>
</table>
</div>
<span
v-if=
"item.isOwn == 1 || IsSupperOrderEdit || isUpdateOrder"
:style=
"{
cursor: 'pointer',
color: item.dueInMoney === 0 ? '' : '#e95252',
}"
@
click=
"getOrderDetail(item)"
slot=
"reference"
>
{{ item.income }}
</span>
<span
v-else
>
******
</span>
</el-popover>
</td>
<!-- 优惠 -->
<td></td>
<td>
<span
v-if=
"item.isOwn == 1 || IsSupperOrderEdit || isUpdateOrder"
>
{{ item.redEnvelopeMoney }}
</span>
<span
v-else
>
******
</span>
</td>
<td>
<span
v-if=
"item.isOwn == 1 || IsSupperOrderEdit || isUpdateOrder"
>
{{ item.refund }}
</span>
<span
v-else
>
******
</span>
</td>
<td>
<span
v-if=
"item.isOwn == 1 || IsSupperOrderEdit || isUpdateOrder"
>
{{ item.platformTax }}
</span>
<span
v-else
>
******
</span>
</td>
<td>
<span
v-if=
"item.isOwn == 1 || IsSupperOrderEdit || isUpdateOrder"
>
{{ item.zaiTuMoney }}
</span>
<span
v-else
>
******
</span>
</td>
<td>
<span
v-if=
"item.isOwn == 1 || IsSupperOrderEdit || isUpdateOrder"
:class=
"{
color_red_order: item.dueInMoney !== item.preferPrice,
}"
>
{{ item.dueInMoney }}
</span>
<span
v-else
>
******
</span>
</td>
<td
colspan=
"2"
class=
"fz12"
:style=
"item.orderState === 3 ? 'color: #e95252;' : ''"
>
{{ item.statsstr }}
<br
/>
<span
style=
"color: red"
v-if=
"item.orderCancelDate != ''"
>
{{
item.orderCancelDate
}}
</span>
</td>
<td>
<span
v-if=
"item.confirmFileList.length > 0"
style=
"cursor: pointer"
class=
"fz12 dowloadSpan"
@
click=
"downLoadFile(item.confirmFileList)"
>
确认函下载
</span>
<i
v-if=
"
item.confirmFileList.length > 0 &&
item.commissionSharePeople !== userId
"
@
click=
"deleteFile(item)"
style=
"margin-left: 5px"
class=
"el-icon-error color999"
></i>
</td>
<td
class=
"groupTourOrderIcon"
></td>
</tr>
<tr
style=
"height: 20px"
>
<td
colspan=
"16"
class=
"RL_Order"
style=
"height: 20px"
>
<span
class=
"RL-remarkTitle"
v-if=
"
item.guestList.length > 0 &&
(item.isOwn == 1 ||
IsSupperOrderEdit ||
IsLookOrder ||
isUpdateOrder)
"
>
名单:
</span>
<span
class=
"RL-redType RL-remarkCon"
v-if=
"
item.guestList.length > 0 &&
(item.isOwn == 1 ||
IsSupperOrderEdit ||
IsLookOrder ||
isUpdateOrder)
"
>
<span
v-for=
"childItem in item.guestList"
style=
"color: blue"
>
{{ childItem.userName
}}
<span
v-if=
"childItem.isApplyPhoto == 1"
style=
"color: red"
>
(照)
</span>
</span>
<span
v-if=
"item.photoNum > 0"
>
(照片一人 {{ item.photoNum }}份)
</span>
</span>
<p
v-if=
"item.cancelGuestList && item.cancelGuestList.length > 0"
>
<span
class=
""
>
取消名单:
</span>
<span
class=
"RL-redType RL-remarkCon"
>
<span
style=
"color: red"
v-for=
"(childItem, childIndex) in item.cancelGuestList"
:key=
"childIndex"
>
{{ childItem.userName }}
</span>
</span>
</p>
</td>
</tr>
<tr>
<td
colspan=
"5"
class=
"groupTourOrder_remarksBytuan"
style=
"height: 40px"
>
<div>
<div
style=
"display: inline-block; width: 95%; color: red"
>
<span>
备注:
</span>
<p>
<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>
<
template
>
<template
v-if=
"
item.isOwn == 1 ||
IsSupperOrderEdit ||
IsLookOrder ||
isUpdateOrder
"
>
<span
v-if=
"item.clientSource == 1 && item.brandName != ''"
>
{{
item
.
brandName
}}
订单
{{
item
.
platformOrder
}}
;
</span>
{{
item
.
remarks
}}
</
template
>
</template>
</p>
</div>
<div
style=
"display: inline-block"
>
<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
v-if=
"
item.isOwn == 1 ||
IsSupperOrderEdit ||
IsLookOrder ||
isUpdateOrder
"
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=
"5"
class=
"groupTourOrder_remarksBytuan"
style=
"height: 40px"
>
<div>
<div>
<span>
OP备注:
</span>
<p>
{{ item.oP_Remarks ? item.oP_Remarks : "无" }}
</p>
</div>
</div>
</td>
<td
colspan=
"6"
class=
"groupTourOrder_tickets"
style=
"height: 40px"
>
</td>
</tr>
</tbody>
</table>
<div
class=
"combottomDiv"
v-if=
"showChangeSales"
style=
"height: 200px"
>
<updateSalesMan
@
closeUpdiv=
"closeSalseDiv"
@
getList=
"getList"
:subInfo=
"subInfo"
></updateSalesMan>
</div>
<!--修改OP备注-->
<el-dialog
custom-class=
"w350"
title=
"修改OP备注"
:visible
.
sync=
"zhuanLoading"
center
:before-close=
"initOPRemarkMsg"
>
<el-form
label-width=
"110px"
>
<el-form-item
label=
"OP备注:"
class=
"w280"
>
<el-input
type=
"textarea"
:rows=
"2"
v-model=
"OPRemarkMsg.OP_Remarks"
></el-input>
</el-form-item>
</el-form>
<div
slot=
"footer"
class=
"dialog-footer"
>
<button
class=
"normalBtn"
type=
"primary"
@
click=
"TransferDocuments"
>
{{ $t("pub.saveBtn") }}
</button>
<button
class=
"hollowFixedBtn"
@
click=
"initOPRemarkMsg"
>
{{ $t("pub.cancelBtn") }}
</button>
</div>
</el-dialog>
<!--修改提成-->
<el-dialog
custom-class=
"w350"
title=
"修改提成"
:visible
.
sync=
"TiChengLoading"
center
:before-close=
"initTCMsg"
>
<el-form
label-width=
"110px"
>
<el-form-item
label=
"提成金额:"
class=
"w280"
>
<el-input
placeholder=
"请输入"
type=
"number"
v-model=
"TCMsg.LatestCommissionMoney"
>
</el-input>
</el-form-item>
</el-form>
<div
slot=
"footer"
class=
"dialog-footer"
>
<button
class=
"normalBtn"
type=
"primary"
@
click=
"submitTCMsg"
>
{{ $t("pub.saveBtn") }}
</button>
<button
class=
"hollowFixedBtn"
@
click=
"initTCMsg"
>
{{ $t("pub.cancelBtn") }}
</button>
</div>
</el-dialog>
<!--申请优惠-->
<div
class=
"productQuerybottomLayer ownScrollbarStyle"
v-show=
"SpecialOffer"
style=
"height: 150px; min-height: 200px"
>
<p>
申请优惠
<span
class=
"fr"
>
<input
type=
"button"
class=
"hollowFixedBtn"
value=
"取消"
@
click=
"cancelSubmitRemarks()"
/>
<input
type=
"button"
class=
"normalBtn"
value=
"保存"
@
click=
"Preservation()"
/>
</span>
</p>
<el-form
:model=
"remarksMsg"
ref=
"remarksMsg"
label-position=
"right"
:rules=
"RemarksRules"
label-width=
"80px"
>
<el-row
:gutter=
"20"
>
<el-col
:span=
"24"
>
<el-form-item>
<em
style=
"
font-size: 12px !important;
color: #606266;
line-height: 34px;
"
>
订单当前单价
</em>
<em
style=
"
display: inline-block;
padding: 0 10px;
height: 34px;
line-height: 34px;
text-align: left;
font-size: 16px;
border-radius: 3px;
background-color: #e5e5e5;
vertical-align: top;
"
class=
"w150"
>
{{ SOMsg.OrderUnitPrice }}
</em>
<em
style=
"
margin-left: 100px;
font-size: 12px !important;
color: #606266;
"
>
审核人
</em>
<el-select
placeholder=
"请选择"
v-model=
"SOMsg.UpdateBy"
>
<el-option
v-for=
"(item, index) in SuperiorPeople"
:label=
"item.EmName"
:value=
"item.EmployeeId"
:key=
"index"
></el-option>
</el-select>
</el-form-item>
<el-form-item
label=
"申请理由"
style=
"margin-left: 58px"
>
<el-input
v-model=
"SOMsg.ApplyReason"
type=
"textarea"
maxlength=
"1000"
style=
"width: 60%"
></el-input>
</el-form-item>
</el-col>
</el-row>
</el-form>
</div>
<el-dialog
custom-class=
"w350"
title=
"修改订单额外金额"
:visible
.
sync=
"OrderMoneyDialog"
center
>
<el-form
label-width=
"110px"
>
<el-form-item
label=
"额外奖励金额:"
class=
"w280"
>
<el-input
placeholder=
"请输入"
type=
"text"
@
keyup
.
native=
"checkPrice(EwMsg, 'ExtraRewardMoney')"
v-model=
"EwMsg.ExtraRewardMoney"
>
</el-input>
</el-form-item>
<el-form-item
label=
"额外扣除金额:"
class=
"w280"
>
<el-input
placeholder=
"请输入"
type=
"number"
@
keyup
.
native=
"checkPrice(EwMsg, 'ExtraDeductMoney')"
v-model=
"EwMsg.ExtraDeductMoney"
>
</el-input>
</el-form-item>
</el-form>
<div
slot=
"footer"
class=
"dialog-footer"
>
<button
class=
"normalBtn"
type=
"primary"
@
click=
"submitEWMsg"
>
{{ $t("pub.saveBtn") }}
</button>
<button
class=
"hollowFixedBtn"
@
click=
"OrderMoneyDialog = false"
>
{{ $t("pub.cancelBtn") }}
</button>
</div>
</el-dialog>
<a
id=
"groupTourOrderByTuan_DownLoad"
target=
"_blank"
style=
"display: none"
>
1不要删除
</a>
<el-dialog
title=
"选择旅客"
width=
"400px"
:visible
.
sync=
"ShenQingPhotoShow"
center
:before-close=
"closeChangeMachie"
>
<div>
<label><input
type=
"checkbox"
v-model=
"SQcheckdAll"
/>
全选
</label>
</div>
<div>
<label
v-for=
"item in SQguestList"
><input
type=
"checkbox"
v-model=
"item.check"
/>
{{ item.userName }}({{
item.sexStr
}})
</label>
</div>
<div
class=
"needfenshu"
>
<label>
需要份数:
</label>
<el-input
type=
"number"
v-model=
"SQPhotoNum"
class=
"w200"
></el-input>
</div>
<p
style=
"color: red"
>
注:每人每份5元
</p>
<div
slot=
"footer"
class=
"dialog-footer"
>
<button
class=
"hollowFixedBtn"
@
click=
"ShenQingPhotoShow = false"
>
{{ $t("pub.cancelBtn") }}
</button>
<button
class=
"normalBtn"
type=
"primary"
@
click=
"SQPhoto"
>
{{ $t("pub.sureBtn") }}
</button>
</div>
</el-dialog>
<el-dialog
custom-class=
"w450"
title=
"行程下载"
:visible
.
sync=
"travelControlTripLayerShow"
center
>
<tripDownLoadCommon
ref=
"tripDownLoadCommon"
:tripObj=
"tripObj"
@
headCallBack=
"hideTripDown"
:downType=
"2"
>
</tripDownLoadCommon>
</el-dialog>
<div
class=
"groupTourOrderByTuan_transfer"
v-show=
"transferData.show"
>
<div
class=
"transfer_header"
>
<div>
订单转团
</div>
<div>
<div
@
click=
"transferClose()"
>
取消
</div>
<div
@
click=
"transferSave()"
>
确定
</div>
</div>
</div>
<div
class=
"transfer_info"
>
<div>
<em>
订单号:
</em>
<span>
{{ transferData.info.OrderId }}
</span>
</div>
<div>
<em>
业务员:
</em>
<span>
{{ transferData.info.CreateByName }}
</span>
</div>
<div>
<em>
团队编号:
</em>
<span>
{{ transferData.info.OldTCID }}
</span>
</div>
<div>
<em>
团号:
</em>
<span>
{{ transferData.info.OldTCNUM }}
</span>
</div>
</div>
<div
class=
"transfer_input"
>
<div>
<em>
团号:
</em>
<el-input
v-model=
"transferData.info.TCNUM"
placeholder=
"请输入团号或团队编号"
></el-input>
</div>
</div>
</div>
>
<!-- 修改备注 -->
<div
class=
"productQuerybottomLayer ownScrollbarStyle"
v-show=
"isShowLayerRemarks"
style=
"height: 150px; min-height: 150px"
>
<p>
修改备注
<span
class=
"fr"
v-if=
"remarksMsg.isOrder == 1"
style=
"margin-right: 0px"
>
<input
type=
"button"
class=
"hollowFixedBtn"
value=
"取消"
@
click=
"cancelSubmitRemarks()"
/>
<input
type=
"button"
class=
"normalBtn"
value=
"保存"
@
click=
"submitFormRematks('remarksMsg')"
/>
</span>
<span
class=
"fr"
v-else
style=
"color: red"
>
OP已禁止修改订单信息,请联系OP修改备注。
</span>
</p>
<el-form
:model=
"remarksMsg"
ref=
"remarksMsg"
label-position=
"right"
:rules=
"RemarksRules"
label-width=
"80px"
>
<el-row
:gutter=
"20"
>
<el-col
:span=
"24"
>
<el-form-item
label=
"备注"
prop=
"Remarks"
>
<el-input
v-model=
"remarksMsg.Remarks"
type=
"textarea"
maxlength=
"500"
></el-input>
</el-form-item>
</el-col>
</el-row>
</el-form>
</div>
</div>
</template>
<
script
>
import
moment
from
"moment"
;
import
payURL
from
"../commonPage/payURL.vue"
;
import
payURL1
from
"../commonPage/payURL1.vue"
;
import
tripDownLoadCommon
from
"../commonPage/TripDownLoadCommon.vue"
;
import
updateSalesMan
from
"../commonPage/updateSalesMan.vue"
;
export
default
{
props
:
{
//订单数据列表
orderDataList
:
{
type
:
Array
,
default
:
[]
},
loading
:
{
type
:
Boolean
,
default
:
false
,
}
},
data
()
{
return
{
userInfo
:
{},
qjGroupId
:
-
1
,
F_Finance_Create
:
false
,
//制单权限
isEditOrderCreate
:
0
,
//修改业务员权限,1-有
redBagList
:
[],
Ysze
:
false
,
// 修改应收总额
addMsg_form
:
{},
OPRemarkMsg
:
{
OrderId
:
""
,
OP_Remarks
:
""
,
},
zhuanLoading
:
false
,
TiChengLoading
:
false
,
TCMsg
:
{
OrderId
:
0
,
CommissionMinusRate
:
0
,
LatestCommissionMoney
:
""
,
},
OrderMoneyDialog
:
false
,
EwMsg
:
{
OrderId
:
0
,
ExtraRewardMoney
:
""
,
ExtraDeductMoney
:
""
,
},
checkedObj
:
{},
travelControlTripLayerShow
:
false
,
tripObj
:
{
tcid
:
0
,
configId
:
0
,
cityId
:
0
,
orderId
:
0
,
},
userId
:
""
,
customerId
:
""
,
createByInfo
:
""
,
isUpdateSharePeople
:
false
,
//修改订单提成
isUpdateOrderCommission
:
false
,
starTime
:
""
,
endTime
:
""
,
stratPrice
:
""
,
stratPriceShow
:
false
,
returnPrice
:
""
,
returnPriceShow
:
false
,
isAllowUpdate
:
0
,
isPingtai
:
false
,
IsChildrenTour
:
0
,
IsBirdDiscount
:
0
,
SetOutCityId
:
0
,
reOutCityId
:
0
,
isShowLayer
:
false
,
isShowLayer2
:
false
,
isShowHouse
:
false
,
isShowLayerRemarks
:
false
,
loading
:
true
,
isChecked
:
true
,
comSelect
:
-
1
,
OpSetLossPeople
:
0
,
OpSetLossMoney
:
0
,
remarksMsg
:
{
OrderId
:
"0"
,
OldRemarks
:
""
,
Remarks
:
""
,
isOrder
:
1
,
//1-可以修改,0-不能修改【默认可以修改】
},
IsChargeLossOrders
:
0
,
Unit_PriceList
:
[],
//成交单价下拉数据
LessMoney
:
0
,
uploadLloading
:
false
,
fileFujianList
:
[],
RemarksRules
:
{
Remarks
:
[{
required
:
true
,
message
:
"请输入备注信息"
,
trigger
:
"blur"
,
},
],
},
isUpdateOrder
:
false
,
cancelRtData
:
[],
list
:
[],
logList
:
[],
orderList
:
[],
ScenicRefundList
:
[],
isShowCancelOrder
:
false
,
tuanInfo
:
{},
seat
:
{
YSeat
:
0
,
CSeat
:
0
,
FSeat
:
0
,
joinGroupNum
:
0
,
leaderNum
:
0
,
totalGuestNum
:
0
,
ownVisaNum
:
0
,
},
//支付
minpay
:
"0"
,
//显示修改业务员
showChangeSales
:
false
,
showID
:
-
1
,
// 订单转团
transferData
:
{
show
:
false
,
info
:
{
OrderId
:
""
,
CreateByName
:
""
,
OldTCID
:
""
,
OldTCNUM
:
""
,
TCNUM
:
""
,
},
},
IsUpdateOrderMoney
:
false
,
//订单编号及业务员信息
subInfo
:
{
CreateBy
:
""
,
OrderId
:
0
,
},
// 申请优惠的弹窗
SpecialOffer
:
false
,
SOMsg
:
{
OrderId
:
""
,
ApplyPrice
:
0
,
ApplyReason
:
""
,
UpdateBy
:
""
,
OrderUnitPrice
:
0
,
},
SuperiorPeople
:
[],
TransferMission
:
""
,
//订单转团
Unit_Price
:
0
,
// 地接临时存值
goLVurl
:
{
//跳转到旅客页面的参数
orderId
:
""
,
tcid
:
""
,
tcnum
:
""
,
isOrder
:
""
,
},
SciencNameList
:
[],
ShenQingPhotoShow
:
false
,
SQguestList
:
[],
SQcheckdAll
:
true
,
SQPhotoNum
:
""
,
SQOrderId
:
""
,
};
},
components
:
{
payurlItem
:
payURL
,
payurlItem1
:
payURL1
,
tripDownLoadCommon
:
tripDownLoadCommon
,
updateSalesMan
:
updateSalesMan
,
},
watch
:
{
SQcheckdAll
(
val
)
{
this
.
checkdAll
(
val
);
},
},
filters
:
{
priceFormat
(
value
)
{
let
nStr
=
value
.
toFixed
(
2
);
nStr
+=
""
;
let
x
=
nStr
.
split
(
"."
);
let
x1
=
x
[
0
];
let
x2
=
x
.
length
>
1
?
"."
+
x
[
1
]
:
""
;
var
rgx
=
/
(\d
+
)(\d{3})
/
;
while
(
rgx
.
test
(
x1
))
{
x1
=
x1
.
replace
(
rgx
,
"$1"
+
","
+
"$2"
);
}
return
x1
+
x2
;
},
},
methods
:
{
SQPhoto
()
{
let
checkID
=
[];
this
.
SQguestList
.
map
((
x
)
=>
{
if
(
x
.
check
)
{
checkID
.
push
(
x
.
guestId
);
}
});
if
(
checkID
.
length
<
1
)
{
this
.
$message
.
error
(
"请选择旅客!"
);
return
;
}
if
(
!
this
.
SQPhotoNum
)
{
this
.
$message
.
error
(
"请输入份数!"
);
return
;
}
let
msg
=
{
GuestIdList
:
checkID
,
PhotoNum
:
this
.
SQPhotoNum
,
OrderId
:
this
.
SQOrderId
,
};
this
.
apipost
(
"sellorder_get_SetOrderGuestPhoto"
,
msg
,
(
res
)
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
getList
();
this
.
ShenQingPhotoShow
=
false
;
}
},
null
);
},
checkdAll
(
val
)
{
if
(
val
)
{
this
.
SQguestList
.
map
((
x
)
=>
{
x
.
check
=
true
;
});
}
else
{
this
.
SQguestList
.
map
((
x
)
=>
{
x
.
check
=
false
;
});
}
this
.
SQguestList
=
this
.
SQguestList
;
this
.
$forceUpdate
();
},
ShenQingPhoto
(
item
)
{
if
(
item
.
guestList
.
length
<
1
)
{
this
.
$message
.
error
(
"暂无旅客,请添加旅客后再尝试申请!"
);
return
;
}
item
.
guestList
.
map
((
x
)
=>
{
x
.
check
=
true
;
});
this
.
SQguestList
=
item
.
guestList
;
this
.
SQOrderId
=
item
.
orderId
;
this
.
ShenQingPhotoShow
=
true
;
},
closeChangeMachie
(
done
)
{
// 弹=窗口关闭
done
();
},
// OP备注赋值
OPRemark
(
item
)
{
this
.
apipost
(
"sellorder_post_GetOrderEntity"
,
{
ID
:
item
.
orderId
,
},
(
res
)
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
OPRemarkMsg
.
OP_Remarks
=
res
.
data
.
data
.
model
.
OP_Remarks
;
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
);
}
},
null
);
},
gourlTip
(
path
,
id
)
{
this
.
$router
.
push
({
name
:
path
,
query
:
{
id
:
id
,
blank
:
"y"
,
},
});
},
goUrlHappy
(
item
)
{
this
.
$router
.
push
({
name
:
"HappyPassbook"
,
query
:
{
CustomerId
:
item
.
customerId
,
blank
:
"y"
,
},
});
},
getRedBag
(
item
)
{
let
msg
=
{
CustomerId
:
item
.
customerId
,
pageIndex
:
1
,
pageSize
:
4
,
};
if
(
item
.
customerId
)
{
this
.
apipost
(
"customer_post_GetC_BigRedEnvelopeInfoList"
,
msg
,
(
res
)
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
redBagList
=
res
.
data
.
data
.
pageData
;
}
else
{}
},
(
err
)
=>
{}
);
}
else
{
this
.
redBagList
=
[];
}
},
// 跳转调查列表
goInvetig
:
function
(
path
,
tcid
,
orderId
)
{
this
.
$router
.
push
({
name
:
path
,
query
:
{
OrderId
:
orderId
,
TCID
:
tcid
,
blank
:
"y"
,
},
});
},
goIisDetail
:
function
(
id
)
{
// 跳转发票详情页面
this
.
$router
.
push
({
name
:
"invoicesManagerDetail"
,
query
:
{
id
:
id
,
noDetail
:
1
,
blank
:
"y"
,
},
});
},
// 申请发票
goUrlAdd
:
function
(
path
,
OrderId
,
TCID
,
customerId
)
{
this
.
$router
.
push
({
name
:
path
,
query
:
{
OrderId
:
OrderId
,
TCID
:
TCID
,
customerId
:
customerId
,
blank
:
"y"
,
},
});
},
//跳转
goUrlTS
(
path
,
id
,
orderId
,
title
)
{
this
.
$router
.
push
({
name
:
path
,
query
:
{
id
:
id
,
orderId
:
orderId
,
blank
:
"y"
,
tab
:
title
,
},
});
},
//是否可以修改成交单价
canEditUnitPrice
()
{
if
(
this
.
userInfo
!=
null
&&
this
.
userInfo
.
EmployeeId
==
1
)
{
this
.
isChecked
=
false
;
}
},
maxCommissionMinusRate
:
function
()
{
this
.
TCMsg
.
CommissionMinusRate
=
this
.
TCMsg
.
CommissionMinusRate
.
replace
(
/
[^\.\d]
/g
,
""
);
this
.
TCMsg
.
CommissionMinusRate
=
this
.
TCMsg
.
CommissionMinusRate
.
replace
(
"."
,
""
);
if
(
this
.
TCMsg
.
CommissionMinusRate
>
100
)
{
this
.
TCMsg
.
CommissionMinusRate
=
100
;
}
},
submitTCMsg
:
function
()
{
this
.
apipost
(
"sellorder_post_SetOrderCommission"
,
this
.
TCMsg
,
(
res
)
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
$message
.
success
(
res
.
data
.
message
);
this
.
getList
();
this
.
initTCMsg
();
this
.
TiChengLoading
=
false
;
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
);
}
},
null
);
},
initTCMsg
:
function
()
{
this
.
TiChengLoading
=
false
;
this
.
TCMsg
=
{
OrderId
:
0
,
CommissionMinusRate
:
0
,
LatestCommissionMoney
:
""
,
};
},
//设置额外金额
submitEWMsg
()
{
this
.
apipost
(
"sellorder_post_SetOrderExtraMoney"
,
this
.
EwMsg
,
(
res
)
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
Success
(
res
.
data
.
message
);
this
.
getList
();
this
.
OrderMoneyDialog
=
false
;
}
else
{
this
.
Error
(
res
.
data
.
message
);
}
},
null
);
},
TransferDocuments
:
function
()
{
this
.
apipost
(
"sellorder_get_SetOrderOPRemarks"
,
this
.
OPRemarkMsg
,
(
res
)
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
$message
.
success
(
res
.
data
.
message
);
this
.
getList
();
this
.
initOPRemarkMsg
();
this
.
zhuanLoading
=
false
;
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
);
}
},
null
);
},
initOPRemarkMsg
()
{
this
.
OPRemarkMsg
=
{
OP_Remarks
:
""
,
OrderId
:
""
,
};
this
.
zhuanLoading
=
false
;
},
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
),
},
});
},
getItem
(
obj
)
{
this
.
checkedObj
=
obj
;
},
deleteFile
(
obj
)
{
this
.
$confirm
(
"是否删除确认函?"
,
"提示"
,
{
confirmButtonText
:
"确定"
,
cancelButtonText
:
"取消"
,
type
:
"warning"
,
})
.
then
(()
=>
{
let
saveMsg
=
{};
saveMsg
.
Path
=
obj
.
confirmFileList
[
0
].
fullUrl
;
saveMsg
.
FileName
=
obj
.
confirmFileList
[
0
].
name
;
saveMsg
.
Status
=
2
;
saveMsg
.
OrderId
=
obj
.
orderId
;
this
.
apipost
(
"sellorder_post_SetConfirmationLetter"
,
saveMsg
,
(
res
)
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
$message
.
success
(
res
.
data
.
message
);
this
.
getList
();
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
);
}
},
(
err
)
=>
{}
);
})
.
catch
(()
=>
{
this
.
$message
.
info
(
"取消删除"
);
});
},
uploadFileBtn
(
file
)
{
//上传
let
that
=
this
;
let
newArr
=
[];
newArr
.
push
(
file
.
file
);
let
path
=
"/Upload/Temporary/"
;
this
.
$message
.
info
(
"上传中..."
);
this
.
UploadSelfFileT
(
path
,
newArr
,
(
x
)
=>
{
let
fileSize
=
file
.
file
.
size
<
1024
?
file
.
file
.
size
:
(
file
.
file
.
size
/
1024
).
toFixed
(
0
);
let
saveMsg
=
{};
saveMsg
.
Path
=
x
.
data
.
FilePath
;
saveMsg
.
FileName
=
file
.
file
.
name
;
saveMsg
.
Status
=
1
;
saveMsg
.
OrderId
=
this
.
checkedObj
.
orderId
;
that
.
apipost
(
"sellorder_post_SetConfirmationLetter"
,
saveMsg
,
(
res
)
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
$message
.
success
(
res
.
data
.
message
);
this
.
getList
();
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
);
}
},
(
err
)
=>
{}
);
});
},
downLoadFile
(
obj
)
{
let
dom
=
document
.
querySelector
(
"#groupTourOrderByTuan_DownLoad"
);
dom
.
href
=
obj
[
0
].
fullUrl
;
dom
.
click
();
},
// 订单转团
transfer
:
function
(
item
)
{
this
.
transferData
.
info
.
OrderId
=
item
.
orderId
;
this
.
transferData
.
info
.
CreateByName
=
item
.
createBy
;
this
.
transferData
.
info
.
OldTCID
=
item
.
tcid
;
this
.
transferData
.
info
.
OldTCNUM
=
item
.
tcnum
;
this
.
transferData
.
info
.
TCNUM
=
""
;
this
.
isShowLayer
=
false
;
this
.
isShowLayer2
=
false
;
this
.
isShowHouse
=
false
;
this
.
isShowLayerRemarks
=
false
;
this
.
transferData
.
show
=
true
;
},
transferClose
:
function
()
{
this
.
transferData
.
show
=
false
;
},
changeSelect
:
function
()
{
this
.
$forceUpdate
();
},
transferSave
:
function
()
{
if
(
this
.
transferData
.
info
.
TCNUM
.
trim
()
===
""
)
{
this
.
$message
.
error
(
"请输入团号或团队编号"
);
}
else
{
this
.
apipost
(
"sellorder_post_SetOrderTurnGroup"
,
this
.
transferData
.
info
,
(
res
)
=>
{
if
(
res
.
data
.
resultCode
===
1
)
{
this
.
$message
.
success
(
"转团成功"
);
this
.
transferData
.
show
=
false
;
this
.
getList
();
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
);
}
},
(
err
)
=>
{}
);
}
},
toTrip
:
function
(
obj
)
{
this
.
tripObj
.
tcid
=
obj
.
tcid
;
this
.
tripObj
.
configId
=
obj
.
configId
;
this
.
tripObj
.
orderId
=
obj
.
orderId
;
this
.
tripObj
.
cityId
=
obj
.
startCityId
;
this
.
travelControlTripLayerShow
=
true
;
},
hideTripDown
()
{
this
.
travelControlTripLayerShow
=
false
;
},
deleteItem
(
obj
)
{
if
(
obj
.
isCanClear
==
1
)
{
this
.
Error
(
"OP已确认订单,如需取消请联系当团OP!"
);
return
;
}
this
.
$confirm
(
"是否取消?"
,
"提示"
,
{
confirmButtonText
:
"确定"
,
cancelButtonText
:
"取消"
,
type
:
"warning"
,
})
.
then
(()
=>
{
this
.
apipost
(
"sellorder_post_RemoveOrder"
,
{
ID
:
obj
.
orderId
,
},
(
res
)
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
$message
.
success
(
"取消成功!"
);
this
.
getList
();
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
);
}
},
(
err
)
=>
{}
);
})
.
catch
(()
=>
{
this
.
$message
.
info
(
"已取消!"
);
});
},
setChargeLoss
(
obj
)
{
let
confirmC
=
"确定设为收损单?"
;
if
(
obj
.
isChargeLossOrders
==
1
)
{
confirmC
=
"确定恢复收损单?"
;
}
this
.
$confirm
(
confirmC
,
"提示"
,
{
confirmButtonText
:
"确定"
,
cancelButtonText
:
"取消"
,
type
:
"warning"
,
})
.
then
(()
=>
{
this
.
apipost
(
"sellorder_post_RemoveChargeLossOrders"
,
{
OrderId
:
obj
.
orderId
,
},
(
res
)
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
$message
.
success
(
"操作成功!"
);
this
.
getList
();
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
);
}
},
);
})
.
catch
(()
=>
{
this
.
$message
.
info
(
"取消!"
);
});
},
goUrlT
(
path
,
id
)
{
let
routeData
=
this
.
$router
.
resolve
({
name
:
path
,
query
:
{
id
:
id
,
},
});
window
.
open
(
routeData
.
href
,
"_blank"
);
},
//勾选景点
getGOScenic
(
item
)
{
item
.
IsChecked
=
!
item
.
IsChecked
;
},
//勾选
getGOScenictWO
()
{
this
.
addMsg
.
OrderBackScenicList
=
[];
this
.
SciencNameList
=
[];
this
.
ScenicRefundList
.
forEach
((
x
)
=>
{
if
(
x
.
IsChecked
&&
x
.
Number
>
0
)
{
let
obj
=
{
CouponsId
:
x
.
CouponsId
,
IsChecked
:
x
.
IsChecked
,
BackMoney
:
x
.
BackMoney
,
Number
:
x
.
Number
,
};
this
.
SciencNameList
.
push
(
x
.
CouponsName
);
this
.
addMsg
.
OrderBackScenicList
.
push
(
obj
);
}
});
},
childByValue
(
data
)
{
this
.
showID
=
data
;
},
// 给其他费用赋值
Yszefz
()
{
this
.
Ysze
=
true
;
this
.
addMsg_form
=
Object
.
assign
({},
this
.
addObj
);
},
// 修改应收总额
submitYSZEForm
()
{
this
.
apipost
(
"sellorder_post_SetOrderHistoryPrice"
,
this
.
addMsg_form
,
(
res
)
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
$message
.
success
(
res
.
data
.
message
);
this
.
Ysze
=
false
;
this
.
addObj
=
this
.
addMsg_form
;
this
.
getTotalPrice
();
}
else
{
this
.
Ysze
=
false
;
this
.
$message
.
error
(
res
.
data
.
message
);
}
},
);
},
// 点击修改
getDetail
(
obj
)
{
},
getHouse
:
function
(
obj
)
{
this
.
starTime
=
obj
.
startDate
;
this
.
endTime
=
obj
.
backDate
;
this
.
addMsg
.
OrderId
=
obj
.
orderId
;
this
.
apipost
(
"sellorder_post_GetOrderEntity"
,
{
ID
:
obj
.
orderId
,
},
(
res
)
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
IsUnion
=
res
.
data
.
data
.
IsUnion
;
this
.
isAllowUpdate
=
res
.
data
.
data
.
IsUpdatePlatOrder
;
this
.
addObj
=
res
.
data
.
data
.
modelPrice
;
let
x
=
res
.
data
.
data
.
model
;
this
.
addMsg
=
x
;
this
.
addMsg
.
ScenicRefundArr
=
res
.
data
.
data
.
ScenicRefundArr
;
this
.
getScenicRefund
(
obj
.
tcid
,
obj
.
orderId
);
this
.
SetOutCityId
=
res
.
data
.
data
.
SetOutCityId
;
this
.
reOutCityId
=
res
.
data
.
data
.
SetBackCityId
;
this
.
addMsg
.
CustomerType
=
x
.
CustomerType
.
toString
();
this
.
addMsg
.
ClientSource
=
x
.
ClientSource
.
toString
();
this
.
addMsg
.
GroupType
=
x
.
GroupType
.
toString
();
this
.
addMsg
.
TradeWay
=
x
.
TradeWay
.
toString
();
this
.
addMsg
.
PredictRoomNum
=
x
.
PredictRoomNum
;
this
.
addMsg
.
IsIntermodal
=
x
.
IsIntermodal
.
toString
();
this
.
addMsg
.
IsReturnIntermodal
=
x
.
IsReturnIntermodal
.
toString
();
this
.
addMsg
.
ChirdNum
=
x
.
ChirdNum
.
toString
();
this
.
addMsg
.
ChirdNeedBedNum
=
x
.
ChirdNeedBedNum
.
toString
();
this
.
addMsg
.
ChirdNoNeedBedNum
=
(
x
.
ChirdNum
-
x
.
ChirdNeedBedNum
).
toString
();
this
.
addMsg
.
BabyNum
=
x
.
BabyNum
.
toString
();
this
.
IsChildrenTour
=
x
.
IsChildrenTour
;
this
.
IsBirdDiscount
=
x
.
IsBirdDiscount
;
this
.
stratPrice
=
res
.
data
.
data
.
modelPrice
.
GoAddPrice
;
if
(
this
.
stratPrice
==
0
)
{
this
.
stratPriceShow
=
false
;
}
else
{
this
.
stratPriceShow
=
true
;
}
this
.
returnPrice
=
res
.
data
.
data
.
modelPrice
.
BackAddPrice
;
if
(
this
.
returnPrice
==
0
)
{
this
.
returnPriceShow
=
false
;
}
else
{
this
.
returnPriceShow
=
true
;
}
if
(
x
.
ClientSource
==
1
)
{
this
.
isPingtai
=
true
;
}
this
.
isShowHouse
=
true
;
this
.
isShowLayer
=
false
;
this
.
isShowLayer2
=
false
;
this
.
isShowLayerRemarks
=
false
;
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
);
}
},
);
},
getRemarks
(
obj
)
{
// 华国豪5-5新增
if
(
moment
().
format
(
"YYYY-MM-DD"
)
>=
obj
.
startDate
)
{
this
.
$confirm
(
"该团目前已是结团状态,无法修改备注"
,
"提示"
,
{
confirmButtonText
:
"确定"
,
showCancelButton
:
false
,
type
:
"warning"
,
})
.
then
(()
=>
{
return
;
this
.
isShowLayerRemarks
=
true
;
this
.
isShowLayer
=
false
;
this
.
isShowLayer2
=
false
;
this
.
$refs
[
"addMsg"
].
resetFields
();
this
.
clearMsg
();
this
.
remarksMsg
.
OrderId
=
obj
.
orderId
;
this
.
remarksMsg
.
Remarks
=
obj
.
remarks
;
this
.
remarksMsg
.
OldRemarks
=
obj
.
remarks
;
})
.
catch
(()
=>
{
this
.
$message
.
info
(
"已取消!"
);
});
}
else
{
this
.
isShowLayerRemarks
=
true
;
this
.
isShowLayer
=
false
;
this
.
isShowLayer2
=
false
;
this
.
$refs
[
"addMsg"
].
resetFields
();
this
.
clearMsg
();
this
.
remarksMsg
.
OrderId
=
obj
.
orderId
;
this
.
remarksMsg
.
Remarks
=
obj
.
remarks
;
this
.
remarksMsg
.
OldRemarks
=
obj
.
remarks
;
}
//HK 新加
if
(
this
.
IsSupperOrderEdit
||
IsLookOrder
)
{
//todo
}
else
{
this
.
remarksMsg
.
isOrder
=
obj
.
isOrder
;
}
},
submitFormRematks
(
RemarksMsg
)
{
//提交创建、修改表单
this
.
$refs
[
RemarksMsg
].
validate
((
valid
)
=>
{
if
(
valid
)
{
this
.
apipost
(
"sellorder_post_SetOrderRemarks"
,
this
.
remarksMsg
,
(
res
)
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
$message
.
success
(
res
.
data
.
message
);
this
.
remarksMsg
.
Remarks
=
""
;
this
.
remarksMsg
.
OrderId
=
"0"
;
this
.
remarksMsg
.
isOrder
=
1
;
this
.
getList
();
this
.
isShowLayerRemarks
=
false
;
}
else
{
this
.
isShowLayerRemarks
=
false
;
this
.
$message
.
error
(
res
.
data
.
message
);
}
},
(
err
)
=>
{}
);
}
else
{
return
false
;
}
});
},
cancelSubmit
()
{
this
.
isShowLayer
=
false
;
this
.
$refs
[
"addMsg"
].
resetFields
();
this
.
clearMsg
();
},
cancelSubmit2
()
{
this
.
isShowLayer2
=
false
;
this
.
$refs
[
"addMsg2"
].
resetFields
();
this
.
clearMsg
();
},
cancelSubmitRemarks
()
{
this
.
isShowLayerRemarks
=
false
;
this
.
remarksMsg
.
Remarks
=
""
;
this
.
remarksMsg
.
OrderId
=
"0"
;
this
.
remarksMsg
.
isOrder
=
1
;
this
.
SpecialOffer
=
false
;
this
.
SOMsg
.
UpdateBy
=
""
;
this
.
SOMsg
.
ApplyPrice
=
0
;
this
.
SOMsg
.
ApplyReason
=
""
;
},
houseSubmit
:
function
()
{
//提交修改房型表单
this
.
apipost
(
"sellorder_post_SellUpdateOrderHouse"
,
this
.
addMsg
,
(
res
)
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
$message
.
success
(
res
.
data
.
message
);
this
.
$refs
[
"addMsg"
].
resetFields
();
this
.
clearMsg
();
this
.
getList
();
this
.
isShowHouse
=
false
;
}
else
{
this
.
isShowHouse
=
false
;
this
.
$message
.
error
(
res
.
data
.
message
);
}
},
);
},
houseCancel
:
function
()
{
this
.
isShowHouse
=
false
;
this
.
$refs
[
"addMsg"
].
resetFields
();
//this.clearMsg();
},
//获取日志列表
getLogDetail
(
obj
)
{
this
.
apipost
(
"sellorder_post_GetOrderLogList"
,
{
ID
:
obj
.
orderId
,
},
(
res
)
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
logList
=
res
.
data
.
data
;
this
.
logList
.
forEach
((
item
)
=>
{
item
[
"x"
]
=
this
.
$commonUtils
.
formatMsgTime
(
item
.
updateDate
);
});
}
},
);
},
getOrderDetail
(
obj
)
{
this
.
apipost
(
"Financial_post_GetOrderFinanceList"
,
{
OrderId
:
obj
.
orderId
,
OrderResource
:
8
,
IsTravelMoney
:
1
,
},
(
res
)
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
orderList
=
res
.
data
.
data
;
}
},
(
err
)
=>
{}
);
},
goUrlP
(
name
,
path
,
item
)
{
this
.
$router
.
push
({
name
:
path
,
query
:
{
id
:
item
.
orderId
,
tcid
:
item
.
tcid
,
tcnum
:
item
.
tcnum
,
isOrder
:
item
.
isOrder
,
blank
:
"y"
,
tab
:
name
,
},
});
},
//跳转至领取合同
goContract
(
item
,
sItem
)
{
let
routeData
=
this
.
$router
.
resolve
({
name
:
"TravelContractNew"
,
query
:
{
TCID
:
item
.
tcid
,
guestId
:
sItem
.
guestId
,
orderID
:
item
.
orderId
,
blank
:
"y"
,
},
});
window
.
open
(
routeData
.
href
,
"_blank"
);
},
goUrl
(
name
,
path
,
id
,
tcmun
)
{
this
.
$router
.
push
({
name
:
path
,
query
:
{
id
:
id
,
tcmun
:
tcmun
,
blank
:
"y"
,
tab
:
name
,
},
});
},
goFinanceUrl
(
path
,
Type
,
OrderID
,
OrderSource
,
TCID
)
{
this
.
$router
.
push
({
name
:
path
,
query
:
{
Type
:
Type
,
OrderID
:
OrderID
,
OrderSource
:
OrderSource
,
TCID
:
TCID
,
},
});
},
//点击修改业务员
getSalerInfo
(
item
)
{
this
.
subInfo
.
CreateBy
=
item
.
createBy
;
this
.
subInfo
.
OrderId
=
item
.
orderId
;
this
.
showChangeSales
=
true
;
},
//关闭修改业务员
closeSalseDiv
()
{
this
.
showChangeSales
=
false
;
},
Discount
(
TCID
)
{
this
.
SpecialOffer
=
true
;
this
.
apipost
(
"lessprice_post_GetSuperiorPeople"
,
{
TCID
:
TCID
,
},
(
res
)
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
SuperiorPeople
=
res
.
data
.
data
;
}
},
);
},
//申请优惠
Preservation
()
{
var
numReg
=
/^
[
0-9
]
+$/
;
var
numRe
=
new
RegExp
(
numReg
);
if
(
!
numRe
.
test
(
this
.
SOMsg
.
ApplyPrice
))
{
this
.
$message
.
error
(
"请输入数字"
);
return
;
}
if
(
this
.
SOMsg
.
UpdateBy
==
"请选择"
||
this
.
SOMsg
.
UpdateBy
==
""
)
{
this
.
$message
.
error
(
"请选择审核人"
);
return
;
}
if
(
this
.
SOMsg
.
ApplyReason
==
""
)
{
this
.
$message
.
error
(
"请填写申请理由"
);
return
;
}
this
.
apipost
(
"lessprice_post_SetLesspriceOrder"
,
this
.
SOMsg
,
(
res
)
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
$message
.
success
(
res
.
data
.
message
);
this
.
SpecialOffer
=
false
;
this
.
SOMsg
.
UpdateBy
=
""
;
this
.
SOMsg
.
ApplyPrice
=
0
;
this
.
SOMsg
.
ApplyReason
=
0
;
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
);
this
.
SpecialOffer
=
false
;
this
.
SOMsg
.
UpdateBy
=
""
;
this
.
SOMsg
.
ApplyPrice
=
0
;
this
.
SOMsg
.
ApplyReason
=
""
;
}
},
);
},
// 获取修改业务员权限
GetEditOrderCreateByAuth
()
{
this
.
apipost
(
"sellorder_get_GetEditOrderCreateByAuth"
,
{},
(
res
)
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
isEditOrderCreate
=
res
.
data
.
data
;
}
},
);
},
// 获取总经理副总经理超级修改权限
GetSupperOrderEditAuth
()
{
var
actionCode
=
this
.
$AuthCode
.
SupperOrderEdit
;
var
actionCodeNew
=
this
.
$AuthCode
.
F_Finance_Create
;
this
.
CheckUserAuth
(
actionCode
,
(
res
)
=>
{
if
(
res
.
data
.
resultCode
==
1
&&
res
.
data
.
data
==
1
)
{
this
.
IsSupperOrderEdit
=
true
;
}
});
this
.
CheckUserAuth
(
actionCodeNew
,
(
res
)
=>
{
if
(
res
.
data
.
resultCode
==
1
&&
res
.
data
.
data
==
1
)
{
this
.
F_Finance_Create
=
true
;
}
});
},
// 出纳查看订单权限
GetLookOrderAuth
()
{
var
actionCode
=
this
.
$AuthCode
.
LookOrder
;
this
.
CheckUserAuth
(
actionCode
,
(
res
)
=>
{
if
(
res
.
data
.
resultCode
==
1
&&
res
.
data
.
data
==
1
)
{
this
.
IsLookOrder
=
true
;
}
});
},
// 查看报价单
seeBJD
(
url
)
{
window
.
open
(
url
,
"_blank"
);
return
;
},
},
mounted
()
{
this
.
userInfo
=
this
.
getLocalStorage
();
this
.
qjGroupId
=
this
.
QjGroupId
();
this
.
GetLookOrderAuth
();
this
.
GetSupperOrderEditAuth
();
this
.
GetEditOrderCreateByAuth
();
let
userMenuCode
=
","
+
userInfo
.
ActionMenuCode
+
","
;
this
.
TransferMission
=
userMenuCode
.
indexOf
(
",Sale_TurnGroup,"
)
!=
-
1
?
true
:
false
;
this
.
userId
=
this
.
userInfo
.
EmployeeId
;
this
.
canEditUnitPrice
();
},
}
</
script
>
\ No newline at end of file
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