package com.glxp.mipsdl.req.base;

import com.baomidou.mybatisplus.annotation.TableField;
import lombok.Data;

import java.math.BigDecimal;
import java.util.List;

/**
 * 单据详情参数
 */
@Data
public class UdiwmsOrderDetailRequest {

    /**
     * 产品编码
     */
    private String productId;

    /**
     * 产品名称
     */
    private String productName;

    /**
     * 耗材字典ID外键
     */
    private String bindRlFk;

    /**
     * 单价
     */
    private BigDecimal price;

    /**
     * 批次号
     */
    private String batchNo;

    /**
     * 失效日期
     */
    private String expireDate;

    /**
     * 生产日期
     */
    private String productDate;

    /**
     * 规格型号
     */
    private String standard;

    /**
     * 单据号
     */
    private String billNo;

    /**
     * 销售发票号（第二票）
     */
    private String secSalesInvNo;

    /**
     * 发票日期
     */
    private String invoiceDate;

    /**
     * 第二票销售清单号
     */
    private String secSalesListNo;

    /**
     * 销售发票号（第一票）
     */
    private String firstSalesInvNo;

    /**
     * 注册/备案证号
     */
    private String registerNo;

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

    /**
     * 计量单位
     */
    private String measname;

    /**
     * 数量
     */
    private Integer count;

    /**
     * 备注
     */
    private String remark;

    /**
     * 备注1/规格型号ID
     */
    private String remark1;

    /**
     * 备注2/型号
     */
    private String remark2;

    /**
     * 备注3/规格
     */
    private String remark3;

    /**
     * 是否允许无批次号
     */
    private boolean allowNoBatch;

    /**
     * 序列号
     */
    private String serialNo;


    /**
     * 生产厂家编码
     */
    private String manufactoryCode;

    /**
     * 配送企业编码
     */
    private String supCode;

    private String cplb;
    private String diCode;
    private String hslb;

    /**
     * 码明细
     */
    private List<CodeDetailEntity> codeList;

    /**
     * 码明细参数
     */
    public static class CodeDetailEntity {

        /**
         * UDI码
         */
        private String code;

        /**
         * DI
         */
        private String nameCode;

        /**
         * 数量
         */
        private Integer count;

        public String getCode() {
            return code;
        }

        public void setCode(String code) {
            this.code = code;
        }

        public String getNameCode() {
            return nameCode;
        }

        public void setNameCode(String nameCode) {
            this.nameCode = nameCode;
        }

        public Integer getCount() {
            return count;
        }

        public void setCount(Integer count) {
            this.count = count;
        }
    }

}
