Commit 4060cd5b authored by 黄奎's avatar 黄奎

11

parent 1b067ae0
...@@ -75,7 +75,7 @@ ...@@ -75,7 +75,7 @@
<th>{{$t('sm.Date')}}</th> <th>{{$t('sm.Date')}}</th>
<th>{{$t('hotel.table_hotelname')}}</th> <th>{{$t('hotel.table_hotelname')}}</th>
</tr> </tr>
<template v-for="(lItem,lIndex) in list"> <template v-for="(lItem,lIndex) in dataList">
<tr v-for="(subItem,subIndex) in lItem.HotelOrderList" :key="subIndex+lIndex"> <tr v-for="(subItem,subIndex) in lItem.HotelOrderList" :key="subIndex+lIndex">
<td style="width:120px;"> <td style="width:120px;">
{{lItem.UseTimeStr}} {{lItem.UseTimeStr}}
...@@ -159,14 +159,14 @@ ...@@ -159,14 +159,14 @@
<th width="80">{{$t('ground.jinexiaoji')}}</th> <th width="80">{{$t('ground.jinexiaoji')}}</th>
<th width="80">{{$t('ground.fanyongleixing')}}</th> <th width="80">{{$t('ground.fanyongleixing')}}</th>
<th width="80">{{$t('hotel.hotel_commission')}}</th> <th width="80">{{$t('hotel.hotel_commission')}}</th>
<th width="80">{{$t('ground.fanyongyjin')}}</th> <th width="80">{{$t('ground.fanyongyjin')}}</th>
<th width="100">{{$t('ground.jinezongji')}}</th> <th width="100">{{$t('ground.jinezongji')}}</th>
<th width="250">{{$t('ground.fukuanbzdth')}}</th> <th width="250">{{$t('ground.fukuanbzdth')}}</th>
<th width="80">{{$t('system.table_operation')}}</th> <th width="80">{{$t('system.table_operation')}}</th>
</tr> </tr>
</thead> </thead>
<tbody> <tbody>
<template v-for="(item,index) in list"> <template v-for="(item,index) in dataList">
<template v-for="(subItem,subIndex) in item.HotelOrderList"> <template v-for="(subItem,subIndex) in item.HotelOrderList">
<tr v-for="(childItem,childIndex) in subItem.OrderDetailsList" :key="`h_`+index+subIndex+childIndex"> <tr v-for="(childItem,childIndex) in subItem.OrderDetailsList" :key="`h_`+index+subIndex+childIndex">
<td v-if="childIndex==0&&subIndex==0" :rowspan="6*item.HotelOrderList.length"> <td v-if="childIndex==0&&subIndex==0" :rowspan="6*item.HotelOrderList.length">
...@@ -321,8 +321,7 @@ ...@@ -321,8 +321,7 @@
</td> </td>
<td> <td>
<el-input class='w40 tcenter' maxlength="2" @keyup.native="checkInteger(childItem,'BookNum')" <el-input class='w40 tcenter' maxlength="2" @keyup.native="checkInteger(childItem,'BookNum')"
@input="calculationPrice(subItem)" v-model='childItem.BookNum' @input="calcPrice()" v-model='childItem.BookNum' :disabled="IsEditHotelPeople==0?true:false">
:disabled="IsEditHotelPeople==0?true:false">
</el-input> </el-input>
</td> </td>
<!-- 单价/每人 --> <!-- 单价/每人 -->
...@@ -331,7 +330,7 @@ ...@@ -331,7 +330,7 @@
<template v-if="(subItem.LineId==14||subItem.LineId==118)"> <template v-if="(subItem.LineId==14||subItem.LineId==118)">
<template v-if="subItem.IsHaveHotelStock==1||childItem.UnitPrice>0"> <template v-if="subItem.IsHaveHotelStock==1||childItem.UnitPrice>0">
<el-input @keyup.native="checkInteger(childItem,'UnitPrice')" class='w60 tcenter' <el-input @keyup.native="checkInteger(childItem,'UnitPrice')" class='w60 tcenter'
@input="calculationPrice(subItem)" v-model='childItem.UnitPrice'></el-input> @input="calcPrice()" v-model='childItem.UnitPrice'></el-input>
</template> </template>
<template v-else> <template v-else>
<el-popover placement="right" width="540" trigger="click" <el-popover placement="right" width="540" trigger="click"
...@@ -348,20 +347,19 @@ ...@@ -348,20 +347,19 @@
</template> </template>
<template v-else> <template v-else>
<el-input @keyup.native="checkInteger(childItem,'UnitPrice')" class='w60 tcenter' <el-input @keyup.native="checkInteger(childItem,'UnitPrice')" class='w60 tcenter'
@input="calculationPrice(subItem)" v-model='childItem.UnitPrice'></el-input> @input="calcPrice()" v-model='childItem.UnitPrice'></el-input>
</template> </template>
</template> </template>
<template v-else> <template v-else>
<el-input @keyup.native="checkInteger(childItem,'UnitPrice')" class='w60 tcenter' <el-input @keyup.native="checkInteger(childItem,'UnitPrice')" class='w60 tcenter'
@input="calculationPrice(subItem)" v-model='childItem.UnitPrice' @input="calcPrice()" v-model='childItem.UnitPrice' :disabled="IsEditHotel==0?true:false">
:disabled="IsEditHotel==0?true:false">
</el-input> </el-input>
</template> </template>
</td> </td>
<!-- 免减人数 --> <!-- 免减人数 -->
<td> <td>
<el-input class='w40' maxlength="2" @keyup.native="checkInteger(childItem,'HotelDiscount')" <el-input class='w40' maxlength="2" @keyup.native="checkInteger(childItem,'HotelDiscount')"
v-model='childItem.HotelDiscount' @input="calculationPrice(subItem)"> v-model='childItem.HotelDiscount' @input="calcPrice()">
</el-input> </el-input>
</td> </td>
<!-- 金额小计 --> <!-- 金额小计 -->
...@@ -381,17 +379,16 @@ ...@@ -381,17 +379,16 @@
<td> <td>
<template v-if="childIndex<4"> <template v-if="childIndex<4">
<el-input class='w40' maxlength="2" @keyup.native="checkInteger(childItem,'RebateRatio')" <el-input class='w40' maxlength="2" @keyup.native="checkInteger(childItem,'RebateRatio')"
v-model='childItem.RebateRatio' v-model='childItem.RebateRatio' @input="SetRebateRatio(subItem,childItem.RebateRatio),calcPrice()"
@input="SetRebateRatio(subItem,childItem.RebateRatio),calculationPrice(subItem)"
:disabled="IsEditHotel==0?true:false"></el-input> % :disabled="IsEditHotel==0?true:false"></el-input> %
</template> </template>
<template v-if="childIndex==5"> <template v-if="childIndex==5">
<el-input class='w40' maxlength="2" @keyup.native="checkInteger(childItem,'RebateRatio')" <el-input class='w40' maxlength="2" @keyup.native="checkInteger(childItem,'RebateRatio')"
v-model='childItem.RebateRatio' @input="calculationPrice(subItem)" :disabled="true"></el-input> % v-model='childItem.RebateRatio' @input="calcPrice()" :disabled="true"></el-input> %
</template> </template>
<template v-if="childIndex==4 && subItem.DriverGuideIsRebate==0"> <template v-if="childIndex==4 && subItem.DriverGuideIsRebate==0">
<el-input class='w40' maxlength="2" @keyup.native="checkInteger(childItem,'RebateRatio')" <el-input class='w40' maxlength="2" @keyup.native="checkInteger(childItem,'RebateRatio')"
v-model='childItem.RebateRatio' @input="calculationPrice(subItem)" :disabled="true"></el-input> % v-model='childItem.RebateRatio' @input="calcPrice()" :disabled="true"></el-input> %
</template> </template>
</td> </td>
<!--返佣金额--> <!--返佣金额-->
...@@ -416,13 +413,10 @@ ...@@ -416,13 +413,10 @@
{{(childItem.UnitPrice * (childItem.BookNum - childItem.HotelDiscount) * (1)*( childItem.RebateRatio / 100)).toFixed(2)}} {{(childItem.UnitPrice * (childItem.BookNum - childItem.HotelDiscount) * (1)*( childItem.RebateRatio / 100)).toFixed(2)}}
</template> </template>
</template> </template>
</td> </td>
<!-- 金额总计 --> <!-- 金额总计 -->
<td v-if="childIndex==0" :rowspan="6" style="white-space:nowrap;"> <td v-if="childIndex==0" :rowspan="6" style="white-space:nowrap;">
{{subItem.TotalPrice}} {{subItem.TotalPrice}}
<template v-if="subItem.NewTotalPrice">
<br /><span style="color:red;">{{subItem.NewTotalPrice}}</span>
</template>
</td> </td>
<!-- 付款方式 --> <!-- 付款方式 -->
<td v-if="childIndex==0" :rowspan="6"> <td v-if="childIndex==0" :rowspan="6">
...@@ -431,7 +425,7 @@ ...@@ -431,7 +425,7 @@
<td width="70" style="text-align:right;">{{$t('hotel.hotel_Currency')}}:</td> <td width="70" style="text-align:right;">{{$t('hotel.hotel_Currency')}}:</td>
<td> <td>
<el-select v-model="subItem.CurrencyId" :placeholder="$t('pub.pleaseSel')" class='w135 sel' <el-select v-model="subItem.CurrencyId" :placeholder="$t('pub.pleaseSel')" class='w135 sel'
@change="calculationPrice(subItem)"> @change="calcPrice()">
<el-option :label="$t('pub.unlimitedSel')" :value='0'></el-option> <el-option :label="$t('pub.unlimitedSel')" :value='0'></el-option>
<el-option v-for="(item,index) in allCurrencyList" :key="index" :label="item.Name" <el-option v-for="(item,index) in allCurrencyList" :key="index" :label="item.Name"
:value="item.ID"> :value="item.ID">
...@@ -446,7 +440,7 @@ ...@@ -446,7 +440,7 @@
<td width="70" style="text-align:right;">{{$t('ground.dfzhuangtai')}}:</td> <td width="70" style="text-align:right;">{{$t('ground.dfzhuangtai')}}:</td>
<td> <td>
<el-select class='w135 sel' v-model='subItem.DMCState' :placeholder="$t('pub.pleaseSel')" <el-select class='w135 sel' v-model='subItem.DMCState' :placeholder="$t('pub.pleaseSel')"
:disabled="IsEditHotel==0?true:false"> :disabled="IsEditHotel==0?true:false" @change="changeState(subItem)">
<el-option :label="$t('pub.pleaseSel')" :value='0'></el-option> <el-option :label="$t('pub.pleaseSel')" :value='0'></el-option>
<el-option :label="$t('pub.sureBtn')" :value='1'></el-option> <el-option :label="$t('pub.sureBtn')" :value='1'></el-option>
<el-option :label="$t('visa.v_zanding')" :value='2'></el-option> <el-option :label="$t('visa.v_zanding')" :value='2'></el-option>
...@@ -470,7 +464,7 @@ ...@@ -470,7 +464,7 @@
<td width="70" style="text-align:right;">{{$t('ground.shurushubie')}}:</td> <td width="70" style="text-align:right;">{{$t('ground.shurushubie')}}:</td>
<td> <td>
<el-select class='w135 sel' v-model='subItem.TaxType' :placeholder="$t('pub.pleaseSel')" <el-select class='w135 sel' v-model='subItem.TaxType' :placeholder="$t('pub.pleaseSel')"
@change="calculationPrice(subItem)" :disabled="IsEditHotel==0?true:false"> @change="calcPrice()" :disabled="IsEditHotel==0?true:false">
<el-option :label="$t('pub.pleaseSel')" :value='0'></el-option> <el-option :label="$t('pub.pleaseSel')" :value='0'></el-option>
<el-option :label="$t('pub.SR')" :value='1'></el-option> <el-option :label="$t('pub.SR')" :value='1'></el-option>
<el-option :label="$t('pub.SB')" :value='2'></el-option> <el-option :label="$t('pub.SB')" :value='2'></el-option>
...@@ -506,7 +500,7 @@ ...@@ -506,7 +500,7 @@
<td width="70" style="text-align:right;">{{$t('ground.sidaoffkfs')}}:</td> <td width="70" style="text-align:right;">{{$t('ground.sidaoffkfs')}}:</td>
<td> <td>
<el-select class='w135 sel' v-model='subItem.DMCPayType' :placeholder="$t('pub.pleaseSel')" <el-select class='w135 sel' v-model='subItem.DMCPayType' :placeholder="$t('pub.pleaseSel')"
:disabled="IsEditHotel==0?true:false" @change="calculationPrice(subItem)"> :disabled="IsEditHotel==0?true:false" @change="calcPrice()">
<el-option :label="$t('pub.pleaseSel')" :value='0'></el-option> <el-option :label="$t('pub.pleaseSel')" :value='0'></el-option>
<el-option :label="$t('ground.yuejie')" :value='9'></el-option> <el-option :label="$t('ground.yuejie')" :value='9'></el-option>
<el-option :label="$t('ground.xianfu')" :value='1'></el-option> <el-option :label="$t('ground.xianfu')" :value='1'></el-option>
...@@ -585,7 +579,7 @@ ...@@ -585,7 +579,7 @@
</span> </span>
</td> </td>
</tr> </tr>
<tr v-if="EditBtn"> <tr v-if="EditBtn" style="display:none;">
<td width="70" style="text-align:right;">{{$t('ground.shifoutbgxfj')}}:</td> <td width="70" style="text-align:right;">{{$t('ground.shifoutbgxfj')}}:</td>
<td> <td>
<el-select class='w135 sel' v-model='subItem.IsSyncHotelCount'> <el-select class='w135 sel' v-model='subItem.IsSyncHotelCount'>
...@@ -597,14 +591,11 @@ ...@@ -597,14 +591,11 @@
</table> </table>
</td> </td>
<!-- 操作 --> <!-- 操作 -->
<td v-if="childIndex==0" :rowspan="5"> <td v-if="childIndex==0" :rowspan="6">
<template v-if="subItem.OPState==1"> <template v-if="subItem.OPState==1">
<span class="Hotel_red">{{$t('salesModule.OPZD')}}</span> <span class="Hotel_red">{{$t('salesModule.OPZD')}}</span>
</template> </template>
<template v-if="IsOperation!=1"> <template v-if="IsOperation!=1">
<el-tooltip class="item" effect="dark" :content="$t('pub.saveBtn')" placement="top-start">
<el-button icon="iconfont icon-baocun1" @click="SaveSingle(subItem)" type="primary"></el-button>
</el-tooltip>
<el-tooltip class="item" effect="dark" :content="$t('pub.addBtn')" v-if="subItem.OPState!=1" <el-tooltip class="item" effect="dark" :content="$t('pub.addBtn')" v-if="subItem.OPState!=1"
placement="top-start"> placement="top-start">
<el-button @click='AddHotel(item,subIndex)' icon="iconfont icon-tianjia" type="primary"> <el-button @click='AddHotel(item,subIndex)' icon="iconfont icon-tianjia" type="primary">
...@@ -626,8 +617,52 @@ ...@@ -626,8 +617,52 @@
</template> </template>
</template> </template>
</tbody> </tbody>
<tfoot>
<tr>
<td>
</td>
<td>
</td>
<td>
</td>
<td>
</td>
<td>
</td>
<td>
</td>
<td>
</td>
<td>
</td>
<td>
</td>
<td>
</td>
<td>
</td>
<td>
</td>
<td>
</td>
<td colspan="2">
合计:
</td>
<td>
<font style="color:red;font-weight:bold;">
{{allTotalPrice}}
</font>
</td>
<td>
</td>
<td>
</td>
<td>
</td>
</tr>
</tfoot>
</table> </table>
<div class="noDataNotice" v-if="list.length<1"> <div class="noDataNotice" v-if="dataList.length<1">
<i class="iconfont icon-kong"></i> <i class="iconfont icon-kong"></i>
<p>{{$t('active.ld_noData')}}</p> <p>{{$t('active.ld_noData')}}</p>
</div> </div>
...@@ -646,7 +681,7 @@ ...@@ -646,7 +681,7 @@
LineId: 0, LineId: 0,
EditBtn: false, //房餐景点修改权限 EditBtn: false, //房餐景点修改权限
defaultSelectValue: 0, defaultSelectValue: 0,
list: [], dataList: [],
roomList: [], roomList: [],
TCNUM: '', TCNUM: '',
flightTotal: 0, flightTotal: 0,
...@@ -727,6 +762,7 @@ ...@@ -727,6 +762,7 @@
ChooseCountry: "651", ChooseCountry: "651",
currentUserInfo: {}, currentUserInfo: {},
saveLoading: false, //保存,防止重复提交 saveLoading: false, //保存,防止重复提交
allTotalPrice: 0,
} }
}, },
components: { components: {
...@@ -735,6 +771,14 @@ ...@@ -735,6 +771,14 @@
setHotelStock, setHotelStock,
}, },
methods: { methods: {
//订房状态切换
changeState(subItem) {
if (subItem.DMCState == 1) {
subItem.SureTime = this.$commonUtils.getCurrentDate();
} else {
subItem.SureTime = "";
}
},
//批量修改房间数和房间人 //批量修改房间数和房间人
BatchHotelOrder() { BatchHotelOrder() {
var checkArray = []; var checkArray = [];
...@@ -789,7 +833,7 @@ ...@@ -789,7 +833,7 @@
//获取子组件返回的数据 //获取子组件返回的数据
childHotelList(ckedObj) { childHotelList(ckedObj) {
//使用时间 //使用时间
var oldData = JSON.parse(JSON.stringify(this.list[this.findex].HotelOrderList[this.childIndex])); var oldData = JSON.parse(JSON.stringify(this.dataList[this.findex].HotelOrderList[this.childIndex]));
var useTime = oldData.CheckInDateStr; var useTime = oldData.CheckInDateStr;
var hotelId = ckedObj.ID; var hotelId = ckedObj.ID;
var TCID = oldData.TCID; var TCID = oldData.TCID;
...@@ -816,7 +860,7 @@ ...@@ -816,7 +860,7 @@
} }
//库存充足或没有酒店库存的情况 //库存充足或没有酒店库存的情况
else if (objData.isOverStock == 1 || objData.isOverStock == -1) { else if (objData.isOverStock == 1 || objData.isOverStock == -1) {
var tempOrderObj = this.list[this.findex].HotelOrderList[this.childIndex]; var tempOrderObj = this.dataList[this.findex].HotelOrderList[this.childIndex];
if (tempOrderObj) { if (tempOrderObj) {
tempOrderObj.Address = ckedObj.Address; tempOrderObj.Address = ckedObj.Address;
tempOrderObj.NewHotelName = ckedObj.Name; tempOrderObj.NewHotelName = ckedObj.Name;
...@@ -840,7 +884,7 @@ ...@@ -840,7 +884,7 @@
} }
}); });
} }
this.calculationPrice(this.list[this.findex].HotelOrderList[this.childIndex]); this.calcPrice();
let str = `elPopoverHotel${this.findex}${this.childIndex}` let str = `elPopoverHotel${this.findex}${this.childIndex}`
//关闭组件 //关闭组件
this.$refs[str][0].doClose(); this.$refs[str][0].doClose();
...@@ -856,8 +900,8 @@ ...@@ -856,8 +900,8 @@
let str = `elPopoverEditHotelPrice${this.findex}${this.childIndex}` let str = `elPopoverEditHotelPrice${this.findex}${this.childIndex}`
//关闭组件 //关闭组件
this.$refs[str][0].doClose(); this.$refs[str][0].doClose();
var tempObj = this.list[this.findex].HotelOrderList[this.childIndex]; var tempObj = this.dataList[this.findex].HotelOrderList[this.childIndex];
if (this.list[this.findex].HotelOrderList[this.childIndex]) { if (this.dataList[this.findex].HotelOrderList[this.childIndex]) {
if (tempObj && tempObj.IsHaveHotelStock) { if (tempObj && tempObj.IsHaveHotelStock) {
tempObj.IsHaveHotelStock = 1; tempObj.IsHaveHotelStock = 1;
} }
...@@ -949,7 +993,7 @@ ...@@ -949,7 +993,7 @@
var fileUrl = this.domainManager().ViittoFileUrl + x.data.FilePath; var fileUrl = this.domainManager().ViittoFileUrl + x.data.FilePath;
//批量上传 //批量上传
if (this.IsMoreUpdate == 1) { if (this.IsMoreUpdate == 1) {
this.list.forEach((sItem, sIndex) => { this.dataList.forEach((sItem, sIndex) => {
sItem.HotelOrderList.forEach((subItem, subIndex) => { sItem.HotelOrderList.forEach((subItem, subIndex) => {
if (subItem.IsChecked) { if (subItem.IsChecked) {
subItem.ContractUrl = fileUrl; subItem.ContractUrl = fileUrl;
...@@ -960,7 +1004,7 @@ ...@@ -960,7 +1004,7 @@
}); });
this.isShowPiliangPop = false; this.isShowPiliangPop = false;
} else { } else {
this.list[this.checkedIndex].HotelOrderList[this.checkedsubIndex].ContractUrl = fileUrl; this.dataList[this.checkedIndex].HotelOrderList[this.checkedsubIndex].ContractUrl = fileUrl;
} }
this.IsMoreUpdate = 0; this.IsMoreUpdate = 0;
this.$forceUpdate() this.$forceUpdate()
...@@ -1035,7 +1079,6 @@ ...@@ -1035,7 +1079,6 @@
if (list != null && list.length > 0) { if (list != null && list.length > 0) {
list.forEach((item, sIndex) => { list.forEach((item, sIndex) => {
item.HotelOrderList.forEach(subItem => { item.HotelOrderList.forEach(subItem => {
subItem.hotelList.push({ subItem.hotelList.push({
Name: subItem.NewHotelName, Name: subItem.NewHotelName,
ID: subItem.NewHotelId ID: subItem.NewHotelId
...@@ -1044,7 +1087,6 @@ ...@@ -1044,7 +1087,6 @@
if (subItem.CurrencyId == 0) { if (subItem.CurrencyId == 0) {
subItem.CurrencyId = 3; subItem.CurrencyId = 3;
} }
this.calculationPrice(subItem);
subItem.OrderDetailsList.forEach((x, index1) => { subItem.OrderDetailsList.forEach((x, index1) => {
x.HouseTypeCount = x.HouseTypeCount.toString(); x.HouseTypeCount = x.HouseTypeCount.toString();
x.UnitPrice = x.UnitPrice.toString(); x.UnitPrice = x.UnitPrice.toString();
...@@ -1066,7 +1108,8 @@ ...@@ -1066,7 +1108,8 @@
}) })
}) })
}); });
this.list = list; this.dataList = list;
this.calcPrice();
this.$forceUpdate(); this.$forceUpdate();
} }
} else { } else {
...@@ -1075,70 +1118,47 @@ ...@@ -1075,70 +1118,47 @@
this.loading = false this.loading = false
}, err => {}) }, err => {})
}, },
calculationPrice(obj) { //计算价格
calcPrice() {
let totalPrice = 0; let totalPrice = 0;
//获取当前选中的对象 if (this.dataList && this.dataList.length > 0) {
let currentObj = {}; this.dataList.forEach(rItem => {
if (obj.CurrencyId != 0) { if (rItem.HotelOrderList && rItem.HotelOrderList.length > 0) {
currentObj = this.allCurrencyList.find(item => { rItem.HotelOrderList.forEach(oItem => {
return item.ID === obj.CurrencyId; //筛选出匹配数据 var tempPrice = 0;
}); oItem.OrderDetailsList.forEach((dItem, index) => {
} var coefficient = 1;
//日元 //税别
let jpaObj = this.allCurrencyList.find(item => { if (oItem.TaxType == 2) {
return item.ID === 3; //筛选出匹配数据 coefficient = 1 + this.XiaoFeiTaxFee;
}); }
obj.OrderDetailsList.forEach((item, index) => { if (index == 4 && oItem.DMCPayType == 9) {
var tempPrice = 0; tempPrice += 0;
var coefficient = 1; } else {
//税别 tempPrice += dItem.UnitPrice * (dItem.BookNum - dItem.HotelDiscount) * (
if (obj.TaxType == 2) { coefficient - dItem.RebateRatio /
coefficient = 1 + this.XiaoFeiTaxFee; 100);
} }
if (index == 4 && obj.DMCPayType == 9) { })
tempPrice = 0; oItem.TotalPrice = tempPrice.toFixed(2);
} else { totalPrice += tempPrice;
tempPrice = item.UnitPrice * (item.BookNum - item.HotelDiscount) * (coefficient - item.RebateRatio / });
100);
}
totalPrice += tempPrice;
})
totalPrice += obj.ParkFee + obj.CityTax + obj.InTangTax;
obj.TotalPrice = totalPrice.toFixed(2);
if (this.LineId == 14) {
if (currentObj && currentObj.ID > 0) {
//人民币
if (currentObj.ID == 1) {
obj.NewTotalPrice = currentObj.Name + ":" + (totalPrice * jpaObj.PayRate).toFixed(2);
}
//日元
else if (currentObj.ID == 3) {
obj.NewTotalPrice = "";
} else {
if (currentObj.CurrentRate > 1) {
obj.NewTotalPrice = currentObj.Name + ":" + ((totalPrice * jpaObj.PayRate) / currentObj.CurrentRate)
.toFixed(2);
} else {
obj.NewTotalPrice = currentObj.Name + ":" + ((totalPrice * jpaObj.PayRate) * currentObj.CurrentRate)
.toFixed(2);
}
} }
} else { });
obj.NewTotalPrice = "";
}
} }
this.allTotalPrice = totalPrice.toFixed(2);
this.$forceUpdate(); this.$forceUpdate();
}, },
saveList(type) { saveList(type) {
if (type == 0) { if (type == 0) {
this.list.forEach(item => { this.dataList.forEach(item => {
item.HotelOrderList.forEach(subItem => { item.HotelOrderList.forEach(subItem => {
subItem.HotelOrderState = 0; subItem.HotelOrderState = 0;
}); });
}) })
} }
if (type == 1) { if (type == 1) {
this.list.forEach(item => { this.dataList.forEach(item => {
item.HotelOrderList.forEach(subItem => { item.HotelOrderList.forEach(subItem => {
subItem.HotelOrderState = 1; subItem.HotelOrderState = 1;
}); });
...@@ -1147,7 +1167,7 @@ ...@@ -1147,7 +1167,7 @@
var flag = true; var flag = true;
var isUpload = true; var isUpload = true;
var str = ""; var str = "";
this.list.forEach(item => { this.dataList.forEach(item => {
item.HotelOrderList.forEach(subItem => { item.HotelOrderList.forEach(subItem => {
if (isUpload && subItem.PayStyle == 1 && subItem.ContractUrl == '' && !this.EditBtn) { if (isUpload && subItem.PayStyle == 1 && subItem.ContractUrl == '' && !this.EditBtn) {
str += `${this.$t('objFill.qingshangchuan')}${item.UseTimeStr}${this.$t('objFill.deshoups')}` str += `${this.$t('objFill.qingshangchuan')}${item.UseTimeStr}${this.$t('objFill.deshoups')}`
...@@ -1183,7 +1203,7 @@ ...@@ -1183,7 +1203,7 @@
}) })
this.saveLoading = true; this.saveLoading = true;
this.loading = true; this.loading = true;
this.apipost('dmcstatistics_get_SetHotelOrder', this.list, res => { this.apipost('dmcstatistics_get_SetHotelOrder', this.dataList, res => {
this.loading = false; this.loading = false;
this.saveLoading = false; this.saveLoading = false;
if (res.data.resultCode == 1) { if (res.data.resultCode == 1) {
...@@ -1194,56 +1214,6 @@ ...@@ -1194,56 +1214,6 @@
} }
}, err => {}) }, err => {})
}, },
//单条保存
SaveSingle(item) {
item.HotelOrderState = 1;
var flag = true;
var isUpload = true;
var str = "";
this.list.forEach(item => {
item.HotelOrderList.forEach(subItem => {
if (isUpload && subItem.PayStyle == 1 && subItem.ContractUrl == '' && !this.EditBtn) {
str += `${this.$t('objFill.qingshangchuan')}${item.UseTimeStr}${this.$t('objFill.deshoups')}`
isUpload = false;
}
subItem.OrderDetailsList.forEach(y => {
if (y.HouseTypeCount) {
y.HouseTypeCount = parseFloat(y.HouseTypeCount);
} else {
y.HouseTypeCount = 0;
}
if (y.UnitPrice) {
y.UnitPrice = parseInt(y.UnitPrice);
} else {
y.UnitPrice = 0;
}
if (y.HotelDiscount) {
y.HotelDiscount = parseInt(y.HotelDiscount);
} else {
y.HotelDiscount = 0;
}
if (y.BookNum == "") {
y.BookNum = 0;
}
if (!this.$commonUtils.isNumber(y.RebateRatio)) {
y.RebateRatio = 0;
}
})
if (!this.$commonUtils.isNumber(subItem.TotalPrice)) {
subItem.TotalPrice = 0;
}
});
})
this.apipost('dmcstatistics_get_SetHotelOrder', this.list, res => {
if (res.data.resultCode == 1) {
this.Success(res.data.message);
this.getList();
} else {
this.Error(res.data.message);
}
}, err => {})
},
// 获取供应商 // 获取供应商
initSupplier() { initSupplier() {
this.apipost("travel_get_GetAllHotelList", { this.apipost("travel_get_GetAllHotelList", {
......
<style scoped>
.bookDinnerStatisticsTalbe {
table-layout: fixed;
}
.bookDinnerStatisticsTalbe thead tr th {
position: sticky;
top: 0;
z-index: 10;
}
</style>
<template> <template>
<div> <div>
<div class="query-box" style="border-bottom: none;"> <div class="query-box" style="border-bottom: none;">
...@@ -15,295 +26,300 @@ ...@@ -15,295 +26,300 @@
</li> </li>
</ul> </ul>
</div> </div>
<div style="width: 100%; overflow-x: auto;padding-bottom: 10px; " class="ownScrollbarStyle"> <div style="width: 100%; overflow-x: auto;padding-bottom: 10px; " class="ownScrollbarStyle"
:style="{height: boxHeight + 'px'}">
<table border="0" cellspacing="1" cellpadding="0" class="bookDinnerStatisticsTalbe" v-loading="loading"> <table border="0" cellspacing="1" cellpadding="0" class="bookDinnerStatisticsTalbe" v-loading="loading">
<tr> <thead>
<th> <tr>
{{$t('salesModule.CompanyNum')}} <th>
</th> {{$t('salesModule.CompanyNum')}}
<th colspan="17" style="text-align:left;"> </th>
<p class="link" @click="goUrlT('productQuery',TCNUM,'产品查询')" <th colspan="17" style="text-align:left;">
style="text-decoration:underline;cursor:pointer;">{{TCNUM}}</p> <p class="link" @click="goUrlT('productQuery',TCNUM,'产品查询')"
</th> style="text-decoration:underline;cursor:pointer;">{{TCNUM}}</p>
</tr> </th>
<tr> </tr>
<th width="100">{{$t('restaurant.res_etTime')}}</th> <tr>
<th width="200">{{$t('restaurant.res_resName')}}</th> <th width="100">{{$t('restaurant.res_etTime')}}</th>
<th width="200">{{$t('ground.xiugaict')}}</th> <th width="200">{{$t('restaurant.res_resName')}}</th>
<th width="80">{{$t('ground.leibie')}}</th> <th width="200">{{$t('ground.xiugaict')}}</th>
<th width="70">{{$t('ground.zongrenshu')}}</th> <th width="80">{{$t('ground.leibie')}}</th>
<th width="70">{{$t('ground.yongcanren')}}<br />{{$t('advmanager.v_type')}}</th> <th width="70">{{$t('ground.zongrenshu')}}</th>
<th width="70">{{$t('commonPickUp.Pick_Ding')}}<br />{{$t('admin.admin_personNumber')}}</th> <th width="70">{{$t('ground.yongcanren')}}<br />{{$t('advmanager.v_type')}}</th>
<th width="120">{{$t('Operation.Op_price')}}</th> <th width="70">{{$t('commonPickUp.Pick_Ding')}}<br />{{$t('admin.admin_personNumber')}}</th>
<th width="90">{{$t('ground.mianrenshu')}}</th> <th width="120">{{$t('Operation.Op_price')}}</th>
<th width="90">{{$t('hotel.hotel_commission')}}</th> <th width="90">{{$t('ground.mianrenshu')}}</th>
<th width="80">{{$t('ground.jinexiaoji')}}</th> <th width="90">{{$t('hotel.hotel_commission')}}</th>
<th width="100">{{$t('fnc.a_zongjine')}}</th> <th width="80">{{$t('ground.jinexiaoji')}}</th>
<th width="210">{{$t('ground.fkfsdcfsdth')}}</th> <th width="100">{{$t('fnc.a_zongjine')}}</th>
<th width="170">{{$t('pub.pubRemark')}}</th> <th width="210">{{$t('ground.fkfsdcfsdth')}}</th>
</tr> <th width="170">{{$t('pub.pubRemark')}}</th>
<template v-for="(item,index) in dinnerList"> </tr>
<template v-for="(subItem,subIndex) in item.DiningSummaryList"> </thead>
<tr v-for="(childItem,childIndex) in subItem.DiningPriceList" :key="`d_`+index+subIndex+childIndex"> <tbody>
<td v-if="childIndex==0" :rowspan="3"> <template v-for="(item,index) in dinnerList">
{{item.UseTimeStr}} <template v-for="(subItem,subIndex) in item.DiningSummaryList">
</td> <tr v-for="(childItem,childIndex) in subItem.DiningPriceList" :key="`d_`+index+subIndex+childIndex">
<td v-if="childIndex==0" :rowspan="3"> <td v-if="childIndex==0" :rowspan="3">
<table class="dinnerTable"> {{item.UseTimeStr}}
<tr> </td>
<td colspan="2"> <td v-if="childIndex==0" :rowspan="3">
<span style="padding-left:5px;" class="link" <table class="dinnerTable">
@click="goUrlT('restaurantList',subItem.DiningID,'餐厅列表')">{{subItem.DiningName}} <tr>
<br /> <td colspan="2">
{{$t('ground.zhenshimingcheng')}}: {{subItem.DiningRealName}} <span style="padding-left:5px;" class="link"
</span> @click="goUrlT('restaurantList',subItem.DiningID,'餐厅列表')">{{subItem.DiningName}}
</td> <br />
</tr> {{$t('ground.zhenshimingcheng')}}: {{subItem.DiningRealName}}
<tr> </span>
<td width="40"> </td>
{{$t('hotel.table_tel')}} </tr>
</td> <tr v-if="subItem.Tel&&subItem.Tel!=''">
<td style="text-align:left;"> <td width="40">
{{subItem.Tel}} {{$t('hotel.table_tel')}}
</td> </td>
</tr> <td style="text-align:left;">
<tr> {{subItem.Tel}}
<td width="40"> </td>
{{$t('hotel.table_address')}} </tr>
</td> <tr>
<td style="text-align:left;"> <td width="40">
{{subItem.Address}} {{$t('hotel.table_address')}}
</td> </td>
</tr> <td style="text-align:left;">
</table> {{subItem.Address}}
</td> </td>
<td v-if="childIndex==0" :rowspan="3"> </tr>
<el-select style="display:none;" class='w160 sel' v-model='subItem.NewDiningID' filterable </table>
:placeholder="$t('pub.pleaseSel')" @visible-change='getDingList(item)' </td>
@change='sendValue(subItem,item)'> <td v-if="childIndex==0" :rowspan="3">
<el-option v-for='itemHotel in item.DinnerList' :label='itemHotel.RealName' :value='itemHotel.ID' <el-select style="display:none;" class='w160 sel' v-model='subItem.NewDiningID' filterable
:key='itemHotel.ID'></el-option> :placeholder="$t('pub.pleaseSel')" @visible-change='getDingList(item)'
</el-select> @change='sendValue(subItem,item)'>
<template v-if="subItem.NewDiningRealName"> <el-option v-for='itemHotel in item.DinnerList' :label='itemHotel.RealName' :value='itemHotel.ID'
<span style="color:green">{{subItem.NewDiningRealName}}</span><br /> :key='itemHotel.ID'></el-option>
</template> </el-select>
<template v-else-if="subItem.NewDiningName"> <template v-if="subItem.NewDiningRealName">
<span style="color:green">{{subItem.NewDiningName}}</span><br /> <span style="color:green">{{subItem.NewDiningRealName}}</span><br />
</template> </template>
<el-popover placement="right" width="540" trigger="click"> <template v-else-if="subItem.NewDiningName">
<comCheckDinner v-show="subItem.IsShowPop" :ref="'comCheckDinner'+index+subIndex+''" <span style="color:green">{{subItem.NewDiningName}}</span><br />
:UseDate="item.UseTimeStr" v-on:childDinner="childDinnerList" :Country="651"> </template>
</comCheckDinner> <el-popover placement="right" width="540" trigger="click">
<el-button size="small" type="danger" :data-index="'comCheckDinner'+index+subIndex+''" <comCheckDinner v-show="subItem.IsShowPop" :ref="'comCheckDinner'+index+subIndex+''"
slot="reference" style="cursor:pointer;" @click="getChildDinner(index,subIndex,subItem)"> :UseDate="item.UseTimeStr" v-on:childDinner="childDinnerList" :Country="651">
{{$t('ground.cantingxuanz')}} </comCheckDinner>
</el-button> <el-button size="small" type="danger" :data-index="'comCheckDinner'+index+subIndex+''"
</el-popover> slot="reference" style="cursor:pointer;" @click="getChildDinner(index,subIndex,subItem)">
<template v-if="subItem.DinnerOfferPrice&&subItem.DinnerOfferPrice>0"> {{$t('ground.cantingxuanz')}}
<br /> </el-button>
<span style="font-weight:bold;font-size:14px;">{{$t('objFill.baojiacanting')}}:<font </el-popover>
style="color:red;"> <template v-if="subItem.DinnerOfferPrice&&subItem.DinnerOfferPrice>0">
{{subItem.DinnerOfferName}}({{subItem.DinnerOfferPrice}} <br />
<template v-if="subItem.IsDinnerChange"> <span style="font-weight:bold;font-size:14px;">{{$t('objFill.baojiacanting')}}:<font
<el-tooltip :content="subItem.DinnerChangeRemark"> style="color:red;">
<font style="color:blue;"> {{subItem.DinnerOfferName}}({{subItem.DinnerOfferPrice}}
<template v-if="subItem.DinnerChangeValue>0"> <template v-if="subItem.IsDinnerChange">
+{{subItem.DinnerChangeValue}} <el-tooltip :content="subItem.DinnerChangeRemark">
</template> <font style="color:blue;">
<template v-else> <template v-if="subItem.DinnerChangeValue>0">
{{subItem.DinnerChangeValue}} +{{subItem.DinnerChangeValue}}
</template> </template>
</font> <template v-else>
</el-tooltip> {{subItem.DinnerChangeValue}}
</template> </template>
/{{$t('hotel.hotel_people')}}) </font>
</font></span> </el-tooltip>
</template> </template>
</td> /{{$t('hotel.hotel_people')}})
<td v-if="childIndex==0" :rowspan="3"> </font></span>
{{subItem.UseDinnerTypeStr}} </template>
</td> </td>
<td v-if="childIndex==0" :rowspan="3" style="display:none;"> <td v-if="childIndex==0" :rowspan="3">
{{subItem.MealName}} {{subItem.UseDinnerTypeStr}}
</td> </td>
<td v-if="childIndex==0" :rowspan="3"> <td v-if="childIndex==0" :rowspan="3" style="display:none;">
{{subItem.UseAccount}} {{subItem.MealName}}
</td> </td>
<td> <td v-if="childIndex==0" :rowspan="3">
{{personStrToWord(childItem.PeopleType)}} {{subItem.UseAccount}}
</td> </td>
<td> <td>
<template v-if="EditBtn||LineId==90"> {{personStrToWord(childItem.PeopleType)}}
<el-input class='w50' v-model='childItem.UsePeopleNum' @input='calculationPrice()' </td>
@keyup.native="checkInteger(childItem,'UsePeopleNum')" type="text"></el-input> <td>
</template> <template v-if="EditBtn||LineId==90">
<template v-else> <el-input class='w50' v-model='childItem.UsePeopleNum' @input='calculationPrice()'
{{childItem.UsePeopleNum}} @keyup.native="checkInteger(childItem,'UsePeopleNum')" type="text"></el-input>
</template> </template>
</td>
<td>
<template v-if="EditBtn||LineId==90">
<el-input class='w100' v-model='childItem.PeoplePrice' @input='calculationPrice()'
@keyup.native="checkPrice(childItem,'PeoplePrice')" type="text"></el-input>
</template>
<template v-else>
<span class="spanlink" v-if='childItem.PeoplePrice==0'
@click="goUrl('RestaurantPackage',subItem,'套餐查询')">{{$t('leader.leader_Set')}}</span>
<template v-else> <template v-else>
<el-input class='w100 tcenter' @input='calculationPrice()' v-model='childItem.PeoplePrice' {{childItem.UsePeopleNum}}
@keyup.native="checkPrice(childItem,'PeoplePrice')"></el-input>
</template> </template>
</template> </td>
</td> <td>
<td> <template v-if="EditBtn||LineId==90">
<el-input class='w50 tcenter' @input='calculationPrice()' maxlength='2' v-model='childItem.Discount' <el-input class='w100' v-model='childItem.PeoplePrice' @input='calculationPrice()'
@keyup.native="checkPrice(childItem,'Discount')"></el-input> @keyup.native="checkPrice(childItem,'PeoplePrice')" type="text"></el-input>
</td> </template>
<td> <template v-else>
<!--返佣--> <span class="spanlink" v-if='childItem.PeoplePrice==0'
<el-input class='w50 tcenter' @input='calculationPrice()' v-model='childItem.DiscountPrice' @click="goUrl('RestaurantPackage',subItem,'套餐查询')">{{$t('leader.leader_Set')}}</span>
@keyup.native="checkInteger(childItem,'DiscountPrice')"></el-input>% <template v-else>
</td> <el-input class='w100 tcenter' @input='calculationPrice()' v-model='childItem.PeoplePrice'
<td> @keyup.native="checkPrice(childItem,'PeoplePrice')"></el-input>
{{(childItem.UsePeopleNum-childItem.Discount)*childItem.PeoplePrice}} </template>
</td> </template>
<td v-if="childIndex==0" :rowspan="3"> </td>
{{subItem.TotalPrice}} <td>
<template v-if="subItem.NewTotalPrice"> <el-input class='w50 tcenter' @input='calculationPrice()' maxlength='2' v-model='childItem.Discount'
<br /><span style="color:red;">{{subItem.NewTotalPrice}}</span> @keyup.native="checkPrice(childItem,'Discount')"></el-input>
</template> </td>
</td> <td>
<td v-if="childIndex==0" :rowspan="3"> <!--返佣-->
<table class="dinnerTable"> <el-input class='w50 tcenter' @input='calculationPrice()' v-model='childItem.DiscountPrice'
<tr> @keyup.native="checkInteger(childItem,'DiscountPrice')"></el-input>%
<td width="70" style="text-align:right;">{{$t('hotel.hotel_Currency')}}:</td> </td>
<td> <td>
<el-select v-model="subItem.CurrencyId" :placeholder="$t('pub.pleaseSel')" class='w135 sel' {{(childItem.UsePeopleNum-childItem.Discount)*childItem.PeoplePrice}}
@change="calculationPrice()"> </td>
<el-option :label="$t('pub.unlimitedSel')" :value='0'></el-option> <td v-if="childIndex==0" :rowspan="3">
<el-option v-for="(item,index) in allCurrencyList" :key="index" :label="item.Name" {{subItem.TotalPrice}}
:value="item.ID"> <template v-if="subItem.NewTotalPrice">
</el-option> <br /><span style="color:red;">{{subItem.NewTotalPrice}}</span>
</el-select> </template>
</td> </td>
</tr> <td v-if="childIndex==0" :rowspan="3">
<tr> <table class="dinnerTable">
<td width="60" style="text-align:right;"> <tr>
{{$t('fnc.fkfangshi')}}: <td width="70" style="text-align:right;">{{$t('hotel.hotel_Currency')}}:</td>
</td> <td>
<td style="text-align:left;"> <el-select v-model="subItem.CurrencyId" :placeholder="$t('pub.pleaseSel')" class='w135 sel'
<el-select class='w135 sel' v-model='subItem.PayStyle' :placeholder="$t('pub.pleaseSel')"> @change="calculationPrice()">
<el-option :label="$t('pub.pleaseSel')" :value='0'></el-option> <el-option :label="$t('pub.unlimitedSel')" :value='0'></el-option>
<el-option :label='$t("ground.xianfu")' :value='1'></el-option> <el-option v-for="(item,index) in allCurrencyList" :key="index" :label="item.Name"
<el-option :label='$t("ground.qiandan")' :value='2'></el-option> :value="item.ID">
<el-option :label='$t("ground.shiwudk")' :value='3'></el-option> </el-option>
<el-option :label='$t("ground.yufu")' :value='4'></el-option> </el-select>
<el-option :label='$t("ground.yufukuandk")' :value='5'></el-option> </td>
<el-option :label='$t("ground.lingduidydf")' :value='10'></el-option> </tr>
<el-option :label='$t("ground.gongsihetzf")' :value='6'></el-option>
<el-option :label='$t("ground.shuaka")' :value='11'></el-option>
<el-option :label="$t('ground.enterpriseAlipay')" :value='15'></el-option>
</el-select>
</td>
</tr>
<tr>
<td width="60" style="text-align:right;">
{{$t('ground.dingcanfangs')}}:
</td>
<td style="text-align:left;">
<el-select v-model='subItem.DiningReserveType' class='w135 sel'
:placeholder="$t('pub.pleaseSel')">
<el-option :label="$t('pub.pleaseSel')" value='0'></el-option>
<el-option :label='$t("ground.gongsiyuding")' value='1'></el-option>
<el-option :label='$t("ground.daoyouyuding")' value='2'></el-option>
</el-select>
</td>
</tr>
<tr>
<td width="60" style="text-align:right;">
{{$t('objFill.v101.Rest.dincanztai')}}:
</td>
<td style="text-align:left;">
<el-select v-model='subItem.OrderState' class='w135 sel' :placeholder="$t('pub.pleaseSel')"
@change="changeState(subItem)">
<el-option :label="$t('pub.pleaseSel')" :value='-1'></el-option>
<el-option :label='$t("pub.sureBtn")' :value='1'></el-option>
<el-option :label='$t("visa.v_zanding")' :value='2'></el-option>
</el-select>
</td>
</tr>
<template v-if="subItem.OrderState==1">
<tr> <tr>
<td width="60" style="text-align:right;"> <td width="60" style="text-align:right;">
{{$t('salesModule.SureTime')}} {{$t('fnc.fkfangshi')}}:
</td> </td>
<td style="text-align:left;"> <td style="text-align:left;">
<el-date-picker class='w135' v-model="subItem.SureTime" type="date" <el-select class='w135 sel' v-model='subItem.PayStyle' :placeholder="$t('pub.pleaseSel')">
:placeholder="$t('salesModule.SureTime')" value-format="yyyy-MM-dd"> <el-option :label="$t('pub.pleaseSel')" :value='0'></el-option>
</el-date-picker> <el-option :label='$t("ground.xianfu")' :value='1'></el-option>
<el-option :label='$t("ground.qiandan")' :value='2'></el-option>
<el-option :label='$t("ground.shiwudk")' :value='3'></el-option>
<el-option :label='$t("ground.yufu")' :value='4'></el-option>
<el-option :label='$t("ground.yufukuandk")' :value='5'></el-option>
<el-option :label='$t("ground.lingduidydf")' :value='10'></el-option>
<el-option :label='$t("ground.gongsihetzf")' :value='6'></el-option>
<el-option :label='$t("ground.shuaka")' :value='11'></el-option>
<el-option :label="$t('ground.enterpriseAlipay')" :value='15'></el-option>
</el-select>
</td> </td>
</tr> </tr>
<tr> <tr>
<td width="60" style="text-align:right;"> <td width="60" style="text-align:right;">
{{$t('objFill.yuyuetime')}} {{$t('ground.dingcanfangs')}}:
</td> </td>
<td style="text-align:left;"> <td style="text-align:left;">
<!--午餐--> <el-select v-model='subItem.DiningReserveType' class='w135 sel'
<template v-if="subItem.UseDinnerType==2"> :placeholder="$t('pub.pleaseSel')">
<el-time-select class='w135' :placeholder="$t('objFill.yuyuetime')" v-model="subItem.BookTime" <el-option :label="$t('pub.pleaseSel')" value='0'></el-option>
:picker-options="{ start: '11:00',step: '00:15',end: '14:00'}" <el-option :label='$t("ground.gongsiyuding")' value='1'></el-option>
@keyup.native="checkTime(subItem,'BookTime')"> <el-option :label='$t("ground.daoyouyuding")' value='2'></el-option>
</el-time-select> </el-select>
</template>
<!--晚餐-->
<template v-if="subItem.UseDinnerType==3">
<el-time-select class='w135' :placeholder="$t('objFill.yuyuetime')" v-model="subItem.BookTime"
:picker-options="{ start: '17:00',step: '00:15', end: '20:00'}"
@keyup.native="checkTime(subItem,'BookTime')">
</el-time-select>
</template>
</td> </td>
</tr> </tr>
</template> <tr>
<tr v-show="subItem.PayStyle==6"> <td width="60" style="text-align:right;">
<td width="60" style="text-align:right;"> {{$t('objFill.v101.Rest.dincanztai')}}:
{{$t('ground.fukuanth')}}: </td>
</td> <td style="text-align:left;">
<td style="text-align:left;"> <el-select v-model='subItem.OrderState' class='w135 sel' :placeholder="$t('pub.pleaseSel')"
<el-input class='w135' v-model='subItem.PayTypeTCNUM' type="text"></el-input> @change="changeState(subItem)">
</td> <el-option :label="$t('pub.pleaseSel')" :value='-1'></el-option>
</tr> <el-option :label='$t("pub.sureBtn")' :value='1'></el-option>
<tr> <el-option :label='$t("visa.v_zanding")' :value='2'></el-option>
<td width="60" style="text-align:right;"> </el-select>
{{$t('ground.dingtuanhao')}}: </td>
</td> </tr>
<td style="text-align:left;"> <template v-if="subItem.OrderState==1">
<el-input class='w135 tcenter' v-model='subItem.ReserveNo'></el-input> <tr>
</td> <td width="60" style="text-align:right;">
</tr> {{$t('salesModule.SureTime')}}
</table> </td>
</td> <td style="text-align:left;">
<td v-if="childIndex==0" :rowspan="3"> <el-date-picker class='w135' v-model="subItem.SureTime" type="date"
<table class="dinnerTable"> :placeholder="$t('salesModule.SureTime')" value-format="yyyy-MM-dd">
<tr> </el-date-picker>
<td width="80" style="text-align:right;">{{$t('pub.pubRemark')}}:</td> </td>
<td> </tr>
<el-input type='textarea' rows="6" class='w120' v-model='subItem.Remarks'></el-input> <tr>
</td> <td width="60" style="text-align:right;">
</tr> {{$t('objFill.yuyuetime')}}
<tr style="display:none;"> </td>
<td width="80" style="text-align:right;"> <td style="text-align:left;">
{{$t('ground.canpeibz')}}: <!--午餐-->
</td> <template v-if="subItem.UseDinnerType==2">
<td style="text-align:left;"> <el-time-select class='w135' :placeholder="$t('objFill.yuyuetime')"
<el-input type='textarea' rows="2" class='w120' v-model='subItem.DinnerRemark'></el-input> v-model="subItem.BookTime" :picker-options="{ start: '11:00',step: '00:15',end: '14:00'}"
</td> @keyup.native="checkTime(subItem,'BookTime')">
</tr> </el-time-select>
</table> </template>
</td> <!--晚餐-->
</tr> <template v-if="subItem.UseDinnerType==3">
<el-time-select class='w135' :placeholder="$t('objFill.yuyuetime')"
v-model="subItem.BookTime" :picker-options="{ start: '17:00',step: '00:15', end: '20:00'}"
@keyup.native="checkTime(subItem,'BookTime')">
</el-time-select>
</template>
</td>
</tr>
</template>
<tr v-show="subItem.PayStyle==6">
<td width="60" style="text-align:right;">
{{$t('ground.fukuanth')}}:
</td>
<td style="text-align:left;">
<el-input class='w135' v-model='subItem.PayTypeTCNUM' type="text"></el-input>
</td>
</tr>
<tr>
<td width="60" style="text-align:right;">
{{$t('ground.dingtuanhao')}}:
</td>
<td style="text-align:left;">
<el-input class='w135 tcenter' v-model='subItem.ReserveNo'></el-input>
</td>
</tr>
</table>
</td>
<td v-if="childIndex==0" :rowspan="3">
<table class="dinnerTable">
<tr>
<td width="80" style="text-align:right;">{{$t('pub.pubRemark')}}:</td>
<td>
<el-input type='textarea' rows="6" class='w120' v-model='subItem.Remarks'></el-input>
</td>
</tr>
<tr style="display:none;">
<td width="80" style="text-align:right;">
{{$t('ground.canpeibz')}}:
</td>
<td style="text-align:left;">
<el-input type='textarea' rows="2" class='w120' v-model='subItem.DinnerRemark'></el-input>
</td>
</tr>
</table>
</td>
</tr>
</template>
</template> </template>
</template> </tbody>
<tfoot> <tfoot>
<tr> <tr>
<td> <td>
...@@ -364,6 +380,7 @@ ...@@ -364,6 +380,7 @@
LineId: 0, LineId: 0,
currentUserInfo: {}, currentUserInfo: {},
sTotalPrice: 0, //合计 sTotalPrice: 0, //合计
boxHeight: 0,
}; };
}, },
components: { components: {
...@@ -581,6 +598,8 @@ ...@@ -581,6 +598,8 @@
this.allCurrencyList = res.data.data; this.allCurrencyList = res.data.data;
} }
}, err => {}); }, err => {});
let height = window.innerHeight - 65 - 55;
this.boxHeight = height;
} }
}; };
...@@ -635,4 +654,5 @@ ...@@ -635,4 +654,5 @@
.bookDinnerStatisticsTalbe .dinnerTable tr td { .bookDinnerStatisticsTalbe .dinnerTable tr td {
border: none; border: none;
} }
</style>
\ No newline at end of file </style>
<style scoped>
.admissionStatisticsDetailsTalbe {
table-layout: fixed;
}
.admissionStatisticsDetailsTalbe thead tr th {
position: sticky;
top: 0;
z-index: 10;
}
</style>
<template> <template>
<div> <div>
<div class="query-box" style="border-bottom: none;"> <div class="query-box" style="border-bottom: none;">
...@@ -15,178 +27,183 @@ ...@@ -15,178 +27,183 @@
</li> </li>
</ul> </ul>
</div> </div>
<div style="width: 100%; overflow-y: auto;padding-bottom: 10px; height: 100%; " class="ownScrollbarStyle"> <div style="width: 100%; overflow-x: auto;padding-bottom: 10px; " class="ownScrollbarStyle"
:style="{height: boxHeight + 'px'}">
<table border="0" cellspacing="1" cellpadding="0" class="admissionStatisticsDetailsTalbe" v-loading="loading"> <table border="0" cellspacing="1" cellpadding="0" class="admissionStatisticsDetailsTalbe" v-loading="loading">
<tr> <thead>
<th> <tr>
{{$t('salesModule.CompanyNum')}} <th>
</th> {{$t('salesModule.CompanyNum')}}
<th colspan="15" style="text-align:left; padding-left:8px;"> </th>
<p class="link" @click="goUrlT('productQuery',TCNUM,'产品查询')" <th colspan="15" style="text-align:left; padding-left:8px;">
style="text-decoration:underline;cursor:pointer;">{{TCNUM}}</p> <p class="link" @click="goUrlT('productQuery',TCNUM,'产品查询')"
</th> style="text-decoration:underline;cursor:pointer;">{{TCNUM}}</p>
</tr> </th>
<tr> </tr>
<th width="115">{{$t('ground.youlanshijian')}}</th> <tr>
<th width="250">{{$t('visaT.jdname')}}</th> <th width="115">{{$t('ground.youlanshijian')}}</th>
<th width="70">{{$t('objFill.zongrenshu')}}</th> <th width="250">{{$t('visaT.jdname')}}</th>
<th width="70">{{$t('objFill.youke')}}<br />{{$t('advmanager.v_type')}}</th> <th width="70">{{$t('objFill.zongrenshu')}}</th>
<th width="70">{{$t('objFill.youke')}}<br />{{$t('admin.admin_personNumber')}}</th> <th width="70">{{$t('objFill.youke')}}<br />{{$t('advmanager.v_type')}}</th>
<th width="70">{{$t('objFill.shiyong')}}<br />{{$t('admin.admin_personNumber')}}</th> <th width="70">{{$t('objFill.youke')}}<br />{{$t('admin.admin_personNumber')}}</th>
<th width="70">{{$t('ground.mianrenshu')}}</th> <th width="70">{{$t('objFill.shiyong')}}<br />{{$t('admin.admin_personNumber')}}</th>
<th width="120">{{$t('fnc.danjia')}}</th> <th width="70">{{$t('ground.mianrenshu')}}</th>
<th width="90">{{$t('objFill.jingexj')}}</th> <th width="120">{{$t('fnc.danjia')}}</th>
<th width="120">{{$t('hotel.hotel_commission')}}</th> <th width="90">{{$t('objFill.jingexj')}}</th>
<th width="100">{{$t('fnc.a_zongjine')}}</th> <th width="120">{{$t('hotel.hotel_commission')}}</th>
<th width="210">{{$t('ground.fkfsdth')}}</th> <th width="100">{{$t('fnc.a_zongjine')}}</th>
<th width="200">{{$t('pub.pubRemark')}}</th> <th width="210">{{$t('ground.fkfsdth')}}</th>
</tr> <th width="200">{{$t('pub.pubRemark')}}</th>
<template v-for="(item,index) in DataList"> </tr>
<template v-for="(subItem,subIndex) in item.ScenicStatisticsList"> </thead>
<tr v-for="(childItem,childIndex) in subItem.TicketPriceList" :key="`s_`+index+subIndex+childIndex"> <tbody>
<td v-if="childIndex==0" :rowspan="3"> <template v-for="(item,index) in DataList">
{{item.UseTimeStr}} <template v-for="(subItem,subIndex) in item.ScenicStatisticsList">
</td> <tr v-for="(childItem,childIndex) in subItem.TicketPriceList" :key="`s_`+index+subIndex+childIndex">
<td v-if="childIndex==0" :rowspan="3"> <td v-if="childIndex==0" :rowspan="3">
<table class="scenicTable"> {{item.UseTimeStr}}
<tr> </td>
<td colspan="2" style="text-align:left;padding-left:8px;"> <td v-if="childIndex==0" :rowspan="3">
<span class="spanlink" @click="goUrl('ticketManagement',subItem,'门票管理')"> <table class="scenicTable">
{{subItem.ScenicName}} <tr>
</span> <td colspan="2" style="text-align:left;padding-left:8px;">
</td> <span class="spanlink" @click="goUrl('ticketManagement',subItem,'门票管理')">
</tr> {{subItem.ScenicName}}
<tr> </span>
<td width="40"> </td>
{{$t('hotel.table_tel')}} </tr>
</td> <tr>
<td style="text-align:left;"> <td width="40">
{{subItem.Tel}} {{$t('hotel.table_tel')}}
</td> </td>
</tr> <td style="text-align:left;">
<tr> {{subItem.Tel}}
<td width="40"> </td>
{{$t('admin.admin_address')}} </tr>
</td> <tr>
<td style="text-align:left;"> <td width="40">
{{subItem.Address}} {{$t('admin.admin_address')}}
</td> </td>
</tr> <td style="text-align:left;">
</table> {{subItem.Address}}
<template v-if="subItem.ScenicOfferPrice&& subItem.ScenicOfferPrice>0"> </td>
<br /> </tr>
<span style="font-weight:bold;font-size:14px;">{{$t('objFill.baojiajingdian')}}:<font </table>
style="color:red;"> <template v-if="subItem.ScenicOfferPrice&& subItem.ScenicOfferPrice>0">
{{subItem.ScenicOfferName}} <br />
({{subItem.ScenicOfferPrice}}<template v-if="subItem.IsScenicChange"> <span style="font-weight:bold;font-size:14px;">{{$t('objFill.baojiajingdian')}}:<font
<el-tooltip :content="subItem.ScenicChangeRemark"> style="color:red;">
<font style="color:blue;"> {{subItem.ScenicOfferName}}
<template v-if="subItem.ScenicChangeValue>0"> ({{subItem.ScenicOfferPrice}}<template v-if="subItem.IsScenicChange">
+{{subItem.ScenicChangeValue}} <el-tooltip :content="subItem.ScenicChangeRemark">
</template> <font style="color:blue;">
<template v-else> <template v-if="subItem.ScenicChangeValue>0">
{{subItem.ScenicChangeValue}} +{{subItem.ScenicChangeValue}}
</template> </template>
</font> <template v-else>
</el-tooltip> {{subItem.ScenicChangeValue}}
</template>/{{$t('hotel.hotel_people')}})</font> </template>
</span> </font>
</template> </el-tooltip>
</td> </template>/{{$t('hotel.hotel_people')}})</font>
<td v-if="childIndex==0" :rowspan="3"> </span>
{{subItem.UseAccount}} </template>
</td> </td>
<td> <td v-if="childIndex==0" :rowspan="3">
{{personStrToWord(childItem.PeopleType)}} {{subItem.UseAccount}}
</td> </td>
<td> <td>
{{childItem.PeopleNum}} {{personStrToWord(childItem.PeopleType)}}
</td> </td>
<td> <td>
<el-input class='w50 tcenter' v-model='childItem.UsePeopleNum' type="number" @input='calculationPrice()' {{childItem.PeopleNum}}
@keyup.native="checkInteger(childItem,'UsePeopleNum')"></el-input> </td>
</td> <td>
<td> <el-input class='w50 tcenter' v-model='childItem.UsePeopleNum' type="number"
<el-input class='w50 tcenter' maxlength='2' v-model='childItem.Discount' type="number" @input='calculationPrice()' @keyup.native="checkInteger(childItem,'UsePeopleNum')"></el-input>
@input='calculationPrice()' @keyup.native="checkInteger(childItem,'Discount')"></el-input> </td>
</td> <td>
<td> <el-input class='w50 tcenter' maxlength='2' v-model='childItem.Discount' type="number"
<template v-if="EditBtn||LineId==90"> @input='calculationPrice()' @keyup.native="checkInteger(childItem,'Discount')"></el-input>
<el-input class='w100' v-model='childItem.PeoplePrice' </td>
@keyup.native="checkPrice(childItem,'PeoplePrice')" @input='calculationPrice()' type="text"> <td>
</el-input> <template v-if="EditBtn||LineId==90">
</template> <el-input class='w100' v-model='childItem.PeoplePrice'
<template v-else> @keyup.native="checkPrice(childItem,'PeoplePrice')" @input='calculationPrice()' type="text">
<span class="spanlink" v-if='childItem.PeoplePrice==0' </el-input>
@click="goUrl('ticketManagement',subItem,'门票管理')">{{$t('leader.leader_Set')}}</span> </template>
<span v-else> <template v-else>
{{childItem.PeoplePrice}} <span class="spanlink" v-if='childItem.PeoplePrice==0'
</span> @click="goUrl('ticketManagement',subItem,'门票管理')">{{$t('leader.leader_Set')}}</span>
</template> <span v-else>
</td> {{childItem.PeoplePrice}}
<td> </span>
{{(childItem.UsePeopleNum-childItem.Discount)*childItem.PeoplePrice}} </template>
</td> </td>
<td> <td>
<template v-if="EditBtn||LineId==90"> {{(childItem.UsePeopleNum-childItem.Discount)*childItem.PeoplePrice}}
<el-input class='w50 tcenter' v-model='childItem.DiscountPrice' </td>
@keyup.native="checkPrice(childItem,'DiscountPrice')" @input='calculationPrice()' type="text"> <td>
</el-input> <template v-if="EditBtn||LineId==90">
</template> <el-input class='w50 tcenter' v-model='childItem.DiscountPrice'
<template v-else> @keyup.native="checkPrice(childItem,'DiscountPrice')" @input='calculationPrice()' type="text">
<span class="spanlink" v-if='childItem.DiscountPrice==0' </el-input>
@click="goUrl('scenicSpotInfoManage',subItem,'景区列表')">{{$t('leader.leader_Set')}}</span> </template>
<span v-if='childItem.DiscountPrice!=0'>{{childItem.DiscountPrice}}%</span> <template v-else>
</template> <span class="spanlink" v-if='childItem.DiscountPrice==0'
</td> @click="goUrl('scenicSpotInfoManage',subItem,'景区列表')">{{$t('leader.leader_Set')}}</span>
<td v-if="childIndex==0" :rowspan="3"> <span v-if='childItem.DiscountPrice!=0'>{{childItem.DiscountPrice}}%</span>
{{subItem.TotalPrice}} </template>
</td> </td>
<td v-if="childIndex==0" :rowspan="3"> <td v-if="childIndex==0" :rowspan="3">
<table class="scenicTable"> {{subItem.TotalPrice}}
<tr> </td>
<td width="60" style="text-align:right;"> <td v-if="childIndex==0" :rowspan="3">
{{$t('objFill.v101.bizhongxz')}}: <table class="scenicTable">
</td> <tr>
<td style="text-align:left;"> <td width="60" style="text-align:right;">
<el-select class='w135 sel' filterable v-model='subItem.CurrencyId'> {{$t('objFill.v101.bizhongxz')}}:
<el-option v-for='item in currencyList' :label='item.Name' :value='item.ID' :key='item.ID'> </td>
</el-option> <td style="text-align:left;">
</el-select> <el-select class='w135 sel' filterable v-model='subItem.CurrencyId'>
</td> <el-option v-for='item in currencyList' :label='item.Name' :value='item.ID' :key='item.ID'>
</tr> </el-option>
<tr> </el-select>
<td width="60" style="text-align:right;"> </td>
{{$t('hotel.hotel_payType')}}: </tr>
</td> <tr>
<td style="text-align:left;"> <td width="60" style="text-align:right;">
<el-select class='w135 sel' v-model='subItem.PayStyle' :placeholder="$t('pub.pleaseSel')"> {{$t('hotel.hotel_payType')}}:
<el-option :label="$t('objFill.qingxuanzhe')" :value='0'></el-option> </td>
<el-option :label="$t('objFill.xianfu')" :value='1'></el-option> <td style="text-align:left;">
<el-option :label="$t('objFill.qiandan')" :value='2'></el-option> <el-select class='w135 sel' v-model='subItem.PayStyle' :placeholder="$t('pub.pleaseSel')">
<el-option :label="$t('objFill.shiweidikou')" :value='5'></el-option> <el-option :label="$t('objFill.qingxuanzhe')" :value='0'></el-option>
<el-option :label="$t('objFill.yufu')" :value='4'></el-option> <el-option :label="$t('objFill.xianfu')" :value='1'></el-option>
<el-option :label="$t('objFill.wangding')" :value='12'></el-option> <el-option :label="$t('objFill.qiandan')" :value='2'></el-option>
<el-option :label="$t('ground.enterpriseAlipay')" :value='15'></el-option> <el-option :label="$t('objFill.shiweidikou')" :value='5'></el-option>
</el-select> <el-option :label="$t('objFill.yufu')" :value='4'></el-option>
</td> <el-option :label="$t('objFill.wangding')" :value='12'></el-option>
</tr> <el-option :label="$t('ground.enterpriseAlipay')" :value='15'></el-option>
<tr> </el-select>
<td width="60" style="text-align:right;"> </td>
{{$t('objFill.v101.hote.dingtuanh')}}: </tr>
</td> <tr>
<td style="text-align:left;"> <td width="60" style="text-align:right;">
<el-input class='w135' v-model='subItem.CombinationNum' type="text"></el-input> {{$t('objFill.v101.hote.dingtuanh')}}:
</td> </td>
</tr> <td style="text-align:left;">
</table> <el-input class='w135' v-model='subItem.CombinationNum' type="text"></el-input>
</td> </td>
<td v-if="childIndex==0" :rowspan="3"> </tr>
<el-input type='textarea' rows="4" class='w170' v-model='subItem.Remarks'></el-input> </table>
</td> </td>
</tr> <td v-if="childIndex==0" :rowspan="3">
<el-input type='textarea' rows="4" class='w170' v-model='subItem.Remarks'></el-input>
</td>
</tr>
</template>
</template> </template>
</template> </tbody>
<tfoot> <tfoot>
<tr> <tr>
<td> <td>
...@@ -241,6 +258,7 @@ ...@@ -241,6 +258,7 @@
LineId: 0, //线路编号 LineId: 0, //线路编号
currentUserInfo: {}, currentUserInfo: {},
sTotalPrice: 0, //合计 sTotalPrice: 0, //合计
boxHeight: 0,
} }
}, },
methods: { methods: {
...@@ -381,6 +399,9 @@ ...@@ -381,6 +399,9 @@
this.GuestNum = this.$route.query.GuestNum; this.GuestNum = this.$route.query.GuestNum;
this.getList(); this.getList();
this.getCurrencyList(); this.getCurrencyList();
let height = window.innerHeight - 65 - 55;
this.boxHeight = height;
}, },
} }
......
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