Commit 105c8cb2 authored by 沈良进's avatar 沈良进
parents 2db593be 011ebcf4
......@@ -381,11 +381,6 @@
<el-input v-model="addMsg.Bond" maxlength="20"></el-input>
</el-form-item>
</el-col>
<el-col :span="4" :gutter="35">
<el-form-item :label="$t('fnc.qyxianlu')">
<el-input v-model="addMsg.SigningLine" class></el-input>
</el-form-item>
</el-col>
<el-col :span="4" :gutter="35">
<el-form-item :label="$t('fnc.hetong')">
<el-select filterable v-model="addMsg.HaveContract" class>
......@@ -417,50 +412,6 @@
</el-select>
</el-form-item>
</el-col>
<!-- <el-col :span="4" :gutter="35">
<el-form-item label="收款负责人:" prop="InCharge" class="_fuzeren">
<el-select
v-model="addMsg.InCharge"
filterable
remote
reserve-keyword
placeholder="请输入关键词"
:remote-method="remoteMethod"
@focus="Charge=1"
:loading="loading2">
<el-option
v-for="item in showEmployeeList"
:key="item.empId"
:label="`${item.name}`"
:value="item.empId">
<span style="float: left; font-size: 12px">{{ item.name }}</span>
<span style="float: right; font-size: 12px; margin-right:20px;">{{ item.departmentName }}</span>
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="4" :gutter="35">
<el-form-item label="支款负责人:" prop="OutCharge" class="_fuzeren">
<el-select
v-model="addMsg.OutCharge"
filterable
remote
reserve-keyword
placeholder="请输入关键词"
:remote-method="remoteMethod2"
@focus="Charge=2"
:loading="loading2">
<el-option
v-for="item in showEmployeeList2"
:key="item.empId"
:label="`${item.name}`"
:value="item.empId">
<span style="float: left; font-size: 12px">{{ item.name }}</span>
<span style="float: right; font-size: 12px; margin-right:20px;">{{ item.departmentName }}</span>
</el-option>
</el-select>
</el-form-item>
</el-col>-->
<el-col :span="4" :gutter="35" class="_BranchIdS">
<el-form-item :label="$t('fnc.ssgongsi')" prop="BranchIdS">
<el-select filterable v-model="addMsg.BranchIdS" collapse-tags>
......@@ -619,7 +570,7 @@
SigningLine: "",
Accountholder: ""
},
LineId: ['-1'],
LineId: [-1],
SettlementType: ['1'],
addMsg: {
ID: 0,
......@@ -821,7 +772,7 @@
this.addMsg.SigningLine = data
if(this.LineId.length>1&&data.indexOf('-1')!=-1){
this.LineId.forEach((x,index)=>{
if(x=='-1'){
if(x==-1){
this.LineId.splice(index,1)
}
})
......@@ -1311,9 +1262,20 @@
this.remoteMethod(data.InemName);
this.remoteMethod2(data.OutemName);
this.addMsg = data;
let SigningLine = this.addMsg.SigningLine.slice(',')
this.LineId = SigningLine.length==1&&SigningLine[0]=='0'?['-1']:SigningLine
this.SettlementType = this.addMsg.SettlementType.slice(',')
//let SigningLine = this.addMsg.SigningLine.slice(',')
//this.LineId = SigningLine.length==1&&SigningLine[0]=='0'?['-1']:SigningLine
//this.SettlementType = this.addMsg.SettlementType.slice(',')
this.LineId =[];
let SigningLine = this.addMsg.SigningLine.split(',')
if(SigningLine.length==1&&SigningLine[0]=='0'){
this.LineId =[-1];
}
else{
SigningLine.forEach(item => {
this.LineId.push(Number(item));
});
}
this.SettlementType = this.addMsg.SettlementType.split(',')
Vue.set(this.addMsg, 'ContractStartDateInfo', [])
this.addMsg.ContractStartDateInfo.push(data.ContractStartDateStr)
......
<template>
<div>
<el-table border ref="multipleTable" :data="OrderList" style="width: 100%"
:default-sort="{prop: 'null', order: 'null'}"
:sort-by="['Money','Income','PreferTipAmount','PlatformTax','Refund','CostMoney','OrderProfit','DueInMoney']">
<el-table-column width="200" prop="CreateTimeStr" label="订单Id" show-overflow-tooltip>
<template slot-scope="scope">
<div>
<p class="cursor-pointer c059FF6 fz18 row-c" @click="goDetails(scope.row)">
<el-tag style="margin-right: 5px;" size="mini">{{scope.row.OrderTypeName}}</el-tag>
<span>{{scope.row.OrderId}}</span>
</p>
<p>{{scope.row.CreateTimeStr}}</p>
</div>
</template>
</el-table-column>
<el-table-column width="200" prop="CreateTimeStr" label="团号" show-overflow-tooltip>
<template slot-scope="scope">
<div>
<p class=" fz14" :class="{'cursor-pointer c059FF6':scope.row.OrderType==2}"
@click="scope.row.OrderType==2?goTuanDetails(scope.row):''">{{scope.row.TCNUM}}</p>
<p>出发日期:{{scope.row.StartDate}}</p>
<p v-if="scope.row.OrderType==2&&scope.row.Status>=0">{{scope.row.Status==1?"未结团":(scope.row.Status==2?"已结团 ":(scope.row.Status==5?"待结团审核":""))}}{{scope.row.Status==2?scope.row.OutGroupAuditDate:""}}</p>
</div>
</template>
</el-table-column>
<el-table-column label="客人" show-overflow-tooltip>
<template slot-scope="scope">
<span :class="{'colorblue font-color-link':pagesTitle!='详情'}"
@click="pagesTitle!='详情'?openNameDetails(scope.row):''">
{{scope.row.GuestName}}
</span>
</template>
</el-table-column>
<el-table-column prop="SaleName" label="销售">
</el-table-column>
<el-table-column prop="LureEmpName" label="引流">
</el-table-column>
<el-table-column label="商品名称" show-overflow-tooltip>
<template slot-scope="scope">
<div style="max-width: 100px;overflow: hidden;text-overflow: ellipsis">{{scope.row.Name}}</div>
</template>
</el-table-column>
<el-table-column label="商品详情" show-overflow-tooltip>
<template slot-scope="scope">
<div style="max-width: 100px;overflow: hidden;text-overflow: ellipsis">{{scope.row.Description}}</div>
</template>
</el-table-column>
<el-table-column sortable prop="Money" label="总金额" min-width="100" show-overflow-tooltip>
<template slot-scope="scope">
{{scope.row.Money}}&ensp;({{scope.row.CurrencyName}})
</template>
</el-table-column>
<el-table-column sortable prop="Income" label="实收">
</el-table-column>
<el-table-column sortable prop="PlatformTax" label="手续费" min-width="100">
</el-table-column>
<el-table-column sortable prop="Refund" label="退款">
</el-table-column>
<!-- <el-table-column sortable prop="CostMoney" label="成本" >
<el-table
border
ref="multipleTable"
:data="OrderList"
style="width: 100%"
:default-sort="{ prop: 'null', order: 'null' }"
:sort-by="[
'Money',
'Income',
'PreferTipAmount',
'PlatformTax',
'Refund',
'CostMoney',
'OrderProfit',
'DueInMoney'
]"
>
<el-table-column
width="200"
prop="CreateTimeStr"
label="订单Id"
show-overflow-tooltip
>
<template slot-scope="scope">
<div>
<p
class="cursor-pointer c059FF6 fz18 row-c"
@click="goDetails(scope.row)"
>
<el-tag style="margin-right: 5px;" size="mini">{{
scope.row.OrderTypeName
}}</el-tag>
<span>{{ scope.row.OrderId }}</span>
</p>
<p>{{ scope.row.CreateTimeStr }}</p>
</div>
</template>
</el-table-column>
<el-table-column
width="200"
prop="CreateTimeStr"
label="团号"
show-overflow-tooltip
>
<template slot-scope="scope">
<div>
<p
class=" fz14"
:class="{ 'cursor-pointer c059FF6': scope.row.OrderType == 2 }"
@click="scope.row.OrderType == 2 ? goTuanDetails(scope.row) : ''"
>
{{ scope.row.TCNUM }}
</p>
<p>出发日期:{{ scope.row.StartDate }}</p>
<p v-if="scope.row.OrderType == 2 && scope.row.Status >= 0">
{{
scope.row.Status == 1
? "未结团"
: scope.row.Status == 2
? "已结团 "
: scope.row.Status == 5
? "待结团审核"
: ""
}}{{ scope.row.Status == 2 ? scope.row.OutGroupAuditDate : "" }}
</p>
</div>
</template>
</el-table-column>
<el-table-column label="客人" show-overflow-tooltip>
<template slot-scope="scope">
<span
:class="{ 'colorblue font-color-link': pagesTitle != '详情' }"
@click="pagesTitle != '详情' ? openNameDetails(scope.row) : ''"
>
{{ scope.row.GuestName }}
</span>
</template>
</el-table-column>
<el-table-column prop="SaleName" label="销售"> </el-table-column>
<el-table-column prop="LureEmpName" label="引流"> </el-table-column>
<el-table-column label="商品名称" show-overflow-tooltip>
<template slot-scope="scope">
<div
style="max-width: 100px;overflow: hidden;text-overflow: ellipsis"
>
{{ scope.row.Name }}
</div>
</template>
</el-table-column>
<el-table-column label="商品详情" show-overflow-tooltip>
<template slot-scope="scope">
<div
style="max-width: 100px;overflow: hidden;text-overflow: ellipsis"
>
{{ scope.row.Description }}
</div>
</template>
</el-table-column>
<el-table-column
sortable
prop="Money"
label="总金额"
min-width="100"
show-overflow-tooltip
>
<template slot-scope="scope">
{{ scope.row.Money }}&ensp;({{ scope.row.CurrencyName }})
</template>
</el-table-column>
<el-table-column sortable prop="Income" label="实收"> </el-table-column>
<el-table-column
sortable
prop="PlatformTax"
label="手续费"
min-width="100"
>
</el-table-column>
<el-table-column sortable prop="Refund" label="退款"> </el-table-column>
<!-- <el-table-column sortable prop="CostMoney" label="成本" >
</el-table-column> -->
<el-table-column sortable prop="DueInMoney" label="待收">
<template slot-scope="scope">
<span :class="{'red':scope.row.DueInMoney>0}">{{scope.row.DueInMoney}}</span>
</template>
</el-table-column>
<el-table-column sortable prop="OrderProfit" label="预期利润" min-width="100">
<template slot-scope="scope">
<span :class="{'red':scope.row.OrderProfit>0}">{{scope.row.OrderProfit}}</span>
</template>
</el-table-column>
<el-table-column sortable prop="DiscountsMoney" label="优惠">
</el-table-column>
<el-table-column prop="Money" label="申请金额" min-width="100" show-overflow-tooltip>
<template slot-scope="scope">
<span> {{scope.row.ApplyForMoney}}</span>
</template>
</el-table-column>
<el-table-column prop="ApplyForReason" label="申请理由" min-width="100" show-overflow-tooltip>
<template slot-scope="scope">
{{scope.row.ApplyForReason}}
</template>
</el-table-column>
<el-table-column prop="ApplyForState" label="改价状态" show-overflow-tooltip>
<template slot-scope="scope">
<span>{{scope.row.ApplyForState==1?"待审核":(scope.row.ApplyForState==2?"已通过":(scope.row.ApplyForState==3?"已拒绝":""))}} </span>
</template>
</el-table-column>
<el-table-column
label="操作"
show-overflow-tooltip>
<template slot-scope="scope" >
<el-button v-if="scope.row.ApplyForState==1" size="mini" type="primary" @click="ckChangePrice(scope.row,0)">审核</el-button>
<p v-else class=" fz14" :class="{'cursor-pointer c059FF6':scope.row.OrderType>0}"
@click="ckChangePrice(scope.row,1)">查看详情</p>
</template>
</el-table-column>
</el-table>
<div class="combottomDiv OPremarkDiv" v-if="changePriceMsg.outerVisible" style="height: 600px;">
<div class="combottomTitle" v-if="changePriceMsg.DialogType==0">应收总金额改价审核</div>
<div class="combottomTitle" v-else>改价详情</div>
<div slot="footer" class="dialog-footer" style="float: right;margin-right: 5%;position: relative; z-index: 1;">
<button class="hollowFixedBtn" @click="changePriceMsg.outerVisible = false">{{$t('pub.cancelBtn')}}</button>
<button class="normalBtn" v-if="changePriceMsg.DialogType==0" type="primary" @click="setChangePrice">{{$t('pub.sureBtn')}}</button>
</div>
<el-form label-width="100px">
<el-row > <el-col :span="4"> <el-form-item label="申请总金额" prop="Remark">
<span rows="6">{{changePriceMsg.PreferPrice}}</span>
</el-form-item></el-col>
<el-col :span="8"> <el-form-item label="申请理由" prop="Remark">
<span rows="6">{{changePriceMsg.ApplyForReason}} </span>
</el-form-item></el-col>
</el-row>
<el-row>
<el-col :span="4"> <el-form-item label="应收总金额" prop="Remark">
<el-input type="number" :readonly="changePriceMsg.DialogType==1?true:false" v-model="changePriceMsg.Money" rows="6"></el-input>
</el-form-item></el-col>
<el-col :span="4"> <el-form-item label="审核状态" prop="Remark">
<el-radio-group v-model="changePriceMsg.ApplyForState" :readonly="changePriceMsg.DialogType==1?true:false">
<el-radio :label="2">通过</el-radio>
<el-radio :label="3">拒绝</el-radio>
</el-radio-group>
</el-form-item></el-col>
<el-col :span="8"> <el-form-item label="审核理由" prop="Remark">
<el-input :readonly="changePriceMsg.DialogType==1?true:false" type="textarea" v-model="changePriceMsg.RefuseReason" rows="6"></el-input>
</el-form-item></el-col>
</el-row>
</el-form>
<div class="combottomTitle" >订单详情</div>
<div style="width: 100%; height: auto; overflow-x: auto" class="ownScrollbarStyle" v-if="changePriceMsg.OrderType==2">
<table class="groupTourOrderSearchTable" border="0" cellspacing="0" cellpadding="0" >
<tr>
<th width="240">{{ $t("fnc.danhao") }}&{{ $t("visa.v_tuanhao") }}</th>
<th width="120">{{ $t("fnc.khxinxi") }}</th>
<th width="70">{{ $t("salesModule.Type") }}</th>
<th width="150">
{{ $t("advmanager.v_xilie") }}&{{ $t("advmanager.v_line") }}
</th>
<th width="60">{{ $t("Airticket.Air_Number") }}</th>
<th width="80">{{ $t("fnc.danjia") }}</th>
<th width="80">{{ $t("fnc.cjdanjia") }}</th>
<th width="80">{{ $t("fnc.yszonge") }}</th>
<th width="80">{{ $t("fnc.shishou") }}</th>
<th width="80">人头小费</th>
<th width="70">{{ $t("fnc.youhui") }}</th>
<th width="70">{{ $t("salesModule.HappinessPassbook") }}</th>
<th width="70">{{ $t("fnc.tuikuan") }}</th>
<th width="70">{{ $t("fnc.ptshuijin") }}</th>
<th width="80">{{ $t("Operation.Op_platZaitu") }}</th>
<th width="80">{{ $t("Operation.Op_daishou") }}</th>
<th width="80">{{ $t("admin.admin_status") }}</th>
<th width="120">{{ $t("salesModule.QRH") }}</th>
<!-- <th width="200">{{ $t("system.table_operation") }}</th> -->
</tr>
<tr>
<td v-show="list.length == 0" colspan="19" align="center">
{{ $t("system.content_noData") }}
</td>
</tr>
<tbody v-for="(item, index) in 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.isChargeLossOrders == 1" style="color: red">
{{ $t("fnc.sun") }}
</p>
<p class="fbold over_ellipsis" style="width: 100%; cursor: pointer">
<span :title="item.orderId" @click="
goUrlX(
'团报名清单',
'groupTourOrderByTuan',
item.tcid,
item.tcnum
)
">{{ 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>
<p class="fz12 over_ellipsis" style="width: 100%; text-decoration: underline; cursor: pointer"
:title="item.alName" @click="
goUrlX('产品查询', 'productQuery', item.tcid, item.tcnum)
">
{{ item.tcnum }}
</p>
<p class="fz12 over_ellipsis" style="width: 100%">
{{ item.commissionSPeopleName }}
</p>
<p v-if="item.lureEmpName">引流人:{{ item.lureEmpName }}</p>
<p style="min-width: 180px">
{{ $t("hotel.hotel_StartTeam") }}:{{ item.startDate }}
</p>
<p>{{ $t("restaurant.res_oderTime") }}:{{ item.createDate }}</p>
<p v-if="item.teamType==1||item.teamType==2">{{item.status==1?"未结团":(item.status==2?"已结团 ":(item.status==5?"待结团审核":""))}}{{item.status==2?item.outGroupAuditDate:""}}</p>
<p v-if="item.tradeWay == 1">{{ item.platformOrder }}</p>
<p v-if="item.commissionMoney" style="color: red;cursor: pointer;">
<span style="float: left;">{{ $t("salesModule.Commission") }}:</span>
<commissionDialog :type="pagesTitle" :objNew="item"></commissionDialog>{{item.commissionCurrency}}
<!-- {{ item.commissionMoney }} {{item.commissionCurrency}} -->
</p>
<p v-else-if="item.latestCommissionMoney" style="color: red">
{{ $t("salesModule.Commission") }}:{{
item.latestCommissionMoney
}}
</p>
<div>
<div style="color: green" v-if="
item.commissionMoney == '' || item.commissionMoney == '-1'
">
<p v-if="item.extraRewardMoney > 0">
{{ $t("salesModule.EWJLJE") }}:{{ item.extraRewardMoney }}
</p>
<p v-if="item.extraDeductMoney > 0">
{{ $t("salesModule.EWKCJE") }}:{{ item.extraDeductMoney }}
</p>
</div>
<div style="color: red" v-else>
<p v-if="item.extraRewardMoney > 0">
{{ $t("salesModule.EWJLJE") }}:{{ item.extraRewardMoney }}
</p>
<p v-if="item.extraDeductMoney > 0">
{{ $t("salesModule.EWKCJE") }}:{{ item.extraDeductMoney }}
</p>
</div>
<div style="color: red">
<p v-if="item.unionExtraMoney != 0">
{{ $t("salesModule.LYEWFY") }}:{{ item.unionExtraMoney }}
</p>
</div>
</div>
<div v-if="item.orderTypeName === '单团'" style="color: red; cursor: pointer"
@click="seeBJD(item.quotationUrl)">
查看报价单
</div>
</td>
<td>
<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">
{{ $t("salesModule.HYLB") }}:{{ item.industryCategory }}
</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>
<span v-if="item.guestNumStatus == 1" style="color: #1aa86b" class="personNo" slot="reference"
@click="getMembersDetail(item)">{{ 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"
@click="getMembersDetail(item)">{{ 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"
@click="getMembersDetail(item)">{{ item.guestNum }}/{{
item.ySeatNum > 0 ? item.ySeatNum + "Y " : ""
}}{{ item.eSeatNum > 0 ? item.eSeatNum + "E " : ""
}}{{ item.fSeatNum > 0 ? item.fSeatNum + "F " : "" }}</span>
<br />
<span v-if="item.refuseVisaNum > 0" style="color: red">
({{ $t("salesModule.RefuseQ") }} {{ item.refuseVisaNum
}}{{ $t("sm.person") }})
</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>
<el-popover style="padding: 0" width="370" trigger="click">
<div class="personNolayer">
<table border="0" cellspacing="1" cellpadding="1">
<tr>
<th>{{ $t("salesModule.DJNUM") }}</th>
<th>{{ $t("fnc.jine") }}</th>
<th>{{ $t("salesModule.Type") }}</th>
<th>{{ $t("hotel.hotel_status") }}</th>
</tr>
<tr v-if="list.length > 0" v-for="(item2, index2) in list" :key="index2">
<td>{{ item2.FrID }}</td>
<td>{{ item2.PayMoney }}</td>
<td>{{ item2.TypeName }}</td>
<td>{{ item2.StatusName }}</td>
</tr>
<tr v-if="list.length == 0">
<td colspan="4" align="center">
{{ $t("system.content_noData") }}
</td>
</tr>
</table>
</div>
<span v-if="item.dueInMoney == 0" style="cursor: pointer" @click="getOrderDetail(item)"
slot="reference">{{ item.income }}</span>
<span v-if="item.dueInMoney != 0" style="cursor: pointer; color: #e95252" @click="getOrderDetail(item)"
slot="reference">{{ item.income }}</span>
</el-popover>
</td>
<td style="color: #ff9c00">{{ item.preferTipAmount?item.preferTipAmount:'0.00' }}</td>
<!-- 优惠 -->
<td>
<el-popover style="padding: 0" width="600" trigger="click">
<div class="personNolayer">
<table border="0" cellspacing="1" cellpadding="1">
<tr>
<th>{{ $t("active.cl_couponName") }}</th>
<th>{{ $t("active.cl_couponType") }}</th>
<th>{{ $t("active.cl_dkjezk") }}</th>
<th>{{ $t("active.cl_sytiaojian") }}</th>
<th>{{ $t("active.cl_huoqufangshi") }}</th>
<th>{{ $t("active.cl_hqriqi") }}</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">{{
$t("active.cl_dyquan")
}}</span>
<span v-if="item2.couponsType == 2">{{
$t("active.cl_zkquan")
}}</span>
</td>
<td>{{ item2.denomination }}</td>
<td>
{{ $t("active.cl_man") }}{{ item2.useCondition
}}{{ $t("active.cl_keyong") }}
</td>
<td>
<span v-if="item2.accessType == 1">{{
$t("active.cl_choujiang")
}}</span>
<span v-else></span>
</td>
<td>{{ item2.acessDate }}</td>
</tr>
<tr v-if="item.couponAllotList.length == 0">
<td colspan="6" align="center">
{{ $t("system.content_noData") }}
</td>
</tr>
</table>
</div>
<span style="
cursor: pointer;
color: #e95252;
text-decoration: underline;
" slot="reference">{{ item.discountMoney }}</span>
</el-popover>
</td>
<td>
<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>{{ $t("fnc.jine") }}</th>
<th>{{ $t("advmanager.v_type") }}</th>
<th>{{ $t("system.label_info") }}</th>
<th>
{{ $t("salesModule.Time") }}(<span @click="goUrlHappy(item)" style="cursor: pointer" colspan="4"
align="center">{{ $t("salesModule.Time")
}}{{ $t("salesModule.LookMore") }}</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">
{{ $t("system.content_noData") }}
</td>
</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="color: #e95252; text-decoration: underline">{{
item.redEnvelopeMoney
}}</span>
</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">
{{ $t("fnc.shousun") }}
</td>
<td v-else class="fz12" :style="item.orderState === 3 ? 'color: #e95252;' : ''">
{{ item.statsstr }}
</td>
<td width="120">
<!--{{item.confirmFileList}}-->
<!--<span>确认函</span>-->
<span v-if="item.confirmFileList.length > 0" class="fz12 dowloadSpan"
@click="downLoadFile(item.confirmFileList)">
{{ $t("salesModule.QRHXZ") }}
</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.confirmFileList.length == 0">
<el-upload v-if="
item.confirmFileList.length == 0 &&
item.commissionSharePeople !== userId
" :http-request="uploadFileBtn" :multiple="false" :show-file-list="false" action="">
<el-button size="small" type="danger" @click="getItem(item)">{{ $t("adm.adm_content") }}</el-button>
</el-upload>
</template>
<br />
<p style="color:red;font-size:12px;">申请发票需要上传确认函</p>
</td>
</tr>
<tr style="height: 20px">
<td colspan="17" class="RL_Order" style="height: 20px">
<span class="RL-remarkTitle" v-if="item.guestList.length > 0">{{ $t("salesModule.MD") }}:</span>
<span class="RL-redType RL-remarkCon" v-if="item.guestList.length > 0">
<span v-for="childItem in item.guestList" style="color: blue">{{ childItem.userName }}
<span style="color:#f56c6c">{{childItem.visaType==1?'(个签)':''}}</span>
<span v-if="childItem.isApplyPhoto == 1" style="color: red">({{ $t("salesModule.Zhao") }})</span>
&nbsp;&nbsp;</span>
<span v-if="item.photoNum > 0">({{ $t("salesModule.NoPhoto") }} {{ item.photoNum
}}{{ $t("salesModule.Fen") }})</span>
</span>
<p v-if="item.cancelGuestList.length > 0">
<span class="">{{ $t("salesModule.CancelOrder") }}:</span>
<span class="RL-redType RL-remarkCon">
<span style="color: red" v-for="childItem in item.cancelGuestList">{{ childItem.userName }}<span style="color:#f56c6c">{{childItem.visaType==1?'(个签)':''}}</span>
&nbsp;&nbsp;</span>
</span>
</p>
<span style="display: block">{{ $t("salesModule.RoomInfo")
}}<span v-if="item.oneSex > 0"
style="color: #e95252">({{ item.oneSex == 1 ? "单男" : "单女" }})</span>:{{ item.orderGuestHouseStr }}</span>
<div>
<span v-if="item.opTipMoney == '' && item.tipMoney != ''"
style="color: red">({{ $t("fnc.xiaofei") }}:{{ item.tipMoney }})</span>
<span v-if="item.opTipMoney != ''" style="color: red">
({{ $t("fnc.xiaofei") }}:{{ item.opTipMoney }})
<span>{{ $t("salesModule.Docments") }}:</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>
<div v-if="item.otherContractList">
<span class="GO_Contract"
@click="goSingleContract(item)">{{item.otherContractList.length==0?"单项合同":"查看单项合同"}}</span>
</div>
<div v-if="
item.contractNum && item.contractNum.length == 0
">
<span class="GO_Contract" @click="goContract(item, {})">出境合同</span>
</div>
<div v-else>
<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 }}
<template v-if="sItem.auditContract==3">
<font style="color:red">驳回</font>
</template>
<template v-if="sItem.auditContract==2">
<font style="color:green">审核通过</font>
</template>
</span>
</template>
</div>
</td>
</tr>
<tr>
<td colspan="5">
<div class="groupTourOrder_remarks">
<div>
<div>
<span>{{ $t("pub.pubRemark") }}:</span>
<p>
<span v-if="item.tsIdList.length > 0">{{ $t("salesModule.ComplaintNum") }}:
<a class="underline" v-for="ts in item.tsIdList" href="javascript:void(0);" @click="
goUrlTS(
'ComplaintsDetail',
ts,
item.orderId,
'投诉详情'
)
">{{ ts }}</a>
;</span><span
v-if="item.clientSource == 1 && item.brandName != ''">{{ item.brandName }}{{ $t("fnc.dingdan") }}
{{ item.platformOrder }};</span>{{ item.remarks }}
</p>
</div>
<div>
<span>{{ item.remarksName }}&ensp;{{ item.rematksTime }}</span>
<el-popover width="600" placement="bottom-end" trigger="click">
<div class="groupTourOrder_remarks_popover">
<div>{{ $t("fnc.lsbeizhu") }}</div>
<p v-if="item.remarksList.length !== 0" v-for="(item2, index2) in item.remarksList"
:key="index2">
<span>{{ item2.remarks }}</span>
<span>{{ item2.createByName }}&ensp;<span
style="color: #666666">{{ item2.createDate }}</span></span>
</p>
<span v-if="item.remarksList.length === 0">{{
$t("system.content_noData")
}}</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>
</div>
<p v-if="item.unionRemark" style="color: red;font-size:10px;margin-top:5px;">联运备注:{{ item.unionRemark }}
</p>
<template v-if="item.orderGuestFlightList&&item.orderGuestFlightList.length>0">
<template v-for="(uItem,uIndex) in item.orderGuestFlightList">
<div :key="uIndex+20000">
{{uItem.guestNames}} 航班信息:
<span v-if="uItem.isSure==1" style="color:rgb(71, 191, 140)">【OK】</span> <span v-else>【暂定】</span>
<a v-if="uItem.ticketUnionId&&uItem.ticketUnionId>0" @click="toTrip(item,uItem.ticketUnionId)"
style="cursor:pointer;text-decoration:underline;color:green;">
{{ $t("Operation.Op_teamNotice") }}({{ item.outNotice == 1 ? "OK" : "暂定"}})
</a>
<br />
<template v-for="(sfItem,sfIndex) in uItem.guestFlightList">
<span style="color:blue;" :key="sfIndex+30000">
{{sfItem.flightDateStr}} {{sfItem.flight_number}}
{{sfItem.departure_time}}-{{sfItem.arrival_time}}
{{sfItem.departureName}} ({{sfItem.diata}})-{{sfItem.arrivalCityName}}({{sfItem.aiata}})
</span>
<br :key="sfIndex+40000" />
</template>
</div>
</template>
</template>
</td>
<td colspan="4" class="groupTourOrder_remarks" style="height: 40px">
<div>
<div>
<span>{{ $t("Operation.Op_remark") }}:</span>
<p>{{ item.oP_Remarks ? item.oP_Remarks : "无" }}</p>
</div>
</div>
</td>
<td colspan="4" class="groupTourOrder_SpecialAPP" stysle="height: 40px;">
<div>
特价申请函:
<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>
</td>
<td colspan="5" class="groupTourOrder_tickets" style="height: 40px">
<div @click="goUrlSFD('SalesFinancialDetail', '销售财务单据', item)">
<div>{{ $t("fnc.skdanju") }}:</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>
<!-- @click="goUrl('财务单据','FinancialDocumentsDetail',item2.frID,'')" -->
</span>
<span v-if="item.financeList.length === 0"
style="cursor: default">{{ $t("system.content_noData") }}</span>
</div>
</div>
<div @click="goUrlSFD('SalesFinancialDetail', '销售财务单据', item)">
<div>{{ $t("fnc.fkdanju") }}:</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">{{ $t("system.content_noData") }}</span>
</div>
</div>
<div>
<div>{{ $t("salesModule.Invoice") }}:</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">{{ $t("system.content_noData") }}</span>
</div>
</div>
</td>
</tr>
</tbody>
</table>
<el-table-column sortable prop="DueInMoney" label="待收">
<template slot-scope="scope">
<span :class="{ red: scope.row.DueInMoney > 0 }">{{
scope.row.DueInMoney
}}</span>
</template>
</el-table-column>
<el-table-column
sortable
prop="OrderProfit"
label="预期利润"
min-width="100"
>
<template slot-scope="scope">
<span :class="{ red: scope.row.OrderProfit > 0 }">{{
scope.row.OrderProfit
}}</span>
</template>
</el-table-column>
<el-table-column sortable prop="DiscountsMoney" label="优惠">
</el-table-column>
<el-table-column
prop="Money"
label="申请金额"
min-width="100"
show-overflow-tooltip
>
<template slot-scope="scope">
<span> {{ scope.row.ApplyForMoney }}</span>
</template>
</el-table-column>
<el-table-column
prop="ApplyForReason"
label="申请理由"
min-width="100"
show-overflow-tooltip
>
<template slot-scope="scope">
{{ scope.row.ApplyForReason }}
</template>
</el-table-column>
<el-table-column
prop="ApplyForState"
label="改价状态"
show-overflow-tooltip
>
<template slot-scope="scope">
<span
>{{
scope.row.ApplyForState == 1
? "待审核"
: scope.row.ApplyForState == 2
? "已通过"
: scope.row.ApplyForState == 3
? "已拒绝"
: ""
}}
</span>
</template>
</el-table-column>
<el-table-column label="操作" show-overflow-tooltip>
<template slot-scope="scope">
<el-button
v-if="scope.row.ApplyForState == 1"
size="mini"
type="primary"
@click="ckChangePrice(scope.row, 0)"
>审核</el-button
>
<p
v-else
class=" fz14"
:class="{ 'cursor-pointer c059FF6': scope.row.OrderType > 0 }"
@click="ckChangePrice(scope.row, 1)"
>
查看详情
</p>
</template>
</el-table-column>
</el-table>
<div
class="combottomDiv OPremarkDiv"
v-if="changePriceMsg.outerVisible"
style="height: 300px;"
>
<div class="combottomTitle" v-if="changePriceMsg.DialogType == 0">
应收总金额改价审核
</div>
<div class="combottomTitle" v-else>改价详情</div>
<div
slot="footer"
class="dialog-footer"
style="float: right;margin-right: 5%;position: relative; z-index: 1;"
>
<button
:class="[changePriceMsg.ApplyForState==2?'normalBtn':'hollowFixedBtn']"
type="primary"
@click="changePriceMsg.DialogType == 1 ?'':changePriceMsg.ApplyForState=2,setChangePrice()"
>
通过
</button>
<button
:class="[changePriceMsg.ApplyForState==3?'normalBtn':'hollowFixedBtn']"
type="primary"
@click="changePriceMsg.DialogType == 1 ?'':changePriceMsg.ApplyForState=3,setChangePrice()"
>
拒绝
</button>
<button
class="hollowFixedBtn"
@click="changePriceMsg.outerVisible = false"
>
{{ $t("pub.cancelBtn") }}
</button>
<!-- <button class="normalBtn" v-if="changePriceMsg.DialogType==0"
type="primary" @click="setChangePrice">保存</button> -->
</div>
<el-form label-width="100px">
<el-row>
<el-col :span="4">
<el-form-item label="申请总金额">
<span rows="6">{{ changePriceMsg.PreferPrice }}</span>
</el-form-item></el-col
>
<el-col :span="8">
<el-form-item label="申请理由">
<span rows="6">{{ changePriceMsg.ApplyForReason }} </span>
</el-form-item></el-col
>
</el-row>
<el-row>
<el-col :span="4">
<el-form-item label="应收总金额" prop="Money">
<el-input
type="number"
:readonly="changePriceMsg.DialogType == 1 ? true : false"
v-model="changePriceMsg.Money"
rows="6"
></el-input> </el-form-item
></el-col>
<el-col :span="4" v-if="false">
<el-form-item label="审核状态" prop="">
<el-radio-group
v-model="changePriceMsg.ApplyForState"
:readonly="changePriceMsg.DialogType == 1 ? true : false"
>
<el-radio :label="2">通过</el-radio>
<el-radio :label="3">拒绝</el-radio>
</el-radio-group>
</el-form-item></el-col
>
<el-col :span="8">
<el-form-item label="审核理由" prop="RefuseReason">
<el-input
:readonly="changePriceMsg.DialogType == 1 ? true : false"
type="textarea"
v-model="changePriceMsg.RefuseReason"
rows="6"
></el-input> </el-form-item
></el-col>
</el-row>
</el-form>
</div>
</div>
</div>
</div>
</template>
<script>
import offset from '../../public/offset.vue';
export default {
components: {
offset
},
props: ["OrderList", "pagesTitle"],
data() {
return {
S_CheckBranchOrder: false,
S_CheckAllOrder: false,
userInfo: {},
userId:0,
list: [],
redBagList: [],
logList: [],
changePriceMsg:{
ID:0,
OrderId:0,
OrderType:0,
PreferPrice:0,
Money:0,
ApplyForReason:'',
RefuseReason:'',
ApplyForState:1,
setPlatDialog:false,//是否显示弹出框
outerVisible:false,
DialogType:0,//审核弹出
},
msg: {
OrderId: "",
LossMoney: 0,
State: '', //状态 1确认 2已邮寄 3设置自提 4收损
SelffetchAddress: ''
},
orderMsg: {
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',
IsCollectMoney:0,
TradeWay:'',
PlatformAccount:'',
},
loading: false,
items: null,
Title: ''
};
},
watch: {
pagesTitle(val, oldval) {
this.Title = val
import offset from "../../public/offset.vue";
export default {
components: {
offset
},
props: ["OrderList", "pagesTitle"],
data() {
return {
S_CheckBranchOrder: false,
S_CheckAllOrder: false,
userInfo: {},
userId: 0,
list: [],
redBagList: [],
logList: [],
changePriceMsg: {
ID: 0,
OrderId: 0,
OrderType: 0,
PreferPrice: 0,
Money: 0,
ApplyForReason: "",
RefuseReason: "",
ApplyForState: 1,
setPlatDialog: false, //是否显示弹出框
outerVisible: false,
DialogType: 0 //审核弹出
},
OrderList: {
handler(val, oldVal) {
}
}
msg: {
OrderId: "",
LossMoney: 0,
State: "", //状态 1确认 2已邮寄 3设置自提 4收损
SelffetchAddress: ""
},
orderMsg: {
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",
IsCollectMoney: 0,
TradeWay: "",
PlatformAccount: ""
},
loading: false,
items: null,
Title: ""
};
},
watch: {
pagesTitle(val, oldval) {
this.Title = val;
},
methods: {
setChangePrice() {
this.apipost('CarSingle_post_SetOrderChangePrice', this.changePriceMsg, res => {
OrderList: {
handler(val, oldVal) {}
}
},
methods: {
setChangePrice() {
this.apipost(
"CarSingle_post_SetOrderChangePrice",
this.changePriceMsg,
res => {
if (res.data.resultCode == 1) {
this.changePriceMsg.setPlatDialog = true;
this.changePriceMsg.outerVisible = false;
this.$message.info(res.data.message)
}
else{
this.$message.info(res.data.message)
this.changePriceMsg.outerVisible = false;
this.$message.info(res.data.message);
} else {
this.$message.info(res.data.message);
}
})
},
}
);
},
//点击修改订单总价
ckChangePrice(item,type) {
if(item.OrderType==1){}
else if(item.OrderType==2){
this.orderMsg.tempOrderId=item.OrderId;
ckChangePrice(item, type) {
if (item.OrderType == 1) {
} else if (item.OrderType == 2) {
this.orderMsg.tempOrderId = item.OrderId;
this.apipost(
"sellorder_post_GetOrderList",
this.orderMsg,
......@@ -783,1216 +391,1250 @@
},
err => {}
);
} else if (item.OrderType == 3) {
} else if (item.OrderType == 4) {
} else if (item.OrderType == 5) {
} else if (item.OrderType == 6) {
} else if (item.OrderType == 7) {
} else {
}
else if(item.OrderType==3){}
else if(item.OrderType==4){}
else if(item.OrderType==5){}
else if(item.OrderType==6){}
else if(item.OrderType==7){}
else {
}
this.apipost('CarSingle_post_GetOrderChangePriceDetail', {ID:item.OrderChangePriceId}, res => {
this.apipost(
"CarSingle_post_GetOrderChangePriceDetail",
{ ID: item.OrderChangePriceId },
res => {
if (res.data.resultCode == 1) {
let data = res.data.data
let data = res.data.data;
this.changePriceMsg.Money = data.Money;
this.changePriceMsg.ApplyForState = data.ApplyForState;
this.changePriceMsg.ApplyForReason=data.ApplyForReason;
if(type==0){
this.changePriceMsg.ApplyForReason = data.ApplyForReason;
if (type == 0) {
this.changePriceMsg.PreferPrice = item.ApplyForMoney;
}else{
} else {
this.changePriceMsg.PreferPrice = data.ApplyForMoney;
}
this.changePriceMsg.RefuseReason = data.RefuseReason;
}
})
this.changePriceMsg.DialogType=type;
this.changePriceMsg.ID = item.OrderChangePriceId;
this.changePriceMsg.OrderId = item.OrderId;
this.changePriceMsg.OrderType = item.OrderType;
this.changePriceMsg.setPlatDialog = false;
this.changePriceMsg.outerVisible = true;
},
GetAdminCarOrderPageList(row, url, href, data) {
let msg = {
pageIndex: 1,
pageSize: 5,
OrderType: '',
OrderId: row.OrderId,
OrderNo: '',
SurName: '',
Name: '',
OrderStatus: 0,
StartTime: '',
EndTime: '',
OrderSTime: '',
OrderETime: '',
ProductName: '',
Mobile: '', //电话
IsSelectSale: 1,
EnterID: 0, //业务员
}
let name
this.apipost('CarSingle_post_GetAdminCarOrderPageList', msg, res => {
if (res.data.resultCode == 1) {
let pageData = res.data.data.pageData
let OrderType
if (pageData && pageData.length > 0) {
OrderType = pageData[0].OrderType
}
if (this.pagesTitle == '销售' || (!this.S_CheckBranchOrder && !this.S_CheckAllOrder)) {
name = 'CharterOrderList'
} else {
name = 'CharterOrderListOP'
}
this.$router.push({
name: name,
query: {
OrderId: row.OrderId,
OrderType: OrderType ? OrderType : 4,
blank: "y",
}
});
);
this.changePriceMsg.DialogType = type;
this.changePriceMsg.ID = item.OrderChangePriceId;
this.changePriceMsg.OrderId = item.OrderId;
this.changePriceMsg.OrderType = item.OrderType;
this.changePriceMsg.setPlatDialog = false;
this.changePriceMsg.outerVisible = true;
},
GetAdminCarOrderPageList(row, url, href, data) {
let msg = {
pageIndex: 1,
pageSize: 5,
OrderType: "",
OrderId: row.OrderId,
OrderNo: "",
SurName: "",
Name: "",
OrderStatus: 0,
StartTime: "",
EndTime: "",
OrderSTime: "",
OrderETime: "",
ProductName: "",
Mobile: "", //电话
IsSelectSale: 1,
EnterID: 0 //业务员
};
let name;
this.apipost("CarSingle_post_GetAdminCarOrderPageList", msg, res => {
if (res.data.resultCode == 1) {
let pageData = res.data.data.pageData;
let OrderType;
if (pageData && pageData.length > 0) {
OrderType = pageData[0].OrderType;
}
})
},
goTuanDetails(row) {
let name = ''
if (row.IsOneDayOrder == 1) {
name = 'groupTourOrderByTuanOne'
} else {
name = 'groupTourOrderByTuan'
}
this.$router.push({
name: name,
query: {
id: row.TCID,
tcmun: row.TCNUM,
blank: "y",
if (
this.pagesTitle == "销售" ||
(!this.S_CheckBranchOrder && !this.S_CheckAllOrder)
) {
name = "CharterOrderList";
} else {
name = "CharterOrderListOP";
}
});
},
goDetails(row) {
let data = [{
this.$router.push({
name: name,
query: {
OrderId: row.OrderId,
OrderType: OrderType ? OrderType : 4,
blank: "y"
}
});
}
});
},
goTuanDetails(row) {
let name = "";
if (row.IsOneDayOrder == 1) {
name = "groupTourOrderByTuanOne";
} else {
name = "groupTourOrderByTuan";
}
this.$router.push({
name: name,
query: {
id: row.TCID,
tcmun: row.TCNUM,
blank: "y"
}
});
},
goDetails(row) {
let data = [
{
path: "",
OrderId: row.OrderId,
Type: ''
}]
let href
let url = this.domainManager().crmRoutingUrl;
if (row.OrderType == 1) {
if (this.pagesTitle == '销售' || (!this.S_CheckBranchOrder && !this.S_CheckAllOrder)) {
data[0].path = 'myCustomerOrderAllType'
Type: ""
}
];
let href;
let url = this.domainManager().crmRoutingUrl;
if (row.OrderType == 1) {
if (
this.pagesTitle == "销售" ||
(!this.S_CheckBranchOrder && !this.S_CheckAllOrder)
) {
data[0].path = "myCustomerOrderAllType";
} else {
data[0].path = "customerOrderAllType";
}
href =
url +
"automaticLogin?token=" +
this.getLocalStorage().token +
"&data=" +
JSON.stringify(data);
window.open(href);
} else {
let name = "";
if (row.OrderType == 6) {
if (
this.pagesTitle == "销售" ||
(!this.S_CheckBranchOrder && !this.S_CheckAllOrder)
) {
name = "VisaProductEditOrder";
} else {
data[0].path = 'customerOrderAllType'
name = "VisaProductEditOrderOP";
}
href = url + 'automaticLogin?token=' + this.getLocalStorage().token + '&data=' + JSON.stringify(data)
window.open(href);
} else {
let name = ''
if (row.OrderType == 6) {
if (this.pagesTitle == '销售' || (!this.S_CheckBranchOrder && !this.S_CheckAllOrder)) {
name = 'VisaProductEditOrder'
} else {
name = 'VisaProductEditOrderOP'
}
this.$router.push({
name: name,
});
} else if (row.OrderType == 2) { //跟团 一日游
if (this.pagesTitle == '销售' || (!this.S_CheckBranchOrder && !this.S_CheckAllOrder)) {
if (row.IsOneDayOrder == 1) {
name = 'groupTourOrderOne'
} else {
name = 'groupTourOrder'
}
} else {
name = 'enrollTotal'
}
} else if (row.OrderType == 3) { //酒店
if (this.pagesTitle == '销售' || (!this.S_CheckBranchOrder && !this.S_CheckAllOrder)) {
name = 'singleProductHotelOrder'
this.$router.push({
name: name
});
} else if (row.OrderType == 2) {
//跟团 一日游
if (
this.pagesTitle == "销售" ||
(!this.S_CheckBranchOrder && !this.S_CheckAllOrder)
) {
if (row.IsOneDayOrder == 1) {
name = "groupTourOrderOne";
} else {
name = 'singleProductHotelOrderOP'
name = "groupTourOrder";
}
} else if (row.OrderType == 4) { //门票
if (this.pagesTitle == '销售' || (!this.S_CheckBranchOrder && !this.S_CheckAllOrder)) {
name = 'SingleticketOrderList'
} else {
name = "enrollTotal";
}
} else if (row.OrderType == 3) {
//酒店
if (
this.pagesTitle == "销售" ||
(!this.S_CheckBranchOrder && !this.S_CheckAllOrder)
) {
name = "singleProductHotelOrder";
} else {
name = "singleProductHotelOrderOP";
}
} else if (row.OrderType == 4) {
//门票
if (
this.pagesTitle == "销售" ||
(!this.S_CheckBranchOrder && !this.S_CheckAllOrder)
) {
name = "SingleticketOrderList";
} else {
name = "SingleticketOrderListOP";
}
} else if (row.OrderType == 5) {
//包车
if (row.CarType == "" || row.CarType == null) {
this.GetAdminCarOrderPageList(row, url, href, data);
} else {
if (this.pagesTitle == "销售") {
name = "CharterOrderList";
} else {
name = 'SingleticketOrderListOP'
}
} else if (row.OrderType == 5) { //包车
if(row.CarType==''||row.CarType==null){
this.GetAdminCarOrderPageList(row,url,href,data)
}else{
if(this.pagesTitle=='销售'){
name = 'CharterOrderList'
}else{
name = 'CharterOrderListOP'
}
data[0].Type = row.CarType==null||!row.CarType?4:row.CarType
name = "CharterOrderListOP";
}
} else if (row.OrderType == 7) { //jalan酒店
this.$message.info('jalan酒店暂不支持查看')
// if(this.pagesTitle=='销售'){
// name = 'CharterOrderList'
// }else{
// name = 'CharterOrderListOP'
// }
data[0].Type =
row.CarType == null || !row.CarType ? 4 : row.CarType;
}
if (name) {
this.$router.push({
name: name,
query: {
OrderId: row.OrderId,
OrderType: data[0].Type?data[0].Type:null,
blank: "y",
}
});
}
} else if (row.OrderType == 7) {
//jalan酒店
this.$message.info("jalan酒店暂不支持查看");
// if(this.pagesTitle=='销售'){
// name = 'CharterOrderList'
// }else{
// name = 'CharterOrderListOP'
// }
}
}
,getRedBag(item) {
let msg = {
CustomerId: item.customerId,
pageIndex: 1,
pageSize: 4,
};
if (item.customerId) {
this.apipost(
"customer_post_GetC_BigRedEnvelopeInfoList",
msg,
(res) => {
this.happy = true;
if (res.data.resultCode == 1) {
this.redBagList = res.data.data.pageData;
} else {}
},
(err) => {}
);
} else {
this.redBagList = [];
if (name) {
this.$router.push({
name: name,
query: {
OrderId: row.OrderId,
OrderType: data[0].Type ? data[0].Type : null,
blank: "y"
}
});
}
},
getLogDetail(obj) {
}
},
getRedBag(item) {
let msg = {
CustomerId: item.customerId,
pageIndex: 1,
pageSize: 4
};
if (item.customerId) {
this.apipost(
"sellorder_post_GetOrderLogList", {
ID: obj.orderId,
},
(res) => {
"customer_post_GetC_BigRedEnvelopeInfoList",
msg,
res => {
this.happy = true;
if (res.data.resultCode == 1) {
this.logList = res.data.data;
this.logList.forEach((item) => {
item["x"] = this.$commonUtils.formatMsgTime(item.updateDate);
});
this.redBagList = res.data.data.pageData;
} else {
}
},
(err) => {}
err => {}
);
},
},
mounted() {
let userInfo = this.getLocalStorage();
this.userId = this.getLocalStorage().EmployeeId;
let ActionMenuCode = userInfo.ActionMenuCode;
this.userInfo = this.getLocalStorage();
// 判断是否销售
if (ActionMenuCode.indexOf('S_CheckBranchOrder') != -1) {
this.S_CheckBranchOrder = true
}
if (ActionMenuCode.indexOf('S_CheckAllOrder') != -1) {
this.S_CheckAllOrder = true
} else {
this.redBagList = [];
}
},
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);
});
}
},
err => {}
);
}
};
},
mounted() {
let userInfo = this.getLocalStorage();
this.userId = this.getLocalStorage().EmployeeId;
let ActionMenuCode = userInfo.ActionMenuCode;
this.userInfo = this.getLocalStorage();
// 判断是否销售
if (ActionMenuCode.indexOf("S_CheckBranchOrder") != -1) {
this.S_CheckBranchOrder = true;
}
if (ActionMenuCode.indexOf("S_CheckAllOrder") != -1) {
this.S_CheckAllOrder = true;
}
}
};
</script>
<style scoped>
.row {
display: flex;
}
.row-c {
display: flex;
align-items: center;
}
.column {
display: flex;
flex-direction: column;
}
.column-jac {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
}
.column-ac {
display: flex;
flex-direction: column;
align-items: center;
}
.wrap {
flex-wrap: wrap;
}
.justify-sb {
justify-content: space-between;
}
.justify-c {
justify-content: center;
}
.justify-e {
justify-content: flex-end;
align-items: flex-end;
}
.flex-g {
flex-grow: 1;
}
.flex-s {
flex-shrink: 0;
}
.align-c {
align-items: center;
}
.cblack {
color: black;
}
.cf {
color: #ffffff;
}
.c9e {
color: #9e9e9e;
}
.c20C997 {
color: #20c997;
}
.c02C854 {
color: #02c854;
}
.cff9800 {
color: #ff9800;
}
.cF1416C {
color: #f1416c;
}
.cF57A98 {
color: #f57a98;
}
.c04C8C8 {
color: #04c8c8;
}
.c059FF6 {
color: #059ff6;
}
.c3FC4FF {
color: #3fc4ff;
}
.fz10 {
font-size: 10px;
}
.fz11 {
font-size: 11px;
}
.fz12 {
font-size: 12px;
}
.fz13 {
font-size: 13px;
}
.fz14 {
font-size: 14px;
}
.fz15 {
font-size: 15px;
}
.fz16 {
font-size: 16px;
}
.fz17 {
font-size: 17px;
}
.fz18 {
font-size: 18px;
}
.fbold {
font-weight: bold;
}
.ml {
margin-left: 10px;
}
.mr {
margin-right: 10px;
}
.mt {
margin-top: 10px;
}
.mt20 {
margin-top: 20px;
}
.mb {
margin-bottom: 10px;
}
.mb20 {
margin-bottom: 20px;
}
.mx {
margin-left: 10px;
margin-right: 10px;
}
.mx5 {
margin-left: 5px;
margin-right: 5px;
}
.mb5 {
margin-bottom: 5px;
}
.py {
padding: 15px 0;
}
.py5 {
padding: 5px 0;
}
.px5 {
padding: 0 5px;
}
.px15 {
padding: 0 15px;
}
.pa15 {
padding: 15px;
}
.py20 {
padding: 20px 0;
}
.pb5 {
padding: 0 0 5px 0;
}
.pa {
padding: 10px 20px;
}
.pa20 {
padding: 20px;
}
.pt20 {
padding: 20px 0;
}
.borderD {
border-bottom: 1px dashed #dddddd;
}
.bgf {
background: #ffffff;
}
.bgf5 {
background: #f5f5f5;
}
.bgE8F5E9 {
background: #e8f5e9;
}
.bgD9F3FF {
background: #d9f3ff;
}
.bgFAEAED {
background: #faeaed;
}
.bj {
background: #ffffff;
}
.bjFFF3E0 {
background: #FFF3E0;
}
.radius5 {
border-radius: 5px;
}
.cursor-pointer {
cursor: pointer;
}
.row {
display: flex;
}
.row-c {
display: flex;
align-items: center;
}
.column {
display: flex;
flex-direction: column;
}
.column-jac {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
}
.column-ac {
display: flex;
flex-direction: column;
align-items: center;
}
.wrap {
flex-wrap: wrap;
}
.justify-sb {
justify-content: space-between;
}
.justify-c {
justify-content: center;
}
.justify-e {
justify-content: flex-end;
align-items: flex-end;
}
.flex-g {
flex-grow: 1;
}
.flex-s {
flex-shrink: 0;
}
.align-c {
align-items: center;
}
.cblack {
color: black;
}
.cf {
color: #ffffff;
}
.c9e {
color: #9e9e9e;
}
.c20C997 {
color: #20c997;
}
.c02C854 {
color: #02c854;
}
.cff9800 {
color: #ff9800;
}
.cF1416C {
color: #f1416c;
}
.cF57A98 {
color: #f57a98;
}
.c04C8C8 {
color: #04c8c8;
}
.c059FF6 {
color: #059ff6;
}
.c3FC4FF {
color: #3fc4ff;
}
.fz10 {
font-size: 10px;
}
.fz11 {
font-size: 11px;
}
.fz12 {
font-size: 12px;
}
.fz13 {
font-size: 13px;
}
.fz14 {
font-size: 14px;
}
.fz15 {
font-size: 15px;
}
.fz16 {
font-size: 16px;
}
.fz17 {
font-size: 17px;
}
.fz18 {
font-size: 18px;
}
.fbold {
font-weight: bold;
}
.ml {
margin-left: 10px;
}
.relative {
position: relative;
}
.absolute {
position: absolute;
}
.left0 {
left: 0;
}
.right0 {
right: 0;
}
.top0 {
top: 0;
}
.bottom0 {
bottom: 0;
}
.left20 {
left: 020px;
}
.right20 {
right: 20px;
}
.top20 {
top: 20px;
}
.bottom20 {
bottom: 20px;
}
.text-center {
text-align: center;
}
.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: center;
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 .dowloadSpan:hover {
text-decoration: underline;
cursor: pointer;
}
.groupTourOrderSearchTable span.personNo {
text-decoration: underline;
cursor: pointer;
}
.groupTourOrderSearchTable span.personNo:hover {
font-weight: bold;
color: #e95252;
}
.personNolayer p {
height: 28px;
line-height: 28px;
padding-left: 15px;
}
.personNolayer p>span {
font-size: 12px;
color: #333;
margin-right: 15px;
}
.personNolayer table {
padding: 10px 0 0 20px;
width: 100%;
background-color: #ededed;
border-collapse: collapse;
border: 1px solid #d2d2d2;
font-size: 12px;
}
.personNolayer table th {
background-color: #ededed;
height: 34px;
text-indent: 15px;
}
.personNolayer table td {
background-color: #ffffff;
padding: 9px 15px;
color: #333333;
border: 1px solid #d2d2d2;
}
.mr {
margin-right: 10px;
}
.personNolayer table ._color_666 {
color: #666666;
}
.personNolayer table tr._color_666 th {
padding: 9px 15px;
}
.groupSuperSearchLayer>p {
padding: 20px 0;
font-size: 14px;
color: #333;
font-weight: bold;
}
.groupSuperSearchLayerTable {
font-size: 12px;
color: #666;
}
.groupSuperSearchLayerTable tr {
height: 50px;
}
.groupSuperSearchLayerTable td {
padding-right: 15px;
}
.groupTourOrderIcon button {
width: 30px;
height: 30px;
border-radius: 4px;
}
.groupTourOrderIcon .el-button--primary {
padding: 5px;
margin: 0;
font-size: 14px !important;
}
.groupTourOrderIcon .el-button+.el-button {
margin-left: 0 !important;
}
.productQuerybottomLayer {
overflow: auto;
position: fixed;
z-index: 50;
bottom: 0;
left: 0;
border-top: 3px solid #38425d;
background-color: #ffffff;
padding: 10px 10px 0;
width: 100%;
}
.productQuerybottomLayer .el-form-item__label {
font-size: 12px !important;
}
.productQuerybottomLayer>p {
border-left: 3px solid #e95252;
text-indent: 15px;
height: 16px;
font-family: "PingFangSc-Fine";
font-size: 16px;
margin-bottom: 20px;
line-height: 14px;
color: #000;
}
.productQuerybottomLayer .el-input-number {
width: auto !important;
}
.groupTourOrder_count_green {
color: #1bc594;
}
.mt {
margin-top: 10px;
}
.groupTourOrder_count_blue {
color: #4d7afd;
}
.groupTourOrder_count_yellow {
color: #ff9c00;
}
.mt20 {
margin-top: 20px;
}
.groupTourOrder_count_gray {
color: #999999;
}
.mb {
margin-bottom: 10px;
}
.groupTourOrder_count {
margin: 0 0 20px 0;
width: 100%;
height: auto;
}
.groupTourOrder_count_col {
height: 80px;
}
.mb20 {
margin-bottom: 20px;
}
.groupTourOrder_count_item {
font-weight: 400;
padding: 10px;
height: 100%;
border: 1px solid #e6e6e6;
background-color: #ffffff;
color: #333333;
}
.mx {
margin-left: 10px;
margin-right: 10px;
}
.mx5 {
margin-left: 5px;
margin-right: 5px;
}
.groupTourOrder_count_item>div>i {
font-size: 12px;
vertical-align: bottom;
}
.mb5 {
margin-bottom: 5px;
}
.groupTourOrder_count_item>div>span:nth-child(2) {
font-size: 14px;
vertical-align: bottom;
}
.py {
padding: 15px 0;
}
.groupTourOrder_count_item>div>span:nth-child(3) {
font-weight: bold;
font-size: 16px;
vertical-align: bottom;
}
.py5 {
padding: 5px 0;
}
.groupTourOrder_count_item>p {
font-size: 12px;
line-height: 18px;
}
.px5 {
padding: 0 5px;
}
.groupTourOrder_count_item>p>span {
margin: 0 5px 0 0;
white-space: nowrap;
}
.px15 {
padding: 0 15px;
}
.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;
}
.pa15 {
padding: 15px;
}
.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 {
display: table;
}
.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;
}
.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;
}
/* 出团通知书打印选择 */
.travelControlTripLayer {
position: fixed;
z-index: 99;
width: 100%;
height: 100%;
background: rgba(0, 0, 0, 0.3);
left: 0;
top: 0;
}
.travelControlTripLayerCont {
position: absolute;
left: 50%;
margin-left: -300px;
background: #fff;
top: 50%;
margin-top: -180px;
width: 600px;
}
.travelControlTripLayerCont>div {
padding: 0 30px;
}
.travelControlTripLayerCont>div label {
cursor: pointer;
vertical-align: middle;
}
.travelControlTripLayerCont>div label input {
vertical-align: middle;
}
.travelControlTripBtn {
color: #fff;
width: 90px;
height: 30px;
background: #e95252;
border: 1px solid #e95252;
cursor: pointer;
border-radius: 15px;
margin-left: 10px;
}
.travelControlTripLayer input[type="checkbox"]+label::before {
content: "\A0";
display: inline-block;
width: 15px;
height: 15px;
margin-right: 5px;
border-radius: 4px;
background-color: white;
text-indent: 0.15em;
line-height: 15px;
color: white;
border: 1px solid #e95252;
}
.travelControlTripLayer input[type="checkbox"]:checked+label::before {
content: "\2713";
background-color: #e95252;
}
.travelControlTripLayer input[type="checkbox"] {
position: absolute;
clip: rect(0, 0, 0, 0);
}
.travelControlTripLayer input[type="checkbox"]:focus+label::before {
box-shadow: none;
}
.travelControlTripLayer input[type="checkbox"]:disabled+label::before {
background-color: gray;
box-shadow: none;
color: #555;
}
.groupTourOrder_transfer {
position: fixed;
z-index: 50;
bottom: 0;
left: 50px;
padding: 10px 10px;
width: 100%;
min-width: 1366px;
min-height: 200px;
border-top: 3px solid #38425d;
background-color: #ffffff;
overflow-y: auto;
}
.groupTourOrder_transfer>.transfer_header {
position: relative;
width: 100%;
height: 30px;
}
.groupTourOrder_transfer>.transfer_header>div:nth-child(1) {
display: inline-block;
padding: 0 10px;
width: 200px;
height: 30px;
line-height: 30px;
border-left: 3px solid #e95252;
text-indent: 10px;
font-size: 16px;
color: #000000;
}
.groupTourOrder_transfer>.transfer_header>div:nth-child(2) {
position: absolute;
top: 0px;
right: 80px;
height: 30px;
}
.groupTourOrder_transfer>.transfer_header>div:nth-child(2)>div:nth-child(1) {
display: inline-block;
padding: 0 15px;
height: 30px;
line-height: 28px;
font-size: 14px;
color: #e95252;
border: 1px solid #e95252;
background: #fff;
border-radius: 15px;
cursor: pointer;
vertical-align: top;
}
.groupTourOrder_transfer>.transfer_header>div:nth-child(2)>div:nth-child(2) {
display: inline-block;
margin: 0 0 0 10px;
padding: 0 15px;
height: 30px;
line-height: 28px;
font-size: 14px;
color: #fff;
border: 1px solid #e95252;
background: #e95252;
border-radius: 15px;
cursor: pointer;
vertical-align: top;
}
.groupTourOrder_transfer>.transfer_info {
padding: 20px 0;
width: 100%;
font-size: 0px;
border-bottom: 1px dashed #999999;
}
.groupTourOrder_transfer>.transfer_info>div {
display: inline-block;
padding: 0 10px;
width: 25%;
height: 30px;
vertical-align: top;
}
.groupTourOrder_transfer>.transfer_info>div>em {
display: inline-block;
padding: 0 10px;
width: 35%;
height: 30px;
line-height: 30px;
text-align: right;
font-size: 16px;
vertical-align: top;
}
.groupTourOrder_transfer>.transfer_info>div>span {
display: inline-block;
padding: 0 10px;
width: 65%;
height: 30px;
line-height: 30px;
text-align: left;
font-size: 16px;
border-radius: 3px;
background-color: #e5e5e5;
vertical-align: top;
}
.groupTourOrder_transfer>.transfer_input {
padding: 20px 0;
width: 100%;
font-size: 0px;
}
.groupTourOrder_transfer>.transfer_input>div {
display: inline-block;
padding: 0 10px;
width: 25%;
height: 30px;
vertical-align: top;
}
.groupTourOrder_transfer>.transfer_input>div>em {
display: inline-block;
padding: 0 10px;
width: 35%;
height: 30px;
line-height: 30px;
text-align: right;
font-size: 16px;
vertical-align: top;
}
.groupTourOrder_transfer>.transfer_input>div>.el-input {
display: inline-block;
width: 65%;
height: 30px;
line-height: 30px;
text-align: left;
font-size: 14px;
vertical-align: top;
}
.Ysze {
position: relative;
}
.Ysze .changeYsze {
position: absolute;
left: 110%;
z-index: 10000;
top: 0;
width: 700px;
background: #fff;
box-shadow: 0 0 8px #888;
padding: 10px;
box-sizing: border-box;
}
.Ysze .Ysze-button {
position: absolute;
left: 98%;
top: 3px;
border-radius: 4px;
cursor: pointer;
}
.Ysze .changeYsze .el-form-item {
display: inline-block;
width: 30%;
margin-bottom: 5px;
}
.Ysze .changeYsze .el-icon-close {
position: absolute;
right: 6px;
top: 6px;
color: #f78989;
font-size: 20px;
cursor: pointer;
}
.py20 {
padding: 20px 0;
}
.pb5 {
padding: 0 0 5px 0;
}
.pa {
padding: 10px 20px;
}
.pa20 {
padding: 20px;
}
.pt20 {
padding: 20px 0;
}
.borderD {
border-bottom: 1px dashed #dddddd;
}
.bgf {
background: #ffffff;
}
.bgf5 {
background: #f5f5f5;
}
.bgE8F5E9 {
background: #e8f5e9;
}
.bgD9F3FF {
background: #d9f3ff;
}
.bgFAEAED {
background: #faeaed;
}
.bj {
background: #ffffff;
}
.bjFFF3E0 {
background: #fff3e0;
}
.radius5 {
border-radius: 5px;
}
.cursor-pointer {
cursor: pointer;
}
.relative {
position: relative;
}
.absolute {
position: absolute;
}
.left0 {
left: 0;
}
.right0 {
right: 0;
}
.top0 {
top: 0;
}
.bottom0 {
bottom: 0;
}
.left20 {
left: 020px;
}
.right20 {
right: 20px;
}
.top20 {
top: 20px;
}
.bottom20 {
bottom: 20px;
}
.text-center {
text-align: center;
}
.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: center;
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 .dowloadSpan:hover {
text-decoration: underline;
cursor: pointer;
}
.groupTourOrderSearchTable span.personNo {
text-decoration: underline;
cursor: pointer;
}
.groupTourOrderSearchTable span.personNo:hover {
font-weight: bold;
color: #e95252;
}
.personNolayer p {
height: 28px;
line-height: 28px;
padding-left: 15px;
}
.personNolayer p > span {
font-size: 12px;
color: #333;
margin-right: 15px;
}
.personNolayer table {
padding: 10px 0 0 20px;
width: 100%;
background-color: #ededed;
border-collapse: collapse;
border: 1px solid #d2d2d2;
font-size: 12px;
}
.personNolayer table th {
background-color: #ededed;
height: 34px;
text-indent: 15px;
}
.personNolayer table td {
background-color: #ffffff;
padding: 9px 15px;
color: #333333;
border: 1px solid #d2d2d2;
}
.personNolayer table ._color_666 {
color: #666666;
}
.personNolayer table tr._color_666 th {
padding: 9px 15px;
}
.groupSuperSearchLayer > p {
padding: 20px 0;
font-size: 14px;
color: #333;
font-weight: bold;
}
.groupSuperSearchLayerTable {
font-size: 12px;
color: #666;
}
.groupSuperSearchLayerTable tr {
height: 50px;
}
.groupSuperSearchLayerTable td {
padding-right: 15px;
}
.groupTourOrderIcon button {
width: 30px;
height: 30px;
border-radius: 4px;
}
.groupTourOrderIcon .el-button--primary {
padding: 5px;
margin: 0;
font-size: 14px !important;
}
.groupTourOrderIcon .el-button + .el-button {
margin-left: 0 !important;
}
.productQuerybottomLayer {
overflow: auto;
position: fixed;
z-index: 50;
bottom: 0;
left: 0;
border-top: 3px solid #38425d;
background-color: #ffffff;
padding: 10px 10px 0;
width: 100%;
}
.productQuerybottomLayer .el-form-item__label {
font-size: 12px !important;
}
.productQuerybottomLayer > p {
border-left: 3px solid #e95252;
text-indent: 15px;
height: 16px;
font-family: "PingFangSc-Fine";
font-size: 16px;
margin-bottom: 20px;
line-height: 14px;
color: #000;
}
.productQuerybottomLayer .el-input-number {
width: auto !important;
}
.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 {
display: table;
}
.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;
}
.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;
}
/* 出团通知书打印选择 */
.travelControlTripLayer {
position: fixed;
z-index: 99;
width: 100%;
height: 100%;
background: rgba(0, 0, 0, 0.3);
left: 0;
top: 0;
}
.travelControlTripLayerCont {
position: absolute;
left: 50%;
margin-left: -300px;
background: #fff;
top: 50%;
margin-top: -180px;
width: 600px;
}
.travelControlTripLayerCont > div {
padding: 0 30px;
}
.travelControlTripLayerCont > div label {
cursor: pointer;
vertical-align: middle;
}
.travelControlTripLayerCont > div label input {
vertical-align: middle;
}
.travelControlTripBtn {
color: #fff;
width: 90px;
height: 30px;
background: #e95252;
border: 1px solid #e95252;
cursor: pointer;
border-radius: 15px;
margin-left: 10px;
}
.travelControlTripLayer input[type="checkbox"] + label::before {
content: "\A0";
display: inline-block;
width: 15px;
height: 15px;
margin-right: 5px;
border-radius: 4px;
background-color: white;
text-indent: 0.15em;
line-height: 15px;
color: white;
border: 1px solid #e95252;
}
.travelControlTripLayer input[type="checkbox"]:checked + label::before {
content: "\2713";
background-color: #e95252;
}
.travelControlTripLayer input[type="checkbox"] {
position: absolute;
clip: rect(0, 0, 0, 0);
}
.travelControlTripLayer input[type="checkbox"]:focus + label::before {
box-shadow: none;
}
.travelControlTripLayer input[type="checkbox"]:disabled + label::before {
background-color: gray;
box-shadow: none;
color: #555;
}
.groupTourOrder_transfer {
position: fixed;
z-index: 50;
bottom: 0;
left: 50px;
padding: 10px 10px;
width: 100%;
min-width: 1366px;
min-height: 200px;
border-top: 3px solid #38425d;
background-color: #ffffff;
overflow-y: auto;
}
.groupTourOrder_transfer > .transfer_header {
position: relative;
width: 100%;
height: 30px;
}
.groupTourOrder_transfer > .transfer_header > div:nth-child(1) {
display: inline-block;
padding: 0 10px;
width: 200px;
height: 30px;
line-height: 30px;
border-left: 3px solid #e95252;
text-indent: 10px;
font-size: 16px;
color: #000000;
}
.groupTourOrder_transfer > .transfer_header > div:nth-child(2) {
position: absolute;
top: 0px;
right: 80px;
height: 30px;
}
.groupTourOrder_transfer
> .transfer_header
> div:nth-child(2)
> div:nth-child(1) {
display: inline-block;
padding: 0 15px;
height: 30px;
line-height: 28px;
font-size: 14px;
color: #e95252;
border: 1px solid #e95252;
background: #fff;
border-radius: 15px;
cursor: pointer;
vertical-align: top;
}
.groupTourOrder_transfer
> .transfer_header
> div:nth-child(2)
> div:nth-child(2) {
display: inline-block;
margin: 0 0 0 10px;
padding: 0 15px;
height: 30px;
line-height: 28px;
font-size: 14px;
color: #fff;
border: 1px solid #e95252;
background: #e95252;
border-radius: 15px;
cursor: pointer;
vertical-align: top;
}
.groupTourOrder_transfer > .transfer_info {
padding: 20px 0;
width: 100%;
font-size: 0px;
border-bottom: 1px dashed #999999;
}
.groupTourOrder_transfer > .transfer_info > div {
display: inline-block;
padding: 0 10px;
width: 25%;
height: 30px;
vertical-align: top;
}
.groupTourOrder_transfer > .transfer_info > div > em {
display: inline-block;
padding: 0 10px;
width: 35%;
height: 30px;
line-height: 30px;
text-align: right;
font-size: 16px;
vertical-align: top;
}
.groupTourOrder_transfer > .transfer_info > div > span {
display: inline-block;
padding: 0 10px;
width: 65%;
height: 30px;
line-height: 30px;
text-align: left;
font-size: 16px;
border-radius: 3px;
background-color: #e5e5e5;
vertical-align: top;
}
.groupTourOrder_transfer > .transfer_input {
padding: 20px 0;
width: 100%;
font-size: 0px;
}
.groupTourOrder_transfer > .transfer_input > div {
display: inline-block;
padding: 0 10px;
width: 25%;
height: 30px;
vertical-align: top;
}
.groupTourOrder_transfer > .transfer_input > div > em {
display: inline-block;
padding: 0 10px;
width: 35%;
height: 30px;
line-height: 30px;
text-align: right;
font-size: 16px;
vertical-align: top;
}
.groupTourOrder_transfer > .transfer_input > div > .el-input {
display: inline-block;
width: 65%;
height: 30px;
line-height: 30px;
text-align: left;
font-size: 14px;
vertical-align: top;
}
.Ysze {
position: relative;
}
.Ysze .changeYsze {
position: absolute;
left: 110%;
z-index: 10000;
top: 0;
width: 700px;
background: #fff;
box-shadow: 0 0 8px #888;
padding: 10px;
box-sizing: border-box;
}
.Ysze .Ysze-button {
position: absolute;
left: 98%;
top: 3px;
border-radius: 4px;
cursor: pointer;
}
.Ysze .changeYsze .el-form-item {
display: inline-block;
width: 30%;
margin-bottom: 5px;
}
.Ysze .changeYsze .el-icon-close {
position: absolute;
right: 6px;
top: 6px;
color: #f78989;
font-size: 20px;
cursor: pointer;
}
</style>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment