| <template> | 
|   <GlobalWindow :title="title" :visible.sync="visible" :confirm-working="isWorking" @confirm="confirm"> | 
|     <el-form :model="form" ref="form" :rules="rules"> | 
|       <el-form-item label="所属项目" prop="projectId"> | 
|         <el-select v-model="form.projectId" @change="changeProject" placeholder="请选择项目" clearable> | 
|           <el-option v-for="item in projectList" :key="item.id" :label="item.name" :value="item.id"></el-option> | 
|         </el-select> | 
|       </el-form-item> | 
|       <el-form-item label="所属楼宇" prop="buildingId"> | 
|         <el-select v-model="form.buildingId" @change="changeBuild" placeholder="请选择楼宇" clearable> | 
|           <el-option v-for="item in buildList" :key="item.id" :label="item.name" :value="item.id"></el-option> | 
|         </el-select> | 
|       </el-form-item> | 
|       <el-form-item label="楼层" prop="floor"> | 
|         <el-select v-model="form.floor" placeholder="请选择楼层" clearable> | 
|           <el-option v-for="item in floorList" :key="item.id" :label="item.name" :value="item.id"></el-option> | 
|         </el-select> | 
|       </el-form-item> | 
|       <el-form-item label="房号" prop="roomNum"> | 
|         <el-input v-model="form.roomNum" placeholder="请输入房号" v-trim /> | 
|       </el-form-item> | 
|       <el-form-item label="房间编号" prop="code"> | 
|         <el-input v-model="form.code" placeholder="请输入房间编号" v-trim /> | 
|       </el-form-item> | 
|       <el-form-item label="是否招商" prop="isInvestment"> | 
|         <el-switch v-model="form.isInvestment" active-value="1" inactive-value="0"> | 
|         </el-switch> | 
|       </el-form-item> | 
|       <el-form-item label="建筑面积(m²)" prop="area"> | 
|         <el-input v-model="form.area" placeholder="请输入建筑面积(m²)" v-trim /> | 
|       </el-form-item> | 
|       <el-form-item label="计租面积(m²)" prop="rentArea"> | 
|         <el-input v-model="form.rentArea" placeholder="请输入计租面积(m²)" v-trim /> | 
|       </el-form-item> | 
|       <el-form-item label="计费面积(m²)" prop="feeArea"> | 
|         <el-input v-model="form.feeArea" placeholder="请输入计费面积(m²)" v-trim /> | 
|       </el-form-item> | 
|     </el-form> | 
|   </GlobalWindow> | 
| </template> | 
|   | 
| <script> | 
| import BaseOpera from '@/components/base/BaseOpera' | 
| import GlobalWindow from '@/components/common/GlobalWindow' | 
| import { getProjectList } from '@/api/project/ywProject' | 
| import { getBuildList } from '@/api/project/ywBuilding' | 
| import { getFloorList } from '@/api/project/yeFloor' | 
| export default { | 
|   name: 'OperaYwRoomWindow', | 
|   extends: BaseOpera, | 
|   components: { GlobalWindow }, | 
|   data() { | 
|     return { | 
|       // 表单数据 | 
|       form: { | 
|         id: null, | 
|         creator: '', | 
|         createDate: '', | 
|         editor: '', | 
|         editDate: '', | 
|         isdeleted: '', | 
|         name: '', | 
|         remark: '', | 
|         status: '', | 
|         sortnum: '', | 
|         imgurl: '', | 
|         code: '', | 
|         roomNum: '', | 
|         isInvestment: '0', | 
|         area: '', | 
|         feeArea: '', | 
|         rentArea: '', | 
|         floor: '', | 
|         projectId: '', | 
|         buildingId: '' | 
|       }, | 
|       // 验证规则 | 
|       rules: { | 
|         projectId: [{ required: true, message: '请选择项目名称' }], | 
|         buildingId: [{ required: true, message: '请选择项目名称' }], | 
|         floor: [{ required: true, message: '请选择楼层' }], | 
|         roomNum: [{ required: true, message: '请输入房号' }], | 
|         isInvestment: [{ required: true, message: '是否招商' }], | 
|         area: [{ required: true, message: '请输入建筑面积' }], | 
|         rentArea: [{ required: true, message: '请输入计租面积' }], | 
|       }, | 
|       projectList: [], | 
|       buildList: [], | 
|       floorList: [], | 
|     } | 
|   }, | 
|   created() { | 
|     this.config({ | 
|       api: '/project/ywRoom', | 
|       'field.id': 'id' | 
|     }) | 
|   }, | 
|   methods: { | 
|     getProject() { | 
|       getProjectList({}).then(res => { | 
|         this.projectList = res || [] | 
|       }) | 
|   | 
|     }, | 
|     changeProject(e) { | 
|       this.form.buildingId = '' | 
|       getBuildList({projectId: e}).then(res => { | 
|         this.buildList = res || [] | 
|       }) | 
|     }, | 
|     changeBuild(e) { | 
|       this.form.floor = '' | 
|       getFloorList({buildingId: e}).then(res => { | 
|         this.floorList = res || [] | 
|       }) | 
|     }, | 
|   } | 
| } | 
| </script> |