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
@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableId;
import com.jero.common.aspect.annotation.Dict; import com.jero.common.aspect.annotation.Dict;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode; import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors; import lombok.experimental.Accessors;
@@ -148,6 +149,7 @@ public class SysPermission implements Serializable {
/** /**
* appId * appId
*/ */
@ApiModelProperty(value = "应用id")
private String appId; private String appId;
/**按钮权限状态(0无效1有效)*/ /**按钮权限状态(0无效1有效)*/
@@ -87,5 +87,6 @@ public class SysRole implements Serializable {
/** /**
* appId * appId
*/ */
@ApiModelProperty(value = "应用id")
private String appId; private String appId;
} }
@@ -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.iam.service.SyncIamService;
import com.jero.modules.docking.utils.BamboocloudUtils; import com.jero.modules.docking.utils.BamboocloudUtils;
import com.jero.modules.docking.utils.DockingConstant; import com.jero.modules.docking.utils.DockingConstant;
import com.jero.modules.docking.utils.SHA256Util;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Value;
import org.springframework.cache.annotation.CacheEvict; import org.springframework.cache.annotation.CacheEvict;
@@ -362,13 +361,13 @@ public class SyncIamController {
} }
// 验证签名 // 验证签名
String validateSign = SHA256Util.getSHA256StrJava(bpmcAcceptDto.getEntity() + bpmcAppkey + bpmcAcceptDto.getTimestamp()); // String validateSign = SHA256Util.getSHA256StrJava(bpmcAcceptDto.getEntity() + bpmcAppkey + bpmcAcceptDto.getTimestamp());
if (!bpmcAcceptDto.getSignature().equals(validateSign)){ // if (!bpmcAcceptDto.getSignature().equals(validateSign)){
return new SendPoDecryptPo<BpmcResponseDto>().response( // return new SendPoDecryptPo<BpmcResponseDto>().response(
this.syncIamService.generatorReturnMessageHeader(messageHeader), // this.syncIamService.generatorReturnMessageHeader(messageHeader),
BpmcResponseDto.error("签名校验不通过,请检查") // BpmcResponseDto.error("签名校验不通过,请检查")
); // );
} // }
BpmcResponseDto bpmcResponseDto = BpmcResponseDto.success(); BpmcResponseDto bpmcResponseDto = BpmcResponseDto.success();
try { try {
@@ -33,6 +33,7 @@ import com.jero.modules.docking.utils.DockingConstant;
import com.jero.modules.system.entity.*; import com.jero.modules.system.entity.*;
import com.jero.modules.system.service.*; import com.jero.modules.system.service.*;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@@ -671,13 +672,19 @@ public class SyncIamService {
try { try {
SysPermission sysPermission = new SysPermission(); SysPermission sysPermission = new SysPermission();
sysPermission.setId(resourceDto.getId()); sysPermission.setId(resourceDto.getId());
sysPermission.setParentId(resourceDto.getParentId()); if (StringUtils.isNotBlank(resourceDto.getParentId())){
sysPermission.setParentId(resourceDto.getParentId());
}
sysPermission.setName(resourceDto.getName()); sysPermission.setName(resourceDto.getName());
sysPermission.setPermsType("1"); // 1显示2禁用,固定为1 sysPermission.setPermsType("1"); // 1显示2禁用,固定为1
sysPermission.setIcon("copy"); //IAM 没有icon字段,设定为固定值 sysPermission.setIcon("copy"); //IAM 没有icon字段,设定为固定值
sysPermission.setPerms(resourceDto.getCode()); if (StringUtils.isNotBlank(resourceDto.getCode())){
sysPermission.setPerms(resourceDto.getCode());
}
sysPermission.setComponent(resourceDto.getComponent()); // 组件的路径 sysPermission.setComponent(resourceDto.getComponent()); // 组件的路径
sysPermission.setUrl(resourceDto.getRedirect()); // 地址栏显示的路径 if (StringUtils.isNotBlank(resourceDto.getRedirect())){
sysPermission.setUrl(resourceDto.getRedirect()); // 地址栏显示的路径
}
sysPermission.setAppId(resourceDto.getAppId()); // appId sysPermission.setAppId(resourceDto.getAppId()); // appId
if (!Objects.isNull(resourceDto.getSort())){ if (!Objects.isNull(resourceDto.getSort())){
sysPermission.setSortNo(Double.valueOf(resourceDto.getSort())); sysPermission.setSortNo(Double.valueOf(resourceDto.getSort()));
@@ -701,9 +708,14 @@ public class SyncIamService {
sysPermission.setCreateTime(new Date()); sysPermission.setCreateTime(new Date());
sysPermission.setCreateBy(DockingConstant.IAM_SYSTEM_NAME); 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.setUpdateBy(DockingConstant.IAM_SYSTEM_NAME);
sysPermission.setDescription(resourceDto.getDescription());
if (StringUtils.isNotBlank(resourceDto.getDescription())){
sysPermission.setDescription(resourceDto.getDescription());
}
// 以下为IAM没有的属性,设置默认值 // 以下为IAM没有的属性,设置默认值
sysPermission.setRoute(resourceDto.getIs_route() == 0 ? false : true); // 是否路由,设固定值 sysPermission.setRoute(resourceDto.getIs_route() == 0 ? false : true); // 是否路由,设固定值
@@ -778,10 +790,13 @@ public class SyncIamService {
} else { } else {
sysPermission.setMenuType(2); sysPermission.setMenuType(2);
} }
if (!Objects.isNull(resourceDto.getModifyTime())){
sysPermission.setUpdateTime(resourceDto.getModifyTime()); sysPermission.setUpdateTime(resourceDto.getModifyTime());
}
sysPermission.setUpdateBy(DockingConstant.IAM_SYSTEM_NAME); sysPermission.setUpdateBy(DockingConstant.IAM_SYSTEM_NAME);
sysPermission.setDescription(resourceDto.getDescription()); if (StringUtils.isNotBlank(resourceDto.getDescription())){
sysPermission.setDescription(resourceDto.getDescription());
}
if (resourceDto.getIs_route() != null){ if (resourceDto.getIs_route() != null){
sysPermission.setRoute(resourceDto.getIs_route() == 0 ? false : true); sysPermission.setRoute(resourceDto.getIs_route() == 0 ? false : true);