From 0b24d1e0d38a0e07515d71ea43bfaefe1afda257 Mon Sep 17 00:00:00 2001
From: vincentlu <t1341870251@gmail.com>
Date: 星期一, 16 三月 2026 13:59:30 +0800
Subject: [PATCH] #

---
 zy-acs-manager/src/main/java/com/zy/acs/manager/manager/controller/RouteController.java |   29 +++++++++++++++++++++++++++++
 1 files changed, 29 insertions(+), 0 deletions(-)

diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/controller/RouteController.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/controller/RouteController.java
index 8fc8f90..6e370b7 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/controller/RouteController.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/controller/RouteController.java
@@ -107,6 +107,10 @@
     @OperationLog("Update Route")
     @PostMapping("/route/update")
     public R update(@RequestBody Route route) {
+        Route origin = routeService.getById(route.getId());
+        if (origin == null) {
+            return R.error("Update Fail");
+        }
         if (route.getStartCode().equals(route.getEndCode())) {
             return R.error("Update Fail");
         }
@@ -127,6 +131,20 @@
         if (!routeService.updateById(route)) {
             return R.error("Update Fail");
         }
+        List<Long> affectedCodeIds = new ArrayList<>();
+        if (origin.getStartCode() != null) {
+            affectedCodeIds.add(origin.getStartCode());
+        }
+        if (origin.getEndCode() != null) {
+            affectedCodeIds.add(origin.getEndCode());
+        }
+        if (route.getStartCode() != null) {
+            affectedCodeIds.add(route.getStartCode());
+        }
+        if (route.getEndCode() != null) {
+            affectedCodeIds.add(route.getEndCode());
+        }
+        codeService.refreshCornerByCodeIds(affectedCodeIds);
         return R.ok("Update Success").add(route);
     }
 
@@ -134,9 +152,20 @@
     @OperationLog("Delete Route")
     @PostMapping("/route/remove/{ids}")
     public R remove(@PathVariable Long[] ids) {
+        List<Route> routes = routeService.listByIds(Arrays.asList(ids));
+        List<Long> affectedCodeIds = new ArrayList<>();
+        for (Route route : routes) {
+            if (route.getStartCode() != null) {
+                affectedCodeIds.add(route.getStartCode());
+            }
+            if (route.getEndCode() != null) {
+                affectedCodeIds.add(route.getEndCode());
+            }
+        }
         if (!routeService.removeByIds(Arrays.asList(ids))) {
             return R.error("Delete Fail");
         }
+        codeService.refreshCornerByCodeIds(affectedCodeIds);
         return R.ok("Delete Success").add(ids);
     }
 

--
Gitblit v1.9.1