From ec763e1cb7dca873caf4afbc0dfde047b51753d3 Mon Sep 17 00:00:00 2001
From: riku <risaku@163.com>
Date: 星期五, 17 十月 2025 17:26:54 +0800
Subject: [PATCH] 2025.10.17
---
src/components/device/DeviceManage.vue | 55 ++++++++++++++++++++++++++++++++++++++++++-------------
1 files changed, 42 insertions(+), 13 deletions(-)
diff --git a/src/components/device/DeviceManage.vue b/src/components/device/DeviceManage.vue
index b892027..f7872c8 100644
--- a/src/components/device/DeviceManage.vue
+++ b/src/components/device/DeviceManage.vue
@@ -1,17 +1,17 @@
<template>
- <el-button
+ <!-- <el-button
type="primary"
icon="Memo"
class="el-button-custom p-events-auto"
@click="dialogVisible = !dialogVisible"
>
璁惧绠$悊
- </el-button>
- <CardDialog v-model="dialogVisible" title="璧拌埅璁惧绠$悊">
- <el-row class="mission-table">
+ </el-button> -->
+ <CardDialog v-bind="$attrs" title="璧拌埅璁惧绠$悊">
+ <el-row class="device-table">
<el-col :span="20">
<el-table
- :data="deviceStore.deviceList"
+ :data="deviceData"
table-layout="fixed"
size="small"
:show-overflow-tooltip="true"
@@ -28,7 +28,14 @@
align="center"
width="50"
/>
- <el-table-column prop="deviceType" label="璁惧绫诲瀷" align="center" />
+ <el-table-column
+ prop="deviceType"
+ label="璁惧绫诲瀷"
+ align="center"
+ width="70"
+ :formatter="deviceFormatter"
+ />
+ <el-table-column prop="deviceName" label="璁惧鍚嶇О" align="center" />
<el-table-column prop="deviceCode" label="璁惧缂栧彿" align="center" />
<el-table-column
prop="createTime"
@@ -36,7 +43,7 @@
align="center"
:formatter="timeFormatter"
/>
- <el-table-column label="绠$悊" width="140" align="center">
+ <el-table-column label="绠$悊" width="70" align="center">
<template #default="{ row }">
<el-button
type="primary"
@@ -51,7 +58,7 @@
</el-col>
<el-col :span="4" class="flex-col">
<div>
- <!-- todo 璁惧鍒涘缓 -->
+ <DeviceCreate></DeviceCreate>
</div>
</el-col>
</el-row>
@@ -59,24 +66,27 @@
<MessageBox
v-model="msgBoxVisible"
:on-confirm="onConfirm"
- title="鍒犻櫎璧拌埅浠诲姟"
- msg="纭鏄惁鍒犻櫎璇ヨ蛋鑸换鍔�"
+ title="鍒犻櫎璧拌埅璁惧"
+ msg="纭鏄惁鍒犻櫎璇ヨ蛋鑸澶�"
confirmText="鍒犻櫎"
></MessageBox>
</template>
<script>
import moment from 'moment';
-import deviceApi from '@/api/deviceApi';
import { mapStores } from 'pinia';
import { useDeviceStore } from '@/stores/device';
import { useFetchData } from '@/composables/fetchData';
+import { typeName } from '@/constant/device-type';
export default {
setup() {
const { loading, fetchData } = useFetchData();
return { loading, fetchData };
},
- props: {},
+ props: {
+ // modelValue: Boolean
+ },
+ // emits: ['update:modelValue'],
data() {
return {
dialogVisible: false,
@@ -85,18 +95,37 @@
};
},
computed: {
- ...mapStores(useDeviceStore)
+ ...mapStores(useDeviceStore),
+ deviceData() {
+ return this.deviceStore.getDevice();
+ }
},
methods: {
+ // handleChange(value) {
+ // this.$emit('update:modelValue', value);
+ // },
deleteDevice(row) {
this.onConfirm = () => {
this.deviceStore.deleteDevice(row.deviceCode);
};
this.msgBoxVisible = true;
},
+ // eslint-disable-next-line no-unused-vars
+ deviceFormatter(row, col, cellValue, index) {
+ return typeName(cellValue);
+ },
+ // eslint-disable-next-line no-unused-vars
timeFormatter(row, col, cellValue, index) {
return moment(cellValue).format('YYYY-MM-DD HH:mm:ss');
}
}
};
</script>
+<style scoped>
+.flex-col {
+ display: flex;
+ flex-direction: column;
+ gap: 4px;
+ align-items: flex-end;
+}
+</style>
--
Gitblit v1.9.3