diff --git a/tyr-server/src/main/java/cn/axzo/tyr/server/repository/entity/ProductModule.java b/tyr-server/src/main/java/cn/axzo/tyr/server/repository/entity/ProductModule.java index aae6f5aa..8d9bb5af 100644 --- a/tyr-server/src/main/java/cn/axzo/tyr/server/repository/entity/ProductModule.java +++ b/tyr-server/src/main/java/cn/axzo/tyr/server/repository/entity/ProductModule.java @@ -6,8 +6,14 @@ import lombok.EqualsAndHashCode; import lombok.Getter; import lombok.Setter; import lombok.ToString; +import org.apache.commons.lang3.StringUtils; import java.io.Serializable; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; +import java.util.stream.Collectors; +import java.util.stream.Stream; /** * saas-产品表(SaasProduct)表实体类 @@ -85,5 +91,14 @@ public class ProductModule extends BaseEntity { protected Serializable pkVal() { return this.id; } + + public List parseOuType() { + if (StringUtils.isNotBlank(this.ouType)) { + return Arrays.asList(this.ouType.split(",")).stream().map(e -> Integer.valueOf(e.trim())).collect(Collectors.toList()); + } else { + // 避免下游空指针 + return new ArrayList<>(); + } + } } 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 8f0a646b..a1253fb3 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 @@ -61,7 +61,7 @@ public class ProductServiceImpl implements ProductService { ArrayList result = new ArrayList<>(); list.forEach(e -> { ProductVO product = BeanMapper.copyBean(e, ProductVO.class); - product.setOuTypes(Arrays.stream(e.getOuType().split(",")).filter(org.apache.commons.lang3.StringUtils::isNotBlank).map(s -> Integer.valueOf(s.trim())).collect(Collectors.toList())); + product.setOuTypes(e.parseOuType()); result.add(product); }); return ApiResult.ok(BeanMapper.copyList(list, ProductVO.class)); @@ -81,7 +81,10 @@ public class ProductServiceImpl implements ProductService { @Override public ApiResult getById(Long id) { - return ApiResult.ok(BeanMapper.copyBean(productModuleDao.getById(id), ProductVO.class)); + ProductModule byId = productModuleDao.getById(id); + ProductVO productVO = BeanMapper.copyBean(byId, ProductVO.class); + productVO.setOuTypes(byId.parseOuType()); + return ApiResult.ok(productVO); } @Override