diff --git a/src/main/java/net/kapcake/bankingservice/domain/Balance.java b/src/main/java/net/kapcake/bankingservice/domain/Balance.java index f1cfc2c..2dd84a8 100644 --- a/src/main/java/net/kapcake/bankingservice/domain/Balance.java +++ b/src/main/java/net/kapcake/bankingservice/domain/Balance.java @@ -1,8 +1,6 @@ package net.kapcake.bankingservice.domain; -import jakarta.persistence.Entity; -import jakarta.persistence.GeneratedValue; -import jakarta.persistence.Id; +import jakarta.persistence.*; import lombok.Data; @Entity @@ -13,5 +11,6 @@ public class Balance { private Long id; private Long amount; private String currency; + @Enumerated(EnumType.STRING) private BalanceType type; } diff --git a/src/main/java/net/kapcake/bankingservice/domain/BankAccount.java b/src/main/java/net/kapcake/bankingservice/domain/BankAccount.java index 3048886..d1893ee 100644 --- a/src/main/java/net/kapcake/bankingservice/domain/BankAccount.java +++ b/src/main/java/net/kapcake/bankingservice/domain/BankAccount.java @@ -12,13 +12,16 @@ public class BankAccount { @GeneratedValue private Long id; + @Column(nullable = false) private String accountNumber; @ManyToMany private List users; + @Column(nullable = false) private String accountName; @OneToMany private List balances; + @Enumerated(EnumType.STRING) private AccountStatus status; } diff --git a/src/main/java/net/kapcake/bankingservice/domain/Payment.java b/src/main/java/net/kapcake/bankingservice/domain/Payment.java index 3e04170..7c6f25a 100644 --- a/src/main/java/net/kapcake/bankingservice/domain/Payment.java +++ b/src/main/java/net/kapcake/bankingservice/domain/Payment.java @@ -12,15 +12,22 @@ public class Payment { @Id @GeneratedValue private Long id; + @Column(nullable = false) private Long amount; + @Column(nullable = false) private String currency; @ManyToOne + @JoinColumn(nullable = false) private BankAccount giver; + @Column(nullable = false) private String beneficiaryAccountNumber; + @Column(nullable = false) private String beneficiaryName; private String communication; @CreationTimestamp @Temporal(TemporalType.TIMESTAMP) + @Column(nullable = false) private Date creationDate; + @Enumerated(EnumType.STRING) private PaymentStatus status; } diff --git a/src/main/java/net/kapcake/bankingservice/domain/User.java b/src/main/java/net/kapcake/bankingservice/domain/User.java index ff2df33..736463e 100644 --- a/src/main/java/net/kapcake/bankingservice/domain/User.java +++ b/src/main/java/net/kapcake/bankingservice/domain/User.java @@ -1,18 +1,27 @@ package net.kapcake.bankingservice.domain; import jakarta.persistence.*; -import lombok.Data; +import lombok.Getter; +import lombok.Setter; +import lombok.experimental.Accessors; @Entity -@Data @Table(name = "BANKING_USER") +@Accessors(chain = true) +@Getter +@Setter public class User { @Id @GeneratedValue private Long id; + @Column(nullable = false) private String username; + @Column(nullable = false) private String password; - @ManyToOne - private Address address; + private String street; + private Integer number; + private String numberExtension; + private Integer postalCode; + private String country; }