From 32115669e24651be2d920e7ee809e9d36b2c2bca Mon Sep 17 00:00:00 2001 From: ZHW <1941286652@qq.com> Date: Sat, 27 Dec 2025 12:18:57 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E5=8E=BB=E6=8E=89=E9=87=8D=E6=B4=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/campus/water/controller/WorkOrderController.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/com/campus/water/controller/WorkOrderController.java b/src/main/java/com/campus/water/controller/WorkOrderController.java index 726e12a..9434b5b 100644 --- a/src/main/java/com/campus/water/controller/WorkOrderController.java +++ b/src/main/java/com/campus/water/controller/WorkOrderController.java @@ -79,7 +79,7 @@ public class WorkOrderController { private String orderId; private boolean approved; } - + // 审核工单 // 2. 修改接口接收方式 @PostMapping("/review") @PreAuthorize("hasAnyRole('SUPER_ADMIN', 'AREA_ADMIN')") -- 2.34.1 From 84d590684f60d8c4799eb6ce5e19e3f82951deec Mon Sep 17 00:00:00 2001 From: ZHW <1941286652@qq.com> Date: Sat, 27 Dec 2025 17:35:43 +0800 Subject: [PATCH 2/3] =?UTF-8?q?=E9=83=A8=E5=88=86=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../water/controller/web/AdminController.java | 5 + .../resources/web/src/views/Dashboard.vue | 35 +-- .../resources/web/src/views/area/Campus.vue | 219 +++++++++++++++--- .../resources/web/src/views/area/Urban.vue | 98 ++++---- .../src/views/equipment/WaterMakerDetail.vue | 150 +++++++++++- 5 files changed, 410 insertions(+), 97 deletions(-) diff --git a/src/main/java/com/campus/water/controller/web/AdminController.java b/src/main/java/com/campus/water/controller/web/AdminController.java index 4c9d39d..b634f35 100644 --- a/src/main/java/com/campus/water/controller/web/AdminController.java +++ b/src/main/java/com/campus/water/controller/web/AdminController.java @@ -82,6 +82,11 @@ public class AdminController { public ResponseEntity> saveAdmin(@RequestBody Admin admin) { // 实现保持不变 try { + + if (admin.getAdminName() == null || admin.getAdminName().trim().isEmpty()) { + return ResponseEntity.ok(ResultVO.error(400, "管理员姓名不能为空")); + } + Admin savedAdmin = adminService.saveAdmin(admin); return ResponseEntity.ok(ResultVO.success(savedAdmin)); } catch (Exception e) { diff --git a/src/main/resources/web/src/views/Dashboard.vue b/src/main/resources/web/src/views/Dashboard.vue index 0b2cd66..8475221 100644 --- a/src/main/resources/web/src/views/Dashboard.vue +++ b/src/main/resources/web/src/views/Dashboard.vue @@ -74,7 +74,7 @@
- +
{{ alert.deviceId }}:{{ alert.alertMessage }}
{{ formatDateTime(alert.timestamp) }}
@@ -244,6 +244,7 @@ const fetchStatsData = async () => { } } +// 获取告警数据 // 获取告警数据 const fetchAlertData = async () => { loadingAlerts.value = true @@ -271,24 +272,25 @@ const fetchAlertData = async () => { // 确保数据是数组 const alerts = Array.isArray(alertResult.data) ? alertResult.data : [] + // 按时间倒序排序(最新的在前面) + const sortedAlerts = [...alerts].sort((a, b) => { + // 将时间字符串转换为Date对象进行比较 + const timeA = new Date(a.timestamp).getTime() + const timeB = new Date(b.timestamp).getTime() + return timeB - timeA // 降序排列(最新的在前) + }) + // 只取前10条 - recentAlerts.value = alerts.slice(0, 10) - - // 如果有告警,设置最新告警 - if (recentAlerts.value.length > 0) { - const sortedAlerts = [...recentAlerts.value].sort((a, b) => { - const priorityMap: Record = { - 'critical': 4, - 'error': 3, - 'warning': 2, - 'info': 1 - }; - return (priorityMap[b.alertLevel?.toLowerCase()] || 0) - (priorityMap[a.alertLevel?.toLowerCase()] || 0); - }); - latestAlert.value = sortedAlerts[0] ?? null; + recentAlerts.value = sortedAlerts.slice(0, 10) + + // 如果有告警,设置最新告警(时间最新的) + // 修改第222行附近的代码 + if (recentAlerts.value.length > 0 && recentAlerts.value[0]) { + latestAlert.value = recentAlerts.value[0] // 第一个是最新时间的告警 } else { - latestAlert.value = null; + latestAlert.value = null } + } } catch (error: any) { console.error('获取告警数据失败:', error) @@ -318,6 +320,7 @@ const fetchAlertData = async () => { } } + // 组件挂载时获取数据 onMounted(() => { fetchStatsData() diff --git a/src/main/resources/web/src/views/area/Campus.vue b/src/main/resources/web/src/views/area/Campus.vue index a922eff..b929fbf 100644 --- a/src/main/resources/web/src/views/area/Campus.vue +++ b/src/main/resources/web/src/views/area/Campus.vue @@ -11,8 +11,7 @@
- - +
@@ -89,6 +88,18 @@