package biz.policy.price;
|
|
import java.math.BigDecimal;
|
|
import foundation.data.entity.Entity;
|
import foundation.json.IJSONProvider;
|
import foundation.json.IJSONWriter;
|
|
public class PriceLine extends Line implements IJSONProvider {
|
|
public static String Type_Standard = "Standard-SKU-Price";
|
public static String Type_Customer_ProductLine = "Customer-ProductLine-Price";
|
public static String Type_Customer_Product = "Customer-Product-Price";
|
public static String Type_Customer_SKU = "Customer-SKU-Price";
|
public static String Type_Package_SKU = "Package-SKU-Price";
|
public static String Type_Package_Product = "Package-Product-Price";
|
|
private BigDecimal price;
|
private BigDecimal discountRate;
|
|
|
public PriceLine(String typeCode) {
|
super(typeCode);
|
}
|
|
public void load(Entity entity) {
|
super.load(entity);
|
|
price = entity.getBigDecimal("price", null);
|
discountRate = entity.getBigDecimal("discount_rate", BigDecimal.ONE);
|
}
|
|
public void format(Line line) {
|
super.load(line);
|
}
|
|
public PriceLine copy() throws Exception {
|
PriceLine line = (PriceLine) this.clone();
|
return line;
|
}
|
|
public BigDecimal getPrice() {
|
return price;
|
}
|
|
public void setPrice(BigDecimal price) {
|
this.price = price;
|
}
|
|
public BigDecimal getDiscountRate() {
|
return discountRate;
|
}
|
|
public void setDiscountRate(BigDecimal discountRate) {
|
this.discountRate = discountRate;
|
}
|
|
public void writeJSON(IJSONWriter writer) {
|
writer.beginObject();
|
|
super.writeJSONBody(writer);
|
writer.write("price", price);
|
|
writer.endObject();
|
}
|
|
public void writeJSONBody(IJSONWriter writer) {
|
super.writeJSONBody(writer);
|
writer.write("price", price);
|
}
|
}
|