diff --git a/safety-eval-infrastructure/src/main/java/org/qinan/safetyeval/infrastructure/adapter/gbs/GbsUserFacadeClient.java b/safety-eval-infrastructure/src/main/java/org/qinan/safetyeval/infrastructure/adapter/gbs/GbsUserFacadeClient.java index d210ecd..d339e87 100644 --- a/safety-eval-infrastructure/src/main/java/org/qinan/safetyeval/infrastructure/adapter/gbs/GbsUserFacadeClient.java +++ b/safety-eval-infrastructure/src/main/java/org/qinan/safetyeval/infrastructure/adapter/gbs/GbsUserFacadeClient.java @@ -28,13 +28,16 @@ public class GbsUserFacadeClient { list.add(roleDeptAddCmd); cmd.setRoleDepts(list); SingleResponse singleResponse = userFacade.add(cmd); - if (singleResponse.isSuccess()) { + if (!singleResponse.isSuccess()) { throw new BizException(singleResponse.getErrCode(), singleResponse.getErrMessage()); } } public void delete(Long userId) { - userFacade.delete(userId); + Response response = userFacade.delete(userId); + if (!response.isSuccess()) { + throw new BizException(response.getErrCode(), response.getErrMessage()); + } } public void updatePassword(UserUpdatePasswordCmd cmd) { diff --git a/safety-eval-infrastructure/src/main/java/org/qinan/safetyeval/infrastructure/gatewayimpl/OrgInfoGatewayImpl.java b/safety-eval-infrastructure/src/main/java/org/qinan/safetyeval/infrastructure/gatewayimpl/OrgInfoGatewayImpl.java index 15cf68a..d66e13a 100644 --- a/safety-eval-infrastructure/src/main/java/org/qinan/safetyeval/infrastructure/gatewayimpl/OrgInfoGatewayImpl.java +++ b/safety-eval-infrastructure/src/main/java/org/qinan/safetyeval/infrastructure/gatewayimpl/OrgInfoGatewayImpl.java @@ -11,6 +11,8 @@ import com.zcloud.gbscommon.utils.MD5; import com.zcloud.gbscommon.utils.Sm2Util; import lombok.extern.slf4j.Slf4j; import org.qinan.safetyeval.domain.entity.OrgInfoEntity; +import org.qinan.safetyeval.domain.exception.BizException; +import org.qinan.safetyeval.domain.exception.ErrorCode; import org.qinan.safetyeval.domain.gateway.OrgInfoGateway; import org.qinan.safetyeval.domain.query.OrgInfoQuery; import org.qinan.safetyeval.domain.query.PageResult; @@ -103,17 +105,19 @@ public class OrgInfoGatewayImpl implements OrgInfoGateway { @Transactional(rollbackFor = Exception.class) public void delete(Long id) { // 同步删除gbs用户(gbs物理) + List departUserId = orgInfoMapper.selectList(new LambdaQueryWrapper() + .select(OrgInfoDO::getCreateId) + .eq(OrgInfoDO::getId, id)).stream() + .map(OrgInfoDO::getCreateId).collect(Collectors.toList()); + if(CollectionUtils.isEmpty(departUserId)){ + throw new BizException(ErrorCode.ORG_DEPARTMENT_NOT_FOUND); + } + gbsUserFacadeClient.delete(departUserId.get(0)); List orgPersonnelDOIdS = orgPersonnelMapper.selectList(new LambdaQueryWrapper() .eq(OrgPersonnelDO::getOrgId, id)).stream().map(OrgPersonnelDO::getId).collect(Collectors.toList()); if (!CollectionUtils.isEmpty(orgPersonnelDOIdS)) { for (Long orgPersonnelDOId : orgPersonnelDOIdS) { - final Long userId = orgPersonnelDOId; - syncGbsUser("delete user", new Runnable() { - @Override - public void run() { - gbsUserFacadeClient.delete(userId); - } - }); + gbsUserFacadeClient.delete(orgPersonnelDOId); } } orgInfoCascadeDeleter.deleteRelatedData(id);