Commit 92d7977c authored by 黄奎's avatar 黄奎

餐厅报价修改

parent 1b8bd79b
<style> <style>
.RestaurantPackage .singeRowTable tr:nth-child(n + 2):hover { .RestaurantPackage .singeRowTable tr:nth-child(n + 2):hover {
background-color: white; background-color: white;
box-shadow: 0px 0px 14px 0px #adadad; box-shadow: 0px 0px 14px 0px #adadad;
z-index: 10; z-index: 10;
position: relative; position: relative;
} }
.RestaurantPackage .DaysInfo span {
display: inline-block; .RestaurantPackage .DaysInfo span {
background-color: #2aaef2; display: inline-block;
color: white; background-color: #2aaef2;
border-radius: 4px; color: white;
padding: 0 10px; border-radius: 4px;
height: 30px; padding: 0 10px;
line-height: 30px; height: 30px;
} line-height: 30px;
.RestaurantPackage .DaysInfo span i { }
margin-right: 10px;
} .RestaurantPackage .DaysInfo span i {
.RestaurantPackage .singeRowTable tr:nth-child(n + 2) { margin-right: 10px;
height: 80px; }
text-align: center;
} .RestaurantPackage .singeRowTable tr:nth-child(n + 2) {
.RestaurantPackage .detailsIT .singeRowTable tr:nth-child(n + 2):hover { height: 80px;
background-color: white; text-align: center;
box-shadow: 0px 0px 14px 0px #adadad; }
z-index: 10;
position: relative; .RestaurantPackage .detailsIT .singeRowTable tr:nth-child(n + 2):hover {
} background-color: white;
.RestaurantPackage .Ldata { box-shadow: 0px 0px 14px 0px #adadad;
color: #333333; z-index: 10;
margin-top: 5px; position: relative;
} }
.RestaurantPackage .LP {
color: #e95252; .RestaurantPackage .Ldata {
} color: #333333;
.RestaurantPackage .HP { margin-top: 5px;
color: #2aaef2; }
text-align: left;
font-size: 14px; .RestaurantPackage .LP {
font-weight: bold; color: #e95252;
padding-left: 5px; }
display: inline-block;
} .RestaurantPackage .HP {
.RestaurantPackage .T1 { color: #2aaef2;
text-align: right; text-align: left;
color: #666666; font-size: 14px;
display: inline-block; font-weight: bold;
} padding-left: 5px;
.RestaurantPackage .T2 { display: inline-block;
text-align: left; }
color: #e95252;
font-size: 14px; .RestaurantPackage .T1 {
font-weight: bold; text-align: right;
padding-left: 5px; color: #666666;
display: inline-block; display: inline-block;
} }
.RestaurantPackage .descripTion {
border-radius: 4px; .RestaurantPackage .T2 {
width: 266px; text-align: left;
text-align: left; color: #e95252;
padding: 3px; font-size: 14px;
overflow: hidden; font-weight: bold;
text-overflow: ellipsis; padding-left: 5px;
display: -webkit-box; display: inline-block;
/*! autoprefixer: off */ }
-webkit-box-orient: vertical;
/* autoprefixer: on */ .RestaurantPackage .descripTion {
-webkit-line-clamp: 2; border-radius: 4px;
} width: 266px;
.RestaurantPackage .singeRowTable tr:nth-child(n + 2):hover .descripTion { text-align: left;
background-color: #ededed; padding: 3px;
} overflow: hidden;
.RestaurantPackage .roomName { text-overflow: ellipsis;
display: inline-block; display: -webkit-box;
width: 200px; /*! autoprefixer: off */
overflow: hidden; -webkit-box-orient: vertical;
text-overflow: ellipsis; /* autoprefixer: on */
white-space: nowrap; -webkit-line-clamp: 2;
text-align: left; }
padding-left: 20px;
} .RestaurantPackage .singeRowTable tr:nth-child(n + 2):hover .descripTion {
background-color: #ededed;
}
.RestaurantPackage .roomName {
display: inline-block;
width: 200px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
text-align: left;
padding-left: 20px;
}
</style> </style>
<template> <template>
<div class='flexOne RestaurantPackage'> <div class='flexOne RestaurantPackage'>
<div class="query-box"> <div class="query-box">
<ul> <ul>
<li> <li>
<label>{{$t('restaurant.res_packageName')}}</label> <label>{{$t('restaurant.res_packageName')}}</label>
<el-input v-model="msg.MealName" maxlength="30" @keyup.native.enter="getList"></el-input> <el-input v-model="msg.MealName" maxlength="30" @keyup.native.enter="getList"></el-input>
</li> </li>
<li> <li>
<input type="button" class="hollowFixedBtn" :value="$t('pub.searchBtn')" @click="getList(),resetPageIndex()"/> <input type="button" class="hollowFixedBtn" :value="$t('pub.searchBtn')"
<input type="button" class="normalBtn" @click="resetId(),outerVisible = true,dialogTitle='添加套餐'" :value="$t('pub.addBtn')"/> @click="getList(),resetPageIndex()" />
</li> <input type="button" class="normalBtn" @click="resetId(),outerVisible = true,dialogTitle='添加套餐'"
</ul> :value="$t('pub.addBtn')" />
</div> </li>
<table class="singeRowTable centerTable" border="0" cellspacing="0" cellpadding="0" v-loading="loading" style="border-collapse:separate;border-spacing:0px 10px;table-layout:fixed;"> </ul>
<tr> </div>
<th width="200">{{$t('restaurant.res_packageName')}}</th> <table class="singeRowTable centerTable" border="0" cellspacing="0" cellpadding="0" v-loading="loading"
<th width="200">{{$t('scen.sc_bjts')}}</th> style="border-collapse:separate;border-spacing:0px 10px;table-layout:fixed;">
<th>{{$t('scen.sc_dj')}}</th> <tr>
<th>{{$t('scen.sc_gj')}}</th> <th width="200">{{$t('restaurant.res_packageName')}}</th>
<th width="300">{{$t('hotel.hotel_remark')}}</th> <th width="200">{{$t('scen.sc_bjts')}}</th>
<th>{{$t('hotel.table_operat')}}</th> <th>{{$t('scen.sc_dj')}}</th>
</tr> <th>{{$t('scen.sc_gj')}}</th>
<tr v-for="item in DataList" :key="item.subCode"> <th width="300">{{$t('hotel.hotel_remark')}}</th>
<td> <th>{{$t('hotel.table_operat')}}</th>
<el-tooltip class="item" effect="dark" :content="item.MealName" placement="top-start" popper-class="max-w250"> </tr>
<span class="roomName">{{item.MealName}}</span> <tr v-for="item in DataList" :key="item.subCode">
</el-tooltip> <td>
</td> <el-tooltip class="item" effect="dark" :content="item.MealName" placement="top-start" popper-class="max-w250">
<td class="DaysInfo"> <span class="roomName">{{item.MealName}}</span>
<span><i class="iconfont icon-kaoqintongji"></i>{{item.Days}}{{$t('hotel.hotel_day')}}</span> </el-tooltip>
</td> </td>
<td> <td class="DaysInfo">
<p class="clearfix"> <span><i class="iconfont icon-kaoqintongji"></i>{{item.Days}}{{$t('hotel.hotel_day')}}</span>
<span class="tit_name T1"> </td>
{{item.CurrencyName==''?'':item.CurrencyName}}<span v-if="item.CurrencyCode">({{item.CurrencyCode}})</span></span><span class='tit_name T2'>{{item.LPrice}}</span> <td>
</p> <p class="clearfix">
<p class="Ldata">{{item.LDate}}</p> <span class="tit_name T1">
</td> {{item.CurrencyName==''?'':item.CurrencyName}}<span
<td> v-if="item.CurrencyCode">({{item.CurrencyCode}})</span></span><span
<p class="clearfix"> class='tit_name T2'>{{item.LPrice}}</span>
<span class="tit_name T1"> </p>
{{item.CurrencyName==''?'':item.CurrencyName}}<span v-if="item.CurrencyCode">({{item.CurrencyCode}})</span></span><span class='tit_name HP'>{{item.HPrice}}</span> <p class="Ldata">{{item.LDate}}</p>
</p> </td>
<p class="Ldata">{{item.HDate}}</p> <td>
</td> <p class="clearfix">
<td> <span class="tit_name T1">
<el-tooltip class="item" effect="dark" v-if="item.MealDesc" :content="item.MealDesc" placement="top-start" popper-class="max-w250"> {{item.CurrencyName==''?'':item.CurrencyName}}<span
<span class="descripTion">{{item.MealDesc}}</span> v-if="item.CurrencyCode">({{item.CurrencyCode}})</span></span><span
</el-tooltip> class='tit_name HP'>{{item.HPrice}}</span>
</td> </p>
<td> <p class="Ldata">{{item.HDate}}</p>
<el-button-group> </td>
<el-tooltip class="item" effect="dark" :content="$t('system.table_edit')" placement="top-start"> <td>
<el-button type="primary" icon="iconfont icon-Edit" @click="outerVisible = true,dialogTitle='修改套餐',updateResturant(item.Id)"></el-button> <el-tooltip class="item" effect="dark" v-if="item.MealDesc" :content="item.MealDesc" placement="top-start"
</el-tooltip> popper-class="max-w250">
<el-tooltip class="item" effect="dark" :content="$t('restaurant.res_bidManage')" placement="top-start"> <span class="descripTion">{{item.MealDesc}}</span>
<el-button type="primary" icon="iconfont icon-ico_shezhi" @click="goUrl('RestaurantPrice',item.Id)"></el-button> </el-tooltip>
</el-tooltip> </td>
<el-tooltip class="item" effect="dark" :content="$t('system.table_delete')" placement="top-start"> <td>
<el-button type="danger" icon="el-icon-delete" @click="isDelete(item.Id)"></el-button> <el-button-group>
</el-tooltip> <el-tooltip class="item" effect="dark" :content="$t('system.table_edit')" placement="top-start">
</el-button-group> <el-button type="primary" icon="iconfont icon-Edit"
</td> @click="outerVisible = true,dialogTitle='修改套餐',updateResturant(item.Id)"></el-button>
</tr> </el-tooltip>
</table> <el-tooltip class="item" effect="dark" :content="$t('restaurant.res_bidManage')" placement="top-start">
<el-dialog custom-class='w500' :visible.sync="outerVisible" :title="dialogTitle" center :before-close="closeChangeMachie"> <el-button type="primary" icon="iconfont icon-ico_shezhi" @click="goUrl('RestaurantPrice',item.Id)">
<el-form :model="addMsg" :rules="rules" ref="addMsg" label-width="110px"> </el-button>
<el-form-item :label="$t('restaurant.res_packageResource')" prop="DiningId"> </el-tooltip>
<el-select :placeholder="$t('pub.pleaseSel')" class="w300" disabled v-model="addMsg.DiningId"> <el-tooltip class="item" effect="dark" :content="$t('system.table_delete')" placement="top-start">
<el-option <el-button type="danger" icon="el-icon-delete" @click="isDelete(item.Id)"></el-button>
v-for="item in resList" </el-tooltip>
:key="item.ID" </el-button-group>
:label="item.Name" </td>
:value="item.ID"> </tr>
</el-option> </table>
</el-select> <el-dialog custom-class='w500' :visible.sync="outerVisible" :title="dialogTitle" center
</el-form-item> :before-close="closeChangeMachie">
<el-form-item :label="$t('restaurant.res_packageName')" prop="DiningMealType"> <el-form :model="addMsg" :rules="rules" ref="addMsg" label-width="110px">
<el-select filterable v-model='addMsg.DiningMealType' :placeholder="$t('pub.pleaseSel')"> <el-form-item :label="$t('restaurant.res_packageResource')" prop="DiningId">
<el-option v-for='item in DiningMealTypeList' <el-select :placeholder="$t('pub.pleaseSel')" class="w300" disabled v-model="addMsg.DiningId">
:label='item.Name' <el-option v-for="item in resList" :key="item.ID" :label="item.Name" :value="item.ID">
:value='item.ID' </el-option>
:key='item.ID'> </el-select>
</el-option> </el-form-item>
</el-select> <el-form-item :label="$t('restaurant.res_packageName')" prop="DiningMealType">
</el-form-item> <el-select filterable v-model='addMsg.DiningMealType' :placeholder="$t('pub.pleaseSel')">
<!-- <el-form-item :label="$t('restaurant.res_packageName')" prop="MealName"> <el-option v-for='item in DiningMealTypeList' :label='item.Name' :value='item.ID' :key='item.ID'>
</el-option>
</el-select>
</el-form-item>
<!-- <el-form-item :label="$t('restaurant.res_packageName')" prop="MealName">
<el-input class="w300" type="text" v-model="addMsg.MealName" maxlength="20"></el-input> <el-input class="w300" type="text" v-model="addMsg.MealName" maxlength="20"></el-input>
</el-form-item> --> </el-form-item> -->
<el-form-item :label="$t('hotel.hotel_produceDes')" prop="MealDesc"> <el-form-item :label="$t('hotel.hotel_produceDes')" prop="MealDesc">
<el-input class="w300" type="textarea" v-model="addMsg.MealDesc" maxlength="200"></el-input> <el-input class="w300" type="textarea" v-model="addMsg.MealDesc" maxlength="200"></el-input>
</el-form-item> </el-form-item>
</el-form> </el-form>
<div slot="footer" class="dialog-footer"> <div slot="footer" class="dialog-footer">
<button class="hollowFixedBtn" @click="resetForm('addMsg'),outerVisible = false">{{$t('pub.cancelBtn')}}</button> &nbsp; <button class="hollowFixedBtn"
<button class="normalBtn" type="primary" @click="submitForm('addMsg')">{{$t('pub.saveBtn')}}</button> @click="resetForm('addMsg'),outerVisible = false">{{$t('pub.cancelBtn')}}</button> &nbsp;
</div> <button class="normalBtn" type="primary" @click="submitForm('addMsg')">{{$t('pub.saveBtn')}}</button>
</el-dialog> </div>
<div class="noData" v-show="noData"> </el-dialog>
{{$t('system.content_noData')}} <div class="noData" v-show="noData">
</div> {{$t('system.content_noData')}}
<el-pagination background @current-change="handleCurrentChange" :current-page.sync="msg.currentPage" layout="total,prev, pager, next, jumper" :page-size=msg.pageSize :total=msg.total></el-pagination>
</div> </div>
<el-pagination background @current-change="handleCurrentChange" :current-page.sync="msg.currentPage"
layout="total,prev, pager, next, jumper" :page-size=msg.pageSize :total=msg.total></el-pagination>
</div>
</template> </template>
<script> <script>
export default { export default {
data() { data() {
return { return {
msg: { msg: {
pageIndex: 1, pageIndex: 1,
pageSize: 6, pageSize: 6,
DiningId: "", DiningId: "",
MealName: "", MealName: "",
total: 0, total: 0,
currentPage: 1 currentPage: 1
}, },
addMsg: { addMsg: {
Id: "0", Id: "0",
DiningId: "", DiningId: "",
MealName: "", MealName: "",
MealDesc: "", MealDesc: "",
DiningMealType:"", DiningMealType: "",
}, },
loading: true, loading: true,
DiningMealTypeList:[], DiningMealTypeList: [],
outerVisible: false, outerVisible: false,
dialogTitle: "", dialogTitle: "",
noData: false, noData: false,
DataList: "", DataList: "",
//餐厅列表 //餐厅列表
resList: [], resList: [],
rules: { rules: {
//表单必填验证 //表单必填验证
DiningId: [{ required: true, message: "请选择套餐资源" }], DiningId: [{
DiningMealType: [{ required: true, message: "请选择套餐" }] required: true,
} message: "请选择套餐资源"
}; }],
}, DiningMealType: [{
methods: { required: true,
getList() { message: "请选择套餐"
this.loading = true; }]
this.apipost( }
"meal_post_GetPageList", };
this.msg, },
res => { methods: {
if(res.data.resultCode==1){ getList() {
this.loading = true;
this.apipost(
"meal_post_GetPageList",
this.msg,
res => {
if (res.data.resultCode == 1) {
this.msg.total = res.data.data.count; this.msg.total = res.data.data.count;
if (this.msg.total > 0) { if (this.msg.total > 0) {
this.noData = false; this.noData = false;
...@@ -236,150 +261,154 @@ export default { ...@@ -236,150 +261,154 @@ export default {
this.noData = !this.noData; this.noData = !this.noData;
} }
this.loading = false; this.loading = false;
}else{ } else {
this.Error(res.data.message); this.Error(res.data.message);
} }
}, },
null null
); );
}, },
GetDiningMealTypeList(){ GetDiningMealTypeList() {
this.apipost('meal_post_GetDiningMealType',{},res=>{ this.apipost('meal_post_GetDiningMealType', {}, res => {
if(res.data.resultCode==1){
this.DiningMealTypeList=res.data.data
}
},err=>{})
},
saveResource() {
this.DiningMealTypeList.forEach(item=>{
if(this.addMsg.DiningMealType==item.ID)
{
this.addMsg.MealName =item.Name
}
})
this.apipost(
"meal_post_Set",
this.addMsg,
res => {
if (res.data.resultCode == 1) { if (res.data.resultCode == 1) {
this.getList(); this.DiningMealTypeList = res.data.data
this.Success("保存成功!");
this.outerVisible = false;
this.resetForm("addMsg");
} else {
this.Error(res.data.message);
} }
}, }, err => {})
null },
); saveResource() {
}, this.DiningMealTypeList.forEach(item => {
updateResturant(Id) { if (this.addMsg.DiningMealType == item.ID) {
let msg = { this.addMsg.MealName = item.Name
ID: Id
};
this.apipost(
"meal_post_Get",
msg,
res => {
console.log(res)
if (res.data.resultCode == 1) {
this.addMsg = res.data.data;
this.addMsg.DiningId = parseInt(res.data.data.DiningId);
} else {
this.Error(res.data.message);
} }
},
null
);
},
resetId() {
this.addMsg.Id = "0";
},
isDelete(ID) {
this.$confirm("是否删除?", "提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning"
})
.then(() => {
this.Success("删除成功!");
let msg = {
ID: ID
};
this.apipost(
"meal_post_Remove",
msg,
res => {
if (res.data.resultCode == 1) {
this.Success(res.data.message);
this.getList();
} else {
this.Error(res.data.message);
}
},
null
);
}) })
.catch(() => { this.apipost(
this.Info("已取消删除"); "meal_post_Set",
this.addMsg,
res => {
if (res.data.resultCode == 1) {
this.getList();
this.Success("保存成功!");
this.outerVisible = false;
this.resetForm("addMsg");
} else {
this.Error(res.data.message);
}
},
null
);
},
updateResturant(Id) {
let msg = {
ID: Id
};
this.apipost(
"meal_post_Get",
msg,
res => {
if (res.data.resultCode == 1) {
this.addMsg = res.data.data;
this.addMsg.DiningId = parseInt(res.data.data.DiningId);
} else {
this.Error(res.data.message);
}
},
null
);
},
resetId() {
this.addMsg.Id = "0";
},
isDelete(ID) {
this.$confirm("是否删除?", "提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning"
})
.then(() => {
this.Success("删除成功!");
let msg = {
ID: ID
};
this.apipost(
"meal_post_Remove",
msg,
res => {
if (res.data.resultCode == 1) {
this.Success(res.data.message);
this.getList();
} else {
this.Error(res.data.message);
}
},
null
);
})
.catch(() => {
this.Info("已取消删除");
});
},
goUrl(path, id) {
this.$router.push({
path: path,
query: {
MealId: id,
DiningId: this.addMsg.DiningId,
blank: 'y',
tab: '报价管理'
}
}); });
}, },
goUrl(path, id) { handleCurrentChange(val) {
this.$router.push({ //翻页功能按钮
path: path, this.msg.pageIndex = val;
query: { MealId: id, DiningId: this.addMsg.DiningId,blank:'y',tab:'报价管理' } this.getList();
}); },
}, resetPageIndex() {
handleCurrentChange(val) { //查询初始化页码
//翻页功能按钮 this.msg.pageIndex = 1;
this.msg.pageIndex = val; this.msg.currentPage = 1;
this.getList(); },
}, initResrestaurant() {
resetPageIndex() { //初始化套餐资源
//查询初始化页码 let msg = {};
this.msg.pageIndex = 1; this.apipost(
this.msg.currentPage = 1; "dining_post_GetList",
}, msg,
initResrestaurant() { res => {
//初始化套餐资源 if (res.data.resultCode == 1) {
let msg = {}; this.resList = res.data.data;
this.apipost( }
"dining_post_GetList", },
msg, null
res => { );
if (res.data.resultCode == 1) { },
this.resList = res.data.data; submitForm(addMsg) {
//提交创建、修改表单
let that = this;
that.$refs[addMsg].validate(valid => {
if (valid) {
that.saveResource();
} else {
return false;
} }
}, });
null },
); closeChangeMachie(done) {
}, //弹出框关闭初始化弹框内表单
submitForm(addMsg) { done();
//提交创建、修改表单 this.resetForm("addMsg");
let that = this; },
that.$refs[addMsg].validate(valid => { resetForm(formName) {
if (valid) { this.$refs[formName].resetFields();
that.saveResource(); }
} else {
return false;
}
});
},
closeChangeMachie(done) {
//弹出框关闭初始化弹框内表单
done();
this.resetForm("addMsg");
}, },
resetForm(formName) { mounted() {
this.$refs[formName].resetFields(); this.initResrestaurant();
this.addMsg.DiningId = parseInt(this.$route.query.id);
this.msg.DiningId = this.$route.query.id;
this.getList();
this.GetDiningMealTypeList();
} }
}, };
mounted() {
this.initResrestaurant();
this.addMsg.DiningId = parseInt(this.$route.query.id);
this.msg.DiningId = this.$route.query.id;
this.getList();
this.GetDiningMealTypeList();
}
};
</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