diff --git a/src/api/device.ts b/src/api/device.ts index 18a4ae5..c699379 100644 --- a/src/api/device.ts +++ b/src/api/device.ts @@ -72,6 +72,11 @@ export function queryProductByName(data: any) { }); } +// 设备状态 +export function toggleDeviceStatus(id: number) { + return axios.patch(`/api/rest/device/toggle/${id}`) +} + // 新增 export function createDevice(data: DeviceCreateRecord) { return axios.post(`/api/rest/device`, data); diff --git a/src/views/iot/device/index.vue b/src/views/iot/device/index.vue index ce3d5ec..508232f 100644 --- a/src/views/iot/device/index.vue +++ b/src/views/iot/device/index.vue @@ -171,11 +171,18 @@ {{ record.id }} @@ -255,22 +253,17 @@ paramsData.value = res.data.params; }; - // // 预览图列表 - // const previewList = computed(() => { - // return { - // name: formData.value.preview?.fileName, - // url: formData.value.preview?.url, - // uid: formData.value.preview?.id, - // } - // }); - // // 图标列表 - // const iconList = computed(() => { - // return { - // name: formData.value.icon?.fileName, - // url: formData.value.icon?.url, - // uid: formData.value.icon?.id, - // } - // }); + // 预览图列表 + const previewList = computed(() => { + const { preview }= formData.value; + return preview?.url ? [{ name: preview.fileName, url: preview.url, uid: preview.id }] : []; + }); + + // 图标列表 + const iconList = computed(() => { + const { icon } = formData.value; + return icon?.url ? [{ name: icon.fileName, url: icon.url, uid: icon.id }] : []; + }); // 自定义预览图上传 const customRequest = async (option: any,type: string) => { const { fileItem, onSuccess, onError } = option; @@ -295,12 +288,23 @@ }; // 删除图片 const beforeRemove = async (file: any) => { - if (!file.uid) { - const res = await deleteAttachment(file.response.id); - return res.status === 200; + try { + const fileId = file.uid || file.response?.id; + if (!fileId) { + Message.error('无法获取图片 ID'); + } + // 调用删除接口 + const res = await deleteAttachment(fileId); + if (res.status === 200) { + // 删除成功后 + Message.success('删除成功'); + } else { + Message.error('删除失败'); + } + } + catch (error) { + Message.error('删除图片失败,请稍后重试'); } - const res = await deleteAttachment(file.uid); - return res.status === 200; }; // 组件被点击