From 834d64779f950cab6b28bc38e2d49cf04b1dd9d1 Mon Sep 17 00:00:00 2001
From: linwei <872216696@qq.com>
Date: Fri, 10 Apr 2026 09:00:46 +0800
Subject: [PATCH] opt:机构同步优化

---
 drone-service/drone-system/src/main/java/org/sxkj/system/controller/ExternalController.java |   15 ++++++++++++---
 1 files changed, 12 insertions(+), 3 deletions(-)

diff --git a/drone-service/drone-system/src/main/java/org/sxkj/system/controller/ExternalController.java b/drone-service/drone-system/src/main/java/org/sxkj/system/controller/ExternalController.java
index 9a8a999..36af256 100644
--- a/drone-service/drone-system/src/main/java/org/sxkj/system/controller/ExternalController.java
+++ b/drone-service/drone-system/src/main/java/org/sxkj/system/controller/ExternalController.java
@@ -1,10 +1,12 @@
 package org.sxkj.system.controller;
 
+import com.alibaba.fastjson.JSON;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import lombok.AllArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
 import org.springblade.core.cache.utils.CacheUtil;
 import org.springblade.core.log.annotation.ApiLog;
 import org.springblade.core.log.logger.BladeLogger;
@@ -13,6 +15,7 @@
 import org.springblade.core.tool.support.Kv;
 import org.springblade.core.tool.utils.BeanUtil;
 import org.springblade.core.tool.utils.DigestUtil;
+import org.springblade.core.tool.utils.StringUtil;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
@@ -41,6 +44,7 @@
 import static org.springblade.core.cache.constant.CacheConstant.USER_CACHE;
 
 @NonDS
+@Slf4j
 @RestController
 @AllArgsConstructor
 @RequestMapping("/external")
@@ -63,6 +67,7 @@
 	@ApiOperation(value = "机构新增或修改", notes = "传入dept")
 	@ApiLog("组织机构信息新增或修改")
 	public R submit(@Valid @RequestBody DeptAddParam dept) {
+		log.info("机构信息修改-对外{}", JSON.toJSONString(dept));
 		// 参数校验:确保关键字段不为空
 		if (dept.getId() == null) {
 			return R.fail("参数缺失:id 不能为空");
@@ -81,13 +86,13 @@
 		String times = OrderNumUtils.initOrderNum2(WordOrderConstant.ORG_CODE);
 		String deptCode = WordOrderConstant.ORG_PREFIX + times;
 		deptEntity.setDeptCode(deptCode);
-		deptEntity.setAreaCode(HeaderUtils.processAreaCode(dept.getAreaCode()));
+		deptEntity.setAreaCode(HeaderUtils.processAreaCode(StringUtil.isNotBlank(dept.getAreaCode()) ? dept.getAreaCode() : "3608"));
 		deptEntity.setCreateTime(new Date());
 		deptEntity.setUpdateTime(new Date());
 		if (deptService.submit(deptEntity)) {
 			CacheUtil.clear(SYS_CACHE);
 			CacheUtil.clear(SYS_CACHE, Boolean.FALSE);
-			List<User> userList = userService.list(new LambdaQueryWrapper<User>().eq(User::getDeptId, dept.getId()));
+			List<User> userList = userService.list(new LambdaQueryWrapper<User>().eq(User::getDeptId, String.valueOf(dept.getId())));
 			if (!userList.isEmpty()) {
 				List<Long> userIds = userList.stream().map(User::getId).collect(Collectors.toList());
 				userService.updateUserAreaCode(dept.getAreaCode(), userIds);
@@ -109,6 +114,7 @@
 	@ApiOperation(value = "角色新增或修改", notes = "传入role")
 	@ApiLog("角色信息新增或修改")
 	public R submit(@Valid @RequestBody Role role) {
+		log.info("角色信息修改-对外{}", JSON.toJSONString(role));
 		// 参数校验:确保关键字段不为空
 		if (role.getId() == null) {
 			return R.fail("参数缺失:id 不能为空");
@@ -133,6 +139,7 @@
 	@ApiOperation(value = "新增或修改用户", notes = "传入User,新增或修改用户")
 	@ApiLog("用户信息新增或者修改-对外")
 	public R submitExternal(@Valid @RequestBody User user) {
+		log.info("用户信息修改-对外{}", JSON.toJSONString(user));
 		CacheUtil.clear(USER_CACHE);
 
 		boolean isRet = false;
@@ -145,7 +152,9 @@
 			user.setRoleId(userInfo.getUser().getRoleId());
 			isRet = userService.updateUser(user);
 		} else {
-			Dept dept = deptService.getById(user.getDeptId());
+			// 将String类型的deptId转换为Long类型
+			Long deptIdLong = Long.parseLong(user.getDeptId());
+			Dept dept = deptService.getById(deptIdLong);
 			user.setAreaCode(HeaderUtils.processAreaCode(dept.getAreaCode()));
 			user.setPassword(DigestUtil.encrypt("jadk@2026"));
 			user.setDeptId(user.getDeptId() == null ? String.valueOf(dept.getId()) : user.getDeptId());

--
Gitblit v1.9.3