Commit 31e20393 authored by 黄媛媛's avatar 黄媛媛
parents 449e3ccd fa101d49
...@@ -200,7 +200,7 @@ ...@@ -200,7 +200,7 @@
<el-option :label="$t('fnc.sizhang')" :value='0' :key='0' v-if='msg.TemplateId!==36 && msg.TemplateId!==37 && msg.TemplateId!==48 && msg.TemplateId !==53'></el-option> <el-option :label="$t('fnc.sizhang')" :value='0' :key='0' v-if='msg.TemplateId!==36 && msg.TemplateId!==37 && msg.TemplateId!==48 && msg.TemplateId !==53'></el-option>
<el-option :label="$t('fnc.rmbxianjin')" :value='2' :key='2' v-if='msg.TemplateId!==36 && msg.TemplateId!==37 && msg.TemplateId!==48 && msg.TemplateId !==53'></el-option> <el-option :label="$t('fnc.rmbxianjin')" :value='2' :key='2' v-if='msg.TemplateId!==36 && msg.TemplateId!==37 && msg.TemplateId!==48 && msg.TemplateId !==53'></el-option>
<el-option :label="$t('fnc.wbxianjin')" :value='3' :key='3' v-if='msg.TemplateId!==36 && msg.TemplateId!==37 && msg.TemplateId!==48 && msg.TemplateId !==53'></el-option> <el-option :label="$t('fnc.wbxianjin')" :value='3' :key='3' v-if='msg.TemplateId!==36 && msg.TemplateId!==37 && msg.TemplateId!==48 && msg.TemplateId !==53'></el-option>
<el-option :label="$t('fnc.zjinchi')" :value='4' :key='4' v-if='msg.TemplateId===36 || msg.TemplateId===37 || msg.TemplateId===48 || msg.TemplateId===53'></el-option> <el-option :label="$t('fnc.zjinchi')" :value='4' :key='4' v-if='msg.TemplateId===36 || msg.TemplateId===37 || msg.TemplateId===48 || msg.TemplateId===53|| msg.TemplateId===51|| msg.TemplateId===52'></el-option>
<el-option :label="$t('fnc.ptxnzhanghu')" :value='5' :key='5' v-if='msg.TemplateId!==36 && msg.TemplateId!==37 && msg.TemplateId!==48 && msg.TemplateId !==53'></el-option> <el-option :label="$t('fnc.ptxnzhanghu')" :value='5' :key='5' v-if='msg.TemplateId!==36 && msg.TemplateId!==37 && msg.TemplateId!==48 && msg.TemplateId !==53'></el-option>
<el-option :label="$t('fnc.djxnzhanghu')" :value='6' :key='6' v-if='msg.TemplateId!==36 && msg.TemplateId!==37 && msg.TemplateId!==48 && msg.TemplateId !==53'></el-option> <el-option :label="$t('fnc.djxnzhanghu')" :value='6' :key='6' v-if='msg.TemplateId!==36 && msg.TemplateId!==37 && msg.TemplateId!==48 && msg.TemplateId !==53'></el-option>
<el-option :label="$t('fnc.szxiangdi')" :value='7' :key='7' v-if='msg.TemplateId!==36 && msg.TemplateId!==37 && msg.TemplateId!==48 && msg.TemplateId !==53'></el-option> <el-option :label="$t('fnc.szxiangdi')" :value='7' :key='7' v-if='msg.TemplateId!==36 && msg.TemplateId!==37 && msg.TemplateId!==48 && msg.TemplateId !==53'></el-option>
......
...@@ -57,15 +57,15 @@ ...@@ -57,15 +57,15 @@
<div :class="stockColor(item,subItem)" <div :class="stockColor(item,subItem)"
:style="subItem.month===item.date&&msg2.DateList.indexOf(subItem.day)!==-1?'border-color: green':''" :style="subItem.month===item.date&&msg2.DateList.indexOf(subItem.day)!==-1?'border-color: green':''"
@click="calendarDayOn(item, subItem)"> @click="calendarDayOn(item, subItem)">
<el-popover placement="bottom" title="报价信息" width="400" trigger="hover" <el-popover placement="bottom" title="报价信息" width="470" trigger="hover"
v-if="subItem.data&&subItem.data.SubList && subItem.data.SubList[0]"> v-if="subItem.data&&subItem.data.SubList && subItem.data.SubList[0]">
<template> <template>
<table style="margin-left:3px;padding-top:2px;width:370px;"> <table style="margin-left:3px;padding-top:2px;width:450px;">
<tr> <tr>
<th width="40" style="text-align:center">批次</th> <th width="40" style="text-align:center">批次</th>
<th width="40" style="text-align:center">价格</th> <th width="100" style="text-align:center">价格</th>
<th width="40" style="text-align:center">库存</th> <th width="50" style="text-align:center">库存</th>
<th width="60" style="text-align:center">剩余<br/>库存</th> <th width="80" style="text-align:center">剩余库存</th>
<th width="140" style="text-align:center">供应商</th> <th width="140" style="text-align:center">供应商</th>
<th width="50" style="text-align:center">操作</th> <th width="50" style="text-align:center">操作</th>
</tr> </tr>
...@@ -74,7 +74,7 @@ ...@@ -74,7 +74,7 @@
{{childItem.BatchNumber}} {{childItem.BatchNumber}}
</td> </td>
<td style="text-align:center;white-space:nowrap; "> <td style="text-align:center;white-space:nowrap; ">
{{childItem.CostPrice}} {{childItem.CostPrice}} {{childItem.PriceTaxTypeStr}}
</td> </td>
<td style="text-align:center;white-space:nowrap; "> <td style="text-align:center;white-space:nowrap; ">
{{childItem.Inventory}} {{childItem.Inventory}}
...@@ -273,6 +273,15 @@ ...@@ -273,6 +273,15 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="6">
<el-form-item label="税入/税别">
<el-select v-model="msg2.PriceTaxType" placeholder="请选择">
<el-option label="请选择" :value='0'></el-option>
<el-option :key="1" label="税入R0" :value="1"></el-option>
<el-option :key="2" label="税别R10" :value="2"></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="18"> <el-col :span="18">
<el-form-item label="备注" prop="Remark"> <el-form-item label="备注" prop="Remark">
<el-input type="textarea" v-model="msg2.Remark" :rows="1" placeholder="请输入备注内容" style="width: 600px;"> <el-input type="textarea" v-model="msg2.Remark" :rows="1" placeholder="请输入备注内容" style="width: 600px;">
...@@ -510,6 +519,15 @@ ...@@ -510,6 +519,15 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="6">
<el-form-item label="税入/税别">
<el-select v-model="msg.PriceTaxType" placeholder="请选择">
<el-option label="请选择" :value='0'></el-option>
<el-option :key="1" label="税入R0" :value="1"></el-option>
<el-option :key="2" label="税别R10" :value="2"></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="18"> <el-col :span="18">
<el-form-item label="备注" prop="Remark"> <el-form-item label="备注" prop="Remark">
<el-input type="textarea" v-model="msg.Remark" :rows="1" placeholder="请输入备注内容" style="width: 600px;"> <el-input type="textarea" v-model="msg.Remark" :rows="1" placeholder="请输入备注内容" style="width: 600px;">
...@@ -638,6 +656,7 @@ ...@@ -638,6 +656,7 @@
BeforeDay: 0, //提前还房天数 BeforeDay: 0, //提前还房天数
FreeRoomNum: 0, //免间数 FreeRoomNum: 0, //免间数
PayStyle: 0, //付款方式 PayStyle: 0, //付款方式
PriceTaxType: 0, //税入税别
}, },
msg2: { msg2: {
Hotel: '0', Hotel: '0',
...@@ -671,6 +690,7 @@ ...@@ -671,6 +690,7 @@
BeforeDay: 0, //提前还房天数 BeforeDay: 0, //提前还房天数
FreeRoomNum: 0, //免间数 FreeRoomNum: 0, //免间数
PayStyle: 0, //付款方式 PayStyle: 0, //付款方式
PriceTaxType: 0, //税入税别
}, },
rules: { rules: {
InventoryType: { InventoryType: {
...@@ -996,6 +1016,7 @@ ...@@ -996,6 +1016,7 @@
this.msg.BeforeDay = data.BeforeDay; this.msg.BeforeDay = data.BeforeDay;
this.msg.FreeRoomNum = data.FreeRoomNum; this.msg.FreeRoomNum = data.FreeRoomNum;
this.msg.PayStyle = data.PayStyle; this.msg.PayStyle = data.PayStyle;
this.msg.PriceTaxType=data.PriceTaxType;
} }
}) })
}, },
...@@ -1078,6 +1099,7 @@ ...@@ -1078,6 +1099,7 @@
this.msg.BeforeDay = 0; this.msg.BeforeDay = 0;
this.msg.FreeRoomNum = 0; this.msg.FreeRoomNum = 0;
this.msg.PayStyle = 0; this.msg.PayStyle = 0;
this.msg.PriceTaxType=0;
} else { } else {
this.Error(res.data.message) this.Error(res.data.message)
} }
...@@ -1097,6 +1119,7 @@ ...@@ -1097,6 +1119,7 @@
this.msg2.BeforeDay = 0; this.msg2.BeforeDay = 0;
this.msg2.FreeRoomNum = 0; this.msg2.FreeRoomNum = 0;
this.msg2.PayStyle = 0; this.msg2.PayStyle = 0;
this.msg2.PriceTaxType=0;
}, },
//批量删除 //批量删除
delete2Reset: function () { delete2Reset: function () {
...@@ -1114,6 +1137,7 @@ ...@@ -1114,6 +1137,7 @@
that.msg2.BeforeDay = 0; that.msg2.BeforeDay = 0;
that.msg2.FreeRoomNum = 0; that.msg2.FreeRoomNum = 0;
that.msg2.PayStyle = 0; that.msg2.PayStyle = 0;
that.msg2.PriceTaxType=0;
} else { } else {
that.Error(res.data.message) that.Error(res.data.message)
} }
...@@ -1136,6 +1160,7 @@ ...@@ -1136,6 +1160,7 @@
this.msg2.BeforeDay = 0; this.msg2.BeforeDay = 0;
this.msg2.FreeRoomNum = 0; this.msg2.FreeRoomNum = 0;
this.msg2.PayStyle = 0; this.msg2.PayStyle = 0;
this.msg2.PriceTaxType=0;
} else { } else {
this.Error(res.data.message) this.Error(res.data.message)
} }
......
...@@ -116,7 +116,7 @@ ...@@ -116,7 +116,7 @@
</el-dialog> </el-dialog>
</div> </div>
<div class="supplierList clearfix" v-loading="loading"> <div class="supplierList clearfix" v-loading="loading">
<div class="supList" v-for="item in tabelDate" :key="item.subCode"> <div class="supList" v-for="item in tabelDate" :key="item.subCode" style="height:270px;">
<div class="suTop"> <div class="suTop">
<img src="../../assets/img/suplier.jpg"> <img src="../../assets/img/suplier.jpg">
<div class="topCircle">{{item.Number}}</div> <div class="topCircle">{{item.Number}}</div>
...@@ -136,6 +136,7 @@ ...@@ -136,6 +136,7 @@
@click="outerVisible = true,dialogTitle='修改供应商信息',updateInfo(item.ID)">{{$t('pub.updateMsg')}}</button> @click="outerVisible = true,dialogTitle='修改供应商信息',updateInfo(item.ID)">{{$t('pub.updateMsg')}}</button>
<button class="hollowFixedBtn UPBtn" @click="isdelete(item.ID)">删除</button> <button class="hollowFixedBtn UPBtn" @click="isdelete(item.ID)">删除</button>
<button class="hollowFixedBtn HS_financial" @click="AccountManage(item)">账户管理</button> <button class="hollowFixedBtn HS_financial" @click="AccountManage(item)">账户管理</button>
<button class="hollowFixedBtn HS_financial" @click="GoHotel(item)" >酒店付款方式配置</button>
</div> </div>
</div> </div>
</div> </div>
...@@ -220,6 +221,19 @@ ...@@ -220,6 +221,19 @@
}; };
}, },
methods: { methods: {
//跳转到供应商酒店配置页面
GoHotel(item)
{
this.$router.push({
path: "HotelSupplierHotel",
query: {
ID: item.ID,
Name:item.Name,
tab: "供应商酒店备注",
blank: 'y',
}
});
},
handleCurrentChange(val) { handleCurrentChange(val) {
this.msg.pageIndex = val; this.msg.pageIndex = val;
this.initData(); this.initData();
......
<style>
.CM_look {
padding: 4px !important;
position: relative;
top: 1px;
}
</style>
<template>
<div class="flexOne">
<div class="query-box">
<ul>
<li>
<input type="button" class="normalBtn" value="新增" @click="isShow=true,dialogTitle='新增供应商酒店付款方式'" />
</li>
</ul>
<el-dialog :title="dialogTitle" :visible.sync="isShow" center custom-class="w460">
<el-form :model="addMsg" label-width="100px">
<el-form-item :label="$t('hotel.suplier_name')" prop="Name">
{{SupplierName}}
</el-form-item>
<el-form-item label="酒店">
<el-select v-model="addMsg.HotelId" filterable placeholder="请选择" class="w220">
<el-option label="请选择" :value="0"></el-option>
<el-option v-for='item in HotelList' :key="item.ID" :label="item.Name" :value="item.ID">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="付款方式">
<el-select v-model="addMsg.SubPayType" filterable placeholder="请选择" class="w220">
<el-option label="请选择" :value="0"></el-option>
<el-option v-for='item in PayTypeList' :key="item.Id" :label="item.name" :value="item.Id">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="开始日期">
<el-date-picker class="w220" type="date" v-model="addMsg.StartDate" :picker-options="pickerBeginDateBefore"
value-format="yyyy-MM-dd" placeholder></el-date-picker>
</el-form-item>
<el-form-item label="结束日期">
<el-date-picker class="w220" type="date" v-model="addMsg.EndDate" :picker-options="pickerBeginDateAfter"
value-format="yyyy-MM-dd" placeholder></el-date-picker>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<button class="hollowFixedBtn" @click="initData(),isShow = false">{{$t('pub.cancelBtn')}}</button> &nbsp;
<button class="normalBtn" type="primary" @click="SaveData()">{{$t('pub.sureBtn')}}</button>
</div>
</el-dialog>
</div>
<table class="singeRowTable" border="0" cellspacing="0" cellpadding="0" v-loading="loading">
<tr>
<th>酒店</th>
<th>开始日期</th>
<th>结束日期</th>
<th>付款方式</th>
<th>{{$t('system.table_operation')}}</th>
</tr>
<tr v-for="item in dataList">
<td>{{item.HotelName}}</td>
<td>{{item.StartDateStr}}</td>
<td>{{item.EndDateStr}}</td>
<td>{{item.SubPayTypeStr}}</td>
<td>
<el-tooltip class="item" effect="dark" :content="$t('system.table_edit')" placement="top-start">
<el-button type="primary" class="iconfont icon-bianji-smal"
@click="GetData(item.Id),isShow=true,dialogTitle='修改供应商酒店付款方式'"></el-button>
</el-tooltip>
</td>
</tr>
</table>
</div>
</template>
<script>
export default {
data() {
return {
msg: {
SupplierId: 0,
},
loading: false,
isShow: false, //是否显示新增修改
//供应商名称
SupplierName: "",
dialogTitle: "新增酒店付款方式",
//数据源
dataList: [],
HotelList: [], //酒店列表
//添加修改供应商酒店信息
addMsg: {
Id: 0, //编号
SupplierId: 0, //
HotelId: 0,
StartDate: "",
EndDate: "",
SubPayType: 0,
},
//付款方式
PayTypeList: [{
name: '现付',
Id: 1
}, {
name: '签单',
Id: 2
}],
pickerBeginDateBefore: {
disabledDate: time => {
if (this.addMsg.EndDate == null) {
return false;
} else {
let endTime = new Date(this.addMsg.EndDate)
return endTime.getTime() < time.getTime()
}
}
},
pickerBeginDateAfter: {
disabledDate: time => {
let startTime = new Date(this.addMsg.StartDate)
return startTime.getTime() >= time.getTime()
}
}
}
},
mounted() {
this.msg.SupplierId = this.$route.query.ID;
this.addMsg.SupplierId = this.$route.query.ID;
this.SupplierName = this.$route.query.Name;
this.getList();
this.getHotelList();
},
methods: {
//初始化数据
initData() {
this.addMsg.Id = 0;
this.addMsg.SupplierId = this.$route.query.ID;
this.addMsg.HotelId = 0;
this.addMsg.StartDate = "";
this.addMsg.EndDate = "";
this.addMsg.SubPayType = 0;
},
SaveData() {
if (this.addMsg.HotelId <= 0) {
this.Info("请选择酒店!");
return;
}
if (this.addMsg.SubPayType <= 0) {
this.Info("请选择付款方式!");
return;
}
if (this.addMsg.StartDate == "") {
this.Info("请选择开始时间!");
return;
}
if (this.addMsg.EndDate == "") {
this.Info("请选择结束时间!");
return;
}
this.apipost(
"supplier_post_SetSupplierDetailService",
this.addMsg,
res => {
this.loading = false;
if (res.data.resultCode == 1) {
this.Success(res.data.message);
this.initData();
this.isShow = false;
this.getList();
} else {
this.Error(res.data.message);
}
},
null
);
},
//根据编号获取实体
GetData(Id) {
this.apipost(
"supplier_post_GetEntityService", {
Id: Id
},
res => {
this.loading = false;
if (res.data.resultCode == 1) {
var nData = res.data.data;
this.addMsg.Id = nData.Id;
this.addMsg.HotelId = nData.HotelId;
this.addMsg.SubPayType = nData.SubPayType;
this.addMsg.StartDate = nData.StartDateStr;
this.addMsg.EndDate = nData.EndDateStr;
} else {
this.Error(res.data.message);
}
},
null
);
},
//获取数据
getList() {
this.loading = true;
this.apipost(
"supplier_get_GetListService",
this.msg,
res => {
this.loading = false;
if (res.data.resultCode == 1) {
this.dataList = res.data.data;
} else {
this.Error(res.data.message);
}
},
null
);
},
//获取酒店列表
getHotelList() {
this.loading = true;
this.apipost(
"hotel_post_GetList", {
QCountry: 651
},
res => {
this.loading = false;
if (res.data.resultCode == 1) {
this.HotelList = res.data.data;
} else {
this.Error(res.data.message);
}
},
null
);
},
}
}
</script>
...@@ -140,7 +140,7 @@ ...@@ -140,7 +140,7 @@
OrderId: 0, OrderId: 0,
currentPage: 1, currentPage: 1,
isGetTicket: 1, //不查询机票 isGetTicket: 1, //不查询机票
isGetZiYouXing: 1, //不查询自由行 isGetZiYouXing: 0, //查询自由行
}, },
IsHaveLeader: 1, //1-有领队,0-无领队 IsHaveLeader: 1, //1-有领队,0-无领队
IsLeaderGuide: 0, //1-领兼导,0-领队 IsLeaderGuide: 0, //1-领兼导,0-领队
...@@ -218,8 +218,8 @@ ...@@ -218,8 +218,8 @@
//导出报表 //导出报表
let msg = { let msg = {
TCID: this.msg.TCID, TCID: this.msg.TCID,
isGetTicket: 1, //不查询机票 isGetTicket: 1, //不查询机票
isGetZiYouXing: 1, //不查询自由行 isGetZiYouXing: 0, //查询自由行
}; };
var fileName = "旅客名单.xls"; var fileName = "旅客名单.xls";
if (this.QueryMsg.TeamInfoData != null) { if (this.QueryMsg.TeamInfoData != null) {
......
...@@ -288,7 +288,6 @@ ...@@ -288,7 +288,6 @@
sItem.TCID = this.editList[0].TCID; sItem.TCID = this.editList[0].TCID;
} }
}); });
//console.log("this.editList",this.editList);
this.apipost( this.apipost(
"travelhouse_post_SetTravelChangeHouseService", "travelhouse_post_SetTravelChangeHouseService",
this.editList, this.editList,
......
...@@ -1281,7 +1281,7 @@ export default { ...@@ -1281,7 +1281,7 @@ export default {
getNavT() { getNavT() {
let _this = this let _this = this
this.apipost( this.apipost(
"dmcstatistics_post_GetHotelStaticsByTCIDs", "dmcstatistics_post_GetNewHotelStaticsByTCIDs_V4",
{ TCIDs: this.$route.query.id }, { TCIDs: this.$route.query.id },
res => { res => {
if (res.data.resultCode == 1) { if (res.data.resultCode == 1) {
...@@ -1455,10 +1455,10 @@ export default { ...@@ -1455,10 +1455,10 @@ export default {
// } // }
// }) // })
}, },
unique(arr) { // 根据唯一标识orderId来对数组进行过滤 unique(arr, name) { // 根据唯一标识orderId来对数组进行过滤
const res = new Map(); //定义常量 res,值为一个Map对象实例 const res = new Map(); //定义常量 res,值为一个Map对象实例
//返回arr数组过滤后的结果,结果为一个数组 过滤条件是,如果res中没有某个键,就设置这个键的值为1 //返回arr数组过滤后的结果,结果为一个数组 过滤条件是,如果res中没有某个键,就设置这个键的值为1
return arr.filter((arr) => !res.has(arr.DiningID) && res.set(arr.DiningID, 1)) return arr.filter((arr) => !res.has(arr[name]) && res.set(arr[name], 1))
}, },
getnewList(){ getnewList(){
this.loading = true; this.loading = true;
...@@ -1539,7 +1539,7 @@ export default { ...@@ -1539,7 +1539,7 @@ export default {
} }
Diningdest[i].row = row Diningdest[i].row = row
} }
this.DiningDataList = this.unique(Diningdest); this.DiningDataList = this.unique(Diningdest, 'DiningID');
// this.DiningDataList = Diningdest // this.DiningDataList = Diningdest
//票 //票
let ScenicList = [] let ScenicList = []
...@@ -1574,7 +1574,7 @@ export default { ...@@ -1574,7 +1574,7 @@ export default {
for(let i = 0; i < list.length; i++) { for(let i = 0; i < list.length; i++) {
Scenicdest.push({ Scenicdest.push({
UseTimeStr: ai.UseTimeStr, UseTimeStr: ai.UseTimeStr,
DiningID: ai.DiningID, TicketID: ai.TicketID,
data: [ai] data: [ai]
}); });
} }
...@@ -1587,7 +1587,7 @@ export default { ...@@ -1587,7 +1587,7 @@ export default {
} }
Scenicdest[i].row = row Scenicdest[i].row = row
} }
this.ScenicDataList = this.unique(Scenicdest); this.ScenicDataList = this.unique(Scenicdest, 'TicketID');
// this.ScenicDataList = Scenicdest // this.ScenicDataList = Scenicdest
//酒 //酒
let HotelList = [] let HotelList = []
......
...@@ -904,9 +904,8 @@ ...@@ -904,9 +904,8 @@
<el-option :key="0" label="请选择" :value="0"></el-option> <el-option :key="0" label="请选择" :value="0"></el-option>
<el-option v-for="hotelItem in subItem.HotelList" :key="hotelItem.ID" :label="hotelItem.Name" <el-option v-for="hotelItem in subItem.HotelList" :key="hotelItem.ID" :label="hotelItem.Name"
:value="hotelItem.ID"> :value="hotelItem.ID">
<span style="float: left">{{hotelItem.Name}}</span> <span style="float:left">{{hotelItem.Name}}</span>
<span style="float: right; color:red; font-size: 13px">剩余:{{hotelItem.Inventory}} / <span style="float:right;color:red;font-size:13px">剩余:{{hotelItem.Inventory}}/价格:{{hotelItem.CostPrice}}{{hotelItem.PriceTaxTypeStr}} </span>
价格:{{hotelItem.CostPrice}}</span>
</el-option> </el-option>
</el-select> </el-select>
</td> </td>
......
...@@ -695,6 +695,14 @@ export default { ...@@ -695,6 +695,14 @@ export default {
title: '供应商管理' title: '供应商管理'
}, },
}, },
{
path: '/HotelSupplierHotel', //供应商酒店付款方式配置
name: 'HotelSupplierHotel',
component: resolve => require(['@/components/Hotel/HotelSupplierHotel'], resolve),
meta: {
title: '供应商管理'
},
},
{ {
path: '/hotelproductmanage', //酒店产品管理 path: '/hotelproductmanage', //酒店产品管理
name: 'HotelProductManage', name: 'HotelProductManage',
......
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