fourcal/src/main/java/cn/palmte/work/model/ProjectBudgetIncomeDetail.java

120 lines
2.5 KiB
Java
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

package cn.palmte.work.model;
import org.hibernate.annotations.GenericGenerator;
import javax.persistence.*;
import java.math.BigDecimal;
/**
* 项目预算收入明细表
*/
@Entity
@Table(name = "project_budget_income_detail")
public class ProjectBudgetIncomeDetail {
public static final int TYPE_DEVICE = 1;
public static final int TYPE_ENGINEER = 2;
public static final int TYPE_SERVICE = 3;
/**
* id
*/
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@GenericGenerator(name = "persistenceGenerator", strategy = "increment")
private Integer id;
@Column(name = "project_id")
private int projectId;
private int type;
private String name;
private String unit;
private int amount;
private BigDecimal price;
@Column(name = "tax_rate")
private BigDecimal taxRate;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public int getProjectId() {
return projectId;
}
public void setProjectId(int projectId) {
this.projectId = projectId;
}
public int getType() {
return type;
}
public void setType(int type) {
this.type = type;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getUnit() {
return unit;
}
public void setUnit(String unit) {
this.unit = unit;
}
public int getAmount() {
return amount;
}
public void setAmount(int amount) {
this.amount = amount;
}
public BigDecimal getPrice() {
return price;
}
public void setPrice(BigDecimal price) {
this.price = price;
}
public BigDecimal getTaxRate() {
return taxRate;
}
public void setTaxRate(BigDecimal taxRate) {
this.taxRate = taxRate;
}
public BigDecimal getTotalTaxInclude(){
if(null == price){
return null;
}
return price.multiply(new BigDecimal(amount));
}
public BigDecimal getTotalTaxExclude(){
BigDecimal totalTaxInclude = getTotalTaxInclude();
if(null == totalTaxInclude || taxRate == null){
return null;
}
//不含税总金额=含税总金额/1+税率)
BigDecimal bigDecimal = taxRate.divide(new BigDecimal(100), 2, BigDecimal.ROUND_HALF_UP).add(new BigDecimal(1));
return totalTaxInclude.divide(bigDecimal, 2, BigDecimal.ROUND_HALF_UP);
}
}