package com.ruoyi.web.v3.model.request;

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.web.v3.model.BasePageRequest;
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)
@ApiModel(value="HbCheckMeatQualifiedPageReq", description="v3.0 ")
public class HbCheckMeatQualifiedPageReq extends BasePageRequest implements Serializable {

    @ApiModelProperty(value = "数据唯一性标识id")
    private String id;

    @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 recordDate;

    @ApiModelProperty(value = "准宰证号")
    private String slaughterPermitNo;

    @ApiModelProperty(value = "屠宰开始时间（格式：HH:mm:ss）")
    private String startTime;

    @ApiModelProperty(value = "屠宰结束时间（格式：HH:mm:ss）")
    private String endTime;

    @ApiModelProperty(value = "屠宰数量（头/只/羽）")
    private Integer slaughterQuantity = 0;

    @ApiModelProperty(value = "肉品品质检验合格数")
    private Integer qualifiedQuantity = 0;

    @ApiModelProperty(value = "肉品品质检验不合格数")
    private Integer unqualifiedQuantity = 0;

    @ApiModelProperty(value = "不合格原因说明")
    private String unqualifiedReason;

    @ApiModelProperty(value = "三腺等不可食用废弃物重量（公斤）")
    private Integer wasteWeight = 0;

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

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

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

    @ApiModelProperty(value = "建档日期（建议格式：YYYY-MM）")
    private String archiveDuration;

}
