|
@@ -25,7 +25,7 @@
|
|
|
<el-button type="primary" @click="GetPriceCheckWord">生成收款账单</el-button>
|
|
|
<el-button type="primary" @click="GetClientWord">导出客户报表</el-button>
|
|
|
<el-button type="primary" @click="GetGroupCostExcel">导出成本</el-button>
|
|
|
- <el-button type="primary">一键复制</el-button>
|
|
|
+ <!-- <el-button type="primary">一键复制</el-button> -->
|
|
|
<el-button type="primary" @click="GroupIsShare">成本通知</el-button>
|
|
|
<el-button type="primary" @click="save">保存设置</el-button>
|
|
|
</div>
|
|
@@ -52,25 +52,25 @@
|
|
|
<el-form :inline="true" class="demo-form-inline" :rules="HotelRules" ref="DHotel"
|
|
|
:model="costTypeHotelNumbers.filter(item => item.type == 'Default')[0]">
|
|
|
<el-form-item label="TBR:" prop="tbr">
|
|
|
- <el-input
|
|
|
+ <el-input @blur='inSelectChangeCheck'
|
|
|
v-model.number="costTypeHotelNumbers.filter(item => item.type == 'Default')[0].tbr"
|
|
|
placeholder="TBR"><i slot="suffix"
|
|
|
style="font-style:normal;margin-right: 10px;">间</i></el-input>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="SGR:" prop="sgr">
|
|
|
- <el-input
|
|
|
+ <el-input @blur='inSelectChangeCheck'
|
|
|
v-model.number="costTypeHotelNumbers.filter(item => item.type == 'Default')[0].sgr"
|
|
|
placeholder="SGR"><i slot="suffix"
|
|
|
style="font-style:normal;margin-right: 10px;">间</i></el-input>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="JS/ES:" prop="jses">
|
|
|
- <el-input
|
|
|
+ <el-input @blur='inSelectChangeCheck'
|
|
|
v-model.number="costTypeHotelNumbers.filter(item => item.type == 'Default')[0].jses"
|
|
|
placeholder="JS/ES"><i slot="suffix"
|
|
|
style="font-style:normal;margin-right: 10px;">间</i></el-input>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="SUITE:" prop="suite">
|
|
|
- <el-input
|
|
|
+ <el-input @blur='inSelectChangeCheck'
|
|
|
v-model.number="costTypeHotelNumbers.filter(item => item.type == 'Default')[0].suite"
|
|
|
placeholder="SUITE"><i slot="suffix"
|
|
|
style="font-style:normal;margin-right: 10px;">间</i></el-input>
|
|
@@ -111,7 +111,7 @@
|
|
|
:model="costTypeHotelNumbers.filter(item => item.type == 'A')[0]">
|
|
|
<el-col :span="3">
|
|
|
<div><el-form-item label="TBR:" prop="tbr">
|
|
|
- <el-input
|
|
|
+ <el-input @blur='inSelectChangeCheck'
|
|
|
v-model.number="costTypeHotelNumbers.filter(item => item.type == 'A')[0].tbr"
|
|
|
placeholder="TBR"><i slot="suffix"
|
|
|
style="font-style:normal;margin-right: 10px;">间</i></el-input>
|
|
@@ -119,7 +119,7 @@
|
|
|
</el-col>
|
|
|
<el-col :span="3">
|
|
|
<div> <el-form-item label="SGR:" prop="sgr">
|
|
|
- <el-input
|
|
|
+ <el-input @blur='inSelectChangeCheck'
|
|
|
v-model.number="costTypeHotelNumbers.filter(item => item.type == 'A')[0].sgr"
|
|
|
placeholder="SGR"><i slot="suffix"
|
|
|
style="font-style:normal;margin-right: 10px;">间</i></el-input>
|
|
@@ -127,7 +127,7 @@
|
|
|
</el-col>
|
|
|
<el-col :span="3">
|
|
|
<div><el-form-item label="JS/ES:" prop="jses">
|
|
|
- <el-input
|
|
|
+ <el-input @blur='inSelectChangeCheck'
|
|
|
v-model.number="costTypeHotelNumbers.filter(item => item.type == 'A')[0].jses"
|
|
|
placeholder="JS/ES"><i slot="suffix"
|
|
|
style="font-style:normal;margin-right: 10px;">间</i></el-input>
|
|
@@ -135,7 +135,7 @@
|
|
|
</el-col>
|
|
|
<el-col :span="3">
|
|
|
<div><el-form-item label="SUITE:" prop="suite">
|
|
|
- <el-input
|
|
|
+ <el-input @blur='inSelectChangeCheck'
|
|
|
v-model.number="costTypeHotelNumbers.filter(item => item.type == 'A')[0].suite"
|
|
|
placeholder="SUITE"><i slot="suffix"
|
|
|
style="font-style:normal;margin-right: 10px;">间</i></el-input>
|
|
@@ -177,7 +177,7 @@
|
|
|
<el-col :span="3">
|
|
|
<div>
|
|
|
<el-form-item label="TBR:" prop="tbr">
|
|
|
- <el-input
|
|
|
+ <el-input @blur='inSelectChangeCheck'
|
|
|
v-model.number="costTypeHotelNumbers.filter(item => item.type == 'B')[0].tbr"
|
|
|
placeholder="TBR"><i slot="suffix"
|
|
|
style="font-style:normal;margin-right: 10px;">间</i></el-input>
|
|
@@ -186,7 +186,7 @@
|
|
|
</el-col>
|
|
|
<el-col :span="3">
|
|
|
<div> <el-form-item label="SGR:" prop="sgr">
|
|
|
- <el-input
|
|
|
+ <el-input @blur='inSelectChangeCheck'
|
|
|
v-model.number="costTypeHotelNumbers.filter(item => item.type == 'B')[0].sgr"
|
|
|
placeholder="SGR"><i slot="suffix"
|
|
|
style="font-style:normal;margin-right: 10px;">间</i></el-input>
|
|
@@ -194,7 +194,7 @@
|
|
|
</el-col>
|
|
|
<el-col :span="3">
|
|
|
<div><el-form-item label="JS/ES:" prop="jses">
|
|
|
- <el-input
|
|
|
+ <el-input @blur='inSelectChangeCheck'
|
|
|
v-model.number="costTypeHotelNumbers.filter(item => item.type == 'B')[0].jses"
|
|
|
placeholder="JS/ES"><i slot="suffix"
|
|
|
style="font-style:normal;margin-right: 10px;">间</i></el-input>
|
|
@@ -202,7 +202,7 @@
|
|
|
</el-col>
|
|
|
<el-col :span="3">
|
|
|
<div><el-form-item label="SUITE:" prop="suite">
|
|
|
- <el-input
|
|
|
+ <el-input @blur='inSelectChangeCheck'
|
|
|
v-model.number="costTypeHotelNumbers.filter(item => item.type == 'B')[0].suite"
|
|
|
placeholder="SUITE"><i slot="suffix"
|
|
|
style="font-style:normal;margin-right: 10px;">间</i></el-input>
|
|
@@ -567,9 +567,10 @@
|
|
|
<span v-if="itemcabinone.tips">
|
|
|
<el-popover placement="top-start"
|
|
|
:title="itemcabinone.title" width="200" trigger="hover">
|
|
|
- <span style="color:green">{{ itemcabinone.tips
|
|
|
- }}</span>
|
|
|
- 元/人
|
|
|
+ <span v-if="itemcabinone.tips != '暂无!'"
|
|
|
+ style="color:green">{{ itemcabinone.tips
|
|
|
+ }}元/人</span>
|
|
|
+ <span v-else style="color: red">暂无!</span>
|
|
|
<span slot="reference">{{ scope.row[itemcabinone.prop]
|
|
|
}}</span>
|
|
|
</el-popover>
|
|
@@ -2568,6 +2569,9 @@ export default {
|
|
|
that.options = resp.data.data.groupList;
|
|
|
that.grouptitleinfo = resp.data.data.groupInfo.data;
|
|
|
that.diid = that.grouptitleinfo.id;
|
|
|
+ localStorage.setItem('costLoadData', JSON.stringify({
|
|
|
+ diid: that.diid
|
|
|
+ }))
|
|
|
that.QueryRate();
|
|
|
|
|
|
for (var i = 0; i < that.CheckBoxListSelect.length; i++) {
|
|
@@ -2664,12 +2668,12 @@ export default {
|
|
|
if (acostvalue != undefined) {
|
|
|
that.AGroupCostParameter = acostvalue;
|
|
|
var result = Number(that.AGroupCostParameter.currency);
|
|
|
- if(isNaN(result)){
|
|
|
+ if (isNaN(result)) {
|
|
|
|
|
|
- }else{
|
|
|
+ } else {
|
|
|
that.AGroupCostParameter.currency = result;
|
|
|
}
|
|
|
-
|
|
|
+
|
|
|
} else {
|
|
|
that.AGroupCostParameter = {
|
|
|
"id": 0,
|
|
@@ -3050,10 +3054,23 @@ export default {
|
|
|
that.sheetDatal[m].childList[0].tips = "暂无!";
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
+ for (var i = 0; i < that.cabinDatal.length; i++) {
|
|
|
+ if (that.cabinDatal[i].label.indexOf('经济舱') != -1) {
|
|
|
+ that.cabinDatal[i].childList[3].tips = '暂无!'
|
|
|
+ }
|
|
|
+ if (that.cabinDatal[i].label.indexOf('公务舱') != -1) {
|
|
|
+ that.cabinDatal[i].childList[3].tips = '暂无!'
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
that.ShowBaoPi = [];
|
|
|
}
|
|
|
|
|
|
+ that.GivePeopleNumber();
|
|
|
+
|
|
|
}
|
|
|
+ that.inSelectChangeCheck();
|
|
|
that.costloading = false;
|
|
|
}).catch(err => {
|
|
|
that.costloading = false;
|
|
@@ -3141,10 +3158,10 @@ export default {
|
|
|
resolve(false);
|
|
|
}
|
|
|
|
|
|
- var result = Number(that.AGroupCostParameter.currency);
|
|
|
- if(isNaN(result)){
|
|
|
+ var result = Number(that.AGroupCostParameter.currency);
|
|
|
+ if (isNaN(result)) {
|
|
|
|
|
|
- }else{
|
|
|
+ } else {
|
|
|
that.AGroupCostParameter.currency = result;
|
|
|
}
|
|
|
})
|
|
@@ -4195,9 +4212,9 @@ export default {
|
|
|
}
|
|
|
|
|
|
var resultCurr = Number(this.AGroupCostParameter.currency);
|
|
|
- if(isNaN(resultCurr)){
|
|
|
+ if (isNaN(resultCurr)) {
|
|
|
resultCurr = this.AGroupCostParameter.currency;
|
|
|
- }else{
|
|
|
+ } else {
|
|
|
for (let index = 0; index < this.currencyOption.length; index++) {
|
|
|
if (this.currencyOption[index].currencyId == resultCurr) {
|
|
|
resultCurr = this.currencyOption[index].currencyCode;
|
|
@@ -4746,13 +4763,92 @@ export default {
|
|
|
break;
|
|
|
}
|
|
|
}
|
|
|
+ },
|
|
|
+ inSelectChangeCheck() {
|
|
|
+ console.log('inSelectChangeCheck');
|
|
|
+ var arr = [];
|
|
|
+ var pusharr = [];
|
|
|
+ if (this.costTypevalue == 'A') {
|
|
|
+ var defaultP = this.costTypeHotelNumbers.filter(item => item.type == 'Default')[0];
|
|
|
+
|
|
|
+ if (defaultP.sgr == 0) {
|
|
|
+ arr.push('酒店SGR');
|
|
|
+ } else {
|
|
|
+ pusharr.push('酒店SGR');
|
|
|
+ }
|
|
|
+ if (defaultP.tbr == 0) {
|
|
|
+ arr.push('酒店TBR');
|
|
|
+ } else {
|
|
|
+ pusharr.push('酒店TBR');
|
|
|
+ }
|
|
|
+ if (defaultP.jses == 0) {
|
|
|
+ arr.push('酒店JSES');
|
|
|
+ } else {
|
|
|
+ pusharr.push('酒店JSES');
|
|
|
+ }
|
|
|
+ if (defaultP.suite == 0) {
|
|
|
+ arr.push('酒店SUITE');
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ pusharr.push('酒店SUITE');
|
|
|
+ }
|
|
|
+
|
|
|
+ } else {
|
|
|
+ var HotelA = this.costTypeHotelNumbers.filter(item => item.type == 'A')[0];
|
|
|
+ var HotelB = this.costTypeHotelNumbers.filter(item => item.type == 'B')[0];
|
|
|
+ if (HotelA.sgr == 0 && HotelB.sgr == 0) { arr.push('酒店SGR'); } else {
|
|
|
+ pusharr.push('酒店SGR');
|
|
|
+ }
|
|
|
+ if (HotelA.tbr == 0 && HotelB.tbr == 0) { arr.push('酒店TBR'); } else {
|
|
|
+ pusharr.push('酒店TBR');
|
|
|
+ }
|
|
|
+ if (HotelA.jses == 0 && HotelB.jses == 0) { arr.push('酒店JSES'); } else {
|
|
|
+ pusharr.push('酒店JSES');
|
|
|
+ }
|
|
|
+ if (HotelA.suite == 0 && HotelB.suite == 0) { arr.push('酒店SUITE'); } else {
|
|
|
+ pusharr.push('酒店SUITE');
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ var leftCheck = this.CheckBoxListSelect.filter(item => item.cbType == 'Left')[0].cbValues;
|
|
|
+ var resultArr = leftCheck.filter(item => !arr.includes(item));
|
|
|
+ resultArr = [...resultArr, ...pusharr];
|
|
|
+ resultArr = [...new Set(resultArr)];
|
|
|
+ console.log('resultArr', resultArr);
|
|
|
+ this.CheckBoxListSelect.filter(item => item.cbType == 'Left')[0].cbValues = resultArr;
|
|
|
+ },
|
|
|
+ GivePeopleNumber() {
|
|
|
+ var number = this.grouptitleinfo.visitPNumber;
|
|
|
+ if (this.AGroupCostParameter.visaRS == 0) {
|
|
|
+ this.AGroupCostParameter.visaRS = number;
|
|
|
+ }
|
|
|
+ if (this.AGroupCostParameter.bxrs == 0) {
|
|
|
+ this.AGroupCostParameter.bxrs = number;
|
|
|
+ }
|
|
|
+ if (this.AGroupCostParameter.djrs == 0) {
|
|
|
+ this.AGroupCostParameter.djrs = number;
|
|
|
+ }
|
|
|
+ if (this.AGroupCostParameter.lyjrs == 0) {
|
|
|
+ this.AGroupCostParameter.lyjrs = number;
|
|
|
+ }
|
|
|
+ if (this.AGroupCostParameter.gwrs == 0) {
|
|
|
+ this.AGroupCostParameter.gwrs = number;
|
|
|
+ }
|
|
|
}
|
|
|
},
|
|
|
mounted() {
|
|
|
-
|
|
|
this.token = JSON.parse(localStorage.getItem('userinif')).token;
|
|
|
this.userId = JSON.parse(localStorage.getItem('userinif')).userInfo.userId
|
|
|
- this.loadData(-1);
|
|
|
+ var costLoadData = localStorage.getItem('costLoadData');
|
|
|
+ if (costLoadData) {
|
|
|
+ var JSONP = JSON.parse(costLoadData);
|
|
|
+ var diidP = Number(JSONP.diid);
|
|
|
+ this.loadData(isNaN(diidP) ? -1 : diidP);
|
|
|
+ } else {
|
|
|
+ this.loadData(-1);
|
|
|
+ }
|
|
|
+
|
|
|
window.Vue = this;
|
|
|
},
|
|
|
computed: {
|