package com.its.op.dto.its.unit;

import com.fasterxml.jackson.annotation.JsonProperty;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;

/**
 * 단위 시스템 상태 이력 DTO Class
 */
@Data
@NoArgsConstructor
@Builder
@AllArgsConstructor
@ApiModel("TbUnitSystSttsHsDto(단위 시스템 상태 이력)")
public class TbUnitSystSttsHsHistDto implements Serializable {
    private static final long serialVersionUID = 1L;

    @ApiModelProperty("시간 인덱스(1~288)")  // N VARCHAR(30)
    @JsonProperty("crtn_idx")
    private Integer crtnIdx;

    @ApiModelProperty("시분(HH24MI)")  // N VARCHAR(30)
    @JsonProperty("hhmm")
    private String hhmm;

    @ApiModelProperty("시스템 ID")  // N VARCHAR(30)
    @JsonProperty("syst_id")
    private String systId;

    @ApiModelProperty("생성 일시")  // N VARCHAR(14)
    @JsonProperty("crtn_dt")
    private String crtnDt;

    @ApiModelProperty("시스템 상태 코드")  // Y VARCHAR(7)
    @JsonProperty("syst_stts_cd")
    private String systSttsCd;

    @ApiModelProperty("시스템 상태 코드 설명")
    @JsonProperty("syst_stts_desc")    // SYST_STTS_CD
    private String systSttsDesc;

    public TbUnitSystSttsHsHistDto(int crtnIdx, String hhmm, String systId) {
        this.crtnIdx = crtnIdx;
        this.hhmm = hhmm;
        this.systId = systId;
        this.systSttsCd = "";
        this.systSttsDesc = "-";
    }

}
