Commit 2f1afcd6 authored by huangyuanyuan's avatar huangyuanyuan
parents 3851a4b2 6f1a7d14
......@@ -3,13 +3,13 @@
<div style="width: 100%; overflow-x: auto;padding-bottom: 10px; " class="ownScrollbarStyle">
<table border="0" cellspacing="1" cellpadding="0" class="changeHotelDetailsTalbe" v-loading="Loading">
<tr>
<th colspan="14">酒店信息</th>
<th colspan="13">酒店信息</th>
</tr>
<tr>
<th>
公司团号
</th>
<th colspan="12" class="tdLeft">
<th colspan="11" class="tdLeft">
<a class="link" @click="goUrlT('productQuery',TCNUM,'产品查询')">{{TCNUM}}</a>
</th>
<th>
......@@ -18,8 +18,8 @@
</tr>
<tr>
<th width="120">入住时间</th>
<th width="80">选择酒店</th>
<th width="200">原酒店名称</th>
<th width="200">选择酒店</th>
<th width="120">机位数(Y/E/F)</th>
<th width="120">占床/不占床</th>
<th width="80">实际用房数</th>
......@@ -38,9 +38,9 @@
<td v-if="childIndex==0&&subIndex==0" :rowspan="5*item.HotelOrderList.length" class="tdCenter">
{{item.UseTimeStr}}
</td>
<td v-if="childIndex==0" :rowspan="5" class="tdCenter">
<!-- <td v-if="childIndex==0" :rowspan="5" class="tdCenter">
<el-checkbox v-model='subItem.IsChecked'></el-checkbox>
</td>
</td> -->
<td v-if="childIndex==0" :rowspan="5" class="tdLeft">
<p class="link" style="word-break: normal;" @click="goUrlR('HotelManagement',HotelId.HotelId,'酒店管理')">
{{subItem.HotelName}}</p>
......@@ -102,10 +102,18 @@
TCNUM: '',
TCIDs: "",
isShowBtn: 0,
isCheck: false,
Loading: false,
}
},
methods: {
UpdateCheck() {
this.DataList.forEach(item => {
item.HotelOrderList.forEach(subItem => {
subItem.IsChecked = this.isCheck;
});
})
},
goUrl(path, obj, name) {
this.$router.push({
path: path,
......
<style>
@import "../../assets/css/DMC.css";
@import "../../assets/css/DMC.css";
</style>
<template>
<div class="flexOne changInfo">
......@@ -37,23 +38,24 @@
</el-input>
</el-form-item>
<el-form-item label="是否预约">
<el-switch v-model="addMsg.AppointmentStyle" :active-value="inActive" :inactive-value="notInActive"></el-switch>
<el-switch v-model="addMsg.AppointmentStyle" :active-value="inActive" :inactive-value="notInActive">
</el-switch>
</el-form-item>
<el-form-item label="支付方式">
<el-select v-model="addMsg.PayStyle" class='multiple_input w300' :placeholder="$t('pub.pleaseSel')">
<el-select v-model="addMsg.PayStyle" class='multiple_input w300' :placeholder="$t('pub.pleaseSel')" :disabled="IsHaveAuth==1?false:true">
<el-option :label="$t('pub.unlimitedSel')" :value='SelectDefaultValue'></el-option>
<el-option v-for="item in PayList" :key="item.Id" :label="item.Name" :value="item.Id">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="酒店类型">
<el-form-item label="酒店类型">
<el-select v-model="addMsg.HotelType" class='multiple_input w300' :placeholder="$t('pub.pleaseSel')">
<el-option :label="$t('pub.unlimitedSel')" :value='SelectDefaultValue'></el-option>
<el-option v-for="item in HotelTypeList" :key="item.ID" :label="item.Name" :value="item.ID">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="价格">
<el-form-item label="价格">
<el-select v-model="addMsg.HotelPriceType" class='multiple_input w300' :placeholder="$t('pub.pleaseSel')">
<el-option :label="$t('pub.unlimitedSel')" :value='SelectDefaultValue'></el-option>
<el-option v-for="item in HotelPirceTypeList" :key="item.ID" :label="item.Name" :value="item.ID">
......@@ -70,33 +72,34 @@
</el-select>
</span>
</div>
<span class="resource-lititle sheshi">酒店优惠 <el-button icon="el-icon-plus" circle @click="addAir"></el-button></span>
<span class="resource-lititle sheshi">酒店优惠 <el-button icon="el-icon-plus" circle @click="addAir"></el-button>
</span>
<div class="jiudianyouhuiDiv">
<el-row v-for="(list,index) in addMsg.DiscountList" :key="index">
<el-col :span="6" :gutter="35">
<el-form-item label="开始数量">
<el-input class='w80' type="text" v-model="list.StartNum" ></el-input>
</el-form-item>
</el-col>
<el-col :span="6" :gutter="35">
<el-form-item label="结束数量">
<el-input class='w80' type="text" v-model="list.EndNum"></el-input>
</el-form-item>
</el-col>
<el-col :span="6" :gutter="35">
<el-form-item label="返还数量">
<el-input class='w80' type="text" v-model="list.DisCountNum" ></el-input>
</el-form-item>
</el-col>
<el-col :span="6" :gutter="35" v-if="index==0">
</el-col>
<el-col :span="6" :gutter="35" >
<el-button icon="el-icon-minus" circle @click="deleteAir(index)"> </el-button>
</el-col>
</el-row>
<!-- <el-row :gutter="0">
<el-row v-for="(list,index) in addMsg.DiscountList" :key="index">
<el-col :span="6" :gutter="35">
<el-form-item label="开始数量">
<el-input class='w80' type="text" v-model="list.StartNum"></el-input>
</el-form-item>
</el-col>
<el-col :span="6" :gutter="35">
<el-form-item label="结束数量">
<el-input class='w80' type="text" v-model="list.EndNum"></el-input>
</el-form-item>
</el-col>
<el-col :span="6" :gutter="35">
<el-form-item label="返还数量">
<el-input class='w80' type="text" v-model="list.DisCountNum"></el-input>
</el-form-item>
</el-col>
<el-col :span="6" :gutter="35" v-if="index==0">
</el-col>
<el-col :span="6" :gutter="35">
<el-button icon="el-icon-minus" circle @click="deleteAir(index)"> </el-button>
</el-col>
</el-row>
<!-- <el-row :gutter="0">
<el-col :span="6">
<el-form-item label="开始数量" >
<el-input class='w80' type="text" :placeholder="$t('pub.pleaseImport')"></el-input>
......@@ -117,15 +120,15 @@
</el-col>
</el-row> -->
</div>
<!--<div v-for="(item) in GetPolicy" :key="item.subCode">
<div class="common-lefttit">{{item.Content}}</div>
<span class="resource-net">
<el-input v-model="item.checked" maxlength="50" class="w300"></el-input>
</span>
</div>-->
</div>
<div class="resource-imginfo">
<div class="resourcerightTop">
......@@ -134,38 +137,44 @@
<div class="RabateDiv clearfix">
<div class="RebateCount reOne">
<div class="leftPnum">{{$t('admin.admin_personNumber')}}></div>
<input type="text" class="toolInput inpuOne" v-model="addMsg.RebateCount" onkeyup="value=value.replace(/[^\d]/g,'')"
maxlength="20">
<input type="text" class="toolInput inpuOne" v-model="addMsg.RebateCount"
onkeyup="value=value.replace(/[^\d]/g,'')" maxlength="20">
</div>
<div class="RebateCount reTwo">
<div class="fanNum">{{$t('restaurant.res_return')}}</div>
<input type="text" class="toolInput inpuTwo" v-model="addMsg.RebateRatio" onkeyup="value=value.replace(/[^\d]/g,'')"
maxlength="20">
<input type="text" class="toolInput inpuTwo" v-model="addMsg.RebateRatio"
onkeyup="value=value.replace(/[^\d]/g,'')" maxlength="20">
<div class="percentCon">%</div>
</div>
</div>
</div>
<el-form-item :label="$t('hotel.hotel_landline')">
<el-input type="text" v-model="addMsg.Tel" maxlength="20" :placeholder="$t('hotel.hotel_landline')" class="w300"></el-input>
<el-input type="text" v-model="addMsg.Tel" maxlength="20" :placeholder="$t('hotel.hotel_landline')"
class="w300"></el-input>
</el-form-item>
<el-form-item label="国家">
<el-select placeholder="请选择国家" filterable v-model="addMsg.Country" class='multiple_input w300' @change="GetSubAreaList(addMsg.Country,1)">
<el-select placeholder="请选择国家" filterable v-model="addMsg.Country" class='multiple_input w300'
@change="GetSubAreaList(addMsg.Country,1)">
<el-option :label="$t('pub.unlimitedSel')" :value='SelectDefaultValue'></el-option>
<el-option v-for="childItem in CountryList" :key="childItem.ID" :label="childItem.Name" :value="childItem.ID">
<el-option v-for="childItem in CountryList" :key="childItem.ID" :label="childItem.Name"
:value="childItem.ID">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="省">
<el-select placeholder="请选择省" filterable class='multiple_input w300' v-model="addMsg.Province" @change="GetSubAreaList(addMsg.Province,2)">
<el-select placeholder="请选择省" filterable class='multiple_input w300' v-model="addMsg.Province"
@change="GetSubAreaList(addMsg.Province,2)">
<el-option :label="$t('pub.unlimitedSel')" :value='SelectDefaultValue'></el-option>
<el-option v-for="childItem in ProvinceList" :key="childItem.ID" :label="childItem.Name" :value="childItem.ID">
<el-option v-for="childItem in ProvinceList" :key="childItem.ID" :label="childItem.Name"
:value="childItem.ID">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="市">
<el-select placeholder="请选择市" filterable class='multiple_input w300' v-model="addMsg.City">
<el-option :label="$t('pub.unlimitedSel')" :value='SelectDefaultValue'></el-option>
<el-option v-for="childItem in CityList" :key="childItem.ID" :label="childItem.Name" :value="childItem.ID">
<el-option v-for="childItem in CityList" :key="childItem.ID" :label="childItem.Name"
:value="childItem.ID">
</el-option>
</el-select>
</el-form-item>
......@@ -196,12 +205,13 @@
active-text="用餐" inactive-text="不用餐"></el-switch>
</el-form-item>
<el-form-item label="用餐类型" v-show="isDinner">
<el-select v-model="UseDinnerString" class='multiple_input w300' multiple :placeholder="$t('pub.pleaseSel')">
<el-select v-model="UseDinnerString" class='multiple_input w300' multiple
:placeholder="$t('pub.pleaseSel')">
<el-option v-for="item in dinerList" :key="item.Id" :label="item.Name" :value="item.Id">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="停车场" >
<el-form-item label="停车场">
<el-switch v-model="addMsg.IsHavearking" :active-value="1" :inactive-value="0"></el-switch>
</el-form-item>
</div>
......@@ -211,7 +221,7 @@
<div class="re-img" v-for="(item,index) in HotelImageArray" :key="item.subCode">
<img :src="item.ShowPath" />
<div class="imgzhe">
<div class="re-delte" ><i @click.stop="showImg(item.ShowPath)" class="iconfont icon-img_cz"></i></div>
<div class="re-delte"><i @click.stop="showImg(item.ShowPath)" class="iconfont icon-img_cz"></i></div>
<div class="re-delte" @click="delImg(index)"><i class="iconfont icon-xingzhuang"></i></div>
<!-- <div class="re-delte" @click.stop="ExchangeImg(index,0)" v-if="index!=0&&item.ShowPath">
......@@ -228,8 +238,8 @@
<i class="iconfont icon-img_haha"></i>
<div class="ad-one">
<div class="re-upload">
<el-upload class="upload-demo" :http-request="UploadImage" :multiple="true" accept="image/jpeg,image/gif,image/png,image/bmp"
:show-file-list="false" action="">
<el-upload class="upload-demo" :http-request="UploadImage" :multiple="true"
accept="image/jpeg,image/gif,image/png,image/bmp" :show-file-list="false" action="">
<i class="iconfont icon-img_bdsc"></i>
</el-upload>
</div>
......@@ -242,7 +252,8 @@
</el-form>
</div>
<el-dialog custom-class="resourceImgAdd" title="选择图片" center :visible.sync="addimg">
<DMCchooseImg @closeImg="closeDMCchooseImg" ref="DMCchooseImg1" @headCallBack="getDMCimg" v-bind:imgType="1"></DMCchooseImg>
<DMCchooseImg @closeImg="closeDMCchooseImg" ref="DMCchooseImg1" @headCallBack="getDMCimg" v-bind:imgType="1">
</DMCchooseImg>
</el-dialog>
<el-dialog custom-class="mapList" title="地图选址" center :visible.sync="selectAddress">
<googleMap @refList="googleMap" v-bind:address="addMsg.Address" @headCallBack="headCall"></googleMap>
......@@ -258,629 +269,626 @@
</div>
</template>
<script>
import DMCchooseImg from "../commonPage/DMCchooseImg.vue";
import googleMap from "../commonPage/googleMap.vue";
export default {
data() {
return {
imageOptions:{
navbar:false,
title:false
},
images: [],
//是否显示添加图片
addimg: false,
//地图选中地址
selectAddress: false,
//上传的文件数组
HotelImageArray: [],
//删除的图片文件数组
DeleteImageArray: [],
//地接资源图片
imglistArry: [],
//地接图片搜索关键字
imgKeyword: "",
import DMCchooseImg from "../commonPage/DMCchooseImg.vue";
import googleMap from "../commonPage/googleMap.vue";
export default {
data() {
return {
imageOptions: {
navbar: false,
title: false
},
//是否有权限操作支付方式
IsHaveAuth: 0,
images: [],
//是否显示添加图片
addimg: false,
//地图选中地址
selectAddress: false,
//上传的文件数组
HotelImageArray: [],
//删除的图片文件数组
DeleteImageArray: [],
//地接资源图片
imglistArry: [],
//地接图片搜索关键字
imgKeyword: "",
openplatform: "", //获取开放平台
starslevel: "", //获取酒店星级
serviceList: [], //获取酒店服务
GetPolicy: "", //获取酒店政策
OpenPlatformStrings: "",
UseDinnerformString: "",
totalimg: "",
selecnum: 0,
hotelID: "",
openplatString: "",
UseDinnerString: "",
inActive: 1, //已选中
notInActive: 0, //未选中
SupplierList: "",
imgBeforeFile: this.domainManager().ViittoFileUrl,
isBook: true,
isDinner: false,
dinerList: "",
//下拉框默认值
SelectDefaultValue: 0,
//国家列表
CountryList: [],
//省份列表
ProvinceList: [],
//城市列表
CityList: [],
//支付方式
PayList: [],
//酒店类型
HotelTypeList: [],
//酒店价格
HotelPirceTypeList:[],
addMsg: {
ID: 0,
Name: "",
HotelRealName:"",
Descriptions: "",
Tel: "",
Remark: "",
//温馨提示
WarmTip:"",
Star: "",
URL: "",
Fax: "",
QCountry: "",
QProvince: "",
QCity: "",
District: 0,
Address: "",
Lng: "",
Lat: "",
HotelType: 0,
HotelPriceType: 0,
DieLine: "",
HotelImageList: [], //现在的图片
DeleteImageList: [], //要删除的图片
DiscountList:[ ],
RoomNumber: "",
ChainBrand: "",
FacilityServices: "",
HotelPolicy: "",
OpenPlatform: "",
RebateCount: "",
RebateRatio: "",
IsSelfBook: "",
IsUseDinner: "0",
UseDinnerType: "",
Country: 0,
Province: 0,
City: 0,
//是否预约
AppointmentStyle: 0,
openplatform: "", //获取开放平台
starslevel: "", //获取酒店星级
serviceList: [], //获取酒店服务
GetPolicy: "", //获取酒店政策
OpenPlatformStrings: "",
UseDinnerformString: "",
totalimg: "",
selecnum: 0,
hotelID: "",
openplatString: "",
UseDinnerString: "",
inActive: 1, //已选中
notInActive: 0, //未选中
SupplierList: "",
imgBeforeFile: this.domainManager().ViittoFileUrl,
isBook: true,
isDinner: false,
dinerList: "",
//下拉框默认值
SelectDefaultValue: 0,
//国家列表
CountryList: [],
//省份列表
ProvinceList: [],
//城市列表
CityList: [],
//支付方式
PayStyle: 0,
//是否有停车场
IsHavearking:0,
},
DiscountList:{
ID:0,
StartNum:'',
EndNum:'',
DisCountNum:''
},
qMsg: {},
rules: {
//表单必填验证
Name: [
{
PayList: [],
//酒店类型
HotelTypeList: [],
//酒店价格
HotelPirceTypeList: [],
addMsg: {
ID: 0,
Name: "",
HotelRealName: "",
Descriptions: "",
Tel: "",
Remark: "",
//温馨提示
WarmTip: "",
Star: "",
URL: "",
Fax: "",
QCountry: "",
QProvince: "",
QCity: "",
District: 0,
Address: "",
Lng: "",
Lat: "",
HotelType: 0,
HotelPriceType: 0,
DieLine: "",
HotelImageList: [], //现在的图片
DeleteImageList: [], //要删除的图片
DiscountList: [],
RoomNumber: "",
ChainBrand: "",
FacilityServices: "",
HotelPolicy: "",
OpenPlatform: "",
RebateCount: "",
RebateRatio: "",
IsSelfBook: "",
IsUseDinner: "0",
UseDinnerType: "",
Country: 0,
Province: 0,
City: 0,
//是否预约
AppointmentStyle: 0,
//支付方式
PayStyle: 0,
//是否有停车场
IsHavearking: 0,
},
DiscountList: {
ID: 0,
StartNum: '',
EndNum: '',
DisCountNum: ''
},
qMsg: {},
rules: {
//表单必填验证
Name: [{
required: true,
message: "请填写名称",
trigger: "change"
}
],
Address: [
{
}],
Address: [{
required: true,
message: "请选择地址",
trigger: "change"
}
],
Descriptions: [
{
}],
Descriptions: [{
required: true,
message: "请输入文字描述",
trigger: "change"
}
],
DieLine: [
{
}],
DieLine: [{
pattern: this.$commonUtils.Regex.el_isInteger,
message: "请输入正确的数字"
}
]
}
};
},
components: {
googleMap: googleMap,
DMCchooseImg: DMCchooseImg
},
methods: {
deleteAir(i){
this.addMsg.DiscountList.splice(i,1);
},
addAir(){
this.addMsg.DiscountList.push(JSON.parse(JSON.stringify(this.DiscountList)));
},
//上传酒店图片
UploadImage(file) {
let newArr = [];
newArr.push(file.file);
let fileName = file.file.name;
var path = "/Upload/DMC/";
this.UploadSelfFileT(path, newArr, x => {
var obj = this.$DMCUtils.DMCImageObj();
var str = x.data.FilePath;
var imgUrl = this.domainManager().ViittoFileUrl + x.data.FilePath;
obj.Path = str;
obj.ShowPath = imgUrl;
this.HotelImageArray.push(obj);
//this.updatePic();
});
}]
}
};
},
//更新酒店图片
updatePic() {
if (this.hotelID > 0) {
var postMsg = {
ID: this.hotelID,
Name: this.addMsg.Name,
HotelImageList: this.HotelImageArray, //新增修改
DeleteImageList: this.DeleteImageArray //删除的图片
};
components: {
googleMap: googleMap,
DMCchooseImg: DMCchooseImg
},
methods: {
deleteAir(i) {
this.addMsg.DiscountList.splice(i, 1);
},
addAir() {
this.addMsg.DiscountList.push(JSON.parse(JSON.stringify(this.DiscountList)));
},
//上传酒店图片
UploadImage(file) {
let newArr = [];
newArr.push(file.file);
let fileName = file.file.name;
var path = "/Upload/DMC/";
this.UploadSelfFileT(path, newArr, x => {
var obj = this.$DMCUtils.DMCImageObj();
var str = x.data.FilePath;
var imgUrl = this.domainManager().ViittoFileUrl + x.data.FilePath;
obj.Path = str;
obj.ShowPath = imgUrl;
this.HotelImageArray.push(obj);
//this.updatePic();
});
},
//更新酒店图片
updatePic() {
if (this.hotelID > 0) {
var postMsg = {
ID: this.hotelID,
Name: this.addMsg.Name,
HotelImageList: this.HotelImageArray, //新增修改
DeleteImageList: this.DeleteImageArray //删除的图片
};
this.apipost(
"hotel_post_UpateHotelPic",
postMsg,
res => {
if (res.data.resultCode == 1) {
this.Success("操作图片成功!");
}
},
null
);
}
},
//删除图片
delImg(index) {
var item = this.HotelImageArray[index];
this.DeleteImageArray.push(item);
this.HotelImageArray.splice(index, 1);
//this.updatePic();
},
inited(viewer) {
this.$viewer = viewer
},
showImg: function (src) {
let srcArr = src.split('?')
src = srcArr[0]
let isExsit = false
this.images.forEach(x => {
if (x === src)
isExsit = true
})
if (!isExsit) {
this.images.push(src)
} else {
this.$viewer.view(this.images.indexOf(src))
}
this.$viewer.show()
},
addImgOpen() {
this.addimg = true;
this.initimgList();
},
saveResource() {
//保存酒店信息
if (this.isBook) {
this.addMsg.IsSelfBook = 1;
} else {
this.addMsg.IsSelfBook = 0;
}
this.addMsg.FacilityServices = `${JSON.stringify(this.serviceList)}`;
this.addMsg.HotelPolicy = `${JSON.stringify(this.GetPolicy)}`;
this.addMsg.OpenPlatform = this.openplatString.toString();
this.addMsg.UseDinnerType = this.UseDinnerString.toString();
if (this.addMsg.IsUseDinner == 0) {
this.addMsg.UseDinnerType = "";
}
if (this.hoteID != "undefined") {
this.addMsg.ID = this.hotelID;
}
this.addMsg.HotelImageList = this.HotelImageArray;
this.addMsg.DeleteImageList = this.DeleteImageArray;
this.apipost(
"hotel_post_UpateHotelPic",
postMsg,
res => {
if (res.data.resultCode == 1) {
this.Success("操作图片成功!");
"hotel_post_Set",
this.addMsg,
response => {
//修改添加接口
if (response.data.resultCode == 1) {
this.Success("保存成功!");
this.goUrl("HotelManagement");
} else {
this.Error(response.data.message);
}
},
null
);
}
},
//删除图片
delImg(index) {
var item = this.HotelImageArray[index];
this.DeleteImageArray.push(item);
this.HotelImageArray.splice(index, 1);
//this.updatePic();
},
inited (viewer){
this.$viewer = viewer
},
showImg: function (src) {
let srcArr = src.split('?')
src = srcArr[0]
let isExsit=false
this.images.forEach(x=>{
if(x===src)
isExsit=true
})
if(!isExsit) {
this.images.push(src)
} else {
this.$viewer.view(this.images.indexOf(src))
}
this.$viewer.show()
},
addImgOpen() {
this.addimg = true;
this.initimgList();
},
saveResource() {
//保存酒店信息
if (this.isBook) {
this.addMsg.IsSelfBook = 1;
} else {
this.addMsg.IsSelfBook = 0;
}
this.addMsg.FacilityServices = `${JSON.stringify(this.serviceList)}`;
this.addMsg.HotelPolicy = `${JSON.stringify(this.GetPolicy)}`;
this.addMsg.OpenPlatform = this.openplatString.toString();
this.addMsg.UseDinnerType = this.UseDinnerString.toString();
if (this.addMsg.IsUseDinner == 0) {
this.addMsg.UseDinnerType = "";
}
if (this.hoteID != "undefined") {
this.addMsg.ID = this.hotelID;
}
this.addMsg.HotelImageList = this.HotelImageArray;
this.addMsg.DeleteImageList = this.DeleteImageArray;
this.apipost(
"hotel_post_Set",
this.addMsg,
response => {
//修改添加接口
if (response.data.resultCode == 1) {
this.Success("保存成功!");
this.goUrl("HotelManagement");
} else {
this.Error(response.data.message);
}
},
null
);
},
init() {
var msg = {};
this.apipost(
"hotel_post_GetStar",
msg,
response => {
//初始化星级
if (response.data.resultCode == 1) {
this.starslevel = response.data.data;
}
},
null
);
this.apipost("hotel_post_GetPlatform", msg, res => {
//获取开放平台
this.openplatform = res.data.data;
});
},
inithotelService() {
//初始化酒店服务
let msg = {
Key: "SK_HOTEL_SERVICE"
};
this.apipost("dict_post_GetList", msg, res => {
if (res.data.resultCode == 1) {
var tempArray = res.data.data;
tempArray.forEach(item => {
item.checked = [];
});
this.serviceList = tempArray;
}
});
},
inithotelPolicy() {
//初始化酒店政策
let msg = {
Key: "SK_HOTEL_POLICY"
};
this.apipost("dict_post_GetList", msg, response => {
if (response.data.resultCode == 1) {
this.GetPolicy = response.data.data;
}
});
},
initimgList() {
//初始化弹窗图片列表
var keyWord = this.imgKeyword;
this.imglistArry = [];
let msg = {
Name: keyWord
};
this.apipost(
"hotel_post_GetPicList",
msg,
res => {
},
init() {
var msg = {};
this.apipost(
"hotel_post_GetStar",
msg,
response => {
//初始化星级
if (response.data.resultCode == 1) {
this.starslevel = response.data.data;
}
},
null
);
this.apipost("hotel_post_GetPlatform", msg, res => {
//获取开放平台
this.openplatform = res.data.data;
});
},
inithotelService() {
//初始化酒店服务
let msg = {
Key: "SK_HOTEL_SERVICE"
};
this.apipost("dict_post_GetList", msg, res => {
if (res.data.resultCode == 1) {
this.imglistArry = res.data.data;
this.totalimg = this.imglistArry.length;
var tempArray = res.data.data;
tempArray.forEach(item => {
item.checked = [];
});
this.serviceList = tempArray;
}
},
null
);
},
selectImg(index) {
//选取弹窗图片
this.imglistArry[index].isShow = !this.imglistArry[index].isShow;
let num = 0;
if (this.imglistArry != null) {
this.imglistArry.forEach(x => {
if (x.isShow == true) {
num++;
});
},
inithotelPolicy() {
//初始化酒店政策
let msg = {
Key: "SK_HOTEL_POLICY"
};
this.apipost("dict_post_GetList", msg, response => {
if (response.data.resultCode == 1) {
this.GetPolicy = response.data.data;
}
this.selecnum = num;
});
}
},
initHotelData() {
var msg = {
hotelID: this.hotelID
};
this.getDinnerList();
var _self = this;
this.apipost(
"hotel_post_GetAll",
msg,
res => {
if (res.data.resultCode == 1) {
_self.addMsg = res.data.data;
if (_self.addMsg.Country > 0) {
this.GetSubAreaList(_self.addMsg.Country, 1, 1);
}
if (_self.addMsg.Province > 0) {
this.GetSubAreaList(_self.addMsg.Province, 2, 1);
}
if (_self.addMsg.IsUseDinner == 1) {
_self.isDinner = true;
} else {
_self.isDinner = false;
},
initimgList() {
//初始化弹窗图片列表
var keyWord = this.imgKeyword;
this.imglistArry = [];
let msg = {
Name: keyWord
};
this.apipost(
"hotel_post_GetPicList",
msg,
res => {
if (res.data.resultCode == 1) {
this.imglistArry = res.data.data;
this.totalimg = this.imglistArry.length;
}
if (_self.addMsg.UseDinnerType != "") {
_self.UseDinnerformString = _self.addMsg.UseDinnerType.split(",");
_self.UseDinnerformString.forEach(x => {
_self.UseDinnerString.push(Number(x));
});
},
null
);
},
selectImg(index) {
//选取弹窗图片
this.imglistArry[index].isShow = !this.imglistArry[index].isShow;
let num = 0;
if (this.imglistArry != null) {
this.imglistArry.forEach(x => {
if (x.isShow == true) {
num++;
}
this.selecnum = num;
});
}
},
initHotelData() {
var msg = {
hotelID: this.hotelID
};
this.getDinnerList();
var _self = this;
this.apipost(
"hotel_post_GetAll",
msg,
res => {
if (res.data.resultCode == 1) {
_self.addMsg = res.data.data;
if (_self.addMsg.Country > 0) {
this.GetSubAreaList(_self.addMsg.Country, 1, 1);
}
if (_self.addMsg.Province > 0) {
this.GetSubAreaList(_self.addMsg.Province, 2, 1);
}
if (_self.addMsg.IsUseDinner == 1) {
_self.isDinner = true;
} else {
_self.isDinner = false;
}
if (_self.addMsg.UseDinnerType != "") {
_self.UseDinnerformString = _self.addMsg.UseDinnerType.split(",");
_self.UseDinnerformString.forEach(x => {
_self.UseDinnerString.push(Number(x));
});
}
if (_self.addMsg.OpenPlatform != "") {
_self.OpenPlatformStrings = _self.addMsg.OpenPlatform.split(",");
_self.OpenPlatformStrings.forEach(x => {
_self.openplatString.push(Number(x));
});
}
if (_self.addMsg.FacilityServices != "") {
var itemArray = JSON.parse(_self.addMsg.FacilityServices);
_self.serviceList.forEach(item => {
var isFind = false;
for (var i = 0; i < itemArray.length; i++) {
if (
item.ID == itemArray[i].ID &&
itemArray[i].hasOwnProperty("checked")
) {
item.checked = itemArray[i].checked;
break;
if (_self.addMsg.OpenPlatform != "") {
_self.OpenPlatformStrings = _self.addMsg.OpenPlatform.split(",");
_self.OpenPlatformStrings.forEach(x => {
_self.openplatString.push(Number(x));
});
}
if (_self.addMsg.FacilityServices != "") {
var itemArray = JSON.parse(_self.addMsg.FacilityServices);
_self.serviceList.forEach(item => {
var isFind = false;
for (var i = 0; i < itemArray.length; i++) {
if (
item.ID == itemArray[i].ID &&
itemArray[i].hasOwnProperty("checked")
) {
item.checked = itemArray[i].checked;
break;
}
}
}
});
}
if (_self.addMsg.HotelPolicy != "") {
_self.GetPolicy = JSON.parse(_self.addMsg.HotelPolicy);
}
_self.isBook = _self.addMsg.IsSelfBook;
if (res.data.data.List != null) {
//临时文件
res.data.data.List.forEach(imgItem => {
var obj = this.$DMCUtils.DMCImageObj();
obj.ID = imgItem.ID;
obj.Path = imgItem.Path;
obj.PicID = imgItem.PicID;
obj.ShowPath =
_self.imgBeforeFile +
imgItem.Path;
this.HotelImageArray.push(obj);
});
});
}
if (_self.addMsg.HotelPolicy != "") {
_self.GetPolicy = JSON.parse(_self.addMsg.HotelPolicy);
}
_self.isBook = _self.addMsg.IsSelfBook;
if (res.data.data.List != null) {
//临时文件
res.data.data.List.forEach(imgItem => {
var obj = this.$DMCUtils.DMCImageObj();
obj.ID = imgItem.ID;
obj.Path = imgItem.Path;
obj.PicID = imgItem.PicID;
obj.ShowPath =
_self.imgBeforeFile +
imgItem.Path;
this.HotelImageArray.push(obj);
});
}
} else {
_self.Error(res.data.message);
}
},
null
);
},
goUrl(path) {
this.$router.push({
path: path,
query: {
cache: true
}
});
},
submitForm(addMsg) {
//提交创建、修改表单
let that = this;
that.$refs[addMsg].validate(valid => {
if (valid) {
that.saveResource();
} else {
_self.Error(res.data.message);
return false;
}
},
null
);
},
goUrl(path) {
this.$router.push({
path: path,
query: {
cache: true
});
},
//选中的数组
checkImgList() {
if (this.imglistArry != null) {
this.imglistArry.forEach(x => {
if (x.isShow == true) {
var obj = this.$DMCUtils.DMCImageObj();
obj.Path = "/U" + this.$commonUtils.getCaption(x.Path, "Upload");
obj.ShowPath = x.Path;
obj.PicID = x.ID;
this.HotelImageArray.push(obj);
}
x.isShow = false;
this.selecnum = 0;
});
}
});
},
submitForm(addMsg) {
//提交创建、修改表单
let that = this;
that.$refs[addMsg].validate(valid => {
if (valid) {
that.saveResource();
this.addimg = false;
},
googleMap() {
this.selectAddress = false;
},
closeDMCchooseImg() {
this.addimg = false;
},
headCall(msg) {
// this.addMsg.QCountry = msg.country;
// this.addMsg.QProvince = msg.province;
// this.addMsg.QCity = msg.city;
// this.addMsg.Address = msg.address;
this.addMsg.Lng = msg.lng;
this.addMsg.Lat = msg.lat;
},
getDMCimg(imgArr) {
imgArr.forEach(imgItem => {
var obj = this.$DMCUtils.DMCImageObj();
obj.ID = 0;
obj.Path = this.$commonUtils.removeDomain(imgItem.Path);
obj.PicID = imgItem.ID;
obj.ShowPath = imgItem.Path + "?x-oss-process=image/resize,l_140";
this.HotelImageArray.push(obj);
});
},
getSuplier() {
let msg = {
Type: 1
}; //HK新增查询条件
this.apipost(
"supplier_post_GetAllList",
msg,
response => {
if (response.data.resultCode == 1) {
this.SupplierList = response.data.data;
}
},
null
);
},
//获取用餐列表
getDinnerList() {
if (this.isDinner) {
this.addMsg.IsUseDinner = 1;
} else {
return false;
this.addMsg.IsUseDinner = 0;
}
});
},
//选中的数组
checkImgList() {
if (this.imglistArry != null) {
this.imglistArry.forEach(x => {
if (x.isShow == true) {
var obj = this.$DMCUtils.DMCImageObj();
obj.Path = "/U" + this.$commonUtils.getCaption(x.Path, "Upload");
obj.ShowPath = x.Path;
obj.PicID = x.ID;
this.HotelImageArray.push(obj);
}
x.isShow = false;
this.selecnum = 0;
});
}
this.addimg = false;
},
googleMap() {
this.selectAddress = false;
},
closeDMCchooseImg() {
this.addimg = false;
},
headCall(msg) {
// this.addMsg.QCountry = msg.country;
// this.addMsg.QProvince = msg.province;
// this.addMsg.QCity = msg.city;
// this.addMsg.Address = msg.address;
this.addMsg.Lng = msg.lng;
this.addMsg.Lat = msg.lat;
},
getDMCimg(imgArr) {
imgArr.forEach(imgItem => {
var obj = this.$DMCUtils.DMCImageObj();
obj.ID = 0;
obj.Path = this.$commonUtils.removeDomain(imgItem.Path);
obj.PicID = imgItem.ID;
obj.ShowPath = imgItem.Path + "?x-oss-process=image/resize,l_140";
this.HotelImageArray.push(obj);
});
},
getSuplier() {
let msg = {
Type: 1
}; //HK新增查询条件
this.apipost(
"supplier_post_GetAllList",
msg,
response => {
if (response.data.resultCode == 1) {
this.SupplierList = response.data.data;
let msg = {};
this.apipost(
"hotel_get_GetUseDinnerTypeList",
msg,
res => {
if (res.data.resultCode == 1) {
this.dinerList = res.data.data;
}
},
null
);
},
//获取国家
GetCounrty() {
this.apipost(
"dict_post_Destination_GetCountry", {},
res => {
this.CountryList = res.data.data;
},
err => {}
);
},
//获取省份和城市
GetSubAreaList(ID, type, isClear) {
let msg = {
Id: ID
};
if (type == 1) {
if (isClear != 1) {
this.addMsg.Province = 0;
this.addMsg.City = 0;
}
},
null
);
},
//获取用餐列表
getDinnerList() {
if (this.isDinner) {
this.addMsg.IsUseDinner = 1;
} else {
this.addMsg.IsUseDinner = 0;
}
let msg = {};
this.apipost(
"hotel_get_GetUseDinnerTypeList",
msg,
res => {
if (res.data.resultCode == 1) {
this.dinerList = res.data.data;
} else if (type == 2) {
if (isClear != 1) {
this.addMsg.City = 0;
}
},
null
);
},
//获取国家
GetCounrty() {
this.apipost(
"dict_post_Destination_GetCountry",
{},
res => {
this.CountryList = res.data.data;
},
err => {}
);
},
//获取省份和城市
GetSubAreaList(ID, type, isClear) {
let msg = {
Id: ID
};
if (type == 1) {
if (isClear != 1) {
this.addMsg.Province = 0;
this.addMsg.City = 0;
}
} else if (type == 2) {
if (isClear != 1) {
this.addMsg.City = 0;
if (this.addMsg.Country != 0) {
this.apipost(
"dict_post_Destination_GetChildList",
msg,
res => {
if (type == 1) {
this.ProvinceList = res.data.data;
} else if (type == 2) {
this.CityList = res.data.data;
}
},
err => {}
);
}
}
if (this.addMsg.Country != 0) {
},
//获取支付方式列表
GetPayList() {
this.apipost(
"dict_post_Destination_GetChildList",
msg,
"dmc_post_Get_GetPayStyleList", {},
res => {
if (type == 1) {
this.ProvinceList = res.data.data;
} else if (type == 2) {
this.CityList = res.data.data;
if (res.data.resultCode == 1) {
this.PayList = res.data.data;
}
},
err => {}
);
}
},
//获取支付方式列表
GetPayList() {
this.apipost(
"dmc_post_Get_GetPayStyleList",
{},
res => {
if (res.data.resultCode == 1) {
this.PayList = res.data.data;
}
},
err => {}
);
},
//获取酒店类型列表
GetHotelTypeList() {
this.apipost(
"dmc_post_Get_GetHotelType",
{},
res => {
if (res.data.resultCode == 1) {
this.HotelTypeList = res.data.data;
}
},
err => {}
);
},
GetHotelPirceTypeList() {
this.apipost(
"dmc_post_Get_GetHotelPriceType",
{},
res => {
if (res.data.resultCode == 1) {
this.HotelPirceTypeList = res.data.data;
}
},
err => {}
);
},
//获取酒店类型列表
GetHotelTypeList() {
this.apipost(
"dmc_post_Get_GetHotelType", {},
res => {
if (res.data.resultCode == 1) {
this.HotelTypeList = res.data.data;
}
},
err => {}
);
},
GetHotelPirceTypeList() {
this.apipost(
"dmc_post_Get_GetHotelPriceType", {},
res => {
if (res.data.resultCode == 1) {
this.HotelPirceTypeList = res.data.data;
}
},
err => {}
);
},
//图片左移右移
// ExchangeImg(index, IsMove) {
// var imgItem = this.HotelImageArray[index];
// //左移
// if (IsMove == 0) {
// var upItem = this.HotelImageArray[index - 1];
// this.$set(this.HotelImageArray, index - 1, imgItem);
// this.$set(this.HotelImageArray, index, upItem);
// } else {
// //右移动
// var downItem = this.HotelImageArray[index + 1];
// this.$set(this.HotelImageArray, index + 1, imgItem);
// this.$set(this.HotelImageArray, index, downItem);
// }
// },
},
//图片左移右移
// ExchangeImg(index, IsMove) {
// var imgItem = this.HotelImageArray[index];
// //左移
// if (IsMove == 0) {
// var upItem = this.HotelImageArray[index - 1];
// this.$set(this.HotelImageArray, index - 1, imgItem);
// this.$set(this.HotelImageArray, index, upItem);
// } else {
// //右移动
// var downItem = this.HotelImageArray[index + 1];
// this.$set(this.HotelImageArray, index + 1, imgItem);
// this.$set(this.HotelImageArray, index, downItem);
// }
// },
mounted() {
let userInfo = this.getLocalStorage()
//有权限操作的部门
if (userInfo.RB_Department_Id == 240 || userInfo.RB_Department_Id == 1 || userInfo.RB_Department_Id == 3 ||
userInfo.RB_Branch_id == 49) {
this.IsHaveAuth = 1;
}
this.GetPayList();
this.GetHotelTypeList();
this.GetHotelPirceTypeList();
this.qMsg = this.$route.query.qMsg;
this.hotelID = this.$route.query.id;
var jsArray = document.getElementsByTagName("script");
var flag = false;
},
mounted() {
this.GetPayList();
this.GetHotelTypeList();
this.GetHotelPirceTypeList();
this.qMsg = this.$route.query.qMsg;
this.hotelID = this.$route.query.id;
var jsArray = document.getElementsByTagName("script");
var flag = false;
var jsUrl = this.domainManager().GoogleMapUrl;
for (var i = 0; i < jsArray.length; i++) {
if (jsArray[i].src == jsUrl) {
flag = true;
}
}
if (!flag) {
const s = document.createElement("script");
s.type = "text/javascript";
s.src = jsUrl;
document.body.appendChild(s);
}
this.GetCounrty();
this.inithotelService(); //初始化酒店服务
this.inithotelPolicy(); //初始化酒店政策
this.init(); //初始化星级和开放平台
this.getSuplier(); //初始化供应商
var jsUrl = this.domainManager().GoogleMapUrl;
for (var i = 0; i < jsArray.length; i++) {
if (jsArray[i].src == jsUrl) {
flag = true;
if (this.hotelID > 0) {
this.initHotelData();
}
}
if (!flag) {
const s = document.createElement("script");
s.type = "text/javascript";
s.src = jsUrl;
document.body.appendChild(s);
}
this.GetCounrty();
this.inithotelService(); //初始化酒店服务
this.inithotelPolicy(); //初始化酒店政策
this.init(); //初始化星级和开放平台
this.getSuplier(); //初始化供应商
};
if (this.hotelID > 0) {
this.initHotelData();
}
}
};
</script>
......@@ -133,16 +133,16 @@
</el-upload>
</div>
</td>
<!-- 房间预定数 -->
<!-- 房间数 -->
<td>
<el-input class='w40 tcenter' maxlength="2" @keyup.native="checkPrice(childItem,'HouseTypeCount')"
v-model='childItem.HouseTypeCount'></el-input>
v-model='childItem.HouseTypeCount' :disabled="childIndex<4?true:false"></el-input>
</td>
<!-- 预定人数 -->
<td>
<el-input class='w40 tcenter' maxlength="2" @keyup.native="checkInteger(childItem,'BookNum')"
@input="calculationPrice(subItem)" v-model='childItem.BookNum'></el-input>
@input="calculationPrice(subItem)" v-model='childItem.BookNum' :disabled="childIndex<4?true:false">
</el-input>
</td>
<!-- 尚差房间数 -->
<td>
......@@ -200,10 +200,11 @@
<td>
<el-select class='w135 sel' v-model='subItem.PayStyle' :placeholder="$t('pub.pleaseSel')">
<el-option label='请选择' :value='0'></el-option>
<el-option label='现付' :value='1'></el-option>
<el-option label='签单' :value='2'></el-option>
<el-option label='实物抵扣' :value='5'></el-option>
<el-option label='预付' :value='4'></el-option>
<el-option label='现付' :value='1' v-if="subItem.PayStyleExt==1"></el-option>
<el-option label='签单' :value='2' v-if="subItem.PayStyleExt==2"></el-option>
<el-option label='实物抵扣' :value='3' v-if="subItem.PayStyleExt==3"></el-option>
<el-option label='预付' :value='4' v-if="subItem.PayStyleExt==4"></el-option>
<el-option label='预付款抵扣' :value='5' v-if="subItem.PayStyleExt==5"></el-option>
<el-option label='公司合团支付' :value='6'></el-option>
</el-select>
</td>
......@@ -240,6 +241,9 @@
<!-- 操作 -->
<td v-if="childIndex==0" :rowspan="5">
<!--v-if="subItem.OPState!=1"-->
<template v-if="subItem.OPState!=1">
<span class="Hotel_red">OP选房确认</span>
</template>
<template>
<el-tooltip class="item" effect="dark" content="保存" placement="top-start">
<el-button icon="iconfont icon-baocun1" @click="SaveSingle(subItem)" type="primary"></el-button>
......@@ -253,7 +257,7 @@
</el-button>
</el-tooltip>
</template>
<!-- <template v-else>
<!--<template v-else>
<span class="Hotel_red">OP选房确认</span>
</template> -->
</td>
......@@ -466,6 +470,8 @@
obj.Address = ckedObj.Address;
obj.Tel = ckedObj.Tel;
obj.NewHotelName = ckedObj.Name;
obj.PayStyle = ckedObj.PayStyle;
obj.PayStyleExt=ckedObj.PayStyle;
} else {
obj.Address = '';
obj.Tel = '';
......@@ -509,11 +515,11 @@
})
this.loading = true;
this.apipost('dmcstatistics_get_SetHotelOrder', this.list, res => {
this.loading = false;
if (res.data.resultCode == 1) {
this.getList();
this.Success(res.data.message);
} else {
this.loading = false
this.Error(res.data.message);
}
}, err => {})
......@@ -579,7 +585,7 @@
let width = window.innerWidth - 50;
let height = window.innerHeight - 65 - 55;
this.boxHeight = height;
this.offsetwidth = width
this.offsetwidth = width;
this.getList();
}
}
......
......@@ -121,6 +121,7 @@
<el-option label='签单' value='2'></el-option>
<el-option label='实物抵扣' value='3'></el-option>
<el-option label='预付' value='4'></el-option>
<el-option label='公司合团支付' value='6'></el-option>
</el-select>
</td>
</tr>
......@@ -136,6 +137,14 @@
<el-option label='导游预订' value='2'></el-option>
</el-select>
</td>
</tr>
<tr v-show="subItem.PayStyle==6">
<td width="60" style="text-align:right;" >
付款团号:
</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;">
......
......@@ -1477,8 +1477,8 @@
<div>领队导游</div>
</div>
</div>
<!-- v-if="tuanInfo.config.IsOrder!=1" -->
<div style="float:right">
<!-- -->
<div v-if="tuanInfo.config.IsOrder!=1" style="float:right">
<span style="color:#f78989"> 订单操作已关闭,如需修改请联系OP.</span>
</div>
......
......@@ -702,6 +702,49 @@
<p><span>出发城市</span>{{item.StartCityName}}</p>
<p><span>返回城市</span>{{item.ReturnArriveCityName}}</p>
<p><span>出团公司</span>{{item.OutBranchName}}</p>
<p v-if="item.LineID==14 && item.HotelOrderListReports && item.HotelOrderListReports.length>0 ">
<el-popover width="600" trigger="click" popper-class="TC_HotelPop">
<table width="100%" border="0" cellspacing="0" cellpadding="0" class="singeRowTable">
<tr>
<th width="100">日期</th>
<th style="border-right:1px solid #E5E5E5;width:150px;">酒店</th>
<th style="border-right:1px solid #E5E5E5;width:240px;">酒店情况</th>
<th style="border-right:1px solid #E5E5E5;width:100px">占房时间</th>
</tr>
<template v-for="subItem in item.HotelOrderListReports">
<tr v-for="(childItem,childIndex) in subItem.SubList">
<td width="100" v-if="childIndex==0" :rowspan="subItem.SubList.length">
{{subItem.UseDay}}
</td>
<td style="text-align:left;padding-left:3px;">
{{childItem.HotelName}}
</td>
<td style="text-align:left;padding-left:3px;">
<a style="color:green" v-if="childItem.HotelName!='温馨的家'">
<template v-if="childItem.OPState==1">
OP-OK
</template>
<template v-else-if="childItem.OPState==2&&childItem.DMCState==0">
OP-暂定
</template>
<template v-else>
{{childItem.DMCState==1?"地接-OK":(childItem.DMCState==2?"地接-暂定":"地接-未操作")}}
</template>
</a>
<a v-if="(childItem.OPState==1||(childItem.OPState==2 && childItem.DMCState==0))&& childItem.UseCount>0 " style="color:green">
【使用: {{childItem.UseCount}} 间 {{childItem.CostPrice!=0?"价格:"+childItem.CostPrice:""}} 】
</a>
</td>
<td>
<template v-if="childItem.OPState==1||(childItem.OPState==2 && childItem.DMCState==0)"> {{childItem.CreateDateStr}}</template>
</td>
</tr>
</template>
</table>
<span slot="reference" class="price" style="cursor:pointer;text-decoration:underline;">酒店预订状况</span>
</el-popover>
</p>
</div>
<div class="d4">
<p><i class="iconfont icon-jiage"></i>价格信息</p>
......@@ -782,51 +825,6 @@
<span slot="reference" class="price">查看价格明细</span>
</el-popover>
</p>
<!-- <p v-if="item.LineID==14 && item.HotelOrderListReports && item.HotelOrderListReports.length>0 ">
<el-popover width="600" trigger="click" popper-class="TC_HotelPop">
<div>
<table width="100%" border="0" cellspacing="0" cellpadding="0" class="singeRowTable">
<tr>
<th width="100">日期</th>
<th style="border-right:1px solid #E5E5E5">酒店情况</th>
<th width="100" style="border-right:1px solid #E5E5E5">占房时间</th>
</tr>
<tr v-for="subItem in item.HotelOrderListReports">
<td width="100">
{{subItem.UseDay}}
</td>
<td style="text-align:left;padding:3px 10px;">
<template v-if="subItem.SubList">
<div v-if="subItem.SubList.length==1 && subItem.SubList[0].UseCount>0 ">
{{subItem.SubList[0].HotelName}}
<a style="color:green">{{subItem.SubList[0].Status==1?"【OK】":"【暂定】"}}</a>
【<a
style="color:green"> 本团使用库存:{{subItem.SubList[0].UseCount}}
{{subItem.SubList[0].CostPrice!=0?"价格:"+subItem.SubList[0].CostPrice:""}}</a>】</div>
<template v-else v-for="childItem in subItem.SubList">
<div>{{childItem.HotelName}} {{childItem.HotelName!="温馨的家"?"【暂定】":""}}</div>
</template>
</template>
</td>
<td>
<template v-if="subItem.SubList">
<div v-if="subItem.SubList.length==1 && subItem.SubList[0].UseCount>0 ">
{{subItem.SubList[0].CreateDateStr}}
</div>
<template v-else v-for="childItem in subItem.SubList">
<div></div>
</template>
</template>
</td>
</tr>
</table>
</div>
<span slot="reference" class="price">酒店信息</span>
</el-popover>
</p> -->
</div>
<div class="d5">
<p><i class="iconfont icon-tuanwei"></i>团位信息</p>
......
......@@ -2367,13 +2367,31 @@
</div>
<table class="RS_visaTable">
<tr>
<th>签发地</th>
<th>类型</th>
<th width=100>到期日</th>
<th colspan="3">请假信息</th>
</tr>
<tr>
<td colspan="3">无签证信息</td>
<th>姓名</th>
<th>类型</th>
<th width=100>时间</th>
</tr>
<template v-if="LeaderHolidyList&&LeaderHolidyList.length>0">
<tr v-for="(leaderItem,leaderIndex) in LeaderHolidyList">
<td>
{{LeaderInfoList.LeaderGuide.Surname}}{{LeaderInfoList.LeaderGuide.Name}}
</td>
<td>
请假
</td>
<td>
{{leaderItem.StartDateStr2}}{{leaderItem.EndDateStr2}}
</td>
</tr>
</template>
<template v-else>
<tr>
<td colspan="3">暂无请假信息</td>
</tr>
</template>
</table>
</div>
<div>
......@@ -2966,6 +2984,8 @@
ScheduleArray: [],
ckedIndex: -1,
LeaderInfoList: [],
//领队请假信息
LeaderHolidyList: [],
beforeInfo: {
DuringHoliday: '',
date: '',
......@@ -3136,7 +3156,8 @@
this.isShowLayer = false;
this.isShowLayer2 = true;
}
let maxPeopleNum = (Number(this.addMsg.ManNum) + Number(this.addMsg.ChirdNoNeedBedNum) + Number(this.addMsg.ChirdNeedBedNum) + Number(this.addMsg.OldPeopleNum) + Number(this.addMsg.AirticketNum) )
let maxPeopleNum = (Number(this.addMsg.ManNum) + Number(this.addMsg.ChirdNoNeedBedNum) + Number(this
.addMsg.ChirdNeedBedNum) + Number(this.addMsg.OldPeopleNum) + Number(this.addMsg.AirticketNum))
this.Unit_PriceList = [];
this.apipost('sellorder_post_GetLessPrice', {
"TCID": obj.TCID,
......@@ -4426,6 +4447,8 @@
},
//点击选中名单
getLeaderInfo(index, LeaderId) {
this.LeaderInfoList = {};
this.LeaderHolidyList = [];
this.ckedIndex = index;
let msg = {
ID: LeaderId,
......@@ -4435,6 +4458,7 @@
"leader_Get_GetPriceLeaderInfo", msg,
res => {
if (res.data.resultCode == 1) {
this.LeaderHolidyList=res.data.data.holidyList;
this.LeaderInfoList = res.data.data;
this.beforeInfo.DuringHoliday = "";
this.beforeInfo.date = "";
......
......@@ -182,7 +182,7 @@
{{item.StartCityName}}</td>
<td>{{item.LtName}}</td>
<td>{{item.StartDateStr}} {{item.AlCode}}</td>
<td><span title="点击跳转到团控列表" :class="item.TCID>0?'RS_RedType PingFangSC Order_RS':'Order_RS'" @click="goUrl('TravelControlList',item.TCNUM,'团控列表')">{{item.TCID}}</span></td>
<td><span title="点击跳转到团控列表" :class="item.TCID>0?'RS_RedType PingFangSC Order_RS':'Order_RS'" @click="goUrlTCList('TravelControlList',item.TCNUM,'团控列表')">{{item.TCID}}</span></td>
<td>{{item.InOut}}</td>
<td>{{item.InOutTime}}</td>
<td>{{item.B2CMemberPrice}}</td>
......@@ -251,6 +251,16 @@
};
},
methods: {
goUrlTCList(path, TCNUMS, title) {
this.$router.push({
name: path,
query: {
tcmun: TCNUMS,
blank: 'y',
tab: title
}
})
},
//初始化公司
getCompanyList() {
let userInfo = this.getLocalStorage();
......
......@@ -141,7 +141,11 @@
.span_all {
margin-left: 15px;
}
.TeamExpectList{
max-height:105px;
overflow:auto;
margin-bottom:0!important;
}
</style>
<template>
......@@ -233,26 +237,29 @@
<div class="Team_firstTitle">
<span class="Team_comCoinType Team_lirun">
<i class="iconfont icon-qian"></i>
</span>其他
</span>提成
</div>
<div>提成:</div>
<div class="Team_Incontent" style="height:50px;overflow:auto;margin-bottom:10px;">
<div>
<div style="margin-bottom:6px;">
<div class="Team_Incontent" style="margin-bottom:0;">
<div class="TeamExpectList">
<template v-for="subItem in DataList.ExpectedCutList">
<div style="margin-bottom:5px;">{{subItem.BranchName}}{{subItem.expectedCut}} </div>
</template>
</div>
</div>
<div>联运成本:<span>¥{{DataList.LYCB}}</span></div>
</div>
</div>
</el-col>
<el-col :span="4">
<div class="Team_DList">
<div class="Team_firstTitle">
<span class="Team_comCoinType Team_lirun">
<i class="iconfont icon-qian"></i>
</span>优惠
</span>挂账信息
</div>
<div class="Team_Incontent">
<div>金额:<span>¥{{DataList.TeamBalance.DiscountMoney}}</span></div>
<div>挂账总金额:<span>¥{{moneyFormat(AllCont.Income - AllCont.Expend)}}</span></div>
<div>挂账总支出:<span>¥{{moneyFormat(AllCont.Expend)}}</span></div>
<div>挂账总收入:<span>¥{{moneyFormat(AllCont.Income)}}</span></div>
</div>
</div>
</el-col>
......@@ -261,15 +268,14 @@
<div class="Team_firstTitle">
<span class="Team_comCoinType Team_lirun">
<i class="iconfont icon-qian"></i>
</span>挂账信息
</span>优惠
</div>
<div class="Team_Incontent">
<div>挂账总金额:<span>¥{{moneyFormat(AllCont.Income - AllCont.Expend)}}</span></div>
<div>挂账总支出:<span>¥{{moneyFormat(AllCont.Expend)}}</span></div>
<div>挂账总收入:<span>¥{{moneyFormat(AllCont.Income)}}</span></div>
<div>金额:<span>¥{{DataList.TeamBalance.DiscountMoney}}</span></div>
</div>
</div>
</el-col>
</el-row>
</div>
</div>
......
......@@ -481,13 +481,56 @@
{{item.OutBranchName}}
</p>
<p class="travelnowrap" v-if="item.WordPath!=''">
<a style="corsor:pointer;"
<a style="cursor:pointer;"
:href="domainManager().ViittoFileUrl+item.WordPath">{{$t('Operation.Op_downLoadword')}}</a>
</p>
<p class="travelnowrap" v-if="item.ClearOrderHour>0">
<span>已设定清位</span>
<span class="TCL-greenType">{{item.ClearOrderHour}}小时</span>
</p>
<p v-if="item.LineID==14 && item.HotelOrderListReports && item.HotelOrderListReports.length>0 ">
<el-popover width="600" trigger="click" popper-class="TC_HotelPop">
<table width="100%" border="0" cellspacing="0" cellpadding="0" class="singeRowTable">
<tr>
<th width="100">日期</th>
<th style="border-right:1px solid #E5E5E5;width:150px;">酒店</th>
<th style="border-right:1px solid #E5E5E5;width:240px;">酒店情况</th>
<th style="border-right:1px solid #E5E5E5;width:100px">占房时间</th>
</tr>
<template v-for="subItem in item.HotelOrderListReports">
<tr v-for="(childItem,childIndex) in subItem.SubList">
<td width="100" v-if="childIndex==0" :rowspan="subItem.SubList.length">
{{subItem.UseDay}}
</td>
<td style="text-align:left;padding-left:3px;">
{{childItem.HotelName}}
</td>
<td style="text-align:left;padding-left:3px;">
<a style="color:green" v-if="childItem.HotelName!='温馨的家'">
<template v-if="childItem.OPState==1">
OP-OK
</template>
<template v-else-if="childItem.OPState==2&&childItem.DMCState==0">
OP-暂定
</template>
<template v-else>
{{childItem.DMCState==1?"地接-OK":(childItem.DMCState==2?"地接-暂定":"地接-未操作")}}
</template>
</a>
<a v-if="(childItem.OPState==1||(childItem.OPState==2 && childItem.DMCState==0))&& childItem.UseCount>0 " style="color:green">
【使用: {{childItem.UseCount}} 间 {{childItem.CostPrice!=0?"价格:"+childItem.CostPrice:""}} 】
</a>
</td>
<td>
<template v-if="childItem.OPState==1||(childItem.OPState==2 && childItem.DMCState==0)"> {{childItem.CreateDateStr}}</template>
</td>
</tr>
</template>
</table>
<span slot="reference" class="price" style="cursor:pointer;text-decoration:underline;">酒店预订状况</span>
</el-popover>
</p>
</div>
</div>
<div class="el-col" style="width:190px;">
......@@ -557,49 +600,7 @@
<span slot="reference" class="price">{{$t('Operation.Op_priceDetail')}}</span>
</el-popover>
</p>
<p v-if="item.LineID==14 && item.HotelOrderListReports && item.HotelOrderListReports.length>0 ">
<el-popover width="600" trigger="click" popper-class="TC_HotelPop">
<table width="100%" border="0" cellspacing="0" cellpadding="0" class="singeRowTable">
<tr>
<th width="100">日期</th>
<th style="border-right:1px solid #E5E5E5;width:150px;">酒店</th>
<th style="border-right:1px solid #E5E5E5;width:240px;">酒店情况</th>
<th style="border-right:1px solid #E5E5E5;width:100px">占房时间</th>
</tr>
<template v-for="subItem in item.HotelOrderListReports">
<tr v-for="(childItem,childIndex) in subItem.SubList">
<td width="100" v-if="childIndex==0" :rowspan="subItem.SubList.length">
{{subItem.UseDay}}
</td>
<td style="text-align:left;padding-left:3px;">
{{childItem.HotelName}}
</td>
<td style="text-align:left;padding-left:3px;">
<a style="color:green" v-if="childItem.HotelName!='温馨的家'">
<template v-if="childItem.OPState==1">
OP-OK
</template>
<template v-else-if="childItem.OPState==2&&childItem.DMCState==0">
OP-暂定
</template>
<template v-else>
{{childItem.DMCState==1?"地接-OK":(childItem.DMCState==2?"地接-暂定":"地接-未操作")}}
</template>
</a>
<a v-if="(childItem.OPState==1||(childItem.OPState==2 && childItem.DMCState==0))&& childItem.UseCount>0 " style="color:green">
【使用: {{childItem.UseCount}} 间 {{childItem.CostPrice!=0?"价格:"+childItem.CostPrice:""}} 】
</a>
</td>
<td>
<template v-if="childItem.OPState==1||(childItem.OPState==2 && childItem.DMCState==0)"> {{childItem.CreateDateStr}}</template>
</td>
</tr>
</template>
</table>
<span slot="reference" class="price">酒店信息</span>
</el-popover>
</p>
</div>
</div>
<div class="el-col" style="width:150px;">
......
......@@ -542,7 +542,6 @@
{
obj.CostPrice = tempCostFee;
}
}
}else{
obj.PayType=null;
......
......@@ -110,8 +110,17 @@
<el-option label='签单' value='2'></el-option>
<el-option label='实物抵扣' value='5'></el-option>
<el-option label='预付' value='4'></el-option>
<el-option label='公司合团支付' value='6'></el-option>
</el-select>
</td>
</tr>
<tr v-show="subItem.PayStyle==6">
<td width="60" style="text-align:right;" >
付款团号:
</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;">
......@@ -121,6 +130,7 @@
<el-input class='w135' v-model='subItem.CombinationNum' type="text"></el-input>
</td>
</tr>
</table>
</td>
<td v-if="childIndex==0" :rowspan="3">
......
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