71 lines
2.0 KiB
Java
71 lines
2.0 KiB
Java
package zw.qantra.tm.domain.models;
|
|
|
|
import com.fasterxml.jackson.annotation.JsonInclude;
|
|
import jakarta.persistence.*;
|
|
import lombok.*;
|
|
import zw.qantra.tm.domain.enums.AuthType;
|
|
import zw.qantra.tm.domain.enums.CurrencyType;
|
|
import zw.qantra.tm.domain.enums.RequestType;
|
|
import zw.qantra.tm.domain.enums.Status;
|
|
|
|
import java.math.BigDecimal;
|
|
|
|
@Entity
|
|
@Getter
|
|
@Setter
|
|
@Builder
|
|
@AllArgsConstructor
|
|
@NoArgsConstructor
|
|
@JsonInclude(JsonInclude.Include.NON_NULL)
|
|
public class Transaction extends BaseEntity {
|
|
private String trace;
|
|
private BigDecimal amount;
|
|
private BigDecimal charge;
|
|
private BigDecimal gatewayCharge;
|
|
private BigDecimal tax;
|
|
private BigDecimal totalAmount;
|
|
private String reference;
|
|
private String providerUid;
|
|
private String productUid;
|
|
private String paymentProcessorLabel;
|
|
private String integrationProcessorLabel;
|
|
private String providerLabel;
|
|
private String rrn;
|
|
private String channelName;
|
|
private String channel;
|
|
private String debitPhone;
|
|
private String debitAccount;
|
|
@Enumerated(EnumType.STRING)
|
|
private CurrencyType debitCurrency;
|
|
private String debitName;
|
|
private String debitCard;
|
|
private String debitRef;
|
|
private String creditPhone;
|
|
private String creditAccount;
|
|
@Enumerated(EnumType.STRING)
|
|
private CurrencyType creditCurrency;
|
|
private String creditName;
|
|
private String creditCard;
|
|
private String creditRef;
|
|
private String billClientId;
|
|
private String clientSecret;
|
|
private String aggregatorId;
|
|
private String billName;
|
|
private String billProductName;
|
|
@Enumerated(EnumType.STRING)
|
|
private RequestType type;
|
|
@Enumerated(EnumType.STRING)
|
|
private AuthType authType;
|
|
|
|
@Column(columnDefinition = "TEXT")
|
|
private String errorMessage;
|
|
private String responseCode;
|
|
private Status status;
|
|
@Column(columnDefinition = "TEXT")
|
|
private String targetUrl;
|
|
private String sdkActionId;
|
|
|
|
@Transient
|
|
private Object additionalData;
|
|
|
|
} |