package com.huigou.topsun.proofing.domain.vo;

import com.huigou.data.domain.model.FlowBillAbstractEntity;
import com.topsunit.query.annotations.Dictionary;
import lombok.Data;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
import java.util.Date;

/**
 * 打样申请基本信息
 */
@Data
public class ProofingApplyBaseInfoVo extends FlowBillAbstractEntity {
    /**
     * 申请单id
     */

    private String proofingApplyId;

    /**
     * 申请单号
     */

    private String proofingApplyNo;

    /**
     * 产品id
     */

    private String productCode;

    /**
     * 产品id
     */

    private String productId;

    /**
     * 品牌客户编号
     */

    private String customerCode;

    /**
     * 客户id
     */

    private String customerId;

    /**
     * 版面
     */
    private String page;

    /**
     * 版面需求时间
     */

    private Date proofingApplyPageNeedTime;

    /**
     * 完成日期
     */

    private Date proofingApplyCompleteDate;

    /**
     * 样品中文名称
     */

    private String proofingApplySampleCnName;

    /**
     * 样品英文名称
     */

    private String proofingApplySampleEnName;

    /**
     * 样品版次
     */

    private Integer proofingApplySampleVersion;

    /**
     * 样品规格
     */

    private Integer proofingApplySampleSize;

    /**
     * 样品数量
     */
    private Long proofingApplySampleNum;

    /**
     * 产量情况
     */

    private String proofingApplyOutputSituation;

    /**
     * 产品代号
     */

    private String proofingApplyProductNo;

    /**
     * 打样形式
     */

    private String proofingType;

    /**
     * 分配方式
     */

    private String proofingApplyAllocationType;

    /**
     * 产品类别名称
     */

    private String productCategoryName;

    /**
     * 表面处理
     */

    private String proofingApplySurfaceTreatment;

    /**
     * NG重新打样原因
     */

    private String proofingApplyNgReReason;

    /**
     * 申请单状态
     */
    @Dictionary("handleResult")
    private String proofingApplyApplicationStatus;

    /**
     * 测试标准
     */

    private String proofingApplyTestStandard;


    private String proofingApplyLookedId;


    /**
     * 是否量产
     */

    private String isOutput;

    /**
     * 是否外发
     */

    private String isOut;

    /**
     * 是否改变
     */
    @Dictionary("yesorno")

    private String isChange;

    /**
     * 长;单位cm
     */

    private Double productLength;

    /**
     * 宽;单位cm
     */

    private Double productWidth;

    /**
     * 高;单位cm
     */

    private Double productHeight;

    /**
     * 厚度;单位mm
     */

    private Double productThick;

    /**
     * 单层厚(单位丝)
     */

    private Integer productSingleLayer;

    /**
     * 层数
     */
    private Integer productLayerNum;

    @Override
    protected String getCodeRuleId() {
        return "proofingApply";
    }
}