|
|
@@ -13,7 +13,7 @@
|
|
|
@clear="searchBtn"
|
|
|
v-model="searchInput.keyWord"
|
|
|
class="w-50 m-2"
|
|
|
- placeholder="请输入房型"
|
|
|
+ placeholder="请输入房号"
|
|
|
style="width: 180px"
|
|
|
/>
|
|
|
</div>
|
|
|
@@ -30,8 +30,8 @@
|
|
|
<div class="condition" style="margin-left: 50px">
|
|
|
<span>房间类型</span>
|
|
|
<el-select
|
|
|
- :clearable="true"
|
|
|
- v-model="searchInput.keyWord"
|
|
|
+ :clearable="false"
|
|
|
+ v-model="searchInput.type"
|
|
|
@change="getList"
|
|
|
class="m-2"
|
|
|
placeholder="请选择房间类型"
|
|
|
@@ -71,9 +71,23 @@
|
|
|
type="index"
|
|
|
label="序号"
|
|
|
/>
|
|
|
- <el-table-column align="center" prop="hName" label="房型" />
|
|
|
+ <el-table-column
|
|
|
+ v-if="searchInput.type == 2"
|
|
|
+ align="center"
|
|
|
+ prop="time"
|
|
|
+ label="终点时长"
|
|
|
+ />
|
|
|
+ <el-table-column align="center" prop="name" label="房型" />
|
|
|
+ <el-table-column align="center" prop="roomId" label="房号" />
|
|
|
<el-table-column align="center" prop="price" label="房费(元)" />
|
|
|
- <el-table-column align="center" prop="number" label="数量" />
|
|
|
+ <el-table-column align="center" prop="visibleName" label="可见范围" />
|
|
|
+ <el-table-column align="center" prop="count" label="数量" />
|
|
|
+ <el-table-column align="center" prop="count" label="类型">
|
|
|
+ <template #default="scope">
|
|
|
+ <span v-if="scope.row.type == 1">全日房</span>
|
|
|
+ <span v-if="scope.row.type == 2">钟点房</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
|
|
|
<el-table-column align="center" label="操作" width="150">
|
|
|
<template #default="scope">
|
|
|
@@ -121,24 +135,10 @@
|
|
|
:inline="true"
|
|
|
>
|
|
|
<div class="titles"><span>房型信息</span></div>
|
|
|
- <div class="form_item">
|
|
|
- <div class="items">
|
|
|
- <el-form-item label="类型 :" prop="type">
|
|
|
- <el-select
|
|
|
- v-model="ruleForm.type"
|
|
|
- class="m-2"
|
|
|
- placeholder="请选择类型"
|
|
|
- >
|
|
|
- <el-option label="全日房" value="1" />
|
|
|
- <el-option label="钟点房" value="2" />
|
|
|
- </el-select>
|
|
|
- </el-form-item>
|
|
|
- </div>
|
|
|
- </div>
|
|
|
<div class="form_item tag">
|
|
|
<div class="items">
|
|
|
<!-- prop="fileListJson" -->
|
|
|
- <el-form-item label="民宿图片 :" prop="fileListJson">
|
|
|
+ <el-form-item label="房间图片 :" prop="roomPicture">
|
|
|
<div class="tooltips">
|
|
|
<div class="img img1">
|
|
|
<div class="updateImg">
|
|
|
@@ -200,13 +200,13 @@
|
|
|
</div>
|
|
|
<div class="form_item">
|
|
|
<div class="items">
|
|
|
- <el-form-item label="房型名称 :" prop="hName">
|
|
|
- <!-- <el-input
|
|
|
- v-model="ruleForm.hName"
|
|
|
- placeholder="请输入房型名称"
|
|
|
- clearable
|
|
|
- /> -->
|
|
|
- <el-select
|
|
|
+ <el-form-item label="房型名称 :" prop="roomName">
|
|
|
+ <el-input
|
|
|
+ v-model="ruleForm.roomName"
|
|
|
+ placeholder="请输入房型名称"
|
|
|
+ clearable
|
|
|
+ />
|
|
|
+ <!-- <el-select
|
|
|
v-model="ruleForm.hName"
|
|
|
class="m-2"
|
|
|
placeholder="请选择民宿类型"
|
|
|
@@ -216,13 +216,13 @@
|
|
|
:label="i.name"
|
|
|
:value="i.name"
|
|
|
/>
|
|
|
- </el-select>
|
|
|
+ </el-select> -->
|
|
|
</el-form-item>
|
|
|
</div>
|
|
|
<div class="items">
|
|
|
- <el-form-item label="房费 :" prop="price">
|
|
|
+ <el-form-item label="房费 :" prop="roomPrice">
|
|
|
<el-input
|
|
|
- v-model="ruleForm.price"
|
|
|
+ v-model="ruleForm.roomPrice"
|
|
|
placeholder="请输入房费"
|
|
|
clearable
|
|
|
/>
|
|
|
@@ -240,9 +240,9 @@
|
|
|
</el-form-item>
|
|
|
</div>
|
|
|
<div class="items">
|
|
|
- <el-form-item label="面积 :" prop="hAreas">
|
|
|
+ <el-form-item label="面积 :" prop="roomArea">
|
|
|
<el-input
|
|
|
- v-model="ruleForm.hAreas"
|
|
|
+ v-model="ruleForm.roomArea"
|
|
|
placeholder="请输入面积大小"
|
|
|
clearable
|
|
|
></el-input>
|
|
|
@@ -266,7 +266,7 @@
|
|
|
<div class="li">
|
|
|
<div
|
|
|
class="li_items"
|
|
|
- v-for="i in ruleForm.houseNumbers"
|
|
|
+ v-for="i in ruleForm.roomNumbers"
|
|
|
:key="i.id"
|
|
|
>
|
|
|
<!-- <span>{{ i.numberName }}</span> -->
|
|
|
@@ -296,23 +296,41 @@
|
|
|
</div>
|
|
|
<div class="form_item">
|
|
|
<div class="items">
|
|
|
- <el-form-item label="可见范围 :" prop="scope">
|
|
|
+ <el-form-item label="可见范围 :" prop="visible">
|
|
|
<el-select
|
|
|
- v-model="ruleForm.scope"
|
|
|
+ v-model="ruleForm.visible"
|
|
|
multiple
|
|
|
placeholder="选择可见范围"
|
|
|
>
|
|
|
- <el-option label="领导" value="1" />
|
|
|
- <el-option label="员工" value="2" />
|
|
|
+ <el-option label="全部" value="0" />
|
|
|
+ <el-option label="学生" value="1" />
|
|
|
+ <el-option label="教职工" value="2" />
|
|
|
+ <el-option label="校友" value="3" />
|
|
|
+ <el-option label="访客" value="4" />
|
|
|
+ <el-option label="临时人员" value="5" />
|
|
|
+ <el-option label="其他" value="6" />
|
|
|
+ <el-option label="领导" value="7" />
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ </div>
|
|
|
+ <div class="items">
|
|
|
+ <el-form-item label="类型 :" prop="roomType">
|
|
|
+ <el-select
|
|
|
+ v-model="ruleForm.roomType"
|
|
|
+ class="m-2"
|
|
|
+ placeholder="请选择类型"
|
|
|
+ >
|
|
|
+ <el-option label="全日房" value="1" />
|
|
|
+ <el-option label="钟点房" value="2" />
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</div>
|
|
|
</div>
|
|
|
<div class="form_item">
|
|
|
<div class="items">
|
|
|
- <el-form-item label="钟点时长 :" prop="hourTime">
|
|
|
+ <el-form-item label="钟点时长 :" prop="roomLiveTime">
|
|
|
<el-select
|
|
|
- v-model="ruleForm.hourTime"
|
|
|
+ v-model="ruleForm.roomLiveTime"
|
|
|
class="m-2"
|
|
|
placeholder="请选择类型"
|
|
|
>
|
|
|
@@ -324,11 +342,13 @@
|
|
|
</el-form-item>
|
|
|
</div>
|
|
|
<div class="items">
|
|
|
- <el-form-item label="使用时间 :" prop="useTime">
|
|
|
+ <el-form-item label="使用时间 :" prop="receivingTime">
|
|
|
<el-time-picker
|
|
|
- v-model="ruleForm.useTime"
|
|
|
+ v-model="ruleForm.receivingTime"
|
|
|
is-range
|
|
|
range-separator="-"
|
|
|
+ format="HH:ss"
|
|
|
+ value-format="HH:ss"
|
|
|
start-placeholder="开始时间"
|
|
|
end-placeholder="结束时间"
|
|
|
/>
|
|
|
@@ -341,10 +361,10 @@
|
|
|
</div>
|
|
|
<div class="form_item">
|
|
|
<div class="items">
|
|
|
- <el-form-item label="选择配置 :" prop="hConfig">
|
|
|
- <el-checkbox-group
|
|
|
+ <el-form-item label="选择配置 :" prop="roomConfig">
|
|
|
+ <!-- <el-checkbox-group
|
|
|
@change="checkHouse"
|
|
|
- v-model="checkedCities"
|
|
|
+ v-model="ruleForm.roomConfig"
|
|
|
:max="5"
|
|
|
>
|
|
|
<el-checkbox
|
|
|
@@ -353,6 +373,17 @@
|
|
|
:label="city.id"
|
|
|
>{{ city.name }}</el-checkbox
|
|
|
>
|
|
|
+ </el-checkbox-group> -->
|
|
|
+ <el-checkbox-group
|
|
|
+ @change="checkHouse"
|
|
|
+ v-model="roomConfig"
|
|
|
+ :max="5"
|
|
|
+ >
|
|
|
+ <el-checkbox label="阳台">阳台</el-checkbox>
|
|
|
+ <el-checkbox label="电视">电视</el-checkbox>
|
|
|
+ <el-checkbox label="双人床">双人床</el-checkbox>
|
|
|
+ <el-checkbox label="浴室">浴室</el-checkbox>
|
|
|
+ <el-checkbox label="投影机">投影机</el-checkbox>
|
|
|
</el-checkbox-group>
|
|
|
</el-form-item>
|
|
|
</div>
|
|
|
@@ -462,14 +493,12 @@ const cities = ref([
|
|
|
"无早餐",
|
|
|
"无停车场",
|
|
|
]); // 名宿配置数据
|
|
|
-const checkedCities = ref([]); // 名宿配置选中数据
|
|
|
const fileList = reactive({ list: [] }); // 添加多张图片的文件
|
|
|
const houseType = ref(); // 房型选择
|
|
|
|
|
|
const searchInput = reactive({
|
|
|
keyWord: "",
|
|
|
- teamId: "",
|
|
|
- schoolId: "",
|
|
|
+ type: 1,
|
|
|
}); // 搜索按钮数据
|
|
|
|
|
|
// 查看图片按钮
|
|
|
@@ -486,20 +515,20 @@ const addDialogVisible = ref(false); // 控制添加员工弹窗
|
|
|
// 添加员工表单数据
|
|
|
const ruleFormRef = ref();
|
|
|
const ruleForm = reactive({
|
|
|
- fileListJson: [],
|
|
|
- hName: "", // 房型名称
|
|
|
- hAreas: "", //房型面积
|
|
|
- price: "", //单价
|
|
|
+ roomName: "", // 房型名称
|
|
|
+ roomArea: "", //房型面积
|
|
|
+ roomPrice: "", //单价
|
|
|
number: "", //数量
|
|
|
- scope: "", // 可见范围
|
|
|
- type: "", // 类型
|
|
|
- hourTime: "", // 钟点时长
|
|
|
- useTime: "", // 使用时间
|
|
|
- hConfig: "", //房型配置
|
|
|
- remark: "", //备注
|
|
|
- houseNumbers: [], // 房间号列表
|
|
|
+ visible: "", // 可见范围
|
|
|
+ roomType: "", // 类型
|
|
|
+ roomLiveTime: "", // 钟点时长
|
|
|
+ receivingTime: "", // 使用时间
|
|
|
+ roomConfig: "", //房型配置
|
|
|
+ roomNumbers: [], // 房间号列表
|
|
|
+ roomPicture: "", // 房间图片
|
|
|
id: "",
|
|
|
});
|
|
|
+const roomConfig=ref() //房型配置
|
|
|
|
|
|
// 房费验证
|
|
|
const validatePrice = (rule, value, callback) => {
|
|
|
@@ -531,8 +560,8 @@ const rules = reactive({
|
|
|
fileListJson: [
|
|
|
{ required: true, message: "民宿图片不能为空", trigger: "blur" },
|
|
|
],
|
|
|
- hName: [{ required: true, message: "房型名称不能为空", trigger: "blur" }],
|
|
|
- price: [
|
|
|
+ roomName: [{ required: true, message: "房型名称不能为空", trigger: "blur" }],
|
|
|
+ roomPrice: [
|
|
|
{ required: true, message: "房费不能为空", trigger: "blur" },
|
|
|
{ validator: validatePrice, trigger: "blur" },
|
|
|
],
|
|
|
@@ -545,15 +574,21 @@ const rules = reactive({
|
|
|
// trigger: "blur",
|
|
|
// },
|
|
|
],
|
|
|
- scope: [{ required: true, message: "请选择可见范围", trigger: "blur" }],
|
|
|
- type: [{ required: true, message: "类型不能为空", trigger: "blur" }],
|
|
|
- hourTime: [{ required: true, message: "钟点时长不能为空", trigger: "blur" }],
|
|
|
- useTime: [{ required: true, message: "使用时间不能为空", trigger: "blur" }],
|
|
|
- hAreas: [
|
|
|
+ visible: [{ required: true, message: "请选择可见范围", trigger: "blur" }],
|
|
|
+ roomType: [{ required: true, message: "类型不能为空", trigger: "blur" }],
|
|
|
+ roomLiveTime: [
|
|
|
+ { required: true, message: "钟点时长不能为空", trigger: "blur" },
|
|
|
+ ],
|
|
|
+ receivingTime: [
|
|
|
+ { required: true, message: "使用时间不能为空", trigger: "blur" },
|
|
|
+ ],
|
|
|
+ roomArea: [
|
|
|
{ required: true, message: "房型面积不能为空", trigger: "blur" },
|
|
|
{ validator: area, trigger: "blur" },
|
|
|
],
|
|
|
- hConfig: [{ required: true, message: "房型配置不能为空", trigger: "blur" }],
|
|
|
+ roomConfig: [
|
|
|
+ { required: true, message: "房型配置不能为空", trigger: "blur" },
|
|
|
+ ],
|
|
|
});
|
|
|
|
|
|
// 查看房型列表
|
|
|
@@ -561,13 +596,13 @@ const getList = async () => {
|
|
|
loading.value = true;
|
|
|
let data = {
|
|
|
page: currentPage.value,
|
|
|
- rows: pageSize.value,
|
|
|
- hName: searchInput.keyWord, // 房型名称
|
|
|
- managerId: sessionStorage.getItem("token"),
|
|
|
+ size: pageSize.value,
|
|
|
+ keyWord: searchInput.keyWord, // 房型名称
|
|
|
+ type: searchInput.type,
|
|
|
};
|
|
|
let res = await axios({
|
|
|
- method: "post",
|
|
|
- url: api.value + "/mhotel/housequeryPage.action",
|
|
|
+ method: "get",
|
|
|
+ url: api.value + "/house/list",
|
|
|
headers: {
|
|
|
// token: sessionStorage.getItem("token"),
|
|
|
// user_head: sessionStorage.getItem("userhead"),
|
|
|
@@ -577,8 +612,32 @@ const getList = async () => {
|
|
|
console.log(res, "房型管理");
|
|
|
if (res.data.code == 200) {
|
|
|
loading.value = false;
|
|
|
- tableData.list = res.data.data.pageList;
|
|
|
- total.value = res.data.data.total;
|
|
|
+
|
|
|
+ res.data.data.list.forEach((item) => {
|
|
|
+ let arr = [];
|
|
|
+ item.visible.split(",").forEach((i) => {
|
|
|
+ if (i == 0) {
|
|
|
+ arr.push("全部");
|
|
|
+ } else if (i == 1) {
|
|
|
+ arr.push("学生");
|
|
|
+ } else if (i == 2) {
|
|
|
+ arr.push("教职工");
|
|
|
+ } else if (i == 3) {
|
|
|
+ arr.push("校友");
|
|
|
+ } else if (i == 4) {
|
|
|
+ arr.push("访客");
|
|
|
+ } else if (i == 5) {
|
|
|
+ arr.push("临时人员");
|
|
|
+ } else if (i == 6) {
|
|
|
+ arr.push("其他");
|
|
|
+ } else if (i == 7) {
|
|
|
+ arr.push("领导");
|
|
|
+ }
|
|
|
+ });
|
|
|
+ item.visibleName = arr.join(",");
|
|
|
+ });
|
|
|
+ tableData.list = res.data.data.list;
|
|
|
+ total.value = res.data.data.totalCount;
|
|
|
// ElMessage({
|
|
|
// type: "success",
|
|
|
// showClose: true,
|
|
|
@@ -606,7 +665,7 @@ const handleRemove = (uploadFile, uploadFiles) => {
|
|
|
fileList.list = fileList.list.filter((item) => {
|
|
|
return item.uid != uploadFile.uid;
|
|
|
});
|
|
|
- ruleForm.fileListJson = fileList.list;
|
|
|
+ ruleForm.roomPicture = fileList.list;
|
|
|
};
|
|
|
// 点击图片的查看按钮
|
|
|
const handlePreview = (file) => {
|
|
|
@@ -628,7 +687,7 @@ const beforeAvatarUpload = (rawFile) => {
|
|
|
};
|
|
|
// 添加照片时往fileList列表中添加图片信息
|
|
|
const handleChange = async (file, fileLists) => {
|
|
|
- // console.log(file, "1111");
|
|
|
+ console.log(file, "1111");
|
|
|
// fileList.list.push(file);
|
|
|
};
|
|
|
// 可以获取图片参数
|
|
|
@@ -639,63 +698,83 @@ const handleUpload = async (file) => {
|
|
|
}
|
|
|
console.log(file, "2222");
|
|
|
let data = new FormData();
|
|
|
- data.set("files", file.file);
|
|
|
- let res = await axios({
|
|
|
- method: "post",
|
|
|
- url: api.value + "/file/cos/upload",
|
|
|
- headers: {},
|
|
|
- data: data,
|
|
|
- });
|
|
|
- console.log(res, "图片上传成功");
|
|
|
- if (res.data.code == 1) {
|
|
|
- // res.data.uid = file.file.uid;
|
|
|
- fileList.list.push({ url: res.data.data, uid: file.file.uid });
|
|
|
- ruleForm.fileListJson = fileList.list;
|
|
|
- }
|
|
|
+ data.set("file", file.file);
|
|
|
+ // let res = await axios({
|
|
|
+ // method: "post",
|
|
|
+ // url: api.value + "/upload/save",
|
|
|
+ // headers: {},
|
|
|
+ // data: data,
|
|
|
+ // });
|
|
|
+ // console.log(res, "图片上传成功");
|
|
|
+ // if (res.data.code == 1) {
|
|
|
+ // // res.data.uid = file.file.uid;
|
|
|
+ // fileList.list.push({ url: res.data.data, uid: file.file.uid });
|
|
|
+ // // ruleForm.roomPicture = fileList.list;
|
|
|
+ // }
|
|
|
};
|
|
|
|
|
|
//添加房型 (--------------------------------------)
|
|
|
const addlist = async () => {
|
|
|
dialongTitle.value = "添加房型";
|
|
|
addDialogVisible.value = true;
|
|
|
- ruleForm.fileListJson = "";
|
|
|
+ ruleForm.roomPicture = "1.jpg"; // 房间图片
|
|
|
fileList.list = []; // 将选中的图片文件置为空
|
|
|
- checkedCities.value = ""; // 将房型配选中的置为空
|
|
|
- ruleForm.hName = ""; // 房型名称
|
|
|
- ruleForm.hAreas = ""; //房型面积
|
|
|
- ruleForm.price = ""; //单价
|
|
|
+ ruleForm.roomName = ""; // 房型名称
|
|
|
+ ruleForm.roomArea = ""; //房型面积
|
|
|
+ ruleForm.roomPrice = ""; //单价
|
|
|
ruleForm.number = ""; //数量
|
|
|
- ruleForm.hConfig = ""; //房型配置
|
|
|
- ruleForm.remark = ""; //备注
|
|
|
- ruleForm.id = ""; //id
|
|
|
- ruleForm.houseNumbers = []; // 房间号列表
|
|
|
- checkedCities.value = [];
|
|
|
+ ruleForm.roomType = ""; // 类型
|
|
|
+ ruleForm.visible = ""; // 可见范围
|
|
|
+ roomConfig.value = ""; //房型配置
|
|
|
+ ruleForm.roomConfig = ""; //房型配置
|
|
|
+ ruleForm.id = ""; // id
|
|
|
+ ruleForm.roomNumbers = []; // 房间号列表
|
|
|
+ ruleForm.roomLiveTime = ""; // 钟点时长
|
|
|
+ ruleForm.receivingTime = ""; // 使用时间
|
|
|
};
|
|
|
|
|
|
//编辑按钮 (-------------------------------------------)
|
|
|
const edit = async (row) => {
|
|
|
console.log(row);
|
|
|
+ dialongTitle.value = "编辑房型"
|
|
|
+ ruleForm.id=row.id
|
|
|
let data = {
|
|
|
- linkId: row.id,
|
|
|
+ houseId: row.id,
|
|
|
};
|
|
|
let res = await axios({
|
|
|
- method: "post",
|
|
|
- url: api.value + "/mhotel/uploadgetByLinkId.action",
|
|
|
+ method: "get",
|
|
|
+ url: api.value + "/house/details",
|
|
|
headers: {},
|
|
|
params: data,
|
|
|
});
|
|
|
- console.log(res, "编辑中查找图片");
|
|
|
+ console.log(res, "编辑详情");
|
|
|
if (res.data.code == 200) {
|
|
|
- // res.data.data.fileInfoList.forEach((item) => {
|
|
|
+ addDialogVisible.value = true;
|
|
|
+ ruleForm.roomName = res.data.data.roomName;
|
|
|
+ ruleForm.roomArea = res.data.data.roomArea;
|
|
|
+ ruleForm.roomPrice = res.data.data.roomPrice;
|
|
|
+ ruleForm.number = res.data.data.number;
|
|
|
+ ruleForm.visible = res.data.data.visible.split(",");
|
|
|
+ ruleForm.roomType = String(res.data.data.roomType);
|
|
|
+ ruleForm.roomLiveTime = res.data.data.roomLiveTime;
|
|
|
+ ruleForm.receivingTime = res.data.data.receivingTime.split("-");
|
|
|
+ ruleForm.roomConfig = res.data.data.roomConfiguration.split(",");
|
|
|
+ roomConfig.value = res.data.data.roomConfiguration.split(",");
|
|
|
+
|
|
|
+ let arr = [];
|
|
|
+ res.data.data.roomIds.split(",").forEach((item, ind) => {
|
|
|
+ arr.push({
|
|
|
+ numberName: item,
|
|
|
+ id: ind,
|
|
|
+ });
|
|
|
+ });
|
|
|
+ ruleForm.roomNumbers = arr;
|
|
|
+ ruleForm.roomPicture = res.data.data.roomPicture;
|
|
|
+ // res.data.data.forEach((item) => {
|
|
|
// item.uid = item.id;
|
|
|
// });
|
|
|
- // fileList.list = res.data.data.fileInfoList;
|
|
|
+ // fileList.list = res.data.data;
|
|
|
// ruleForm.fileListJson = fileList.list;
|
|
|
- res.data.data.forEach((item) => {
|
|
|
- item.uid = item.id;
|
|
|
- });
|
|
|
- fileList.list = res.data.data;
|
|
|
- ruleForm.fileListJson = fileList.list;
|
|
|
// ElMessage({
|
|
|
// type: "success",
|
|
|
// showClose: true,
|
|
|
@@ -710,19 +789,17 @@ const edit = async (row) => {
|
|
|
center: true,
|
|
|
});
|
|
|
}
|
|
|
- dialongTitle.value = "编辑房型";
|
|
|
- addDialogVisible.value = true;
|
|
|
- ruleForm.hName = row.hName; // 房型名称
|
|
|
- ruleForm.hAreas = row.hAreas; //房型面积
|
|
|
- ruleForm.price = row.price; //单价
|
|
|
- ruleForm.number = row.number; //数量
|
|
|
- checkedCities.value = row.hConfig.split(",").map((item) => {
|
|
|
- return Number(item);
|
|
|
- });
|
|
|
- ruleForm.hConfig = row.hConfig; //房型配置
|
|
|
- // ruleForm.remark = "备注"; //备注
|
|
|
- ruleForm.houseNumbers = row.houseNumbers; // 房间号列表
|
|
|
- ruleForm.id = row.id; //id
|
|
|
+ // dialongTitle.value = "编辑房型";
|
|
|
+ // addDialogVisible.value = true;
|
|
|
+ // ruleForm.hName = row.hName; // 房型名称
|
|
|
+ // ruleForm.hAreas = row.hAreas; //房型面积
|
|
|
+ // ruleForm.price = row.price; //单价
|
|
|
+ // ruleForm.number = row.number; //数量
|
|
|
+ // return Number(item);
|
|
|
+ // });
|
|
|
+ // ruleForm.hConfig = row.hConfig; //房型配置
|
|
|
+ // ruleForm.houseNumbers = row.houseNumbers; // 房间号列表
|
|
|
+ // ruleForm.id = row.id; //id
|
|
|
};
|
|
|
// 取消添加房型
|
|
|
const cancelAdd = () => {
|
|
|
@@ -732,7 +809,9 @@ const cancelAdd = () => {
|
|
|
// 选择房型配置
|
|
|
const checkHouse = (val) => {
|
|
|
console.log(val);
|
|
|
- ruleForm.hConfig = val.join(",");
|
|
|
+ ruleForm.roomConfig = val
|
|
|
+ roomConfig.value=val
|
|
|
+ // console.log(ruleForm.roomConfig);
|
|
|
};
|
|
|
|
|
|
// 监听房间数量
|
|
|
@@ -753,14 +832,14 @@ watch(
|
|
|
}
|
|
|
}
|
|
|
arr.forEach((item, index) => {
|
|
|
- ruleForm.houseNumbers.forEach((i, ind) => {
|
|
|
+ ruleForm.roomNumbers.forEach((i, ind) => {
|
|
|
if (index == ind) {
|
|
|
item.numberName = i.numberName;
|
|
|
item.id = i.id;
|
|
|
}
|
|
|
});
|
|
|
});
|
|
|
- ruleForm.houseNumbers = arr;
|
|
|
+ ruleForm.roomNumbers = arr;
|
|
|
console.log(arr, "根据数量添加空房间");
|
|
|
} else {
|
|
|
ElMessage({
|
|
|
@@ -777,28 +856,28 @@ watch(
|
|
|
|
|
|
// 新增房间号
|
|
|
const addRoom = () => {
|
|
|
- console.log(ruleForm.houseNumbers);
|
|
|
+ console.log(ruleForm.roomNumbers);
|
|
|
let arr = {
|
|
|
numberName: "",
|
|
|
id: Math.random().toString(36).substr(3, 6),
|
|
|
};
|
|
|
- ruleForm.houseNumbers.push(arr);
|
|
|
- if (ruleForm.houseNumbers.length > 0) {
|
|
|
- ruleForm.number = ruleForm.houseNumbers.length;
|
|
|
+ ruleForm.roomNumbers.push(arr);
|
|
|
+ if (ruleForm.roomNumbers.length > 0) {
|
|
|
+ ruleForm.number = ruleForm.roomNumbers.length;
|
|
|
}
|
|
|
- // console.log(ruleForm.houseNumbers.length, "房间数量");
|
|
|
+ // console.log(ruleForm.roomNumbers.length, "房间数量");
|
|
|
};
|
|
|
// 删除房间号
|
|
|
const delRoom = (i) => {
|
|
|
- ruleForm.houseNumbers = ruleForm.houseNumbers.filter((item) => {
|
|
|
+ ruleForm.roomNumbers = ruleForm.roomNumbers.filter((item) => {
|
|
|
return i.id != item.id;
|
|
|
});
|
|
|
- if (ruleForm.houseNumbers.length > 0) {
|
|
|
- ruleForm.number = ruleForm.houseNumbers.length;
|
|
|
+ if (ruleForm.roomNumbers.length > 0) {
|
|
|
+ ruleForm.number = ruleForm.roomNumbers.length;
|
|
|
} else {
|
|
|
ruleForm.number = "";
|
|
|
}
|
|
|
- // console.log(ruleForm.houseNumbers.length, "房间数量");
|
|
|
+ // console.log(ruleForm.roomNumbers.length, "房间数量");
|
|
|
};
|
|
|
|
|
|
// 确认添加房型
|
|
|
@@ -808,23 +887,32 @@ const submitAdd = lodash.debounce(async (formEl) => {
|
|
|
if (valid) {
|
|
|
if (dialongTitle.value == "添加房型") {
|
|
|
const arr = [];
|
|
|
- ruleForm.houseNumbers.forEach((item) => {
|
|
|
+ ruleForm.roomNumbers.forEach((item) => {
|
|
|
arr.push(item.numberName);
|
|
|
+ console.log(item);
|
|
|
});
|
|
|
- let data = new FormData();
|
|
|
- data.set("managerId", sessionStorage.getItem("token"));
|
|
|
- data.set("hName", ruleForm.hName);
|
|
|
- data.set("hAreas", ruleForm.hAreas);
|
|
|
- data.set("price", ruleForm.price);
|
|
|
- data.set("number", ruleForm.number);
|
|
|
- data.set("hConfig", ruleForm.hConfig);
|
|
|
- data.set("fileListJson", JSON.stringify(ruleForm.fileListJson));
|
|
|
- // data.set("status", 1);
|
|
|
- data.set("houseNumber", arr.join(","));
|
|
|
- console.log(data);
|
|
|
+
|
|
|
+ let data = {
|
|
|
+ roomNumbers: arr, //房间号
|
|
|
+ house: {
|
|
|
+ roomName: ruleForm.roomName, //房间名字
|
|
|
+ roomType: ruleForm.roomType, //1:全日房,2:钟点房
|
|
|
+ roomPrice: ruleForm.roomPrice,
|
|
|
+ number: ruleForm.number,
|
|
|
+ roomArea: ruleForm.roomArea,
|
|
|
+ roomLiveTime: ruleForm.roomLiveTime,
|
|
|
+ receivingTime: `${ruleForm.receivingTime[0]}-${ruleForm.receivingTime[1]}`,
|
|
|
+ visible: ruleForm.visible.join(","), //可见类型(0:全部,1:学生,2:教职工,3:校友,4:访客,5:临时人员,6:其他,7:领导)
|
|
|
+ roomConfiguration: roomConfig.value.join(','),
|
|
|
+ roomPicture: ruleForm.roomPicture,
|
|
|
+ },
|
|
|
+ adminId: sessionStorage.getItem("adminMenuId"),
|
|
|
+ };
|
|
|
+ console.log(data, "添加房型参数");
|
|
|
+
|
|
|
let res = await axios({
|
|
|
method: "post",
|
|
|
- url: api.value + "/mhotel/houseinsterHouser.action",
|
|
|
+ url: api.value + "/house/save",
|
|
|
headers: {},
|
|
|
data: data,
|
|
|
});
|
|
|
@@ -849,27 +937,37 @@ const submitAdd = lodash.debounce(async (formEl) => {
|
|
|
}
|
|
|
} else {
|
|
|
const arr = [];
|
|
|
- ruleForm.houseNumbers.forEach((item) => {
|
|
|
+ ruleForm.roomNumbers.forEach((item) => {
|
|
|
arr.push(item.numberName);
|
|
|
+ console.log(item);
|
|
|
});
|
|
|
- let data = new FormData();
|
|
|
- data.set("managerId", sessionStorage.getItem("token"));
|
|
|
- data.set("id", ruleForm.id);
|
|
|
- data.set("hName", ruleForm.hName);
|
|
|
- data.set("hAreas", ruleForm.hAreas);
|
|
|
- data.set("price", ruleForm.price);
|
|
|
- data.set("number", ruleForm.number);
|
|
|
- data.set("hConfig", ruleForm.hConfig);
|
|
|
- data.set("fileListJson", JSON.stringify(ruleForm.fileListJson));
|
|
|
- data.set("houseNumber", arr.join(","));
|
|
|
- console.log(data);
|
|
|
+
|
|
|
+ let data = {
|
|
|
+ roomNumbers: arr, //房间号
|
|
|
+ house: {
|
|
|
+ id:ruleForm.id,
|
|
|
+ roomName: ruleForm.roomName, //房间名字
|
|
|
+ roomType: ruleForm.roomType, //1:全日房,2:钟点房
|
|
|
+ roomPrice: ruleForm.roomPrice,
|
|
|
+ number: ruleForm.number,
|
|
|
+ roomArea: ruleForm.roomArea,
|
|
|
+ roomLiveTime: ruleForm.roomLiveTime,
|
|
|
+ receivingTime: `${ruleForm.receivingTime[0]}-${ruleForm.receivingTime[1]}`,
|
|
|
+ visible: ruleForm.visible.join(","), //可见类型(0:全部,1:学生,2:教职工,3:校友,4:访客,5:临时人员,6:其他,7:领导)
|
|
|
+ roomConfiguration: ruleForm.roomConfig.join(','),
|
|
|
+ roomPicture: ruleForm.roomPicture,
|
|
|
+ },
|
|
|
+ adminId: sessionStorage.getItem("adminMenuId"),
|
|
|
+ };
|
|
|
+ console.log(data, "添加房型参数");
|
|
|
+
|
|
|
let res = await axios({
|
|
|
method: "post",
|
|
|
- url: api.value + "/mhotel/houseupdateHouser.action",
|
|
|
+ url: api.value + "/house/update",
|
|
|
headers: {},
|
|
|
data: data,
|
|
|
});
|
|
|
- console.log(res, "编辑员工");
|
|
|
+ console.log(res, "修改房型");
|
|
|
if (res.data.code == 200) {
|
|
|
getList();
|
|
|
ElMessage({
|
|
|
@@ -1022,27 +1120,27 @@ onBeforeMount(async () => {
|
|
|
let data = {
|
|
|
code: 4,
|
|
|
};
|
|
|
- let res = await axios({
|
|
|
- method: "get",
|
|
|
- url: api.value + "/mhotel/hotelqueryList.action",
|
|
|
- headers: {},
|
|
|
- params: data,
|
|
|
- });
|
|
|
- console.log(res, "房型配置");
|
|
|
- cities.value = res.data.data;
|
|
|
+ // let res = await axios({
|
|
|
+ // method: "get",
|
|
|
+ // url: api.value + "/mhotel/hotelqueryList.action",
|
|
|
+ // headers: {},
|
|
|
+ // params: data,
|
|
|
+ // });
|
|
|
+ // console.log(res, "房型配置");
|
|
|
+ // cities.value = res.data.data;
|
|
|
|
|
|
// 查看房型
|
|
|
let datas = {
|
|
|
code: 3,
|
|
|
};
|
|
|
- let ress = await axios({
|
|
|
- method: "get",
|
|
|
- url: api.value + "/mhotel/hotelqueryList.action",
|
|
|
- headers: {},
|
|
|
- params: datas,
|
|
|
- });
|
|
|
- console.log(ress, "查看房型");
|
|
|
- houseType.value = ress.data.data;
|
|
|
+ // let ress = await axios({
|
|
|
+ // method: "get",
|
|
|
+ // url: api.value + "/mhotel/hotelqueryList.action",
|
|
|
+ // headers: {},
|
|
|
+ // params: datas,
|
|
|
+ // });
|
|
|
+ // console.log(ress, "查看房型");
|
|
|
+ // houseType.value = ress.data.data;
|
|
|
});
|
|
|
onUnmounted(() => {
|
|
|
// document.removeEventListener("keyup", Enters);
|