package incheon.ags.ias.clct.vo;

import incheon.com.cmm.ComDefaultVO;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;

import java.time.LocalDateTime;

@Getter
@Setter
@ToString(callSuper = true)
public class ClctHstryVO extends ComDefaultVO {

    private Long clctHstrySn;
    private String excnId;
    private String jobNm;
    private String jobExpln;
    private String jobStcd;
    private LocalDateTime bgngDt;
    private LocalDateTime endDt;
    private Long prcsHr;
    private String excnStcd;
    private Integer prcsNocs;
    private Integer scsNocs;
    private Integer failNocs;
    private String errMsg;
    private String logMsg;
    private LocalDateTime excnHr;
    private String frstRegId;
    private LocalDateTime frstRegDt;
    private String lastMdfcnId;
    private LocalDateTime lastMdfcnDt;

    public enum ExcnStcd {
        READY("READY", "대기"),
        SUCCESS("SUCCESS", "정상"),
        FAIL("FAIL", "비정상");

        private final String code;
        private final String description;

        ExcnStcd(String code, String description) {
            this.code = code;
            this.description = description;
        }

        public String getCode() {
            return code;
        }

        public String getDescription() {
            return description;
        }
    }
}