From ae8e8fd2aac82eaa55814bedbb11ed4062a48a2c Mon Sep 17 00:00:00 2001
From: linwei <872216696@qq.com>
Date: Mon, 01 Jun 2026 11:17:31 +0800
Subject: [PATCH] refactor(user): 将用户保存方法替换为提交方法

---
 drone-service/drone-system/src/main/java/org/sxkj/system/service/impl/DeptServiceImpl.java |   19 +++++++++++++++++--
 1 files changed, 17 insertions(+), 2 deletions(-)

diff --git a/drone-service/drone-system/src/main/java/org/sxkj/system/service/impl/DeptServiceImpl.java b/drone-service/drone-system/src/main/java/org/sxkj/system/service/impl/DeptServiceImpl.java
index 9244c66..fe2824d 100644
--- a/drone-service/drone-system/src/main/java/org/sxkj/system/service/impl/DeptServiceImpl.java
+++ b/drone-service/drone-system/src/main/java/org/sxkj/system/service/impl/DeptServiceImpl.java
@@ -154,9 +154,16 @@
 		return removeByIds(Func.toLongList(ids));
 	}
 
+	/**
+	 * 提交部门信息
+	 *
+	 * @param dept 部门信息
+	 * @return 是否操作成功
+	 */
 	@Override
 	public boolean submit(Dept dept) {
 		log.info("提交数据:{}", JSON.toJSONString(dept));
+		// 处理父节点信息
 		if (Func.isEmpty(dept.getParentId())) {
 			dept.setTenantId(AuthUtil.getTenantId());
 			dept.setParentId(BladeConstant.TOP_PARENT_ID);
@@ -171,8 +178,16 @@
 			String ancestors = parent.getAncestors() + StringPool.COMMA + dept.getParentId();
 			dept.setAncestors(ancestors);
 		}
-		dept.setIsDeleted(BladeConstant.DB_NOT_DELETED);
-		return saveOrUpdate(dept);
+
+		// 处理ID重复问题:如果ID存在但记录不存在,设置ID为null让MyBatis-Plus重新生成
+		if (dept.getId() != null) {
+			Dept existingDept = getById(dept.getId());
+			if (existingDept != null) {
+				return updateById(dept);
+			}
+			return save(dept);
+		}
+		return false;
 	}
 
 	@Override

--
Gitblit v1.9.3