先放两个对象类
package net.xdclass.vo; import com.fasterxml.jackson.annotation.JsonProperty; import io.swagger.models.auth.In; import java.math.BigDecimal; import java.util.List; public class CartVO { /** * 购物项 */ @JsonProperty("cart_items") private List<CartItemVO> cartItems; /** * 购买总件数 */ @JsonProperty("total_num") private Integer totalNum; /** * 购物车总价格 */ @JsonProperty("total_price") private BigDecimal totalPrice; /** * 购物车实际支付价格 */ @JsonProperty("real_pay_price") private BigDecimal realPayPrice; /** * 总件数 * @return */ public Integer getTotalNum() { if(this.cartItems!=null){ int total = cartItems.stream().mapToInt(CartItemVO::getBuyNum).sum(); return total; } return 0; } /** * 总价格 * @return */ public BigDecimal getTotalPrice() { BigDecimal amount = new BigDecimal("0"); if(this.cartItems!=null){ for(CartItemVO cartItemVO : cartItems){ BigDecimal itemTotalAmount = cartItemVO.getTotalAmount(); amount = amount.add(itemTotalAmount); } } return amount; } /** * 购物车里面实际支付的价格 * @return */ public BigDecimal getRealPayPrice() { BigDecimal amount = new BigDecimal("0"); if(this.cartItems!=null){ for(CartItemVO cartItemVO : cartItems){ BigDecimal itemTotalAmount = cartItemVO.getTotalAmount(); amount = amount.add(itemTotalAmount); } } return amount; } public List<CartItemVO> getCartItems() { return cartItems; } public void setCartItems(List<CartItemVO> cartItems) { this.cartItems = cartItems; } }
package net.xdclass.vo; import com.fasterxml.jackson.annotation.JsonProperty; import java.math.BigDecimal; public class CartItemVO { /** * 商品id */ @JsonProperty("product_id") private Long productId; /** * 购买数量 */ @JsonProperty("buy_num") private Integer buyNum; /** * 商品标题 */ @JsonProperty("product_title") private String productTitle; /** * 图片 */ @JsonProperty("product_img") private String productImg; /** * 商品单价 */ private BigDecimal amount; /** * 总价格,单价+数量 */ @JsonProperty("total_amount") private BigDecimal totalAmount; public Long getProductId() { return productId; } public void setProductId(Long productId) { this.productId = productId; } public Integer getBuyNum() { return buyNum; } public void setBuyNum(Integer buyNum) { this.buyNum = buyNum; } public String getProductTitle() { return productTitle; } public void setProductTitle(String productTitle) { this.productTitle = productTitle; } public String getProductImg() { return productImg; } public void setProductImg(String productImg) { this.productImg = productImg; } public BigDecimal getAmount() { return amount; } public void setAmount(BigDecimal amount) { this.amount = amount; } /** * 商品单价 * 购买数量 * @return */ public BigDecimal getTotalAmount() { return this.amount.multiply(new BigDecimal(this.buyNum)); } }
第一个知识
/** * 总件数 * @return */ public Integer getTotalNum() { if(this.cartItems!=null){ int total = cartItems.stream().mapToInt(CartItemVO::getBuyNum).sum(); return total; } return 0; }
第二个知识
/** * 总价格 * @return */ public BigDecimal getTotalPrice() { BigDecimal amount = new BigDecimal("0"); if(this.cartItems!=null){ for(CartItemVO cartItemVO : cartItems){ BigDecimal itemTotalAmount = cartItemVO.getTotalAmount(); amount = amount.add(itemTotalAmount); } } return amount; }
本文作者为DBC,转载请注明。