package com.jwipc.inquiry.dto;

import lombok.Data;
import lombok.EqualsAndHashCode;

import java.math.BigDecimal;

/**
 * <p>
 * 采购申请明细
 * </p>
 *
 * @author shenyang.ou
 * @since 2024-02-29
 */
@EqualsAndHashCode(callSuper = true)
@Data
public class PurchaseApplyBillDetailDTO extends PurchaseApplyBillDTO {

    private Long id;

    /**
     * ERP唯一标识
     */
    private String reqLineId;

    /**
     * 采购申请单id
     */
    private String billId;

    /**
     * 采购申请单号
     */
    private String billCode;

    /**
     * 行号，系统生成或OA流水号
     */
    private String itemCode;

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

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

    /**
     * 采购类别
     */
    private String procureSubclass;

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

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

    /**
     * 品名
     */
    private String productCode;

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

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

    /**
     * 单位 
     */
    private String unitCode;

    /**
     * 需求数量 
     */
    private BigDecimal requireNum;

    /**
     * 需求日期 yyyy-MM-dd 
     */
    private String requireDate;

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

    /**
     * 库存地点编码
     */
    private String stockCode;

    /**
     * 库存地点名称
     */
    private String stockName;

    /**
     * 库存地点
     */
    private String stockPoint;

    /**
     * 删除标记
     */
    private Integer deleteFlag;

    /**
     * 行备注
     */
    private String detailRemark;

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

    /**
     * 剩余数量
     */
    private BigDecimal remainQuantity;

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

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

    /**
     * 转招投标标记   0-未转  1-已转
     */
    private Integer tenderFlag;

    /**
     * 附件
     */
    private String files;

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

    /**
     * 批准数量
     */
    private BigDecimal approvalNumber;

    /**
     * 招标单号
     */
    private String tenderCode;

    /**
     * 班组-编码
     */
    private String teamCode;

    /**
     * 班组-名称
     */
    private String teamName;

    /**
     * 采购提前期（天）
     */
    private Integer purchaseLeadTime;

    /**
     * 需求数量 (基本单位）
     */
    private BigDecimal requireNumBase;

    /**
     * 基本单位 
     */
    private String unitCodeBase;

    /**
     * 科目分配类别
     */
    private String subjectTypeCode;

    /**
     * 紧急程度
     */
    private String urgency;

    /**
     * 按计划交货
     */
    private String planDelivery;

    /**
     * 创建人名称
     */
    private String createName;

    /**
     * 转单标识；1-未转；2-已转
     */
    private Integer transferStatus;

    /**
     * 数据状态；0-新增；1-编辑；2-删除
     */
    private Integer dataState;

    /**
     * 申请人姓名
     */
    private String requireName;

    /**
     * 成本中心
     */
    private String costCenterCode;

    /**
     * 成本中心描述
     */
    private String costCenterName;

    /**
     * 采购方式
     */
    private String purchaseMethod;

    /**
     * 项目编号
     */
    private String projectNo;
    private String customerCode;
    private String customerName;
    private String factor;
    private BigDecimal price;
    private String purchaseOrderNumber;
    private String purchaseApplyTypeCode;
    private BigDecimal totalAmount;
    private BigDecimal realityTotalAmount;
    private String contractNo;
    private String increasePrice;
    private String modelApply;
    private String applyProjectType;
    private String purchaseWay;
    private String userCode;
    private String userName;
    private String useDeptCode;
    private String useDeptName;
    private String modelType;
    private String modelNumber;
    private String currency;
    private String projectName;
    private String projectProcess;
    /**
     * 预计使用年限
     */
    private String expiredServiceYear;
    /**
     * 资产申请单据类型
     */
    private String applyBillType;

    /**
     * 采购业务类型
     */
    private String purchasingBusinessType;
    /**
     * 申请人
     */
    private String applyUserName;
    /**
     * 申请部门
     */
    private String applyDeptName;
    /**
     * 报销类别-长名称
     */
    private String expenseTypeLongName;
    /**
     * 费用担当部门编码
     */
    private String costUndertakeDeptCode;
    /**
     * 费用担当部门名称
     */
    private String costUndertakeDeptName;

    private BigDecimal purchaseNum;

    /**
     * 可申请数量
     */
    private BigDecimal enablePurchaseNum;

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

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