📄 cart.java
字号:
package com.sdi0708.bdifn.bookstore.domain;import java.util.Collection;import java.util.Collections;import java.util.HashMap;import java.util.Map;public class Cart { @SuppressWarnings("unchecked") private final Map items = Collections .synchronizedMap(new HashMap()); /** * check the cart is that empty * @return */ public boolean isEmpty() { return items.isEmpty(); } /** * clear the cart */ public void clear() {// for(Object key : items.keySet()) {// items.remove(key);// } items.clear(); } /** * add prudoct to a cart * @param product */ @SuppressWarnings("unchecked") public void addItem(Product product) { Long id = product.getId(); OrderItem item = (OrderItem) items.get(id); if(item == null) { item = new OrderItem(); item.setProduct(product); item.setQuntity(0); item.setStatus(OrderItem.NEW); } item.incrementQauntity(); this.items.put(id, item); } /** * remove an orderItem from a cart * @param id * @return */ public OrderItem removeItemtByProductId(Long id) { OrderItem item = (OrderItem) items.remove(id); return item; } /** * remove some orderItems from a cart * @param ids */ public void removeItemsByProductId(Long[] ids) { for(Long id : ids) { items.remove(id); } } /** * increment an item */ public void incrementQuntityById(Long ItemId) { OrderItem item = (OrderItem) items.get(ItemId); if(item != null){ item.incrementQauntity(); } } /** * change the quntity by id. * @param ItemId * @param amount */ public void changeQuntity(Long ItemId, int amount) { OrderItem item = (OrderItem) items.get(ItemId); if(item != null) { item.setQuntity(amount); } } /** * get the items from the cart * @return */ @SuppressWarnings("unchecked") public Collection<OrderItem> getCartItems() { return items.values(); } /** * get the total price of the cartitems. * @return */ public double getTotalPrice() { double totalPrice = 0; for(OrderItem item : getCartItems() ) { totalPrice = totalPrice + item.getCost() ; } return totalPrice; }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -