diff --git a/tyr-server/src/main/java/cn/axzo/tyr/server/service/impl/ProductFeatureRelationServiceImpl.java b/tyr-server/src/main/java/cn/axzo/tyr/server/service/impl/ProductFeatureRelationServiceImpl.java index 072cc28d..8e0f0258 100644 --- a/tyr-server/src/main/java/cn/axzo/tyr/server/service/impl/ProductFeatureRelationServiceImpl.java +++ b/tyr-server/src/main/java/cn/axzo/tyr/server/service/impl/ProductFeatureRelationServiceImpl.java @@ -106,6 +106,8 @@ public class ProductFeatureRelationServiceImpl extends ServiceImpl @Value("${groupLeader.code:projectTeamGPLeader}") private String groupLeaderCode; + @Autowired + private final MqProducer mqProducer; + + private static final String TARGET_TYPE = "saasFeatureResourceId"; + @Override public List queryByIdentityIdType(Long identityId, Integer identityType, Long workspaceId, Long ouId, Boolean includePermissionGroup) { // 查询人关联的角色id @@ -1335,6 +1347,30 @@ public class RoleServiceImpl extends ServiceImpl } } } + + if (CollectionUtils.isEmpty(req)) { + return; + } + // 入参的terminal不是必填,所以根据第一个id查询terminal,目前不会是所有端一起更新 + PageSaasFeatureResourceReq listSaasFeatureResourceParam = PageSaasFeatureResourceReq.builder() + .ids(Lists.newArrayList(req.get(0).getFeatureId())) + .build(); + String terminal = saasFeatureResourceService.list(listSaasFeatureResourceParam).stream() + .findFirst() + .map(SaasFeatureResourceResp::getTerminal) + .orElse(null); + if (StringUtils.isBlank(terminal)) { + return; + } + + Event event = Event.builder() + .targetType(TARGET_TYPE) + .eventCode(SAAS_FEATURE_RESOURCE_UPSERT.getEventCode()) + .data(SaasFeatureResourceUpsertPayload.builder() + .terminal(terminal) + .build()) + .build(); + mqProducer.send(event); } @Override diff --git a/tyr-server/src/main/java/cn/axzo/tyr/server/service/impl/TyrSaasAuthServiceImpl.java b/tyr-server/src/main/java/cn/axzo/tyr/server/service/impl/TyrSaasAuthServiceImpl.java index 82b83c43..ce43f82e 100644 --- a/tyr-server/src/main/java/cn/axzo/tyr/server/service/impl/TyrSaasAuthServiceImpl.java +++ b/tyr-server/src/main/java/cn/axzo/tyr/server/service/impl/TyrSaasAuthServiceImpl.java @@ -1572,8 +1572,9 @@ public class TyrSaasAuthServiceImpl implements TyrSaasAuthService { } //聚合超管和管理员的权限点: 直接取角色标签和产品标签相匹配的权限点 - Set productUnitTypes = adminRoles.stream() + Set productUnitTypes = adminRoles.stream() .map(SaasRoleUserV2DTO.SaasRole::getProductUnitType) + .map(String::valueOf) .collect(Collectors.toSet()); return productPermissions.stream()