Commit 98d22fb8 authored by zhengke's avatar zhengke

增加

parent f6f76472
<style>
@import "../../assets/css/DMC.css";
</style>
<template>
<div class="flexOne changInfo">
<div class="resource-content clearfix">
<el-form :model="addMsg" :rules="rules" ref="addMsg">
<div class="resource-baseinfo">
<span class="resource-lititle">{{$t('hotel.hotel_baseinfo')}}</span>
<el-form-item :label="$t('hotel.hotel_name')" prop="Name">
<el-input type="text" v-model="addMsg.Name" maxlength="100" class="w300"></el-input>
</el-form-item>
<el-form-item :label="$t('ground.jiudianmingzi')">
<el-input type="text" v-model="addMsg.HotelRealName" maxlength="100" class="w300"></el-input>
</el-form-item>
<el-form-item :label="$t('hotel.hotel_describle')" prop="Descriptions">
<el-input type="textarea" v-model="addMsg.Descriptions" class="w300"></el-input>
</el-form-item>
<el-form-item :label="$t('hotel.hotel_openplatform')">
<el-select v-model="openplatString" class='multiple_input w300' multiple :placeholder="$t('pub.pleaseSel')">
<el-option v-for="item in openplatform" :key="item.ID" :label="item.Name" :value="item.ID">
</el-option>
</el-select>
</el-form-item>
<el-form-item :label="$t('hotel.hotel_brand')">
<el-input type="text" v-model="addMsg.ChainBrand" maxlength="50" class="w300"></el-input>
</el-form-item>
<el-form-item :label="$t('hotel.hotel_starlevel')">
<el-select class="w300" :placeholder="$t('pub.unlimitedSel')" v-model="addMsg.Star">
<el-option :label="$t('pub.unlimitedSel')" :value='SelectDefaultValue'></el-option>
<el-option v-for="item in starslevel" :key="item.ID" :label="item.Name" :value="item.ID"></el-option>
</el-select>
</el-form-item>
<el-form-item :label="$t('hotel.hotel_website')">
<el-input class="w300" v-model="addMsg.URL" maxlength="50">
<template slot="prepend">https://</template>
</el-input>
</el-form-item>
<el-form-item :label="$t('ground.shifouyuyue')">
<el-switch v-model="addMsg.AppointmentStyle" :active-value="inActive" :inactive-value="notInActive">
</el-switch>
</el-form-item>
<el-form-item :label="$t('ground.zhifufangshi')">
<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="$t('ground.jiudianleixing')">
<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="$t('Operation.Op_price')">
<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">
</el-option>
</el-select>
</el-form-item>
<span class="resource-lititle sheshi">{{$t('hotel.hotel_services')}}</span>
<div class="res-span" v-for="item in serviceList" :key="item.subCode">
<span class="common-lefttit">{{item.Content}}</span>
<span>
<el-select multiple :placeholder="$t('pub.pleaseSel')" class='multiple_input w300' v-model="item.checked">
<el-option v-for="subitem in item.list" :key="subitem.ID" :label="subitem.Content" :value="subitem.ID">
</el-option>
</el-select>
</span>
</div>
<span class="resource-lititle sheshi">{{$t('ground.jiudianyouhui')}} <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="$t('ground.kaishishuliang')">
<el-input class='w80' type="text" v-model="list.StartNum"
@keyup.native="checkInteger(list,'StartNum')" maxlength="2"></el-input>
</el-form-item>
</el-col>
<el-col :span="6" :gutter="35">
<el-form-item :label="$t('ground.jieshushuliang')">
<el-input class='w80' type="text" v-model="list.EndNum" @keyup.native="checkInteger(list,'EndNum')"
maxlength="2"></el-input>
</el-form-item>
</el-col>
<el-col :span="6" :gutter="35">
<el-form-item :label="$t('ground.fanhuanshuliang')">
<el-input class='w80' type="text" v-model="list.DisCountNum"
@keyup.native="checkInteger(list,'DisCountNum')" maxlength="2"></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>
</div>
</div>
<div class="resource-imginfo">
<div class="resourcerightTop">
<div class="toolOne">
<span class="fanbili">{{$t('restaurant.res_commissionColumn')}}</span>
<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">
</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">
<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-form-item>
<el-form-item :label="$t('system.table_country')">
<el-select :placeholder="$t('visaT.qxzguojia')" 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>
</el-select>
</el-form-item>
<el-form-item :label="$t('hotel.hotel_province')">
<el-select :placeholder="$t('ground.qingxuanzesheng')" 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>
</el-select>
</el-form-item>
<el-form-item :label="$t('hotel.hotel_city')">
<el-select :placeholder="$t('ground.qingxuanzeshi')" 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>
</el-select>
</el-form-item>
<el-form-item :label="$t('hotel.hotel_detailinfo')" prop="Address">
<el-input :placeholder="$t('fnc.qsrneirong')" class="w300 addAddress" v-model="addMsg.Address">
<el-button slot="append" @click="selectAddress = true" icon="iconfont icon-img_dw"></el-button>
</el-input>
</el-form-item>
<div class="toolOne">
<span class="fanbili">地理位置</span>
<div class="RabateDiv clearfix">
<div class="RebateCount reOne">
<div class="leftPnum">经度</div>
<input type="text" class="toolInput inpuOne" v-model="addMsg.Lng" maxlength="20">
</div>
<div class="RebateCount reTwo">
<div class="fanNum">纬度</div>
<input type="text" class="toolInput inpuTwo" v-model="addMsg.Lat" maxlength="20">
</div>
</div>
</div>
<el-form-item :label="$t('hotel.hotel_fax')">
<el-input type="text" v-model="addMsg.Fax" maxlength="20" class="w300"></el-input>
</el-form-item>
<el-form-item :label="$t('hotel.hotel_deadday')" prop="DieLine">
<el-input type="text" onkeyup="value=value.replace(/[^\d]/g,'')" maxlength="50" v-model="addMsg.DieLine"
class="w300"></el-input><span class="hotelDay">{{$t('hotel.hotel_day')}}</span>
</el-form-item>
<el-form-item :label="$t('hotel.hotel_remark')">
<el-input type="textarea" v-model="addMsg.Remark" class="w300"></el-input>
</el-form-item>
<el-form-item :label="$t('Operation.Op_Warmprompt')">
<el-input type="textarea" v-model="addMsg.WarmTip" class="w300"></el-input>
</el-form-item>
<el-form-item>
<el-switch v-model="isBook" active-color="#13ce66" inactive-color="#ff4949"
:active-text="$t('hotel.hotel_Supplier')" :inactive-text="$t('ground.ziding')"></el-switch>
</el-form-item>
<el-form-item>
<el-switch v-model="isDinner" active-color="#13ce66" @change="getDinnerList" inactive-color="#ff4949"
:active-text="$t('commonPickUp.Pick_Ding')" :inactive-text="$t('ground.buyongcan')"></el-switch>
</el-form-item>
<el-form-item :label="$t('ground.yongcanleixing')" v-show="isDinner">
<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="$t('ground.tingchechang')">
<el-switch v-model="addMsg.IsHavearking" :active-value="1" :inactive-value="0"></el-switch>
</el-form-item>
<el-form-item :label="$t('ground.tingchefei')" v-if="addMsg.IsHavearking==1">
<el-input type="text" v-model="addMsg.ParkFee" class="w300" maxlength="10"
@keyup.native="checkPrice(addMsg,'ParkFee')"></el-input>
</el-form-item>
<el-form-item :label="$t('ground.rutangshui')">
<el-input type="text" v-model="addMsg.InTangTax" class="w300" maxlength="10"
@keyup.native="checkPrice(addMsg,'InTangTax')"></el-input>
</el-form-item>
<el-form-item :label="$t('ground.chengshishui')">
<el-input type="text" v-model="addMsg.CityTax" class="w300" maxlength="10"
@keyup.native="checkPrice(addMsg,'CityTax')"></el-input>
</el-form-item>
<el-form-item :label="$t('ground.fanyongleixing')">
<el-select v-model="addMsg.RebateType" class='multiple_input w300' :placeholder="$t('pub.pleaseSel')">
<el-option :key="0" :label="$t('pub.unlimitedSel')" :value="0"> </el-option>
<el-option :key="1" :label="$t('ground.hanshuifanyong')" :value="1"> </el-option>
<el-option :key="2" :label="$t('ground.bhanshuifanyong')" :value="2"> </el-option>
</el-select>
</el-form-item>
<el-form-item :label="$t('ground.sidaojianshifoufany')">
<el-select v-model="addMsg.DriverGuideIsRebate" class='multiple_input w300'
:placeholder="$t('pub.pleaseSel')">
<el-option :key="0" :label="$t('ground.bufanyong')" :value="0"> </el-option>
<el-option :key="1" :label="$t('hotel.hotel_commission')" :value="1"> </el-option>
</el-select>
</el-form-item>
</div>
<span class="resource-lititle">{{$t('hotel.hotel_imgintroduce')}}</span>
<div class="resource-list">
<div class="resource-imglist clearfix">
<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" @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">
<i class="iconfont icon-zuoyi"></i>
</div>
<div class="re-delte" @click.stop="ExchangeImg(index,1)"
v-if="index!=HotelImageArray.length-1&&item.ShowPath">
<i class="iconfont icon-youyi"></i>
</div>
</div>
</div>
</div>
<div class="add-img">
<div class="reimg-add">
<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="">
<i class="iconfont icon-img_bdsc"></i>
</el-upload>
</div>
<div class="re-find" @click="addImgOpen"><i class="iconfont icon-img_cz"></i></div>
</div>
</div>
</div>
</div>
</div>
</el-form>
</div>
<el-dialog custom-class="resourceImgAdd" :title="$t('ground.xuanzetupian')" center :visible.sync="addimg">
<DMCchooseImg @closeImg="closeDMCchooseImg" ref="DMCchooseImg1" @headCallBack="getDMCimg" v-bind:imgType="1">
</DMCchooseImg>
</el-dialog>
<el-dialog custom-class="mapList" :title="$t('hotel.hotel_mapLocation')" center :visible.sync="selectAddress">
<googleMap @refList="googleMap" v-bind:address="addMsg.Address" @headCallBack="headCall"></googleMap>
</el-dialog>
<div class="btn-list">
<span class="common-lefttit"></span>
<button class="save-Btn" @click="submitForm('addMsg')">{{$t('pub.saveBtn')}}</button>
<button class="cancel-Btn" @click="goUrl('HotelManagement')">{{$t('pub.cancelBtn')}}</button>
</div>
<viewer :images="images" :options='imageOptions' @inited="inited" class="viewer" ref="viewer">
<img v-for="src in images" :src="src" :key="src">
</viewer>
</div>
</template>
<script>
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,
//支付方式
PayStyle: 0,
//是否有停车场
IsHavearking: 0,
//入汤税
InTangTax: 0,
//城市税
CityTax: 0,
//停车费
ParkFee: 0,
//返佣类型:1-含税返佣,2-不含税返佣
RebateType: 0,
//司导房是否返佣:0-不返佣,1-返佣
DriverGuideIsRebate: 0,
},
DiscountList: {
ID: 0,
StartNum: '',
EndNum: '',
DisCountNum: ''
},
qMsg: {},
rules: {
//表单必填验证
Name: [{
required: true,
message: this.$t('ground.qingtianxiemc'),
trigger: "change"
}],
Address: [{
required: true,
message: this.$t('ground.qingxuanzedz'),
trigger: "change"
}],
Descriptions: [{
required: true,
message: this.$t('ground.qingshuruwzms'),
trigger: "change"
}],
DieLine: [{
pattern: this.$commonUtils.Regex.el_isInteger,
message: this.$t('ground.qingshuruzqdsz')
}]
}
};
},
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);
});
},
//更新酒店图片
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(this.$t('ground.tupianczcg'));
}
},
null
);
}
},
//删除图片
delImg(index) {
var item = this.HotelImageArray[index];
this.DeleteImageArray.push(item);
this.HotelImageArray.splice(index, 1);
},
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.$t('tips.saveYes'));
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 => {
if (res.data.resultCode == 1) {
this.imglistArry = res.data.data;
this.totalimg = this.imglistArry.length;
}
},
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.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 {
return false;
}
});
},
//选中的数组
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;
}
},
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;
}
},
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 => {}
);
}
},
//获取支付方式列表
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 => {}
);
},
//图片左移右移
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;
this.GetCounrty();
this.inithotelService(); //初始化酒店服务
this.inithotelPolicy(); //初始化酒店政策
this.init(); //初始化星级和开放平台
this.getSuplier(); //初始化供应商
if (this.hotelID > 0) {
this.initHotelData();
}
}
};
</script>
<style>
.hotelmanagement .hotelResource {
width: 100%;
min-height: 500px;
margin-top: 20px;
}
.hotelmanagement .resourceListMan {
width: 215px;
height: 350px;
background-color: #fff;
border: 1px dashed #ededed;
border-radius: 4px;
margin: 0 20px 20px 0;
font-size: 12px;
color: #333333;
float: left;
}
.hotelmanagement .resourceListMan:hover {
box-shadow: 0px 0px 20px rgba(191, 191, 191, 1);
transition: all linear 0.5s;
}
.hotelmanagement .reTopInfo {
width: 100%;
height: 123px;
position: relative;
}
.hotelmanagement .reTopInfo img {
position: absolute;
width: 100%;
height: 100%;
top: 0;
border-top-left-radius: 4px;
border-top-right-radius: 4px;
}
.hotelmanagement .resTypeList {
position: absolute;
top: 10px;
left: 10px;
}
.hotelmanagement .resTypeList span {
display: inline-block;
padding: 1px 5px;
border-radius: 10px;
color: #fff;
margin-right: 10px;
}
.hotelmanagement .L1 {
background-color: #e95252;
}
.hotelmanagement .L2 {
background-color: #47bf8c;
}
.hotelmanagement .L3 {
background-color: #2aaef2;
}
.hotelmanagement .L4 {
background-color: #9cf;
}
.hotelmanagement .L5 {
background-color: #00c6ff;
margin-top: 5px;
}
.hotelmanagement .starSu {
position: absolute;
bottom: 8px;
right: 10px;
}
.hotelmanagement .sushe {
background-color: #ffc800;
display: inline-block;
padding: 1px 5px;
border-radius: 10px;
color: #fff;
}
.hotelmanagement .hotelTitle {
margin: 22px 16px 0 16px;
font-size: 14px;
color: #333333;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.hotelmanagement .brandList {
margin: 10px 16px;
}
.hotelmanagement .brandList i {
position: relative;
top: 2px;
}
.hotelmanagement .brand {
float: left;
width: 120px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.hotelmanagement .dayNum {
float: right;
}
.hotelmanagement .Address {
margin: 0 16px;
height: 17px;
overflow: hidden;
}
.hotelmanagement .Address i {
color: #bbbbbb;
}
.hotelmanagement .iconfont {
margin-right: 5px;
position: relative;
top: -4px;
}
.hotelmanagement .icon-star1 {
color: #ffc800;
}
.hotelmanagement .star i {
margin-right: 3px;
font-size: 12px;
}
.hotelmanagement .honor {
color: #ff793e;
}
.hotelmanagement .dieline {
color: #2aaef2;
font-size: 14px;
top: 1px !important;
}
.hotelmanagement .AddressInner {
float: right;
width: 160px;
height: 18px;
overflow: hidden;
text-overflow: ellipsis;
display: -webkit-box;
-webkit-line-clamp: 1;
-webkit-box-orient: vertical;
}
.hotelmanagement .btnList {
margin-top: 12px;
text-align: center;
}
.hotelmanagement .hotelBtnMan {
width: 50px;
height: 28px;
border-radius: 14px;
color: #fff;
cursor: pointer;
background-color: #f76f6f;
}
.hotelmanagement .w150 .el-input {
width: 150px;
}
.hotelmanagement .RemainingInventory {
position: absolute;
width: 60px;
height: 60px;
background-color: rgba(0, 0, 0, 0.35);
border-radius: 50%;
margin: auto;
top: 30px;
color: #fff;
font-size: 16px;
text-align: center;
font-weight: bold;
line-height: 60px;
left: 50%;
margin-left: -30px;
}
.hotelmanagement .delScien {
position: absolute;
right: 10px;
top: 10px;
display: none;
}
.hotelmanagement .delScien:hover {
color: #f76f6f;
cursor: pointer;
}
.hotelmanagement .resourceListMan:hover .delScien {
display: block;
}
.hotelmanagement .comCursorUrl {
cursor: pointer;
}
</style>
<template>
<div class="flexOne hotelmanagement">
<div class="query-box">
<ul>
<li>
<span class="hotel_name">
<em>{{$t('hotel.hotel_name')}}</em>
<el-input maxlength="50" @keyup.native.enter="resetPageIndex(),selectResource()" v-model="msg.Name">
</el-input>
</span>
</li>
<li>
<span>
<em>{{$t('system.quety_area')}}</em>
<el-select v-model="msg.QCountry" clearable class="w150" filterable
@change="getProvinceList(msg.QCountry,1)" :placeholder="$t('hotel.hotel_country')">
<el-option v-for="item in countryList" :key="item.ID" :label="item.Name" :value="item.ID"></el-option>
</el-select>
<el-select v-model="msg.QProvince" class="w150" filterable @change="getProvinceList(msg.QProvince,2)"
:placeholder="$t('hotel.hotel_province')">
<el-option v-for="item in provinceList" :key="item.ID" :label="item.Name" :value="item.ID"></el-option>
</el-select>
<el-select v-model="msg.QCity" class="w150" filterable @change="getProvinceList(msg.QCity,3)"
:placeholder="$t('hotel.hotel_city')">
<el-option v-for="item in cityList" :key="item.ID" :label="item.Name" :value="item.ID"></el-option>
</el-select>
<el-select v-model="msg.QDistrict" class="w150" filterable :placeholder="$t('hotel.hotel_area')">
<el-option v-for="item in district" :key="item.ID" :label="item.Name" :value="item.ID"></el-option>
</el-select>
</span>
</li>
<li>
<span>
<em>{{$t('hotel.hotel_status')}}</em>
<el-select v-model="msg.Status" class="w210" :placeholder="$t('pub.unlimitedSel')">
<el-option :label="$t('pub.unlimitedSel')" value="-1"></el-option>
<el-option v-for="item in status" :key="item.value" :label="item.label" :value="item.value"></el-option>
</el-select>
</span>
</li>
<li>
<span>
<em>{{$t('ground.jiudianleixing')}}</em>
<el-select v-model="msg.HotelType" class="w210" :placeholder="$t('pub.unlimitedSel')">
<el-option :label="$t('pub.unlimitedSel')" value="-1"></el-option>
<el-option v-for="item in HotelTypeList" :key="item.ID" :label="item.Name" :value="item.ID"></el-option>
</el-select>
</span>
</li>
<li>
<span>
<em>{{$t('Operation.Op_price')}}</em>
<el-select v-model="msg.HotelPirceType" class="w210" :placeholder="$t('pub.unlimitedSel')">
<el-option :label="$t('pub.unlimitedSel')" value="-1"></el-option>
<el-option v-for="item in HotelPirceTypeList" :key="item.ID" :label="item.Name" :value="item.ID">
</el-option>
</el-select>
</span>
</li>
<li>
<span><em>{{$t('visa.v_czuser')}}</em></span>
<el-select class="w150" v-model="msg.UpdateBy" filterable :placeholder="$t('pub.pleaseSel')">
<el-option :label="$t('pub.unlimitedSel')" :value="0">
</el-option>
<el-option v-for="item in EmployeeList" :label="item.EmName" :value="item.EmployeeId"
:key="item.EmployeeId"></el-option>
</el-select>
</li>
<li>
<button class="hollowFixedBtn" type="button"
@click="resetPageIndex(),selectResource()">{{$t('pub.searchBtn')}}</button>
<button class="normalBtn" type="button" @click="goSubInfo('GnHotelInfo')">{{$t('pub.addBtn')}}</button>
</li>
</ul>
</div>
<div class="hotelResource clearfix" v-loading="loading">
<div class="resourceListMan" v-for="(item,index) in tableData" :key="index">
<div class="reTopInfo" :class="{'comCursorUrl':item.URL}" @click="OpenNewUrl(item.URL)">
<img v-if="!item.PicPath" src="../../assets/img/bg_c3@3x.png">
<img v-else :src='compressImg(item.PicPath, "filt", 213, "")' :onerror="defaultImg">
<div class="resTypeList">
<span v-for="(items,index) in item.OpenPlatformList" :key="index"
:class="{'L1':items.ID==1,'L2':items.ID==2,'L3':items.ID==3,'L4':items.ID==4,'L5':items.ID==5}">{{items.Name}}</span>
</div>
<div class="delScien" @click.stop="isdelete(item.ID)">
<i class="iconfont icon-xingzhuang"></i>
</div>
<div class="starSu">
<div class="star" v-if="item.Star<8">
<i v-for="(items,index) in item.starArr" class="iconfont icon-star1" :key="index"></i>
</div>
<span v-if="item.Star==8" class="sushe">{{$t('restaurant.res_homeFacility')}}</span>
<span v-if="item.Star==9" class="sushe">{{$t('restaurant.res_SpringHotel')}}</span>
</div>
</div>
<el-tooltip class="item" effect="dark" :content="item.Name" placement="top-start" popper-class="max-w250">
<div class="hotelTitle">{{item.Name}}</div>
</el-tooltip>
<el-tooltip class="item" effect="dark" :content="item.HotelRealName" placement="top-start"
popper-class="max-w250">
<div class="hotelTitle fz12">{{$t('ground.zhenshimingcheng')}}: {{item.HotelRealName}}</div>
</el-tooltip>
<div class="brandList clearfix" style="display:none;">
<div class="brand">
<i class="iconfont honor icon-img_biaozhi"></i>
{{item.ChainBrand}}
</div>
<div class="dayNum">
<i class="iconfont dieline icon-img_shijian"></i>
{{item.DieLine}}{{$t('hotel.hotel_day')}}
</div>
</div>
<div class="Address">
<div v-show="item.Address">
<i class="iconfont icon-img_dz"></i>
<el-tooltip class="item" effect="dark" :content="item.Address" placement="top-start">
<div class="AddressInner">{{item.Address}}</div>
</el-tooltip>
</div>
</div>
<el-tooltip class="item" effect="dark" :content="item.UpdateName+''+item.UpdateTimeStr" placement="top-start">
<div style="padding-left:15px;padding-top:5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;">
<i style="top:2px" class="iconfont icon-renyuanguanli"></i>
<span v-if="item.UpdateName && item.UpdateName!=''">{{item.UpdateName}}</span>
{{item.UpdateTimeStr}}
</div>
</el-tooltip>
<div class="btnList">
<button @click="goSubInfo('GnHotelInfo',item.ID)" class="hotelBtnMan">{{$t('pub.updateMsg')}}</button>
<button @click="CopyHotel(item.ID)" class="hotelBtnMan" v-if="userInfo.RB_Group_id==QjGroupId()">复制</button>
<button @click="goproduct('HotelProductManage',item)" class="hotelBtnMan" v-if="userInfo.RB_Group_id!=QjGroupId()">房型</button>
<br/>
<button v-if="IsHotelPriceStock==1" style="width:80px;margin-top:10px;" @click="goUrl('HotelProductManage2',item)"
class="hotelBtnMan">{{$t('ground.baojiayukucun')}}</button>
</div>
</div>
</div>
<el-pagination background @current-change="handleCurrentChange" :current-page.sync="msg.currentPage"
:page-size="this.msg.pageSize" layout="total,prev, pager, next, jumper" :total="msg.total"></el-pagination>
</div>
</template>
<script>
export default {
data() {
return {
userInfo:{},//登录用户信息
IsHotelPriceStock: 0, //1-有获取酒店库存与报价添加修改权限
countryList: "",
provinceList: "",
cityList: "",
district: "",
tableData: [],
EmployeeList: [], //员工列表
//酒店类型
HotelTypeList: [],
//酒店价格
HotelPirceTypeList: [],
status: [{
value: "0",
label: this.$t('pub.normalSel')
},
{
value: "1",
label: this.$t('system.table_delete')
}
],
defaultImg: 'this.src="' + require("../../assets/img/bg_z1@2x.png") + '"',
loading: true,
msg: {
pageIndex: 1,
pageSize: 14,
Name: "",
QCountry: "",
QProvince: "",
QCity: "",
Status: "0",
HotelPirceType: "-1",
HotelType: "-1",
QDistrict: "",
total: 0,
currentPage: 1,
ID: 0,
UpdateBy: 0, //操作人
}
};
},
methods: {
CopyHotel(Id) {
var that = this;
that.Confirm('是否要复制此酒店?', function () {
var msg = {
Id: Id
};
that.apipost(
"hotel_post_CopyHotelService",
msg,
res => {
if (res.data.resultCode == 1) {
that.Success(res.data.message);
that.selectResource();
} else {
that.Error(res.data.message);
}
},
null
);
});
},
handleCurrentChange(val) {
this.msg.pageIndex = val;
this.selectResource();
},
resetPageIndex() {
this.msg.pageIndex = 1;
this.msg.currentPage = 1;
},
isdelete(ID) {
var that = this;
that.Confirm(this.$t("tips.shifoushanchu"), function () {
var msg = {
hotelID: ID
};
that.apipost(
"hotel_post_Remove",
msg,
res => {
if (res.data.resultCode == 1) {
that.Success(res.data.message);
that.selectResource();
}
},
null
);
});
},
getProvinceList(ID, type) {
//根据省份获取城市
let msg = {
Id: ID
};
if (type == 1) {
this.msg.QProvince = "";
this.msg.QCity = "";
this.msg.QDistrict = "";
} else if (type == 2) {
this.msg.QCity = "";
this.msg.QDistrict = "";
} else if (type == 3) {
this.msg.QDistrict = "";
}
if (this.msg.Country !== "") {
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;
} else if (type == 3) {
this.district = res.data.data;
}
},
err => {}
);
}
},
//获取国家
getCountryList() {
this.apipost(
"dict_post_Destination_GetCountry", {},
res => {
this.countryList = res.data.data;
},
err => {}
);
},
selectResource() {
this.loading = true;
if (this.msg.Status == "") {
this.msg.Status = "-1";
}
this.apipost(
"hotel_post_GetPageList",
this.msg,
res => {
this.loading = false;
if (res.data.resultCode == 1) {
this.tableData = res.data.data.pageData;
this.msg.total = res.data.data.count;
let starArr;
this.tableData.forEach(x => {
x.starArr = new Array(x.Star);
});
}
},
null
);
},
//调整到产品列表
goUrl(path, item) {
this.$router.push({
path: path,
query: {
id: item.ID,
Country: item.Country,
IsSelfBook: item.IsSelfBook,
blank: 'y',
tab: '报价详情'
}
});
},
//调整到房型列表
goproduct(path, item) {
this.$router.push({
path: path,
query: {
id: item.ID,
Country:item.Country,
IsSelfBook:item.IsSelfBook,
blank: 'y',
tab: '房型列表'
}
});
},
goSubInfo(path, id) {
this.$store.commit("pageConditionUpdate", this.msg);
this.$router.push({
path: path,
query: {
id: id,
blank: 'y'
}
});
},
//获取酒店类型列表
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 => {}
);
},
//获取酒店修改与报价添加修改权限
GetHotelPirceStockAuth() {
this.apipost(
"hotel_post_GetHotelPriceStockAuthService", {},
res => {
if (res.data.resultCode == 1) {
this.IsHotelPriceStock = res.data.data;
}
},
err => {}
);
},
//根据当前员工所在部门获取该部门及子部门员工信息
getEmployeeList() {
let msg = {
GroupId: this.userInfo.RB_Group_id,
BranchId: "-1",
DepartmentId: "-1",
PostId: "-1",
IsLeave: "0"
};
this.apipost(
"admin_get_EmployeeGetList", {},
res => {
if (res.data.resultCode == 1) {
this.EmployeeList = res.data.data;
}
},
err => {}
);
},
},
mounted() {
this.userInfo=this.getLocalStorage();
this.getEmployeeList();
this.GetHotelPirceStockAuth();
this.getCountryList();
this.GetHotelTypeList();
this.GetHotelPirceTypeList();
},
created() {
if (this.$route.query.hasOwnProperty("cache")) {
if (this.$store.state.pageCondition != null) {
this.msg = this.$store.state.pageCondition;
}
}
if(this.$route.query.StatisticsSTime){
this.msg.StatisticsSTime=this.$route.query.StatisticsSTime
}
if(this.$route.query.StatisticsETime){
this.msg.StatisticsETime=this.$route.query.StatisticsETime
}
if(this.$route.query.type){
if(this.$route.query.type==1){
this.msg.CreateBy =this.$route.query.EmployeeId;
}
if(this.$route.query.type==2){
this.msg.UpdateBy =this.$route.query.EmployeeId;
}
}
var id = this.$route.query.ID;
if (id) {
this.msg.ID = id;
}
this.selectResource();
}
};
</script>
<style>
.syslog_Content {
width: 100%;
}
.syslog_ul li {
width: 100%;
min-height: 135px;
margin-bottom: 10px;
}
.syslog_top {
width: 100%;
height: 34px;
line-height: 34px;
background-color: #dfdfdf;
}
.sys_content {
width: 100%;
min-height: 101px;
padding: 20px;
font-size: 14px;
background-color: #fff;
}
.appUpdateLog .ql-editor {
min-height: 200px;
}
.sysTop_left {
float: left;
}
.sysTop_banben {
display: inline-block;
color: #38425d;
font-size: 14px;
font-weight: bold;
margin: 0 30px;
}
.sysTop_uptime {
font-size: 14px;
color: #666666;
}
.sysTop_right {
float: right;
margin-right: 30px;
}
.sysliteleBtn {
color: #fff;
padding: 0 10px;
height: 20px;
background: #e95252;
border: 1px solid #e95252;
cursor: pointer;
border-radius: 15px;
margin-left: 10px;
}
</style>
<template>
<div class="flexOne appUpdateLog">
<table v-loading="loading" class="singeRowTable">
<tr>
<th width="150">名称</th>
<th width="150">Code</th>
<th>Content</th>
<th width="100">操作</th>
</tr>
<tr v-for="(item, index) in dataList" :key="index">
<td>
{{ item.Name }}
</td>
<td>
{{ item.Code }}
</td>
<td style="text-align:left;padding:0 5px;">
{{ item.Content }}
</td>
<td>
<input
type="button"
class="sysliteleBtn"
@click="updateLog(item)"
value="修改"
/>
</td>
</tr>
</table>
<el-dialog
custom-class="w800"
:title="dialogTitle"
:visible.sync="outerVisible"
center
>
<el-form :model="addMsg" label-width="80px">
<table style="width:100%">
<tr>
<td colspan="2">
<el-form-item label="更新內容">
<el-input
v-model="addMsg.Content"
class="w595"
placeholder="请输入"
/>
</el-form-item>
</td>
</tr>
</table>
</el-form>
<div slot="footer" class="dialog-footer">
<button class="normalBtn" @click="SaveAppLog()">
{{ $t("pub.saveBtn") }}
</button>
&nbsp;
<button
class="hollowFixedBtn"
@click="(outerVisible = false), clearMsg()"
>
{{ $t("pub.cancelBtn") }}
</button>
</div>
</el-dialog>
</div>
</template>
<script>
export default {
data() {
return {
msg: {},
loading: false,
dataList: [],
dialogTitle: "",
outerVisible: false,
addMsg: {
ID: 0,
Content: ""
}
};
},
methods: {
getList() {
//获取现有线路列表
this.loading = true;
this.apipost(
"admin_get_GetDictValueListService",
this.msg,
res => {
this.loading = false;
if (res.data.resultCode == 1) {
this.dataList = res.data.data;
} else {
this.Error(res.data.message);
}
},
err => {}
);
},
//修改获取数据
updateLog(item) {
this.addMsg.ID = item.ID;
this.addMsg.Content = item.Content;
this.dialogTitle = "修改更新日志";
this.outerVisible = true;
},
clearMsg() {
this.addMsg.ID = 0;
this.addMsg.Content = "";
},
SaveAppLog() {
this.apipost(
"admin_post_SetDictValueListService",
this.addMsg,
res => {
if (res.data.resultCode == 1) {
this.outerVisible = false;
this.clearMsg();
this.Success(res.data.message);
this.getList();
} else {
this.Error(res.data.message);
}
},
err => {}
);
}
},
mounted() {
this.getList();
}
};
</script>
......@@ -768,6 +768,14 @@ export default {
title: '酒店管理'
},
},
{
path: '/GnHotelManagement', //九寨酒店管理
name: 'GnHotelManagement',
component: resolve => require(['@/components/Hotel/GnHotelManagement'], resolve),
meta: {
title: '酒店管理'
},
},
{
path: '/HotelInfo', //添加修改酒店信息
name: 'HotelInfo',
......@@ -776,6 +784,22 @@ export default {
title: '添加修改酒店信息'
},
},
{
path: 'GnHotelInfo', //添加修改国内酒店信息
name: 'GnHotelInfo',
component: resolve => require(['@/components/Hotel/GnHotelInfo'], resolve),
meta: {
title: '添加修改酒店信息'
},
},
{
path: 'HotelConfig', //酒店配置
name: 'HotelConfig',
component: resolve => require(['@/components/Hotel/HotelConfig'], resolve),
meta: {
title: '酒店配置'
},
},
{
path: '/hotelpropertyManage', //酒店属性管理
name: 'HotelPropertyManage',
......
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