package org.springblade.modules.app.common.query;

import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.wn.common.datamodel.BaseQuery;
import com.wn.common.datamodel.Long2StringSerializer;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;

/**
 * @author huyinuo
 */
@Data
@Api(tags = "合同查询条件")
public class ContractQuery extends BaseQuery {

    /**
     * 合同id
     */
    @JsonSerialize(using = Long2StringSerializer.class)
    @ApiModelProperty(name = "contractId", value = "合同id")
    private Long contractId;

    /**
     * 合同名称
     */
    @ApiModelProperty(name = "contractName", value = "合同名称")
    private String contractName;

    /**
     * 养殖场id
     */
    @JsonSerialize(using = Long2StringSerializer.class)
    @ApiModelProperty(name = "salerId", value = "养殖场id")
    private Long salerId;

    /**
     * 屠宰场id
     */
    @JsonSerialize(using = Long2StringSerializer.class)
    @ApiModelProperty(name = "buyerId", value = "屠宰场id")
    private Long buyerId;

    /**
     * 状态
     */
    @ApiModelProperty(name = "state", value = "状态 0-待审核 1-生效 -1-驳回 -2-已失效")
    private Integer state;

    /**
     * 开始时间
     */
    @ApiModelProperty(name = "startTime", value = "开始时间")
    private Date startTime;

    /**
     * 结束时间
     */
    @ApiModelProperty(name = "endTime", value = "结束时间")
    private Date endTime;

    /**
     * 屠宰场名称
     */
    @ApiModelProperty(name = "buyerName", value = "屠宰场名称")
    private String buyerName;

    /**
     * 养殖场名称
     */
    @ApiModelProperty(name = "salerName", value = "养殖场名称")
    private String salerName;
}
