package com.banesco.module.transaction.domain.model;

import com.banesco.common.domain.model.Identifier;
import com.fasterxml.jackson.annotation.JsonInclude;
import io.quarkus.runtime.annotations.RegisterForReflection;
import lombok.*;

import java.util.List;

@Getter
@ToString
@Builder
@NoArgsConstructor
@AllArgsConstructor
@RegisterForReflection
@JsonInclude(JsonInclude.Include.NON_NULL)
public class Transaction {
    private Identifier transactionIdentification; // BOLE: nroRequest | BOL: id
    private TransactionStatus transactionStatus; // BOLE: status, accepted, rejected, expired | BOL: status
    private List<TransactionDateTime> transactionDate; // BOLE: dispatchDate | BOL: dateCreate
    private TransactionDetails transactionDetails; // BOLE: quantity
    private List<TransactionInvolvement> transactionInvolvement; // BOL: emitterReceptor
    private FinancialTransaction financialTransaction; // BOL: amount, currency
    private String name; // BOL: requestType
    private String description; // BOL: concept
}
