package incheon.ags.mrb.analysis.vo;

import incheon.ags.mrb.analysis.domain.AnalysisKind;
import incheon.ags.mrb.analysis.domain.AnalysisStatus;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Getter;
import lombok.Setter;

import java.time.LocalDateTime;

@Getter
@Setter
public class AnlsHstryVO {

    @Schema(description = "분석 이력 ID")
    Integer anlsHstryId;

    @Schema(description = "유저 ID")
    String userId;

    @Schema(description = "분석 종류")
    AnalysisKind anlsKnd;

    @Schema(description = "분석 상태 코드")
    AnalysisStatus anlsStcd;

    @Schema(description = "분석 상태 메세지")
    String anlsSttsMssage;

    @Schema(description = "분석 시작 시간")
    LocalDateTime dmndTm;

    @Schema(description = "분석 완료 시간")
    LocalDateTime cmptnTm;

    @Schema(description = "사용자 레이어 ID")
    Integer userLyrId;

    public void setAnlsStcd(String code){
        this.anlsStcd = AnalysisStatus.findAnalysisStatus(code);
    }

    public void setAnlsStcd(AnalysisStatus analysisStatus){
        this.anlsStcd = analysisStatus;
    }

    public void setAnlsKnd(String value){
        this.anlsKnd = AnalysisKind.valueOf(value);
    }

    public void setAnlsKnd(AnalysisKind analysisKind){
        this.anlsKnd = analysisKind;
    }
}
