556 lines
13 KiB
Java
556 lines
13 KiB
Java
package cn.palmte.work.model;
|
||
|
||
import cn.palmte.work.bean.ApproveStatusEnum;
|
||
import org.hibernate.annotations.GenericGenerator;
|
||
import top.jfunc.common.datetime.DatetimeUtils;
|
||
|
||
import javax.persistence.*;
|
||
import java.math.BigDecimal;
|
||
import java.util.Date;
|
||
|
||
/**
|
||
* 项目实体
|
||
* @author xiongshiyan at 2021/10/29 , contact me with email yanshixiong@126.com or phone 15208384257
|
||
*/
|
||
@Entity
|
||
@Table(name = "project")
|
||
public class Project {
|
||
public static final int STATUS_ESTIMATE = 1;
|
||
public static final int STATUS_BUDGET = 5;
|
||
public static final int STATUS_SETTLE = 10;
|
||
public static final int STATUS_FINAL = 15;
|
||
@Id
|
||
@GeneratedValue(strategy = GenerationType.IDENTITY)
|
||
@GenericGenerator(name = "persistenceGenerator", strategy = "increment")
|
||
private int id;
|
||
/**
|
||
* 序号
|
||
*/
|
||
@Transient
|
||
private int tempId;
|
||
/**
|
||
* 项目编号
|
||
*/
|
||
private String projectNo;
|
||
/**
|
||
* 项目名称
|
||
*/
|
||
private String name;
|
||
/**
|
||
* 项目类型:1工程集成类、2设备集成类、3战略合作类
|
||
*/
|
||
private int type;
|
||
@Column(name = "type_desc")
|
||
private String typeDesc;
|
||
/**
|
||
* 项目状态:1项目创建(概算),5预算,10结算,15决算
|
||
*/
|
||
private int status;
|
||
@Column(name = "status_desc")
|
||
private String statusDesc;
|
||
/**
|
||
* 概算、预算、结算、决算:审核状态:0草稿,1待审核,2审核通过,3审核不通过
|
||
*/
|
||
@Column(name = "approve_status_estimate")
|
||
private int approveStatusEstimate = -1;
|
||
@Column(name = "approve_status_budget")
|
||
private int approveStatusBudget = -1;
|
||
@Column(name = "approve_status_settle")
|
||
private int approveStatusSettle = -1;
|
||
@Column(name = "approve_status_final")
|
||
private int approveStatusFinal = -1;
|
||
|
||
/**
|
||
* 审核人id
|
||
*/
|
||
@Column(name = "approve_id")
|
||
private int approveId = 0;
|
||
@Column(name = "approve_name")
|
||
private String approveName;
|
||
/**
|
||
* 项目创建者id
|
||
*/
|
||
@Column(name = "creator_id")
|
||
private int creatorId;
|
||
@Column(name = "creator_name")
|
||
private String creatorName;
|
||
/**
|
||
* 项目部门id
|
||
*/
|
||
@Column(name = "dept_id")
|
||
private int deptId;
|
||
@Column(name = "dept_name")
|
||
private String deptName;
|
||
/**
|
||
* 项目开始时间,精确到月
|
||
*/
|
||
@Column(name = "start_date")
|
||
@Temporal(TemporalType.TIMESTAMP)
|
||
private Date startDate;
|
||
/**
|
||
* 项目结束时间,精确到月
|
||
*/
|
||
@Column(name = "end_date")
|
||
@Temporal(TemporalType.TIMESTAMP)
|
||
private Date endDate;
|
||
/**
|
||
* 垫资模式:1A类-不垫资(战略合作),2B类-不垫资(背靠背),3C类-垫资(账期覆盖),4D类-垫资(账期不覆盖)
|
||
*/
|
||
@Column(name = "underwritten_mode")
|
||
private int underwrittenMode;
|
||
/**
|
||
* 客户名称
|
||
*/
|
||
@Column(name = "customer")
|
||
private String customer;
|
||
/**
|
||
* 终端客户名称
|
||
*/
|
||
@Column(name = "terminal_customer")
|
||
private String terminalCustomer;
|
||
// /**
|
||
// * 垫资利息(元为单位)
|
||
// */
|
||
// @Column(name = "advance_interest_amount")
|
||
// private BigDecimal advanceInterestAmount;
|
||
// /**
|
||
// * 垫资峰值
|
||
// */
|
||
// @Column(name = "advance_peak_amount")
|
||
// private BigDecimal advancePeakAmount;
|
||
/**
|
||
* 合同金额
|
||
*/
|
||
@Column(name = "contract_amount")
|
||
private BigDecimal contractAmount;
|
||
/**
|
||
* 行业场景应用
|
||
*/
|
||
@Column(name = "industry_scenario")
|
||
private String industryScenario;
|
||
/**
|
||
*华智产品金额
|
||
*/
|
||
@Column(name = "huazhi_product_amount")
|
||
private BigDecimal huazhiProductAmount;
|
||
/**
|
||
*其他产品金额
|
||
*/
|
||
@Column(name = "ziguang_other_amount")
|
||
private BigDecimal ziguangOtherAmount;
|
||
/**
|
||
* 主合同收款条款
|
||
*/
|
||
@Column(name = "main_contract_collection_terms")
|
||
private String mainContractCollectionTerms;
|
||
/**
|
||
* 价值及风险
|
||
*/
|
||
@Column(name = "value_risk")
|
||
private String valueRisk;
|
||
/**
|
||
* 其他中的小类名称
|
||
*/
|
||
@Column(name = "other_name")
|
||
private String otherName;
|
||
/**
|
||
* 项目创建时的配置的阀值
|
||
*/
|
||
@Column(name = "project_contribution_profit_rate_threshold")
|
||
private BigDecimal projectContributionProfitRateThreshold;
|
||
/**
|
||
* 项目创建配置的年利率
|
||
*/
|
||
@Column(name = "underwritten_tax_rate")
|
||
private BigDecimal underwrittenTaxRate;
|
||
/**
|
||
* 创建时间
|
||
*/
|
||
@Column(name = "create_time")
|
||
@Temporal(TemporalType.TIMESTAMP)
|
||
private Date createTime;
|
||
/**
|
||
* 最后更新时间
|
||
*/
|
||
@Column(name = "last_update_time")
|
||
@Temporal(TemporalType.TIMESTAMP)
|
||
private Date lastUpdateTime;
|
||
|
||
@Column(name = "plan_start_str")
|
||
private String planStartStr;
|
||
|
||
@Column(name = "plan_end_str")
|
||
private String planEndStr;
|
||
|
||
@Transient
|
||
private String underwrittenModeDesc;
|
||
|
||
@Transient
|
||
private String certainty;
|
||
|
||
@Transient
|
||
private BigDecimal grossProfit;
|
||
|
||
@Transient
|
||
private BigDecimal grossProfitMargin;
|
||
|
||
@Transient
|
||
private BigDecimal huizhiProductAmount;
|
||
|
||
@Transient
|
||
private BigDecimal huasanProductAmount;
|
||
|
||
@Transient
|
||
private String principal;
|
||
|
||
@Transient
|
||
private Date contractTime;
|
||
|
||
@Transient
|
||
private Date bidsTime;
|
||
|
||
@Transient
|
||
private String isSecondStr;
|
||
|
||
@Transient
|
||
private String signTypeStr;
|
||
|
||
@Transient
|
||
private String resolvePlanStr;
|
||
|
||
@Transient
|
||
private String mainContractResolvePlan;
|
||
|
||
@Transient
|
||
private String CalculationCollection;
|
||
|
||
@Transient
|
||
private String contractRound;
|
||
|
||
@Transient
|
||
private String huazhiRound;
|
||
|
||
@Transient
|
||
private String ziguangRound;
|
||
|
||
public int getId() {
|
||
return id;
|
||
}
|
||
|
||
public void setId(int id) {
|
||
this.id = id;
|
||
}
|
||
|
||
public int getTempId() {
|
||
return tempId;
|
||
}
|
||
|
||
public void setTempId(int tempId) {
|
||
this.tempId = tempId;
|
||
}
|
||
|
||
public String getProjectNo() {
|
||
return projectNo;
|
||
}
|
||
|
||
public void setProjectNo(String projectNo) {
|
||
this.projectNo = projectNo;
|
||
}
|
||
|
||
public String getName() {
|
||
return name;
|
||
}
|
||
|
||
public void setName(String name) {
|
||
this.name = name;
|
||
}
|
||
|
||
public int getType() {
|
||
return type;
|
||
}
|
||
|
||
public void setType(int type) {
|
||
this.type = type;
|
||
}
|
||
|
||
public String getTypeDesc() {
|
||
return typeDesc;
|
||
}
|
||
|
||
public void setTypeDesc(String typeDesc) {
|
||
this.typeDesc = typeDesc;
|
||
}
|
||
|
||
public int getStatus() {
|
||
return status;
|
||
}
|
||
|
||
public void setStatus(int status) {
|
||
this.status = status;
|
||
}
|
||
|
||
public String getStatusDesc() {
|
||
return statusDesc;
|
||
}
|
||
|
||
public void setStatusDesc(String statusDesc) {
|
||
this.statusDesc = statusDesc;
|
||
}
|
||
|
||
|
||
public int getApproveStatus() {
|
||
if(status == STATUS_ESTIMATE){
|
||
return approveStatusEstimate;
|
||
}
|
||
if(status == STATUS_BUDGET){
|
||
return approveStatusBudget;
|
||
}
|
||
if(status == STATUS_SETTLE){
|
||
return approveStatusSettle;
|
||
}
|
||
if(status == STATUS_FINAL){
|
||
return approveStatusFinal;
|
||
}
|
||
return -1;
|
||
}
|
||
|
||
public String getApproveStatusDesc() {
|
||
int approveStatus = getApproveStatus();
|
||
if(-1 == approveStatus){
|
||
return "未知";
|
||
}
|
||
return ApproveStatusEnum.parseApproveStatus(approveStatus).getApproveStatusDesc();
|
||
}
|
||
|
||
public String getApproveName() {
|
||
return approveName;
|
||
}
|
||
|
||
public void setApproveName(String approveName) {
|
||
this.approveName = approveName;
|
||
}
|
||
|
||
public int getCreatorId() {
|
||
return creatorId;
|
||
}
|
||
|
||
public void setCreatorId(int creatorId) {
|
||
this.creatorId = creatorId;
|
||
}
|
||
|
||
public String getCreatorName() {
|
||
return creatorName;
|
||
}
|
||
|
||
public void setCreatorName(String creatorName) {
|
||
this.creatorName = creatorName;
|
||
}
|
||
|
||
public int getDeptId() {
|
||
return deptId;
|
||
}
|
||
|
||
public void setDeptId(int deptId) {
|
||
this.deptId = deptId;
|
||
}
|
||
|
||
public String getDeptName() {
|
||
return deptName;
|
||
}
|
||
|
||
public void setDeptName(String deptName) {
|
||
this.deptName = deptName;
|
||
}
|
||
|
||
public Date getStartDate() {
|
||
return startDate;
|
||
}
|
||
|
||
public void setStartDate(Date startDate) {
|
||
this.startDate = startDate;
|
||
}
|
||
|
||
public Date getEndDate() {
|
||
return endDate;
|
||
}
|
||
|
||
public void setEndDate(Date endDate) {
|
||
this.endDate = endDate;
|
||
}
|
||
|
||
public int getUnderwrittenMode() {
|
||
return underwrittenMode;
|
||
}
|
||
|
||
public void setUnderwrittenMode(int underwrittenMode) {
|
||
this.underwrittenMode = underwrittenMode;
|
||
}
|
||
|
||
public String getCustomer() {
|
||
return customer;
|
||
}
|
||
|
||
public void setCustomer(String customer) {
|
||
this.customer = customer;
|
||
}
|
||
|
||
public String getTerminalCustomer() {
|
||
return terminalCustomer;
|
||
}
|
||
|
||
public void setTerminalCustomer(String terminalCustomer) {
|
||
this.terminalCustomer = terminalCustomer;
|
||
}
|
||
|
||
public BigDecimal getContractAmount() {
|
||
return contractAmount;
|
||
}
|
||
|
||
public void setContractAmount(BigDecimal contractAmount) {
|
||
this.contractAmount = contractAmount;
|
||
}
|
||
|
||
public String getIndustryScenario() {
|
||
return industryScenario;
|
||
}
|
||
|
||
public void setIndustryScenario(String industryScenario) {
|
||
this.industryScenario = industryScenario;
|
||
}
|
||
|
||
public BigDecimal getHuazhiProductAmount() {
|
||
return huazhiProductAmount;
|
||
}
|
||
|
||
public void setHuazhiProductAmount(BigDecimal huazhiProductAmount) {
|
||
this.huazhiProductAmount = huazhiProductAmount;
|
||
}
|
||
|
||
public BigDecimal getZiguangOtherAmount() {
|
||
return ziguangOtherAmount;
|
||
}
|
||
|
||
public void setZiguangOtherAmount(BigDecimal ziguangOtherAmount) {
|
||
this.ziguangOtherAmount = ziguangOtherAmount;
|
||
}
|
||
|
||
public String getMainContractCollectionTerms() {
|
||
return mainContractCollectionTerms;
|
||
}
|
||
|
||
public void setMainContractCollectionTerms(String mainContractCollectionTerms) {
|
||
this.mainContractCollectionTerms = mainContractCollectionTerms;
|
||
}
|
||
|
||
public String getValueRisk() {
|
||
return valueRisk;
|
||
}
|
||
|
||
public void setValueRisk(String valueRisk) {
|
||
this.valueRisk = valueRisk;
|
||
}
|
||
|
||
public String getOtherName() {
|
||
return otherName;
|
||
}
|
||
|
||
public void setOtherName(String otherName) {
|
||
this.otherName = otherName;
|
||
}
|
||
|
||
public BigDecimal getProjectContributionProfitRateThreshold() {
|
||
return projectContributionProfitRateThreshold;
|
||
}
|
||
|
||
public void setProjectContributionProfitRateThreshold(BigDecimal projectContributionProfitRateThreshold) {
|
||
this.projectContributionProfitRateThreshold = projectContributionProfitRateThreshold;
|
||
}
|
||
|
||
public BigDecimal getUnderwrittenTaxRate() {
|
||
return underwrittenTaxRate;
|
||
}
|
||
|
||
public void setUnderwrittenTaxRate(BigDecimal underwrittenTaxRate) {
|
||
this.underwrittenTaxRate = underwrittenTaxRate;
|
||
}
|
||
|
||
public Date getCreateTime() {
|
||
return createTime;
|
||
}
|
||
|
||
public void setCreateTime(Date createTime) {
|
||
this.createTime = createTime;
|
||
}
|
||
|
||
public Date getLastUpdateTime() {
|
||
return lastUpdateTime;
|
||
}
|
||
|
||
public void setLastUpdateTime(Date lastUpdateTime) {
|
||
this.lastUpdateTime = lastUpdateTime;
|
||
}
|
||
|
||
public int getApproveStatusEstimate() {
|
||
return approveStatusEstimate;
|
||
}
|
||
|
||
public void setApproveStatusEstimate(int approveStatusEstimate) {
|
||
this.approveStatusEstimate = approveStatusEstimate;
|
||
}
|
||
|
||
public int getApproveStatusBudget() {
|
||
return approveStatusBudget;
|
||
}
|
||
|
||
public void setApproveStatusBudget(int approveStatusBudget) {
|
||
this.approveStatusBudget = approveStatusBudget;
|
||
}
|
||
|
||
public int getApproveStatusSettle() {
|
||
return approveStatusSettle;
|
||
}
|
||
|
||
public void setApproveStatusSettle(int approveStatusSettle) {
|
||
this.approveStatusSettle = approveStatusSettle;
|
||
}
|
||
|
||
public int getApproveStatusFinal() {
|
||
return approveStatusFinal;
|
||
}
|
||
|
||
public void setApproveStatusFinal(int approveStatusFinal) {
|
||
this.approveStatusFinal = approveStatusFinal;
|
||
}
|
||
|
||
public int getApproveId() {
|
||
return approveId;
|
||
}
|
||
|
||
public void setApproveId(int approveId) {
|
||
this.approveId = approveId;
|
||
}
|
||
|
||
public String getStartDateYM(){
|
||
return DatetimeUtils.toStr(this.startDate,"yyyy-MM");
|
||
}
|
||
public String getEndDateYM(){
|
||
return DatetimeUtils.toStr(this.endDate,"yyyy-MM");
|
||
}
|
||
|
||
public String getPlanStartStr() {
|
||
return planStartStr;
|
||
}
|
||
|
||
public void setPlanStartStr(String planStartStr) {
|
||
this.planStartStr = planStartStr;
|
||
}
|
||
|
||
public String getPlanEndStr() {
|
||
return planEndStr;
|
||
}
|
||
|
||
public void setPlanEndStr(String planEndStr) {
|
||
this.planEndStr = planEndStr;
|
||
}
|
||
}
|