package com.xinelu.manage.domain.projectdevice;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.xinelu.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.time.LocalDateTime;

/**
 * 检测项目设备表
 *
 * @TableName project_device
 */
@EqualsAndHashCode(callSuper = true)
@ApiModel("检测项目设备表")
@Data
public class ProjectDevice extends BaseEntity {

    /**
     * 主键id
     */
    @ApiModelProperty("主键id")
    private Long id;
    /**
     * 患者id
     */
    @ApiModelProperty("患者id")
    private Long patientId;
    /**
     * 患者姓名
     */
    @ApiModelProperty("患者姓名")
    private String patientName;
    /**
     * 身份证号
     */
    @ApiModelProperty("身份证号")
    private String cardNo;
    /**
     * 设备类型，血糖仪：GLUCOSE_METER，血压计：BLOOD_PRESSURE_DEVICE
     */
    @ApiModelProperty("设备类型，血糖仪：GLUCOSE_METER，血压计：BLOOD_PRESSURE_DEVICE")
    private String deviceType;
    /**
     * 设备名称
     */
    @ApiModelProperty("设备名称")
    private String deviceName;
    /**
     * 设备编码
     */
    @ApiModelProperty("设备编码")
    private String deviceCode;
    /**
     * 设备状态,绑定：BIND,解绑：UN_BIND
     */
    @ApiModelProperty("设备状态,绑定：BIND,解绑：UN_BIND")
    private String deviceStatus;
    /**
     * 备注信息
     */
    @ApiModelProperty("备注信息")
    private String deviceRemark;
    /**
     * 设备绑定时间
     */
    @ApiModelProperty("设备绑定时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime deviceBindTime;
    /**
     * 设备解绑时间
     */
    @ApiModelProperty("设备解绑时间")
    private LocalDateTime deviceUnbindTime;
    /**
     * 设备IP地址
     */
    @ApiModelProperty("设备IP地址")
    private String deviceIp;
    /**
     * 设备端口
     */
    @ApiModelProperty("设备端口")
    private Integer devicePort;

}
