package com.ktg.iscs.domain.vo.hardware;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ktg.common.annotation.Excel;
import com.ktg.common.core.domain.TreeEntity;
import io.swagger.annotations.ApiModelProperty;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.util.Date;

/**
 * 硬件类型对象 is_hardware_type
 *
 * @author cgj
 * @date 2024-10-16
 */
@EqualsAndHashCode(callSuper = true)
@Data
public class IsHardwareTypeVO extends TreeEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键id */
    @ApiModelProperty(value = "主键id")
    private Long id;

    /** 硬件类型编码 */
    @ApiModelProperty(value = "硬件类型编码")
    @Excel(name = "硬件类型编码")
    private String hardwareTypeCode;

    /** 硬件类型名称 */
    @ApiModelProperty(value = "硬件类型名称")
    @Excel(name = "硬件类型名称")
    private String hardwareTypeName;

    /** 父类型ID */
    @ApiModelProperty(value = "父类型ID")
    @Excel(name = "父类型ID")
    private Long parentTypeId;

    /** 所有父节点ID */
    @ApiModelProperty(value = "所有父节点ID")
    @Excel(name = "所有父节点ID")
    private String ancestors;

    /** 是否启用 */
    @ApiModelProperty(value = "是否启用（Y-N）")
    @Excel(name = "是否启用")
    private String enableFlag;

    /** 删除标志（0代表存在 2代表删除） */
    @ApiModelProperty(value = "删除标志（0代表存在 2代表删除）")
    private String delFlag;

    @Schema(description = "创建人")
    private String createBy;

    @JsonFormat(timezone="GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @Schema(description = "创建时间")
    private Date createTime;

    /** 更新者 */
    @Schema(description = "更新者")
    private String updateBy;

    /** 更新时间 */
    @JsonFormat(timezone="GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @Schema(description = "更新时间")
    private Date updateTime;

    /** 备注 */
    @Schema(description = "备注")
    private String remark;


}
