package com.hxhq.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;

import java.time.LocalDate;
import java.time.LocalDateTime;

/**
 * @author zhangjing
 * @date 2026/01/30 10:39
 * @description   仪器推送
 */
@Data
@TableName("instrument_push")
public class InstrumentPush {
    /**
     * 仪器变更记录ID（主键，雪花ID）
     **/
    @TableField(value = "instrument_push_id")
    private String instrumentPushId;

    /**
     * 仪器名称
     **/
    @TableField(value = "name")
    private String name;

    /**
     * 仪器编号（序列号，唯一标识）
     **/
    @TableField(value = "sn")
    private String sn;

    /**
     * 仪器型号
     **/
    @TableField(value = "model")
    private String model;

    /**
     * 所属部门（如：临床检验分析部）
     **/
    @TableField(value = "department")
    private String department;

    /**
     * 下次校准日期
     **/
    @TableField(value = "calibration_date")
    private LocalDate calibrationDate;

    /**
     * 来源（生产厂家/供应商）
     **/
    @TableField(value = "source")
    private String source;

    /**
     * 仪器状态：
     1=正常使用
     2=禁止使用
     **/
    @TableField(value = "status")
    private String status;

    /**
     * 放置位置
     **/
    @TableField(value = "storage_location")
    private String storageLocation;

    /**
     * 备注
     **/
    @TableField(value = "remark")
    private String remark;

    /**
     * 数据创建（推送）时间
     **/
    @TableField(value = "create_time")
    private LocalDateTime createTime;

    /**
     * 操作标识：1=新增，2=修改
     **/
    @TableField(value = "operation_sign")
    private Integer operationSign;

    /**
     * 串口号
     **/
    @TableField(value = "serial_port")
    private String serialPort;

    /**
     * 波特率
     **/
    @TableField(value = "baud_rate")
    private Integer baudRate;

    /**
     * 数据位
     **/
    @TableField(value = "byte_size")
    private Integer byteSize;

    /**
     * 奇偶校验：N=无校验,O=奇校验,E=偶校验
     **/
    @TableField(value = "parity")
    private String parity;

}
