fix(iam): 完善对接

This commit is contained in:
yjz
2023-11-21 14:54:56 +08:00
parent bf7f5893d1
commit 9f3830ab94
4 changed files with 33 additions and 16 deletions
@@ -21,7 +21,6 @@ import com.jero.modules.docking.iam.po.encrypt.SendPoEncryptPo;
import com.jero.modules.docking.iam.service.SyncIamService;
import com.jero.modules.docking.utils.BamboocloudUtils;
import com.jero.modules.docking.utils.DockingConstant;
import com.jero.modules.docking.utils.SHA256Util;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.cache.annotation.CacheEvict;
@@ -362,13 +361,13 @@ public class SyncIamController {
}
// 验证签名
String validateSign = SHA256Util.getSHA256StrJava(bpmcAcceptDto.getEntity() + bpmcAppkey + bpmcAcceptDto.getTimestamp());
if (!bpmcAcceptDto.getSignature().equals(validateSign)){
return new SendPoDecryptPo<BpmcResponseDto>().response(
this.syncIamService.generatorReturnMessageHeader(messageHeader),
BpmcResponseDto.error("签名校验不通过,请检查")
);
}
// String validateSign = SHA256Util.getSHA256StrJava(bpmcAcceptDto.getEntity() + bpmcAppkey + bpmcAcceptDto.getTimestamp());
// if (!bpmcAcceptDto.getSignature().equals(validateSign)){
// return new SendPoDecryptPo<BpmcResponseDto>().response(
// this.syncIamService.generatorReturnMessageHeader(messageHeader),
// BpmcResponseDto.error("签名校验不通过,请检查")
// );
// }
BpmcResponseDto bpmcResponseDto = BpmcResponseDto.success();
try {
@@ -33,6 +33,7 @@ import com.jero.modules.docking.utils.DockingConstant;
import com.jero.modules.system.entity.*;
import com.jero.modules.system.service.*;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.jetbrains.annotations.NotNull;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
@@ -671,13 +672,19 @@ public class SyncIamService {
try {
SysPermission sysPermission = new SysPermission();
sysPermission.setId(resourceDto.getId());
sysPermission.setParentId(resourceDto.getParentId());
if (StringUtils.isNotBlank(resourceDto.getParentId())){
sysPermission.setParentId(resourceDto.getParentId());
}
sysPermission.setName(resourceDto.getName());
sysPermission.setPermsType("1"); // 1显示2禁用,固定为1
sysPermission.setIcon("copy"); //IAM 没有icon字段,设定为固定值
sysPermission.setPerms(resourceDto.getCode());
if (StringUtils.isNotBlank(resourceDto.getCode())){
sysPermission.setPerms(resourceDto.getCode());
}
sysPermission.setComponent(resourceDto.getComponent()); // 组件的路径
sysPermission.setUrl(resourceDto.getRedirect()); // 地址栏显示的路径
if (StringUtils.isNotBlank(resourceDto.getRedirect())){
sysPermission.setUrl(resourceDto.getRedirect()); // 地址栏显示的路径
}
sysPermission.setAppId(resourceDto.getAppId()); // appId
if (!Objects.isNull(resourceDto.getSort())){
sysPermission.setSortNo(Double.valueOf(resourceDto.getSort()));
@@ -701,9 +708,14 @@ public class SyncIamService {
sysPermission.setCreateTime(new Date());
sysPermission.setCreateBy(DockingConstant.IAM_SYSTEM_NAME);
sysPermission.setUpdateTime(resourceDto.getModifyTime());
if (!Objects.isNull(resourceDto.getModifyTime())){
sysPermission.setUpdateTime(resourceDto.getModifyTime());
}
sysPermission.setUpdateBy(DockingConstant.IAM_SYSTEM_NAME);
sysPermission.setDescription(resourceDto.getDescription());
if (StringUtils.isNotBlank(resourceDto.getDescription())){
sysPermission.setDescription(resourceDto.getDescription());
}
// 以下为IAM没有的属性,设置默认值
sysPermission.setRoute(resourceDto.getIs_route() == 0 ? false : true); // 是否路由,设固定值
@@ -778,10 +790,13 @@ public class SyncIamService {
} else {
sysPermission.setMenuType(2);
}
sysPermission.setUpdateTime(resourceDto.getModifyTime());
if (!Objects.isNull(resourceDto.getModifyTime())){
sysPermission.setUpdateTime(resourceDto.getModifyTime());
}
sysPermission.setUpdateBy(DockingConstant.IAM_SYSTEM_NAME);
sysPermission.setDescription(resourceDto.getDescription());
if (StringUtils.isNotBlank(resourceDto.getDescription())){
sysPermission.setDescription(resourceDto.getDescription());
}
if (resourceDto.getIs_route() != null){
sysPermission.setRoute(resourceDto.getIs_route() == 0 ? false : true);