package com.hxhq.business.domain;

import java.util.Date;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.baomidou.mybatisplus.annotation.TableName;
import com.hxhq.common.core.annotation.Compare;
import com.hxhq.common.core.annotation.Excel;
import com.hxhq.common.core.domain.MpBaseEntity;
import org.hibernate.validator.constraints.Length;

import javax.validation.constraints.Max;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;


/**
 * 仪器管理对象 t_yq
 *
 * @author HanLong
 * @date 2025-12-20
 */
@TableName("t_yq")
public class Yq extends MpBaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * 名称
     */
    @NotEmpty(message = "请输入仪器名称")
    @Length(max = 50, message = "仪器名称不能超过50字")
    @Compare(name = "仪器名称", nameEn = "Name")
    private String mc;

    /**
     * 编号
     */
    @NotEmpty(message = "请输入仪器编号")
    @Length(max = 50, message = "仪器编号不能超过50字")
    @Compare(name = "仪器编号", nameEn = "ID")
    private String bh;

    /**
     * 型号
     */
    @NotEmpty(message = "请输入仪器型号")
    @Length(max = 50, message = "仪器型号不能超过50字")
    @Compare(name = "仪器型号", nameEn = "Type")
    private String xh;

    /**
     * 来源
     */
    @NotEmpty(message = "请输入仪器来源")
    @Length(max = 50, message = "仪器来源不能超过50字")
    @Compare(name = "仪器来源", nameEn = "Source")
    private String ly;

    /**
     * 校准日期
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @NotNull(message = "请选择校准日期")
    @Compare(name = "下次校准日期", nameEn = "Next Calibration")
    private Date jzrq;

    /**
     * 部门id
     */
    @NotNull(message = "请选择所属部门")
    private Long bmId;

    /** 部门名称 */
    @Compare(name = "所属部门")
    private String bmMc;


    /**
     * 温层
     */
    @NotNull(message = "请选择所温层")
    @Compare(name = "温层")
    private String wc;


    public void setMc(String mc) {
        this.mc = mc;
    }

    public String getMc() {
        return mc;
    }

    public void setBh(String bh) {
        this.bh = bh;
    }

    public String getBh() {
        return bh;
    }

    public void setXh(String xh) {
        this.xh = xh;
    }

    public String getXh() {
        return xh;
    }

    public void setLy(String ly) {
        this.ly = ly;
    }

    public String getLy() {
        return ly;
    }

    public void setJzrq(Date jzrq) {
        this.jzrq = jzrq;
    }

    public Date getJzrq() {
        return jzrq;
    }

    public void setBmId(Long bmId) {
        this.bmId = bmId;
    }

    public Long getBmId() {
        return bmId;
    }

    public void setWc(String wc) {
        this.wc = wc;
    }

    public String getWc() {
        return wc;
    }

    public String getBmMc() {
        return bmMc;
    }

    public void setBmMc(String bmMc) {
        this.bmMc = bmMc;
    }
}
