package com.jwipc.inquiry.dto;

import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.format.DateTimeFormat;
import lombok.Data;
import lombok.EqualsAndHashCode;

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

/**
 * <p>
 * 询价物料表
 * </p>
 *
 * @author shenyang.ou
 * @since 2024-02-21
 */
@Data
//加入这个注解后只有加了@ExcelProperty才会参与读写
@ExcelIgnoreUnannotated
public class InquiryMaterialImportDTO{

    /**
     * 物料id
     */
    private Long productId;

    /**
     * 物料名称
     */
    @ExcelProperty("物料名称")
    private String materialName;

    /**
     * 物料描述
     */
    private String materialDesc;

    /**
     * 物料编号
     */
    @ExcelProperty("物料编码")
    private String materialCode;

    /**
     * 物料组编码
     */
    @ExcelProperty("物料组编码")
    private String materialGroupCode;

    /**
     * 币种
     */
    @ExcelProperty("币种")
    private String currencyCode;

    /**
     * 工厂编码
     */
    @ExcelProperty("工厂编码")
    private String factoryCode;

    /**
     * 采购单位
     */
    @ExcelProperty("采购单位编码")
    private String purchaseUnit;

    /**
     * 采购数量-由需求数量根据换算单位计算
     */
    @ExcelProperty("采购数量")
    private BigDecimal purchaseNum;

    /**
     * 目标单价类型
     */
    @ExcelProperty("目标单价类型")
    private String targetPriceType;

    /**
     * 目标单价
     */
    @ExcelProperty("目标单价")
    private BigDecimal targetPrice;

    /**
     * 有效期起始日
     */
    @ExcelProperty("有效期起始日")
    @DateTimeFormat(value = "yyyy-MM-dd")
    private LocalDateTime quoteFromDate;

    /**
     * 有效期结束日
     */
    @ExcelProperty("有效期结束日")
    @DateTimeFormat(value = "yyyy-MM-dd")
    private LocalDateTime quoteEndDate;

//    /**
//     * 品名
//     */
//    @ExcelProperty("品名")
//    private String productName;

    /**
     * 规格
     */
    @ExcelProperty("详细规格参数")
    private String materialSpec;
//    /**
//     * 品牌
//     */
//    @ExcelProperty("品牌")
//    private String brand;

    /**
     * 备注
     */
    @ExcelProperty("备注")
    private String remark;

    /**
     * 物料基础单位
     */
    private String materialUnit;

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

    /**
     * 历史最低价格id
     */
    private Long historyPriceId;

    /**
     * 历史最低价格
     */
    private BigDecimal historyPrice;

    /**
     * 上次中标价格id
     */
    private Long lastBidPriceId;

    /**
     * 上次中标价格
     */
    private BigDecimal lastBidPrice;
}
