fix(iam): username重复不抛异常
This commit is contained in:
+3
-7
@@ -110,13 +110,9 @@ public class SyncIamController {
|
||||
MessageHeader acceptMessageHeader = iamUserInfo.getMessageHeader();
|
||||
SendPoEncryptPo sendPoEncryptPo = this.syncIamService.handlerGloablEncryptResponse(acceptMessageHeader, iamUserCreateResponse);
|
||||
return sendPoEncryptPo;
|
||||
} catch (DuplicateKeyException duplicateKeyException) {
|
||||
log.error("数据库值重复:{}", duplicateKeyException.getMessage());
|
||||
if (userAcceptDto != null) {
|
||||
throw new IamGlobalException(userAcceptDto.getBimRequestId(), "数据库值重复,请检查工号【" + userAcceptDto.getSrmsUsername() + "】是否异常");
|
||||
} else {
|
||||
throw new IamGlobalException(null, "未知异常,请联系管理员");
|
||||
}
|
||||
} catch (Exception e) {
|
||||
log.error("数据库值重复:{}", e.getMessage());
|
||||
throw new IamGlobalException(null, "未知异常,请联系管理员");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+7
@@ -216,6 +216,13 @@ public class SyncIamService {
|
||||
// (TODO 需要根据实际情况再沟通一遍角色怎么自动赋予),需要和角色接口那边沟通,确认具体情况
|
||||
String selectedRoles = "123"; // 一般用户的角色ID
|
||||
|
||||
SysUser userByName = sysUserService.getUserByName(sysUser.getUsername());
|
||||
if (!Objects.isNull(userByName)){
|
||||
log.info("数据库值重复{}", userByName.getUsername());
|
||||
iamUserCreateResponse.setResultCode(DockingConstant.IAM_ERROR_RESULT_CODE);
|
||||
iamUserCreateResponse.setMessage("工号【" + userAcceptDto.getSrmsUsername() + "】已存在!");
|
||||
return iamUserCreateResponse;
|
||||
}
|
||||
// 存储到用户表中
|
||||
long a = System.currentTimeMillis();
|
||||
this.sysUserService.saveUser(sysUser, selectedRoles, selectedDeparts);
|
||||
|
||||
Reference in New Issue
Block a user