diff --git a/tyr-api/src/main/java/cn/axzo/tyr/client/model/req/PageProductFeatureRelationReq.java b/tyr-api/src/main/java/cn/axzo/tyr/client/model/req/PageProductFeatureRelationReq.java index 9bc50bc5..a06f6cb6 100644 --- a/tyr-api/src/main/java/cn/axzo/tyr/client/model/req/PageProductFeatureRelationReq.java +++ b/tyr-api/src/main/java/cn/axzo/tyr/client/model/req/PageProductFeatureRelationReq.java @@ -47,4 +47,7 @@ public class PageProductFeatureRelationReq implements IPageReq { */ @CriteriaField(field = "featureType", operator = Operator.IN) private List featureResourceTypes; + + @CriteriaField(field = "terminal", operator = Operator.EQ) + private String terminal; } diff --git a/tyr-server/src/main/java/cn/axzo/tyr/server/event/inner/CacheProductPermissionHandler.java b/tyr-server/src/main/java/cn/axzo/tyr/server/event/inner/CacheProductPermissionHandler.java index 35df0b47..4e1dc0f1 100644 --- a/tyr-server/src/main/java/cn/axzo/tyr/server/event/inner/CacheProductPermissionHandler.java +++ b/tyr-server/src/main/java/cn/axzo/tyr/server/event/inner/CacheProductPermissionHandler.java @@ -16,6 +16,7 @@ import cn.axzo.tyr.server.service.SaasFeatureResourceService; import com.google.common.collect.Lists; import com.google.common.collect.Sets; import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.InitializingBean; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; @@ -82,6 +83,10 @@ public class CacheProductPermissionHandler implements InitializingBean { .build(); List productFeatures = productFeatureRelationService.list(pageProductFeatureRelationReq); + if (CollectionUtils.isEmpty(productFeatures)) { + return; + } + storeProductPermission(productFeatures); log.info("end cached product permission handler rocketmq event: {}", event); } @@ -90,7 +95,7 @@ public class CacheProductPermissionHandler implements InitializingBean { log.info("begin cached product permission handler rocketmq event: {}", event); PageElementFeatureResourceUpsertPayload payload = event.normalizedData(PageElementFeatureResourceUpsertPayload.class); - if (CollectionUtils.isEmpty(payload.getRelations())) { + if (StringUtils.isBlank(payload.getTerminal())) { return; } @@ -98,6 +103,9 @@ public class CacheProductPermissionHandler implements InitializingBean { .build(); List productFeatures = productFeatureRelationService.list(pageProductFeatureRelationReq); + if (CollectionUtils.isEmpty(productFeatures)) { + return; + } storeProductPermission(productFeatures); log.info("end cached product permission handler rocketmq event: {}", event); } diff --git a/tyr-server/src/main/java/cn/axzo/tyr/server/event/inner/CacheProductSaasFeatureResourceHandler.java b/tyr-server/src/main/java/cn/axzo/tyr/server/event/inner/CacheProductSaasFeatureResourceHandler.java index 8e6a65fc..0a8fa2ef 100644 --- a/tyr-server/src/main/java/cn/axzo/tyr/server/event/inner/CacheProductSaasFeatureResourceHandler.java +++ b/tyr-server/src/main/java/cn/axzo/tyr/server/event/inner/CacheProductSaasFeatureResourceHandler.java @@ -94,7 +94,7 @@ public class CacheProductSaasFeatureResourceHandler implements InitializingBean log.info("begin cached product featureResource handler rocketmq event: {}", event); PageElementFeatureResourceUpsertPayload payload = event.normalizedData(PageElementFeatureResourceUpsertPayload.class); - if (CollectionUtils.isEmpty(payload.getRelations())) { + if (StringUtils.isBlank(payload.getTerminal())) { return; } @@ -103,6 +103,9 @@ public class CacheProductSaasFeatureResourceHandler implements InitializingBean .build(); List productFeatures = productFeatureRelationService.list(pageProductFeatureRelationReq); + if (CollectionUtils.isEmpty(productFeatures)) { + return; + } storeProductFeatureResource(productFeatures); log.info("end cached product featureResource handler rocketmq event: {}", event); } diff --git a/tyr-server/src/main/java/cn/axzo/tyr/server/event/inner/CacheRolePermissionHandler.java b/tyr-server/src/main/java/cn/axzo/tyr/server/event/inner/CacheRolePermissionHandler.java index 70703d25..12ce3db5 100644 --- a/tyr-server/src/main/java/cn/axzo/tyr/server/event/inner/CacheRolePermissionHandler.java +++ b/tyr-server/src/main/java/cn/axzo/tyr/server/event/inner/CacheRolePermissionHandler.java @@ -19,6 +19,7 @@ import cn.axzo.tyr.server.service.SaasFeatureResourceService; import com.google.common.collect.Lists; import com.google.common.collect.Sets; import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.InitializingBean; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; @@ -94,7 +95,7 @@ public class CacheRolePermissionHandler implements InitializingBean { public void onPageElementFeatureResourceUpsert(Event event, EventConsumer.Context context) { PageElementFeatureResourceUpsertPayload payload = event.normalizedData(PageElementFeatureResourceUpsertPayload.class); - if (CollectionUtils.isEmpty(payload.getRelations())) { + if (StringUtils.isBlank(payload.getTerminal())) { return; } diff --git a/tyr-server/src/main/java/cn/axzo/tyr/server/event/inner/CacheRoleSaasFeatureResourceHandler.java b/tyr-server/src/main/java/cn/axzo/tyr/server/event/inner/CacheRoleSaasFeatureResourceHandler.java index ca7c4fc1..be92484b 100644 --- a/tyr-server/src/main/java/cn/axzo/tyr/server/event/inner/CacheRoleSaasFeatureResourceHandler.java +++ b/tyr-server/src/main/java/cn/axzo/tyr/server/event/inner/CacheRoleSaasFeatureResourceHandler.java @@ -87,7 +87,7 @@ public class CacheRoleSaasFeatureResourceHandler implements InitializingBean { public void onPageElementFeatureResourceUpsert(Event event, EventConsumer.Context context) { PageElementFeatureResourceUpsertPayload payload = event.normalizedData(PageElementFeatureResourceUpsertPayload.class); - if (CollectionUtils.isEmpty(payload.getRelations())) { + if (StringUtils.isBlank(payload.getTerminal())) { return; } diff --git a/tyr-server/src/main/java/cn/axzo/tyr/server/event/payload/PageElementFeatureResourceUpsertPayload.java b/tyr-server/src/main/java/cn/axzo/tyr/server/event/payload/PageElementFeatureResourceUpsertPayload.java index 78332c19..f0c6b420 100644 --- a/tyr-server/src/main/java/cn/axzo/tyr/server/event/payload/PageElementFeatureResourceUpsertPayload.java +++ b/tyr-server/src/main/java/cn/axzo/tyr/server/event/payload/PageElementFeatureResourceUpsertPayload.java @@ -15,5 +15,5 @@ import java.util.List; @AllArgsConstructor public class PageElementFeatureResourceUpsertPayload implements Serializable { - private List relations; + private String terminal; } diff --git a/tyr-server/src/main/java/cn/axzo/tyr/server/service/impl/SaasPageElementServiceImpl.java b/tyr-server/src/main/java/cn/axzo/tyr/server/service/impl/SaasPageElementServiceImpl.java index 4471eafe..655451d5 100644 --- a/tyr-server/src/main/java/cn/axzo/tyr/server/service/impl/SaasPageElementServiceImpl.java +++ b/tyr-server/src/main/java/cn/axzo/tyr/server/service/impl/SaasPageElementServiceImpl.java @@ -169,25 +169,23 @@ public class SaasPageElementServiceImpl implements SaasPageElementService { Lists.newArrayList(modifyPageElementRelation.getFeatureResourceUniCode()), Lists.newArrayList(modifyPageElementRelation.getRelationType()), modifyPageElementRelation.getOperatorId()); // 保存新的绑定关系 - if (CollectionUtils.isEmpty(modifyPageElementRelation.getPageElementCodes())) { - return; + if (CollectionUtils.isNotEmpty(modifyPageElementRelation.getPageElementCodes())) { + List relations = modifyPageElementRelation.getPageElementCodes().stream().map(e -> SaasPageElementFeatureResourceRelation.builder() + .pageElementCode(e) + .featureResourceUniCode(modifyPageElementRelation.getFeatureResourceUniCode()) + .terminal(modifyPageElementRelation.getTerminal()) + .type(modifyPageElementRelation.getRelationType()) + .createBy(modifyPageElementRelation.getOperatorId()) + .build()).collect(Collectors.toList()); + saasPageElementFeatureResourceRelationDao.saveBatch(relations); } - // 保存新的绑定关系 - List relations = modifyPageElementRelation.getPageElementCodes().stream().map(e -> SaasPageElementFeatureResourceRelation.builder() - .pageElementCode(e) - .featureResourceUniCode(modifyPageElementRelation.getFeatureResourceUniCode()) - .terminal(modifyPageElementRelation.getTerminal()) - .type(modifyPageElementRelation.getRelationType()) - .createBy(modifyPageElementRelation.getOperatorId()) - .build()).collect(Collectors.toList()); - saasPageElementFeatureResourceRelationDao.saveBatch(relations); Event event = Event.builder() .targetType(TARGET_TYPE) .eventCode(PAGE_ELEMENT_FEATURE_RESOURCE_UPSERT.getEventCode()) .data(PageElementFeatureResourceUpsertPayload.builder() - .relations(relations) + .terminal(modifyPageElementRelation.getTerminal()) .build()) .build(); mqProducer.send(event);