Payment.java
Bridget/payment-gateway-microservices/services/payment-service/src/main/java/com/checkout/paymentgw/payment/domain/Payment.java
package com.checkout.paymentgw.payment.domain;
import jakarta.persistence.*;
import lombok.*;
import java.time.Instant;
import java.util.UUID;
@Entity
@Table(name = "payments")
@Getter
@Setter
@NoArgsConstructor
@AllArgsConstructor
@Builder
public class Payment {
@Id
@Column(name = "id", nullable = false, updatable = false)
private UUID id;
@Column(name = "merchant_id", nullable = false, length = 64)
private String merchantId;
@Column(name = "status", nullable = false, length = 16)
@Enumerated(EnumType.STRING)
private PaymentStatus status;
@Column(name = "card_number_last_four", nullable = false, length = 4)
private String cardNumberLastFour;
@Column(name = "expiry_month", nullable = false)
private int expiryMonth;
@Column(name = "expiry_year", nullable = false)
private int expiryYear;
@Column(name = "currency", nullable = false, length = 3)
private String currency;
@Column(name = "amount", nullable = false)
private Integer amount;
/** Bank-side authorisation code, if any. Never logged. */
@Column(name = "auth_code", length = 32)
private String authCode;
@Column(name = "decline_reason", length = 128)
private String declineReason;
@Column(name = "created_at", nullable = false)
private Instant createdAt;
}
Artigos relacionados
PaymentGatewayApplication.java
PaymentGatewayApplication.java — java source code from the Bridget learning materials (Bridget/payment-gateway-challenge-java/src/main/java/com/checkout/payment/gateway/PaymentGatewayApplication.java).
Ler artigo →ApplicationConfiguration.java
ApplicationConfiguration.java — java source code from the Bridget learning materials (Bridget/payment-gateway-challenge-java/src/main/java/com/checkout/payment/gateway/configuration/ApplicationConfiguration.java).
Ler artigo →RequestResponseLogger.java
RequestResponseLogger.java — java source code from the Bridget learning materials (Bridget/payment-gateway-challenge-java/src/main/java/com/checkout/payment/gateway/configuration/RequestResponseLogger.java).
Ler artigo →PaymentGatewayController.java
PaymentGatewayController.java — java source code from the Bridget learning materials (Bridget/payment-gateway-challenge-java/src/main/java/com/checkout/payment/gateway/controller/PaymentGatewayController.java).
Ler artigo →PaymentStatus.java
PaymentStatus.java — java source code from the Bridget learning materials (Bridget/payment-gateway-challenge-java/src/main/java/com/checkout/payment/gateway/enums/PaymentStatus.java).
Ler artigo →BankErrorException.java
BankErrorException.java — java source code from the Bridget learning materials (Bridget/payment-gateway-challenge-java/src/main/java/com/checkout/payment/gateway/exception/BankErrorException.java).
Ler artigo →