Commit 4050c970 authored by Mac's avatar Mac
parents e84663fb f461b997
...@@ -1125,7 +1125,7 @@ export default { ...@@ -1125,7 +1125,7 @@ export default {
list = JSON.parse(JSON.stringify(this.msg.detailList[i-1])); list = JSON.parse(JSON.stringify(this.msg.detailList[i-1]));
this.detailList.Rate=list.Rate; this.detailList.Rate=list.Rate;
this.msg.detailList.forEach((x,o)=>{ this.msg.detailList.forEach((x,o)=>{
x.Rate = list.Rate; x.Rate = list.Rate ? list.Rate : x.Rate;
this.Calculation(2,o+1); this.Calculation(2,o+1);
this.Calculation(1); this.Calculation(1);
}) })
...@@ -1133,7 +1133,7 @@ export default { ...@@ -1133,7 +1133,7 @@ export default {
list = JSON.parse(JSON.stringify(this.detailList)); list = JSON.parse(JSON.stringify(this.detailList));
this.detailList.Rate=list.Rate; this.detailList.Rate=list.Rate;
this.msg.detailList.forEach((x,o)=>{ this.msg.detailList.forEach((x,o)=>{
x.Rate = list.Rate; x.Rate = list.Rate ? list.Rate : x.Rate;
this.Calculation(2,o+1); this.Calculation(2,o+1);
this.Calculation(1); this.Calculation(1);
}) })
...@@ -1353,6 +1353,7 @@ export default { ...@@ -1353,6 +1353,7 @@ export default {
x.bTotalPriceTo = this.$commonUtils.addCommas(num); x.bTotalPriceTo = this.$commonUtils.addCommas(num);
x.OriginalMoney = Math.round(x.OriginalMoney * 100) / 10; x.OriginalMoney = Math.round(x.OriginalMoney * 100) / 10;
x.show = false; x.show = false;
this.detailList.Rate = x.Rate
this.msg.detailList.push(x); this.msg.detailList.push(x);
this.coinGetList.forEach(y=>{ this.coinGetList.forEach(y=>{
if(y.ID==x.CurrencyId){ if(y.ID==x.CurrencyId){
...@@ -1438,7 +1439,7 @@ export default { ...@@ -1438,7 +1439,7 @@ export default {
}) })
} }
if (this.orderObj && this.orderObj.companyIDList && this.orderObj.companyIDList.length>0) { if (this.orderObj && this.orderObj.companyIDList && this.orderObj.companyIDList.length>0) {
Status=true; Status=true;
this.orderObj.companyIDList.forEach(x=>{ this.orderObj.companyIDList.forEach(x=>{
data.forEach(y=>{ data.forEach(y=>{
if (y.disabled === false){ if (y.disabled === false){
......
...@@ -369,6 +369,7 @@ ...@@ -369,6 +369,7 @@
query: { query: {
HotelId: item.HotelId, HotelId: item.HotelId,
HotelUseTime: item.subList[subIndex].DateStr, HotelUseTime: item.subList[subIndex].DateStr,
IsUnionCked:0,
blank: 'y', blank: 'y',
tab: "团控查询", tab: "团控查询",
} }
......
...@@ -116,10 +116,19 @@ ...@@ -116,10 +116,19 @@
<td v-if="childIndex==0" :rowspan="5"> <td v-if="childIndex==0" :rowspan="5">
<table class="hotelTable"> <table class="hotelTable">
<tr> <tr>
<td width="70" style="text-align:right;">酒店</td> <td width="70" style="text-align:center;" colspan="2">
<td> <span style="color:red">{{subItem.NewHotelName}}</span>
<!--:disabled="subItem.OPState==1"--> <el-popover placement="right" width="500" trigger="click" v-model="subItem.isShowPop">
<el-select class='w120 sel' v-model='subItem.NewHotelId' filterable <comCheckHotel :ref="'comCheckHotel'+index+subIndex+''" v-on:childHotel="childHotelList" :UseDate="item.UseTimeStr">
</comCheckHotel>
<el-button size="small" type="danger" :data-index="'comCheckHotel'+index+subIndex+''"
slot="reference" style="cursor:pointer;"
@click="getChildHotel(index,subIndex),subItem.isShowPop=true">
酒店选择
</el-button>
</el-popover>
<!-- <el-select class='w120 sel' v-model='subItem.NewHotelId' filterable
:placeholder="$t('pub.pleaseSel')" @visible-change='getHotelList(subItem)' :placeholder="$t('pub.pleaseSel')" @visible-change='getHotelList(subItem)'
@change='sendValue(subItem)'> @change='sendValue(subItem)'>
<el-option v-for='itemHotel in subItem.hotelList' :label='itemHotel.Name' :value='itemHotel.ID' <el-option v-for='itemHotel in subItem.hotelList' :label='itemHotel.Name' :value='itemHotel.ID'
...@@ -127,14 +136,14 @@ ...@@ -127,14 +136,14 @@
<span style="float: left">{{itemHotel.Name}}</span> <span style="float: left">{{itemHotel.Name}}</span>
<span style="float: right; color:red; font-size: 13px">{{itemHotel.Inventory }}</span> <span style="float: right; color:red; font-size: 13px">{{itemHotel.Inventory }}</span>
</el-option> </el-option>
</el-select> </el-select> -->
</td> </td>
</tr> </tr>
<tr> <tr>
<td colspan="2" style="height:5px;"></td> <td colspan="2" style="height:5px;"></td>
</tr> </tr>
<tr> <tr>
<td width="70" style="text-align:right;"> <td width="70" style="text-align:right;">
供应商 供应商
</td> </td>
<td> <td>
...@@ -282,7 +291,7 @@ ...@@ -282,7 +291,7 @@
<el-tooltip class="item" effect="dark" content="新增" placement="top-start"> <el-tooltip class="item" effect="dark" content="新增" placement="top-start">
<el-button @click='AddHotel(item,subIndex)' icon="iconfont icon-tianjia" type="primary"></el-button> <el-button @click='AddHotel(item,subIndex)' icon="iconfont icon-tianjia" type="primary"></el-button>
</el-tooltip> </el-tooltip>
<el-tooltip v-if="item.HotelOrderList.length>1||index==0" class="item" effect="dark" content="删除" <el-tooltip v-if="item.HotelOrderList.length>1" class="item" effect="dark" content="删除"
placement="top-start"> placement="top-start">
<el-button type="primary" icon="iconfont icon-shanchu" @click='DeleteHotel(item,subIndex)'> <el-button type="primary" icon="iconfont icon-shanchu" @click='DeleteHotel(item,subIndex)'>
</el-button> </el-button>
...@@ -300,6 +309,7 @@ ...@@ -300,6 +309,7 @@
</div> </div>
</template> </template>
<script> <script>
import comCheckHotel from "../commonPage/comCheckHotel.vue";
export default { export default {
data() { data() {
return { return {
...@@ -327,9 +337,36 @@ ...@@ -327,9 +337,36 @@
IsOperation: '', IsOperation: '',
//供应商列表 //供应商列表
SupplierList: [], SupplierList: [],
ckedHotelId: 0,
ckedHotelName: '',
showHotelList: false,
findex: 0,
childIndex: 0,
} }
}, },
components: {
comCheckHotel
},
methods: { methods: {
childHotelList(ckedObj) {
this.list.forEach(x => {
x.HotelOrderList.forEach(y => {
y.isShowPop = false;
})
})
this.list[this.findex].HotelOrderList[this.childIndex].Address = ckedObj.Address;
this.list[this.findex].HotelOrderList[this.childIndex].NewHotelName = ckedObj.Name;
this.list[this.findex].HotelOrderList[this.childIndex].Tel = ckedObj.Tel;
this.list[this.findex].HotelOrderList[this.childIndex].NewHotelId = ckedObj.ID;
this.list[this.findex].HotelOrderList[this.childIndex].PayStyle = ckedObj.PayStyle;
this.list[this.findex].HotelOrderList[this.childIndex].PayStyleExt = ckedObj.PayStyle;
},
getChildHotel(index, subIndex) {
this.findex = index;
this.childIndex = subIndex;
let str = `comCheckHotel${index}${subIndex}`
this.$refs[str][0].getCheckHotel();
},
getItem(index, subIndex) { getItem(index, subIndex) {
this.checkedIndex = index this.checkedIndex = index
this.checkedsubIndex = subIndex this.checkedsubIndex = subIndex
...@@ -465,6 +502,8 @@ ...@@ -465,6 +502,8 @@
if (subItem.ReserveNo == '' || subItem.ReserveNo == null) { if (subItem.ReserveNo == '' || subItem.ReserveNo == null) {
subItem.ReserveNo = this.$route.query.NewCombinationNum; subItem.ReserveNo = this.$route.query.NewCombinationNum;
} }
subItem.isShowPop = false;
subItem.ckedHotelName = "";
}) })
}); });
this.list = list; this.list = list;
......
...@@ -133,7 +133,7 @@ export default { ...@@ -133,7 +133,7 @@ export default {
AirTicketId: 0, AirTicketId: 0,
AirOrderId: 0, AirOrderId: 0,
status: 0, status: 0,
startDate: moment().format("YYYY-MM-DD"), startDate:"",
endDate: "", endDate: "",
searchKey:"", searchKey:"",
rbBranchId:-1, rbBranchId:-1,
......
...@@ -710,8 +710,8 @@ ...@@ -710,8 +710,8 @@
<tr> <tr>
<th width="100">日期</th> <th width="100">日期</th>
<th style="border-right:1px solid #E5E5E5;width:150px;">酒店</th> <th style="border-right:1px solid #E5E5E5;width:150px;">酒店</th>
<th style="border-right:1px solid #E5E5E5;width:240px;">酒店情况</th> <th style="width:150px;">更换酒店</th>
<th style="width:100px;">状态</th>
</tr> </tr>
<template v-for="subItem in item.HotelOrderListReports"> <template v-for="subItem in item.HotelOrderListReports">
<tr v-for="(childItem,childIndex) in subItem.SubList"> <tr v-for="(childItem,childIndex) in subItem.SubList">
...@@ -721,19 +721,26 @@ ...@@ -721,19 +721,26 @@
<td style="text-align:left;padding-left:3px;"> <td style="text-align:left;padding-left:3px;">
{{childItem.HotelName}} {{childItem.HotelName}}
</td> </td>
<td style="text-align:left;padding-left:3px;color:red">
{{childItem.HotelName!=childItem.NewHotelName?""+childItem.NewHotelName:""}}
</td>
<td style="text-align:left;padding-left:3px;"> <td style="text-align:left;padding-left:3px;">
<a style="color:green" v-if="childItem.HotelName!='温馨的家'"> <span v-if="childItem.HotelName!='温馨的家'">
<template v-if="childItem.OPState==1"> <template v-if="childItem.OPState==1">
OP-OK <a style="color:green">OP-OK</a>
</template> </template>
<template v-else-if="childItem.OPState==2&&childItem.DMCState==0"> <template v-else-if="childItem.OPState==2&&childItem.DMCState==0">
OP-暂定 <a style="color:red">OP-暂定</a>
</template> </template>
<template v-else> <template v-else>
{{childItem.DMCState==1?"地接-OK":(childItem.DMCState==2?"地接-暂定":"地接-未操作")}} <template v-if="childItem.DMCState==1">
<a style="color:green">地接-OK</a>
</template>
<template v-else>
<a style="color:red"> {{childItem.DMCState==2?"地接-暂定":"地接-未操作"}}</a>
</template>
</template> </template>
</span>
</a>
</td> </td>
</tr> </tr>
</template> </template>
......
...@@ -100,6 +100,15 @@ ...@@ -100,6 +100,15 @@
</el-option> </el-option>
</el-select> </el-select>
</span></li> </span></li>
<li>
<span>
<em>订单状态</em><el-select v-model='msg.VisaOrderStatus'>
<el-option label="不限" value="0" key='0'></el-option>
<el-option label="正常" value="1" key='1'></el-option>
<el-option label="取消" value="2" key='2'></el-option>
<el-option label="待付款" value="3" key='3'></el-option>
</el-select>
</span></li>
<li><span><em>报入日期</em><el-date-picker v-model='msg.StartTime' class='w135' value-format="yyyy-MM-dd" type="date"></el-date-picker> - <li><span><em>报入日期</em><el-date-picker v-model='msg.StartTime' class='w135' value-format="yyyy-MM-dd" type="date"></el-date-picker> -
<el-date-picker v-model='msg.EndTime' class='w135' value-format="yyyy-MM-dd" type="date"></el-date-picker> <el-date-picker v-model='msg.EndTime' class='w135' value-format="yyyy-MM-dd" type="date"></el-date-picker>
</span> </span>
...@@ -171,7 +180,9 @@ ...@@ -171,7 +180,9 @@
<span>{{moneyFormat(item.ZaiTu)}}</span> <span>{{moneyFormat(item.ZaiTu)}}</span>
</td> </td>
<td> <td>
{{item.VisaOrderStatus==1?"正常":"已取消"}}</br> <span v-if="item.VisaOrderStatus==1">正常</span>
<span v-if="item.VisaOrderStatus==2">取消</span>
<span v-if="item.VisaOrderStatus==3">待付款</span>
<span class="fz12" v-if="item.VisaOrderStatus==2">操作:{{item.UpdateName}}</span> <span class="fz12" v-if="item.VisaOrderStatus==2">操作:{{item.UpdateName}}</span>
</td> </td>
<td> <td>
...@@ -277,7 +288,8 @@ export default { ...@@ -277,7 +288,8 @@ export default {
StartTime:'', StartTime:'',
EndTime:'', EndTime:'',
Pid:'', Pid:'',
EmId:'-1', EmId:'-1',
VisaOrderStatus:"0",
}, },
dataList:[], dataList:[],
EmployeeList:[], EmployeeList:[],
......
...@@ -53,8 +53,15 @@ ...@@ -53,8 +53,15 @@
<td>{{item.Refund}}</td> <td>{{item.Refund}}</td>
<td>{{item.PlatformTax}}</td> <td>{{item.PlatformTax}}</td>
<td> <td>
<span v-if="item.Status==1" type="success">正常</span> <p v-if="item.RefundStatus!=1">
<span v-if="item.Status==2">取消</span> <span v-if="item.RefundStatus==2">退款中</span>
<span v-if="item.RefundStatus==3">已退款</span>
</p>
<p v-else>
<span v-if="item.Status==1">正常</span>
<span v-if="item.Status==2">取消</span>
<span v-if="item.Status==3">待付款</span>
</p>
</td> </td>
</tr> </tr>
<tr style="height:20px"> <tr style="height:20px">
...@@ -306,7 +313,7 @@ export default { ...@@ -306,7 +313,7 @@ export default {
"ticket_get_GetScatteringOrderForAirTicketList", "ticket_get_GetScatteringOrderForAirTicketList",
this.msg, this.msg,
res => { res => {
// console.log(res); console.log(res);
this.loading = false; this.loading = false;
if (res.data.resultCode == 1) { if (res.data.resultCode == 1) {
this.total = res.data.data.count; this.total = res.data.data.count;
......
...@@ -389,7 +389,6 @@ import moment from "moment" ...@@ -389,7 +389,6 @@ import moment from "moment"
query: { query: {
customId: item.customId, customId: item.customId,
allotId: item.allotId, allotId: item.allotId,
blank: "y",
tab: "行程定制方案" tab: "行程定制方案"
} }
}); });
......
...@@ -95,6 +95,7 @@ ...@@ -95,6 +95,7 @@
.TC_HotelPop table th { .TC_HotelPop table th {
text-align: center; text-align: center;
} }
</style> </style>
<template> <template>
<div class="TC_Content"> <div class="TC_Content">
...@@ -489,13 +490,15 @@ ...@@ -489,13 +490,15 @@
<span class="TCL-greenType">{{item.ClearOrderHour}}小时</span> <span class="TCL-greenType">{{item.ClearOrderHour}}小时</span>
</p> </p>
<p v-if="item.LineID==14 && item.HotelOrderListReports && item.HotelOrderListReports.length>0 "> <p v-if="item.LineID==14 && item.HotelOrderListReports && item.HotelOrderListReports.length>0 ">
<el-popover width="600" trigger="click" popper-class="TC_HotelPop"> <el-popover width="700" trigger="click" popper-class="TC_HotelPop">
<table width="100%" border="0" cellspacing="0" cellpadding="0" class="singeRowTable"> <table width="100%" border="0" cellspacing="0" cellpadding="0" class="singeRowTable">
<tr> <tr>
<th width="100">日期</th> <th width="100">日期</th>
<th style="border-right:1px solid #E5E5E5;width:150px;">酒店</th> <th style="width:150px;">酒店</th>
<th style="border-right:1px solid #E5E5E5;width:240px;">酒店情况</th> <th style="width:150px;">更换酒店</th>
<th style="border-right:1px solid #E5E5E5;width:100px">占房时间</th> <th style="width:100px;">状态</th>
<th style="width:150px;">使用数量/价格</th>
<th style="width:120px">占房时间</th>
</tr> </tr>
<template v-for="subItem in item.HotelOrderListReports"> <template v-for="subItem in item.HotelOrderListReports">
<tr v-for="(childItem,childIndex) in subItem.SubList"> <tr v-for="(childItem,childIndex) in subItem.SubList">
...@@ -505,33 +508,45 @@ ...@@ -505,33 +508,45 @@
<td style="text-align:left;padding-left:3px;"> <td style="text-align:left;padding-left:3px;">
{{childItem.HotelName}} {{childItem.HotelName}}
</td> </td>
<td style="text-align:left;padding-left:3px;"> <td style="text-align:left;padding-left:3px;color:red">
<a style="color:green" v-if="childItem.HotelName!='温馨的家'"> {{childItem.HotelName!=childItem.NewHotelName?""+childItem.NewHotelName:""}}
<template v-if="childItem.OPState==1"> </td>
OP-OK <td style="text-align:left;padding-left:3px;">
<span v-if="childItem.HotelName!='温馨的家'">
<template v-if="childItem.OPState==1">
<a style="color:green">OP-OK</a>
</template> </template>
<template v-else-if="childItem.OPState==2&&childItem.DMCState==0"> <template v-else-if="childItem.OPState==2&&childItem.DMCState==0">
OP-暂定 <a style="color:red">OP-暂定</a>
</template> </template>
<template v-else> <template v-else>
{{childItem.DMCState==1?"地接-OK":(childItem.DMCState==2?"地接-暂定":"地接-未操作")}} <template v-if="childItem.DMCState==1">
<a style="color:green">地接-OK</a>
</template>
<template v-else>
<a style="color:red"> {{childItem.DMCState==2?"地接-暂定":"地接-未操作"}}</a>
</template>
</template> </template>
</span>
</a> </td>
<a v-if="(childItem.OPState==1||(childItem.OPState==2 && childItem.DMCState==0))&& childItem.UseCount>0 " style="color:green"> <td>
【使用: {{childItem.UseCount}} 间 {{childItem.CostPrice!=0?"价格:"+childItem.CostPrice:""}} 】 <a v-if="(childItem.OPState==1|| childItem.OPState==2 || childItem.DMCState==1 )">
{{childItem.UseCount>0? childItem.UseCount+" 间" :""}}
{{childItem.CostPrice!=0?" 价格:"+childItem.CostPrice:""}}
</a> </a>
</td> </td>
<td> <td>
<template v-if="childItem.OPState==1||(childItem.OPState==2 && childItem.DMCState==0)"> {{childItem.CreateDateStr}}</template> <template v-if="childItem.OPState==1||(childItem.OPState==2 && childItem.DMCState==0)">
{{childItem.CreateDateStr}}</template>
</td> </td>
</tr> </tr>
</template> </template>
</table> </table>
<span slot="reference" class="price" style="cursor:pointer;text-decoration:underline;">酒店预订状况</span> <span slot="reference" class="price"
style="cursor:pointer;text-decoration:underline;">酒店预订状况</span>
</el-popover> </el-popover>
</p> </p>
<p class="travelnowrap" v-if="item.LineID==14 && item.IsOpenHotel==1"> <p class="travelnowrap" v-if="item.LineID==14 && item.IsOpenHotel==1">
<span style="color:red;font-weight:bold;">※ 地接已关闭酒店操作,如需修改请联系地接OP.</span> <span style="color:red;font-weight:bold;">※ 地接已关闭酒店操作,如需修改请联系地接OP.</span>
</p> </p>
</div> </div>
...@@ -603,7 +618,7 @@ ...@@ -603,7 +618,7 @@
<span slot="reference" class="price">{{$t('Operation.Op_priceDetail')}}</span> <span slot="reference" class="price">{{$t('Operation.Op_priceDetail')}}</span>
</el-popover> </el-popover>
</p> </p>
</div> </div>
</div> </div>
<div class="el-col" style="width:150px;"> <div class="el-col" style="width:150px;">
...@@ -666,7 +681,7 @@ ...@@ -666,7 +681,7 @@
<div class="TC_SeatList" v-if="item.BindNum>0" style="color:red;">绑定数量: {{item.BindNum}}</div> <div class="TC_SeatList" v-if="item.BindNum>0" style="color:red;">绑定数量: {{item.BindNum}}</div>
<div class="TC_SeatList" v-if="item.TicketNum>0 && item.TicketList"> <div class="TC_SeatList" v-if="item.TicketNum>0 && item.TicketList">
<el-popover width="440" trigger="click" popper-class="TC_customerInfo"> <el-popover width="440" trigger="click" popper-class="TC_customerInfo">
<table width="440" border="0" cellspacing="0" cellpadding="0" > <table width="440" border="0" cellspacing="0" cellpadding="0">
<tr> <tr>
<th width="70" style="text-align:center;">绑定数量</th> <th width="70" style="text-align:center;">绑定数量</th>
<th width="70" style="text-align:center;">机票数量</th> <th width="70" style="text-align:center;">机票数量</th>
...@@ -782,10 +797,12 @@ ...@@ -782,10 +797,12 @@
<i class="el-icon-arrow-down el-icon--right"></i> <i class="el-icon-arrow-down el-icon--right"></i>
</span> </span>
<el-dropdown-menu slot="dropdown" class="TC-dropdown"> <el-dropdown-menu slot="dropdown" class="TC-dropdown">
<el-dropdown-item @click.native="SetGroupRecommendType(item,1)" v-if="item.b2b&&item.GroupRecommendType==0"> <el-dropdown-item @click.native="SetGroupRecommendType(item,1)"
v-if="item.b2b&&item.GroupRecommendType==0">
设为精品推荐 设为精品推荐
</el-dropdown-item> </el-dropdown-item>
<el-dropdown-item @click.native="SetGroupRecommendType(item,0)" v-if="item.b2b&&item.GroupRecommendType==1"> <el-dropdown-item @click.native="SetGroupRecommendType(item,0)"
v-if="item.b2b&&item.GroupRecommendType==1">
取消设为精品 取消设为精品
</el-dropdown-item> </el-dropdown-item>
<el-dropdown-item @click.native="goTeamBalance(item.TCID,item.OutBranchId)"> <el-dropdown-item @click.native="goTeamBalance(item.TCID,item.OutBranchId)">
...@@ -1108,25 +1125,25 @@ ...@@ -1108,25 +1125,25 @@
} }
}, },
methods: { methods: {
SetGroupRecommendType(item,num){ SetGroupRecommendType(item, num) {
let msg={}; let msg = {};
msg.groupRecommendType=num; msg.groupRecommendType = num;
msg.tcid=item.TCID; msg.tcid = item.TCID;
this.apipost( this.apipost(
'travel_post_SetGroupRecommendType', msg, 'travel_post_SetGroupRecommendType', msg,
res => { res => {
if (res.data.resultCode == 1) { if (res.data.resultCode == 1) {
this.Success(res.data.message) this.Success(res.data.message)
this.getControlList() this.getControlList()
}else{ } else {
this.Error(res.data.message) this.Error(res.data.message)
} }
}, },
err => {} err => {}
) )
}, },
downloadFile: function (item) { downloadFile: function (item) {
let reg = /^http(s)?:\/\/(.*?)\// let reg = /^http(s)?:\/\/(.*?)\//
...@@ -1151,7 +1168,7 @@ ...@@ -1151,7 +1168,7 @@
this.queryCommonData.LineList = res.data.data this.queryCommonData.LineList = res.data.data
this.queryCommonData.PlaceList = [] this.queryCommonData.PlaceList = []
this.queryCommonData.LineTeamList = []; this.queryCommonData.LineTeamList = [];
} }
}) })
}, },
...@@ -1259,16 +1276,16 @@ ...@@ -1259,16 +1276,16 @@
this.queryCommonData.dataList.forEach(item => { this.queryCommonData.dataList.forEach(item => {
item.SalePlatList = [] item.SalePlatList = []
if (item.SalePlat !== null) { if (item.SalePlat !== null) {
if(item.SalePlat.indexOf("1") != -1){ if (item.SalePlat.indexOf("1") != -1) {
item.b2b=true; item.b2b = true;
} }
var SalePlatArr = item.SalePlat.split(',') var SalePlatArr = item.SalePlat.split(',')
SalePlatArr.forEach(y => { SalePlatArr.forEach(y => {
item.SalePlatList.push(parseInt(y)) item.SalePlatList.push(parseInt(y))
}) })
} }
}); });
console.log("this.queryCommonData.dataList",this.queryCommonData.dataList); console.log("this.queryCommonData.dataList", this.queryCommonData.dataList);
} }
}, },
err => {} err => {}
...@@ -1850,6 +1867,10 @@ ...@@ -1850,6 +1867,10 @@
if (this.$route.query.HotelUseTime) { if (this.$route.query.HotelUseTime) {
this.queryMsg.HotelUseTime = this.$route.query.HotelUseTime this.queryMsg.HotelUseTime = this.$route.query.HotelUseTime
} }
//只看主团
if (this.$route.query.IsUnionCked) {
this.queryMsg.IsShowUnion = this.$route.query.IsUnionCked;
}
if (this.CurrentUserInfo.IsParentCompany == undefined) { if (this.CurrentUserInfo.IsParentCompany == undefined) {
this.queryCommonData.IsParentCompany = 2 this.queryCommonData.IsParentCompany = 2
......
<style> <style>
.comCheckHotel{
padding-bottom:20px; .comCheckHotel .comCheckHotel {
border-bottom:1px solid #d1d1d1; width: 100%;
} height: 150px;
.comCheckHotel>div{ overflow: auto
width:100%; }
height:200px;
overflow: auto .comCheckHotel .comCk_list {
} padding: 0 20px;
.comCk_list{ margin: 0 15px 5px 0;
cursor: pointer; }
padding:0 20px;
margin:0 15px 5px 0; .comCheckHotel .cm_Inventory {
} margin-left: 20px;
.cm_Inventory{ color: red;
margin-left:20px; display: inline-block;
color:red; }
display: inline-block;
} .comCheckHotel .cm_hotelTitle {
.cm_hotelTitle{ width: 100%;
width:100%; text-align: center;
text-align: center; margin-bottom: 20px;
margin-bottom:20px; border-bottom: 1px solid #d1d1d1;
border-bottom: 1px solid #d1d1d1; padding: 0 20px 10px 20px;
padding:0 20px 10px 20px; }
}
.com_SaveBtn{ .comCheckHotel .com_SaveBtn {
margin:10px 20px 0 45%; margin: 10px 20px 0 45%;
} }
.ckedList{
background-color: #E95252; .comCheckHotel .ckedList {
color:#fff; background-color: #E95252;
} color: #fff;
}
.comCheckHotel .Ck_hotelInfo{
width:100%;
height:40px;
background-color: #F6F8FB;
text-align: center;
line-height: 40px;
margin-bottom:10px;
}
.comCheckHotel .ck_goUrl{
color:blue;
cursor: pointer;
margin-left:10px;
}
</style> </style>
<template> <template>
<div class="comCheckHotel">
<div class="Ck_hotelInfo">
<span style="color:red">{{UseDate}}</span> 酒店库存信息
</div>
<div class="cm_hotelTitle">
地区筛选:
<el-select filterable v-model="ProvinceId" @change="getCheckHotel()" :placeholder="$t('pub.pleaseSel')">
<el-option label="不限" :value='0'></el-option>
<el-option v-for="item in ProvinceList" :label='item.Name' :value='item.ID' :key='item.ID'>
</el-option>
</el-select>
</div>
<div> <div>
<div class="cm_hotelTitle"> <el-tabs type="border-card" v-loading="loading" v-if="IsShow" >
<el-select filterable v-model="selHotelId" @change="getChangeHotel(selHotelId)" :placeholder="$t('pub.pleaseSel')"> <el-tab-pane :label="item.ProvinceName" v-for="(item,index) in dataList" :key="item.subCode">
<el-option label="不限" :value='0'></el-option> <div class="clearfix comCheckHotel">
<el-option v-for="item in ProvinceList" :label='item.Name' :value='item.ID' <div class="comCk_list" v-for="(subItem,subIndex) in item.HotelList">
:key='item.ID'> <input type="checkbox" v-model="subItem.isChecked" @click="getCheck(item.HotelList,subIndex)"/>
</el-option> {{subItem.Name}}<span class="cm_Inventory">{{subItem.Inventory}}</span>
</el-select> <span class="ck_goUrl" @click="goUrl(subItem.ID)">新增库存</span>
酒店信息 </div>
</div> </div>
<div> </el-tab-pane>
<el-tabs v-model="activeName" type="card" @tab-click="handleClick"> </el-tabs>
<el-tab-pane :label="item.ProvinceName" v-for="item in dataList"></el-tab-pane>
</el-tabs>
</div>
<div class="clearfix comCheckHotel">
<div>
<div class="comCk_list" v-for="(item,index) in HotelList">
<input type="checkbox" v-model="item.isChecked" @click="getCheck(item,index)" style=""/>
{{item.Name}}<span class="cm_Inventory">{{item.Inventory}}</span>
</div>
</div>
</div>
<input type="button" class="normalBtn com_SaveBtn" @click="sendCkedHotel()" value="保存"/>
</div> </div>
<input type="button" class="normalBtn com_SaveBtn" @click="sendCkedHotel()" value="保存" />
</div>
</template> </template>
<script> <script>
export default { export default {
data() { props: ["UseDate"],
return { data() {
dataList:[], return {
HotelList:[], loading:false,
ckindexOne:-1, dataList: [],
ckindexTwo:-1, ProvinceList: [],
ID:0, ProvinceId: 0, //选择个省份编号
HotelName:'', IsShow:false,
ProvinceList:[], ckedHotel:{}
selHotelId:0, };
activeName:'', },
methods: {
}; getCheckHotel() {
}, this.loading=true;
methods: { this.IsShow=false;
getCheckHotel(sDate){ this.dataList = [];
this.HotelList = [];
this.apipost('hotel_post_GetHasStockHotelList_V2', { this.apipost('hotel_post_GetHasStockHotelList_V2', {
//1-只查询有库存的酒店 //1-只查询有库存的酒店
IsMoreThanZero: 0, IsMoreThanZero: 0,
Country: "651", Country: "651",
IsAllHotel: 1, IsAllHotel: 1,
sDate: sDate Province: this.ProvinceId,
sDate: this.UseDate
}, res => { }, res => {
if (res.data.resultCode == 1) { this.loading=false;
this.dataList = res.data.data; this.IsShow=true;
this.dataList.forEach(x=>{ if (res.data.resultCode == 1) {
x.HotelList.forEach(y=>{ this.dataList = res.data.data;
y.isChecked=false; this.dataList.forEach(x => {
}) x.HotelList.forEach(y => {
y.isChecked = false;
})
}) })
console.log(this.dataList,'datalist');
} else { } else {
this.Error(res.data.message) this.Error(res.data.message)
} }
}, err => {}) }, err => {})
}, },
getCheck(item,index){ getCheck(hotelList, index) {
this.HotelList.forEach((x,subIndex)=>{ hotelList.forEach((x, subIndex) => {
if(index==subIndex){ if (index == subIndex) {
x.isChecked = !x.isChecked; x.isChecked = !x.isChecked;
}else{ this.ckedHotel = x;
x.isChecked = false; } else {
} x.isChecked = false;
}) }
this.$forceUpdate(); })
this.$forceUpdate();
}, },
//向父组件传递选中酒店 //向父组件传递选中酒店
sendCkedHotel(){ sendCkedHotel() {
var ckHotelObj = {}; var ckHotelObj = {};
this.HotelList.forEach((x,index)=>{ if(this.ckedHotel){
if(x.isChecked){ ckHotelObj.ID = this.ckedHotel.ID;
ckHotelObj.ID = x.ID; ckHotelObj.Address = this.ckedHotel.Address;
ckHotelObj.Address = x.Address; ckHotelObj.Inventory = this.ckedHotel.Inventory;
ckHotelObj.Inventory = x.Inventory; ckHotelObj.Name = this.ckedHotel.Name;
ckHotelObj.Name = x.Name; ckHotelObj.PayStyle = this.ckedHotel.PayStyle;
ckHotelObj.PayStyle = x.PayStyle; ckHotelObj.Tel = this.ckedHotel.Tel;
ckHotelObj.Tel = x.Tel; }
}
})
this.$emit("childHotel", ckHotelObj); this.$emit("childHotel", ckHotelObj);
}, },
//获取日本下面的市->下拉框用 //获取日本下面的市->下拉框用
getProvinceList(){ getProvinceList() {
let msg = { let msg = {
Id:651 Id: 651
}; };
this.apipost("dict_post_Destination_GetChildList", msg,res => { this.apipost("dict_post_Destination_GetChildList", msg, res => {
if(res.data.resultCode == 1){ if (res.data.resultCode == 1) {
this.ProvinceList = res.data.data; this.ProvinceList = res.data.data;
}else{ } else {
this.Error(res.data.message); this.Error(res.data.message);
} }
}, },
err => {} err => {}
); );
}, },
getChangeHotel(id){ goUrl(ID){
let msg = { this.$router.push({
Province:id path: 'HotelProductManage2',
} query: {
this.apipost( id: ID,
"hotel_post_GetHasStockHotelList_V2",msg,res => { Country: 651,
if(res.data.resultCode==1){ IsSelfBook: 1,
this.dataList = res.data.data; blank: 'y',
this.HotelList = []; tab: '报价详情'
this.dataList.forEach(x=>{ }
x.HotelList.forEach(y=>{ });
y.isChecked=false;
})
})
console.log(this.dataList,'dataList');
}else{
this.Error(res.data.message);
}
},
err => {}
);
},
handleClick() {
this.HotelList = this.dataList[this.activeName].HotelList;
} }
}, },
mounted() { mounted() {
this.getProvinceList();
}
};
}
};
</script> </script>
...@@ -265,49 +265,59 @@ ...@@ -265,49 +265,59 @@
</div> </div>
<p <p
v-if="item.LineId==14 && item.CommonReport.PriceHotelResult && item.CommonReport.PriceHotelResult.length>0"> v-if="item.LineId==14 && item.CommonReport.PriceHotelResult && item.CommonReport.PriceHotelResult.length>0">
<el-popover width="600" trigger="click" popper-class="TC_HotelPop"> <el-popover width="700" trigger="click" popper-class="TC_HotelPop">
<table width="100%" border="0" cellspacing="0" cellpadding="0" class="singeRowTable">
<tr> <table width="100%" border="0" cellspacing="0" cellpadding="0" class="singeRowTable">
<th width="100">日期</th> <tr>
<th style="border-right:1px solid #E5E5E5;width:150px;">酒店</th> <th width="100">日期</th>
<th style="border-right:1px solid #E5E5E5;width:240px;">酒店情况</th> <th style="width:150px;">酒店</th>
<th style="border-right:1px solid #E5E5E5;width:100px">占房时间</th> <th style="width:150px;">更换酒店</th>
</tr> <th style="width:100px;">状态</th>
<template v-for="hotelItem in item.CommonReport.PriceHotelResult"> <th style="width:150px;">使用数量/价格</th>
<tr v-for="(hotelSubItem,hotelSubIndex) in hotelItem.SubList"> <th style="width:120px">占房时间</th>
<td width="100" v-if="hotelSubIndex==0" :rowspan="hotelItem.SubList.length">
{{hotelItem.UseDay}}
</td>
<td style="text-align:left;padding-left:3px;">
{{hotelSubItem.HotelName}}
</td>
<td style="text-align:left;padding-left:3px;">
<a style="color:green" v-if="hotelSubItem.HotelName!='温馨的家'">
<template v-if="hotelSubItem.OPState==1">
OP-OK
</template>
<template v-else-if="hotelSubItem.OPState==2&&hotelSubItem.DMCState==0">
OP-暂定
</template>
<template v-else>
{{hotelSubItem.DMCState==1?"地接-OK":(hotelSubItem.DMCState==2?"地接-暂定":"地接-未操作")}}
</template>
</a>
<a v-if="(hotelSubItem.OPState==1||(hotelSubItem.OPState==2 && hotelSubItem.DMCState==0))&& hotelSubItem.UseCount>0 "
style="color:green">
【使用: {{hotelSubItem.UseCount}} 间
{{hotelSubItem.CostPrice!=0?"价格:"+hotelSubItem.CostPrice:""}} 】
</a>
</td>
<td>
<template
v-if="hotelSubItem.OPState==1||(hotelSubItem.OPState==2 && hotelSubItem.DMCState==0)">
{{hotelSubItem.CreateDateStr}}</template>
</td>
</tr> </tr>
</template> <template v-for="hotelItem in item.CommonReport.PriceHotelResult">
</table> <tr v-for="(hotelSubItem,hotelSubIndex) in hotelItem.SubList">
<td width="100" v-if="hotelSubIndex==0" :rowspan="hotelItem.SubList.length">
{{hotelItem.UseDay}}
</td>
<td style="text-align:left;padding-left:3px;">
{{hotelSubItem.HotelName}}
</td>
<td style="text-align:left;padding-left:3px;color:red">
{{hotelSubItem.HotelName!=hotelSubItem.NewHotelName?""+hotelSubItem.NewHotelName:""}}
</td>
<td style="text-align:left;padding-left:3px;">
<span v-if="hotelSubItem.HotelName!='温馨的家'">
<template v-if="hotelSubItem.OPState==1">
<a style="color:green">OP-OK</a>
</template>
<template v-else-if="hotelSubItem.OPState==2&&hotelSubItem.DMCState==0">
<a style="color:red">OP-暂定</a>
</template>
<template v-else>
<template v-if="hotelSubItem.DMCState==1">
<a style="color:green">地接-OK</a>
</template>
<template v-else>
<a style="color:red"> {{hotelSubItem.DMCState==2?"地接-暂定":"地接-未操作"}}</a>
</template>
</template>
</span>
</td>
<td>
<a v-if="(hotelSubItem.OPState==1|| hotelSubItem.OPState==2 || hotelSubItem.DMCState==1 )">
{{hotelSubItem.UseCount>0? hotelSubItem.UseCount+" 间" :""}}
{{hotelSubItem.CostPrice!=0?" 价格:"+hotelSubItem.CostPrice:""}}
</a>
</td>
<td>
<template v-if="hotelSubItem.OPState==1||(hotelSubItem.OPState==2 && hotelSubItem.DMCState==0)">
{{hotelSubItem.CreateDateStr}}</template>
</td>
</tr>
</template>
</table>
<span slot="reference" class="price" style="cursor:pointer;text-decoration:underline;">酒店信息</span> <span slot="reference" class="price" style="cursor:pointer;text-decoration:underline;">酒店信息</span>
</el-popover> </el-popover>
</p> </p>
......
...@@ -71,6 +71,7 @@ ...@@ -71,6 +71,7 @@
<th>客户信息</th> <th>客户信息</th>
<th>联系人信息</th> <th>联系人信息</th>
<th>订单状态</th> <th>订单状态</th>
<th>创建日期</th>
<th>退款状态</th> <th>退款状态</th>
</tr> </tr>
<tr> <tr>
...@@ -102,6 +103,7 @@ ...@@ -102,6 +103,7 @@
<span v-if="item.status==2">取消</span> <span v-if="item.status==2">取消</span>
<span v-if="item.status==3">待付款</span> <span v-if="item.status==3">待付款</span>
</td> </td>
<td>{{item.createDate}}</td>
<td> <td>
<p v-if="item.RefundStatus!=1"> <p v-if="item.RefundStatus!=1">
<span v-if="item.RefundStatus==2">退款中</span> <span v-if="item.RefundStatus==2">退款中</span>
...@@ -185,7 +187,7 @@ export default { ...@@ -185,7 +187,7 @@ export default {
AirTicketId: 0, AirTicketId: 0,
AirOrderId: 0, AirOrderId: 0,
status: 0, status: 0,
startDate: moment().format("YYYY-MM-DD"), startDate: "",
endDate: "", endDate: "",
searchKey:"", searchKey:"",
rbBranchId:-1, rbBranchId:-1,
......
...@@ -452,7 +452,7 @@ input[type="number"] { ...@@ -452,7 +452,7 @@ input[type="number"] {
<div class="combottomDiv" v-if="isShowDIv"> <div class="combottomDiv" v-if="isShowDIv">
<div class="combottomTitle">{{divTitle}}</div> <div class="combottomTitle">{{divTitle}}</div>
<div class=""> <div class="">
<el-form :model="addMsg" :rules="rules" ref="addMsg" label-width="100px"> <el-form :model="addMsg" :rules="rules" ref="addMsg" label-width="130px">
<el-col :span="5"> <el-col :span="5">
<el-form-item :label="$t('system.query_lineName')" prop="lineName"> <el-form-item :label="$t('system.query_lineName')" prop="lineName">
<el-input v-model="addMsg.lineName"></el-input> <el-input v-model="addMsg.lineName"></el-input>
...@@ -521,7 +521,7 @@ input[type="number"] { ...@@ -521,7 +521,7 @@ input[type="number"] {
</el-col> </el-col>
<el-col :span="5"> <el-col :span="5">
<el-form-item label="线路方向" prop="LineDirection"> <el-form-item label="线路方向" prop="LineDirection">
<el-select v-model="addMsg.LineDirection" :placeholder="$t('pub.pleaseSel')" class="w290"> <el-select v-model="addMsg.LineDirection" :placeholder="$t('pub.pleaseSel')">
<el-option label='入境' :value='1'></el-option> <el-option label='入境' :value='1'></el-option>
<el-option label='出境' :value='2'></el-option> <el-option label='出境' :value='2'></el-option>
<el-option label='一日游' :value='3'></el-option> <el-option label='一日游' :value='3'></el-option>
...@@ -529,7 +529,7 @@ input[type="number"] { ...@@ -529,7 +529,7 @@ input[type="number"] {
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="5"> <el-col :span="5">
<el-form-item label="线路图片"> <el-form-item label="B2B线路背景图">
<div class="TFimgList"> <div class="TFimgList">
<img v-if="!addMsg.BackgroundImage" src="../../assets/img/bg_c3@3x.png"> <img v-if="!addMsg.BackgroundImage" src="../../assets/img/bg_c3@3x.png">
<img v-else :src='addMsg.BackgroundImage'> <img v-else :src='addMsg.BackgroundImage'>
...@@ -546,6 +546,25 @@ input[type="number"] { ...@@ -546,6 +546,25 @@ input[type="number"] {
</div> </div>
</el-form-item> </el-form-item>
</el-col>
<el-col :span="5">
<el-form-item label="B2B线路侧边长图">
<div class="TFimgList" style="width:90px">
<img v-if="!addMsg.BroadsideImage" src="../../assets/img/bg_c3@3x.png">
<img v-else :src='addMsg.BroadsideImage'>
<div class="TFIMGzhe">
<div class="TFreupload">
<el-upload :file-list="fileList2" :http-request="uploadTest2" :multiple="true" :limit="2"
:on-change="handleChange2"
accept="image/jpeg, image/gif, image/png, image/bmp"
:show-file-list="false" action="">
<i class="iconfont icon-Edit"></i>
</el-upload>
</div>
</div>
</div>
</el-form-item>
</el-col> </el-col>
<div class="LM_Btcontent"> <div class="LM_Btcontent">
<input type="button" class="normalBtn" @click="submitForm('addMsg')" :value="$t('pub.saveBtn')"/> <input type="button" class="normalBtn" @click="submitForm('addMsg')" :value="$t('pub.saveBtn')"/>
...@@ -635,6 +654,7 @@ export default { ...@@ -635,6 +654,7 @@ export default {
data() { data() {
return { return {
fileList:[], fileList:[],
fileList2:[],
msg: { msg: {
pageIndex: 1, pageIndex: 1,
pageSize: 6, pageSize: 6,
...@@ -657,6 +677,7 @@ export default { ...@@ -657,6 +677,7 @@ export default {
Is_PacketGroup: 0, Is_PacketGroup: 0,
LineDirection:2, LineDirection:2,
BackgroundImage:"", BackgroundImage:"",
BroadsideImage:'',
}, },
departCompany: "", departCompany: "",
departDepartment: "", departDepartment: "",
...@@ -701,6 +722,19 @@ export default { ...@@ -701,6 +722,19 @@ export default {
this.fileList = fileList.slice(-1); this.fileList = fileList.slice(-1);
}, },
handleChange2(file, fileList) {
this.fileList2 = fileList.slice(-1);
},
uploadTest2(file) {
let newArr = [];
newArr.push(file.file);
let path = "/Upload/DMC/Icon/";
this.UploadSelfFileT(path, newArr, x => {
let url = this.domainManager().ViittoFileUrl + x.data.FilePath;
this.addMsg.BroadsideImage = url;
});
},
uploadTest(file) { uploadTest(file) {
let newArr = []; let newArr = [];
newArr.push(file.file); newArr.push(file.file);
...@@ -810,6 +844,8 @@ export default { ...@@ -810,6 +844,8 @@ export default {
this.addMsg.Is_PacketGroup = getInfo.is_PacketGroup; this.addMsg.Is_PacketGroup = getInfo.is_PacketGroup;
this.addMsg.LineDirection = getInfo.lineDirection; this.addMsg.LineDirection = getInfo.lineDirection;
this.addMsg.BackgroundImage = getInfo.BackgroundImage; this.addMsg.BackgroundImage = getInfo.BackgroundImage;
this.addMsg.BroadsideImage = getInfo.BroadsideImage;
console.log("this.addMsg.BackgroundImage",getInfo) console.log("this.addMsg.BackgroundImage",getInfo)
}, },
deletelist(lineID) { deletelist(lineID) {
......
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