📄 orderitem.java
字号:
package com.tarena.abs.model;
import java.awt.Color;
import javax.swing.JButton;
import javax.swing.JLabel;
/**
* 订单项,用来描述订单中的一个条目,条目是指
* 某位乘客乘座某次航班的确定的预定记录。
* @author tangliang
* @version 1.1.0
*/
public class OrderItem implements java.io.Serializable{
/**
*
*/
private static final long serialVersionUID = 1580610597688807213L;
private String passengerName;//乘座飞机人姓名
private String passengerId;//乘座飞机人身份证号
private Flight flight;//预定的航班
private CabinClass f_class;//预定的舱位等级
private TicketType t_type;//机票类型
private int score;//奖励的积分
public OrderItem(){}
public OrderItem( String name,String number,Flight flight,
CabinClass f_class, TicketType t_type, int scr) {
this.f_class = f_class;
this.flight = flight;
this.passengerId = number;
this.passengerName = name;
this.score = scr;
this.t_type = t_type;
}
//以下是get和set方法.
public CabinClass getF_class() {
return f_class;
}
public void setF_class(CabinClass f_class) {
this.f_class = f_class;
}
public Flight getFlight() {
return flight;
}
public void setFlight(Flight flight) {
this.flight = flight;
}
public String getPassengerId() {
return passengerId;
}
public void setPassengerId(String idNumber) {
this.passengerId = idNumber;
}
public String getPassengerName() {
return passengerName;
}
public void setPassengerName(String name) {
this.passengerName = name;
}
public double getPrice() {
double datumPrice=flight.getSch().getPrice();
double offPrice=datumPrice*flight.getPriceOff();
double price=offPrice*f_class.getPriceFactor()*t_type.getPriceFactor();
return price;
}
public int getScore() {
return score;
}
public void setScore(int scr) {
this.score = scr;
}
public TicketType getT_type() {
return t_type;
}
public void setT_type(TicketType t_type) {
this.t_type = t_type;
}
public String toString(){
StringBuffer sb1=new StringBuffer();
sb1.append(getFlight().getDate().toString()+" ");
sb1.append(getFlight().getSch().getFromTime().toString());
sb1.append(",从 "+getFlight().getSch().getFromAddress());
sb1.append(" 至 "+getFlight().getSch().getToAddress());
sb1.append("("+getFlight().getSch().getCompany().getName());
sb1.append(getFlight().getSch().getFlightNumber()+")");
StringBuffer sb2=new StringBuffer();
sb2.append(getF_class().toString()+" ");
sb2.append(getT_type().toString()+" ");
sb2.append("乘客姓名:"+getPassengerName()+" ");
sb2.append("证件号码:"+getPassengerId()+" 座位号:"+this.numOfSeat()+" 票价:"+getPrice());
return sb1+""+'\n'+sb2;
}
public int numOfSeat(){
switch(f_class){
case EconomyClass:{
int a=getFlight().getSch().getPlane().getECS()-getFlight().getECSRemain()+1;
getFlight().setECSRemain(getFlight().getECSRemain()-1);
return a;
}
case OfficialClass:{
int a=getFlight().getSch().getPlane().getBCS()-getFlight().getBCSRemain()+1;
getFlight().setBCSRemain(getFlight().getBCSRemain()-1);
return a;
}
case FirstClass:{
int a=getFlight().getSch().getPlane().getFCS()-getFlight().getFCSRemain()+1;
getFlight().setFCSRemain(getFlight().getFCSRemain()-1);
return a;
}
default:return -1;
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -