From 74eac6f8251834fbdbd1fdc5e6257e9de96f8dcd Mon Sep 17 00:00:00 2001 From: lanyuanxiaoyao Date: Wed, 10 Sep 2025 23:38:04 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E5=A2=9E=E5=8A=A0=E8=B4=A2=E5=8A=A1?= =?UTF-8?q?=E6=8A=A5=E8=A1=A8=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../leopard/core/entity/BalanceSheet.java | 32 +++++++++++++++++++ .../leopard/core/entity/CashFlow.java | 32 +++++++++++++++++++ .../leopard/core/entity/Income.java | 32 +++++++++++++++++++ .../leopard/core/entity/Stock.java | 12 +++++++ 4 files changed, 108 insertions(+) create mode 100644 leopard-core/src/main/java/com/lanyuanxiaoyao/leopard/core/entity/BalanceSheet.java create mode 100644 leopard-core/src/main/java/com/lanyuanxiaoyao/leopard/core/entity/CashFlow.java create mode 100644 leopard-core/src/main/java/com/lanyuanxiaoyao/leopard/core/entity/Income.java diff --git a/leopard-core/src/main/java/com/lanyuanxiaoyao/leopard/core/entity/BalanceSheet.java b/leopard-core/src/main/java/com/lanyuanxiaoyao/leopard/core/entity/BalanceSheet.java new file mode 100644 index 0000000..1bc807b --- /dev/null +++ b/leopard-core/src/main/java/com/lanyuanxiaoyao/leopard/core/entity/BalanceSheet.java @@ -0,0 +1,32 @@ +package com.lanyuanxiaoyao.leopard.core.entity; + +import com.lanyuanxiaoyao.leopard.core.Constants; +import com.lanyuanxiaoyao.service.template.entity.SimpleEntity; +import jakarta.persistence.Entity; +import jakarta.persistence.EntityListeners; +import jakarta.persistence.ManyToOne; +import jakarta.persistence.Table; +import lombok.Getter; +import lombok.Setter; +import lombok.ToString; +import lombok.experimental.FieldNameConstants; +import org.hibernate.annotations.DynamicInsert; +import org.hibernate.annotations.DynamicUpdate; +import org.springframework.data.jpa.domain.support.AuditingEntityListener; + +/** + * 资产负债表 + */ +@Setter +@Getter +@ToString(callSuper = true) +@FieldNameConstants +@Entity +@DynamicUpdate +@DynamicInsert +@EntityListeners(AuditingEntityListener.class) +@Table(name = Constants.DATABASE_PREFIX + "balance_sheet") +public class BalanceSheet extends SimpleEntity { + @ManyToOne + private Stock stock; +} diff --git a/leopard-core/src/main/java/com/lanyuanxiaoyao/leopard/core/entity/CashFlow.java b/leopard-core/src/main/java/com/lanyuanxiaoyao/leopard/core/entity/CashFlow.java new file mode 100644 index 0000000..c97a1e5 --- /dev/null +++ b/leopard-core/src/main/java/com/lanyuanxiaoyao/leopard/core/entity/CashFlow.java @@ -0,0 +1,32 @@ +package com.lanyuanxiaoyao.leopard.core.entity; + +import com.lanyuanxiaoyao.leopard.core.Constants; +import com.lanyuanxiaoyao.service.template.entity.SimpleEntity; +import jakarta.persistence.Entity; +import jakarta.persistence.EntityListeners; +import jakarta.persistence.ManyToOne; +import jakarta.persistence.Table; +import lombok.Getter; +import lombok.Setter; +import lombok.ToString; +import lombok.experimental.FieldNameConstants; +import org.hibernate.annotations.DynamicInsert; +import org.hibernate.annotations.DynamicUpdate; +import org.springframework.data.jpa.domain.support.AuditingEntityListener; + +/** + * 现金流量表 + */ +@Setter +@Getter +@ToString(callSuper = true) +@FieldNameConstants +@Entity +@DynamicUpdate +@DynamicInsert +@EntityListeners(AuditingEntityListener.class) +@Table(name = Constants.DATABASE_PREFIX + "cash_flow") +public class CashFlow extends SimpleEntity { + @ManyToOne + private Stock stock; +} diff --git a/leopard-core/src/main/java/com/lanyuanxiaoyao/leopard/core/entity/Income.java b/leopard-core/src/main/java/com/lanyuanxiaoyao/leopard/core/entity/Income.java new file mode 100644 index 0000000..c4f17a9 --- /dev/null +++ b/leopard-core/src/main/java/com/lanyuanxiaoyao/leopard/core/entity/Income.java @@ -0,0 +1,32 @@ +package com.lanyuanxiaoyao.leopard.core.entity; + +import com.lanyuanxiaoyao.leopard.core.Constants; +import com.lanyuanxiaoyao.service.template.entity.SimpleEntity; +import jakarta.persistence.Entity; +import jakarta.persistence.EntityListeners; +import jakarta.persistence.ManyToOne; +import jakarta.persistence.Table; +import lombok.Getter; +import lombok.Setter; +import lombok.ToString; +import lombok.experimental.FieldNameConstants; +import org.hibernate.annotations.DynamicInsert; +import org.hibernate.annotations.DynamicUpdate; +import org.springframework.data.jpa.domain.support.AuditingEntityListener; + +/** + * 利润表 + */ +@Setter +@Getter +@ToString(callSuper = true) +@FieldNameConstants +@Entity +@DynamicUpdate +@DynamicInsert +@EntityListeners(AuditingEntityListener.class) +@Table(name = Constants.DATABASE_PREFIX + "income") +public class Income extends SimpleEntity { + @ManyToOne + private Stock stock; +} diff --git a/leopard-core/src/main/java/com/lanyuanxiaoyao/leopard/core/entity/Stock.java b/leopard-core/src/main/java/com/lanyuanxiaoyao/leopard/core/entity/Stock.java index eeb05e9..3b15aaa 100644 --- a/leopard-core/src/main/java/com/lanyuanxiaoyao/leopard/core/entity/Stock.java +++ b/leopard-core/src/main/java/com/lanyuanxiaoyao/leopard/core/entity/Stock.java @@ -62,6 +62,18 @@ public class Stock extends SimpleEntity { @ToString.Exclude private Set dailies; + @OneToMany(mappedBy = "stock", cascade = CascadeType.REMOVE) + @ToString.Exclude + private Set incomes; + + @OneToMany(mappedBy = "stock", cascade = CascadeType.REMOVE) + @ToString.Exclude + private Set balanceSheets; + + @OneToMany(mappedBy = "stock", cascade = CascadeType.REMOVE) + @ToString.Exclude + private Set cashFlows; + @ManyToMany @ToString.Exclude private Set collections;