package com.phlx.anchorcollect.entity;

import android.os.Parcel;
import android.os.Parcelable;

import androidx.databinding.BaseObservable;


import org.greenrobot.greendao.annotation.Entity;

import java.util.Date;
import org.greenrobot.greendao.annotation.Generated;
import org.greenrobot.greendao.annotation.Id;

/**
 * 免疫记录对象 zxgl_immunebatch
 *
 * @author phlx
 * @date 2022-01-10
 */
@Entity
public class ImmuneBatchEntity extends BaseObservable implements Parcelable {

    /**
     * 主键
     */
    @Id(autoincrement = false)
    private Long unid;

    /**
     * 圈舍号
     */
    private String circleNo;

    /**
     * 免疫有效期（月）
     */
    private String immuneExp;

    /**
     * 免疫日期
     */
    private String immuneDate;

    /**
     * 免疫人员
     */
    private String immunePerson;

    /**
     * 围药期（月）
     */
    private String perinatalPeriod;

    /**
     * 疫苗名称
     */
    private String vaccineName;

    /**
     * 疫苗批号
     */
    private String lotnumber;

    /**
     * 生产厂家
     */
    private String manufacturer;

    /**
     * 规格
     */
    private String specifications;

    /**
     * 免疫剂量
     */
    private String immuneDosage;

    /**
     * 免疫方法;（滴鼻，注射，口服，刺种，气雾）
     */
    private String immuneMethod;


    /** 是否上传 0未上传，1已上传 */
    private String uploadStatus;

    /**
     * 部门id
     */
    private Long deptId;

    /** 搜索值 */
    private String searchValue;

    /** 创建者 */
    private String createBy;

    /** 创建时间 */
    private String createTime;

    /** 更新者 */
    private String updateBy;

    /** 更新时间 */
    private String updateTime;

    /** 备注 */
    private String remark;

    public ImmuneBatchEntity() {
    }

    protected ImmuneBatchEntity(Parcel in) {
        if (in.readByte() == 0) {
            unid = null;
        } else {
            unid = in.readLong();
        }
        circleNo = in.readString();
        immuneExp = in.readString();
        immuneDate = in.readString();
        immunePerson = in.readString();
        perinatalPeriod = in.readString();
        vaccineName = in.readString();
        lotnumber = in.readString();
        manufacturer = in.readString();
        specifications = in.readString();
        immuneDosage = in.readString();
        immuneMethod = in.readString();
        uploadStatus = in.readString();
        if (in.readByte() == 0) {
            deptId = null;
        } else {
            deptId = in.readLong();
        }
        searchValue = in.readString();
        createBy = in.readString();
        createTime = in.readString();
        updateBy = in.readString();
        updateTime = in.readString();
        remark = in.readString();
    }

    @Generated(hash = 565285682)
    public ImmuneBatchEntity(Long unid, String circleNo, String immuneExp, String immuneDate,
            String immunePerson, String perinatalPeriod, String vaccineName, String lotnumber,
            String manufacturer, String specifications, String immuneDosage, String immuneMethod,
            String uploadStatus, Long deptId, String searchValue, String createBy, String createTime,
            String updateBy, String updateTime, String remark) {
        this.unid = unid;
        this.circleNo = circleNo;
        this.immuneExp = immuneExp;
        this.immuneDate = immuneDate;
        this.immunePerson = immunePerson;
        this.perinatalPeriod = perinatalPeriod;
        this.vaccineName = vaccineName;
        this.lotnumber = lotnumber;
        this.manufacturer = manufacturer;
        this.specifications = specifications;
        this.immuneDosage = immuneDosage;
        this.immuneMethod = immuneMethod;
        this.uploadStatus = uploadStatus;
        this.deptId = deptId;
        this.searchValue = searchValue;
        this.createBy = createBy;
        this.createTime = createTime;
        this.updateBy = updateBy;
        this.updateTime = updateTime;
        this.remark = remark;
    }

    @Override
    public void writeToParcel(Parcel dest, int flags) {
        if (unid == null) {
            dest.writeByte((byte) 0);
        } else {
            dest.writeByte((byte) 1);
            dest.writeLong(unid);
        }
        dest.writeString(circleNo);
        dest.writeString(immuneExp);
        dest.writeString(immuneDate);
        dest.writeString(immunePerson);
        dest.writeString(perinatalPeriod);
        dest.writeString(vaccineName);
        dest.writeString(lotnumber);
        dest.writeString(manufacturer);
        dest.writeString(specifications);
        dest.writeString(immuneDosage);
        dest.writeString(immuneMethod);
        dest.writeString(uploadStatus);
        if (deptId == null) {
            dest.writeByte((byte) 0);
        } else {
            dest.writeByte((byte) 1);
            dest.writeLong(deptId);
        }
        dest.writeString(searchValue);
        dest.writeString(createBy);
        dest.writeString(createTime);
        dest.writeString(updateBy);
        dest.writeString(updateTime);
        dest.writeString(remark);
    }

    @Override
    public int describeContents() {
        return 0;
    }

    public static final Creator<ImmuneBatchEntity> CREATOR = new Creator<ImmuneBatchEntity>() {
        @Override
        public ImmuneBatchEntity createFromParcel(Parcel in) {
            return new ImmuneBatchEntity(in);
        }

        @Override
        public ImmuneBatchEntity[] newArray(int size) {
            return new ImmuneBatchEntity[size];
        }
    };

    public Long getUnid() {
        return unid;
    }

    public void setUnid(Long unid) {
        this.unid = unid;
    }

    public String getCircleNo() {
        return circleNo;
    }

    public void setCircleNo(String circleNo) {
        this.circleNo = circleNo;
    }

    public String getImmuneExp() {
        return immuneExp;
    }

    public void setImmuneExp(String immuneExp) {
        this.immuneExp = immuneExp;
    }

    public String getImmuneDate() {
        return immuneDate;
    }

    public void setImmuneDate(String immuneDate) {
        this.immuneDate = immuneDate;
    }

    public String getImmunePerson() {
        return immunePerson;
    }

    public void setImmunePerson(String immunePerson) {
        this.immunePerson = immunePerson;
    }

    public String getPerinatalPeriod() {
        return perinatalPeriod;
    }

    public void setPerinatalPeriod(String perinatalPeriod) {
        this.perinatalPeriod = perinatalPeriod;
    }

    public String getVaccineName() {
        return vaccineName;
    }

    public void setVaccineName(String vaccineName) {
        this.vaccineName = vaccineName;
    }

    public String getLotnumber() {
        return lotnumber;
    }

    public void setLotnumber(String lotnumber) {
        this.lotnumber = lotnumber;
    }

    public String getManufacturer() {
        return manufacturer;
    }

    public void setManufacturer(String manufacturer) {
        this.manufacturer = manufacturer;
    }

    public String getSpecifications() {
        return specifications;
    }

    public void setSpecifications(String specifications) {
        this.specifications = specifications;
    }

    public String getImmuneDosage() {
        return immuneDosage;
    }

    public void setImmuneDosage(String immuneDosage) {
        this.immuneDosage = immuneDosage;
    }

    public String getImmuneMethod() {
        return immuneMethod;
    }

    public void setImmuneMethod(String immuneMethod) {
        this.immuneMethod = immuneMethod;
    }

    public String getUploadStatus() {
        return uploadStatus;
    }

    public void setUploadStatus(String uploadStatus) {
        this.uploadStatus = uploadStatus;
    }

    public Long getDeptId() {
        return deptId;
    }

    public void setDeptId(Long deptId) {
        this.deptId = deptId;
    }

    public String getSearchValue() {
        return searchValue;
    }

    public void setSearchValue(String searchValue) {
        this.searchValue = searchValue;
    }

    public String getCreateBy() {
        return createBy;
    }

    public void setCreateBy(String createBy) {
        this.createBy = createBy;
    }

    public String getCreateTime() {
        return createTime;
    }

    public void setCreateTime(String createTime) {
        this.createTime = createTime;
    }

    public String getUpdateBy() {
        return updateBy;
    }

    public void setUpdateBy(String updateBy) {
        this.updateBy = updateBy;
    }

    public String getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(String updateTime) {
        this.updateTime = updateTime;
    }

    public String getRemark() {
        return remark;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }

    @Override
    public String toString() {
        return "ImmuneBatchEntity{" +
                "unid='" + unid + '\'' +
                ", circleNo='" + circleNo + '\'' +
                ", immuneExp='" + immuneExp + '\'' +
                ", immuneDate='" + immuneDate + '\'' +
                ", immunePerson='" + immunePerson + '\'' +
                ", perinatalPeriod='" + perinatalPeriod + '\'' +
                ", vaccineName='" + vaccineName + '\'' +
                ", lotnumber='" + lotnumber + '\'' +
                ", manufacturer='" + manufacturer + '\'' +
                ", specifications='" + specifications + '\'' +
                ", immuneDosage='" + immuneDosage + '\'' +
                ", immuneMethod='" + immuneMethod + '\'' +
                ", uploadStatus='" + uploadStatus + '\'' +
                ", deptId='" + deptId + '\'' +
                ", searchValue='" + searchValue + '\'' +
                ", createBy='" + createBy + '\'' +
                ", createTime='" + createTime + '\'' +
                ", updateBy='" + updateBy + '\'' +
                ", updateTime='" + updateTime + '\'' +
                ", remark='" + remark + '\'' +
                '}';
    }
}
