From ffe06be91f95ffd2459ebdb2f9130d1e38d53ea7 Mon Sep 17 00:00:00 2001
From: zzw <228544128@qq.com>
Date: 星期二, 06 十月 2026 18:32:34 +0800
Subject: [PATCH] fix: preserve manually edited menu names
---
HANDOFF.md | 16 ++++++++++++++++
requirement/交接文件_2026.10.3.md | 16 ++++++++++++++++
emergency-repair-server/src/main/java/com/emergencyrepair/bootstrap/DataInitializer.java | 7 +++----
3 files changed, 35 insertions(+), 4 deletions(-)
diff --git a/HANDOFF.md b/HANDOFF.md
index 5356230..52a22d1 100644
--- a/HANDOFF.md
+++ b/HANDOFF.md
@@ -905,3 +905,19 @@
- 闇�姹� 26 宸叉彁浜ゅ苟鎺ㄩ�侊紝鎻愪氦 `f651ad5`锛坄fix: show full date range separator in log filters`锛夈�傞渶姹� 27 宸叉彁浜ゅ苟鎺ㄩ�侊紝鎻愪氦 `f9114ff`锛坄fix: limit equipment picker to selected X number`锛夈��
- 涓嶈鎻愪氦 `.codex-run`銆丱ffice 閿佹枃浠舵垨 `emergency-repair-web/public/鏂板缓 鏂囨湰鏂囨。.txt`銆�
- 鏈疆浠g爜銆侀渶姹傛枃浠跺拰浜ゆ帴璁板綍涓�骞舵彁浜ゅ苟鎺ㄩ�佸叕鍙� Git 浠撳簱 `main` 鍒嗘敮銆�
+
+## 24. 鏀跺熬蹇収锛�2026-10-06 鍛ㄤ竴锛岃彍鍗曞悕绉拌鍚姩鍒濆鍖栬鐩栵級
+
+**闂涓庝慨澶�**
+- 鎵嬪伐鎶婄郴缁熼厤缃笅鐨勨�滀骇鍝佺粨鏋勬爲绠$悊鈥濇敼涓衡�滀骇鍝佺粨鏋勬爲鈥濆悗锛屽悗绔噸鍚細鎭㈠鈥滅鐞嗏�濅簩瀛椼��
+- 鍘熷洜鏄� `DataInitializer.ensureMenu()` 姣忔鍚姩閮戒細鎷夸唬鐮佷腑鐨勯粯璁ゅ悕绉拌鐩栧凡瀛樺湪鑿滃崟銆�
+- 宸叉敼涓哄彧鍦ㄦ柊寤鸿彍鍗曟椂浣跨敤榛樿鍚嶇О锛涘凡瀛樺湪鑿滃崟鍙慨澶嶇埗鑺傜偣銆佹帓搴忋�佺被鍨嬪拰鍙鎬э紝鍚嶇О鐢辫彍鍗曠鐞嗛〉闈㈢淮鎶ゃ��
+- 鏂板缓鏁版嵁搴撶殑榛樿鑿滃崟鍚嶇О鍚屾鏀逛负鈥滀骇鍝佺粨鏋勬爲鈥濄��
+
+**涓昏鏂囦欢**
+- `emergency-repair-server/src/main/java/com/emergencyrepair/bootstrap/DataInitializer.java`
+
+**楠岃瘉缁撴灉**
+- 鍚庣 `mvn -B -DskipTests compile`銆乣mvn -B -DskipTests package` 閫氳繃銆�
+- 灏嗘暟鎹簱鑿滃崟 `id=2101493905517301763`銆乣url=/system/product-tree` 鐨勫悕绉版敼涓衡�滀骇鍝佺粨鏋勬爲鈥濆悗锛屼娇鐢ㄦ柊 jar 閲嶅惎鍚庣锛屾帴鍙e啀娆℃煡璇粛涓衡�滀骇鍝佺粨鏋勬爲鈥濄��
+- 鏂板悗绔� PID `151580`锛岀洃鍚� `8091`锛涙棩蹇楋細`.codex-run/backend-20261006-menu-name.out.log`銆乣.codex-run/backend-20261006-menu-name.err.log`銆�
diff --git a/emergency-repair-server/src/main/java/com/emergencyrepair/bootstrap/DataInitializer.java b/emergency-repair-server/src/main/java/com/emergencyrepair/bootstrap/DataInitializer.java
index 7a63284..3cefa29 100644
--- a/emergency-repair-server/src/main/java/com/emergencyrepair/bootstrap/DataInitializer.java
+++ b/emergency-repair-server/src/main/java/com/emergencyrepair/bootstrap/DataInitializer.java
@@ -137,7 +137,7 @@
Long systemConfig = createMenu("system-config", system, "绯荤粺閰嶇疆", null, "el-icon-s-tools", 0, 10);
createMenu("organization", systemConfig, "缁勭粐鏈烘瀯", "/system/organization", null, 1, 10);
createMenu("contractors", systemConfig, "鎵夸慨鍗曚綅绠$悊", "/system/contractors", null, 1, 20);
- createMenu("product-tree", systemConfig, "浜у搧缁撴瀯鏍戠鐞�", "/system/product-tree", null, 1, 30);
+ createMenu("product-tree", systemConfig, "浜у搧缁撴瀯鏍�", "/system/product-tree", null, 1, 30);
createMenu("base-equipment", systemConfig, "璁惧鍩虹搴撶鐞�", "/system/base-equipment", null, 1, 40);
createMenu("engineering-majors", systemConfig, "宸ョ▼涓撲笟閰嶇疆", "/system/engineering-majors", null, 1, 50);
createMenu("team-majors", systemConfig, "rk_T闃熶笓涓氶厤缃�", "/system/team-majors", null, 1, 60);
@@ -249,14 +249,13 @@
menuMapper.insert(menu);
return menu.getId();
}
+ // Existing menu names are user-managed; startup only repairs structural fields.
boolean changed = !java.util.Objects.equals(menu.getPid(), pid)
- || !java.util.Objects.equals(menu.getName(), name)
|| !java.util.Objects.equals(menu.getSortNo(), sort)
|| !java.util.Objects.equals(menu.getMenuType(), 1)
|| !java.util.Objects.equals(menu.getVisible(), 1);
if (changed) {
menu.setPid(pid);
- menu.setName(name);
menu.setMenuType(1);
menu.setSortNo(sort);
menu.setVisible(1);
@@ -286,7 +285,7 @@
ensureMenu(systemConfig, "缁勭粐鏈烘瀯", "/system/organization", 10);
ensureMenu(systemConfig, "鎵夸慨鍗曚綅绠$悊", "/system/contractors", 20);
- ensureMenu(systemConfig, "浜у搧缁撴瀯鏍戠鐞�", "/system/product-tree", 30);
+ ensureMenu(systemConfig, "浜у搧缁撴瀯鏍�", "/system/product-tree", 30);
ensureMenu(systemConfig, "璁惧鍩虹搴撶鐞�", "/system/base-equipment", 40);
ensureMenu(systemConfig, "宸ョ▼涓撲笟閰嶇疆", "/system/engineering-majors", 50);
ensureMenu(systemConfig, "rk_T闃熶笓涓氶厤缃�", "/system/team-majors", 60);
diff --git "a/requirement/\344\272\244\346\216\245\346\226\207\344\273\266_2026.10.3.md" "b/requirement/\344\272\244\346\216\245\346\226\207\344\273\266_2026.10.3.md"
index 42ecc6b..2077f75 100644
--- "a/requirement/\344\272\244\346\216\245\346\226\207\344\273\266_2026.10.3.md"
+++ "b/requirement/\344\272\244\346\216\245\346\226\207\344\273\266_2026.10.3.md"
@@ -701,3 +701,19 @@
- 闇�姹� 26 宸叉彁浜ゅ苟鎺ㄩ�侊紝鎻愪氦 `f651ad5`锛涢渶姹� 27 宸叉彁浜ゅ苟鎺ㄩ�侊紝鎻愪氦 `f9114ff`锛坄fix: limit equipment picker to selected X number`锛夈��
- 鏈疆浠g爜銆侀渶姹傛枃浠跺拰浜ゆ帴璁板綍涓�骞舵彁浜ゅ苟鎺ㄩ�佸叕鍙� Git 浠撳簱 `main` 鍒嗘敮銆�
- `.codex-run`銆丱ffice 閿佹枃浠跺強 `emergency-repair-web/public/鏂板缓 鏂囨湰鏂囨。.txt` 浠嶄负鏈湴涓存椂鏂囦欢锛屼笉搴旀彁浜ゃ��
+
+## 鍗佸叓銆�2026-10-06 鑱旇皟淇锛堣彍鍗曞悕绉拌鍚姩鍒濆鍖栬鐩栵級
+
+| 闂 | 鐘舵�� | 瀹炵幇涓庨獙璇� |
+| --- | --- | --- |
+| 绯荤粺閰嶇疆涓嬧�滀骇鍝佺粨鏋勬爲绠$悊鈥濇墜宸ユ敼涓衡�滀骇鍝佺粨鏋勬爲鈥濆悗锛屽悗绔噸鍚張鍔犲洖鈥滅鐞嗏�� | 宸蹭慨澶� | `DataInitializer.ensureMenu()` 涓嶅啀瑕嗙洊宸插瓨鍦ㄨ彍鍗曞悕绉帮紱鏂板缓鑿滃崟榛樿鍚嶇О鏀逛负鈥滀骇鍝佺粨鏋勬爲鈥濓紱鏀瑰悕鍚庨噸鍚柊 jar 鍚嶇О淇濇寔涓嶅彉 |
+
+### 18.1 涓昏鍙樻洿鏂囦欢
+
+- `emergency-repair-server/src/main/java/com/emergencyrepair/bootstrap/DataInitializer.java`
+
+### 18.2 楠岃瘉缁撴灉
+
+- 鍚庣 `mvn -B -DskipTests compile`銆乣mvn -B -DskipTests package` 閫氳繃銆�
+- 鑿滃崟璁板綍 `id=2101493905517301763`銆乣url=/system/product-tree` 鏀瑰悕涓衡�滀骇鍝佺粨鏋勬爲鈥濆悗锛屾柊 jar 閲嶅惎骞跺啀娆℃煡璇紝鍚嶇О浠嶄负鈥滀骇鍝佺粨鏋勬爲鈥濄��
+- 褰撳墠鍚庣 PID `151580`锛岀洃鍚� `http://127.0.0.1:8091`锛涘墠绔粛鐩戝惉 `http://localhost:8082`銆�
--
Gitblit v1.9.1