2024-10-18 09:01:41 +00:00
|
|
|
|
package cn.palmte.work.model;
|
|
|
|
|
|
|
|
|
|
|
|
import org.hibernate.annotations.GenericGenerator;
|
|
|
|
|
|
|
|
|
|
|
|
import javax.persistence.*;
|
|
|
|
|
|
import java.math.BigDecimal;
|
|
|
|
|
|
import java.util.Date;
|
|
|
|
|
|
|
|
|
|
|
|
@MappedSuperclass
|
|
|
|
|
|
public class ProjectBudgetCostDetailBase {
|
|
|
|
|
|
public static final int TYPE_DEVICE = 1;
|
|
|
|
|
|
public static final int TYPE_BUILD = 2;
|
|
|
|
|
|
public static final int TYPE_SERVICE = 3;
|
|
|
|
|
|
public static final int TYPE_OHTER = 4;
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 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 int category;
|
|
|
|
|
|
|
|
|
|
|
|
private String name;
|
|
|
|
|
|
|
|
|
|
|
|
private String unit;
|
|
|
|
|
|
private BigDecimal amount;
|
|
|
|
|
|
private BigDecimal price;
|
|
|
|
|
|
|
|
|
|
|
|
@Column(name = "tax_rate")
|
|
|
|
|
|
private BigDecimal taxRate;
|
|
|
|
|
|
|
|
|
|
|
|
@Column(name = "contract_party")
|
|
|
|
|
|
private String contractParty;
|
|
|
|
|
|
|
|
|
|
|
|
@Column(name = "is_underwritten")
|
|
|
|
|
|
private int isUnderwritten;
|
|
|
|
|
|
|
|
|
|
|
|
@Column(name = "underwritten_amount")
|
|
|
|
|
|
private BigDecimal underwrittenAmount;
|
|
|
|
|
|
|
|
|
|
|
|
@Column(name = "pay_time")
|
|
|
|
|
|
@Temporal(TemporalType.TIMESTAMP)
|
|
|
|
|
|
private Date payTime;
|
|
|
|
|
|
|
2024-10-28 08:42:34 +00:00
|
|
|
|
private BigDecimal totalTaxInclude;
|
2024-10-18 09:01:41 +00:00
|
|
|
|
@Column(name = "pay_amount")
|
|
|
|
|
|
private BigDecimal payAmount;
|
|
|
|
|
|
|
|
|
|
|
|
@Column(name = "pay_way")
|
|
|
|
|
|
private String payWay;
|
|
|
|
|
|
|
|
|
|
|
|
@Column(name = "remark")
|
|
|
|
|
|
private String remark;
|
|
|
|
|
|
|
|
|
|
|
|
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 int getCategory() {
|
|
|
|
|
|
return category;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public void setCategory(int category) {
|
|
|
|
|
|
this.category = category;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
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 BigDecimal getAmount() {
|
|
|
|
|
|
return amount;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public void setAmount(BigDecimal 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 String getContractParty() {
|
|
|
|
|
|
return contractParty;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public void setContractParty(String contractParty) {
|
|
|
|
|
|
this.contractParty = contractParty;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public int getIsUnderwritten() {
|
|
|
|
|
|
return isUnderwritten;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public void setIsUnderwritten(int isUnderwritten) {
|
|
|
|
|
|
this.isUnderwritten = isUnderwritten;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public BigDecimal getUnderwrittenAmount() {
|
|
|
|
|
|
return underwrittenAmount;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public void setUnderwrittenAmount(BigDecimal underwrittenAmount) {
|
|
|
|
|
|
this.underwrittenAmount = underwrittenAmount;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public Date getPayTime() {
|
|
|
|
|
|
return payTime;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public void setPayTime(Date payTime) {
|
|
|
|
|
|
this.payTime = payTime;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public BigDecimal getPayAmount() {
|
|
|
|
|
|
return payAmount;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public void setPayAmount(BigDecimal payAmount) {
|
|
|
|
|
|
this.payAmount = payAmount;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public String getPayWay() {
|
|
|
|
|
|
return payWay;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public void setPayWay(String payWay) {
|
|
|
|
|
|
this.payWay = payWay;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public String getRemark() {
|
|
|
|
|
|
return remark;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public void setRemark(String remark) {
|
|
|
|
|
|
this.remark = remark;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2024-10-28 08:42:34 +00:00
|
|
|
|
public void setTotalTaxInclude(BigDecimal totalTaxInclude) {
|
|
|
|
|
|
this.totalTaxInclude = totalTaxInclude;
|
|
|
|
|
|
}
|
2024-10-18 09:01:41 +00:00
|
|
|
|
public BigDecimal getTotalTaxInclude(){
|
2024-10-28 08:42:34 +00:00
|
|
|
|
// 之前含税总金额为单价*价格 后续更改为手动数据 兼容之前版本数据
|
|
|
|
|
|
if (totalTaxInclude!=null){
|
|
|
|
|
|
return totalTaxInclude;
|
|
|
|
|
|
}
|
2024-10-18 09:01:41 +00:00
|
|
|
|
if(null == price){
|
|
|
|
|
|
return BigDecimal.ZERO;
|
|
|
|
|
|
}
|
|
|
|
|
|
return price.multiply(amount);
|
|
|
|
|
|
}
|
|
|
|
|
|
public BigDecimal getTotalTaxExclude(){
|
|
|
|
|
|
BigDecimal totalTaxInclude = getTotalTaxInclude();
|
|
|
|
|
|
if(null == totalTaxInclude) {
|
|
|
|
|
|
return BigDecimal.ZERO;
|
|
|
|
|
|
} else if (taxRate == null){
|
|
|
|
|
|
return totalTaxInclude;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
//不含税总金额=含税总金额/(1+税率)
|
|
|
|
|
|
return totalTaxInclude.divide(taxRate.divide(new BigDecimal(100), 2, BigDecimal.ROUND_HALF_UP).add(new BigDecimal(1)), 2, BigDecimal.ROUND_HALF_UP);
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public BigDecimal getTotalTax(){
|
|
|
|
|
|
BigDecimal totalTaxInclude = getTotalTaxInclude();
|
|
|
|
|
|
if(null == totalTaxInclude || taxRate == null){
|
|
|
|
|
|
return BigDecimal.ZERO;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
//不含税总金额=含税总金额/(1+税率)
|
|
|
|
|
|
return totalTaxInclude.multiply(taxRate.divide(new BigDecimal(100), 2, BigDecimal.ROUND_HALF_UP)).divide(taxRate.divide(new BigDecimal(100), 2, BigDecimal.ROUND_HALF_UP).add(new BigDecimal(1)), 2, BigDecimal.ROUND_HALF_UP);
|
|
|
|
|
|
}
|
2021-12-08 09:14:30 +00:00
|
|
|
|
}
|