Commit 0279beeb authored by 沈良进's avatar 沈良进

save

parent 93a7dc2e
<style> <style>
.hotelmanagement .hotelResource { .hotelmanagement .hotelResource {
width: 100%; width: 100%;
min-height: 500px; min-height: 500px;
margin-top: 20px; margin-top: 20px;
} }
.hotelmanagement .resourceListMan { .hotelmanagement .resourceListMan {
width: 215px; width: 215px;
height: 350px; height: 350px;
background-color: #fff; background-color: #fff;
...@@ -15,143 +15,143 @@ ...@@ -15,143 +15,143 @@
font-size: 12px; font-size: 12px;
color: #333333; color: #333333;
float: left; float: left;
} }
.hotelmanagement .resourceListMan:hover { .hotelmanagement .resourceListMan:hover {
box-shadow: 0px 0px 20px rgba(191, 191, 191, 1); box-shadow: 0px 0px 20px rgba(191, 191, 191, 1);
transition: all linear 0.5s; transition: all linear 0.5s;
} }
.hotelmanagement .reTopInfo { .hotelmanagement .reTopInfo {
width: 100%; width: 100%;
height: 123px; height: 123px;
position: relative; position: relative;
} }
.hotelmanagement .reTopInfo img { .hotelmanagement .reTopInfo img {
position: absolute; position: absolute;
width: 100%; width: 100%;
height: 100%; height: 100%;
top: 0; top: 0;
border-top-left-radius: 4px; border-top-left-radius: 4px;
border-top-right-radius: 4px; border-top-right-radius: 4px;
} }
.hotelmanagement .resTypeList { .hotelmanagement .resTypeList {
position: absolute; position: absolute;
top: 10px; top: 10px;
left: 10px; left: 10px;
} }
.hotelmanagement .resTypeList span { .hotelmanagement .resTypeList span {
display: inline-block; display: inline-block;
padding: 1px 5px; padding: 1px 5px;
border-radius: 10px; border-radius: 10px;
color: #fff; color: #fff;
margin-right: 10px; margin-right: 10px;
} }
.hotelmanagement .L1 { .hotelmanagement .L1 {
background-color: #e95252; background-color: #e95252;
} }
.hotelmanagement .L2 { .hotelmanagement .L2 {
background-color: #47bf8c; background-color: #47bf8c;
} }
.hotelmanagement .L3 { .hotelmanagement .L3 {
background-color: #2aaef2; background-color: #2aaef2;
} }
.hotelmanagement .L4 { .hotelmanagement .L4 {
background-color: #9cf; background-color: #9cf;
} }
.hotelmanagement .L5 { .hotelmanagement .L5 {
background-color: #00c6ff; background-color: #00c6ff;
margin-top: 5px; margin-top: 5px;
} }
.hotelmanagement .starSu { .hotelmanagement .starSu {
position: absolute; position: absolute;
bottom: 8px; bottom: 8px;
right: 10px; right: 10px;
} }
.hotelmanagement .sushe { .hotelmanagement .sushe {
background-color: #ffc800; background-color: #ffc800;
display: inline-block; display: inline-block;
padding: 1px 5px; padding: 1px 5px;
border-radius: 10px; border-radius: 10px;
color: #fff; color: #fff;
} }
.hotelmanagement .hotelTitle { .hotelmanagement .hotelTitle {
margin: 22px 16px 0 16px; margin: 22px 16px 0 16px;
font-size: 14px; font-size: 14px;
color: #333333; color: #333333;
overflow: hidden; overflow: hidden;
text-overflow: ellipsis; text-overflow: ellipsis;
white-space: nowrap; white-space: nowrap;
} }
.hotelmanagement .brandList { .hotelmanagement .brandList {
margin: 10px 16px; margin: 10px 16px;
} }
.hotelmanagement .brandList i { .hotelmanagement .brandList i {
position: relative; position: relative;
top: 2px; top: 2px;
} }
.hotelmanagement .brand { .hotelmanagement .brand {
float: left; float: left;
width: 120px; width: 120px;
overflow: hidden; overflow: hidden;
text-overflow: ellipsis; text-overflow: ellipsis;
white-space: nowrap; white-space: nowrap;
} }
.hotelmanagement .dayNum { .hotelmanagement .dayNum {
float: right; float: right;
} }
.hotelmanagement .Address { .hotelmanagement .Address {
margin: 0 16px; margin: 0 16px;
height: 17px; height: 17px;
overflow: hidden; overflow: hidden;
} }
.hotelmanagement .Address i { .hotelmanagement .Address i {
color: #bbbbbb; color: #bbbbbb;
} }
.hotelmanagement .iconfont { .hotelmanagement .iconfont {
margin-right: 5px; margin-right: 5px;
position: relative; position: relative;
top: -4px; top: -4px;
} }
.hotelmanagement .icon-star1 { .hotelmanagement .icon-star1 {
color: #ffc800; color: #ffc800;
} }
.hotelmanagement .star i { .hotelmanagement .star i {
margin-right: 3px; margin-right: 3px;
font-size: 12px; font-size: 12px;
} }
.hotelmanagement .honor { .hotelmanagement .honor {
color: #ff793e; color: #ff793e;
} }
.hotelmanagement .dieline { .hotelmanagement .dieline {
color: #2aaef2; color: #2aaef2;
font-size: 14px; font-size: 14px;
top: 1px !important; top: 1px !important;
} }
.hotelmanagement .AddressInner { .hotelmanagement .AddressInner {
float: right; float: right;
width: 160px; width: 160px;
height: 18px; height: 18px;
...@@ -160,27 +160,27 @@ ...@@ -160,27 +160,27 @@
display: -webkit-box; display: -webkit-box;
-webkit-line-clamp: 1; -webkit-line-clamp: 1;
-webkit-box-orient: vertical; -webkit-box-orient: vertical;
} }
.hotelmanagement .btnList { .hotelmanagement .btnList {
margin-top: 12px; margin-top: 12px;
text-align: center; text-align: center;
} }
.hotelmanagement .hotelBtnMan { .hotelmanagement .hotelBtnMan {
width: 50px; width: 50px;
height: 28px; height: 28px;
border-radius: 14px; border-radius: 14px;
color: #fff; color: #fff;
cursor: pointer; cursor: pointer;
background-color: #f76f6f; background-color: #f76f6f;
} }
.hotelmanagement .w150 .el-input { .hotelmanagement .w150 .el-input {
width: 150px; width: 150px;
} }
.hotelmanagement .RemainingInventory { .hotelmanagement .RemainingInventory {
position: absolute; position: absolute;
width: 60px; width: 60px;
height: 60px; height: 60px;
...@@ -195,27 +195,27 @@ ...@@ -195,27 +195,27 @@
line-height: 60px; line-height: 60px;
left: 50%; left: 50%;
margin-left: -30px; margin-left: -30px;
} }
.hotelmanagement .delScien { .hotelmanagement .delScien {
position: absolute; position: absolute;
right: 10px; right: 10px;
top: 10px; top: 10px;
display: none; display: none;
} }
.hotelmanagement .delScien:hover { .hotelmanagement .delScien:hover {
color: #f76f6f; color: #f76f6f;
cursor: pointer; cursor: pointer;
} }
.hotelmanagement .resourceListMan:hover .delScien { .hotelmanagement .resourceListMan:hover .delScien {
display: block; display: block;
} }
.hotelmanagement .comCursorUrl { .hotelmanagement .comCursorUrl {
cursor: pointer; cursor: pointer;
} }
.editInfo { .editInfo {
padding: 2px !important; padding: 2px !important;
} }
...@@ -237,186 +237,429 @@ ...@@ -237,186 +237,429 @@
<ul> <ul>
<li> <li>
<span class="hotel_name"> <span class="hotel_name">
<em>{{$t('hotel.hotel_name')}}</em> <em>{{ $t("hotel.hotel_name") }}</em>
<el-input maxlength="50" @keyup.native.enter="resetPageIndex(),selectResource()" v-model="msg.Name"> <el-input
maxlength="50"
@keyup.native.enter="resetPageIndex(), selectResource()"
v-model="msg.Name"
>
</el-input> </el-input>
</span> </span>
</li> </li>
<li> <li>
<span> <span>
<em>{{$t('system.quety_area')}}</em> <em>{{ $t("system.quety_area") }}</em>
<el-select v-model="msg.QCountry" clearable class="w150" filterable <el-select
@change="getProvinceList(msg.QCountry,1)" :placeholder="$t('hotel.hotel_country')"> v-model="msg.QCountry"
<el-option v-for="item in countryList" :key="item.ID" :label="item.Name" :value="item.ID"></el-option> 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>
<el-select v-model="msg.QProvince" class="w150" filterable @change="getProvinceList(msg.QProvince,2)" <el-select
:placeholder="$t('hotel.hotel_province')"> v-model="msg.QProvince"
<el-option v-for="item in provinceList" :key="item.ID" :label="item.Name" :value="item.ID"></el-option> 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>
<el-select v-model="msg.QCity" class="w150" filterable @change="getProvinceList(msg.QCity,3)" <el-select
:placeholder="$t('hotel.hotel_city')"> v-model="msg.QCity"
<el-option v-for="item in cityList" :key="item.ID" :label="item.Name" :value="item.ID"></el-option> 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>
<el-select v-model="msg.QDistrict" class="w150" filterable :placeholder="$t('hotel.hotel_area')"> <el-select
<el-option v-for="item in district" :key="item.ID" :label="item.Name" :value="item.ID"></el-option> 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> </el-select>
</span> </span>
</li> </li>
<li> <li>
<span> <span>
<em>{{$t('hotel.hotel_status')}}</em> <em>{{ $t("hotel.hotel_status") }}</em>
<el-select v-model="msg.Status" class="w210" :placeholder="$t('pub.unlimitedSel')"> <el-select
v-model="msg.Status"
class="w210"
:placeholder="$t('pub.unlimitedSel')"
>
<el-option :label="$t('pub.unlimitedSel')" value="-1"></el-option> <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-option
v-for="item in status"
:key="item.value"
:label="item.label"
:value="item.value"
></el-option>
</el-select> </el-select>
</span> </span>
</li> </li>
<li> <li>
<span> <span>
<em>{{$t('ground.jiudianleixing')}}</em> <em>{{ $t("ground.jiudianleixing") }}</em>
<el-select v-model="msg.HotelType" class="w210" :placeholder="$t('pub.unlimitedSel')"> <el-select
v-model="msg.HotelType"
class="w210"
:placeholder="$t('pub.unlimitedSel')"
>
<el-option :label="$t('pub.unlimitedSel')" value="-1"></el-option> <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-option
v-for="item in HotelTypeList"
:key="item.ID"
:label="item.Name"
:value="item.ID"
></el-option>
</el-select> </el-select>
</span> </span>
</li> </li>
<li> <li>
<span> <span>
<em>{{$t('Operation.Op_price')}}</em> <em>{{ $t("Operation.Op_price") }}</em>
<el-select v-model="msg.HotelPirceType" class="w210" :placeholder="$t('pub.unlimitedSel')"> <el-select
v-model="msg.HotelPirceType"
class="w210"
:placeholder="$t('pub.unlimitedSel')"
>
<el-option :label="$t('pub.unlimitedSel')" value="-1"></el-option> <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
v-for="item in HotelPirceTypeList"
:key="item.ID"
:label="item.Name"
:value="item.ID"
>
</el-option> </el-option>
</el-select> </el-select>
</span> </span>
</li> </li>
<li> <li>
<span><em>{{$t('visa.v_czuser')}}</em></span> <span
<el-select class="w150" v-model="msg.UpdateBy" filterable :placeholder="$t('pub.pleaseSel')"> ><em>{{ $t("visa.v_czuser") }}</em></span
<el-option :label="$t('pub.unlimitedSel')" :value="0"> >
</el-option> <el-select
<el-option v-for="item in EmployeeList" :label="item.EmName" :value="item.EmployeeId" class="w150"
:key="item.EmployeeId"></el-option> 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> </el-select>
</li> </li>
<li> <li>
<button class="hollowFixedBtn" type="button" <button
@click="resetPageIndex(),selectResource()">{{$t('pub.searchBtn')}}</button> class="hollowFixedBtn"
<button class="normalBtn" type="button" @click="goSubInfo('HotelInfo')">{{$t('pub.addBtn')}}</button> type="button"
@click="resetPageIndex(), selectResource()"
>
{{ $t("pub.searchBtn") }}
</button>
<button
class="normalBtn"
type="button"
@click="goSubInfo('HotelInfo')"
>
{{ $t("pub.addBtn") }}
</button>
</li> </li>
</ul> </ul>
</div> </div>
<div class="hotelResource clearfix" v-loading="loading"> <div class="hotelResource clearfix" v-loading="loading">
<div class="resourceListMan" v-for="(item,index) in tableData" :key="index"> <div
<div class="reTopInfo" :class="{'comCursorUrl':item.URL}" @click="OpenNewUrl(item.URL)"> class="resourceListMan"
<img v-if="!item.PicPath" src="../../assets/img/bg_c3@3x.png"> v-for="(item, index) in tableData"
<img v-else :src='compressImg(item.PicPath, "filt", 213, "")' :onerror="defaultImg"> :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"> <div class="resTypeList">
<span v-for="(items,index) in item.OpenPlatformList" :key="index" <span
:class="{'L1':items.ID==1,'L2':items.ID==2,'L3':items.ID==3,'L4':items.ID==4,'L5':items.ID==5}">{{items.Name}}</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>
<div class="delScien" @click.stop="isdelete(item.ID)"> <div class="delScien" @click.stop="isdelete(item.ID)">
<i class="iconfont icon-xingzhuang"></i> <i class="iconfont icon-xingzhuang"></i>
</div> </div>
<div class="starSu"> <div class="starSu">
<div class="star" v-if="item.Star<8"> <div class="star" v-if="item.Star < 8">
<i v-for="(items,index) in item.starArr" class="iconfont icon-star1" :key="index"></i> <i
v-for="(items, index) in item.starArr"
class="iconfont icon-star1"
:key="index"
></i>
</div> </div>
<span v-if="item.Star==8" class="sushe">{{$t('restaurant.res_homeFacility')}}</span> <span v-if="item.Star == 8" class="sushe">{{
<span v-if="item.Star==9" class="sushe">{{$t('restaurant.res_SpringHotel')}}</span> $t("restaurant.res_homeFacility")
}}</span>
<span v-if="item.Star == 9" class="sushe">{{
$t("restaurant.res_SpringHotel")
}}</span>
</div> </div>
</div> </div>
<el-tooltip class="item" effect="dark" :content="item.Name" placement="top-start" popper-class="max-w250"> <el-tooltip
<div class="hotelTitle">{{item.Name}}</div> class="item"
effect="dark"
:content="item.Name"
placement="top-start"
popper-class="max-w250"
>
<div class="hotelTitle">{{ item.Name }}</div>
</el-tooltip> </el-tooltip>
<el-tooltip class="item" effect="dark" :content="item.HotelRealName" placement="top-start" <el-tooltip
popper-class="max-w250"> class="item"
<div class="hotelTitle fz12">{{$t('ground.zhenshimingcheng')}}: {{item.HotelRealName}}</div> effect="dark"
:content="item.HotelRealName"
placement="top-start"
popper-class="max-w250"
>
<div class="hotelTitle fz12">
{{ $t("ground.zhenshimingcheng") }}: {{ item.HotelRealName }}
</div>
</el-tooltip> </el-tooltip>
<div class="brandList clearfix" style="display:none;"> <div class="brandList clearfix" style="display: none">
<div class="brand"> <div class="brand">
<i class="iconfont honor icon-img_biaozhi"></i> <i class="iconfont honor icon-img_biaozhi"></i>
{{item.ChainBrand}} {{ item.ChainBrand }}
</div> </div>
<div class="dayNum"> <div class="dayNum">
<i class="iconfont dieline icon-img_shijian"></i> <i class="iconfont dieline icon-img_shijian"></i>
{{item.DieLine}}{{$t('hotel.hotel_day')}} {{ item.DieLine }}{{ $t("hotel.hotel_day") }}
</div> </div>
</div> </div>
<div class="Address"> <div class="Address">
<div v-show="item.Address"> <div v-show="item.Address">
<i class="iconfont icon-img_dz"></i> <i class="iconfont icon-img_dz"></i>
<el-tooltip class="item" effect="dark" :content="item.Address" placement="top-start"> <el-tooltip
<div class="AddressInner">{{item.Address}}</div> class="item"
effect="dark"
:content="item.Address"
placement="top-start"
>
<div class="AddressInner">{{ item.Address }}</div>
</el-tooltip> </el-tooltip>
</div> </div>
</div> </div>
<el-tooltip class="item" effect="dark" :content="item.UpdateName+''+item.UpdateTimeStr" placement="top-start"> <el-tooltip
<div style="padding-left:15px;padding-top:5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;"> class="item"
<i style="top:2px" class="iconfont icon-renyuanguanli"></i> effect="dark"
<span v-if="item.UpdateName && item.UpdateName!=''">{{item.UpdateName}}</span> :content="item.UpdateName + '' + item.UpdateTimeStr"
{{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> </div>
</el-tooltip> </el-tooltip>
<div class="btnList"> <div class="btnList">
<button @click="goSubInfo('HotelInfo',item.ID)" class="hotelBtnMan">{{$t('pub.updateMsg')}}</button> <button @click="goSubInfo('HotelInfo', item.ID)" class="hotelBtnMan">
<button @click="CopyHotel(item.ID)" class="hotelBtnMan" v-if="userInfo.RB_Group_id==QjGroupId()">复制</button> {{ $t("pub.updateMsg") }}
<button @click="goproduct('HotelProductManage',item)" class="hotelBtnMan" v-if="userInfo.RB_Group_id!=QjGroupId()">房型</button> </button>
<br/> <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 />
<!--v-if="IsHotelPriceStock==1" HK 10-21注释--> <!--v-if="IsHotelPriceStock==1" HK 10-21注释-->
<button style="width:80px;margin-top:10px;" @click="goUrl('HotelProductManage2',item)" <button
class="hotelBtnMan">{{$t('ground.baojiayukucun')}}</button> style="width: 80px; margin-top: 10px"
<button style="width:80px;margin-top:10px;" @click="downloadFile(item)" @click="goUrl('HotelProductManage2', item)"
class="hotelBtnMan">查看报价</button> class="hotelBtnMan"
>
{{ $t("ground.baojiayukucun") }}
</button>
<button
style="width: 80px; margin-top: 10px"
@click="downloadFile(item)"
class="hotelBtnMan"
>
查看报价
</button>
</div> </div>
</div> </div>
</div> </div>
<el-pagination background @current-change="handleCurrentChange" :current-page.sync="msg.currentPage" <el-pagination
:page-size="this.msg.pageSize" layout="total,prev, pager, next, jumper" :total="msg.total"></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>
<el-dialog title="上传报价单" :visible.sync="showUpload"> <el-dialog title="上传报价单" :visible.sync="showUpload">
<div> <div>
<el-input style="margin-bottom: 20px" v-model="uploadTitle" placeholder="请填写报价单标题"></el-input> <el-input
style="margin-bottom: 20px"
v-model="uploadTitle"
placeholder="请填写报价单标题"
></el-input>
<el-upload <el-upload
class="upload-demo" class="upload-demo"
:file-list="DownloadMaterialsFileList" :file-list="DownloadMaterialsFileList"
:http-request="uploadTest" :http-request="uploadTest"
:on-remove="handleRemove" :on-remove="handleRemove"
:multiple="true" :limit="1"
:limit="10" action=""
action=""> >
<el-button size="small" type="primary">点击上传</el-button> <el-button
:disabled="DownloadMaterialsFileList.length ? true : false"
size="small"
type="primary"
>点击上传</el-button
>
</el-upload> </el-upload>
<div class="submit-box"> <div class="submit-box">
<el-button type="primary" style="margin: 20px auto;" @click="submitFile">提交</el-button></div> <el-button
type="primary"
style="margin: 20px auto"
@click="submitFile"
>提交</el-button
>
</div>
</div> </div>
</el-dialog> </el-dialog>
<el-dialog title="查看报价" :visible.sync="showFilelist"> <el-dialog title="查看报价" :visible.sync="showFilelist">
<button style="width:80px;margin-top:10px;" @click="uploadFile()" <button
class="hotelBtnMan">上传报价</button> style="width: 80px; margin-top: 10px"
<div class="list-item" v-for="(item, index) in DmcFileStoreList" :key="item.Id"> @click="uploadFile()"
<span class="file-title">{{item.Title}}</span> class="hotelBtnMan"
<el-button class="editInfo" type="danger" @click="deleteFile(item, index)">删除</el-button> >
<el-button class="editInfo" type="primary" @click="editFile(item)">编辑</el-button> 上传报价
<div style="margin: 10px 0" v-for="(ele, index) in item.FileInfoList" :key="index"> </button>
<span>{{ele.Name}}</span> <el-table
<a :href="ele.Url" type="download"> :data="DmcFileStoreList"
<el-button class="editInfo" type="primary">下载</el-button></a> stripe
</div> style="width: 100%"
</div> >
<el-table-column fixed prop="Title" label="标题">
</el-table-column>
<el-table-column
prop="CreateByName"
label="创建人"
width="150"
>
</el-table-column>
<el-table-column
prop="CreateTime"
label="创建日期"
>
</el-table-column>
<el-table-column
prop="DateStr"
label="操作"
width="120"
>
<template slot-scope="scope">
<el-button
class="editInfo"
type="danger"
@click="deleteFile(scope.row, scope.$index)"
>删除</el-button
>
<a :href="scope.row.Url" type="download">
<el-button class="editInfo" type="primary">下载</el-button></a
>
</template>
</el-table-column>
</el-table>
<el-pagination
background
@current-change="handlePageChange"
:current-page.sync="page.currentPage"
layout="total,prev, pager, next, jumper"
:page-size="page.pageSize"
:total="page.total"
>
</el-pagination>
</el-dialog> </el-dialog>
</div> </div>
</template> </template>
<script> <script>
export default { import page from '../../utils/page';
export default {
data() { data() {
return { return {
page: { currentPage: 1, pageSize: 10, total: 0 },
editInfo: {}, editInfo: {},
uploadTitle: '', uploadTitle: "",
DownloadMaterialsFileList: [], DownloadMaterialsFileList: [],
showFilelist: false, showFilelist: false,
showUpload: false, showUpload: false,
DmcFileStoreList: [], DmcFileStoreList: [],
userInfo:{},//登录用户信息 userInfo: {}, //登录用户信息
IsHotelPriceStock: 0, //1-有获取酒店库存与报价添加修改权限 IsHotelPriceStock: 0, //1-有获取酒店库存与报价添加修改权限
countryList: "", countryList: "",
provinceList: "", provinceList: "",
...@@ -428,14 +671,15 @@ ...@@ -428,14 +671,15 @@
HotelTypeList: [], HotelTypeList: [],
//酒店价格 //酒店价格
HotelPirceTypeList: [], HotelPirceTypeList: [],
status: [{ status: [
{
value: "0", value: "0",
label: this.$t('pub.normalSel') label: this.$t("pub.normalSel"),
}, },
{ {
value: "1", value: "1",
label: this.$t('system.table_delete') label: this.$t("system.table_delete"),
} },
], ],
defaultImg: 'this.src="' + require("../../assets/img/bg_z1@2x.png") + '"', defaultImg: 'this.src="' + require("../../assets/img/bg_z1@2x.png") + '"',
loading: true, loading: true,
...@@ -454,92 +698,116 @@ ...@@ -454,92 +698,116 @@
currentPage: 1, currentPage: 1,
ID: 0, ID: 0,
UpdateBy: 0, //操作人 UpdateBy: 0, //操作人
ProductType:1,//国际酒店 ProductType: 1, //国际酒店
} },
}; };
}, },
methods: { methods: {
handlePageChange(val) {
this.page.pageIndex = val;
this.getFilelist();
},
uploadFile() { uploadFile() {
this.showUpload = true this.showUpload = true;
this.uploadTitle ='' this.uploadTitle = "";
}, },
downloadFile(hotel) { downloadFile(hotel) {
this.hotel = hotel this.hotel = hotel;
this.getFilelist() console.log('downloadFile', hotel)
this.showFilelist = true this.getFilelist();
this.showFilelist = true;
}, },
handleRemove(file, fileList) { handleRemove(file, fileList) {
this.DownloadMaterialsFileList=fileList; this.DownloadMaterialsFileList = fileList;
}, },
uploadTest(file) { uploadTest(file) {
let newArr = []; let newArr = [];
newArr.push(file.file); newArr.push(file.file);
let path = "/Upload/DMC/Icon/"; let path = "/Upload/DMC/Icon/";
this.UploadSelfFileT(path, newArr, x => { this.UploadSelfFileT(path, newArr, (x) => {
let url = this.domainManager().ViittoFileUrl + x.data.FilePath; let url = this.domainManager().ViittoFileUrl + x.data.FilePath;
let Name=x.data.SourceFileName; let Name = x.data.SourceFileName;
this.DownloadMaterialsFileList.push({Url:url,Name:Name,name:Name}) this.DownloadMaterialsFileList.push({
Url: url,
Name: Name,
name: Name,
});
}); });
}, },
submitFile() { submitFile() {
if (!this.uploadTitle) {
this.$message.error("请填写标题");
return;
}
if (!this.DownloadMaterialsFileList) {
this.$message.error("请上传文件");
return;
}
this.apipost( this.apipost(
"hotel_get_SetDMCFileStore", "hotel_get_SetDMCFileStore",
{ {
Id:this.editInfo.Id || 0,Title:this.uploadTitle, Id: this.editInfo.Id || 0,
ProcudtType:1, Title: this.uploadTitle,
ProductId:this.hotel.ID, ProcudtType: 1,
FileInfoList: this.DownloadMaterialsFileList ProductId: this.hotel.ID,
FileInfoList: this.DownloadMaterialsFileList,
}, },
res => { (res) => {
this.showUpload = false this.showUpload = false;
this.getFilelist() this.getFilelist();
}, },
err => {} (err) => {}
); );
}, },
deleteFile(file, index) { deleteFile(file) {
this.apipost( this.apipost(
"hotel_get_RemoveDMCFileStore", "hotel_get_RemoveDMCFileStore",
{ {
Id:file.Id, Id: file.Id,
}, },
res => { (res) => {
this.DmcFileStoreList.splice(index, 1) // this.DmcFileStoreList.splice(index, 1);
this.getFilelist();
}, },
err => {} (err) => {}
); );
}, },
editFile(file) { editFile(file) {
this.editInfo = file this.editInfo = file;
this.showUpload = true this.showUpload = true;
this.uploadTitle = file.Title this.uploadTitle = file.Title;
file.FileInfoList.forEach(item => item.name = item.Name) file.FileInfoList.forEach((item) => (item.name = item.Name));
this.DownloadMaterialsFileList = file.FileInfoList this.DownloadMaterialsFileList = file.FileInfoList;
}, },
getFilelist() { getFilelist() {
this.apipost( this.apipost(
"hotel_get_GetDMCFileStoreList", "hotel_get_GetDMCFileStoreList",
{ {
HotelId:this.hotel.Id, HotelId: this.hotel.ID,
pageIndex: this.page.currentPage,
pageSize: this.page.pageSize
}, },
res => { (res) => {
if(res.data.resultCode) { if (res.data.resultCode) {
this.DmcFileStoreList = res.data.data const {pageData,count} = res.data.data;
pageData.forEach(item => item.Url = item.FileInfoList[0] ? item.FileInfoList[0].Url : '')
this.DmcFileStoreList = pageData;
this.page.total = count
} }
}, },
err => {} (err) => {}
); );
}, },
CopyHotel(Id) { CopyHotel(Id) {
var that = this; var that = this;
that.Confirm('是否要复制此酒店?', function () { that.Confirm("是否要复制此酒店?", function () {
var msg = { var msg = {
Id: Id Id: Id,
}; };
that.apipost( that.apipost(
"hotel_post_CopyHotelService", "hotel_post_CopyHotelService",
msg, msg,
res => { (res) => {
if (res.data.resultCode == 1) { if (res.data.resultCode == 1) {
that.Success(res.data.message); that.Success(res.data.message);
that.selectResource(); that.selectResource();
...@@ -563,12 +831,12 @@ ...@@ -563,12 +831,12 @@
var that = this; var that = this;
that.Confirm(this.$t("tips.shifoushanchu"), function () { that.Confirm(this.$t("tips.shifoushanchu"), function () {
var msg = { var msg = {
hotelID: ID hotelID: ID,
}; };
that.apipost( that.apipost(
"hotel_post_Remove", "hotel_post_Remove",
msg, msg,
res => { (res) => {
if (res.data.resultCode == 1) { if (res.data.resultCode == 1) {
that.Success(res.data.message); that.Success(res.data.message);
that.selectResource(); that.selectResource();
...@@ -581,7 +849,7 @@ ...@@ -581,7 +849,7 @@
getProvinceList(ID, type) { getProvinceList(ID, type) {
//根据省份获取城市 //根据省份获取城市
let msg = { let msg = {
Id: ID Id: ID,
}; };
if (type == 1) { if (type == 1) {
this.msg.QProvince = ""; this.msg.QProvince = "";
...@@ -597,7 +865,7 @@ ...@@ -597,7 +865,7 @@
this.apipost( this.apipost(
"dict_post_Destination_GetChildList", "dict_post_Destination_GetChildList",
msg, msg,
res => { (res) => {
if (type == 1) { if (type == 1) {
this.provinceList = res.data.data; this.provinceList = res.data.data;
} else if (type == 2) { } else if (type == 2) {
...@@ -606,18 +874,19 @@ ...@@ -606,18 +874,19 @@
this.district = res.data.data; this.district = res.data.data;
} }
}, },
err => {} (err) => {}
); );
} }
}, },
//获取国家 //获取国家
getCountryList() { getCountryList() {
this.apipost( this.apipost(
"dict_post_Destination_GetCountry", {}, "dict_post_Destination_GetCountry",
res => { {},
(res) => {
this.countryList = res.data.data; this.countryList = res.data.data;
}, },
err => {} (err) => {}
); );
}, },
selectResource() { selectResource() {
...@@ -628,13 +897,13 @@ ...@@ -628,13 +897,13 @@
this.apipost( this.apipost(
"hotel_post_GetPageList", "hotel_post_GetPageList",
this.msg, this.msg,
res => { (res) => {
this.loading = false; this.loading = false;
if (res.data.resultCode == 1) { if (res.data.resultCode == 1) {
this.tableData = res.data.data.pageData; this.tableData = res.data.data.pageData;
this.msg.total = res.data.data.count; this.msg.total = res.data.data.count;
let starArr; let starArr;
this.tableData.forEach(x => { this.tableData.forEach((x) => {
x.starArr = new Array(x.Star); x.starArr = new Array(x.Star);
}); });
} }
...@@ -650,9 +919,9 @@ ...@@ -650,9 +919,9 @@
id: item.ID, id: item.ID,
Country: item.Country, Country: item.Country,
IsSelfBook: item.IsSelfBook, IsSelfBook: item.IsSelfBook,
blank: 'y', blank: "y",
tab: '报价详情' tab: "报价详情",
} },
}); });
}, },
//调整到房型列表 //调整到房型列表
...@@ -661,11 +930,11 @@ ...@@ -661,11 +930,11 @@
path: path, path: path,
query: { query: {
id: item.ID, id: item.ID,
Country:item.Country, Country: item.Country,
IsSelfBook:item.IsSelfBook, IsSelfBook: item.IsSelfBook,
blank: 'y', blank: "y",
tab: '房型列表' tab: "房型列表",
} },
}); });
}, },
goSubInfo(path, id) { goSubInfo(path, id) {
...@@ -674,43 +943,46 @@ ...@@ -674,43 +943,46 @@
path: path, path: path,
query: { query: {
id: id, id: id,
blank: 'y' blank: "y",
} },
}); });
}, },
//获取酒店类型列表 //获取酒店类型列表
GetHotelTypeList() { GetHotelTypeList() {
this.apipost( this.apipost(
"dmc_post_Get_GetHotelType", {}, "dmc_post_Get_GetHotelType",
res => { {},
(res) => {
if (res.data.resultCode == 1) { if (res.data.resultCode == 1) {
this.HotelTypeList = res.data.data; this.HotelTypeList = res.data.data;
} }
}, },
err => {} (err) => {}
); );
}, },
GetHotelPirceTypeList() { GetHotelPirceTypeList() {
this.apipost( this.apipost(
"dmc_post_Get_GetHotelPriceType", {}, "dmc_post_Get_GetHotelPriceType",
res => { {},
(res) => {
if (res.data.resultCode == 1) { if (res.data.resultCode == 1) {
this.HotelPirceTypeList = res.data.data; this.HotelPirceTypeList = res.data.data;
} }
}, },
err => {} (err) => {}
); );
}, },
//获取酒店修改与报价添加修改权限 //获取酒店修改与报价添加修改权限
GetHotelPirceStockAuth() { GetHotelPirceStockAuth() {
this.apipost( this.apipost(
"hotel_post_GetHotelPriceStockAuthService", {}, "hotel_post_GetHotelPriceStockAuthService",
res => { {},
(res) => {
if (res.data.resultCode == 1) { if (res.data.resultCode == 1) {
this.IsHotelPriceStock = res.data.data; this.IsHotelPriceStock = res.data.data;
} }
}, },
err => {} (err) => {}
); );
}, },
//根据当前员工所在部门获取该部门及子部门员工信息 //根据当前员工所在部门获取该部门及子部门员工信息
...@@ -720,21 +992,22 @@ ...@@ -720,21 +992,22 @@
BranchId: "-1", BranchId: "-1",
DepartmentId: "-1", DepartmentId: "-1",
PostId: "-1", PostId: "-1",
IsLeave: "0" IsLeave: "0",
}; };
this.apipost( this.apipost(
"admin_get_EmployeeGetList", {}, "admin_get_EmployeeGetList",
res => { {},
(res) => {
if (res.data.resultCode == 1) { if (res.data.resultCode == 1) {
this.EmployeeList = res.data.data; this.EmployeeList = res.data.data;
} }
}, },
err => {} (err) => {}
); );
}, },
}, },
mounted() { mounted() {
this.userInfo=this.getLocalStorage(); this.userInfo = this.getLocalStorage();
this.getEmployeeList(); this.getEmployeeList();
this.GetHotelPirceStockAuth(); this.GetHotelPirceStockAuth();
this.getCountryList(); this.getCountryList();
...@@ -747,18 +1020,18 @@ ...@@ -747,18 +1020,18 @@
this.msg = this.$store.state.pageCondition; this.msg = this.$store.state.pageCondition;
} }
} }
if(this.$route.query.StatisticsSTime){ if (this.$route.query.StatisticsSTime) {
this.msg.StatisticsSTime=this.$route.query.StatisticsSTime this.msg.StatisticsSTime = this.$route.query.StatisticsSTime;
} }
if(this.$route.query.StatisticsETime){ if (this.$route.query.StatisticsETime) {
this.msg.StatisticsETime=this.$route.query.StatisticsETime this.msg.StatisticsETime = this.$route.query.StatisticsETime;
} }
if(this.$route.query.type){ if (this.$route.query.type) {
if(this.$route.query.type==1){ if (this.$route.query.type == 1) {
this.msg.CreateBy =this.$route.query.EmployeeId; this.msg.CreateBy = this.$route.query.EmployeeId;
} }
if(this.$route.query.type==2){ if (this.$route.query.type == 2) {
this.msg.UpdateBy =this.$route.query.EmployeeId; this.msg.UpdateBy = this.$route.query.EmployeeId;
} }
} }
var id = this.$route.query.ID; var id = this.$route.query.ID;
...@@ -766,7 +1039,6 @@ ...@@ -766,7 +1039,6 @@
this.msg.ID = id; this.msg.ID = id;
} }
this.selectResource(); this.selectResource();
} },
}; };
</script> </script>
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