package cokr.xit.ens.modules.kkotalk.model;

import java.time.*;

import javax.persistence.*;

import cokr.xit.ens.modules.common.domain.support.*;
import cokr.xit.ens.modules.kkotalk.code.*;
import io.swagger.v3.oas.annotations.media.*;
import lombok.*;
import lombok.experimental.*;

/**
 * <pre>
 * description :
 * packageName : cokr.xit.ens.modules.kkotalk.model
 * fileName    : SendDetailKkoTalkDTO
 * author      : limju
 * date        : 2024 9월 10
 * ======================================================================
 * 변경일         변경자        변경 내용
 * ----------------------------------------------------------------------
 * 2024 9월 10   limju       최초 생성
 *
 * </pre>
 */
@SuperBuilder
@Data
@ToString
@Schema(name = "SendDetailKkoTalkDTO")
@NoArgsConstructor
@AllArgsConstructor
@EqualsAndHashCode(callSuper = true)
public class SendDetailKkoTalkDTO extends KkotalkApiDTO.Envelope {
    private String envelopeId;
    private String link;
    private KkoTalkStatusCd status;
    private String sentAt;
    private String receivedAt;
    private String readAt;
    private String readExpiredAt;
    private String authenticatedAt;
    private String ottVerifiedAt;
    private String isNotificationUnavailable;
    private String userNotifiedAt;
    private String distributionReceivedAt;
    private String mkJid;
    private String mkTmpltMsgJsonData;

    private Long sendDetailId;
    private Long sendMastId;
    private String errorCode;
    @Lob
    private String errorMessage;
    private FieldError error;
    private String mkBillUseYn;
    private String billUid;

    // Add created and updated timestamps from BaseEntity if needed
    private LocalDateTime registAt;
    private LocalDateTime lastUpdtDt;
}
