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; /** * 银行对账单(结算中心·银行对账)。一条 BankReconciliation 代表某账户某对账日的一次对账: * bankBalance 为银行流水余额(来自银行对账单 / 银企直连),bookBalance 为账面余额; * diff 为差额(银行余额 - 账面余额,由后端 {@link com.kaidi.oa.common.Money} 自动算并落库); * status 为 未对平 / 已对平(diff 为 0 时即对平)。 * 银企直连自动取数为外部对接项,本表先支持手工 / 导入登记。 */ @Entity @Table(name = "stl_bank_reconciliation") public class BankReconciliation { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; private String code; /** 银行账户名称 / 户名。 */ private String bankAccount; /** 银行账号。 */ private String bankAccountNo; /** 开户行。 */ private String bankName; /** 对账日(YYYY-MM-DD)。 */ private String reconcileDate; /** 银行流水余额。 */ private BigDecimal bankBalance = BigDecimal.ZERO; /** 账面余额。 */ private BigDecimal bookBalance = BigDecimal.ZERO; /** 差额 = 银行余额 - 账面余额(后端自动算)。 */ private BigDecimal diff = BigDecimal.ZERO; /** 未对平 / 已对平。 */ private String status; /** 差异说明 / 调节项备注。 */ private String remark; private String companySubject; 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 getBankAccount() { return bankAccount; } public void setBankAccount(String bankAccount) { this.bankAccount = bankAccount; } public String getBankAccountNo() { return bankAccountNo; } public void setBankAccountNo(String bankAccountNo) { this.bankAccountNo = bankAccountNo; } public String getBankName() { return bankName; } public void setBankName(String bankName) { this.bankName = bankName; } public String getReconcileDate() { return reconcileDate; } public void setReconcileDate(String reconcileDate) { this.reconcileDate = reconcileDate; } public BigDecimal getBankBalance() { return bankBalance; } public void setBankBalance(BigDecimal bankBalance) { this.bankBalance = bankBalance; } public BigDecimal getBookBalance() { return bookBalance; } public void setBookBalance(BigDecimal bookBalance) { this.bookBalance = bookBalance; } public BigDecimal getDiff() { return diff; } public void setDiff(BigDecimal diff) { this.diff = diff; } public String getStatus() { return status; } public void setStatus(String status) { this.status = status; } public String getRemark() { return remark; } public void setRemark(String remark) { this.remark = remark; } public String getCompanySubject() { return companySubject; } public void setCompanySubject(String companySubject) { this.companySubject = companySubject; } 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; } }