package com.casic.missiles.model.equipment;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.casic.missiles.annotation.DictCodeField;
import com.casic.missiles.constants.MeterDictCode;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;

import java.io.Serializable;

/**
 * <p>
 * 标准装置-标准配套设备表
 * </p>
 *
 * @author cuicheng
 * @since 2022-12-15
 */
@Getter
@Setter
@TableName("equipment_standard_support_equipment")
public class EquipmentStandardSupportEquipment implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 标准配套设施
     */
    @TableId("id")
    @ApiModelProperty(value = "主键", dataType = "Long", required = true)
    private Long id;

    /**
     * 标准设备ID
     */
    @TableField("standard_equipment_id")
    @ApiModelProperty(value = "标准设备ID", dataType = "Long", required = true)
    private Long standardEquipmentId;

    /**
     * 配套设备ID
     */
    @TableField("equipment_id")
    @ApiModelProperty(value = "配套设备ID", dataType = "Long", required = true)
    private Long equipmentId;

    /**
     * 设备编号
     */
    @TableField(exist = false)
    @ApiModelProperty(value = "设备编号", dataType = "String", required = true)
    private String equipmentNo;

    /**
     * 设备名称
     */
    @TableField(exist = false)
    @ApiModelProperty(value = "设备名称", dataType = "String", required = true)
    private String equipmentName;

    /**
     * 型号
     */
    @TableField(exist = false)
    @ApiModelProperty(value = "型号", dataType = "String", required = true)
    private String modelNo;

    /**
     * 测量范围
     */
    @TableField(exist = false)
    @ApiModelProperty(value = "测量范围", dataType = "String", required = false)
    private String mesureRange;

    /**
     * 使用部门
     */
    @TableField(exist = false)
    @ApiModelProperty(value = "使用部门", dataType = "Long", required = false)
    private Long useDept;

    /**
     * 使用部门名称
     */
    @TableField(exist = false)
    @ApiModelProperty(value = "使用部门名称", dataType = "String", required = false)
    private String useDeptName;

    /**
     * 检定日期
     */
    @TableField(exist = false)
    @ApiModelProperty(value = "检定日期", dataType = "String", required = false)
    private String mesureDate;

    /**
     * 有效日期
     */
    @TableField(exist = false)
    @ApiModelProperty(value = "有效日期", dataType = "String", required = false)
    private String validDate;

    /**
     * 检定结果-字典code
     */
    @TableField(exist = false)
    @DictCodeField(message = "检定结果不合法", cacheName = MeterDictCode.MESURE_RESULT)
    @ApiModelProperty(value = "检定结果", dataType = "String", required = false)
    private String mesureResult;

    /**
     * 检定结果名称
     */
    @TableField(exist = false)
    @ApiModelProperty(value = "检定结果名称", dataType = "String", required = false)
    private String mesureResultName;

    /**
     * 配套设备id(更换申请使用)
     */
    @TableField(exist = false)
    @ApiModelProperty(value = "配套设备id(更换申请使用)", dataType = "Long", required = false)
    private Long supportEquipmentId;
    /**
     * 备注
     */
    @TableField("remark")
    private String remark;

    /**
     * 删除标记
     */
    @TableField("is_del")
    private Boolean isDel;

    /**
     * 创建人
     */
    @TableField("create_user")
    private Long createUser;

    /**
     * 创建时间
     */
    @TableField("create_time")
    private String createTime;

    /**
     * 更新时间
     */
    @TableField("update_time")
    private String updateTime;


}
