foodcart.java

来自「一个完整的网络订餐系统」· Java 代码 · 共 113 行

JAVA
113
字号
package com.foodcart.dao;

import java.util.*;
import com.foodcart.form.FoodCartItem;

public class FoodCart {

 private HashMap cart;
 private float   totalPrice;

  public FoodCart() {
    cart = new HashMap();
  }

  public void addFoodItem(String foodID,FoodCartItem item)
  {
    if(cart!=null)
    {
      if(cart.containsKey(foodID))
      {
        float oldAmount = ((FoodCartItem)cart.get(foodID)).getAmount();
        cart.remove(foodID);
        item.setAmount(oldAmount+item.getAmount());

      }
    }
    cart.put(foodID,item);
  }

  public void updateFoodItem(String foodID,FoodCartItem item)
  {
    if (cart.containsKey(foodID))
    {
      cart.remove(foodID);
      cart.put(foodID,item);
     }
  }

  public FoodCartItem getFoodCartItem(String foodID)
  {
     FoodCartItem item = null;
     if (cart.containsKey(foodID))
     {
          item = (FoodCartItem)cart.get(foodID);
     }
     return item;
  }

  public void delFoodItem(String foodID)
  {
    cart.remove(foodID);
  }

  public HashMap getCart() {
    return cart;
  }

  public float getTotalPrice() {
    float fTotal = 0.0f;
    HashMap map = getCart();
    for (Iterator it = map.keySet().iterator(); it.hasNext(); ) {
      String key = (String) it.next();
      FoodCartItem item = (FoodCartItem) map.get(key);
      fTotal += item.getAmount()* item.getPrice();
    }
    return fTotal;
  }

  public void emptyCart()
  {
     cart.clear();
  }

  public List getStoreList()
  {
    List storeList = new ArrayList();
    HashMap map = getCart();
    for (Iterator it = map.keySet().iterator(); it.hasNext(); ) {
      String key = (String) it.next();
      FoodCartItem item = (FoodCartItem) map.get(key);
      if(!storeList.contains(item.getStoreID()))
           storeList.add(item.getStoreID());
    }
    return storeList;
  }


  public HashMap getStoreAndPriceMap()
  {
    HashMap storePrice = new HashMap();
    List storeList = getStoreList();
    HashMap map = getCart();

    for(int i = 0;i<storeList.size();i++)
    {
      float fTotal = 0.0f;
      String storeID = (String)storeList.get(i);
      for (Iterator it = map.keySet().iterator(); it.hasNext(); ) {
        String key = (String) it.next();
        FoodCartItem item = (FoodCartItem) map.get(key);
        if (storeID.equals(item.getStoreID()))
            fTotal += item.getAmount()* item.getPrice();
      }
      Float oPrice = new Float(fTotal);
      storePrice.put(storeID,oPrice);
    }
    return storePrice;
  }


}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?