package com.icomsys.main_vm.db.jpa.entity.learningTest;

import lombok.Builder;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;

import javax.persistence.*;
import java.time.LocalDateTime;

@Table(name = "TB_INTENT_TEST")
@Entity
@Getter
@Setter
@NoArgsConstructor
public class TbIntentTest {
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY )
    @Column(name = "SEQ", nullable = false, length = 20)
    private Long seq;
    @Column(name = "OPR_MNG_CODE", nullable = true, length = 40)
    private String oprMngCode;
    @Column(name = "ROW_NUM", nullable = true, length = 11)
    private Long rowNum;
    @Column(name = "UPLOAD_FILE_PATH", nullable = true, length = 200)
    private String uploadFilePath;
    @Column(name = "UPLOAD_FILE_NAME", nullable = true, length = 100)
    private String uploadFileName;
    @Column(name = "RESULT_FILE_PATH", nullable = true, length = 1)
    private String resultFilePath;
    @Column(name = "RESULT_FILE_NAME", nullable = true, length = 30)
    private String resultFileName;
    @Column(name = "TEST_CNT", nullable = true, length = 11)
    private Long testCnt;
    @Column(name = "TEST_RESULT", nullable = true, length = 30)
    private String testResult;
    @Column(name = "USE_YN", nullable = true, length = 1)
    private String useYn;
    @Column(name = "REGIST_ID", nullable = true, length = 30)
    private String registId;
    @Column(name = "REGIST_DATE", nullable = true)
    private LocalDateTime registDate;
    @Column(name = "UPDATE_ID", nullable = true, length = 30)
    private String updateId;
    @Column(name = "UPDATE_DATE", nullable = true)
    private LocalDateTime updateDate;

    @Builder
    public TbIntentTest(Long seq, String oprMngCode, Long rowNum, String uploadFilePath, String uploadFileName, String resultFilePath, String resultFileName, Long testCnt, String testResult, String useYn, String registId, LocalDateTime registDate, String updateId, LocalDateTime updateDate) {
        this.seq = seq;
        this.oprMngCode = oprMngCode;
        this.rowNum = rowNum;
        this.uploadFilePath = uploadFilePath;
        this.uploadFileName = uploadFileName;
        this.resultFilePath = resultFilePath;
        this.resultFileName = resultFileName;
        this.testCnt = testCnt;
        this.testResult = testResult;
        this.useYn = useYn;
        this.registId = registId;
        this.registDate = registDate;
        this.updateId = updateId;
        this.updateDate = updateDate;
    }
}
