package fafa.shop.service;
import java.util.*;
import fafa.shop.doamin.Book;
public class MyCart {
//定义hashmap接收书
HashMap<String, Book> hm = new HashMap<String, Book>() ;
public void addBook2(String id){
if (hm.containsKey(id)){//判断此ID是否存在
Book book = hm.get(id) ; //其实拿出来的是前一本书 修改购买数量
int shoppingNum = book.getShoppingNum() ;
book.setShoppingNum(shoppingNum + 1) ;
}else{
hm.put(id, new BookService().getBookById(id)) ; //如果是第一本书则直接加入HashMap
}
}
//添加书
public void addBook(String id, Book book){
if (hm.containsKey(id)){ //判断此ID是否存在
book = hm.get(id) ; //其实拿出来的是前一本书 修改购买数量
//如果购物车中存在这本书 ,那么则把购买数量加1
int shoppingNum = book.getShoppingNum() ;
book.setShoppingNum(shoppingNum + 1) ;
}else{
hm.put(id, book) ;
}
}
//删除书
public void delBook(String id){
hm.remove(id) ;
}
//更新书
public void updateBook(String id, String nums){
}
//显示购物车中的所有商品
public ArrayList<Book> showMycart(){
Iterator<String> iter = hm.keySet().iterator() ;
ArrayList<Book> all = new ArrayList<Book>() ;
while(iter.hasNext()){
String key = (String) iter.next() ;
Book book = hm.get(key) ;
all.add(book) ;
}
return all ;
}
//计算总价
public float getTotalPrice(){
float totalPrice = 0.0f ;
Iterator<String> iterator = hm.keySet().iterator() ;
while(iterator.hasNext()){
String bookId = (String) iterator.next() ;
Book book = hm.get(bookId) ;
totalPrice += book.getPrice() * book.getShoppingNum() ;
}
return totalPrice;
}
//清空购物车
public void clearBook(){
hm.clear() ;
}
}