临时添加
This commit is contained in:
@@ -1,8 +1,8 @@
|
||||
<template>
|
||||
<div class="TableBox p-5 h-full">
|
||||
<el-table border :data="floorsSortList">
|
||||
<el-table border :data="currentFloorInfoList">
|
||||
<el-table-column align="center" fixed label="楼层\单元" width="85">
|
||||
<template #default="{ $index, row }">
|
||||
<template #default="{ row }">
|
||||
<span>{{ row }}楼</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
@@ -10,12 +10,12 @@
|
||||
min-width="160"
|
||||
class="column"
|
||||
align="center"
|
||||
:label="units.buildingName"
|
||||
:label="`${units.unitNo}单元`"
|
||||
v-for="(units, index) in currentHouseInfoList"
|
||||
:key="index"
|
||||
>
|
||||
<template #default="{ $index, row }">
|
||||
<houseItem :unit="units.floors_Json" :f-idx="row"></houseItem>
|
||||
<template #default="{ row }">
|
||||
<houseItem :menu-list="menutlist" :unit="units.floors_Json" :f-idx="row"></houseItem>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
@@ -23,40 +23,16 @@
|
||||
</template>
|
||||
|
||||
<script setup lang="ts">
|
||||
import { ref } from 'vue';
|
||||
import houseItem from './houseItem.vue';
|
||||
import { useHouseStore } from '@/store/modules/house';
|
||||
const houseStore = useHouseStore();
|
||||
const { currentHouseInfoList } = storeToRefs(houseStore); // 数据
|
||||
console.log(currentHouseInfoList);
|
||||
const maxFloors = ref(0);
|
||||
const maxUnits = ref(currentHouseInfoList.value.length);
|
||||
const floorslist = ref(new Set());
|
||||
const floorsSortList = computed(() => {
|
||||
const list = Array.from(floorslist.value) as string[];
|
||||
return list.sort(sortNumberStr);
|
||||
});
|
||||
function sortNumberStr(a, b) {
|
||||
const numA = parseFloat(a);
|
||||
const numB = parseFloat(b);
|
||||
|
||||
// 如果都是有效数字 → 按数字大小排(支持负数、小数)
|
||||
if (!isNaN(numA) && !isNaN(numB)) {
|
||||
return numA - numB;
|
||||
}
|
||||
|
||||
// 否则按自然语言排
|
||||
return a.localeCompare(b, 'zh-CN', { numeric: true });
|
||||
}
|
||||
|
||||
currentHouseInfoList.value.forEach((item) => {
|
||||
maxFloors.value = Math.max(maxFloors.value, item.actualFloorCount);
|
||||
item.floors_Json = JSON.parse(`[${item.floors.replaceAll('\\', '')}]`);
|
||||
console.log(item.floors_Json);
|
||||
item.floors_Json.forEach((floor) => {
|
||||
floorslist.value.add(floor.floorNo);
|
||||
});
|
||||
});
|
||||
const { currentHouseInfoList, currentFloorInfoList } = storeToRefs(houseStore); // 数据
|
||||
const menutlist = [
|
||||
{ label: '编辑', value: 'edit' },
|
||||
{ label: '收费标准', value: 'money' },
|
||||
{ label: '详情', value: 'main' },
|
||||
{ label: '删除', value: 'delete' }
|
||||
];
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
|
||||
Reference in New Issue
Block a user