package com.its.vms.entity;

import com.its.vms.dto.TbVmsFormObjectDto;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;

/**
 *  Entity Class
 */
@Data
@Builder
@NoArgsConstructor//(access = AccessLevel.PROTECTED)
@AllArgsConstructor
public class TbVmsFormObject implements Serializable {
    private static final long serialVersionUID = 1L;

    private Integer vmsFormObjectId;
    private Integer vmsFormId;
    private Integer vmsFormDsplRow;
    private Integer vmsFormDsplClmn;
    private Integer vmsFormObjectTypeCd;
    private Integer vmsFontNameCd;
    private Integer vmsFontColrCd;
    private String vmsDsplTxt;
    private Integer vmsDsplXcrdn;
    private Integer vmsDsplYcrdn;
    private String trfcFillCd;
    private Integer vmsFontBold;
    private Integer vmsFontSize;
    private Integer vmsFontAlign;
    private Integer vmsDsplWidth;
    private Integer vmsDsplHeight;
    private Integer vmsDsplBlinking;
    private Integer vmsDsplBkColor;
    private Integer vmsDsplSize;
    private Integer symbLibNmbr;
    private Long vmsIfscId;

    public TbVmsFormObjectDto toDto() {
        return TbVmsFormObjectDto.builder()
                .vmsFormObjectId(this.vmsFormObjectId)
                .vmsFormId(this.vmsFormId)
                .vmsFormDsplRow(this.vmsFormDsplRow)
                .vmsFormDsplClmn(this.vmsFormDsplClmn)
                .vmsFormObjectTypeCd(this.vmsFormObjectTypeCd)
                .vmsFontNameCd(this.vmsFontNameCd)
                .vmsFontColrCd(this.vmsFontColrCd)
                .vmsDsplTxt(this.vmsDsplTxt)
                .vmsDsplXcrdn(this.vmsDsplXcrdn)
                .vmsDsplYcrdn(this.vmsDsplYcrdn)
                .trfcFillCd(this.trfcFillCd)
                .vmsFontBold(this.vmsFontBold)
                .vmsFontSize(this.vmsFontSize)
                .vmsFontAlign(this.vmsFontAlign)
                .vmsDsplWidth(this.vmsDsplWidth)
                .vmsDsplHeight(this.vmsDsplHeight)
                .vmsDsplBlinking(this.vmsDsplBlinking)
                .vmsDsplBkColor(this.vmsDsplBkColor)
                .vmsDsplSize(this.vmsDsplSize)
                .symbLibNmbr(this.symbLibNmbr)
                .vmsIfscId(this.vmsIfscId)
                .imagData(null)
                .bitmapType(null)
                .bitmapId(0)
                .build();
    }

}
