<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" readonly v-model="addMsg.Name" maxlength="100" class="w300"></el-input> </el-form-item> <el-form-item :label="$t('ground.jiudianmingzi')"> <el-input type="text" readonly 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" readonly v-model="addMsg.Descriptions" class="w300"></el-input> </el-form-item> <el-form-item :label="$t('hotel.hotel_openplatform')"> <el-select disabled 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 readonly 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 disabled 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 readonly 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 disabled v-model="addMsg.AppointmentStyle" :active-value="inActive" :inactive-value="notInActive"> </el-switch> </el-form-item> <el-form-item :label="$t('hotel.hotel_payType')"> <el-select disabled 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 disabled 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 disabled 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 disabled 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 readonly 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 readonly 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 readonly 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)" disabled> </el-button> </el-col> </el-row> </div> <span class="resource-lititle sheshi">{{$t('hotel.hotel_type')}}</span> <div class="res-span"> <el-tree :data="categoryTree" disabled default-expand-all :props="{label: 'CategoryName', children: 'SubList'}" show-checkbox node-key="Id" ref="treeForm" @check-change="handleNodeClick"> </el-tree> </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" disabled 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" disabled 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" readonly 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 disabled :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 disabled :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 disabled :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 readonly :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">{{$t('objFill.diliweizhi')}}</span> <div class="RabateDiv clearfix"> <div class="RebateCount reOne"> <div class="leftPnum">{{$t('hotel.hotel_jingdu')}}</div> <input readonly type="text" class="toolInput inpuOne" v-model="addMsg.Lng" maxlength="20"> </div> <div class="RebateCount reTwo"> <div class="fanNum">{{$t('hotel.hotel_weidu')}}</div> <input readonly type="text" class="toolInput inpuTwo" v-model="addMsg.Lat" maxlength="20"> </div> </div> </div> <el-form-item :label="$t('hotel.hotel_fax')"> <el-input readonly 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 readonly 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 readonly type="textarea" v-model="addMsg.Remark" class="w300"></el-input> </el-form-item> <el-form-item :label="$t('hotel.hotel_warm')"> <el-input readonly type="textarea" v-model="addMsg.WarmTip" class="w300"></el-input> </el-form-item> <el-form-item> <el-switch disabled 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 disabled 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 disabled 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 disabled 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 readonly 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 readonly 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 readonly 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 disabled 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 disabled 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"> <div class="re-img"> <el-image style="height: 100px" :src="item.ShowPath" :preview-src-list="DiningImageUrlArray"> </el-image> </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="cancel-Btn" @click="goUrl('HotelManagement')">返回</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 { categoryTree: [], imageOptions: { navbar: false, title: false }, //是否有权限操作支付方式 IsHaveAuth: 0, images: [], //是否显示添加图片 addimg: false, //地图选中地址 selectAddress: false, //上传的文件数组 HotelImageArray: [], DiningImageUrlArray: [], //删除的图片文件数组 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.addMsg.WebSiteCategoryIds = this.checkedId.join(',') this.addMsg.WebSiteCategoryIds = this.getLastSubmitIds() 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; }); } }, initCategoryTree() { var msg = {}; var _self = this; this.apipost( "ws_post_GetCategoryTreeList", msg, res => { if (res.data.resultCode == 1) { let categoryTree = res.data.data.filter(item => item.CategoryName === '住宿') this.addParentId(categoryTree, []) this.categoryTree = categoryTree this.setSelectedKeys() } else { _self.Error(res.data.message); } }, null ); }, addParentId(tree, idArr) { tree.forEach(item => { item.ids = [...idArr, item.Id] if (item.SubList && item.SubList.length) { this.addParentId(item.SubList, item.ids) } }) }, setSelectedKeys() { this.arr = [] if (this.checkedId.length && this.categoryTree.length) { this.findSelcetedKey(this.categoryTree) if (this.$refs.treeForm) { this.$refs.treeForm.setCheckedKeys(this.arr) } } }, findSelcetedKey(tree, ) { tree.forEach(item => { if (item.SubList && item.SubList.length) { this.findSelcetedKey(item.SubList) } else { if (this.checkedId.includes(item.Id)) { this.arr.push(item.Id) } } }) }, getLastSubmitIds() { this.idsList = [] this.selectedKeys = this.$refs.treeForm.getCheckedKeys() this.getSelcetedKeyIds(this.categoryTree) return [...new Set(this.idsList)].join(',') }, getSelcetedKeyIds(tree) { tree.forEach(item => { if (item.SubList && item.SubList.length) { this.getSelcetedKeyIds(item.SubList) } if (this.selectedKeys.includes(item.Id)) { this.idsList = this.idsList.concat(item.ids) } }) }, handleNodeClick(data, checked, node) {}, initHotelData() { var msg = { hotelID: this.hotelID }; this.getDinnerList(); var _self = this; this.apipost( "hotel_post_GetAll", msg, res => { if (res.data.resultCode == 1) { this.checkedId = res.data.data.WebSiteCategoryIds ? res.data.data.WebSiteCategoryIds.split(',').map( item => Number(item)) : [] this.setSelectedKeys() _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); this.DiningImageUrlArray.push(_self.imgBeforeFile + imgItem.Path); }); } } 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() { this.checkedId = [] 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 || userInfo.RB_Group_id == 100) { 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(); } this.initCategoryTree() } }; </script>