4、多维度条件参数化
支持通过商品类型或总价来过滤商品
/**
* Version 3.0.0
* 支持通过商品类型或总价来过滤商品
* true-根据商品类型 false:根据商品总价
*/
public static List<Sku> filterSkus(List<Sku> cartSkuList,SkuCategoryEnum skuCategoryEnum,
Double totalPrice,Boolean categoryOrPrice){
List<Sku> result = new ArrayList<Sku>();
for (Sku sku : cartSkuList) {
if(categoryOrPrice&&skuCategoryEnum.equals(sku.getSkuCategory())) {
result.add(sku);
}
if(!categoryOrPrice&&totalPrice==sku.getTotalPrice()) {
result.add(sku);
}
}
return result;
}
public class Version1Test3 {
@Test
public void filterElectronicsSkus() {
List<Sku> cartSkuList = CartService.getCartSKUList();
List<Sku> filterElectronicsSkus = CartService.filterSkus(cartSkuList, null, 100.0, false);
System.out.println(JSON.toJSONString(filterElectronicsSkus,true));
}
}