Add model classes
This commit is contained in:
@@ -0,0 +1,6 @@
|
||||
package net.kapcake.bankingservice.domain;
|
||||
|
||||
public enum AccountStatus {
|
||||
ENABLED,
|
||||
BLOCKED
|
||||
}
|
||||
20
src/main/java/net/kapcake/bankingservice/domain/Address.java
Normal file
20
src/main/java/net/kapcake/bankingservice/domain/Address.java
Normal file
@@ -0,0 +1,20 @@
|
||||
package net.kapcake.bankingservice.domain;
|
||||
|
||||
import jakarta.persistence.Entity;
|
||||
import jakarta.persistence.GeneratedValue;
|
||||
import jakarta.persistence.Id;
|
||||
import lombok.Data;
|
||||
|
||||
@Entity
|
||||
@Data
|
||||
public class Address {
|
||||
|
||||
@Id
|
||||
@GeneratedValue
|
||||
private Long id;
|
||||
private String street;
|
||||
private Integer number;
|
||||
private String numberExtension;
|
||||
private Integer postalCode;
|
||||
private String country;
|
||||
}
|
||||
17
src/main/java/net/kapcake/bankingservice/domain/Balance.java
Normal file
17
src/main/java/net/kapcake/bankingservice/domain/Balance.java
Normal file
@@ -0,0 +1,17 @@
|
||||
package net.kapcake.bankingservice.domain;
|
||||
|
||||
import jakarta.persistence.Entity;
|
||||
import jakarta.persistence.GeneratedValue;
|
||||
import jakarta.persistence.Id;
|
||||
import lombok.Data;
|
||||
|
||||
@Entity
|
||||
@Data
|
||||
public class Balance {
|
||||
@Id
|
||||
@GeneratedValue
|
||||
private Long id;
|
||||
private Long amount;
|
||||
private String currency;
|
||||
private BalanceType type;
|
||||
}
|
||||
@@ -0,0 +1,6 @@
|
||||
package net.kapcake.bankingservice.domain;
|
||||
|
||||
public enum BalanceType {
|
||||
END_OF_DAY,
|
||||
AVAILABLE
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
package net.kapcake.bankingservice.domain;
|
||||
|
||||
import jakarta.persistence.*;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Entity
|
||||
@Data
|
||||
public class BankAccount {
|
||||
@Id
|
||||
@GeneratedValue
|
||||
private Long id;
|
||||
|
||||
private String accountNumber;
|
||||
|
||||
@ManyToMany
|
||||
private List<User> users;
|
||||
private String accountName;
|
||||
@OneToMany
|
||||
private List<Balance> balances;
|
||||
private AccountStatus status;
|
||||
|
||||
}
|
||||
26
src/main/java/net/kapcake/bankingservice/domain/Payment.java
Normal file
26
src/main/java/net/kapcake/bankingservice/domain/Payment.java
Normal file
@@ -0,0 +1,26 @@
|
||||
package net.kapcake.bankingservice.domain;
|
||||
|
||||
import jakarta.persistence.*;
|
||||
import lombok.Data;
|
||||
import org.hibernate.annotations.CreationTimestamp;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
@Entity
|
||||
@Data
|
||||
public class Payment {
|
||||
@Id
|
||||
@GeneratedValue
|
||||
private Long id;
|
||||
private Long amount;
|
||||
private String currency;
|
||||
@ManyToOne
|
||||
private BankAccount giver;
|
||||
private String beneficiaryAccountNumber;
|
||||
private String beneficiaryName;
|
||||
private String communication;
|
||||
@CreationTimestamp
|
||||
@Temporal(TemporalType.TIMESTAMP)
|
||||
private Date creationDate;
|
||||
private PaymentStatus status;
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
package net.kapcake.bankingservice.domain;
|
||||
|
||||
public enum PaymentStatus {
|
||||
EXECUTED
|
||||
}
|
||||
20
src/main/java/net/kapcake/bankingservice/domain/User.java
Normal file
20
src/main/java/net/kapcake/bankingservice/domain/User.java
Normal file
@@ -0,0 +1,20 @@
|
||||
package net.kapcake.bankingservice.domain;
|
||||
|
||||
import jakarta.persistence.Entity;
|
||||
import jakarta.persistence.GeneratedValue;
|
||||
import jakarta.persistence.Id;
|
||||
import jakarta.persistence.ManyToOne;
|
||||
import lombok.Data;
|
||||
|
||||
@Entity
|
||||
@Data
|
||||
public class User {
|
||||
@Id
|
||||
@GeneratedValue
|
||||
private Long id;
|
||||
|
||||
private String username;
|
||||
private String password;
|
||||
@ManyToOne
|
||||
private Address address;
|
||||
}
|
||||
Reference in New Issue
Block a user