package com.its.api.its.model.entity.vds;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.*;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;
import java.io.Serializable;

/**
 * VDS 제어기 상태 Entity Class
 */
@Getter
@NoArgsConstructor(access = AccessLevel.PROTECTED)
@Builder
@AllArgsConstructor
@ApiModel("VDS 제어기 상태")
@Entity
@Table(name = "TB_VDS_CTLR_STTS")
public class TbVdsCtlrStts implements Serializable {
    private static final long serialVersionUID = 1L;

    @ApiModelProperty("제어기 관리 번호")  // N VARCHAR(20)
    @Id
    @Column(name = "CTLR_MNGM_NMBR", nullable = false, length = 20)
    private String ctlrMngmNmbr;

    @ApiModelProperty("통신 상태 코드")  // Y VARCHAR(7)
    @Column(name = "CMNC_STTS_CD", length = 7)
    private String cmncSttsCd;

    @ApiModelProperty("출력 전원 상태 코드")  // Y VARCHAR(7)
    @Column(name = "PRNT_PWER_STTS_CD", length = 7)
    private String prntPwerSttsCd;

    @ApiModelProperty("함체 문 상태 코드")  // Y VARCHAR(7)
    @Column(name = "CBOX_DOOR_STTS_CD", length = 7)
    private String cboxDoorSttsCd;

    @ApiModelProperty("팬 상태 코드")  // Y VARCHAR(7)
    @Column(name = "FAN_STTS_CD", length = 7)
    private String fanSttsCd;

    @ApiModelProperty("히터 상태 코드")  // Y VARCHAR(7)
    @Column(name = "HETR_STTS_CD", length = 7)
    private String hetrSttsCd;

    @ApiModelProperty("갱신 일시")  // Y VARCHAR(14)
    @Column(name = "UPDT_DT", length = 14)
    private String updtDt;

    @ApiModelProperty("부 제어기 값")  // Y NUMBER(3)
    @Column(name = "SUB_CTLR_VAL", columnDefinition = "NUMBER", length = 3)
    private Integer subCtlrVal;

    @ApiModelProperty("함체 온도")  // Y NUMBER(3)
    @Column(name = "CBOX_TMPR", columnDefinition = "NUMBER", length = 3)
    private Integer cboxTmpr;

    @ApiModelProperty("입력 전압")  // Y NUMBER(3)
    @Column(name = "INPT_VOLT", columnDefinition = "NUMBER", length = 3)
    private Integer inptVolt;

    @ApiModelProperty("출력 전압")  // Y NUMBER(3)
    @Column(name = "PRNT_VOLT", columnDefinition = "NUMBER", length = 3)
    private Integer prntVolt;

}
