205 lines
4.7 KiB
Java
205 lines
4.7 KiB
Java
package com.kaidi.oa.domain;
|
|
|
|
import jakarta.persistence.Entity;
|
|
import jakarta.persistence.GeneratedValue;
|
|
import jakarta.persistence.GenerationType;
|
|
import jakarta.persistence.Id;
|
|
import jakarta.persistence.Table;
|
|
|
|
import java.math.BigDecimal;
|
|
import java.time.Instant;
|
|
|
|
/**
|
|
* 融资业务主记录(金融办·融资管理)。一条 Financing 代表一笔对外融资/授信:
|
|
* financingType 为 银行贷款 / 融资租赁 / 债券 / 票据 / 股权融资 之一;
|
|
* repayMethod 为 等额本息 / 等额本金 / 到期一次还本付息 / 按期付息到期还本 之一;
|
|
* status 流转 申请中 → 审批中 → 已放款 → 还款中 → 已结清,异常态 逾期 / 已驳回。
|
|
* creditLimit 为授信额度,amount 为本笔融资本金(提款金额),rate 为年化利率(%)。
|
|
* 还本付息计划由 {@link RepaymentPlan} 按本记录的 repayMethod / term / rate 自动生成。
|
|
*/
|
|
@Entity
|
|
@Table(name = "financing")
|
|
public class Financing {
|
|
|
|
@Id
|
|
@GeneratedValue(strategy = GenerationType.IDENTITY)
|
|
private Long id;
|
|
|
|
private String code;
|
|
|
|
/** 资金方 / 出借机构(银行 / 租赁公司 / 投资方)。 */
|
|
private String lender;
|
|
|
|
/** 融资类型:银行贷款 / 融资租赁 / 债券 / 票据 / 股权融资。 */
|
|
private String financingType;
|
|
|
|
/** 授信额度。 */
|
|
private BigDecimal creditLimit = BigDecimal.ZERO;
|
|
|
|
/** 本笔融资本金(提款金额)。 */
|
|
private BigDecimal amount = BigDecimal.ZERO;
|
|
|
|
private String currency;
|
|
|
|
/** 年化利率(百分比,如 4.35 表示 4.35%)。 */
|
|
private BigDecimal rate;
|
|
|
|
private String startDate;
|
|
|
|
/** 到期日(用于到期分级预警)。 */
|
|
private String endDate;
|
|
|
|
/** 期限(月)。 */
|
|
private Integer termMonths;
|
|
|
|
/** 还款方式:等额本息 / 等额本金 / 到期一次还本付息 / 按期付息到期还本。 */
|
|
private String repayMethod;
|
|
|
|
/** 申请中 / 审批中 / 已放款 / 还款中 / 已结清 / 逾期 / 已驳回。 */
|
|
private String status;
|
|
|
|
private String companySubject;
|
|
|
|
private String purpose;
|
|
|
|
private String owner;
|
|
|
|
private Instant createdAt;
|
|
|
|
public Long getId() {
|
|
return id;
|
|
}
|
|
|
|
public void setId(Long id) {
|
|
this.id = id;
|
|
}
|
|
|
|
public String getCode() {
|
|
return code;
|
|
}
|
|
|
|
public void setCode(String code) {
|
|
this.code = code;
|
|
}
|
|
|
|
public String getLender() {
|
|
return lender;
|
|
}
|
|
|
|
public void setLender(String lender) {
|
|
this.lender = lender;
|
|
}
|
|
|
|
public String getFinancingType() {
|
|
return financingType;
|
|
}
|
|
|
|
public void setFinancingType(String financingType) {
|
|
this.financingType = financingType;
|
|
}
|
|
|
|
public BigDecimal getCreditLimit() {
|
|
return creditLimit;
|
|
}
|
|
|
|
public void setCreditLimit(BigDecimal creditLimit) {
|
|
this.creditLimit = creditLimit;
|
|
}
|
|
|
|
public BigDecimal getAmount() {
|
|
return amount;
|
|
}
|
|
|
|
public void setAmount(BigDecimal amount) {
|
|
this.amount = amount;
|
|
}
|
|
|
|
public String getCurrency() {
|
|
return currency;
|
|
}
|
|
|
|
public void setCurrency(String currency) {
|
|
this.currency = currency;
|
|
}
|
|
|
|
public BigDecimal getRate() {
|
|
return rate;
|
|
}
|
|
|
|
public void setRate(BigDecimal rate) {
|
|
this.rate = rate;
|
|
}
|
|
|
|
public String getStartDate() {
|
|
return startDate;
|
|
}
|
|
|
|
public void setStartDate(String startDate) {
|
|
this.startDate = startDate;
|
|
}
|
|
|
|
public String getEndDate() {
|
|
return endDate;
|
|
}
|
|
|
|
public void setEndDate(String endDate) {
|
|
this.endDate = endDate;
|
|
}
|
|
|
|
public Integer getTermMonths() {
|
|
return termMonths;
|
|
}
|
|
|
|
public void setTermMonths(Integer termMonths) {
|
|
this.termMonths = termMonths;
|
|
}
|
|
|
|
public String getRepayMethod() {
|
|
return repayMethod;
|
|
}
|
|
|
|
public void setRepayMethod(String repayMethod) {
|
|
this.repayMethod = repayMethod;
|
|
}
|
|
|
|
public String getStatus() {
|
|
return status;
|
|
}
|
|
|
|
public void setStatus(String status) {
|
|
this.status = status;
|
|
}
|
|
|
|
public String getCompanySubject() {
|
|
return companySubject;
|
|
}
|
|
|
|
public void setCompanySubject(String companySubject) {
|
|
this.companySubject = companySubject;
|
|
}
|
|
|
|
public String getPurpose() {
|
|
return purpose;
|
|
}
|
|
|
|
public void setPurpose(String purpose) {
|
|
this.purpose = purpose;
|
|
}
|
|
|
|
public String getOwner() {
|
|
return owner;
|
|
}
|
|
|
|
public void setOwner(String owner) {
|
|
this.owner = owner;
|
|
}
|
|
|
|
public Instant getCreatedAt() {
|
|
return createdAt;
|
|
}
|
|
|
|
public void setCreatedAt(Instant createdAt) {
|
|
this.createdAt = createdAt;
|
|
}
|
|
}
|