Commit f6c6a4a0 authored by 黄奎's avatar 黄奎

页面修改

parent e4742e42
<style>
.hotelmanagement .hotelResource {
width: 100%;
min-height: 500px;
margin-top: 20px;
}
.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;
}
.editInfo {
padding: 2px !important;
}
.list-item {
margin: 20px 0;
}
.file-title {
font-size: 16px;
font-weight: bold;
}
.submit-box {
display: flex;
justify-content: center;
}
.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;
}
.editInfo {
padding: 2px !important;
}
.list-item {
margin: 20px 0;
}
.file-title {
font-size: 16px;
font-weight: bold;
}
.submit-box {
display: flex;
justify-content: center;
}
</style>
<template>
<div class="flexOne hotelmanagement">
......@@ -238,208 +243,96 @@
<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 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 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 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 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 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-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-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-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-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-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 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')"
>
<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-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()"
>
<button class="hollowFixedBtn" type="button" @click="resetPageIndex(), selectResource()">
{{ $t("pub.searchBtn") }}
</button>
<button
class="normalBtn"
type="button"
@click="goSubInfo('HotelInfo')"
>
<button class="normalBtn" type="button" @click="goSubInfo('HotelInfo')">
{{ $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)"
>
<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"
/>
<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="{
<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
>
}">{{ 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>
<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")
......@@ -449,22 +342,11 @@
}}</span>
</div>
</div>
<el-tooltip
class="item"
effect="dark"
:content="item.Name"
placement="top-start"
popper-class="max-w250"
>
<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"
>
<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>
......@@ -482,31 +364,20 @@
<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"
>
<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="
<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
......@@ -518,529 +389,461 @@
<button @click="goSubInfo('HotelInfo', item.ID)" class="hotelBtnMan">
{{ $t("pub.updateMsg") }}
</button>
<button
@click="CopyHotel(item.ID)"
class="hotelBtnMan"
v-if="userInfo.RB_Group_id == QjGroupId()"
>
<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 @click="goproduct('HotelProductManage', item)" class="hotelBtnMan"
v-if="userInfo.RB_Group_id != QjGroupId()">
房型
</button>
<br />
<!--v-if="IsHotelPriceStock==1" HK 10-21注释-->
<button
style="width: 80px; margin-top: 10px"
@click="goUrl('HotelProductManage2', item)"
class="hotelBtnMan"
>
<button v-if="IsHotelPriceStock==1" style="width: 80px; margin-top: 10px"
@click="goUrl('HotelProductManage2', item)" class="hotelBtnMan">
{{ $t("ground.baojiayukucun") }}
</button>
<button
style="width: 80px; margin-top: 10px"
@click="downloadFile(item)"
class="hotelBtnMan"
>
<button v-if="IsHotelPriceStock==1" style="width: 80px; margin-top: 10px" @click="downloadFile(item)"
class="hotelBtnMan">
上传报价
</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>
<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">
<div>
<el-input
style="margin-bottom: 20px"
v-model="uploadTitle"
placeholder="请填写报价单标题"
></el-input>
<el-upload
class="upload-demo"
:file-list="DownloadMaterialsFileList"
:http-request="uploadTest"
:on-remove="handleRemove"
:limit="1"
action=""
>
<el-button
:disabled="DownloadMaterialsFileList.length ? true : false"
size="small"
type="primary"
>点击上传</el-button
>
<el-input style="margin-bottom: 20px" v-model="uploadTitle" placeholder="请填写报价单标题"></el-input>
<el-upload class="upload-demo" :file-list="DownloadMaterialsFileList" :http-request="uploadTest"
:on-remove="handleRemove" :limit="1" action="">
<el-button :disabled="DownloadMaterialsFileList.length ? true : false" size="small" type="primary">点击上传
</el-button>
</el-upload>
<div class="submit-box">
<el-button
type="primary"
style="margin: 20px auto"
@click="submitFile"
>提交</el-button
>
<el-button type="primary" style="margin: 20px auto" @click="submitFile">提交</el-button>
</div>
</div>
</el-dialog>
<el-dialog title="查看报价" :visible.sync="showFilelist">
<button
style="width: 80px; margin-top: 10px"
@click="uploadFile()"
class="hotelBtnMan"
>
<button style="width: 80px; margin-top: 10px" @click="uploadFile()" class="hotelBtnMan">
上传报价
</button>
<el-table
:data="DmcFileStoreList"
stripe
style="width: 100%"
>
<el-table :data="DmcFileStoreList" stripe style="width: 100%">
<el-table-column fixed prop="Title" label="标题">
</el-table-column>
<el-table-column
prop="CreateByName"
label="创建人"
width="150"
>
<el-table-column prop="CreateByName" label="创建人" width="150">
</el-table-column>
<el-table-column
prop="CreateTime"
label="创建日期"
>
<el-table-column prop="CreateTime" label="创建日期">
</el-table-column>
<el-table-column
prop="DateStr"
label="操作"
width="120"
>
<template slot-scope="scope">
<el-popconfirm @confirm="deleteFile(scope.row, scope.$index)"
title="确定删除吗?"
>
<el-button slot="reference"
class="editInfo"
type="danger">删除</el-button>
</el-popconfirm>
<a :href="scope.row.Url" type="download">
<el-button class="editInfo" type="primary">下载</el-button></a
>
</template>
<el-table-column prop="DateStr" label="操作" width="120">
<template slot-scope="scope">
<el-popconfirm @confirm="deleteFile(scope.row, scope.$index)" title="确定删除吗?">
<el-button slot="reference" class="editInfo" type="danger">删除</el-button>
</el-popconfirm>
<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 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>
</div>
</template>
<script>
import page from '../../utils/page';
export default {
data() {
return {
page: { currentPage: 1, pageSize: 10, total: 0 },
editInfo: {},
uploadTitle: "",
DownloadMaterialsFileList: [],
showFilelist: false,
showUpload: false,
DmcFileStoreList: [],
userInfo: {}, //登录用户信息
IsHotelPriceStock: 0, //1-有获取酒店库存与报价添加修改权限
countryList: "",
provinceList: "",
cityList: "",
district: "",
tableData: [],
EmployeeList: [], //员工列表
//酒店类型
HotelTypeList: [],
//酒店价格
HotelPirceTypeList: [],
status: [
{
value: "0",
label: this.$t("pub.normalSel"),
import page from '../../utils/page';
export default {
data() {
return {
page: {
currentPage: 1,
pageSize: 10,
total: 0
},
{
value: "1",
label: this.$t("system.table_delete"),
editInfo: {},
uploadTitle: "",
DownloadMaterialsFileList: [],
showFilelist: false,
showUpload: false,
DmcFileStoreList: [],
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, //操作人
ProductType: 1, //国际酒店
},
],
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, //操作人
ProductType: 1, //国际酒店
},
};
},
methods: {
handlePageChange(val) {
this.page.pageIndex = val;
this.getFilelist();
},
uploadFile() {
this.showUpload = true;
this.uploadTitle = "";
this.DownloadMaterialsFileList = []
},
downloadFile(hotel) {
this.hotel = hotel;
console.log('downloadFile', hotel)
this.getFilelist();
this.showFilelist = true;
},
handleRemove(file, fileList) {
this.DownloadMaterialsFileList = fileList;
};
},
uploadTest(file) {
let newArr = [];
newArr.push(file.file);
let path = "/Upload/DMC/Icon/";
this.UploadSelfFileT(path, newArr, (x) => {
let url = this.domainManager().ViittoFileUrl + x.data.FilePath;
let Name = x.data.SourceFileName;
this.DownloadMaterialsFileList.push({
Url: url,
Name: Name,
name: Name,
methods: {
handlePageChange(val) {
this.page.pageIndex = val;
this.getFilelist();
},
uploadFile() {
this.showUpload = true;
this.uploadTitle = "";
this.DownloadMaterialsFileList = []
},
downloadFile(hotel) {
this.hotel = hotel;
console.log('downloadFile', hotel)
this.getFilelist();
this.showFilelist = true;
},
handleRemove(file, fileList) {
this.DownloadMaterialsFileList = fileList;
},
uploadTest(file) {
let newArr = [];
newArr.push(file.file);
let path = "/Upload/DMC/Icon/";
this.UploadSelfFileT(path, newArr, (x) => {
let url = this.domainManager().ViittoFileUrl + x.data.FilePath;
let Name = x.data.SourceFileName;
this.DownloadMaterialsFileList.push({
Url: url,
Name: Name,
name: Name,
});
});
});
},
submitFile() {
if (!this.uploadTitle) {
this.$message.error("请填写标题");
return;
}
if (!this.DownloadMaterialsFileList.length) {
this.$message.error("请上传文件");
return;
}
this.apipost(
"hotel_get_SetDMCFileStore",
{
Id: this.editInfo.Id || 0,
Title: this.uploadTitle,
ProcudtType: 1,
ProductId: this.hotel.ID,
FileInfoList: this.DownloadMaterialsFileList,
},
(res) => {
this.showUpload = false;
this.getFilelist();
},
(err) => {}
);
},
deleteFile(file) {
this.apipost(
"hotel_get_RemoveDMCFileStore",
{
Id: file.Id,
},
(res) => {
// this.DmcFileStoreList.splice(index, 1);
this.getFilelist();
},
(err) => {}
);
},
editFile(file) {
this.editInfo = file;
this.showUpload = true;
this.uploadTitle = file.Title;
file.FileInfoList.forEach((item) => (item.name = item.Name));
this.DownloadMaterialsFileList = file.FileInfoList;
},
getFilelist() {
this.apipost(
"hotel_get_GetDMCFileStoreList",
{
HotelId: this.hotel.ID,
pageIndex: this.page.currentPage,
pageSize: this.page.pageSize
},
(res) => {
if (res.data.resultCode) {
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) => {}
);
},
CopyHotel(Id) {
var that = this;
that.Confirm("是否要复制此酒店?", function () {
var msg = {
Id: Id,
},
submitFile() {
if (!this.uploadTitle) {
this.$message.error("请填写标题");
return;
}
if (!this.DownloadMaterialsFileList.length) {
this.$message.error("请上传文件");
return;
}
this.apipost(
"hotel_get_SetDMCFileStore", {
Id: this.editInfo.Id || 0,
Title: this.uploadTitle,
ProcudtType: 1,
ProductId: this.hotel.ID,
FileInfoList: this.DownloadMaterialsFileList,
},
(res) => {
this.showUpload = false;
this.getFilelist();
},
(err) => {}
);
},
deleteFile(file) {
this.apipost(
"hotel_get_RemoveDMCFileStore", {
Id: file.Id,
},
(res) => {
// this.DmcFileStoreList.splice(index, 1);
this.getFilelist();
},
(err) => {}
);
},
editFile(file) {
this.editInfo = file;
this.showUpload = true;
this.uploadTitle = file.Title;
file.FileInfoList.forEach((item) => (item.name = item.Name));
this.DownloadMaterialsFileList = file.FileInfoList;
},
getFilelist() {
this.apipost(
"hotel_get_GetDMCFileStoreList", {
HotelId: this.hotel.ID,
pageIndex: this.page.currentPage,
pageSize: this.page.pageSize
},
(res) => {
if (res.data.resultCode) {
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) => {}
);
},
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,
};
that.apipost(
"hotel_post_CopyHotelService",
msg,
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) {
that.Success(res.data.message);
that.selectResource();
} else {
that.Error(res.data.message);
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
);
});
},
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,
},
//调整到产品列表
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) {
that.Success(res.data.message);
that.selectResource();
this.HotelTypeList = res.data.data;
}
},
null
(err) => {}
);
});
},
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 !== "") {
},
GetHotelPirceTypeList() {
this.apipost(
"dict_post_Destination_GetChildList",
msg,
"dmc_post_Get_GetHotelPriceType", {},
(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;
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) => {}
);
},
},
//获取国家
getCountryList() {
this.apipost(
"dict_post_Destination_GetCountry",
{},
(res) => {
this.countryList = res.data.data;
},
(err) => {}
);
mounted() {
this.userInfo = this.getLocalStorage();
this.getEmployeeList();
this.GetHotelPirceStockAuth();
this.getCountryList();
this.GetHotelTypeList();
this.GetHotelPirceTypeList();
},
selectResource() {
this.loading = true;
if (this.msg.Status == "") {
this.msg.Status = "-1";
created() {
if (this.$route.query.hasOwnProperty("cache")) {
if (this.$store.state.pageCondition != null) {
this.msg = this.$store.state.pageCondition;
}
}
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.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) {
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;
}
}
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;
}
}
var id = this.$route.query.ID;
if (id) {
this.msg.ID = id;
}
this.selectResource();
},
};
this.selectResource();
},
};
</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