From 684c23fb9f2072cb1b8ce3d2af6f4e9c6bf0e512 Mon Sep 17 00:00:00 2001 From: zer0Black <694429613@qq.com> Date: Mon, 2 Oct 2023 13:39:16 +0800 Subject: [PATCH] =?UTF-8?q?=E3=80=90=E6=B7=BB=E5=8A=A0=E3=80=91=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E7=94=A8=E6=88=B7=E5=88=A0=E9=99=A4=E6=8E=A5=E5=8F=A3?= =?UTF-8?q?=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../iam/controller/SyncIamController.java | 26 +++++++++++++++++-- .../docking/iam/service/SyncIamService.java | 20 ++++++++++++++ 2 files changed, 44 insertions(+), 2 deletions(-) diff --git a/laws-modules-docking/src/main/java/com/jero/modules/docking/iam/controller/SyncIamController.java b/laws-modules-docking/src/main/java/com/jero/modules/docking/iam/controller/SyncIamController.java index 6ad62e62..6fc4f6cf 100644 --- a/laws-modules-docking/src/main/java/com/jero/modules/docking/iam/controller/SyncIamController.java +++ b/laws-modules-docking/src/main/java/com/jero/modules/docking/iam/controller/SyncIamController.java @@ -122,8 +122,30 @@ public class SyncIamController { } @PostMapping({"/UserDeleteService"}) - public SendPoSystemPo userDeleteService(@RequestBody AcceptPoSystemPo iamUserInfo) { - SendPoSystemPo sendPoSystemPo = new SendPoSystemPo(); + public SendPoSystemPo userDeleteService(@RequestBody AcceptPoSystemPo iamUserInfo) throws JsonProcessingException { + if (iamUserInfo == null + || iamUserInfo.getMessageTabels() == null + || iamUserInfo.getMessageTabels().getHeader() == null + || iamUserInfo.getMessageTabels().getHeader().getData() == null){ + throw new IamGlobalException(null, "参数传递错误,未收到参数"); + } + + // 对核心数据解密 + String bodyParam = iamUserInfo.getMessageTabels().getHeader().getData(); + String bodyParamDecrypt = BamboocloudUtils.getPlaintext(bodyParam, DockingConstant.IAM_ENCRYPT_SECRET, DockingConstant.IAM_ENCRYPT_TYPE); + + ObjectMapper objectMapper = new ObjectMapper(); + IamUserAcceptDto userAcceptDto = objectMapper.readValue(bodyParamDecrypt, IamUserAcceptDto.class); + + // 校验身份认证,确保接口正确 必须调用! + this.syncIamService.validateUserAndPwd(userAcceptDto); + + // 处理业务逻辑,存储用户,返回用户id + IamCommonResponseDto iamCommonResponseDto = this.syncIamService.userDeleteService(userAcceptDto); + + // 处理统一响应PO层,并加密业务字段 + MessageHeader acceptMessageHeader = iamUserInfo.getMessageHeader(); + SendPoSystemPo sendPoSystemPo = this.syncIamService.handlerGloablResponse(acceptMessageHeader, iamCommonResponseDto); return sendPoSystemPo; } diff --git a/laws-modules-docking/src/main/java/com/jero/modules/docking/iam/service/SyncIamService.java b/laws-modules-docking/src/main/java/com/jero/modules/docking/iam/service/SyncIamService.java index f263e302..eecd3ebd 100644 --- a/laws-modules-docking/src/main/java/com/jero/modules/docking/iam/service/SyncIamService.java +++ b/laws-modules-docking/src/main/java/com/jero/modules/docking/iam/service/SyncIamService.java @@ -214,6 +214,26 @@ public class SyncIamService { * @param userAcceptDto * @return */ + public IamCommonResponseDto userDeleteService(IamUserAcceptDto userAcceptDto){ + if (userAcceptDto == null || StrUtil.isEmpty(userAcceptDto.getBimUid())){ + throw new IamGlobalException(userAcceptDto.getBimRequestId(), "用户id(bimUid)为空,无法进行用户删除"); + } + + this.sysUserService.deleteUser(userAcceptDto.getBimUid()); + + IamCommonResponseDto iamCommonResponseDto = new IamCommonResponseDto(); + iamCommonResponseDto.setBimRequestId(userAcceptDto.getBimRequestId()); + iamCommonResponseDto.setResultCode(DockingConstant.IAM_SUCCESS_RESULT_CODE); + iamCommonResponseDto.setMessage(DockingConstant.IAM_SUCCESS_MESSAGE); + + return iamCommonResponseDto; + } + + /** + * 删除用户 + * @param userAcceptDto + * @return + */ public IamCommonResponseDto userUpdateService(IamUserAcceptDto userAcceptDto){ if (userAcceptDto == null || StrUtil.isEmpty(userAcceptDto.getBimUid())){ throw new IamGlobalException(userAcceptDto.getBimRequestId(), "用户id(bimUid)为空,无法进行用户信息更新");