package com.its.api.utis.model.dto;

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

import java.io.Serializable;

/**
 * RSE운영상태정보 DTO Class
 */
@Data
@Builder
@ApiModel("RseopstateDto(RSE운영상태정보)")
public class RseopstateDto implements Serializable {
    private static final long serialVersionUID = 1L;

    @ApiModelProperty("RSEID")  // N VARCHAR(16)
    @JsonProperty("rseid")
    private String rseid;

    @ApiModelProperty("펌웨어버젼")  // Y VARCHAR(18)
    @JsonProperty("firmver")
    private String firmver;

    @ApiModelProperty("맵버젼")  // Y VARCHAR(9)
    @JsonProperty("mapver")
    private String mapver;

    @ApiModelProperty("RSE부팅이후경과시간")  // Y NUMBER(10)
    @JsonProperty("passtm")
    private Long passtm;

    @ApiModelProperty("최근상태정보전송이후경과시간")  // Y NUMBER(10)
    @JsonProperty("stpasstm")
    private Long stpasstm;

    @ApiModelProperty("가용메모리용량")  // Y NUMBER(10)
    @JsonProperty("usemem")
    private Long usemem;

    @ApiModelProperty("OBE접속대수")  // Y NUMBER(10)
    @JsonProperty("obeconcnt")
    private Long obeconcnt;

    @ApiModelProperty("OBE접속실패대수1")  // Y NUMBER(10)
    @JsonProperty("obeconfailcnt1")
    private Long obeconfailcnt1;

    @ApiModelProperty("OBE접속실패대수2")  // Y NUMBER(10)
    @JsonProperty("obeconfailcnt2")
    private Long obeconfailcnt2;

    @ApiModelProperty("전체다중전송량")  // Y NUMBER(10)
    @JsonProperty("multiqty")
    private Long multiqty;

    @ApiModelProperty("교통정보량")  // Y NUMBER(10)
    @JsonProperty("trafficqty")
    private Long trafficqty;

    @ApiModelProperty("수집정보 업로드량")  // Y NUMBER(10)
    @JsonProperty("upqty")
    private Long upqty;

    @ApiModelProperty("비OBE접속시도회수")  // Y NUMBER(10)
    @JsonProperty("nonobeconcnt")
    private Long nonobeconcnt;

    @ApiModelProperty("수집시간")  // Y DATE(0)
    @JsonProperty("coll_dt")
    private String collDt;

}
