diff --git a/tyr-server/src/main/java/cn/axzo/tyr/server/service/impl/SaasFeatureResourceServiceImpl.java b/tyr-server/src/main/java/cn/axzo/tyr/server/service/impl/SaasFeatureResourceServiceImpl.java index d1749f51..f7cd99ab 100644 --- a/tyr-server/src/main/java/cn/axzo/tyr/server/service/impl/SaasFeatureResourceServiceImpl.java +++ b/tyr-server/src/main/java/cn/axzo/tyr/server/service/impl/SaasFeatureResourceServiceImpl.java @@ -198,6 +198,7 @@ public class SaasFeatureResourceServiceImpl implements SaasFeatureResourceServic baseResource.setUpdateBy(req.getOperatorId()); // 新增时候 validFeatureCode(baseResource); + validFeatureName(baseResource); if (req.getId() == null) { baseResource.setCreateBy(req.getOperatorId()); baseResource.setDisplayOrder(0); @@ -256,6 +257,7 @@ public class SaasFeatureResourceServiceImpl implements SaasFeatureResourceServic saasFeatureResource.setUpdateBy(operatorId); saasFeatureResource.setDisplayOrder(displayOrder); validFeatureCode(saasFeatureResource); + validFeatureName(saasFeatureResource); if (saasFeatureResource.getId() != null) { SaasFeatureResource dbResource = featureResourceDao.getById(saasFeatureResource.getId()); saasFeatureResource.setPath(dbResource.getPath()); @@ -441,6 +443,19 @@ public class SaasFeatureResourceServiceImpl implements SaasFeatureResourceServic } } + void validFeatureName(SaasFeatureResource featureResource) { + Assert.notNull(featureResource.getFeatureName(), "名称不能为空"); + SaasFeatureResource exist = featureResourceDao.lambdaQuery() + .eq(SaasFeatureResource::getParentId, featureResource.getParentId() == null ? 0 : featureResource.getParentId()) + .eq(SaasFeatureResource::getTerminal, featureResource.getTerminal()) + .eq(SaasFeatureResource::getFeatureName, featureResource.getFeatureName()) + .eq(BaseEntity::getIsDelete, 0) + .one(); + if (exist != null && !exist.getId().equals(featureResource.getId())) { + Throws.bizException(BaseCode.BAD_REQUEST, featureResource.getFeatureName() + "-存在重复的名称"); + } + } + @Override public Set listAuthFree() { return featureResourceDao.lambdaQuery()