📄 invoice.java
字号:
package chapter1;
import javax.swing.JOptionPane;
public class Invoice extends SortedList{
//定义与提货清单关联的存货清单
private Inventory inventory;
//提货清单构造函数
public Invoice(Inventory _inventory){
//调用父类SortedList的构造函数
super(new ItemComparer());
inventory = _inventory;
}
//在提货清单中增加提货条目,同时在存货清单中对应的存货
//条目上减少用户输入的商品数量
public void addItem(String _ID,int _number) {
InventoryItem item = inventory.getPart(_ID);
if ((item !=null) && (item.units >= _number) && (_number >= 0) && !isFull()){
item.remove(_number);
add(new InvoiceItem(item,_number));
}else
JOptionPane.showMessageDialog(null,"列表满、项没有找到或者商品已经订完!","警告",JOptionPane.ERROR_MESSAGE);
System.out.println("List full,item not found or invalid units");
}
//根据用户输入的id,在提货清单上删除提货条目
public void delItem(String _ID)
{
int index = indexOf(new Item(_ID));
if (index >= 0)
delete(index);
}
//返回提货清单上商品的价格总和
public double getTotal(){
double total = 0.0;
for(int i = 0; i < getSize(); i++)
total += ((InvoiceItem) get(i)).total;
return total;
}
//以字符串的形式返回提货清单
public String toString() {
return"提货清单:" + Util.dollar(getTotal()) + super.toString();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -