package com.ruoyi.web.v3.entity;


import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.datatype.jsr310.deser.LocalDateTimeDeserializer;
import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateTimeSerializer;
import com.ruoyi.common.core.domain.AbstractEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.time.LocalDateTime;

@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("hb_harmless_treatment")
@ApiModel(value="HbHarmlessTreatment", description="v3.0无害化处理登记")
public class HbHarmlessTreatmentEntity extends AbstractEntity implements Serializable {

    @ApiModelProperty(value = "货主姓名")
    private String cargoOwnerName;

    @ApiModelProperty(value = "处理时间")
    @JsonDeserialize(using = LocalDateTimeDeserializer.class)
    @JsonSerialize(using = LocalDateTimeSerializer.class)
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime disposeTime;

    @ApiModelProperty(value = "待宰前死亡畜禽.死亡原因")
    private String deathReason;

    @ApiModelProperty(value = "待宰前死亡畜禽.处理数量")
    private Integer preDisposeQuantity;

    @ApiModelProperty(value = "待宰前死亡畜禽.处理方式")
    private String preDisposeMethod;

    @ApiModelProperty(value = "病害畜禽.处理原因")
    private String disposeReason;

    @ApiModelProperty(value = "病害畜禽.处理数量")
    private Integer disposeQuantity;

    @ApiModelProperty(value = "病害畜禽.处理方式")
    private String disposeMethod;

    @ApiModelProperty(value = "肉品检验不合格产品.产品（部位）名称")
    private String unfitPartName;

    @ApiModelProperty(value = "肉品检验不合格产品.处理原因")
    private String unfitProcessReason;

    @ApiModelProperty(value = "肉品检验不合格产品.处理数量（公斤）")
    private Integer unfitProcessQuantity;

    @ApiModelProperty(value = "肉品检验不合格产品.处理方式")
    private String unfitProcessMethod;

    @ApiModelProperty(value = "无害化处理人员签字")
    private String examinerName;

    @ApiModelProperty(value = "兽医卫生检验人员签字")
    private String veterinaryName;

    @ApiModelProperty(value = "农业农村部门监管人员签字")
    private String supervisorConfirm;

    @ApiModelProperty(value = "货主签字")
    private String cargoOwnerConfirm;

    @ApiModelProperty(value = "填表人")
    private String clerkName;

    @ApiModelProperty(value = "屠宰企业负责人签字")
    private String directorConfirm;

    @ApiModelProperty(value = "备注")
    private String remarks;

    @ApiModelProperty(value = "企业名称")
    private String orgName;

    @ApiModelProperty(value = "建档日期范围")
    private String archiveDuration;

}
