From 69cda63e9ca4de044adf16b6d1adf5afd17756eb Mon Sep 17 00:00:00 2001 From: ZHW <1941286652@qq.com> Date: Mon, 15 Dec 2025 22:40:12 +0800 Subject: [PATCH] =?UTF-8?q?=E8=AE=BE=E5=A4=87=E8=AF=A6=E6=83=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/resources/web/src/api/waterMaker.ts | 101 ++ src/main/resources/web/src/router/index.ts | 13 + .../src/views/equipment/WaterMakerDetail.vue | 916 +++++------------- .../views/equipment/WaterSupplierDetail.vue | 383 ++++++++ 4 files changed, 759 insertions(+), 654 deletions(-) create mode 100644 src/main/resources/web/src/api/waterMaker.ts create mode 100644 src/main/resources/web/src/views/equipment/WaterSupplierDetail.vue diff --git a/src/main/resources/web/src/api/waterMaker.ts b/src/main/resources/web/src/api/waterMaker.ts new file mode 100644 index 0000000..a652bc1 --- /dev/null +++ b/src/main/resources/web/src/api/waterMaker.ts @@ -0,0 +1,101 @@ +// src/api/waterMaker.ts +import { request } from '@/api/request' +import type { ResultVO } from '@/api/types/auth' + +// 设备基本信息接口 +interface MachineInfo { + deviceId: string + model: string + area: string + location: string + installDate: string + status: 'online' | 'offline' | 'warning' | 'error' + lastOnlineTime: string +} + +// 实时数据接口 +interface RealtimeData { + tapWaterTds: number // 自来水TDS + pureWaterTds: number // 纯净水TDS + temperature: number + pressure: number + flow1: number + flow2: number + updateTime: string +} + +// 滤芯状态接口 +interface FilterStatus { + id: string + name: string + usage: number + remainingDays: number +} + +// 历史数据记录接口 +interface HistoryRecord { + date: string // 日期 + tapWaterTdsAvg: number // 自来水TDS平均值 + pureWaterTdsAvg: number // 纯净水TDS平均值 + mineralWaterTdsAvg: number // 矿化水TDS平均值 +} + +// 维护记录接口 +interface MaintenanceRecord { + orderNo: string + maintenanceType: string + maintainer: string + maintenanceTime: string + status: 'completed' | 'processing' | 'pending' +} + +// API服务类 +export class WaterMakerApi { + // 获取设备基本信息 + static async getDeviceById(deviceId: string): Promise> { + return await request>( + `/api/web/device/${deviceId}`, + { method: 'GET' } + ) + } + + // 获取实时数据 + static async getRealtimeData(deviceId: string): Promise> { + return await request>( + `/api/web/device/${deviceId}/realtime`, + { method: 'GET' } + ) + } + + // 获取滤芯状态 + static async getFilterStatus(deviceId: string): Promise> { + return await request>( + `/api/web/device/${deviceId}/filter-status`, + { method: 'GET' } + ) + } + + // 获取历史数据 + static async getHistoryData(deviceId: string, date: string): Promise> { + return await request>( + `/api/web/device/${deviceId}/history?date=${date}`, + { method: 'GET' } + ) + } + + // 获取维护记录 + static async getMaintenanceRecords(deviceId: string): Promise> { + return await request>( + `/api/web/device/${deviceId}/maintenance-records`, + { method: 'GET' } + ) + } + + // 刷新设备数据 + static async refreshDeviceData(deviceId: string): Promise> { + return await request>( + `/api/web/device/${deviceId}/refresh`, + { method: 'POST' } + ) + } +} diff --git a/src/main/resources/web/src/router/index.ts b/src/main/resources/web/src/router/index.ts index 70d20ac..a38c5ed 100644 --- a/src/main/resources/web/src/router/index.ts +++ b/src/main/resources/web/src/router/index.ts @@ -41,6 +41,12 @@ const router = createRouter({ title: '设备监控' } }, + { + path: '/home/equipment/water-maker/:id', + name: 'WaterMakerDetail', + component: () => import('@/views/equipment/WaterMakerDetail.vue'), + meta: { requiresAuth: true } + }, { path: 'equipment/water-maker', name: 'water-maker', @@ -49,6 +55,13 @@ const router = createRouter({ title: '制水设备' } }, + { + path: '/home/equipment/water-supplier/:id', + name: 'WaterSupplierDetail', + component: () => import('@/views/equipment/WaterSupplierDetail.vue'), + meta: { requiresAuth: true } + }, + { path: 'equipment/water-supplier', name: 'water-supplier', diff --git a/src/main/resources/web/src/views/equipment/WaterMakerDetail.vue b/src/main/resources/web/src/views/equipment/WaterMakerDetail.vue index 7221345..b4132ec 100644 --- a/src/main/resources/web/src/views/equipment/WaterMakerDetail.vue +++ b/src/main/resources/web/src/views/equipment/WaterMakerDetail.vue @@ -1,171 +1,127 @@ @@ -173,304 +129,156 @@ + \ No newline at end of file diff --git a/src/main/resources/web/src/views/equipment/WaterSupplierDetail.vue b/src/main/resources/web/src/views/equipment/WaterSupplierDetail.vue new file mode 100644 index 0000000..42baa37 --- /dev/null +++ b/src/main/resources/web/src/views/equipment/WaterSupplierDetail.vue @@ -0,0 +1,383 @@ + + + + + + -- 2.34.1