2020-09-23 23:43发布
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
有人给过ProductModel派生过根类别吗? 任何帮助,将不胜感激。
CommerceCategoryService.getPathsForCategory(..)将返回该产品所有类别的列表,包括作为指定类别的超类别继承的那些产品。 调用此方法的成本可能很高,因此请考虑适当地使用缓存或使用PrepareInterceptor来将根类别保留为产品上的属性。
CommerceCategoryService.getPathsForCategory(。 )
将类别而不是产品作为参数。 问题是要从产品中获取基本类别。
嗨,拉妮,
要获取产品的根类别,您将必须获取该产品的超级类别。 提取ProductModel后,可以调用方法productModel.getSupercategories()。 这将返回特定ProductModel的所有超类别。 从这些超级类别中,您可以获取根类别。
我们找不到直接获取根目录类别的直接方法。 因此,我们创建了自己的Utility方法,在此方法中我们传递了productModel,并遍历了超级类别以获取根类别。
感谢Sanjay。 我也递归地执行此操作,但希望有一种更好的方法,因为每个超级类别列表都可能包含另一个整个超级类别列表。
您可以使用此方法检查特定类别是否为超类别-
私有布尔值isSuperCategoryPresent(ProductModel productModel){ Collection 超级类别= productModel.getSupercategories(); for(CategoryModel categoryModel:supercategories){ Collection > pathForCategory = commerceCategoryService.getPathsForCategory(categoryModel); for(List superCategoryPath:pathForCategory){ for(CategoryModel superCategory:superCategoryPath){ if(superCategory.getCode()。equals(BASE_CATEGORY_CODE)){ 返回true; } } } } 返回false; }
最多设置5个标签!
CommerceCategoryService.getPathsForCategory(..)将返回该产品所有类别的列表,包括作为指定类别的超类别继承的那些产品。 调用此方法的成本可能很高,因此请考虑适当地使用缓存或使用PrepareInterceptor来将根类别保留为产品上的属性。
将类别而不是产品作为参数。 问题是要从产品中获取基本类别。
嗨,拉妮,
要获取产品的根类别,您将必须获取该产品的超级类别。 提取ProductModel后,可以调用方法productModel.getSupercategories()。 这将返回特定ProductModel的所有超类别。 从这些超级类别中,您可以获取根类别。
我们找不到直接获取根目录类别的直接方法。 因此,我们创建了自己的Utility方法,在此方法中我们传递了productModel,并遍历了超级类别以获取根类别。
感谢Sanjay。 我也递归地执行此操作,但希望有一种更好的方法,因为每个超级类别列表都可能包含另一个整个超级类别列表。
您可以使用此方法检查特定类别是否为超类别-
一周热门 更多>