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

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ktg.common.annotation.Excel;
import com.ktg.common.core.domain.model.BaseBean;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.util.Date;

/**
 * 隔离点对象 is_isolation_point
 *
 * @author cgj
 * @date 2024-10-18
 */
@EqualsAndHashCode(callSuper = true)
@Data
public class PointPageVO extends BaseBean
{
    private static final long serialVersionUID = 1L;

    @TableId(type = IdType.AUTO)
    @ApiModelProperty(value = "隔离点ID")
    private Long pointId;

    @ApiModelProperty(value = "隔离点编号")
    private String pointCode;

    @ApiModelProperty(value = "隔离点名称")
    private String pointName;

    @ApiModelProperty(value = "隔离点类型")
    private String pointType;

    @ApiModelProperty(value = "隔离点nfc")
    private String pointNfc;

    @ApiModelProperty(value = "所属车间ID")
    private Long workshopId;

    @ApiModelProperty(value = "所属区域ID")
    private Long workareaId;

    @ApiModelProperty(value = "所属mars岗位ID")
    private Long workstationId;

    @ApiModelProperty(value = "所属电柜ID")
    private Long lotoId;

    @ApiModelProperty(value = "所属电柜Name")
    private String lotoName;

    @ApiModelProperty(value = "LOTO序列号")
    private String lotoSerialNumber;

    @ApiModelProperty(value = "危险能量类型")
    private String powerType;

    @ApiModelProperty(value = "隔离方式")
    private String isolationMethod;

    @ApiModelProperty(value = "隔离点图标")
    private String pointIcon;

    @ApiModelProperty(value = "隔离点图片")
    private String pointPicture;

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

    @ApiModelProperty(value = "挂锁类型id")
    private Long lockTypeId;

    @ApiModelProperty(value = "挂锁类型编码")
    private String lockTypeCode;

    @ApiModelProperty(value = "挂锁类型名称")
    private String lockTypeName;

    @ApiModelProperty(value = "挂锁类型图标")
    private String lockTypeIcon;

    @ApiModelProperty(value = "挂锁类型图片")
    private String lockTypeImg;

    @ApiModelProperty(value = "锁具类型图片")
    private String locksetTypeImg;

    @ApiModelProperty(value = "岗位名称")
    private String workstationName;

    @ApiModelProperty(value = "岗位名称")
    private String machineryName;

    @ApiModelProperty(value = "开关状态(0-开 1-关)")
    private String switchStatus;

    @ApiModelProperty(value = "开关状态最近更新时间")
    @JsonFormat(timezone="GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    private Date switchLastUpdateTime;

    @ApiModelProperty(value = "隔离点序列号")
    @Excel(name = "隔离点序列号")
    private String pointSerialNumber;

    @ApiModelProperty(value = "开关布局ID")
    private Long switchMapId;

    @ApiModelProperty(value = "开关布局Name")
    private String switchMapName;

}
