package thyyxxk.webserver.entity.medicine;

import com.alibaba.fastjson.annotation.JSONField;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

/**
 * @ClassName YpCodgInfo
 * @Author hsh
 * @Date 2025/6/9 0009 9:00
 * @Version 1.0
 * @Description 药品追溯码信息下载
 **/
@Data
public class YpCodgDownload {

    /**
     * 配送企业批次流水号
     * */
    @JSONField(name = "delv_bchno")
    private String delvBchno;

    /**
     * 收货定点医药机构编码(必传)
     * */
    @JSONField(name = "fixmedins_code")
    private String fixmedinsCode;

    /**
     * 收货定点医药机构名称(必传)
     * */
    @JSONField(name = "fixmedins_name")
    private String fixmedinsName;

    /**
     * 配送企业信用代码(必传)
     * */
    @JSONField(name = "delventp_uscc")
    private String delventpUscc;

    /**
     * 配送企业单位名称(必传)
     * */
    @JSONField(name = "delventp_name")
    private String delventpName;

    /**
     * 医疗目录编码
     * */
    @JSONField(name = "med_list_codg")
    private String medListCodg;

    /**
     * 大包装追溯码
     * */
    @JSONField(name = "big_pac_trac_codg")
    private String bigPacTracCodg;

    /**
     * 中包装追溯码
     * */
    @JSONField(name = "mid_pac_trac_codg")
    private String midPacTracCodg;

    /**
     * 小包装追溯码
     * */
    @JSONField(name = "sml_pac_trac_codg")
    private String smlPacTracCodg;

    /**
     * 上传状态（1：成功；2：失败）
     * */
    @JSONField(name = "upld_stas")
    private String upldStas;

    /**
     * 配送开始时间
     * */
    @JSONField(name = "delv_begndate")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private String delvBegndate;

    /**
     * 配送结束时间
     * */
    @JSONField(name = "delv_enddate")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private String delvEnddate;

    /**
     * 上传开始时间
     * */
    @JSONField(name = "opt_begntime")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private String optBegntime;

    /**
     * 上传结束时间
     * */
    @JSONField(name = "opt_endtime")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private String optEndtime;


    /**
     * 页数（不传默认是 1）
     * */
    @JSONField(name = "page_num")
    private int pageNum;


    /**
     * 页大小（不传默认是 10，最大不超过 10000）
     * */
    @JSONField(name = "page_size")
    private int pageSize;


    /**
     * 查询类型（不传默认返回json，传 "file" 返回文件流格式，采用不传方式）
     * */
    @JSONField(name = "query_type")
    private String queryType;

}
