|
@@ -37,6 +37,9 @@
|
|
|
>
|
|
>
|
|
|
</div>
|
|
</div>
|
|
|
<div slot="footer" class="dialog-footer">
|
|
<div slot="footer" class="dialog-footer">
|
|
|
|
|
+ <div style="margin-left: 100px">
|
|
|
|
|
+ <el-divider content-position="left">基本信息</el-divider>
|
|
|
|
|
+ </div>
|
|
|
<el-form :model="icCardInfo" label-position="top">
|
|
<el-form :model="icCardInfo" label-position="top">
|
|
|
<div class="left">
|
|
<div class="left">
|
|
|
<el-form-item label="卡类型">
|
|
<el-form-item label="卡类型">
|
|
@@ -112,7 +115,7 @@
|
|
|
<div class="tree">
|
|
<div class="tree">
|
|
|
<div class="tree-left">
|
|
<div class="tree-left">
|
|
|
<span style="margin-left: 15px">列表</span>
|
|
<span style="margin-left: 15px">列表</span>
|
|
|
- <span style="margin-left: 165px">1/1</span>
|
|
|
|
|
|
|
+ <span style="margin-left: 228px">1/1</span>
|
|
|
</div>
|
|
</div>
|
|
|
<el-tree
|
|
<el-tree
|
|
|
:data="data"
|
|
:data="data"
|
|
@@ -130,8 +133,8 @@
|
|
|
<p style="margin-left: 15px">已选</p>
|
|
<p style="margin-left: 15px">已选</p>
|
|
|
</div>
|
|
</div>
|
|
|
<ul class="infinite-list" style="overflow: auto">
|
|
<ul class="infinite-list" style="overflow: auto">
|
|
|
- <li class="infinite-list-item">
|
|
|
|
|
- <span style="margin-left: 19px">111</span
|
|
|
|
|
|
|
+ <li class="infinite-list-item" v-show="title">
|
|
|
|
|
+ <span style="margin-left: 19px">{{ title }}</span
|
|
|
><i
|
|
><i
|
|
|
class="el-icon-close"
|
|
class="el-icon-close"
|
|
|
@click="cancelCheck"
|
|
@click="cancelCheck"
|
|
@@ -265,60 +268,147 @@
|
|
|
</el-table-column>
|
|
</el-table-column>
|
|
|
<el-table-column prop="address" align="center" label="操作">
|
|
<el-table-column prop="address" align="center" label="操作">
|
|
|
<template slot-scope="{ row }">
|
|
<template slot-scope="{ row }">
|
|
|
- <!-- 详情按钮 -->
|
|
|
|
|
- <span @click="handleEdit(row)" class="operate">解绑</span>
|
|
|
|
|
|
|
+ <!-- 解绑按钮 -->
|
|
|
|
|
+ <span @click="handleDelete(row)" class="operate">解绑</span>
|
|
|
|
|
+ <!-- 编辑按钮 -->
|
|
|
|
|
+ <span @click="handleEdit(row)" class="operate">编辑</span>
|
|
|
|
|
|
|
|
- <!-- 详情弹窗区域 -->
|
|
|
|
|
<el-dialog
|
|
<el-dialog
|
|
|
- title="订单详情"
|
|
|
|
|
|
|
+ title="IC卡详情"
|
|
|
:visible.sync="dialogVisible"
|
|
:visible.sync="dialogVisible"
|
|
|
- width="30%"
|
|
|
|
|
|
|
+ custom-class="editCard"
|
|
|
>
|
|
>
|
|
|
- <div class="userinfo">用户信息</div>
|
|
|
|
|
- <div class="info">
|
|
|
|
|
- <div class="user">
|
|
|
|
|
- <div class="name">姓名</div>
|
|
|
|
|
- <el-input :value="order.userName"></el-input>
|
|
|
|
|
- </div>
|
|
|
|
|
- <div class="user">
|
|
|
|
|
- <div class="name">联系方式</div>
|
|
|
|
|
- <el-input :value="order.userPhone"></el-input>
|
|
|
|
|
- </div>
|
|
|
|
|
- </div>
|
|
|
|
|
- <div class="info">
|
|
|
|
|
- <div class="user">
|
|
|
|
|
- <div class="name">订单号</div>
|
|
|
|
|
- <el-input :value="order.orderNo"></el-input>
|
|
|
|
|
- </div>
|
|
|
|
|
- <div class="user">
|
|
|
|
|
- <div class="name">预付款金额(元)</div>
|
|
|
|
|
- <el-input value="20.00"></el-input>
|
|
|
|
|
- </div>
|
|
|
|
|
- </div>
|
|
|
|
|
- <div class="info">
|
|
|
|
|
- <div class="user">
|
|
|
|
|
- <div class="name">入住时间</div>
|
|
|
|
|
- <el-input :value="order.realStartTime"></el-input>
|
|
|
|
|
- </div>
|
|
|
|
|
- <div class="user">
|
|
|
|
|
- <div class="name">离住时间</div>
|
|
|
|
|
- <el-input :value="order.realEndTime"></el-input>
|
|
|
|
|
- </div>
|
|
|
|
|
- </div>
|
|
|
|
|
- <div class="info">
|
|
|
|
|
- <div class="user">
|
|
|
|
|
- <div class="name">入住天数</div>
|
|
|
|
|
- <el-input value="1"></el-input>
|
|
|
|
|
- </div>
|
|
|
|
|
- <div class="user">
|
|
|
|
|
- <div class="name">支付时间</div>
|
|
|
|
|
- <el-input :value="order.payTime"></el-input>
|
|
|
|
|
- </div>
|
|
|
|
|
|
|
+ <div class="dialog-footer">
|
|
|
|
|
+ <el-form :model="icCardInfo" label-position="top">
|
|
|
|
|
+ <div class="left">
|
|
|
|
|
+ <el-form-item label="卡号">
|
|
|
|
|
+ <el-input v-model="icCardInfo.roomId"></el-input>
|
|
|
|
|
+ </el-form-item>
|
|
|
|
|
+ <el-form-item label="房间号(锁设备UID)">
|
|
|
|
|
+ <el-input v-model="icCardInfo.roomId"></el-input>
|
|
|
|
|
+ </el-form-item>
|
|
|
|
|
+ <el-form-item label="创建时间">
|
|
|
|
|
+ <el-input v-model="icCardInfo.roomId"></el-input>
|
|
|
|
|
+ </el-form-item>
|
|
|
|
|
+
|
|
|
|
|
+ <el-form-item label="生效时间(默认今天)">
|
|
|
|
|
+ <el-date-picker
|
|
|
|
|
+ v-model="startTime"
|
|
|
|
|
+ type="datetime"
|
|
|
|
|
+ placeholder="选择日期时间"
|
|
|
|
|
+ default-time="12:00:00"
|
|
|
|
|
+ value-format="yyyy-MM-dd HH:mm:ss"
|
|
|
|
|
+ >
|
|
|
|
|
+ </el-date-picker>
|
|
|
|
|
+ </el-form-item>
|
|
|
|
|
+ </div>
|
|
|
|
|
+ <div class="right">
|
|
|
|
|
+ <el-form-item label="用户类型">
|
|
|
|
|
+ <el-select
|
|
|
|
|
+ v-model="icCardInfo.userType"
|
|
|
|
|
+ placeholder="用户"
|
|
|
|
|
+ >
|
|
|
|
|
+ <el-option
|
|
|
|
|
+ label="普通用户"
|
|
|
|
|
+ value="普通用户"
|
|
|
|
|
+ ></el-option>
|
|
|
|
|
+ <el-option
|
|
|
|
|
+ label="一次性入住用户"
|
|
|
|
|
+ value="一次性入住用户"
|
|
|
|
|
+ ></el-option>
|
|
|
|
|
+ </el-select>
|
|
|
|
|
+ </el-form-item>
|
|
|
|
|
+ <el-form-item label="持卡人姓名">
|
|
|
|
|
+ <el-input v-model="icCardInfo.name"></el-input>
|
|
|
|
|
+ <span
|
|
|
|
|
+ style="
|
|
|
|
|
+ position: absolute;
|
|
|
|
|
+ left: 200px;
|
|
|
|
|
+ color: #296de3;
|
|
|
|
|
+ cursor: pointer;
|
|
|
|
|
+ "
|
|
|
|
|
+ @click="Editstaff"
|
|
|
|
|
+ >员工</span
|
|
|
|
|
+ >
|
|
|
|
|
+ <el-dialog
|
|
|
|
|
+ title="添加员工"
|
|
|
|
|
+ :visible.sync="selectStaffShow"
|
|
|
|
|
+ width="692px"
|
|
|
|
|
+ append-to-body
|
|
|
|
|
+ custom-class="dialongAllRoom"
|
|
|
|
|
+ >
|
|
|
|
|
+ <div class="tree">
|
|
|
|
|
+ <div class="tree-left">
|
|
|
|
|
+ <span style="margin-left: 15px">列表</span>
|
|
|
|
|
+ <span style="margin-left: 228px">1/1</span>
|
|
|
|
|
+ </div>
|
|
|
|
|
+ <el-tree
|
|
|
|
|
+ :data="data"
|
|
|
|
|
+ show-checkbox
|
|
|
|
|
+ node-key="id"
|
|
|
|
|
+ ref="roomTree"
|
|
|
|
|
+ :default-expand-all="true"
|
|
|
|
|
+ :props="defaultProps"
|
|
|
|
|
+ @check="checkStaff"
|
|
|
|
|
+ >
|
|
|
|
|
+ </el-tree>
|
|
|
|
|
+ </div>
|
|
|
|
|
+ <div class="tree">
|
|
|
|
|
+ <div class="tree-left">
|
|
|
|
|
+ <p style="margin-left: 15px">已选</p>
|
|
|
|
|
+ </div>
|
|
|
|
|
+ <ul class="infinite-list" style="overflow: auto">
|
|
|
|
|
+ <li class="infinite-list-item" v-show="title">
|
|
|
|
|
+ <span style="margin-left: 19px">{{
|
|
|
|
|
+ title
|
|
|
|
|
+ }}</span
|
|
|
|
|
+ ><i
|
|
|
|
|
+ class="el-icon-close"
|
|
|
|
|
+ @click="cancelCheck"
|
|
|
|
|
+ ></i>
|
|
|
|
|
+ </li>
|
|
|
|
|
+ </ul>
|
|
|
|
|
+ </div>
|
|
|
|
|
+ <span slot="footer" class="dialog-footer">
|
|
|
|
|
+ <el-button @click="selectStaffShow = false"
|
|
|
|
|
+ >取 消</el-button
|
|
|
|
|
+ >
|
|
|
|
|
+ <el-button
|
|
|
|
|
+ type="primary"
|
|
|
|
|
+ @click="selectStaffShow = false"
|
|
|
|
|
+ >确 定</el-button
|
|
|
|
|
+ >
|
|
|
|
|
+ </span>
|
|
|
|
|
+ </el-dialog>
|
|
|
|
|
+ </el-form-item>
|
|
|
|
|
+ <el-form-item label="收预付款(元)">
|
|
|
|
|
+ <el-input v-model="icCardInfo.roomId"></el-input>
|
|
|
|
|
+ </el-form-item>
|
|
|
|
|
+ <el-form-item label="失效时间">
|
|
|
|
|
+ <el-date-picker
|
|
|
|
|
+ v-model="endTime"
|
|
|
|
|
+ type="datetime"
|
|
|
|
|
+ placeholder="选择日期时间"
|
|
|
|
|
+ value-format="yyyy-MM-dd HH:mm:ss"
|
|
|
|
|
+ default-time="12:00:00"
|
|
|
|
|
+ @change="endT"
|
|
|
|
|
+ >
|
|
|
|
|
+ </el-date-picker>
|
|
|
|
|
+ </el-form-item>
|
|
|
|
|
+ <el-radio-group
|
|
|
|
|
+ v-model="icCardInfo.radio"
|
|
|
|
|
+ @change="radioChange"
|
|
|
|
|
+ >
|
|
|
|
|
+ <el-radio label="一个星期">一个星期</el-radio>
|
|
|
|
|
+ <el-radio label="一个月">一个月</el-radio>
|
|
|
|
|
+ <el-radio label="半年">半年</el-radio>
|
|
|
|
|
+ <el-radio label="一年">一年</el-radio>
|
|
|
|
|
+ <el-radio label="长期">长期</el-radio>
|
|
|
|
|
+ </el-radio-group>
|
|
|
|
|
+ </div>
|
|
|
|
|
+ </el-form>
|
|
|
</div>
|
|
</div>
|
|
|
</el-dialog>
|
|
</el-dialog>
|
|
|
-
|
|
|
|
|
- <!-- 删除按钮 -->
|
|
|
|
|
- <span @click="handleDelete(row)" class="operate">编辑</span>
|
|
|
|
|
</template>
|
|
</template>
|
|
|
</el-table-column>
|
|
</el-table-column>
|
|
|
</el-table>
|
|
</el-table>
|
|
@@ -372,6 +462,7 @@ export default {
|
|
|
children: "children",
|
|
children: "children",
|
|
|
label: "label",
|
|
label: "label",
|
|
|
},
|
|
},
|
|
|
|
|
+ title: "",
|
|
|
data: [
|
|
data: [
|
|
|
{
|
|
{
|
|
|
id: 1,
|
|
id: 1,
|
|
@@ -564,20 +655,18 @@ export default {
|
|
|
Editstaff() {
|
|
Editstaff() {
|
|
|
this.selectStaffShow = true;
|
|
this.selectStaffShow = true;
|
|
|
},
|
|
},
|
|
|
- chooseAll() {},
|
|
|
|
|
checkStaff(data, nodes) {
|
|
checkStaff(data, nodes) {
|
|
|
- this.count = _.cloneDeep(nodes.checkedNodes);
|
|
|
|
|
|
|
+ // console.log(data, nodes);
|
|
|
|
|
+ this.$refs.roomTree.setCheckedNodes([]);
|
|
|
|
|
+ this.count = [
|
|
|
|
|
+ {
|
|
|
|
|
+ id: data.id,
|
|
|
|
|
+ label: data.label,
|
|
|
|
|
+ },
|
|
|
|
|
+ ];
|
|
|
console.log(this.count);
|
|
console.log(this.count);
|
|
|
- nodes.checkedNodes.forEach((item, index) => {
|
|
|
|
|
- if (item.children) {
|
|
|
|
|
- this.count.splice(index, 1);
|
|
|
|
|
- }
|
|
|
|
|
- });
|
|
|
|
|
- if (this.data[0].children.length == this.count.length) {
|
|
|
|
|
- this.checked = true;
|
|
|
|
|
- } else {
|
|
|
|
|
- this.checked = false;
|
|
|
|
|
- }
|
|
|
|
|
|
|
+ this.$refs.roomTree.setCheckedNodes(this.count);
|
|
|
|
|
+ this.title = this.count[0].label;
|
|
|
},
|
|
},
|
|
|
cancelCheck() {
|
|
cancelCheck() {
|
|
|
console.log(222);
|
|
console.log(222);
|
|
@@ -815,6 +904,44 @@ export default {
|
|
|
height: 64px;
|
|
height: 64px;
|
|
|
td {
|
|
td {
|
|
|
.cell {
|
|
.cell {
|
|
|
|
|
+ .el-dialog__wrapper {
|
|
|
|
|
+ .el-dialog.editCard {
|
|
|
|
|
+ width: 1136px !important;
|
|
|
|
|
+ height: 644px !important;
|
|
|
|
|
+ .el-dialog__header {
|
|
|
|
|
+ height: 86px;
|
|
|
|
|
+ padding: 0;
|
|
|
|
|
+ display: flex;
|
|
|
|
|
+ align-items: center;
|
|
|
|
|
+ }
|
|
|
|
|
+ .el-dialog__body {
|
|
|
|
|
+ text-align: left;
|
|
|
|
|
+ .dialog-footer {
|
|
|
|
|
+ .el-divider--horizontal {
|
|
|
|
|
+ width: 900px;
|
|
|
|
|
+ .el-divider__text {
|
|
|
|
|
+ font-size: 20px;
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ .el-form {
|
|
|
|
|
+ display: flex;
|
|
|
|
|
+ justify-content: center;
|
|
|
|
|
+ .left {
|
|
|
|
|
+ margin: 0 100px;
|
|
|
|
|
+ }
|
|
|
|
|
+ .right {
|
|
|
|
|
+ margin: 0 85px;
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ .el-input {
|
|
|
|
|
+ width: 240px;
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ .el-dialog__footer {
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
.el-checkbox.is-checked {
|
|
.el-checkbox.is-checked {
|
|
|
.el-checkbox__inner {
|
|
.el-checkbox__inner {
|
|
|
background-color: rgba(41, 109, 227, 1);
|
|
background-color: rgba(41, 109, 227, 1);
|
|
@@ -836,8 +963,8 @@ export default {
|
|
|
overflow: hidden;
|
|
overflow: hidden;
|
|
|
.el-dialog {
|
|
.el-dialog {
|
|
|
width: 968px !important;
|
|
width: 968px !important;
|
|
|
- margin-top: 126px !important;
|
|
|
|
|
- height: 914px;
|
|
|
|
|
|
|
+ margin-top: 249px !important;
|
|
|
|
|
+ height: 550px;
|
|
|
opacity: 1;
|
|
opacity: 1;
|
|
|
background: rgba(255, 255, 255, 1);
|
|
background: rgba(255, 255, 255, 1);
|
|
|
box-shadow: none;
|
|
box-shadow: none;
|
|
@@ -1031,7 +1158,14 @@ export default {
|
|
|
}
|
|
}
|
|
|
.el-dialog__footer {
|
|
.el-dialog__footer {
|
|
|
text-align: left;
|
|
text-align: left;
|
|
|
-
|
|
|
|
|
|
|
+ .dialog-footer {
|
|
|
|
|
+ .el-divider--horizontal {
|
|
|
|
|
+ width: 900px;
|
|
|
|
|
+ .el-divider__text {
|
|
|
|
|
+ font-size: 20px;
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
.el-form {
|
|
.el-form {
|
|
|
display: flex;
|
|
display: flex;
|
|
|
justify-content: center;
|
|
justify-content: center;
|
|
@@ -1048,6 +1182,7 @@ export default {
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
/deep/ .dialongAllRoom {
|
|
/deep/ .dialongAllRoom {
|
|
|
.el-dialog__body {
|
|
.el-dialog__body {
|
|
|
display: flex;
|
|
display: flex;
|