From 1087c505c80cf486653300606c8da72b0274d476 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E6=98=86=E9=B9=8F?= Date: Wed, 10 Jul 2024 17:59:22 +0800 Subject: [PATCH] =?UTF-8?q?feat(REQ-2545):=20=E4=BF=9D=E5=AD=98=E4=BA=A7?= =?UTF-8?q?=E5=93=81=E6=8E=A5=E5=8F=A3=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../tyr/server/service/ProductFeatureRelationService.java | 2 ++ .../service/impl/ProductFeatureRelationServiceImpl.java | 6 ++++++ .../cn/axzo/tyr/server/service/impl/ProductServiceImpl.java | 4 ++++ 3 files changed, 12 insertions(+) diff --git a/tyr-server/src/main/java/cn/axzo/tyr/server/service/ProductFeatureRelationService.java b/tyr-server/src/main/java/cn/axzo/tyr/server/service/ProductFeatureRelationService.java index d0801fff..fdb2febc 100644 --- a/tyr-server/src/main/java/cn/axzo/tyr/server/service/ProductFeatureRelationService.java +++ b/tyr-server/src/main/java/cn/axzo/tyr/server/service/ProductFeatureRelationService.java @@ -32,6 +32,8 @@ public interface ProductFeatureRelationService extends IService req, int relationType); + void removeFeatureResourceRelationByProductIdAndType(Long productId, int relationType); + ApiResult> featureListByProduct(List productIds); /** 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 6c9dcd63..100bdb17 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 @@ -139,6 +139,12 @@ public class ProductFeatureRelationServiceImpl extends ServiceImpl() + .eq(SaasProductModuleFeatureRelation::getProductModuleId, productId).eq(SaasProductModuleFeatureRelation::getType, relationType)); + } + @Override public ApiResult> featureListByProduct(List productIds) { if (CollectionUtil.isEmpty(productIds)) { diff --git a/tyr-server/src/main/java/cn/axzo/tyr/server/service/impl/ProductServiceImpl.java b/tyr-server/src/main/java/cn/axzo/tyr/server/service/impl/ProductServiceImpl.java index ceece62f..857bf7ec 100644 --- a/tyr-server/src/main/java/cn/axzo/tyr/server/service/impl/ProductServiceImpl.java +++ b/tyr-server/src/main/java/cn/axzo/tyr/server/service/impl/ProductServiceImpl.java @@ -367,6 +367,10 @@ public class ProductServiceImpl implements ProductService { * 保存非政务端产品功能权限 */ private void saveNonGaFeatureResource(Long productId, List relations) { + if (CollectionUtils.isEmpty(relations)) { + productFeatureRelationService.removeFeatureResourceRelationByProductIdAndType(productId, ProductModuleFeatureRelationTypeEnum.FEATURE_RESOURCE.getCode()); + return; + } List dictCodeIds = Lists.newArrayList(); for (ProductSaveReq.ProductFeatureRelation relation : relations) { AssertUtil.notNull(relation.getDictCodeId(), "功能范围选择的字典ID不能未空。");