房屋详情待完善

This commit is contained in:
Zy
2026-05-14 17:57:09 +08:00
parent 0d3bb25e86
commit 9645412534
16 changed files with 562 additions and 185 deletions

View File

@@ -4,80 +4,81 @@
<div class="AddBuildingBody">
<div class="title">
<span>基本信息</span>
<el-button type="primary" text>编辑</el-button>
<el-button type="primary" text @click="editHouse">编辑</el-button>
</div>
<div class="addBuildingFormBody">
<div class="descriptionsbox">
<div class="label">房号:</div>
<div class="value">娜美</div>
<div class="value">{{ HouseInfo.house?.houseNo ?? '--' }}</div>
</div>
<div class="descriptionsbox">
<div class="label">所属小区:</div>
<div class="value">18100000000</div>
<div class="value">{{ HouseInfo.house?.villageName ?? '--' }}</div>
</div>
<div class="descriptionsbox">
<div class="label">楼栋:</div>
<div class="value">2</div>
<div class="value">{{ HouseInfo.house?.buildingName ?? '--' }}</div>
</div>
<div class="descriptionsbox">
<div class="label">单元:</div>
<div class="value">2单元</div>
<div class="value">{{ HouseInfo.house?.unitNo ?? '--' }} 单元</div>
</div>
<div class="descriptionsbox">
<div class="label">楼层:</div>
<div class="value">3</div>
<div class="value">{{ HouseInfo.house?.floorNo ?? '--' }} </div>
</div>
<div class="descriptionsbox">
<div class="label">建筑面积:</div>
<div class="value">112</div>
<div class="value">{{ HouseInfo.house?.houseArea ?? '--' }}</div>
</div>
<div class="descriptionsbox">
<div class="label">公摊面积:</div>
<div class="value">12</div>
<div class="value">{{ HouseInfo.house?.shareArea ?? '--' }}</div>
</div>
<div class="descriptionsbox">
<div class="label">户型:</div>
<div class="value">3室2厅2卫</div>
<div class="value">
{{ HouseInfo.house?.houseType ? HouseInfo.house?.houseType.split('')[0] : '--' }}
{{ HouseInfo.house?.houseType ? HouseInfo.house?.houseType.split('')[1] : '--' }}
{{ HouseInfo.house?.houseType ? HouseInfo.house?.houseType.split('')[2] : '--' }}
</div>
</div>
</div>
</div>
<!-- 储藏室信息 -->
<div class="AddBuildingBody">
<div class="title">
<span>储藏室信息 </span>
<el-button type="primary" text>编辑</el-button>
<el-button type="primary" text @click="editStoreRoom">编辑</el-button>
</div>
<div class="addBuildingFormBody">
<div class="descriptionsbox">
<div class="label">房号:</div>
<div class="value">娜美</div>
</div>
<div class="descriptionsbox">
<div class="label">所属小区:</div>
<div class="value">18100000000</div>
</div>
<div class="descriptionsbox">
<div class="label">楼栋:</div>
<div class="value">2</div>
<div class="value">{{ HouseInfo.storeroom?.buildingName ?? '--' }}</div>
</div>
<div class="descriptionsbox">
<div class="label">单元:</div>
<div class="value">2单元</div>
<div class="value">{{ HouseInfo.storeroom?.unitNo ?? '--' }} 单元</div>
</div>
<div class="descriptionsbox">
<div class="label">楼层:</div>
<div class="value">3</div>
<div class="label">储藏室号:</div>
<div class="value">{{ HouseInfo.storeroom?.unitNo ?? '--' }} </div>
</div>
<div class="descriptionsbox">
<div class="label">建筑面积:</div>
<div class="value">112</div>
<div class="value">{{ HouseInfo.storeroom?.houseArea ?? '--' }}</div>
</div>
<div class="descriptionsbox">
<div class="label">公摊面积:</div>
<div class="value">12</div>
<div class="value">{{ HouseInfo.storeroom?.shareArea ?? '--' }}</div>
</div>
<div class="descriptionsbox">
<div class="label">户型:</div>
<div class="value">3室2厅2卫</div>
<div class="label">实用面积:</div>
<div class="value">{{ HouseInfo.storeroom?.internalArea ?? '--' }}</div>
</div>
<div class="descriptionsbox">
<div class="label">备注:</div>
<div class="value"></div>
</div>
</div>
</div>
@@ -85,41 +86,52 @@
<div class="AddBuildingBody">
<div class="title">
<span>车位信息</span>
<el-button type="primary" text>编辑</el-button>
<el-button type="primary" text @click="handleEditParking" v-if="HouseInfo.parking">编辑</el-button>
</div>
<div class="addBuildingFormBody">
<div class="addBuildingFormBody" v-if="HouseInfo.parking">
<div class="descriptionsbox">
<div class="label">房号:</div>
<div class="value">娜美</div>
<div class="label">区域:</div>
<div class="value">{{ HouseInfo.storeroom?.shareArea ?? '--' }}</div>
</div>
<div class="descriptionsbox">
<div class="label">所属小区:</div>
<div class="label">车位编号:</div>
<div class="value">18100000000</div>
</div>
<div class="descriptionsbox">
<div class="label">楼栋:</div>
<div class="label">车位面积:</div>
<div class="value">2</div>
</div>
<div class="descriptionsbox">
<div class="label">单元:</div>
<div class="label">楼层:</div>
<div class="value">2单元</div>
</div>
<div class="descriptionsbox">
<div class="label">楼层:</div>
<div class="label">车位类型:</div>
<div class="value">3</div>
</div>
<div class="descriptionsbox">
<div class="label">建筑面积:</div>
<div class="label">车位状态:</div>
<div class="value">112</div>
</div>
<div class="descriptionsbox">
<div class="label">公摊面积:</div>
<div class="label">持有人:</div>
<div class="value">12</div>
</div>
<div class="descriptionsbox">
<div class="label">户型:</div>
<div class="label">添加时间:</div>
<div class="value">3室2厅2卫</div>
</div>
<div class="descriptionsbox">
<div class="label">添加人:</div>
<div class="value">3室2厅2卫</div>
</div>
<div class="descriptionsbox">
<div class="label">备注:</div>
<div class="value"></div>
</div>
</div>
<div v-else class="w-full h-full flex flex-center min-h-4rem">
<span style="color: #999; font-weight: 500; font-size: 1.1rem; letter-spacing: 10px">暂无信息</span>
</div>
</div>
<!-- 收费项目 -->
@@ -128,7 +140,7 @@
<span>收费项目</span>
</div>
<div>
<el-table :data="tableData" style="width: 100%">
<el-table :data="HouseInfo.chargeItemList" style="width: 100%">
<el-table-column prop="date" label="收费项目" />
<el-table-column prop="name" label="收费标准" />
<el-table-column prop="name" label="开始时间" />
@@ -144,13 +156,20 @@
<span>相关住户</span>
</div>
<div>
<el-table :data="tableData" style="width: 100%">
<el-table-column prop="date" label="姓名" />
<el-table-column prop="name" label="性别" />
<el-table-column prop="name" label="联系电话" />
<el-table-column prop="name" label="身份" />
<el-table :data="HouseInfo.residentList" style="width: 100%">
<el-table-column prop="residentName" label="姓名" />
<el-table-column prop="gender" label="性别">
<template #default="scope">
<DictTag :options="sys_user_sex" :value="scope.row.gender"></DictTag>
</template>
</el-table-column>
<el-table-column prop="phone" label="联系电话" />
<el-table-column prop="ownerRelationship" label="身份">
<template #default="scope">
<DictTag :options="com_resident_relationship" :value="scope.row.ownerRelationship"></DictTag>
</template>
</el-table-column>
<el-table-column prop="name" label="备注" />
<el-table-column prop="address" label="操作" />
</el-table>
</div>
</div>
@@ -160,13 +179,22 @@
<span>缴费账单</span>
</div>
<div>
<el-table :data="tableData" style="width: 100%">
<el-table-column prop="date" label="姓名" />
<el-table-column prop="name" label="性别" />
<el-table-column prop="name" label="联系电话" />
<el-table-column prop="name" label="身份" />
<el-table-column prop="name" label="备注" />
<el-table-column prop="address" label="操作" />
<el-table :data="HouseInfo.billResidentList" align="center" style="width: 100%">
<el-table-column prop="billCode" label="账单编号" />
<el-table-column prop="billName" label="账单名称" />
<el-table-column prop="chargeTypeName" label="账单项目" />
<el-table-column prop="money" label="金额">
<template #default="scope">
<span v-if="scope.row.chargeTypeName === '水费' || scope.row.chargeTypeName === '电费'">--</span>
<span v-else>{{ scope.row.money }}</span>
</template>
</el-table-column>
<el-table-column prop="payStatus" label="支付状态">
<template #default="scope">
<span v-if="scope.row.chargeTypeName === '水费' || scope.row.chargeTypeName === '电费'">--</span>
<DictTag :options="com_pay_status" :value="scope.row.payStatus"></DictTag>
</template>
</el-table-column>
</el-table>
</div>
</div>
@@ -176,6 +204,12 @@
<script setup lang="ts">
import { ref } from 'vue';
import PageHeader from '@/components/Pageheader/index.vue';
import { Data, getHouseMain } from '@/api/system/house';
const { proxy } = getCurrentInstance() as ComponentInternalInstance;
const { com_resident_relationship } = toRefs<any>(proxy?.useDict('com_resident_relationship'));
const { sys_user_sex } = toRefs<any>(proxy?.useDict('sys_user_sex'));
const { com_pay_status } = toRefs<any>(proxy?.useDict('com_pay_status'));
const tableData = [
{
date: '2016-05-03',
@@ -198,6 +232,52 @@ const tableData = [
address: 'No. 189, Grove St, Los Angeles'
}
];
const route = useRoute();
const router = useRouter();
const routeid = ref('');
const HouseInfo = ref<Data>({
billResidentList: [],
chargeItemList: [],
house: null,
parking: null,
residentList: [],
storeroom: null
});
function editHouse() {
router.push({
path: '/house/editHouse',
query: {
id: HouseInfo.value.house.houseId
}
});
}
function editStoreRoom() {
router.push({
path: '/house/EditStoreRoom',
query: {
id: HouseInfo.value.storeroom.storeroomId
}
});
}
function handleEditParking() {
router.push({
path: '/house/editParking',
query: {
id: HouseInfo.value.parking.parkingId
}
});
}
function init() {
if (route.query.id) {
routeid.value = route.query.id as string;
getHouseMain(routeid.value).then((res) => {
console.log(res);
HouseInfo.value = res.data;
});
}
}
init();
</script>
<style scoped lang="scss">