package com.jwipc.inquiry.dto;

import lombok.Data;

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

/**
 * <p>
 * 价格信息记录主表
 * </p>
 *
 * @author shenyang.ou
 * @since 2024-02-28
 */
@Data
public class PriceWarningDTO implements Serializable {

    private Long id;

    /**
     * 价格信息记录编码
     */
    private String priceCode;

    /**
     * 行项目号
     */
    private Integer itemNo;

    /**
     * 供应商编码
     */
    private String supplierCode;

    /**
     * 供应商名称
     */
    private String supplierName;

    /**
     * 供应商地点
     */
    private String vendorSite;

    /**
     * 采购组织
     */
    private String purchaseOrgCode;

    /**
     * 最终价格
     */
    private BigDecimal lastPrice;

    /**
     * 失效日期
     */
    private LocalDateTime invalidDate;

    /**
     * 生效日期
     */
    private LocalDateTime effectDate;

    /**
     * 采购组编码
     */
    private String purchaseGroupCode;

    /**
     * 公司编码
     */
    private String companyCode;

    /**
     * 工厂编码
     */
    private String factoryCode;

    /**
     * 物料编码
     */
    private String materialCode;

    /**
     * 物料名称
     */
    private String materialName;

    /**
     * 规格
     */
    private String materialSpec;

    /**
     * 型号
     */
    private String materialModel;

    /**
     * 品牌
     */
    private String brand;

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

    /**
     * 物料组编码
     */
    private String materialGroupCode;

    /**
     * 物料组名称
     */
    private String materialGroupName;

    /**
     * 含税价格
     */
    private BigDecimal taxPrice;

    /**
     * 未税价格
     */
    private BigDecimal noTaxPrice;

    /**
     * 采购订单单位
     */
    private String orderUnit;

    /**
     * eccn信息，供应商国别是美国的必填
     */
    private String eccn;

    /**
     * 价格单位
     */
    private Integer priceUnit;

    /**
     * 税率编码
     */
    private String taxCode;

    /**
     * 货币编码（取字典curreny）
     */
    private String currencyCode;

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

    /**
     * 价格信息记录状态1:新建2:已生成合同3:未同步4:已同步5:同步失败
     */
    private Integer status;

    /**
     * 采购类型
     */
    private String purchaseType;

    /**
     * 数据来源1：询报价2：招投标
     */
    private Integer sourceType;

    /**
     * 寻源编码：询报价或者招投标编码
     */
    private String sourceCode;

    /**
     * 最小订货量
     */
    private Long moq;

    /**
     * 最小包装量
     */
    private Long mpq;

    /**
     * 采购周期(天)
     */
    private Long leadTime;

    /**
     * 结算方式
     */
    private String settlementModes;

    /**
     * 申请单号-行号
     */
    private String applyCode;

    /**
     * 价格类型 1:一次性，2：长期有效
     */
    private Integer contractType;

    /**
     * 付款方式
     */
    private String paymentWay;

    /**
     * 付款条件
     */
    private String paymentMethod;

    /**
     * 失效备注
     */
    private String invalidRemark;

    /**
     * 阶梯数量1
     */
    private BigDecimal stageNum1;

    /**
     * 阶梯数量2
     */
    private BigDecimal stageNum2;

    /**
     * 阶梯数量3
     */
    private BigDecimal stageNum3;

    /**
     * 阶梯数量4
     */
    private BigDecimal stageNum4;

    /**
     * 阶梯数量5
     */
    private BigDecimal stageNum5;

    /**
     * 阶梯价格1
     */
    private BigDecimal stagePrice1;

    /**
     * 阶梯价格2
     */
    private BigDecimal stagePrice2;

    /**
     * 阶梯价格3
     */
    private BigDecimal stagePrice3;

    /**
     * 阶梯价格4
     */
    private BigDecimal stagePrice4;

    /**
     * 阶梯价格5
     */
    private BigDecimal stagePrice5;

    /**
     * ERP处理状态 S:成功 E:失败
     */
    private String processState;

    /**
     * ERP处理反馈
     */
    private String processMsg;

    /**
     * ERP处理日期
     */
    private LocalDateTime processDate;

    /**
     * ERP存放code
     */
    private String erpSrmCode;

    /**
     * 配额
     */
    private BigDecimal quota;

    /**
     * 创建时间
     */
    private LocalDateTime createTime;

    /**
     * 创建人
     */
    private Long createUser;
    private String createUserName;

    /**
     * 修改日期
     */
    private LocalDateTime updateTime;

    /**
     * 修改人
     */
    private Long updateUser;

    /**
     * 价格信息记录状态1:新建2:已生成合同3:未同步4:已同步5:同步失败
     */
    private Integer state;

    /**
     * 转询价单标记    0-未转  1-已转
     */
    private Integer inquiryFlag;

    /**
     * 询价单号
     */
    private String enquiryCode;

    /**
     * 询价单行
     */
    private String enquiryItemCode;
}
